dataagent-claw
v1.0.0
Published
A minimal Weixin bridge for DataAgent, runnable via npx.
Maintainers
Readme
dataagent-claw
基于 @tencent-weixin/openclaw-weixin 源码里的微信协议,做了一个最小桥接器:
- 轮询微信
ilink/bot/getupdates - 每次启动都会清空
WEIXIN_TOKEN,并重新弹出微信扫码二维码 - 读取用户文本消息
- 调用 DataAgent
POST /api/agent:chatSSE 接口 - 聚合 SSE 返回内容
- 用微信
ilink/bot/sendmessage回消息
配置
复制 .env.example 为 .env,填入:
DATAAGENT_BASE_URLDATAAGENT_TOKENDATAAGENT_SESSION_IDDATAAGENT_SPACEDATAAGENT_AGENT
WEIXIN_TOKEN 只作为运行期写回的凭据缓存。程序每次启动都会先清空它,然后在终端打印二维码,扫码成功后再写回 .env。
如果你的 DataAgent 接口依赖后台会话上下文,需要把浏览器里实际使用的 sessionId 填到 DATAAGENT_SESSION_ID。当前实现会按你给的完整 curl 一样发送:
sessionIdattachments: []x-authenticatorx-hostnamex-localex-rolex-spacesx-spaces-viewx-timezonex-with-acl-metaOriginReferer
日志默认写入 .data/logs/dataagent-claw.log,也可以通过 LOG_FILE 覆盖。
运行
首次使用可以先初始化当前目录配置:
npx dataagent-claw init初始化后编辑当前目录下的 .env,再启动:
npx dataagent-claw每次启动流程:
- 终端打印二维码
- 微信扫码并确认绑定
- 程序自动写入
WEIXIN_TOKEN - 进入长轮询,开始收发消息
桥接器会把微信长轮询游标保存到 .data/weixin-sync-buf.json。
agent:chat 的请求和响应日志会持久化到 .data/logs/dataagent-claw.log。
发布
发布到 npm 后,其他用户无需源码即可在任意目录直接运行:
npx dataagent-claw init
npx dataagent-claw发布命令:
npm publish如果包名已被占用,先把 package.json 里的 name 改成你自己的 npm 包名或作用域包名。
当前范围
- 支持微信文本消息输入
- 用户发送
/clear时清空该微信用户的历史对话上下文,并返回确认消息 - 固定使用微信网关
https://ilinkai.weixin.qq.com - 将 DataAgent SSE 输出聚合为文本后回复微信
- 自动按微信文本长度限制分片发送
- 使用
pino记录运行日志,并持久化agent:chat调用详情 - DataAgent 请求会尽量贴近后台管理端的 curl 头和请求体
