1. 为什么 Skill 装上了却跑不起来
OpenClaw 的 Skill 机制是它区别于普通聊天客户端的关键:一个 Skill 就是一份带skill.json描述的能力包,装进技能目录后,OpenClaw 会在启动时扫描并注册成可调用的工具。听起来很顺,但真正动手时,卡点往往不在「装」,而在「装完之后模型调不动」。
我见过最多的三类现象:一是clawhub install显示成功,对话里让 OpenClaw 执行 shell 命令却毫无反应;二是 Skill 明明在目录里,日志却报skill not registered;三是本地终端能跑,一接到 Trae 或 MCP 客户端就 401。前两个是 Skill 注册链路问题,第三个几乎都是 Key 和 API 通道没统一。
这篇是「第二课」,聚焦从 ClawHub 安装到本地拓展的完整链路,同时把 TaoToken 作为统一 Key/API 通道接进来,让 OpenClaw、Trae、MCP 客户端共用一套凭证。适合已经在本地跑起 OpenClaw、想认真玩 Skill 拓展的人;如果你还没装 OpenClaw,建议先把基础环境跑通再回来。
核心检索词先摆清楚:OpenClaw 是一个可本地部署的 Agent 运行框架,Skill 是它的能力插件,ClawHub 是 Skill 的分发仓库,Trae 是编码 IDE,MCP 是模型与工具之间的协议层。TaoToken 在这里扮演的角色是统一 API 通道——一个 Key 打通多个 AI 工具,省去每个客户端单独配 Key 的麻烦。
2. 前置:TaoToken 统一 Key 与 OpenClaw 的接入位置
在动手装 Skill 之前,先把「模型从哪来」这件事定死。OpenClaw 本身不带模型,它需要一个兼容 OpenAI 协议的chat completions端点。默认情况下你会去各个模型厂商分别申请 Key,然后写进 OpenClaw 的配置。工具一多,Key 就散落在 OpenClaw、Trae、Cherry Studio、MCP 客户端里,改一次要改五处。
TaoToken 的思路是把这层收敛掉:你只在 TaoToken 拿一个 Key,所有支持自定义 base_url 的工具都指向同一个 API 地址。对 OpenClaw 来说,它看到的仍然是一个标准的 OpenAI 兼容端点,不需要改任何 Skill 逻辑。
具体操作路径:先到 TaoToken 控制台创建 API Key,地址是 https://taotoken.net/api-keys ,创建后复制那串sk-开头的凭证。注意这个 Key 只在创建时完整显示一次,建议直接存进密码管理器。
拿到 Key 之后,OpenClaw 侧要改的是模型 provider 配置。它读取的是~/.openclaw/config.toml(Linux/macOS)或%USERPROFILE%\.openclaw\config.toml(Windows)。如果你用的是 WSL,路径在 Ubuntu 子系统里,别改到 Windows 那份去了。
注意:TaoToken 的 API 根地址是 https://taotoken.net/api ,配置时 base_url 填这个,不要带多余的
/v1后缀,OpenClaw 会自己拼/v1/chat/completions。填错会直接 404。
这一步做完,OpenClaw 的模型通道就统一了。接下来装 Skill 时,无论 Skill 内部要不要调模型,走的都是这条通道,不会出现「Skill 装好了但模型调用失败」的割裂。
3. 可复制配置:settings.json 与 config.toml 骨架
这一节给可直接抄的配置。分两块:OpenClaw 的config.toml,以及 Trae / MCP 场景下的settings.json。
3.1 OpenClaw config.toml 骨架
# ~/.openclaw/config.toml [model] provider = "openai-compatible" base_url = "https://taotoken.net/api" api_key = "sk-你的TaoToken密钥" model = "claude-sonnet-4-5" max_tokens = 8192 temperature = 0.3 [gateway] enabled = true [gateway.http] host = "127.0.0.1" port = 8787 [gateway.http.endpoints.chatCompletions] enabled = true [skills] dir = "~/.openclaw/skills" auto_reload = true几个关键点解释一下。base_url指向 TaoToken 的 API 根,api_key填你创建的那串。model字段写你要用的模型标识,具体可用模型在 TaoToken 的模型列表里查,地址 https://taotoken.net/models 。gateway.http.endpoints.chatCompletions.enabled = true这一行是后面接 Trae 和 MCP 的前提——它把 OpenClaw 自己变成一个 OpenAI 兼容服务,外部客户端可以连进来。
skills.dir是技能目录,auto_reload = true让 OpenClaw 监听目录变化,装完 Skill 不用重启也能识别。这个开关能省掉大量「装了没生效」的困惑。
3.2 Trae / MCP 侧 settings.json 骨架
Trae 通过 MCP 连 OpenClaw 时,配置写在 Trae 的 MCP 设置里。典型片段如下:
{ "mcpServers": { "openclaw": { "command": "npx", "args": ["-y", "@openclaw/mcp-bridge"], "env": { "OPENCLAW_GATEWAY": "http://127.0.0.1:8787", "OPENCLAW_API_KEY": "sk-你的TaoToken密钥", "OPENCLAW_MODEL_BASE": "https://taotoken.net/api" } } } }这里的OPENCLAW_GATEWAY指向本地 OpenClaw 的 gateway 端口,OPENCLAW_API_KEY和OPENCLAW_MODEL_BASE让 bridge 在需要直接调模型时也走 TaoToken。这样 Trae 里的编码 Agent 和 OpenClaw 的 Skill 共享同一套模型通道,不会出现「Trae 能调、OpenClaw 调不动」的情况。
如果你用 CC Switch 管理多套配置,可以在它的 profile 里加一段:
{ "name": "openclaw-taotoken", "env": { "OPENAI_BASE_URL": "https://taotoken.net/api", "OPENAI_API_KEY": "sk-你的TaoToken密钥" }, "mcp": { "openclaw": { "gateway": "http://127.0.0.1:8787" } } }CC Switch 的好处是切环境时不用手改文件,一个 profile 对应一套 Key 和端点。对同时玩 OpenClaw、Trae、Claude Code 的人来说,这个统一层很值。
4. Skill 安装的四种方式与验证命令
配置就位后,进入正题:装 Skill。按省事程度从高到低排四种方式,每种都给验证命令。
4.1 ClawHub 命令行一键装
最省事的方式,适合新手:
clawhub install file-system shell-exec process-manager这条命令会从 ClawHub 拉取 Skill 包、解压到~/.openclaw/skills、自动注册。装完验证:
openclaw skill list输出里应该能看到刚装的 Skill 名字和状态active。如果状态是pending,说明auto_reload没开或目录不对,检查config.toml里的skills.dir。
4.2 手动下载丢文件夹
离线环境或 ClawHub 访问不稳时用这招。从 ClawHub 网站下载 Skill 的 zip,解压后整个文件夹复制到~/.openclaw/skills/下。目录结构应该是~/.openclaw/skills/file-system/skill.json,别多套一层文件夹。
复制完执行:
openclaw skill reload openclaw skill listreload会重新扫描目录。如果 Skill 没出现,八成是skill.json缺失或格式错误,用cat ~/.openclaw/skills/你的skill/skill.json看一眼。
4.3 Git 克隆源码
想改代码、做二次开发的人用这个:
cd ~/.openclaw/skills git clone https://github.com/your/skill-repo.git my-custom-skill openclaw skill reload克隆下来的目录名要和skill.json里的name字段一致,否则注册会失败。改完代码后openclaw skill reload即可热加载,不用重启整个 OpenClaw。
4.4 对话内让 OpenClaw 自己搜装
OpenClaw 支持在对话里让它自己找 Skill:
帮我搜索 ClawHub 上有没有处理 PDF 的 skill,找到后安装它会调用内置的 ClawHub 检索能力,列出候选并执行安装。这种方式适合探索阶段,但生产环境建议还是用命令行,可控性更强。
4.5 全量必装 Skill 清单
如果你要搭一套完整的编码系统,下面这组覆盖了文件、进程、浏览器、前端构建、部署等补位能力:
clawhub install file-system shell-exec process-manager env-manager \ browser-control devtools-capture hot-reload-watcher \ react-dev vue-dev vite-core npm-package frontend-build \ frontend-debug tailwind-css ui-ux-pro-max frontend-design \ error-capture auto-fix log-monitor background-service \ state-persist retry-manager vercel-deploy netlify-deploy \ github-pages-deploy deploy-verify装完统一验证:
openclaw skill list | grep -c active数字应该和安装数量对得上。少一个就单独openclaw skill info <name>看报错。
5. 验证请求:从本地到 Trae 的完整链路
Skill 装完不算完,要验证「模型能通过 Skill 干活」。分三步。
5.1 本地 gateway 自检
先确认 OpenClaw 的 gateway 起来了:
curl -s http://127.0.0.1:8787/v1/models \ -H "Authorization: Bearer sk-你的TaoToken密钥"返回模型列表说明 gateway 和 TaoToken 通道都通。如果 401,检查 Key;如果连接拒绝,检查config.toml里 gateway 是否enabled = true。
5.2 Skill 实际执行测试
在 OpenClaw 对话里输入一个能触发 Skill 的指令:
打开记事本并输入文字:123这条指令会触发shell-exec或process-managerSkill。如果记事本弹出并输入了 123,说明 Skill 注册、模型调用、工具执行三层全通。没反应的话,看 OpenClaw 日志:
tail -f ~/.openclaw/logs/openclaw.log日志里会明确写skill shell-exec invoked还是skill not found。
5.3 Trae + MCP 联调
Trae 侧配置好 MCP 后,在 Trae 的 Agent 面板里发一条指令,让它通过 OpenClaw 执行文件操作:
用 openclaw 的 file-system skill 列出当前项目根目录的文件Trae 会通过 MCP bridge 把请求转给 OpenClaw gateway,OpenClaw 调用file-systemSkill 返回结果。如果 Trae 报MCP server not responding,先确认 OpenClaw gateway 在跑,再检查settings.json里的OPENCLAW_GATEWAY地址和端口。
实测下来,这条链路最容易出问题的地方是端口冲突——8787 被别的服务占了。改config.toml里的port后,记得同步改 Trae 的settings.json。
6. 本篇常见错排查
把踩过的坑集中列一下,按报错现象对号入座。
Skill 装了但skill list不显示:九成是目录层级错了。正确是~/.openclaw/skills/<skill-name>/skill.json,如果你解压出来是~/.openclaw/skills/<skill-name>/<skill-name>/skill.json,多了一层,OpenClaw 扫不到。把内层文件夹提上来即可。
skill not registered但文件在:skill.json里的name字段和文件夹名不一致。OpenClaw 以skill.json的name为准注册,文件夹名只是路径。改一致后openclaw skill reload。
模型调用 401:Key 错了或 base_url 带了/v1。TaoToken 的 base_url 是 https://taotoken.net/api ,不要自己加/v1。Key 确认是sk-开头且没多余空格。
Trae 连不上 MCP:先curl http://127.0.0.1:8787/v1/models确认 gateway 活着。活着但 Trae 报错,检查settings.json里OPENCLAW_GATEWAY是不是http://127.0.0.1:8787,别写成localhost——某些环境下 localhost 解析到 IPv6 会连不上。
Skill 执行超时:shell-exec这类 Skill 默认超时较短,跑长命令会断。在config.toml里加[skills.shell-exec] timeout = 120调大超时。
WSL 里装了但 Windows 侧 Trae 连不上:WSL 的网络和 Windows 宿主是隔离的。要么在 WSL 里跑 Trae,要么把 OpenClaw gateway 的host改成0.0.0.0并在 Windows 防火墙放行端口。改host有安全风险,仅限本地开发环境。
auto_reload不生效:某些文件系统(尤其是 Windows 挂载的目录)不支持 inotify 监听。手动openclaw skill reload兜底。
排障时如果怀疑是 Key 或通道问题,直接去 TaoToken 控制台看调用记录,地址 https://taotoken.net/console ,每次请求的成功/失败和耗时都有记录,比翻日志快。
7. 把统一 Key 用在更多工具上
Skill 装完、链路跑通之后,你会发现真正省事的是「一套 Key 走天下」这件事。OpenClaw 用 TaoToken 的 Key,Trae 通过 MCP 复用同一个 gateway,Cherry Studio 里配的也是同一个 base_url。以后换模型、调额度,只改 TaoToken 控制台一处,所有工具跟着变。
如果你还想把这套配置用到 Claude Code 或别的编码 Agent 上,TaoToken 的接入文档里有各客户端的配置示例,地址 https://taotoken.net/doc 。想先试试模型对话效果,可以直接在 https://taotoken.net/chat 里发几条指令验证通道。长期跑编码 Agent 的话,Coding Plan 的额度模型更适合高频调用,详情在 https://taotoken.net/coding-plan 。
回到 OpenClaw 本身,Skill 生态还在快速长,ClawHub 上每天都有新包。建议养成习惯:装新 Skill 前先openclaw skill info <name>看依赖,装完立刻openclaw skill list确认状态,别攒一堆再排查。这套流程跑顺了,OpenClaw 才真正从「能聊」变成「能干活」。