tg-secretary (@tgsecretary_robot)
Заброшенный на вид, но живой проект — обнаружен 2026-07-24 не задокументированным в vault (пробел с момента создания, не сознательное решение). Код: /home/claude/tg-secretary/, репо есть git-история (первый коммит 2026-06-05, последний 2026-07-16). Контейнер tg-secretary работает непрерывно (uptime 10+ дней на момент находки), домен secretary.08317.ru через Traefik (docker-compose.yml, сеть proxy, cloudflare certresolver).
Что делает
- Подключён через Telegram Business API (
business_connection_idв схеме БД и вwebhook.ts/telegram.ts) — это не отдельный бот-аккаунт, а business-connection на личный Telegram-аккаунт Сергея. Читает входящие сообщения личной переписки и сохраняет их в Postgres (messages). - Напоминания (
reminders,node-cron) - Утренний брифинг (
src/lib/morning.ts) - Полнотекстовый поиск по истории (
src/lib/search.ts) - Транскрипция голоса (
src/lib/transcribe.ts, Deepgram опционально) - Диалоговая память (
conversationsтаблица)
Стек
Node.js + TypeScript (ts-node в проде, не собран в dist/), Postgres (init.sql: messages/reminders/pending_actions/conversations), Express + node-cron, Docker (node:20-alpine).
Важно: функция называется askClaude (src/lib/claude.ts), но реально дёргает Groq API (llama-3.3-70b-versatile) через groqChat() — никакого настоящего Anthropic Claude там нет, название вводит в заблуждение.
Конфиг (.env)
TELEGRAM_BOT_TOKEN, TELEGRAM_MY_CHAT_ID, GROQ_API_KEY, DATABASE_URL, PORT=3100, OWNER_NAME, CITY, OWNER_INFO. Опционально DEEPGRAM_API_KEY, CRON_SECRET.
Открытые вопросы (не выяснено на момент записи)
- Актуальна ли ещё бизнес-коннекция, или это осталось от эксперимента и просто никто не отключил
- Пересекается функционально с d-brain/agent-second-brain (напоминания, брифинг, память переписки) — не решено, объединять или оставить отдельно
- Нет systemd-юнита — держится только на
docker-compose(restart: unless-stopped), не входит ни в один из известных health-check/watchdog контуров (services)