Управляй Claude Code прямо из Telegram. Каждый топик — отдельная сессия агента. Работай с AI с телефона, из кровати, из отпуска.
GitHub репозиторий →Claude Code — мощный инструмент, но у него есть ограничение: работает только в терминале на компьютере. А что если нужно быстро дать задачу агенту, пока едешь в метро? Или проверить статус задачи с телефона?
Telegram Multi-Thread Router решает эту проблему. Это Telegram-бот, который подключается к Claude Code на вашем компьютере или сервере и позволяет управлять им прямо из мессенджера.
Каждый топик в боте — отдельная сессия Claude Code. Можно вести несколько задач параллельно, не мешая друг другу.
Отправляешь сообщение в Telegram — агент его получает и выполняет. Ответ приходит прямо в чат. Никакого терминала.
Бот перезапустился? Сессии восстановятся автоматически. Контекст не теряется — агент помнит, над чем работал.
Отправляешь голосовое — бот распознает речь и передаст текст агенту. Можно буквально «разговаривать» с Claude Code.
Редактируемое сообщение-статус показывает, что именно сейчас делает агент в каждой сессии. Видно прогресс без угадывания.
Запускай сессии на разных машинах через TCP-воркеры. Бот — хаб, воркеры — исполнители. Масштабируйся горизонтально.
Каждый топик — отдельный SessionRunner с изолированным контекстом
Бот использует топики прямо в чате с тобой. Когда ты пишешь в топик:
claude auth login)/start своему боту — это создаст чат, который бот будет использовать для топиков/start, скопируйте числовой ID)Открываем терминал на компьютере и скачиваем проект:
Python-проекты лучше запускать в изолированном окружении, чтобы зависимости не конфликтовали:
source .venv/bin/activate в начале строки терминала появится (.venv) — значит окружение активировано.Копируем файл-пример и заполняем своими данными:
Заполните файл .env следующими значениями:
| Переменная | Что писать | Пример |
|---|---|---|
| BOT_TOKEN | Токен бота от @BotFather | 123456789:AAHfiqks... |
| OWNER_USER_ID | Ваш Telegram User ID (число) | 123456789 |
| AUTH_TOKEN | Любой секретный ключ (для IPC) | my-secret-token-123 |
| STREAM_INTERMEDIATE_MESSAGES | Стримить текст агента в реальном времени (true) или показывать только финальный ответ (false) | true |
.env содержит секреты. Никогда не публикуйте его и не добавляйте в git. Он уже в .gitignore.Claude Code должен быть установлен и авторизован на вашем компьютере:
Если всё настроено правильно, вы увидите в логах:
Теперь откройте чат с ботом в Telegram и отправьте любое сообщение. Бот автоматически определит чат и создаст топик-оркестратор — главный топик для управления сессиями.
/start боту до запуска скрипта. Бот ожидает активный чат с владельцем.Если запускаете на личном компьютере — этот шаг не нужен. Просто держите терминал открытым, пока работаете с ботом.
Если вы перенесли бота на сервер и хотите, чтобы он работал постоянно:
Содержимое файла сервиса:
launchd или просто nohup python -m src &. Попросите Claude Code настроить это — он справится.Все команды работают из любого топика:
/new название /путь/к/проекту — создать новую сессию в новом топике/list — список всех активных сессий/stop — прервать текущее выполнение (как Escape в терминале)/close — убить сессию и удалить топик/restart — перезапустить бота (все сессии восстановятся)/команда — пересылается агенту (/model, /clear, /compact, /reset и т.д.)Первое сообщение боту создаёт оркестратор — главный топик. Через него можно управлять всем естественным языком:
Примеры:
Можно отправлять боту файлы (фото, документы) — он скачает их в рабочую директорию сессии и передаст путь агенту. Удобно для:
Когда агент хочет выполнить потенциально опасное действие (записать файл, выполнить команду), бот спрашивает разрешение через inline-кнопки в Telegram:
Безопасные действия (чтение файлов, поиск) одобряются автоматически.
Бот поддерживает два режима вывода текста агента. Настраивается через переменную STREAM_INTERMEDIATE_MESSAGES в .env:
true — текст агента стримится в реальном времени. Видно, как Claude «думает» — удобно для наблюдения за процессомfalse — Telegram тише: показываются статусы и прогресс, но основной текст появляется ближе к концу. Меньше уведомленийСтатусы, запросы разрешений и ошибки показываются в любом режиме.
Можно запускать сессии на разных машинах, подключая воркеры по TCP:
Бот выступает хабом — обрабатывает Telegram и диспатчит задачи на локальные или удалённые бэкенды. Воркеры обмениваются сообщениями, файлами и запросами разрешений через бинарный TCP-протокол (msgspec).
Когда даёшь AI-агенту доступ к серверу через Telegram, логичный вопрос — «А не сломает ли он мне всё?». Короткий ответ: при правильной настройке — нет. Вот почему:
Бот принимает сообщения только от владельца (OWNER_USER_ID). Никто другой не сможет отправить боту команды.
На каждое опасное действие (запись файлов, выполнение команд) бот спрашивает разрешение через inline-кнопки. Вы контролируете каждый шаг.
Каждая сессия работает в своей рабочей директории. Агент из одного топика не видит файлы агента в другом — если вы сами не укажете один путь.
Все токены и ключи хранятся в файле .env, который не попадает в git. Доступ к серверу — только по SSH-ключу.
sudo rm -rf / — у него просто не будет правgit checkout или git resetЕсли вы запускаете бота на домашнем компьютере (а не на сервере) — есть критический момент: когда компьютер уходит в сон, бот перестаёт работать. Telegram-сообщения просто не будут доходить, пока машина спит.
Нужно настроить систему так, чтобы компьютер не засыпал, даже если вы закрыли крышку ноутбука, ушли из дома или не трогаете его часами.
Вариант 1: Системные настройки (GUI)
Вариант 2: Через терминал (надёжнее)
Если используете MacBook с закрытой крышкой:
-s предотвращает системный сон. Если закроете терминал — caffeinate остановится. Лучше запускать через tmux или screen.Вариант 1: Параметры электропитания (GUI)
Вариант 2: Через PowerShell
Если используете ноутбук с закрытой крышкой:
Даже если компьютер не спит — при закрытии терминала процесс бота остановится. Чтобы этого не произошло, используйте один из инструментов:
tmux (рекомендуется) — терминальный мультиплексор:
На Windows tmux нет, но можно использовать:
Даёшь задачу агенту с телефона: «Добавь кнопку выхода на страницу профиля». Агент пишет код, коммитит, деплоит. Ты проверяешь результат.
Пришло уведомление об ошибке? Скидываешь скриншот агенту в топик. Он анализирует логи, находит причину, предлагает фикс.
Спрашиваешь агента: «Какой uptime сервера?», «Сколько свободной памяти?», «Покажи последние логи nginx». Он выполняет команды и отвечает.
Один топик = один проект. Веди пять проектов одновременно, переключайся между ними просто переходя между топиками.