你发了消息,等了 10 秒,什么都没发生。

再发一条,还是没反应。重启 Telegram,依然沉默。

这是 Hermes Agent 最让人沮丧的故障形态——不报错,不崩溃,就是不理你。

好消息是:这种情况 90% 有固定原因,每一个都有 5 分钟以内可以解决的方法。本文从最常见的原因开始排查,按顺序走一遍,基本能解决。


第一步:确认 Gateway 还在不在

这是最高频的原因,也是最容易被忽略的。

很多人第一次配置时是这样启动的:

hermes gateway

然后关掉了终端窗口——Gateway 进程跟着一起退出了。没有进程,消息发出去当然没有回应。

检查方法(30 秒)

打开一个新的终端窗口,输入:

hermes gateway status
  • 如果返回类似 ● gateway: running (PID 12345) → Gateway 在跑,这个原因排除,继续下一步
  • 如果返回 ✗ gateway: not running 或报错 → 找到原因了

解决方法

重新启动 Gateway:

hermes gateway

但这样还会有同样的问题——关掉终端就停了。一劳永逸的办法是把 Gateway 注册成系统服务

hermes service install
hermes service start

装成服务之后,重启电脑也会自动运行,不需要每次手动启动。


第二步:检查 Telegram Bot Token

Gateway 在跑,但消息没反应——第二个最常见原因是 Token 填错了

Token 的正确格式长这样:

7823456789:AAFxxxxxxxxxxxxxxxxxxxxxx-xxxxxxx

中间有一个冒号,冒号前是数字 ID,冒号后是一串字母数字。

去哪里看你填的 Token

打开配置文件:

# Windows(在终端里输入)
notepad %USERPROFILE%\.hermes\config.yaml

# Mac / Linux
nano ~/.hermes/config.yaml

找到 telegram 部分:

gateways:
  telegram:
    bot_token: "这里是你填的 Token"
    allowed_user_ids:
      - 123456789

和你从 @BotFather 复制的 Token 逐字对比。

最常见的填错方式

  • 前面或后面多了空格
  • 粘贴时 Token 断行了
  • 复制了 @BotFather 对话里的其他文字,没有只复制 Token

检查 Token 是否有效(30 秒)

把下面这行粘贴到浏览器地址栏,把 YOUR_TOKEN 换成你的 Token:

https://api.telegram.org/botYOUR_TOKEN/getMe
  • 如果看到 {"ok":true, "result":{"id":...}} → Token 正确
  • 如果看到 {"ok":false, "error_code":401} → Token 无效,需要重新从 @BotFather 获取

第三步:确认你的用户 ID 在白名单里

Bot 在跑,Token 也对,但还是没反应——你的账号可能没有权限发消息给它

Hermes 默认只响应白名单里的用户 ID,陌生账号的消息会被静默丢弃(不报错,不回复)。

怎么查你自己的 Telegram 用户 ID

在 Telegram 里搜索 @userinfobot,发送任意消息,它会告诉你你的 ID,是一串纯数字,比如 123456789

然后检查配置文件

gateways:
  telegram:
    allowed_user_ids:
      - 123456789   ← 这里要有你的 ID

如果这里是空的,或者 ID 和你的不一样,把你的 ID 加进去,然后重启 Gateway:

hermes gateway restart

第四步:国内网络问题(最容易被忽视)

这是很多国内用户卡住的关键原因,但文档里经常没有明显提示。

Telegram 的服务器在境外,国内网络直接访问会超时。Gateway 启动了、Token 对了、ID 也配好了,但就是收不到消息——是因为 Hermes 发出去的请求被墙了。

排查方法

先确认你的代理软件(Clash / V2Ray / 其他)正在运行,然后找到它的本地监听端口。常见的是:

  • Clash:7890
  • V2Ray:1080
  • 其他:看软件的「端口设置」页面

临时解决(当前终端生效)

# Windows PowerShell
$env:HTTP_PROXY="http://127.0.0.1:7890"
$env:HTTPS_PROXY="http://127.0.0.1:7890"
hermes gateway restart

# Mac / Linux
export HTTP_PROXY=http://127.0.0.1:7890
export HTTPS_PROXY=http://127.0.0.1:7890
hermes gateway restart

7890 替换成你代理软件实际使用的端口。

如果加了代理之后 Agent 有反应了,说明就是网络问题。

永久解决(写进配置)

打开 ~/.hermes/config.yaml,添加:

network:
  proxy: "http://127.0.0.1:7890"

这样每次启动 Gateway 都会自动用代理,不需要每次手动设置。


第五步:缺少 Telegram 依赖包

如果你在 Windows 上部署,或者安装过程中有步骤跳过了,可能缺少 python-telegram-bot 这个依赖。

排查方法

打开新终端,直接运行:

hermes gateway

如果看到这样的报错:

ModuleNotFoundError: No module named 'telegram'

或者:

python-telegram-bot not installed

说明依赖缺失。

解决方法

# Windows(PowerShell)
cd $env:LOCALAPPDATA\hermes\hermes-agent
.\venv\Scripts\python.exe -m pip install python-telegram-bot

# Mac / Linux
cd ~/.hermes/hermes-agent
./venv/bin/python -m pip install python-telegram-bot

安装完成后重新运行 hermes gateway


第六步:API Key 余额不足或失效

以上都没问题,但 Agent 还是不回复——可能是 AI 模型的 API Key 出了问题

这种情况的典型表现:Gateway 日志里会有报错,但 Telegram 这边表现为静默(因为报错在服务器端,没有发出回复)。

查看 Gateway 日志

hermes gateway logs

重点找这几类字样:

  • 401 Unauthorized → API Key 无效或已过期
  • 402 Payment Required / insufficient_quota → 账户余额不足
  • 429 Too Many Requests → 请求频率超限(等几分钟再试)
  • Connection refused → 模型服务地址配置错误

针对国内常用模型的检查

如果你用的是 DeepSeek,登录 platform.deepseek.com 检查余额和 Key 状态。

如果你用的是 MiniMax,登录 platform.minimaxi.com 查看。

Key 失效的话重新生成一个,然后更新配置:

hermes model

在交互菜单里重新填入新的 Key,保存退出,重启 Gateway。


全部排查完还是不行?

做完以上六步之后,大约 95% 的「完全没反应」问题可以解决。

如果仍然不行,最有效的下一步是看完整的 Gateway 日志

hermes gateway logs --tail 100

把输出里看起来像报错的行截图或复制下来,在以下地方求助:

  • Hermes Agent 官方 Discord(搜索 NousResearch Hermes Agent Discord
  • 本站评论区(我们会回复)
  • 腾讯云开发者社区(搜索「Hermes Agent 报错」)

给出完整的日志输出,通常 30 分钟内能得到有效帮助。


快速排查清单

遇到「Agent 没反应」,按顺序过一遍:

  • hermes gateway status → 确认 Gateway 在跑
  • hermes service install → 注册成系统服务(避免关终端就停)
  • 浏览器验证 Token → api.telegram.org/botTOKEN/getMe
  • 检查 allowed_user_ids → 你的用户 ID 在里面吗?
  • 国内网络 → 代理端口写进配置了吗?
  • hermes gateway logs → 有 401 / 402 / 429 报错吗?

能走完这个清单,大多数问题都解决了。


「Agent 急救手册」系列持续更新。下一篇:[Agent 一直转圈不回复,怎么排查](即将发布)
延伸阅读:一键部署之后的完整配置指南