Павел Молянов опубликовал на GitHub open-source проект telegram-ai-agent — Telegram-бота, который выступает прослойкой между мессенджером и ИИ-агентами Claude Code и Codex, запущенными на удалённом сервере. Идея возникла из практической потребности: управлять рабочими проектами в дороге, не открывая ноутбук.
Claude Code — это терминальный агент от Anthropic, который умеет писать и редактировать код, запускать команды, работать с файловой системой и вызывать внешние инструменты через протокол MCP. Codex — аналогичный агент от OpenAI. Оба инструмента традиционно требуют прямого доступа к терминалу, что делает их неудобными вне рабочего места. Бот решает эту проблему, транслируя сообщения из Telegram в сессии агентов на VPS.
| Режим | Как работает | Подходит для | Ограничения |
|---|---|---|---|
| tmux | Постоянная сессия агента на VPS, переживает перезапуск бота | Длинные задачи, вайбкодинг, Agent Team в CC | Потребляет ресурсы сервера постоянно |
| subprocess | Одноразовая сессия под каждый запрос, агент завершается после задачи | Короткие ассистентские запросы (добавить событие, создать заметку) | Нет терминальных команд, нет долгих задач, нет Agent Team |
Технически бот опирается на tmux — менеджер терминальных сессий, который позволяет держать агента запущенным в фоне независимо от состояния самого бота. Входящие сообщения вставляются напрямую в интерфейс агента, а его ответы бот считывает из JSON-лога сессии и пересылает в чат. Голосовые сообщения расшифровываются через сервис Deepgram перед отправкой агенту. Файлы сохраняются на VPS, агенту передаётся путь к ним. Пересланные сообщения из других чатов автоматически помечаются дисклеймером, чтобы агент не воспринимал чужие инструкции как команды пользователя.
Голосовые сообщения расшифровываются через Deepgram и передаются агенту как текст.

Бот поддерживает два режима работы. Tmux-режим держит постоянную сессию агента: она переживает перезапуск бота, поддерживает длинные задачи, команды /model и /usage, а также запуск Agent Team в Claude Code. Subprocess-режим запускает одноразовую сессию под каждый запрос — агент выполняет задачу и завершается. Второй вариант потребляет меньше ресурсов и подходит для коротких ассистентских сценариев вроде добавления события в календарь.
Организационно бот использует форум-чаты Telegram: каждый топик соответствует отдельному агенту с собственными настройками — рабочей папкой на сервере, системным промтом и выбранной моделью. Автор описывает несколько своих топиков: управление задачами через MCP-интеграцию с Singularity, ведение базы знаний в Obsidian, автоматическая публикация переработанных постов на сайт. Переключение между Claude Code и Codex выполняется командой /engine, три режима детализации вывода — командой /stream.
Мотивация для создания бота отчасти экономическая: автор использует подписку Claude Max вместо платных API-вызовов, что, по его оценке, существенно дешевле при интенсивном использовании. Когда лимиты подписки Claude Code стали заканчиваться, к боту добавили поддержку Codex с возможностью переключения на лету. Проект находится в активной доработке — в частности, автор отмечает нестабильность автоматического перехвата модальных окон агентов, требующих подтверждения разрешений.



