微信 ClawBot ↔ 钉钉企业AI助理(DEAP) 转发桥 — 在微信里免费畅聊企业智能体。Cloudflare Workers 版:零运维,无需本机常驻。
一个部署在 Cloudflare Workers 上的桥接服务:把微信里发给 ClawBot(微信 iLink Bot,扫码登录、免费)的消息,转发给钉钉企业AI助理(DEAP 智能体,通过 OpenAI 兼容的 Responses API 调用),再把智能体的回复发回微信。手机微信即是 AI 对话入口。
钉钉企业AI助理提供免费/企业配额的模型能力,但没有方便的手机聊天入口;微信 ClawBot 是免费的微信机器人通道。二者叠加:微信发消息 → 钉钉智能体回复,实现免费的无限 AI 畅聊。运行载体是 Cloudflare Workers 免费档——不租服务器、不用开自己的电脑,微信里 ~10 秒一轮询即可收到回复。
要求:Node.js ≥ 21.7、pnpm、一个 Cloudflare 账号。
pnpm install
pnpm typecheck # 类型检查
# 1. 本地开发
cp .dev.vars.example .dev.vars # 填入 DINGTALK_API_KEY / WECHAT_TOKEN 等
pnpm dev # wrangler dev,http://localhost:8787 起状态页
# 2. 生产部署
wrangler login # 首次登录 Cloudflare
wrangler deploy # 部署 Worker + Durable Object
wrangler secret put DINGTALK_API_KEY # 钉钉 API Key(机密)
pnpm login:wechat # 扫码登录,输出 WECHAT_TOKEN=<token>
pnpm login:wechat | wrangler secret put WECHAT_TOKEN
curl https://<worker>.workers.dev/kick # 立即唤醒轮询(或等 5 分钟看门狗 cron)在微信中向机器人发消息即可对话。内置命令:
| 命令 | 作用 |
|---|---|
/new、/clear |
重置当前会话(丢弃 thread,开启新对话) |
/neko <名字> |
切换智能体角色(自动重置会话);无参数列出可用角色 |
/status、状态 |
查看桥接状态(轮询健康、运行时长、当前角色、最近错误) |
微信 session 过期:
/status显示「微信 session 超时」时,重新执行pnpm login:wechat,用wrangler secret put WECHAT_TOKEN更新即可,无需改代码(DO 心跳不断,secret 刷新后自动恢复)。
- ✅ Cloudflare Workers 部署(wrangler 一键,免费档额度内运行)
- ✅ Durable Object 单实例 alarm 轮询(~10s 间隔,无重叠、无锁、无去重负担)
- ✅ 会话映射与轮询游标存 DO SQLite(重启/重部署不丢)
- ✅ 5 分钟 cron 看门狗(alarm 链意外停摆自动续订)
- ✅ 钉钉智能体同步调用(OpenAI 兼容 Responses API,Bearer 认证)
- ✅ thread_id 多轮会话管理(按微信用户隔离,失效自动重建重试)
- ✅ 内置命令(/new /clear /status /neko)
- ✅ 多角色人格切换(/neko,按环境变量
DINGTALK_ASSISTANT_<NAME>_ID自动注册) - ✅ 全链路连通性已实测:钉钉 API、微信轮询、多轮对话记忆
- TypeScript(ESM) + Cloudflare Workers(Durable Object + SQLite 存储 + Cron 触发),零运行时依赖(Web 标准 fetch / AbortSignal / crypto)
- 微信 iLink Bot HTTP API(
getupdates轮询、sendmessage回复) - 钉钉 DEAP
POST https://api-deap.dingtalk.com/v1/assistant/responses(同步模式,不支持附件/流式)