71 lines
1.5 KiB
Markdown
71 lines
1.5 KiB
Markdown
# Inbox Assistant
|
|
|
|
A simple assistant that prioritizes and summarizes your IMAP inbox using Mistral AI.
|
|
|
|
## Features
|
|
|
|
- Fetches emails from an IMAP server
|
|
- Summarizes and prioritizes emails using Mistral AI
|
|
- Displays the summary and emails in a web interface
|
|
|
|
## Requirements
|
|
|
|
- Python 3.13
|
|
- Flask
|
|
- imap-tools
|
|
- Mistral AI
|
|
- ruff
|
|
|
|
## Installation
|
|
|
|
1. Clone the repository:
|
|
|
|
```bash
|
|
git clone https://codeberg.org/gurix/inbox_assistant.git
|
|
cd inbox_assistant
|
|
```
|
|
|
|
2. Create a virtual environment and activate it:
|
|
|
|
```bash
|
|
python -m venv .venv
|
|
source .venv/bin/activate
|
|
```
|
|
|
|
3. Install the dependencies:
|
|
|
|
```bash
|
|
uv sync
|
|
```
|
|
|
|
4. Set up the environment variables by using direnv:
|
|
|
|
Create a `.envrc` file in the root directory with the following content:
|
|
|
|
```bash
|
|
export MISTRAL_API_KEY=your_mistral_api_key
|
|
export IMAP_SERVER=your_imap_server
|
|
export EMAIL_ACCOUNT=your_email_account
|
|
export EMAIL_PASSWORD=your_email_password
|
|
```
|
|
|
|
5. Run the application:
|
|
|
|
```bash
|
|
uv run app.py
|
|
```
|
|
|
|
## Usage
|
|
|
|
- Access the web interface at `http://localhost:5003`
|
|
- The assistant will fetch emails from the IMAP server, summarize them, and display the summary and prioritized emails
|
|
|
|
## Configuration
|
|
|
|
- The assistant can be configured by modifying the `instructions` variable in the `app.py` file
|
|
- The IMAP server, email account, and password can be configured via envorinment variables.
|
|
- The Mistral AI API key can be configured via envorinment variables.
|
|
|
|
## License
|
|
|
|
This project is licensed under the MIT License. |