
1. Hermes Agent 接入 QQ 的真实场景与链路拆解Hermes Agent 是一个能自我成长的 AI 智能体它的特点在于长记忆和技能自进化用得越久它越懂你的习惯也能自己创建并改进技能。而 QQ 作为国内使用频率极高的聊天工具把 Hermes Agent 接进 QQ 之后你就能在私聊窗口或群聊里 一下机器人直接让它写代码、读文件、做总结、跑自动化任务。这套组合适合谁适合已经装好 Hermes Agent、手里有大模型 API Key、想让 AI 智能体在 QQ 里随时待命的人。整个链路的本质是QQ 开放平台负责机器人身份和消息通道Hermes Agent 的 gateway 负责把 QQ 的消息转成智能体能理解的输入再把智能体的回复送回 QQ。中间不需要公网 IP不需要域名备案也不需要自己写回调服务Hermes 的 gateway 已经把这些脏活累活封装好了。你要做的只有三件事在 QQ 开放平台拿到 AppID 和 AppSecret在 Hermes 里配置 QQ Bot 网关然后启动网关并完成一次配对授权。我实测下来最容易卡住的不是配置本身而是两个地方一是 AppSecret 只显示一次忘了就只能重置二是第一次对话时机器人会提示“灵魂不在线”这其实是网关没启动或没配对的正常现象不是机器人坏了。把这两点记住后面会顺很多。在模型侧我建议用 TaoToken 统一管理 Key。原因很直接Hermes Agent 支持 DeepSeek、Kimi、MiniMax、OpenAI 等多种模型如果你每个模型都单独申请 Key、单独记额度切换和排障会非常乱。TaoToken 提供一个统一的 API 入口Base URL 固定Key 统一模型 ID 按需切换Hermes 的配置里只写一份就行。官网地址是 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content API 入口是 https://taotoken.net/api 注意 API 地址不带 UTM 参数。这一节先把场景和链路讲清楚下一节进入 TaoToken 的前置准备包括拿 Key、选模型、确认额度然后再动手改 Hermes 的 gateway 配置。整篇教程的目标很明确让你在 QQ 聊天窗口里稳定调用 AI 智能体发一条消息能收到一条正常回复群聊 也能触发。2. TaoToken 前置准备统一 Key 与模型选择在动 Hermes 的 gateway 之前先把模型侧的入口准备好。Hermes Agent 本身不绑定某一家模型它通过 OpenAI 兼容接口去调用后端。TaoToken 提供的正是这种兼容入口所以你只需要一个 Base URL、一个 API Key、一个 Model ID就能让 Hermes 跑起来。第一步打开 TaoToken 官网 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 注册并登录。登录后进入控制台找到 API Keys 页面创建一个新的 Key。这个 Key 就是后面要填进 Hermes 配置里的凭证复制下来保存好页面关闭后不一定能再次完整查看。第二步确认你要用的模型 ID。TaoToken 的模型对话页面可以让你先试跑一下确认模型能正常返回。常用的模型 ID 比如 deepseek-chat、kimi 系列、minimax 系列等具体以控制台里列出的为准。你可以在模型对话里发一句“你好请回复 OK”看到正常回复就说明 Key 和模型都没问题。第三步记下两个固定值Base URL 是 https://taotoken.net/api API Key 是你刚创建的那串。Model ID 按你选的填。这三个值在 Hermes 的 gateway 配置里会用到。如果你用的是 Claude Code 类的编码场景TaoToken 也有对应的 coding-plan 入口但本篇聚焦 QQ 接入模型侧用标准 API 即可。这里有个细节要注意Hermes 的 gateway 配置里模型相关的字段通常写在环境变量或配置文件里而不是在hermes gateway setup的交互流程里。也就是说QQ Bot 的 AppID/AppSecret 是通过 setup 命令填的而模型 Key 是提前配好的。所以顺序上先把 TaoToken 的 Key 和模型确认好再去跑 gateway setup这样启动网关时智能体才能正常调用模型。如果你还没有 TaoToken 账号建议先注册再继续。接入文档在 https://taotoken.net/doc 里面有各语言的调用示例虽然 Hermes 不需要你手写 HTTP 请求但看一眼能帮你理解 Base URL 和鉴权头的格式。API Keys 管理页在 https://taotoken.net/api-keys 创建和重置 Key 都在这里。这一节的核心就是一个 Base URL、一个 Key、一个 Model ID。把这三个值准备好下一节直接进 Hermes 的 gateway 配置把 QQ 的 AppID 和 AppSecret 填进去再把这几个模型参数落到配置文件里。3. 可复制配置Hermes gateway 与 QQ 参数填写这一节是整篇教程的核心操作区。我会把 Hermes 的 gateway 配置、QQ 侧参数、以及模型侧的 JSON/TOML 片段都给出来你照着填就行。先说明一点Hermes 的hermes gateway setup是交互式命令但模型参数通常写在 Hermes 的配置文件里路径一般是~/.hermes/config.toml或项目目录下的config.toml具体以你安装时的文档为准。下面给出一份可复制的 TOML 片段把模型部分和 QQ 部分放在一起。# ~/.hermes/config.toml [model] # TaoToken 统一入口注意 API 地址不带 UTM base_url https://taotoken.net/api api_key sk-你的TaoTokenKey model_id deepseek-chat [gateway.qqbot] enabled true app_id 你的AppID app_secret 你的AppSecret # 访问策略pairing 表示需要配对审批allow_all 表示允许所有私信 dm_policy pairing # 主频道 OpenID用于定时任务或通知可留空 main_channel_openid 如果你更习惯用 JSON 格式比如某些版本的 Hermes 或周边工具读取settings.json可以写成这样{ model: { base_url: https://taotoken.net/api, api_key: sk-你的TaoTokenKey, model_id: deepseek-chat }, gateway: { qqbot: { enabled: true, app_id: 你的AppID, app_secret: 你的AppSecret, dm_policy: pairing, main_channel_openid: } } }QQ 侧的参数填写清单如下你在 QQ 开放平台创建机器人后会拿到这些值参数来源填写位置注意AppID / Bot IDQQ 开放平台机器人详情页config.toml 的 app_id公开标识可复制AppSecretQQ 开放平台机器人详情页config.toml 的 app_secret只显示一次务必保存机器人账号创建后自动生成QQ 消息列表用于发起对话主频道 OpenID可选用于通知main_channel_openid可留空配置完成后进入 Hermes 终端执行交互式配置命令把 QQ Bot 的凭证再确认一遍hermes gateway setup方向键选择QQ Bot回车确认。然后依次输入 Bot ID / AppID 和 AppSecret。访问策略这一步直接回车用默认的 DM 配对审批即可这样第一次对话需要配对码授权更安全。主频道 OpenID 留空直接回车。最后问“重启网关以应用更改”输入y。这里要提醒一句如果你在 config.toml 里已经写了 app_id 和 app_secretsetup 命令可能会读取已有值或要求覆盖按提示操作即可。关键是保证最终生效的配置里AppID、AppSecret、Base URL、API Key、Model ID 这五个值都正确。Base URL 必须是 https://taotoken.net/api 不要多加斜杠或路径。模型侧的三件套再强调一次Base URL 是 https://taotoken.net/api Key 是 TaoToken 控制台创建的Model ID 按你选的填。这三个值缺一不可否则网关启动后智能体调用模型会失败QQ 里就会表现为机器人不回复或回复报错。4. 启动网关与端到端消息收发验证配置写完之后进入验证阶段。这一节的目标是启动网关在 QQ 里发一条消息收到 AI 智能体的正常回复。整个过程分四步查状态、启动、配对、对话。第一步查看网关状态hermes gateway status如果显示未启动就执行启动命令hermes gateway看到Gateway started即为启动成功。如果你之前已经启动过改了配置后需要重启hermes gateway restart第二步回到 QQ。新建的 QQ 机器人已经在你的消息列表里并且会发过一条欢迎消息。此时你给它发一条消息比如“你好帮我总结一下今天要做的事”。如果配置正确机器人会回复如果还没配对它会提示你需要执行配对授权命令。第三步配对授权。第一次对话时QQ 里会返回一个配对码类似KZ****。在 Hermes 终端执行hermes pairing approve qqbot KZ****把KZ****换成你实际收到的配对码。执行成功后再次在 QQ 里发消息机器人就会正常调用 AI 智能体回复了。第四步群聊验证。把机器人拉进一个群然后在群里 机器人 提问比如“机器人 帮我写一个 Python 读取 CSV 的例子”。如果机器人正常回复说明群聊通道也通了。群聊 无响应时先确认机器人确实已加入该群再检查网关状态。端到端验证的成功标准很简单私聊发一条收到一条正常回复群聊 一次收到一条正常回复。回复内容由你配置的模型生成如果模型是 deepseek-chat回复风格就是 DeepSeek 的风格换成 kimi 或 minimax风格会相应变化。这也说明 TaoToken 的统一入口是生效的你换 Model ID 就能换模型不用改 QQ 侧任何配置。验证过程中你可以观察 Hermes 终端的日志输出。正常调用模型时日志里会有请求和响应的记录如果模型调用失败日志里会显示 HTTP 状态码或错误信息。这一步的日志是后面排障的关键依据建议保留终端窗口。如果你在验证时发现机器人回复很慢先别急着改配置。模型本身有响应时间尤其是长文本生成。你可以先在 TaoToken 的模型对话页面单独测一下同一个模型确认模型侧正常再回头看 Hermes 的网关日志。这样能把问题定位到是模型侧还是网关侧。5. 常见报错排查401、local proxy failed、OAuth 与依赖缺失这一节按真实报错来排。Hermes Agent 接入 QQ 的过程中最常见的错误集中在模型鉴权、网关启动、配对授权和依赖缺失四类。下面逐条对照。401 Unauthorized这是模型侧鉴权失败。原因通常是 API Key 填错、Key 已失效、或者 Base URL 写错。检查 config.toml 里的base_url是否为 https://taotoken.net/api api_key是否为 TaoToken 控制台创建的完整 Key。注意不要把 Key 前后的空格带进去。如果 Key 刚重置过旧 Key 会立即失效需要更新配置并重启网关。local proxy failed这个报错通常出现在网关启动阶段表示本地代理或端口绑定失败。先检查是否有其他进程占用了 Hermes 需要的端口执行hermes gateway restart重启一次。如果仍然报错检查系统代理设置是否干扰了本地回环地址。Hermes 的 gateway 是本地服务不需要外部代理把系统代理关掉再试。reading choices 相关报错这类错误一般出现在模型返回格式不符合预期时比如返回体里没有choices字段。原因可能是 Base URL 指向了非兼容接口或者 Model ID 填了一个不存在的模型。确认 Base URL 是 https://taotoken.net/api Model ID 在 TaoToken 控制台的模型列表里存在。换一个模型 ID 再试比如从 deepseek-chat 换成 kimi 系列。OAuth 相关报错如果你在 QQ 开放平台侧看到 OAuth 或授权失败检查 AppID 和 AppSecret 是否匹配以及机器人是否已正确创建。AppSecret 只显示一次如果填错只能重置后重新填写。重置后记得同步更新 config.toml 并重启网关。依赖缺失QQ 网关依赖 aiohttp 和 httpx。如果启动时报模块找不到执行pip install aiohttp httpx安装完成后重启网关。如果你用的是虚拟环境确认 pip 属于当前环境。机器人不回复按顺序检查三件事。第一hermes gateway status确认网关在运行。第二确认 AppID、AppSecret 正确。第三确认用户已通过hermes pairing approve qqbot 配对码授权。这三步都正常再看模型侧是否有 401 或 reading choices 报错。群聊 无响应确认机器人已加入群组。QQ 机器人需要被拉进群才能响应群聊 。如果已入群仍无响应检查网关日志是否有消息进入以及 dm_policy 是否限制了群聊。必要时把 dm_policy 临时设为 allow_all 测试确认后再改回 pairing。排障时有一个通用原则先看 Hermes 终端日志再看 QQ 侧提示最后看 TaoToken 控制台的调用记录。日志里通常会直接给出错误类型比盲目改配置高效得多。如果你在模型侧反复遇到 401建议直接去 TaoToken 的 API Keys 页面重新创建一个 Key替换后重启网关这是最快的排除法。6. 长期使用建议与 CTA把 Hermes Agent 接进 QQ 只是第一步真正让它“越用越聪明”的是持续使用和记忆积累。Hermes 的长记忆和技能自进化需要时间沉淀你用得越多它对上下文的理解越准能自动创建和改进的技能也越多。所以建议你固定用一个模型 ID 跑一段时间比如 deepseek-chat等稳定后再按需切换。日常运维记住三条命令就够了hermes gateway status看状态hermes gateway restart重启hermes pairing approve qqbot 配对码授权新用户。如果你把机器人分享给朋友或同事他们第一次对话时会收到配对码你用第三条命令批准即可。模型侧的统一管理继续用 TaoToken。Base URL 固定为 https://taotoken.net/api Key 在控制台管理模型 ID 按需切换。这样无论 Hermes 后续支持多少种模型你都不用重复配置。需要创建或重置 Key 时去 https://taotoken.net/api-keys 想看接入示例和参数说明去 https://taotoken.net/doc 想先试跑模型确认效果去模型对话页面。如果你打算长期跑编码类或 Agent 类任务可以了解 coding-plan入口在 https://taotoken.net/coding-plan 。最后给一个实用技巧把 Hermes 的 gateway 配置和 TaoToken 的 Key 分开管理。config.toml 里只放引用Key 放在环境变量或单独的密钥文件里这样换 Key 时不用改主配置。另外定期检查网关日志尤其是模型调用的状态码能提前发现额度或鉴权问题。QQ 侧的机器人消息列表里欢迎消息和配对提示都保留着方便你随时回溯。现在打开你的 QQ给机器人发一条消息看它是否正常回复。如果回复了说明整条链路已经打通如果没有回到第 5 节按报错对照排查。