OpenClaw 和 Hermes Agent 跑同一套 Skill:Key 用 TaoToken
2026/9/15 11:18:25 网站建设 项目流程

OpenClaw 和 Hermes Agent 都跑同一套基于 agentskills.io 标准的 SKILL.md,Skill 本身可以跨框架复用,模型 Key 却不行。TaoToken 解决的就是这个:在 https://taotoken.net/?utm_source=taotoken_aicg_blog_end 创建一把 Key,把 OpenClaw 和 Hermes Agent 两边的模型调用地址都指向 https://taotoken.net/api,同一套 Skill 就能在两种架构下分别验证,不用再为每个框架单独申请模型服务。

这两套框架在今年开源社区里讨论度不低。OpenClaw 押注路由与控制,把 Gateway 做成持久化控制平面,LLM 是最底层可替换组件;Hermes Agent 押注记忆与自我进化,把 AIAgent 对话循环做成永久核心,执行后端可插拔。前者 TypeScript / Node.js 22,后者 Python 3.11,配置一个在~/.openclaw/openclaw.json,一个在~/.hermes/config.yaml。架构差异这么大,Skill 格式倒是出奇地一致,这才有了「一套 Skill 两边跑」的可能性,也才有了 Key 统一管理的必要。

1. 同一个 SKILL.md,为什么偏要配两套模型 Key

1.1 跨框架的是 Skill,不是 Key

OpenClaw 的核心是一个常驻的 Gateway,22 个消息平台的入站消息统一汇入,由它做 Session 解析、权限路由和工具执行;Hermes Agent 的核心是run_agent.py里的 AIAgent 对话循环,CLI、消息网关、IDE 适配器最终都并到这里。两者各自押注的难题不一样,但都承认模型该被放在底层当可替换组件。

可替换不等于免配置。OpenClaw 换模型要动它的 JSON5 配置,Hermes 换模型要动 YAML 里的 provider 段。各自要填各自的 Key、各自的模型 ID、各自的接口地址。你在 OpenClaw 里把 Claude 调通了,切到 Hermes Agent 时一切得重来一遍;反过来的话,你还要记得把上一个框架里的 Key 清理掉,不然月底账单都不好对。

Skill 反而是省心的那一层。两边都实现了 agentskills.io 标准的 SKILL.md,一个为 OpenClaw 写的 Skill,放到 Hermes Agent 里基本能直接用。这说明 Markdown 描述式 Skill 已经成了生态的事实标准,但 Key 的管理仍然是各管各的,没有跟着 Skill 一起标准化。

1.2 统一 API 通道不是改架构,而是把模型入口收拢

把 OpenClaw 和 Hermes Agent 比作两家物流公司,SKILL.md 是两家都认的标准面单,面单格式统一了,可你下订单时还是要在两家分别注册账号、分别充值。TaoToken 做的事情有点像把「下单结算」这一步统一掉:两个框架仍然各跑各的架构,但模型调用都走同一个 OpenAI 兼容端点,使用同一个账号下的同一把 Key。

所以这不是让你放弃 OpenClaw 的 Gateway 路由,也不是让你丢开 Hermes Agent 的学习循环。架构保持原样,变的只是最底层模型调用这一环——从「两套 Key 两根线」收拢成「一把 Key 一个入口」。配置完成后,你在 OpenClaw 里换模型,和在 Hermes Agent 里换模型,改的都是同一个账号下的模型 ID,心智负担小很多。

2. 拿 Key 前先把官网和接口地址分清

2.1 官网是给人点的,接口是给 Agent 填的

去 https://taotoken.net/?utm_source=taotoken_aicg_blog_end 注册账号并创建 API Key,这一步和人去控制台操作完全一致。官网落地页承担的是注册、创建 Key、浏览模型广场、查看用量这些「人做的事」。

填进工具里的 Base URL 则固定是https://taotoken.net/api,末尾不要加/v1,也不要加 UTM 参数。这两个地址经常被搞混:带?utm_source=taotoken_aicg_blog_end的链接是给浏览器用的,Agent 运行时不会去解析它;而https://taotoken.net/api是程序真正发起请求的地方。记法很简单:带 UTM 的是官网,纯/api的是接口,两者各司其职。

2.2 创建 Key 之后先复制保存好,后面两处配置文件填同一串

注册完成后,在控制台创建 API Key,先把它复制到一个临时文档里。接下来配置 OpenClaw 和 Hermes Agent 时,填的都是这一串YOUR_API_KEY。不需要为 OpenClaw 单独申请一把、再为 Hermes Agent 申请另一把——TaoToken 的定位是统一接入,一个账号下创建的 Key 同时服务两个框架,这正好对应原文里「两个框架分别申请模型服务」的麻烦事。

模型 ID 也不要凭印象选。打开模型广场,看你想用的模型在官方列表里的准确写法,然后把它替换进后面的配置示例。实际的模型 ID 可能是简洁的代号,也可能是带版本区分的命名,以模型广场展示为准,不要自己猜一个带日期后缀的组合。

3. 把 OpenClaw 的模型调用指到 TaoToken:改 openclaw.json

3.1 找到~/.openclaw/openclaw.json再动手

OpenClaw 的配置文件是 JSON5 格式,路径在~/.openclaw/openclaw.json。JSON5 允许注释、允许单引号、允许键名不加引号,它比标准 JSON 宽松,但很多人习惯性用 JSON 解析器去校验,反而报错。

下面是一个指向 TaoToken 的配置片段骨架,重点看三样东西:Base URL、API Key、模型 ID。

{ // ~/.openclaw/openclaw.json 片段 // 模型调用统一走 TaoToken gateway: { model: { baseUrl: 'https://taotoken.net/api', apiKey: 'YOUR_API_KEY', model: 'YOUR_MODEL_ID' } } }

实际版本里字段名可能随 OpenClaw 迭代略有调整,但你要填的内容不变:Base URL 是https://taotoken.net/api,Key 是从 https://taotoken.net/?utm_source=taotoken_aicg_blog_end 创建的那一串YOUR_API_KEY,模型 ID 以官网模型广场为准。保存文件时注意别把引号写成中文全角字符。

3.2 改的是模型路由,不是 Gateway 的权限和沙箱策略

OpenClaw 的 Gateway 层还管着 Session 解析、权限路由、Docker 沙箱、命令审批这些事。你不需要动它们——原文里强调过,OpenClaw 的模型是可替换组件,路由规则、会话数据、权限策略不会因为换模型而改变。你只需要把模型这一层的入口指到 TaoToken,剩下的 Gateway 行为保持原样。

改完配置后,必须重启 Gateway 进程。OpenClaw 的 Gateway 是常驻进程,JSON5 文件保存后不会自动热加载。重启完,随便给 Agent 发一条消息触发一次模型调用,如果响应正常,说明 TaoToken 的接入已经生效;如果出现连接类错误,先检查 Base URL 是不是末尾多了/v1、是不是把官网链接填了进来。

4. 把 Hermes Agent 的模型调用指到 TaoToken:改 config.yaml

4.1 Provider 用 openai-compatible,而不是默认厂商

Hermes Agent 的配置文件在~/.hermes/config.yaml,它的 Provider Resolution 模块负责选择模型供应商,支持 OpenAI 兼容的 chat completions 模式。TaoToken 正好提供的就是 OpenAI 兼容接口,所以不需要额外适配层,直接把 provider 写为openai-compatible即可。

# ~/.hermes/config.yaml runtime: provider: openai-compatible base_url: https://taotoken.net/api api_key: YOUR_API_KEY model: YOUR_MODEL_ID

YAML 对缩进敏感,runtime:下面四个字段必须保持同级缩进。api_key同样填从 https://taotoken.net/?utm_source=taotoken_aicg_blog_end 创建的那把YOUR_API_KEY。模型 ID 还是以模型广场为准,不要自己拼接名称。

4.2 工具执行后端的配置不用动

Hermes Agent 的工具系统很丰富:终端、文件读写、代码执行、浏览器自动化、MCP 客户端,以及六种可插拔的执行后端(本地、Docker、SSH、Modal、Daytona、Singularity)。这些执行后端有自己独立的连接配置,跟模型调用的 Key 是两回事。不要因为改了模型配置,顺手把 SSH 密码或 Docker 地址也换成YOUR_API_KEY——那不是 TaoToken 该管的部分。

改完 YAML 后,如果之前开着常驻的 Hermes gateway 或旧的 CLI 会话,需要退出重进。启动一个新的hermes会话,跑一条简单的指令验证模型调用正常,再接下去做跨框架 Skill 验证。

5. 同一套 SKILL.md 在两个框架里各跑一遍

5.1 先写一个能跑的 code-review Skill

为了验证配置,写一个最简单的 Skill,功能是代码审查但不直接修改文件。文件内容完全符合 agentskills.io 的标准格式,两个框架共用这一个文件:

--- name: code-review description: 对指定目录或代码变更做审查,输出问题清单,不直接修改代码 version: 1.0.0 --- # 代码审查 ## 适用场景 - 用户要求审查某个文件或目录 - 用户给出 diff 要求检查问题 ## 执行步骤 1. 读取目标文件或 diff 2. 检查安全风险、逻辑边界、异常处理 3. 按严重程度输出问题列表,附修改建议 4. 输出审查结果,不做任何写入操作 ## 注意事项 - 只审查,不直接修改代码文件 - 修改建议写清楚理由

这个 Skill 故意把「不直接修改文件」写进注意事项,是为了让两个框架在运行同一份 Skill 时的行为边界一致——都只做审查和输出,不执行写入。

5.2 OpenClaw 侧:放入 skills 目录,按需触发

在 OpenClaw 里,Skill 需要显式安装。把上面的文件放入~/.openclaw/skills/目录,或者通过 ClawHub 安装社区 Skill。OpenClaw 的加载机制是:只有明确安装的 Skill 才会被注入 prompt,不会全量把目录里所有 Skill 都塞给模型。这保证了 prompt 不会因为 Skill 堆积而稀释。

安装完成后,对 OpenClaw 说一句「用 code-review 审查当前目录下的变更」,Gateway 会把这个 Skill 的内容加载进上下文,让模型按 SKILL.md 里的执行步骤跑一遍。整个过程人工可控,改 Skill 就是改 Markdown 文件本身,审计成本极低。

5.3 Hermes 侧:放进目录就自动成为 slash 命令

Hermes Agent 的 Skill 存放路径是~/.hermes/skills/,把同一个code-review文件放进去,它会自动注册成/code-review命令。你在 CLI 里直接输/code-review 审查 src/ 目录,AIAgent 就会加载这份 Skill 并按步骤执行。

Hermes 还有一个半自动的 Skill 自进化机制:每 15 轮对话,Agent 会被提示评估「是否需要创建新 Skill 或更新已有 Skill」。你手动放进去的 Skill 相当于给了它一个稳定的起点,后续 Hermes 可能在运行中帮你精炼它。如果你重视可控性,定期瞄一眼~/.hermes/skills/目录就够了。

两边跑完之后你会发现:同一个code-review文件,在 OpenClaw 里按需注入、在 Hermes 里变成 slash 命令,但 Skill 本体一个字符都没改。这正是「Skill 格式统一」带来的直接收益,而让这件事变得轻松的,是你只维护了 https://taotoken.net/?utm_source=taotoken_aicg_blog_end 这一把 Key。

6. 切换框架时最容易混的几个配置点

6.1 把官网链接填成 Base URL

这是排障中最常见的一类问题。打开浏览器访问的是https://taotoken.net/?utm_source=taotoken_aicg_blog_end,这个地址带 UTM,是给人注册、看模型广场、查用量用的。填进 OpenClaw 或 Hermes Agent 的 Base URL 必须是无 UTM 的https://taotoken.net/api。一旦把浏览器里的完整链接复制进配置文件,Agent 发出的请求会打到落地页地址上,连接自然失败。

同样要提醒的是 Base URL 末尾。很多模型的官方接口喜欢在路径末尾加/v1,但 TaoToken 不是这个风格——它的接口就是https://taotoken.net/api,不要画蛇添足。

6.2 模型 ID 靠记忆填

OpenClaw 和 Hermes Agent 报「模型不存在」或「provider 解析失败」时,十有八九是模型 ID 写错了。尤其是那些带日期后缀或者看起来很像某个大版本型号的名字,你记忆里的版本很可能已经下线或改名。别抱着「大概叫这个名字」的心态去配,每次都以模型广场展示的准确 ID 为准。

6.3 改完配置没重启进程

OpenClaw 的 Gateway 常驻、Hermes 的 CLI 会话常驻,都是「改完配置要重启才生效」的类型。如果你改了 JSON5 或 YAML 后立刻发消息,Agent 用的还是旧配置,表现就是「配置像没保存一样」。先各自重启对应进程,再跑一次 Skill,顺序不要反。

7. 用同一把 Key 双向验证,而不是二选一

7.1 两边跑通后,回官网看这一次调用是否记在同一把 Key 名下

OpenClaw 跑完一次code-review,Hermes Agent 再跑一次相同的 Skill,然后回到 https://taotoken.net/?utm_source=taotoken_aicg_blog_end 查看用量。理想情况下,两次调用都出现在同一个账号下,记在同一把YOUR_API_KEY名下。这一步比看配置文件更能说明问题:它证明两个框架不是「各自配了一把好使的 Key」,而是真的在共用同一条统一 API 通道。

7.2 接下来值得投入的是 Skill 本身,而不是 Key 的管理

原文里有一句判断很到位:OpenClaw 和 Hermes 不是竞争关系,而是对同一问题的两种有效押注。一个押注路由与控制,一个押注记忆与自我进化。用 TaoToken 把模型入口统一之后,你的日常流程会变成这样:Skill 还是同一套 SKILL.md,想换模型就改一下YOUR_MODEL_ID,两个框架的配置文件几乎不用再碰。

把打磨 Skill 的时间留给 Skill 本身。当 OpenClaw 和 Hermes Agent 都能用同一把 Key、同一份 SKILL.md 跑出一致的行为时,跨框架验证这件事就真正变轻了。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询