НОВОЕ 📢 Ограниченное стартовое предложение: скидка до 70% на первый месяц для любой игры!Посмотреть тарифы

Hermes Agent и Telegram: как подключить агента к боту

Hermes AgentUpdated Nov 7, 20267 min read

Коротко. Создайте бота в @BotFather в Telegram (/newbot) и скопируйте его токен. Передайте Hermes Agent токен и свой числовой ID пользователя Telegram: говорить с ним могут только ID из списка разрешённых или люди, которых вы подтвердили кодом сопряжения; без списка посторонний получит лишь код сопряжения, который вам пришлось бы подтверждать. На своей машине это TELEGRAM_BOT_TOKEN и TELEGRAM_ALLOWED_USERS в ~/.hermes/.env или hermes gateway setup. На PlayNHost вы вставляете токен и свой ID на странице Agent и перезапускаете.

Проверено 7 ноября 2026, актуально для Hermes Agent v0.23.0.

В этом руководстве использованы документация Hermes Agent по Telegram и безопасности и панель PlayNHost в её нынешнем виде. Поддержка Telegram встроена в шлюз сообщений Hermes Agent: ничего дополнительно ставить не нужно.

Шаг 1: создайте бота и скопируйте его токен

  1. В Telegram откройте чат с @BotFather (или t.me/BotFather). Убедитесь, что имя точно @BotFather.
  2. Отправьте /newbot, выберите отображаемое имя, затем имя пользователя, которое оканчивается на bot.
  3. BotFather ответит токеном, который выглядит как 123456789:ABCdefGHIjklMNOpqrSTUvwxYZ. Держите его в секрете: любой, у кого он есть, управляет вашим ботом. Если он утёк, отзовите его командой /revoke в BotFather.

Одна программа на одного бота. В FAQ Hermes Agent сказано, что каждая чат-платформа должна использовать токен бота единолично. Если старая копия Hermes Agent или любая другая программа всё ещё использует тот же токен, сначала остановите её или создайте нового бота.

Шаг 2: найдите свой ID пользователя Telegram

Список разрешённых Hermes Agent принимает ваш числовой ID пользователя, число вроде 123456789, а не ваше имя @username. Как его получить:

  • На PlayNHost, из консоли. Напишите своему боту, пока не задан ни один ID: консоль выведет ваш ID. Подробности в шаге 3 ниже.
  • Из журнала Hermes Agent. Когда кто-то не из списка отправляет личное сообщение, в журнале (~/.hermes/logs/gateway.log) появляется предупреждение, начинающееся с «Unauthorized user», с числовым ID отправителя (в скобках после его имени, когда посторонние игнорируются, как на PlayNHost).
  • Сторонний бот. Документация Hermes Agent советует @userinfobot или @get_id_bot, которые отвечают вашим ID.

Шаг 3 на PlayNHost: вставьте токен и свой ID

На той же странице вам нужен ключ ИИ-провайдера. Без него Запустить останавливается с сообщением «Your agent is not set up yet: it needs an API key from one AI provider and a Telegram or Discord bot token.» (сообщение панели: агент ещё не настроен, ему нужны API-ключ одного ИИ-провайдера и токен бота Telegram или Discord).

  1. Откройте свой сервер на panel.playnhost.com, затем вкладку Агент.
  2. В разделе ИИ-провайдер задайте один ключ, если ещё не задали (см. какой ключ ИИ-провайдера выбрать).
  3. В разделе Чат-приложения нажмите Задать у Токен бота Telegram, вставьте токен от BotFather и нажмите Сохранить. Панель проверяет его вид; при неверной вставке появится «That is not a valid telegram bot token.» (это не верный токен бота Telegram). После сохранения в строке видны только последние четыре символа, а токен больше никогда не показывается.
  4. Ещё не знаете свой ID? Оставьте ID пользователей Telegram пустым и нажмите Запустить. Первый запуск устанавливает Hermes Agent, что в наших тестах занимало около 2,5 до 4 минут. Когда агент запущен, консоль выводит:
    [PlayNHost] Your agent is running
    [PlayNHost] Telegram: nobody can message your agent yet. Send your bot any message: your Telegram user ID appears here in the console. Put it on the Agent page, then restart.
    Отправьте своему боту сообщение в Telegram. Он не ответит, даже кодом сопряжения: на PlayNHost Hermes Agent игнорирует всех, кого нет в списке. Примерно через 20 секунд (консоль проверяет журнал Hermes Agent каждые 20 секунд) она покажет ваш ID:
    [PlayNHost] Telegram user 123456789 messaged your agent and was ignored. If that is you, add 123456789 to the Telegram user IDs on the Agent page, then restart.
  5. В разделе Кто может ему писать введите число в поле ID пользователей Telegram и нажмите Сохранить. Несколько ID пишутся в одну строку через запятую или пробел.
  6. Страница показывает «Изменения применятся при следующем запуске вашего агента.» Нажмите Перезапустить сейчас. Затем консоль подтвердит:
    [PlayNHost] Telegram: only user 123456789 can message your agent.
  7. Напишите своему боту. Ваш агент ответит. Сообщения с любого другого аккаунта Telegram игнорируются, а каждый новый отправитель, написавший боту лично, появляется в консоли один раз за запуск, так что друга можно добавить тем же способом.

Что PlayNHost настраивает за вас

  • ID со страницы Agent попадают в Hermes Agent как TELEGRAM_ALLOWED_USERS. Любой другой способ впустить людей (переключатели «разрешить всем», другие списки разрешённых, права для групп, подтверждения сопряжения) отключается при каждом запуске, а агент останавливается, если один из них появится во время работы.
  • Посторонние игнорируются (unauthorized_dm_behavior: ignore), а не получают код сопряжения Hermes Agent по умолчанию, потому что на сервере PlayNHost нет командной строки, чтобы подтвердить такой код.
  • Токен попадает в Hermes Agent как TELEGRAM_BOT_TOKEN. Его копия, записанная в .hermes/.env, удаляется при следующем запуске, так что используется токен со страницы Agent.
  • Включены только Telegram и Discord. WhatsApp отклоняется: в документации Hermes Agent сказано, что его мост к WhatsApp эмулирует сессию WhatsApp Web и несёт риск блокировки.

Шаг 3 на своей машине

  1. Запустите мастер настройки и выберите Telegram. Он спросит токен и разрешённые ID пользователей и запишет их за вас:
    hermes gateway setup
  2. Или добавьте их вручную в ~/.hermes/.env:
    TELEGRAM_BOT_TOKEN=123456789:ABCdefGHIjklMNOpqrSTUvwxYZ
    TELEGRAM_ALLOWED_USERS=123456789
    Несколько ID разделяются запятыми.
  3. Запустите шлюз командой hermes gateway и отправьте боту сообщение. Чтобы он работал после выхода из сессии, см. как запустить Hermes Agent 24/7.

Без какого-либо списка разрешённых Hermes Agent отказывает всем. По умолчанию посторонним он отвечает кодом сопряжения, который вы подтверждаете командой hermes pairing approve telegram <code>; коды истекают через час. Документация Hermes Agent также предлагает GATEWAY_ALLOW_ALL_USERS=true, но предостерегает от этого для бота, который может выполнять команды.

Если он не отвечает

Что вы видитеПричина и решение
Консоль: «Telegram: nobody can message your agent yet»На странице Agent нет ни одного ID. Напишите боту, скопируйте свой ID из следующей строки консоли, добавьте его и перезапустите.
Консоль: «Telegram user ... messaged your agent and was ignored»Этого аккаунта нет в списке. Если он ваш, добавьте номер и перезапустите.
Консоль: «... entry in the Telegram user IDs is not a Telegram user ID and was left out»Число в списке короче 5 или длиннее 25 цифр, поэтому это не может быть ID пользователя. Сверьте его со строкой консоли с вашим ID.
Консоль: «Telegram refused the bot token. Check it on the Agent page, then restart.»Токен отозван или введён с ошибкой. В @BotFather отправьте /mybots, выберите своего бота, затем API Token, скопируйте его снова и нажмите Заменить на странице Agent.
В консоли ничего после вашего сообщения и нет ответаТот же токен использует другая программа, или вы написали другому боту. Остановите другую копию или создайте нового бота, затем перезапустите.
Ничего в группеОбщайтесь с агентом в личных сообщениях. В группах режим приватности Telegram позволяет боту видеть только команды и ответы ему, пока вы не измените это в BotFather, а на PlayNHost отвечают только пользователям с ID из вашего списка.

На PlayNHost собственный журнал Hermes Agent это .hermes/logs/gateway.log в Files. Нужен ещё и Discord? См. подключение Hermes Agent к Discord. Ещё не настроено? Создайте сервер Hermes Agent.

PlayNHost не связан с Nous Research. Hermes Agent это программное обеспечение с открытым исходным кодом по лицензии MIT.

Ваш сервер уже у другого хостинга? Перенесите его к нам

ПОСЛЕДНИЕ БЛОГИ