NattoCB/dsh-plugin-wechat-bridge ↗★ 0
dsh-plugin-wechat-bridge
DSH bundle plugin: bridge WeChat (ilink bot) messages into a DSH agent session, with runtime enable/disable hot-plug and a Settings UI tab.
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:NattoCB/dsh-plugin-wechat-bridge说明文档
阅读完整 README ↗
dsh-plugin-wechat-bridge
语言 / Language:中文 | English
DSH(DeepSeek Harness)捆绑插件:把微信(ilink bot)私聊消息桥接进 DSH agent 会话,并把回复以纯文本流式发回——支持运行时启停热插拔,无需重启 dsh web。
一个 DeepSeek Harness 插件: 装进
webprofile,扫码绑定一个微信机器人账号,就能在微信里和你的 DSH agent 对话。每个联系人每天一个会话、JSON 文件持久化状态、崩溃安全的轮询。
移植自 CodePilot 的微信桥接子系统(src/lib/bridge/adapters/weixin/*),
对 DSH 自包含(JSON 文件持久化替代 SQLite,无 OpenClaw 运行时依赖)。
亮点
- 热插拔——从 Settings UI 页签、
/wechat斜杠命令或settings.yaml实时启停,无需重启进程。 - 每人每天一个会话——本地零点轮换,首条消息时才惰性创建,标题为 ``。
- 结构上崩溃安全——跨进程轮询锁、按聊天串行、入站消息去重、损坏日志隔离与自愈。
- 自包含——账号、令牌、轮询偏移都持久化在单个原子 JSON 文件中,无需数据库。
- Settings UI 页签——在浏览器里扫码绑定账号并管理,无需改配置文件。
功能
- 按配置账号轮询微信
ilink botAPI(getupdates),支持多账号。 - 每人每天一个会话(本机时区)。 本地零点后的第一条入站消息会惰性创建当天会话, 标题为 ``;当天没有对话就不会产生会话文件。因此某天日志损坏 永远不会阻塞第二天的对话。
- 会话默认存放在
~/.dsh/wechat-bridge/WeChatSpace(而非进程 cwd)。 - 按聊天串行:同一联系人的消息严格逐条驱动,并发入站消息不会交错写进同一个会话日志。
- 跨进程轮询锁(
~/.dsh/wechat-bridge/poll.lock):同一时刻只有一个 DSH 进程轮询 微信账号;第二个进程看到存活锁会等待,避免 launchd keep-alive 实例与手动重启 竞争时双写同一个会话日志。 - 入站去重:每条微信
message_id(缺省时用服务端seq)在驱动 agent 前记录为 已处理,重投批次(偏移持久化前崩溃,或第二个进程)会被直接跳过。 - 损坏日志自愈:会话存储日志同时 resume 失败且 create 失败("already exists")时,
把产物隔离为
session.jsonl.zstd.corrupt-并重建当天会话,一个坏日志 不会让整天消息全部失败。 - 把 agent 回复以纯文本分片发回微信(4096 字符 × 最多 5 段)。