
1. 微信里跑 OpenClaw 到底解决了什么问题OpenClaw 这类本地 AI 助手能力上限取决于你给它接的模型和工具链但真正决定「你会不会天天用」的往往是入口在哪。之前我自己的 OpenClaw 一直挂在终端里写代码时顺手可一旦离开电脑想让它帮我整理一段会议记录、查个资料、跑个定时任务就得掏出手机再开一个 App体验是割裂的。微信官方推出的 ClawBot 插件把这件事的路径缩短了它不是一个第三方套壳服务而是微信官方团队做的插件安装后你在微信聊天窗口里就能直接和本地的 OpenClaw 对话。消息从微信侧发出经过官方 OAuth 授权最终落到你自己机器上的 Gateway 处理模型请求的 endpoint 由你自己指定。这意味着两件事一是数据链路可控二是模型供应商可以自由替换。这篇要解决的核心问题就是把 OpenClaw 通过 ClawBot 插件接进微信同时把模型请求统一指向 TaoToken 的 API。为什么要在这一步做统一 Key因为 OpenClaw 默认会读环境变量里的模型配置如果你同时跑着 Claude Code、Cline、Codex 好几个工具每个都配一遍 Key改起来容易漏。TaoToken 提供的是一个兼容多模型的统一入口Base URL 固定Key 一处配置OpenClaw 和别的工具都能复用。适合谁看已经在本地跑通 OpenClaw、想让它在微信里随时可用的人手里有多个 AI 工具、想收敛 Key 管理的人以及想搞清楚 ClawBot 插件安装链路、不想被第三方方案坑的人。下面按三步走装插件、配模型、验证收发。2. TaoToken 前置准备与 OpenClaw 环境确认在动 ClawBot 之前先把两件事确认掉否则后面报错会分不清是插件问题还是模型配置问题。第一件事是 OpenClaw 本身要能跑。你机器上得有 Node.js 环境npx命令可用。验证方式很简单终端里执行node -v npx -v两个命令都能输出版本号就行。OpenClaw 的安装方式按你原来的习惯来本文不重复装 OpenClaw 本体只处理「接进微信」和「换模型 endpoint」这两段。第二件事是拿到 TaoToken 的 API Key。访问官网 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 注册后在控制台里创建 Key。控制台地址是 https://taotoken.net/console?utm_sourcetaotoken_aicg_blog_endutm_contentconsoleutm_campaignrewrite Key 列表里点新建复制出来的一串就是后面要填的凭证。这里有个细节要注意TaoToken 的 API 根地址是https://taotoken.net/api注意它不带UTM 参数配置里就写这个干净的地址。很多人复制官网链接当 Base URL结果请求打到带参数的路径上返回 404排查半天。记住这个区分官网链接用于浏览API 地址用于配置。模型 ID 怎么选TaoToken 兼容主流模型命名你在控制台的模型列表里能看到当前可用的 ID。OpenClaw 里填的 Model ID 要和列表里一致大小写敏感。我一般先用一个便宜的模型跑通链路确认微信侧能收发消息了再换成日常主力模型。环境确认清单检查项命令/位置期望结果Node 版本node -v输出 v18 以上npx 可用npx -v输出版本号OpenClaw 可启动按你原有方式启动终端无报错TaoToken Key控制台 API Keys 页已复制保存API 根地址配置用https://taotoken.net/api如果你还没建 Key直接去 https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_contentapi-keysutm_campaignrewrite 创建。这一步别拖后面配置片段里要直接粘贴。3. 三步接入npx 安装 ClawBot 与 settings 配置片段这一步是全文的核心操作区分三小步装插件、配模型、写 settings。3.1 微信侧获取安装命令先把微信更新到最新版本。打开微信进入「我」-「设置」-「插件」在插件列表里找到微信 ClawBot 插件点进详情页页面上有一个「复制」按钮点一下会把安装命令复制到剪贴板。这个命令长这样npx -y tencent-weixin/openclaw-weixin-clilatest install注意这是微信官方插件给出的命令不要自己拼。复制完回到你跑 OpenClaw 的那台机器在终端里粘贴执行。执行过程中会拉取 CLI 包网络正常的话十几秒到一分钟。安装成功终端会打印出一个二维码。3.2 扫码连接用手机微信扫终端里的二维码点「连接」。这一步走的是微信官方 OAuth 授权授权粒度你能在手机上看到确认 OpenClaw 能访问哪些范围。连接成功后微信侧会出现一个 ClawBot 的对话入口。到这里插件链路是通的但此时 OpenClaw 用的还是它默认的模型配置。如果你之前没配过或者配的是别的供应商下一步就要把 endpoint 改到 TaoToken。3.3 把模型请求指向 TaoTokenOpenClaw 的模型配置通常放在项目根目录的 settings 文件里具体文件名按你的版本可能是settings.json或settings.toml。下面给一份 JSON 片段路径和字段名按你本地实际文件对齐{ model: { provider: openai-compatible, baseUrl: https://taotoken.net/api, apiKey: sk-你的TaoTokenKey, modelId: 你的模型ID, timeout: 60000 } }如果你用的是 TOML 风格配置等价写法[model] provider openai-compatible base_url https://taotoken.net/api api_key sk-你的TaoTokenKey model_id 你的模型ID timeout 60000三个关键字段必须齐全这就是所谓的「三件套」Base URL、Key、Model ID。少任何一个请求都会失败。Base URL 写https://taotoken.net/api不要带尾部斜杠也不要带 UTM 参数。Key 就是控制台复制的那串。Model ID 从控制台模型列表里选。改完保存重启 OpenClaw 服务让配置生效。如果你同时用 Claude Code 或 Cline它们的配置里也填同一组 Base URL 和 Key这样所有工具的模型请求都走 TaoToken 统一入口换模型只改一处。注意settings 文件里如果有旧的 provider 配置先注释掉或删掉避免 OpenClaw 读到两个 provider 冲突。我踩过一次旧配置没清结果请求还是打到老地址排查了二十分钟。4. 验证请求插件加载、微信收发、API 返回三步确认配置写完不代表通了必须按顺序验证三层任何一层断了都能快速定位。第一层插件加载成功。回到终端看 OpenClaw 启动日志里有没有 ClawBot 插件注册的记录。通常会有类似plugin loaded: clawbot或weixin-cli connected的输出。如果没看到说明插件没被 OpenClaw 识别检查 npx 安装命令是否执行成功、二维码是否扫过。第二层微信侧收发消息。在微信里打开 ClawBot 对话发一句「你好测试一下」。观察两件事微信侧有没有显示「已发送」终端日志有没有收到这条消息。如果微信显示发送了但终端没反应多半是 OAuth 授权断了重新扫一次二维码。如果终端收到了但没回复问题在模型请求这一层进第三层。第三层API 调用返回正常。这一步直接绕过微信用 curl 打一次 TaoToken 的接口确认 Key 和 Base URL 没问题curl -X POST https://taotoken.net/api/v1/chat/completions \ -H Authorization: Bearer sk-你的TaoTokenKey \ -H Content-Type: application/json \ -d { model: 你的模型ID, messages: [{role: user, content: ping}] }返回里能看到choices数组和内容说明 Key、地址、模型 ID 三件套都对。如果这一步就报错那微信侧肯定也不通先修这里。三层都过之后你在微信里发消息OpenClaw 会调用 TaoToken 的接口拿模型回复再通过 ClawBot 插件回传到微信。整个链路是微信 - ClawBot 插件 - 本地 OpenClaw Gateway - TaoToken API - 模型 - 原路返回。想单独验证模型对话效果可以打开模型对话页 https://taotoken.net/chat?utm_sourcetaotoken_aicg_blog_endutm_contentchatutm_campaignrewrite 在网页里直接和同一个模型聊两句对比微信里的回复是否一致。如果网页正常、微信不正常问题就在插件链路不在模型。5. 常见报错排查401、local proxy failed、reading choices这一段按真实会撞到的报错来每个都给定位思路。401 Unauthorized。最常见Key 错了或者没带上。检查三处settings 里的 apiKey 是不是完整复制有没有漏字符、有没有多余空格curl 测试时 Authorization 头格式是不是Bearer sk-xxxKey 是不是在控制台被删了或过期。如果 Key 没问题看 Base URL 是不是写成了带 UTM 的官网链接那会导致请求打到错误路径有时也表现为鉴权失败。local proxy failed / connection refused。这个报错通常出现在 OpenClaw 启动阶段意思是本地 Gateway 没起来或者端口被占。先确认 OpenClaw 进程在跑再看它监听的端口有没有被别的程序占用。如果你之前配过系统代理检查环境变量HTTP_PROXY、HTTPS_PROXY有没有指向一个已经关掉的地址这会让 OpenClaw 的出站请求直接失败。清掉这些变量再重启。reading choices of undefined。这个报错说明请求发出去了但返回结构里没有choices字段。原因通常是模型 ID 写错了TaoToken 返回了一个错误对象而不是正常的补全结果。去控制台核对模型 ID 的拼写和大小写确保和列表里完全一致。另一种可能是请求体格式不对比如 messages 字段缺失检查 settings 里有没有额外的自定义参数覆盖了默认请求体。OAuth 授权失效。微信侧发消息没反应终端也没日志重新扫二维码授权。ClawBot 的授权有有效期长时间不用可能需要重连。插件加载了但微信看不到对话入口。检查微信版本插件列表里 ClawBot 是否处于启用状态。有时候插件装了但没在微信里点「连接」入口不会出现。排查顺序建议固定下来先 curl 测 API再测 OpenClaw 本地启动最后测微信收发。从底层往上排比一上来就怀疑微信插件高效得多。接入相关的完整文档在 https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_contentdocutm_campaignrewrite 配置字段有疑问可以直接对照。6. 把 Key 收敛到一处长期跑 Agent 更省心链路跑通之后真正影响日常体验的不是能不能连而是配置会不会乱。我自己的做法是所有走模型请求的工具Base URL 统一填https://taotoken.net/apiKey 用同一个Model ID 按工具场景分别选。这样换模型、换额度、查用量都只在一个控制台里操作。如果你打算把 OpenClaw 当长期在线的 Agent 用比如挂定时任务、做消息自动回复那模型调用的稳定性和额度管理就比单次对话重要。Coding Plan 这类长期编码和 Agent 场景的方案可以在 https://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_contentcoding-planutm_campaignrewrite 看具体配置方式适合需要持续跑量的情况。Claude Code 用户如果也想接同一套 Key配置入口在 https://taotoken.net/claude-code-anthropic?utm_sourcetaotoken_aicg_blog_endutm_contentclaudecodeanthropicutm_campaignrewrite Base URL 和 Key 填法跟本文一致Model ID 按 Claude 系列选。最后留一个实操建议把 settings 里的 Key 用环境变量引用而不是硬编码在文件里。比如apiKey: ${TAOTOKEN_API_KEY}然后在启动脚本里 export。这样配置文件可以进版本库Key 不会泄露。我试过把 Key 直接写进 settings 提交到 Git后来换 Key 时满仓库找很麻烦。环境变量引用一次配好后面省事。