龙虾接入微信的原理方法和常见问题
1 接入微信
微信现在已经支持个人机器人通过正规渠道接入了。
这次开放的不只是 OpenClaw 的接入能力,更准确地说,微信把一套机器人接入协议放出来了。有人拿它接 OpenClaw,也有人拿它接 Claude Code。只要按这套协议来,理论上别的机器人也能接进去,包括自己写的。
这和以前只能走企业微信、公众号后台,或者自己想办法绕路,已经不是一个量级。微信当然也加了不少限制,比如机器人不能加群,一个账号只能接一个机器人,机器人目前只能收文件、不能给用户发文件,至少我现在测到的版本是这样。
这也正常,毕竟这里碰到的是聊天、隐私和交易这些高权限场景,不可能一开始就完全放开。
但趋势已经很清楚了。后面机器人只会越来越多,平台迟早都得支持这件事。谁开放得早,谁就更容易先占住生态位。
1.1 原理
接口跑在 https://ilinkai.weixin.qq.com。微信官方提供了
@tencent-weixin/openclaw-weixin 插件,npm 包里就是完整的
TypeScript 源码。
原理不复杂,基本就是三步:
- 认证:先调
ilink/bot/get_bot_qrcode拿二维码,用户扫码后,再通过ilink/bot/get_qrcode_status长轮询拿认证结果,里面会带bot_token - 收消息:调
ilink/bot/getupdates做 HTTP 长轮询。有新消息就返回,没有就挂起等待。每条消息都会带context_token - 发消息:调
ilink/bot/sendmessage,带上bot_token和context_token,消息就能回到微信里
按这套逻辑写一个 service,本质上就是在自己这边实现一个微信机器人。想自己接,不一定非得依赖官方插件,参考文末的开源项目也能走通。(详见参考2)
1.2 具体方法
实际接入分两部分:
- 手机端:
我 -> 设置 -> 插件 -> 微信 ClawBot - 电脑端:给 OpenClaw 装
openclaw-weixin插件
插件地址:https://npmx.dev/package/@tencent-weixin/openclaw-weixin
1 | docker exec -it openclaw-openclaw-gateway-1 bash |
装完后会自动重启 Docker。扫码成功后,就可以直接在微信里和龙虾对话了。
如果提示 ClawHub
连不上,一般走代理就能解决。插件和配置都保存在宿主机的
$HOME/.openclaw 目录里,所以 Docker 重启后也还在。
1.3 使用注意事项
- 目前 iOS 和 Android
都已支持,先把微信升到最新版本:
我 -> 设置 -> 关于微信 -> 版本更新 - 再确认插件入口已经出现:
我 -> 设置 -> 插件 - 电脑端插件装好后,再扫码登录
1.4 现在的问题
- 我现在用的版本里,用户可以给机器人传文件,但机器人还不能把文件回传给用户,估计是出于安全考虑。
1.5 一个延伸想法
后面大概率会出现一层桥接服务,一边连微信、飞书、Telegram、Discord 这些 client,一边连 Claude Code、OpenClaw 这类 agent。它自己不一定负责智能,主要做的事是把入口和机器人接起来,变成一个稳定的 hub。
2 常见问题
2.1 流量税
一个很常见的问题是:为什么一天都没和小龙虾说话,账单还是在涨?
我当时开了两个龙虾服务,默认模型是 copilot/gpt-5.4,按
request 收费。粗算下来,大概一小时会产生 2 个
request,也就是:0.04 x 2 x 24 = 1.92 美元。这样一只虾一天差不多就是
13 块人民币。写程序的人对这个数字会比较敏感,因为 50 多个 gpt-5.4 的
request 已经够解决不少实际问题了。就算换成便宜一点的
copilot/gpt-5.4-mini,一天也要 4.5 元左右。
我后来判断,主要是心跳引起的。心跳的作用,是让 AI 定期执行
HEARTBEAT.md
里的任务,比如每日提醒、定时检查。如果暂时不需要这些能力,把心跳关掉会省不少钱。
做法是改 $HOME/.openclaw/openclaw.json 里的
agents 配置,同时把默认模型换成便宜一点的版本,例如:
1 | "agents": { |
我改完以后重启服务,额外费用就基本没了。
2.2 切换模型
安装 OpenClaw
时会指定一个默认模型,但因为价格和能力差别很大,实际用的时候经常要来回切换。最稳的方式,是直接在聊天界面里用内置命令
model:
/model github-copilot/git-5.4-mini:切换模型
这种方式成功率最高。直接说“请切换到 xx 模型”有时候也能切,但不一定稳定。
2.3 重新加载技能
如果在后台或者别的对话里装了 skill,当前对话往往不会立刻生效,这时需要重新加载。最简单的方法是直接开一个新会话:
/new:开启新对话
这样通常就能把新装的 skill 带进来。
3 参考
- 微信官方接入龙虾,我顺手给接上了 Claude Code。已开源:https://mp.weixin.qq.com/s/FrSNOFwok8cenLksrkFG8w?poc_token=HCL2wWmjlj3KTVteV2nYFpCim-elwRwFx6-teuWs
- claude-code-wechat-channel:https://github.com/Johnixr/claude-code-wechat-channel
