你发了消息,等了 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 一直转圈不回复,怎么排查](即将发布)
延伸阅读:一键部署之后的完整配置指南