尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

OpenClaw 和 Hermes Agent 跑同一套 Skill:Key 用 TaoToken

OpenClaw 和 Hermes Agent 跑同一套 Skill:Key 用 TaoToken OpenClaw 和 Hermes Agent 都跑同一套基于 agentskills.io 标准的 SKILL.mdSkill 本身可以跨框架复用模型 Key 却不行。TaoToken 解决的就是这个在 https://taotoken.net/?utm_sourcetaotoken_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为什么偏要配两套模型 Key1.1 跨框架的是 Skill不是 KeyOpenClaw 的核心是一个常驻的 Gateway22 个消息平台的入站消息统一汇入由它做 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_sourcetaotoken_aicg_blog_end 注册账号并创建 API Key这一步和人去控制台操作完全一致。官网落地页承担的是注册、创建 Key、浏览模型广场、查看用量这些「人做的事」。填进工具里的 Base URL 则固定是https://taotoken.net/api末尾不要加/v1也不要加 UTM 参数。这两个地址经常被搞混带?utm_sourcetaotoken_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.json3.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/apiKey 是从 https://taotoken.net/?utm_sourcetaotoken_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.yaml4.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_IDYAML 对缩进敏感runtime:下面四个字段必须保持同级缩进。api_key同样填从 https://taotoken.net/?utm_sourcetaotoken_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_sourcetaotoken_aicg_blog_end 这一把 Key。6. 切换框架时最容易混的几个配置点6.1 把官网链接填成 Base URL这是排障中最常见的一类问题。打开浏览器访问的是https://taotoken.net/?utm_sourcetaotoken_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-reviewHermes Agent 再跑一次相同的 Skill然后回到 https://taotoken.net/?utm_sourcetaotoken_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 跑出一致的行为时跨框架验证这件事就真正变轻了。
返回列表