前言¶
用 dsh(DeepSeek Harness)跑智能体时,操作入口通常在 Web 界面里。人离开电脑后,想给 agent 补一句指令、查一下任务结果,就得专门回去开页面。如果这些对话和通知能直接走微信,事情会顺很多。
super-wechat-bridge 解决的就是这个问题:它通过微信官方的 iLink ClawBot 协议,把微信消息接进 dsh,让微信成为 dsh 的远程入口。下面介绍它的定位、核心功能、安装与使用方式。
这是什么¶
super-wechat-bridge 是一个微信 iLink ClawBot 远程桥接插件,作者是 Qshuai0213,许可证为 MIT,当前版本 1.0.0。它不走第三方机器人协议,而是官方 iLink 协议直连:长轮询收消息,用 msg 包裹 + text_item 发送(官方格式)。peerDependencies 声明 @deepseek-ai/dsh-agent ^0.1.0-rc.6、@deepseek-ai/dsh-tools ^0.1.0-rc.6 等,协议与 dsh API 均经实测。
一个值得注意的实测细节:发送时必须带 base_info.channel_version + from_user_id + client_id,缺失时服务器会返回 message_id 但不投递。插件已经处理了这一点。
核心功能¶
会话与回复¶
1、每个微信用户独立 dsh 会话,通过 agents.create({ sessionId }) 创建,用 agent.followup 续轮。
2、回复自动转发:wechat 会话每轮 agent 的最终文字回复自动发回微信。实现上监听 session/event,按 user/message 真实来源过滤上下文快照。
3、wechat_reply 工具用于主动推送(比如任务完成通知)。同一轮内如果已经用工具发送过,自动转发会跳过,避免重复。
4、会话级提示词:wechat 会话的 agent 会收到「正在通过微信对话」的上下文,按会话 id 条件注入,不影响其他会话。
Web 设置界面¶
微信功能没有独立入口,全部集成在 dsh Web 的「设置 → 微信桥接」页面,包含扫码登录、模型/预设/思考强度/权限配置、会话列表(打开/复制/删除)、凭据状态。
24h 自动续期¶
iLink 会话有效期约 24 小时(服务端限制,无法延长)。插件内置自动续期:到期前约 2 小时,把新二维码链接推送到微信(发给最近活跃的会话),扫码即可无缝续期,全程不断线;最后 30 分钟未续期会再次提醒。
其他¶
- 插件自带
dsh.bundle.patch(cordis.patch.yml),安装后自动挂载,无需手动编辑 profile 的cordis.patch.yml。 - 错误落盘
stateDir/errors.log,排查问题时可直接查看。
安装与启用¶
从 GitHub 安装发布版:
dsh plugin --profile web add "github:Qshuai0213/super-wechat-bridge"
本地开发安装:
dsh plugin --profile web add "file:D:/ai工作区/super-wechat-bridge"
安装后 patch 自动挂载,配置走 schema 默认值:stateDir 默认为 $DSH_HOME/channels/wechat(无 DSH_HOME 时 ~/.dsh/channels/wechat)、dmPolicy: pairing。
需要覆盖配置时,在 profile patch 里按 id 追加 config,例如改成 allowlist 模式并指定允许的微信用户:
- insert:
- id: wechat-bridge
config:
dmPolicy: allowlist
allowFrom: ['o9cq80wwZLaIrJEBTW3TCRCVVyt8@im.wechat']
改完后重启 dsh web。
登录¶
三种方式任选:
1、Web 界面扫码:打开「设置 → 微信桥接」,点「获取登录二维码」,用手机微信扫码并确认,凭据自动写入并开始收消息。
2、微信内点链接续期(推荐):到期前插件会自动推送「登录凭据将于约 X 小时后过期」的消息,点开其中的链接扫码确认即可。
3、命令行:
node node_modules/super-wechat-bridge/login.mjs "<你的 stateDir>"
stateDir 默认为 $DSH_HOME/channels/wechat(无 DSH_HOME 时 ~/.dsh/channels/wechat)。手机微信打开输出的链接扫码授权,凭据写入 credentials.json。
典型用法¶
使用流程很直接:微信里给 ClawBot 发第一条消息 → dsh 出现 wechat-* 会话 → agent 回复自动发回微信。
在「设置 → 微信桥接」的通道设置区块里,可以调整并持久化到 settings.yaml 的配置项包括:
| 设置项 | 说明 |
|---|---|
| 模型提供方 / 模型 | 微信会话使用的模型;留空跟随全局默认 |
| 思考强度 | off / low / medium / high / max,留空跟随默认 |
| 权限模式 | pairing(放行所有)/ allowlist(仅允许列表)/ disabled(关闭通道) |
| 允许列表 | allowlist 模式下生效,每行一个微信用户 ID |
生效时机有区别:权限模式与允许列表即时生效;模型/思考强度只对之后新建的微信会话生效,已有会话不变。页面上同时显示凭据状态(登录时间、剩余有效期、活跃会话数),剩余不足 2 小时插件会自动向微信推送续期二维码。
适用场景与注意¶
适合的人群:已经在跑 dsh,希望在手机上通过微信随时与 agent 对话、下发指令、接收主动通知(比如任务完成提醒)的开发者。
使用前需要知道这些限制:
- 重启后会话不续接:桥接按
wechat-<userId>-<时间戳>新建会话,dsh web重启后同一微信用户会开新会话,旧会话历史保留在侧边栏,但桥接不再关联。 - 图片/语音等非文本消息以占位文本
[非文本消息]呈现,当前通道不接收媒体内容。 - 修改插件代码后需要重启
dsh web才生效(HMR 不重载 node_modules 里的模块)。 - iLink 会话约 24 小时有效期是服务端限制,插件只能续期,无法延长。
另外提醒一点:插件以当前 dsh 进程的权限运行,安装前建议先查看源码确认行为符合预期。该项目使用 MIT 许可证。
结尾¶
super-wechat-bridge 把微信官方 iLink 协议和 dsh 的会话体系接在一起,配合 Web 设置界面和 24h 自动续期,让微信成为一个低维护成本的 dsh 远程入口。如果你平时用微信多、离开电脑的时间长,值得装上试一下。
- 插件目录页:https://www.skillhub.cn/plugins/Qshuai0213/super-wechat-bridge
- GitHub 仓库:https://github.com/Qshuai0213/super-wechat-bridge
顺带一提,skillhub.cn 是社区的插件目录站点,与 DeepSeek / 幻方没有官方从属关系;DSH 本身的理念是「一切皆插件」,这类通道桥接正是插件生态里常见的一类需求。