mirror of
https://gitverse.ru/kpa39l/email-assistant.git
synced 2026-09-29 09:15:09 +00:00
Initial commit: Email Assistant project
This commit is contained in:
@@ -0,0 +1,68 @@
|
||||
# Email Assistant — Context & Architecture
|
||||
|
||||
## Vision
|
||||
Полноценный email-ассистент на локальных данных:
|
||||
1. **Архив** — вся почта в файлах (Фаза 1)
|
||||
2. **Векторизация** — поиск по смыслу через bge-m3 + Qdrant (Фаза 2)
|
||||
3. **Граф знаний** — связи между письмами, проектами, людьми (Фаза 3)
|
||||
4. **Интеллект** — авто-извлечение фактов, задач, рекомендации (Фаза 4)
|
||||
|
||||
## Почему файлы, а не БД?
|
||||
- Версионность и бэкапы (Yandex Disk)
|
||||
- Прозрачность — можно grep, jq, find без SQL
|
||||
- Совместимость с Obsidian и другими инструментами
|
||||
- Поэтапная миграция в Qdrant без потери данных
|
||||
|
||||
## Связь с существующей инфраструктурой
|
||||
|
||||
### Memory OS
|
||||
- Уже есть: Qdrant (1024d COSINE + sparse), bge-m3 (Ollama)
|
||||
- Можно повторно использовать для индексации писем
|
||||
- Icarus threshold = 0.40
|
||||
|
||||
### Yandex Disk
|
||||
- Путь: `/mnt/yandex-disk/`
|
||||
- Монтирован как WebDAV/FUSE — работает как локальная ФС
|
||||
- Файлы доступны из Obsidian и других приложений
|
||||
|
||||
## Структура проекта
|
||||
|
||||
```
|
||||
/opt/hermes/email-assistant/
|
||||
├── STATUS.md # Статус и план работ
|
||||
├── context/
|
||||
│ ├── CONTEXT.md # Этот файл — архитектура
|
||||
│ └── SKILL.md # Навык для Hermes
|
||||
├── scripts/
|
||||
│ ├── mail_archive.py # Python-архиватор
|
||||
│ └── mail-archive.sh # Shell-обёртка
|
||||
└── data/ # Временные данные/эксперименты
|
||||
```
|
||||
|
||||
## Pipeline
|
||||
|
||||
```
|
||||
IMAP (mail.vinogorod.ru:143)
|
||||
↓ Himalaya CLI
|
||||
mail_archive.py
|
||||
↓ инкрементальная запись
|
||||
/mnt/yandex-disk/hermes/email/<folder>/YYYY/MM/UID/
|
||||
├── meta.json
|
||||
├── body.md
|
||||
└── attachments/
|
||||
↓ (Фаза 2)
|
||||
bge-m3 (Ollama) → эмбеддинги
|
||||
↓ (Фаза 2)
|
||||
Qdrant (1024d, COSINE)
|
||||
↓ (Фаза 3)
|
||||
Граф: люди, проекты, организации, ключевые даты
|
||||
↓ (Фаза 4)
|
||||
Извлечение фактов, формирование задач, рекомендации
|
||||
```
|
||||
|
||||
## Известные ограничения
|
||||
|
||||
1. Himalaya v1.2.0 — page-size 2000, нет пагинации по дате (только page/page-size)
|
||||
2. Нет `danger_accept_invalid_certs` в конфиге — используем `mail.corpoffice.tech` (валидный сертификат)
|
||||
3. SMTP не настроен — только чтение
|
||||
4. Пароль в raw-виде в конфиге (потом в keyring)
|
||||
Reference in New Issue
Block a user