1. 微信里跑 openclaw 小龙虾插件,AI 调用链路到底怎么接
微信官方接入 openclaw 小龙虾插件这件事,本质上是把「微信聊天窗口」变成了一个能调用大模型的入口。你在手机微信里启用 clawbot 插件、在电脑上装好 openclaw 的微信桥接 CLI,扫码之后,微信消息就会经由本地 openclaw 转发给模型服务,再把回复送回聊天框。听起来链路不长,但真正卡人的地方往往不是扫码,而是模型这一端的 Key 和 API 通道怎么配。
openclaw 本身是一个开源的 Agent 运行框架,clawbot 是它在微信侧的机器人形态,小龙虾插件则是微信官方给 openclaw 提供的接入组件。三者叠在一起,开发者最常遇到的场景是:插件装好了、二维码扫出来了、消息也发出去了,但模型侧返回 401 或者超时,聊天框里一直转圈。这类问题九成出在 config.toml 和 settings.json 的模型配置没对齐,而不是插件本身。
这篇面向的是需要在微信生态内跑通 clawbot 的开发者。我会给出 TaoToken 统一 Key 的接入骨架,把 config.toml 与 settings.json 两份配置写成可直接复制的形式,再用 npx 启动后发一次对话请求来验证整条链路。TaoToken 在这里的角色是统一模型入口,你不需要为 openclaw、clawbot 分别申请不同厂商的 Key,一个 Key 走一个 API 通道即可。官网入口在 https://taotoken.net/?utm_source=taotoken_aicg_blog_end ,API 地址是 https://taotoken.net/api ,后面配置里会反复用到。
适合谁看:已经装好 openclaw、手机微信更新到较新版本、能跑 npx 命令,但模型调用一直不通的人。如果你还没装 openclaw,也可以先按本文把配置骨架准备好,装完直接填。
2. 前置准备:TaoToken 统一 Key 与 openclaw 环境
在动 config.toml 之前,先把两件事做完:拿到 TaoToken 的 API Key,确认本机 openclaw 能跑 npx。
2.1 申请 TaoToken API Key
打开 https://taotoken.net/api-keys ,登录后创建一个新的 Key。建议按用途命名,比如openclaw-weixin,方便后面在多个项目里区分。创建完立刻复制,页面刷新后就不再完整显示。
拿到 Key 之后,先别急着写进配置。用一条 curl 确认这个 Key 和 API 通道是通的:
curl https://taotoken.net/api/v1/models \ -H "Authorization: Bearer sk-你的TaoTokenKey"返回里能看到模型列表,说明 Key 有效、通道可达。这一步能省掉后面大量「到底是 Key 错还是配置错」的排查时间。
2.2 确认 openclaw 与 npx 可用
openclaw 的微信插件通过 npx 拉起,所以本机要有 Node.js 环境。检查一下:
node -v npx -vNode 建议 18 以上。如果 npx 报找不到命令,先装 Node 再继续。openclaw 主程序本身按官方文档装好即可,本文不重复安装步骤,重点放在模型配置和插件启动。
2.3 目录约定
openclaw 的配置通常放在用户目录下的.openclaw里。本文按这个约定写路径:
~/.openclaw/config.toml ~/.openclaw/settings.json如果你的 openclaw 用了自定义配置目录,把下面内容里的路径替换成你自己的即可,字段名不变。
3. 可复制配置:config.toml 与 settings.json 骨架
这一节是全文的核心。两份配置要一起改,只改一份经常出现「模型列表能拉到但对话报错」的情况。
3.1 config.toml 模型通道配置
config.toml 负责定义模型提供方和默认模型。把 base_url 指向 TaoToken 的 API 地址,Key 用环境变量注入,避免明文写死在文件里:
# ~/.openclaw/config.toml [provider.taotoken] type = "openai-compatible" base_url = "https://taotoken.net/api/v1" api_key_env = "TAOTOKEN_API_KEY" [model.default] provider = "taotoken" name = "claude-sonnet-4-20250514" max_tokens = 4096 temperature = 0.7 [agent.clawbot] model = "default" system_prompt = "你是微信里的助手,回答简洁,必要时分点。"几个关键点说明:
type用openai-compatible,因为 TaoToken 的 API 通道兼容 OpenAI 风格的请求格式,openclaw 直接按这个协议发请求即可。
base_url结尾带/v1,这是接口路径的一部分,漏掉会 404。
api_key_env指向环境变量名,而不是直接写 Key。这样配置文件可以进版本库,Key 留在 shell 里。
name填你要用的模型标识,按 TaoToken 模型列表里实际存在的写。
3.2 settings.json 插件与通道开关
settings.json 管的是 openclaw 运行时行为,包括微信插件是否启用、走哪个 provider:
{ "plugins": { "weixin": { "enabled": true, "channel": "clawbot", "provider": "taotoken" } }, "runtime": { "defaultProvider": "taotoken", "logLevel": "info" }, "session": { "persist": true, "maxTurns": 20 } }plugins.weixin.provider和runtime.defaultProvider都指向taotoken,保证插件调用和默认调用走同一条通道。logLevel设成info,出问题时能看到请求走向;稳定后可以调成warn减少输出。
3.3 注入环境变量
把 Key 写进当前 shell:
export TAOTOKEN_API_KEY="sk-你的TaoTokenKey"想持久化就写进~/.bashrc或~/.zshrc。注意别把 Key 提交到 Git,.openclaw目录建议加进.gitignore。
3.4 参数对照表
| 配置项 | 文件 | 作用 | 常见错误值 |
|---|---|---|---|
| base_url | config.toml | 模型 API 入口 | 漏/v1 |
| api_key_env | config.toml | Key 环境变量名 | 写成 Key 本身 |
| provider | settings.json | 插件走哪条通道 | 与 config 不一致 |
| name | config.toml | 模型标识 | 填了不存在的模型 |
| channel | settings.json | 微信侧形态 | 拼写错误 |
注意:两份文件里的 provider 名称必须完全一致,大小写敏感。
taotoken和TaoToken在配置里是两个不同的键。
4. 启动与验证:npx 拉起插件后发一次对话请求
配置写完,进入验证环节。这一步的目标是确认「微信消息 → openclaw → TaoToken → 模型 → 回复」整条链路通。
4.1 安装微信官方插件
在装好 openclaw 的电脑上执行:
npx -y @tencent-weixin/openclaw-weixin-cli@latest install命令跑完会输出一个二维码。用手机微信扫这个码,clawbot 就绑定到你的微信上了。扫码前确认手机微信已更新到较新版本,并在微信里启用了 clawbot 插件。
4.2 启动 openclaw 并观察日志
另开一个终端,启动 openclaw:
openclaw start --config ~/.openclaw/config.toml日志里应该能看到 provider 初始化为taotoken,以及微信插件加载成功。如果这里就报 provider 找不到,回到第 3 节检查 config.toml 的[provider.taotoken]段。
4.3 发一次对话请求验证
在微信里给 clawbot 发一句简单的话,比如「你好,报一下当前模型」。同时看终端日志,正常会依次出现:
[info] weixin message received [info] provider=taotoken model=claude-sonnet-4-20250514 [info] response 200 in 1.2s微信里收到回复,说明链路通了。如果日志停在provider=taotoken之后没有 response,多半是模型名或 Key 的问题,看下一节。
4.4 用 curl 单独验证模型通道
想区分是插件问题还是模型通道问题,可以绕过微信直接打 API:
curl https://taotoken.net/api/v1/chat/completions \ -H "Authorization: Bearer $TAOTOKEN_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "claude-sonnet-4-20250514", "messages": [{"role": "user", "content": "ping"}] }'这条通了而微信不通,问题在 openclaw 或插件侧;这条也不通,问题在 Key 或模型名。分流排查能省很多时间。
5. 本篇常见错排查
下面这些是我在实际接入里反复见到的报错,按出现频率排。
5.1 401 Unauthorized
最常见。原因通常是环境变量没生效。export只在当前 shell 有效,如果你在 A 终端 export、在 B 终端启动 openclaw,B 里读不到。解决:在启动 openclaw 的同一个终端里 export,或者写进 shell 配置文件后重开终端。
还有一种情况是 Key 复制时带了空格或换行。重新复制一次,注意首尾。
5.2 404 Not Found
base_url 漏了/v1,或者多写了斜杠。正确形式是https://taotoken.net/api/v1,结尾不要再加/。
5.3 模型不存在
config.toml 里的name填了 TaoToken 模型列表里没有的标识。先用 2.1 的 curl 拉一次模型列表,从返回里挑一个填进去。
5.4 插件加载了但微信没反应
检查 settings.json 里plugins.weixin.enabled是否为 true,channel是否为clawbot。另外确认扫码绑定成功,二维码过期需要重新执行 install 命令。
5.5 日志里 provider 显示为默认值
说明 settings.json 的runtime.defaultProvider没生效,可能 JSON 格式有误。用python -m json.tool ~/.openclaw/settings.json校验一下语法。
提示:排查时把
logLevel调到debug,能看到完整的请求体和响应体,定位问题最快。稳定后记得调回来。
6. 后续:把统一 Key 用在长期编码与 Agent 场景
链路跑通之后,你会发现 TaoToken 这个统一 Key 的价值不只是微信插件。openclaw 里可以挂多个 Agent,clawbot 只是其中一个入口。如果你打算长期在 openclaw 上做编码类 Agent,或者让 clawbot 承担更多自动化任务,可以考虑 Coding Plan,把模型调用额度集中管理,避免每个项目单独配 Key。
需要看更多接入细节,接入文档里有完整的参数说明和示例;想先在网页里验证模型效果,可以直接用模型对话试几句,确认模型行为符合预期再写进配置。控制台里能查看调用记录和额度消耗,方便你判断 clawbot 的实际用量。
配置这件事,跑通一次之后就是复制粘贴。真正要留意的是 provider 名称一致、base_url 带/v1、Key 走环境变量这三条。把这三条守住,微信里的 clawbot 基本不会再因为模型侧掉线。