1. 微信/企业微信接入腾讯QClaw 到底在解决什么问题
腾讯QClaw(社区里也常被叫成“小龙虾”)本质是一个跑在本地电脑上的 AI 执行体,它能读文件、跑命令、操作浏览器,而微信/企业微信接入腾讯QClaw 要解决的核心问题只有一个:让你不用坐在电脑前,用手机上的 IM 就能给电脑上的 AI 下发任务。你在企业微信里发一句“帮我把昨天那份周报整理成表格”,QClaw 在本机执行完,把结果回给你。它不是一个云端 SaaS,而是“IM 当遥控器、本地当执行机”的组合。
适合谁?三类人最需要:一是经常在外面跑、但电脑上挂着长任务的开发者;二是想把 AI 能力接进企业微信工作流、给团队做内部助手的同学;三是已经在用 OpenClaw 系列、想补齐 IM 通道的玩家。微信侧和企业微信侧的接入路径不完全一样,微信更偏个人号插件式接入,企业微信则走官方「智能机器人 + API 模式」的正规通道,稳定性和可管理性都更好,所以这篇重点讲企业微信这条链路,同时把微信侧的差异点标出来。
先给结论:整条链路的关键就三个东西——Bot ID、Secret、连接方式(长连接)。企业微信负责生成凭据,QClaw 负责用凭据建立 WebSocket 长连接,连上之后消息双向流通。听起来简单,但实际踩坑基本都集中在“凭据填错”“连接方式不一致”“QClaw 没在跑”这三类。下面按可复制的顺序拆开讲,每一步都给到你能直接照做的动作。
需要说明的是,QClaw 本身是本地程序,它调用大模型能力时需要一个稳定的 API 入口。如果你希望把模型调用统一走一个兼容 OpenAI 协议的中转层,方便在 QClaw、Cline、Claude Code 等多个工具间复用同一套 Key,可以了解下 TaoToken:官网 https://taotoken.net/?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= ,API 地址 https://taotoken.net/api 。它的作用是给你一个统一的 Base URL 和 Key,QClaw 里配置模型时把这两项填进去即可,不改变企业微信这条接入链路本身。
2. 接入前的前置条件与 TaoToken 统一模型入口配置
在动企业微信之前,先把“地基”打好,否则后面联调时你分不清是 IM 通道的问题还是模型通道的问题。前置条件清单如下,逐条核对:
第一,电脑上已安装并能正常启动 QClaw,打开后左下角能看到设置入口。第二,企业微信客户端升级到较新版本,否则工作台里搜不到「智能机器人」。第三,你的企业微信账号有创建机器人的权限——管理员走管理后台,普通成员走客户端工作台,两条入口后面都会给。第四,电脑网络能正常出网,因为长连接要连企业微信服务器,模型调用还要连模型 API。
这里重点说模型入口。QClaw 干活时要调模型,如果你每个工具都单独配一套 Key,管理起来很乱。我试过用统一入口的方式,把模型调用收敛到一个兼容 OpenAI 协议的地址上,QClaw、Cline、Codex 这些工具共用同一个 Base URL 和 Key,换模型只改 Model ID 一处。以 TaoToken 为例,你需要准备三件套:
| 配置项 | 填写内容 | 说明 |
|---|---|---|
| Base URL | https://taotoken.net/api | 兼容 OpenAI 协议,末尾不要多加/v1之外的路径 |
| API Key | 在控制台创建的 Key | 形如sk-开头,妥善保存 |
| Model ID | 例如claude-sonnet-4-5等 | 以控制台模型列表为准,别凭记忆写 |
获取 Key 的路径是:进入控制台 → API Keys → 创建新 Key。控制台地址 https://taotoken.net/console ,创建 Key 页面 https://taotoken.net/api-keys 。创建后立刻复制保存,页面刷新后不再完整显示。
如果你用的是 Claude Code 这类工具,配置方式是在 settings 里指定环境变量;如果是 Cline 这类 VS Code 插件,则在插件设置里填 Base URL、Key、Model ID 三项。QClaw 的模型配置同理,找到模型/API 设置区,把上面三件套填进去。注意:企业微信接入用的是 Bot ID 和 Secret,模型调用用的是 API Key,这两套凭据不要混。很多人第一次配会把 Secret 填到模型 Key 的位置,结果机器人能连上但不回话。
配置模型入口时建议先单独验证一次,别等企业微信全配好了才发现模型不通。验证方式很简单,用 curl 打一次对话接口:
curl https://taotoken.net/api/v1/chat/completions \ -H "Authorization: Bearer sk-你的Key" \ -H "Content-Type: application/json" \ -d '{ "model": "claude-sonnet-4-5", "messages": [{"role": "user", "content": "只回复两个字:通了"}] }'返回里choices[0].message.content是“通了”,说明模型通道没问题。这一步过了,再去做企业微信侧,排障范围直接砍一半。模型对话也可以直接在网页端试:https://taotoken.net/models ,不用写代码就能确认 Key 和模型是否可用。
3. 企业微信创建智能机器人并获取 Bot ID 与 Secret 的可复制配置
这一步是整个接入的核心,凭据就是在这里生成的。先选入口,按你的账号角色二选一:
管理员路径:企业微信管理后台 →「安全与管理」→「管理工具」→「智能机器人」→「创建机器人」→ 选择「API 模式创建」。
普通成员路径:企业微信客户端 →「工作台」→ 搜索「智能机器人」→「创建机器人」→「手动创建」→「API 模式创建」。
如果工作台里搜不到「智能机器人」,八成是版本太旧,先升级客户端。没有企业微信账号的,去官网免费注册一个企业即可,个人也能建。
进入创建页面后,按顺序做这几件事。第一,填写机器人名称,建议写「QClaw 助手」这种一眼能认出来的。第二,点「可使用的成员」后面的「修改」,勾选需要用这个机器人的成员、部门或标签——这一步决定谁能跟它对话,别漏。第三,在 API 配置页,连接方式务必选「使用长连接」,这是和 QClaw 对接的前提,选错了后面连不上。第四,保存后页面会生成 Bot ID,点「获取 Secret」拿到密钥,两个都复制保存好。第五,API 模式不支持预览调试,直接保存配置就行,别在页面上找测试按钮。
把这两项凭据整理成一份配置清单,方便后面填进 QClaw:
{ "channel": "wecom", "connect_mode": "websocket_long_connection", "bot_id": "你的BotID", "secret": "你的Secret", "note": "Secret仅显示一次,泄露需在后台重置" }这份 JSON 不是给程序直接读的,是给你自己对照用的,避免复制时串行。实际填的时候,QClaw 里对应的是「远控通道 → 企业微信 → 配置」弹窗,里面选「WebSocket 长连接」,然后把 Bot ID 和 Secret 分别粘进去。
这里有个细节:Secret 复制时极易带上首尾空格,粘进去之前建议先粘到纯文本编辑器里看一眼。长连接注册失败十有八九是这个原因。另外,如果 Secret 已经泄露或失效,回企业微信后台重新获取一次,旧的自然作废。
微信侧和企业微信侧的差异要提一句:微信个人号那条链路更偏插件式接入(社区里常说的 ClawBot 插件),配置项和入口跟企业微信不一样,稳定性也受个人号策略影响;企业微信这条是官方 API 模式,凭据规范、可管理成员、能拉群,更适合长期用。所以如果你两边都想接,建议先把企业微信这条跑通,再回头折腾微信侧。
4. 在 QClaw 中绑定并完成消息收发联调验证
凭据拿到后,回到 QClaw 完成绑定。打开 QClaw,点左下角设置按钮,进入「远控通道」,选择「企业微信」,点「配置」。弹窗里连接方式选「WebSocket 长连接」,把 Bot ID 和 Secret 填进去,点「连接」。连接需要等一会儿,别急着判定失败,长连接建立有个握手过程。
连接成功后,去企业微信通讯录的「智能机器人」分组下找到你刚建的机器人,点「发消息」,发一句“你好”做连通测试。如果配置正确,QClaw 会收到消息并在企业微信里回复。这一步能回,说明 IM 通道和模型通道都通了。
联调时建议按这个顺序验证,出问题好定位:
第一步,只验证通道。发“你好”,看是否有任何回复。有回复说明链路通;完全没反应,先查 QClaw 是否在运行、连接方式是否两边都是长连接。
第二步,验证模型。发一个需要模型思考的问题,比如“把 1 到 10 的偶数列出来”。如果通道通但这类问题不回,说明模型配置有问题,回去检查 Base URL、Key、Model ID 三件套。
第三步,验证执行能力。发一个需要操作本机的任务,比如“在当前目录创建一个 test.txt 并写入 hello”。这一步能成,说明 QClaw 的执行权限正常。
第四步,拉群测试。建群时把「QClaw 助手」拉进去,在群里 @它 提问。群场景下注意 @ 的格式,不同客户端略有差异,@ 不到机器人它收不到消息。
联调时可以用一段脚本模拟消息发送来辅助排查,虽然企业微信侧消息由客户端发出,但你可以用日志确认 QClaw 是否收到:
# 查看 QClaw 运行日志(路径以实际安装为准) tail -f ~/.qclaw/logs/channel.log | grep -i "wecom\|websocket"日志里能看到长连接建立、消息接收、模型调用、回复发送几个阶段。哪一步断了,问题就在哪。实测下来,最常见的断点是长连接握手失败和模型 401,前者查凭据空格,后者查 Key 是否有效。
5. 常见报错排查:401、长连接注册失败与无响应
把真实会遇到的报错对照着排,比盲目试快得多。
报错一:模型调用返回 401 Unauthorized。这是模型通道的鉴权失败,跟企业微信无关。原因通常是 API Key 填错、Key 已删除、或者 Base URL 写错导致请求打到了错误的地址。排查动作:确认 Base URL 是https://taotoken.net/api,Key 是sk-开头且未过期,Model ID 在控制台模型列表里存在。改完重启 QClaw 再试。
报错二:长连接注册失败 / local proxy failed。这个报错指向企业微信侧的长连接没建起来。三个检查点:企业微信侧创建机器人时是否选了「使用长连接」;Bot ID 和 Secret 是否复制完整、有没有多余空格;Secret 是否已失效。重新复制一遍凭据,注意别把 Bot ID 和 Secret 填反。如果企业微信侧改过连接方式,QClaw 侧也要同步改成一致。
报错三:机器人完全无响应。分两种。一种是 QClaw 没在运行,或者运行了但远控通道没开——先确认电脑上 QClaw 进程活着,设置里企业微信通道显示已连接。另一种是消息发出去了但 QClaw 没收到,检查机器人「可使用的成员」是否包含你当前账号,没勾选的话你发消息它收不到。
报错四:返回内容里出现 reading choices 相关错误。这类通常是模型返回结构解析异常,多半是 Model ID 写错导致返回了非预期格式,或者 Base URL 末尾路径不对。核对 Model ID 拼写,确认请求路径是/v1/chat/completions。
报错五:OAuth / 授权类报错。如果你在配置过程中看到 OAuth 字样,通常是某个工具在走它自己的授权流程,而不是企业微信这条链路。企业微信 API 模式用的是 Bot ID + Secret,不走 OAuth。遇到这类报错先确认你操作的是不是正确的配置入口。
把上面这些整理成一张速查表:
| 现象 | 最可能原因 | 处理动作 |
|---|---|---|
| 401 | Key 错/过期/Base URL 错 | 核对三件套,重启 QClaw |
| 长连接注册失败 | 连接方式不一致/凭据带空格 | 两边都选长连接,重贴凭据 |
| 无响应 | QClaw 没跑/成员未授权 | 启动 QClaw,勾选可用成员 |
| reading choices | Model ID 或路径错 | 核对模型名与请求路径 |
| OAuth 报错 | 走错配置入口 | 确认用 Bot ID+Secret 而非 OAuth |
排障时如果确认是模型通道问题,接入文档里有各工具的配置示例可对照:https://taotoken.net/doc 。模型本身是否可用,可以直接在模型对话页发一条消息验证:https://taotoken.net/models 。
6. 长期跑 IM + AI 工作流的通道选择与 CTA
把最小链路跑通只是开始,真正要长期用,得考虑两件事:通道稳定性和模型成本可控性。企业微信这条官方 API 模式通道,凭据规范、成员可管理、支持拉群,适合团队内部长期用;微信个人号那条更灵活但受策略影响大,适合个人尝鲜。如果你要做的是“手机遥控电脑干活”这种高频场景,建议以企业微信为主通道。
模型侧,如果你同时用 QClaw、Cline、Claude Code 多个工具,统一走一个兼容 OpenAI 协议的入口能省很多事——换模型只改 Model ID,Key 只维护一份。需要长期编码或跑 Agent 任务的,可以看下 Coding Plan:https://taotoken.net/coding-plan ,它面向的就是这种持续调用场景。只想先验证模型通不通的,直接用模型对话页最快:https://taotoken.net/models 。要创建和管理 Key 的,去控制台:https://taotoken.net/console ,Key 管理页:https://taotoken.net/api-keys 。
最后给一个实操建议:把企业微信机器人的 Bot ID 和 Secret 存进你的密码管理器,别只放在聊天记录里;模型 Key 也一样。这套链路一旦跑通,你等于给自己配了一个“随身 AI 执行入口”,后面加新工具时,只要复用同一套模型入口,接入成本会低很多。