Skill: Himalaya Email (IMAP/SMTP)
Trigger: пользователь просит проверить почту, прочитать письма, отправить email, "что мне написали", "напиши письмо на ...", "новые письма"
Зачем
В контейнере установлен himalaya — CLI для IMAP/SMTP. Конфиг автоматически генерируется entrypoint'ом из HIMALAYA_EMAIL + HIMALAYA_PASSWORD (см. extra_creds.md).
Аккаунт по умолчанию называется default, поэтому флаг -a обычно не нужен.
Проверка готовности
terminal: himalaya account list
Если показывает default — конфиг есть. Если пусто — попроси юзера выставить переменные HIMALAYA_EMAIL и HIMALAYA_PASSWORD (для Яндекса — app password с id.yandex.ru/security/app-passwords, не основной пароль).
Чтение
Список папок:
terminal: himalaya folder list
Последние письма в INBOX:
terminal: himalaya envelope list --page-size 20
Поиск (IMAP SEARCH синтаксис):
terminal: himalaya envelope list -- FROM "boss@example.com" UNSEEN
terminal: himalaya envelope list -- SUBJECT "invoice"
Прочитать письмо по ID:
terminal: himalaya message read 1234
ID — это число из колонки envelope list. Дополнительно: --no-headers для чистого текста, --raw для исходника.
Скачать вложения:
terminal: himalaya attachment download 1234
Файлы лягут в ~/.local/share/himalaya/. Можно перенести в vault: mv ~/.local/share/himalaya/* /opt/data/secondbrain/data/.
Отправка
Простое письмо одной командой:
terminal: printf 'From: %s\nTo: addr@example.com\nSubject: Тема\n\nТекст письма.\n' "$HIMALAYA_EMAIL" \
| himalaya message send
С Markdown-телом из файла:
terminal: cat > /tmp/mail.eml << EOF
From: $HIMALAYA_EMAIL
To: addr@example.com
Subject: Тема
Content-Type: text/plain; charset=utf-8
Привет!
Текст письма.
EOF
himalaya message send < /tmp/mail.eml
Ответ на письмо:
terminal: himalaya message reply 1234 --all # потом редактор; для non-interactive см. ниже
Для скриптуемого ответа собирай EML вручную с In-Reply-To: и References: заголовками из исходного письма.
Управление
| Действие | Команда |
|---|---|
| Пометить прочитанным | himalaya flag add 1234 seen |
| Снять флаг | himalaya flag remove 1234 seen |
| Удалить | himalaya message delete 1234 |
| Перенести в папку | himalaya message move 1234 Archive |
| Скопировать | himalaya message copy 1234 Archive |
Запись в vault
Когда юзер просит "сохрани это письмо" или "запиши что писали":
- Создай заметку в
inbox/email-YYYY-MM-DD-краткая-тема.mdс фронтматтером:--- from: sender@example.com subject: Original subject date: 2026-05-20T14:30:00 --- <тело письма> - Залогируй в daily note:
HH:MM получено письмо от X → [[inbox/email-...]] - Если важное — добавь
[[wikilink]]в подходящую wiki-заметку.
Утренняя проверка почты
Trigger: "что нового в почте", "проверь почту", "брифинг по письмам"
himalaya envelope list --page-size 30 -- UNSEEN— непрочитанные- Сгруппируй по отправителю, краткое резюме каждой группы (1 строка)
- Спроси: "Какие открыть полностью? Какие удалить? Какие сохранить в vault?"
- Залогируй итог в daily note:
## Emailсекция
Важно
- Никогда не печатай
HIMALAYA_PASSWORDв чат или vault. Используй переменную окружения в командах. - Яндекс: пароль приложения нужен с правами "IMAP" и "SMTP" по отдельности. Основной пароль аккаунта не работает.
- Большие письма: не загружай в чат целиком — сохрани в vault и дай ссылку.
- Спам: если письмо явно спам —
himalaya message move <id> Spamбез вопросов.