1. 装完 OpenClaw 却跑不起来,问题多半出在 Key 和 Skill 上
OpenClaw 这类本地 Agent 工具最近热度很高,它能在你本机跑一个可以自己动手干活的智能体,接进飞书之后,你发一句话,它就能帮你查资料、写文档、做表格、发消息。适合谁?适合想把 Agent 真正用起来的开发者,尤其是团队已经在飞书里协作、希望机器人直接进群干活的人。
但很多人卡在同一个地方:软件装完了,界面也打开了,一到配置就懵。settings.json 里那几行到底填什么?TaoToken 的统一 Key 写在哪?CC Switch 怎么切?Skill 怎么验证它真的被调用了?这篇就按我实际跑通的顺序,把 OpenClaw 本地安装后的首次可用配置讲清楚,给你可复制的配置骨架、Key 写入位置、切换步骤,以及一条 Skill 调用验证动作。目标是装完即能跑通第一个 Agent 任务。
2. TaoToken 前置:统一 Key 是什么,为什么先配它
OpenClaw 本身是个壳,真正干活的是背后的大模型。你要么每个模型单独申请 Key,要么用一个统一入口把 Key 管起来。TaoToken 就是干这个的:一个 Key 覆盖多种模型,省得你在配置文件里来回换。
先做两件事。第一,去官网注册并拿到 Key,地址是 https://taotoken.net/?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= 。第二,进控制台创建 API Key,入口在 https://taotoken.net/console?utm_source=taotoken_aicg_blog_end&utm_content=console&utm_campaign=rewrite ,创建完把 Key 复制出来,形如sk-xxxxxxxx,后面要写进配置。
API 的基础地址是 https://taotoken.net/api ,注意这个不带参数,配置里填这个就行。如果你后面要单独管理 Key,可以走 https://taotoken.net/api-keys?utm_source=taotoken_aicg_blog_end&utm_content=api-keys&utm_campaign=rewrite 。想先验证模型通不通,用模型对话页面最快:https://taotoken.net/chat?utm_source=taotoken_aicg_blog_end&utm_content=model&utm_campaign=rewrite 。
注意:Key 只创建一次就够,别在多个配置文件里写不同 Key,否则 CC Switch 切换时会乱。
3. 可复制配置:settings.json 与 config.toml 骨架
OpenClaw 的配置分两块,一块是应用级 settings.json,一块是模型级 config.toml。下面是我实测能跑通的骨架,你按自己路径改。
先看 settings.json,放在 OpenClaw 的用户配置目录下(Mac 一般在~/.openclaw/,Windows 在%APPDATA%\openclaw\):
{ "provider": "taotoken", "api_base": "https://taotoken.net/api", "api_key": "sk-你的TaoTokenKey", "default_model": "claude-sonnet-4-5", "cc_switch": { "enabled": true, "profiles": ["default", "coding"] }, "skills": { "enabled": true, "dir": "./skills" } }再看 config.toml,这个管模型和 Skill 的细节:
[model] provider = "taotoken" base_url = "https://taotoken.net/api" api_key = "sk-你的TaoTokenKey" model = "claude-sonnet-4-5" max_tokens = 4096 temperature = 0.7 [skill] enabled = true auto_load = true path = "./skills" [feishu] enabled = true app_id = "cli_你的飞书AppID" app_secret = "你的飞书AppSecret"两个文件里的api_key保持一致,都填 TaoToken 那一个 Key。base_url统一写https://taotoken.net/api,不要带斜杠结尾。
3.1 CC Switch 切换步骤
CC Switch 是用来在多个配置档之间切换的,比如你平时用 default,写代码时切 coding。操作顺序:
第一步,确认 settings.json 里cc_switch.enabled为 true,profiles里列出你要的档位名。
第二步,在 OpenClaw 命令行执行openclaw switch coding,它会去读对应 profile 的配置。
第三步,执行openclaw status看当前生效的 provider 和 model,确认切过去了。
如果你切完发现模型没变,八成是 config.toml 里的[model]覆盖了 settings.json,把两边的 model 名改成一致即可。
4. 验证请求:跑通第一个 Skill 调用
配置写完,先别急着接飞书,用一条命令验证模型通不通:
curl https://taotoken.net/api/v1/chat/completions \ -H "Authorization: Bearer sk-你的TaoTokenKey" \ -H "Content-Type: application/json" \ -d '{ "model": "claude-sonnet-4-5", "messages": [{"role": "user", "content": "回复 ok"}] }'返回里带choices字段且内容是 ok,说明 Key 和地址都对。
接着验证 Skill。在 OpenClaw 里放一个最简单的 Skill,比如skills/hello/SKILL.md,内容写清楚触发词和动作。然后在对话里输入触发词,比如「帮我跑一下 hello」,观察日志里有没有skill loaded: hello和skill executed。有这两行,说明 Skill 接入成功。
最后接飞书。把 config.toml 里的[feishu]填好,启动 OpenClaw,在飞书里给机器人发一句「你好」,能收到回复就全通了。整个过程从装完到跑通,熟练的话一分钟内能完成配置写入和验证。
5. 本篇常见错排查
报 401 或 invalid api key:九成是 Key 复制时带了空格,或者 settings.json 和 config.toml 里写了两个不同的 Key。检查两处是否一致,重新粘贴一次。
报 model not found:模型名写错了。TaoToken 的模型名要和平台文档一致,别自己拼。去模型对话页面确认可用模型名。
Skill 不触发:先看skills目录路径对不对,settings.json 里的dir和 config.toml 里的path要指向同一个目录。再看 SKILL.md 的触发词有没有写对,大小写敏感。
飞书收不到消息:检查 app_id 和 app_secret 是否填反,以及飞书开放平台里机器人权限有没有开。事件订阅地址要指向你本机的回调端口。
CC Switch 切了没反应:确认 profile 名和命令行输入的一致,切完用openclaw status复核,别只看配置文件。
6. 配好之后,从哪继续
到这一步,你的 OpenClaw 已经能在飞书里跑第一个 Agent 任务了。接下来如果想让模型能力更稳,可以去模型对话页面多试几个模型,找到适合你场景的那个:https://taotoken.net/chat?utm_source=taotoken_aicg_blog_end&utm_content=model&utm_campaign=rewrite 。如果你打算长期用它写代码、跑 Agent 任务,Coding Plan 会更划算,入口在 https://taotoken.net/coding-plan?utm_source=taotoken_aicg_blog_end&utm_content=coding-plan&utm_campaign=rewrite 。接入过程中遇到报错,先翻接入文档:https://taotoken.net/doc?utm_source=taotoken_aicg_blog_end&utm_content=doc&utm_campaign=rewrite ,大部分配置问题里面都有对照说明。Key 管理和新建走 https://taotoken.net/api-keys?utm_source=taotoken_aicg_blog_end&utm_content=api-keys&utm_campaign=rewrite 。Claude Code 相关的接入细节看 https://taotoken.net/claude-code?utm_source=taotoken_aicg_blog_end&utm_content=ClaudeCodeAnthropic&utm_campaign=rewrite 。
我自己的习惯是,配置改完先跑一遍 curl 验证,再进飞书测,这样出问题能快速定位是 Key 层还是 Skill 层。