1.6 KiB
1.6 KiB
memoir-bot
Telegram-бот для быстрых записей в ежедневные заметки Obsidian.
Настройка
Создай .env по примеру .env.example:
BOT_TOKEN=123456:telegram-token
ALLOWED_USER_IDS=123456789
OBSIDIAN_VAULT_PATH=/srv/obsidian/vault
DAILY_NOTES_DIR=03 Journal
NOTE_PATH_FORMAT=%Y/%m/%d.%m.%y.md
MESSAGE_TIME_FORMAT=%H:%M
TELEGRAM_PROXY=socks5://user:password@127.0.0.1:1080
REMINDER_MIN_HOURS=2
REMINDER_MAX_HOURS=3
REMINDER_START_HOUR=7
REMINDER_END_HOUR=23
REMINDER_TIMEZONE=Europe/Moscow
TELEGRAM_PROXY необязателен. Без него бот подключается к Telegram напрямую.
Напоминания отправляются разрешенным пользователям через случайный интервал от REMINDER_MIN_HOURS до REMINDER_MAX_HOURS, только в окне от REMINDER_START_HOUR до REMINDER_END_HOUR по REMINDER_TIMEZONE. По умолчанию это 07:00-23:00 по Москве. Если пользователь сам написал заметку, следующее напоминание откладывается минимум на 1 час.
Запуск
uv sync
uv run python main.py
Каждое текстовое сообщение от пользователя из ALLOWED_USER_IDS добавляется в конец файла:
<OBSIDIAN_VAULT_PATH>/03 Journal/2026/07/04.07.26.md
После записи бот выполняет в хранилище:
git pull --rebase
git add <daily-note>
git commit -m "Update daily note <date>"
git push