Telegram-бот создан, но не отвечает: как проверить Hermes Gateway
Пошаговая диагностика Telegram-бота в Hermes Agent: профиль, Gateway, allowlist или pairing, логи, модель и отдельная проверка личного чата и группы.
Человек 2.0Что забрать из статьи
- 1Начинайте с личного чата: так вы отделите проблему Telegram и Gateway от правил группы.
- 2Токен подключает бота; доступ даёт allowlist, подтверждённый DM pairing или отдельно включённый открытый режим.
- 3Проверяйте один профиль, логи Gateway и реальный ответ бота после запуска или перезапуска.
Бот уже создан через BotFather, токен получен, но на /start нет ответа. Обычно это не одна поломка, а разрыв в одном из слоёв: Telegram, доступ пользователя, активный профиль Hermes, Gateway или модель.
Ниже — порядок проверки от простого к сложному. После каждого шага повторяйте тест в личном чате с ботом.
1. Убедитесь, что вы пишете нужному боту
Откройте профиль бота из сообщения BotFather и проверьте точный username. У ботов Telegram username заканчивается на bot. Затем нажмите Start или отправьте /start.
- Если Telegram пишет, что бот недоступен, сначала проверьте username и состояние токена.
- Если сообщение отправляется, но ответа нет, переходите к проверке Hermes.
- Если бот отвечает «unauthorized», проблема почти наверняка в разрешённом Telegram ID.
Создание бота в BotFather ещё не запускает Hermes Gateway: Telegram только выдаёт идентификатор и секрет подключения.
2. Проверьте активный профиль и состояние Gateway
Выполните команды на той же машине, под тем же пользователем и в том же профиле, где настраивали Telegram. Профили изолированы: токен, правила доступа, логи и Gateway одного профиля не подтверждают состояние другого.
hermes profile list
hermes -p <имя_профиля> gateway status
hermes -p <имя_профиля> gateway list- running — Gateway запущен; продолжайте по цепочке.
- stopped — запустите уже установленный сервис; not installed — сначала установите сервис либо используйте запуск в терминале.
- Ошибка старта — проверьте точный текст ошибки; чаще всего он указывает на токен, конфигурацию, занятый процесс или недоступный провайдер.
hermes -p <имя_профиля> gateway setup
# Фоновый сервис: сначала установить, затем запустить
hermes -p <имя_профиля> gateway install --no-start-now
hermes -p <имя_профиля> gateway start
# Для WSL, Docker, Termux или запуска в текущем терминале
hermes -p <имя_профиля> gateway run
3. Проверьте токен без его публикации
Самый безопасный путь — снова открыть интерактивную настройку Telegram через hermes gateway setup и вставить актуальный токен локально. Не проверяйте токен публичными сервисами и не добавляйте его в issue, README или переписку.
- Токен должен принадлежать именно тому боту, которому вы пишете.
- После отзыва старого токена обновите конфигурацию Hermes и перезапустите Gateway.
- Сообщение InvalidToken или Unauthorized в логах означает, что Telegram отклонил учётные данные.
Официальная инструкция Hermes отдельно предупреждает: любой человек с токеном может управлять ботом.
4. Проверьте доступ: allowlist или DM pairing
Hermes может разрешить личный чат через TELEGRAM_ALLOWED_USERS или после подтверждения DM pairing. Telegram user ID — это число, а не @username и не номер телефона. Открытый доступ включается отдельно и не рекомендуется для бота с доступом к терминалу.
hermes pairing list
hermes pairing approve telegram <КОД>После изменения allowlist или подтверждения pairing перезапустите Gateway и снова отправьте боту /start в личном чате.
5. Отделите сбой Telegram от сбоя модели
Проверьте модель в том же профиле, который обслуживает Telegram. Если появился typing, но финального ответа нет, откройте gateway-лог: причиной могут быть модель, авторизация провайдера, лимиты, таймаут, ошибка агента или сбой отправки ответа.
hermes -p <имя_профиля> chat -q "Ответь одним словом: работает"
hermes -p <имя_профиля> logs gateway -n 100
# Поток логов в реальном времени
hermes -p <имя_профиля> logs gateway -f- Ошибки 401/403 обычно указывают на авторизацию или права.
- 429 — на лимит запросов или квоту.
- 5xx — на временную ошибку провайдера или промежуточного сервиса.
- Model not found — на неверное имя модели или недоступный маршрут.
Typing показывает, что обработка началась, но готовность подтверждает только содержательный ответ. Если status недоступен, используйте резервную проверку: gateway list, hermes status --all и logs gateway.
6. Сначала личный чат, затем группа
Если бот отвечает в личном чате, но молчит в группе, базовая цепочка уже работает. Теперь проверяйте групповую доставку и правила ответа.
- Сначала упомяните @botusername или ответьте на сообщение бота: так вы проверите фильтр упоминаний.
- Если бот не получает обычные сообщения, отключите Group Privacy через BotFather или назначьте бота администратором. После изменения удалите бота из группы и добавьте снова.
- Проверьте TELEGRAM_ALLOWED_USERS и TELEGRAM_GROUP_ALLOWED_USERS для отправителей группы.
- Отрицательный ID группы указывается в TELEGRAM_GROUP_ALLOWED_CHATS, а не в списке пользовательских ID.
- Проверьте telegram.require_mention: бот может намеренно отвечать только на @упоминание, команду или ответ на своё сообщение.

7. Проведите контрольный тест
- В личном чате отправьте /start и дождитесь содержательного ответа.
- Сразу отправьте уточнение без повторного объяснения и проверьте, что контекст сохранился.
- Выполните контролируемый перезапуск Gateway.
- После перезапуска снова отправьте сообщение и убедитесь, что бот отвечает.
- Только после этого добавляйте группу, голосовые сообщения и расписания.
Если бот всё ещё молчит
Зафиксируйте один точный симптом: бот недоступен, unauthorized, Gateway не установлен или не стартует, после typing нет финального ответа либо бот работает в DM, но не в группе. Затем приложите обезличенный фрагмент gateway-лога без токенов и других секретов.
Сверьте настройки с актуальной документацией Hermes по Telegram.
После восстановления Telegram-связи можно изучить другие бесплатные материалы о Hermes, Codex и ИИ-агентах.
Если у вас уже есть доступ к Человек 2.0, персональный агент может читать доступные материалы через API/MCP в режиме read-only.