dsh-wechat-bridge

DSH PLUGIN通知与集成

仓库 lanbaolu/dsh-wechat-bridge · npm @lanbaolu/dsh-wechat-bridge

通知与集成 L5 · 运行验证通过 安全审查:低风险 可信度:金 可安装插件
安装这个插件

DSH 微信桥接插件,扫码绑定个人微信后即可在微信中与 DSH 本机 Agent 对话,支持多用户、审批、文件互传与流式回复。

验证等级 L5 L5 · 运行验证通过
GitHub 星标 5 复刻 2 · 未关闭 issue 0
最近更新 2026-09-29 创建于 2026-08-18
README 12.2 KB 正文体量,越大说明说明书写得越细

安装

可安装插件
在 DSH 里执行,装完用 dsh plugin list 确认已挂上;标了 L4 / L5 的命令已在沙盒里真实跑通
dsh plugin --profile web add @lanbaolu/[email protected]
兼容 DSH 版本0.2.0-rc.2 等 7 个版本版本不匹配时安装会报错
Node.js 要求>=18来自仓库 package.json 的 engines 字段
前置依赖@deepseek-ai/cordis@^4.0.1、@deepseek-ai/dsh-agent@^0.1.0-rc.6 等 11 个需要同时安装的同级依赖
npm 包名@lanbaolu/dsh-wechat-bridge可用 npm view 查看包信息

能做什么

5 项功能
字段来自项目仓库与公开索引,中文说明由本站标注

dsh-wechat-bridge:DeepSeek Harness 的微信桥接插件

  • 微信扫码绑定
  • 多用户独立会话
  • 微信内审批
  • 文件双向传输
  • 流式回复

适用场景

文件读写通知联网搜索

上游标签

agent-presetchatbotcordis-plugindeepseek-harnessdshdsh-pluginilinkim-bridgepluginremotewechatwechat-bridge

验证等级与安全审查

L5 · 运行验证通过
自动化流程结论,不是人工审核
验证等级L5 · 运行验证通过在 dsh 沙盒中完成安装与运行冒烟——装得上、跑得起来
安全审查低风险静态分析结论,未标注不代表已通过审查
仓库健康度活跃按仓库活跃度与最近更新时间给出
可信度金综合仓库活跃度与验证结果

上面的结论来自上游最近一次自动化验证(2026-10-08): 同一套检查会在插件发新版后重跑,页面显示的是最新一次的逐项结果。

逐项检查结果

L1 · 已找到 ✓ 通过
  • L1.0_DEFAULTED_FROM_L3 由 L3 推定 默认通过——L3 安装规范已通过(全库 L3 扫描策略)
L2 · 结构化 ✓ 通过
  • L2.0_DEFAULTED_FROM_L3 由 L3 推定 默认通过——L3 安装规范已通过(全库 L3 扫描策略)
L3 · 安装规范 ✓ 通过
  • L3.1_INSTALL_COMMAND_PARSED 安装命令已解析 方式:安装规范解析
  • L3.2_DSH_VERSION_DECLARED DSH 版本已声明 方式:DSH 版本声明
L4 · 安装已测 ✓ 通过
  • L4.1_INSTALL_EXECUTED_CONFINED 受限沙盒内执行安装 方式:沙盒安装执行
  • L4.2_INSTALL_SUCCESS 沙盒安装成功 方式:沙盒安装执行
  • L4.3_ARTIFACT_CONFIRMED 安装产物已确认 方式:沙盒安装执行
  • L4.4_RESOLVED_ARTIFACT 安装版本已解析 方式:沙盒安装执行
L5 · 运行已测 ✓ 通过
  • L5.1_INSTALL_PASSED_SANDBOXED 沙盒安装通过 方式:沙盒安装执行
  • L5.2_WEB_BOOT_READY Web 启动就绪 方式:Web 启动
  • L5.3_HTTP_SERVED HTTP 服务响应 方式:HTTP 请求
  • L5.4_PLUGIN_INVENTORY_ACTIVE 插件清单中已激活 方式:插件清单查询

风险详情

  • 审查结论 通过
  • 结论说明 vet 静态分析未发现可疑行为,判定为干净(clean)。
  • 风险计数 严重 0 / 高 0 / 中 0
  • 风险详情 未发现严重或警告级问题。

仓库档案

通知与集成
字段来自项目仓库与公开索引,中文说明由本站标注
作者 / 维护方lanbaolu仓库 dsh-wechat-bridge · 默认分支 main
分类通知与集成notify
收录类型可安装插件声明了 dsh.bundle、可用 dsh plugin add 安装的条目
开发语言TypeScript仓库主语言
许可证MIT商用或二次分发前请确认条款原文
星标 / 复刻 / issue5 / 2 / 0收录时的数值,非实时
创建 / 更新2026-08-18 · 2026-09-29最后推送 2026-09-29
本站收录2026-08-20首次进入本站目录的时间

README 全文

12.2 KB
作者原文,中文版优先;只做安全转义,不改内容

@lanbaolu/dsh-wechat-bridge

基于 Wechat-ggGitHub/wechat-claude-code 开发的 DeepSeek Harness (DSH) 微信桥接插件。

> ⚠️ 免责声明:本项目仅用于个人学习与自动化。使用非官方微信协议存在账号风险,请自行评估并承担后果。

三端通用:Windows / macOS / Linux 均使用纯 Node.js 进程管理,不依赖 launchd / systemd / Windows Service;同时提供 DSH 模型工具(CLI/Headless 可用)和 Web 管理面板(Web/桌面可用)。

功能

  • 微信扫码绑定个人微信后,在微信里直接与 DSH 本机 Agent 对话。
  • 复用 wechat-claude-code 的 iLink Bot 微信协议层:文字、图片、语音转文字、文件收发。
  • 守护进程由 DSH 插件管理:启动 / 停止 / 重启 / 状态 / 日志,全部走模型工具或 Web 面板。
  • 每个微信账号对应一个 DSH 会话,DSH Host 重启后会自动 resume 原持久化会话,对话上下文不断档;/clear、/new、/stop、/cwd、/model、/prompt 等斜杠命令可用。
  • 回复回传:DSH Agent 的回复经本地 SSE 推送到微信(批量发送,不刷屏)。会话格式 v3+ 起宿主不再下发 assistant/chunk 增量,现为整轮结束时回传本轮最后一条 assistant 消息正文——有工具调用的多步轮次只回传最后一步文本,逐段流式待恢复(见 docs/future-plan.md)。
  • 超时安抚:DSH 超过 5 分钟无输出时自动发一条“还在处理”的消息。
  • 主动通知:agent 可通过 wechat_notify 工具在任务完成 / 失败 / 需要确认时主动推送微信,内置节流(每小时 ≤6 条、每日 ≤50 条,超限排队延迟发送),规避个人号风控。
  • 微信内审批:agent 请求权限时推送审批消息到微信,回复 /yes 批准、/no 拒绝;超时自动拒绝(fail-closed),仅绑定账号本人可裁决,不影响桌面 GUI 会话。
  • 防卡死:微信会话自动注入通道约束提示词,禁用浏览器端交互式选项工具(手机看不到会永久阻塞),改用纯文本编号选项。
  • 文件双向:微信发图片/文件给 DSH;DSH 回复中提到的本地文件会自动推回微信。
  • 消息队列:处理中收到的普通消息会排队,等当前任务结束后继续处理(多用户下按用户独立排队,A 的长任务不阻塞 B)。
  • 多用户支持:信任集 + per-user 会话。可让多个微信用户与同一 bot 对话,每人独立会话/上下文/队列/审批归属,互不可见;信任集可控、可吊销(详见下方「安全模型」)。

媒体能力矩阵(2026-08-21 代码核实 + 真机抽验;2026-08-29 视频收发补齐)

方向 文本 图片 语音 文件 视频
微信 → DSH ✅ ✅ CDN 下载+解密落盘 ✅ iLink 端转写为文本 ✅ 下载落盘交 agent ✅ CDN 下载落盘交 agent(存 .mp4)
DSH → 微信 ✅ 攒批聚合发送 ✅ 按扩展名路由直发 — ✅ 回复提及自动推送 ✅ 按扩展名路由直发(mp4/mov/webm/mkv/avi)

> 语音出站(DSH → 微信)仍未支持:协议无公开实现参考,需真机实测后补齐。视频收发为 2026-08-29 按 iLink/ClawBot 协议源码补齐,真机收发已抽验通过(2026-08-30)。

方向对照与后续可行性方案见 docs/feasibility-plan.md。

架构

微信 App ←→ iLink Bot API ←→ bridge daemon (Node.js)
│  HTTP + SSE (127.0.0.1, token 鉴权)
▼
DSH Host Plugin
│  ctx.agents.create/resume + followup
▼
DSH Agent (本机 LLM + 工具)
  • src/bridge/:从 wechat-claude-code 移植的微信协议层 + 适配 DSH 的守护进程。
  • src/index.ts:DSH Host 插件,负责内部 API、Agent 生命周期、守护进程管理和模型工具。
  • src/client/index.ts:Web 管理面板(settings.section 槽位)。

安装

方式一:npm 一键安装(推荐)

npm install @lanbaolu/dsh-wechat-bridge
dsh plugin --profile web add @lanbaolu/dsh-wechat-bridge
dsh web

方式二:本地路径安装(开发/个人使用)

在 DSH profile 中安装本地包:

git clone https://github.com/lanbaolu/dsh-wechat-bridge.git
dsh plugin --profile web add /path/to/dsh-wechat-bridge
dsh web

或者使用超级注入器(开发模式):

dev_inject_plugin /path/to/dsh-wechat-bridge

方式三:从源码运行

npm install
npm run build        # host → lib/
npm run build:client # client → lib/client.js
npm run typecheck

> 注意:build:client 使用 tsdown,需要 Node.js 22.18+ 或 24.11+(CI 使用 22/24 验证)。运行时要求仍为 Node 18+。

使用

1. 扫码绑定

推荐在 DSH Web 设置页的「📱 微信桥接」面板中完成:

  1. 打开 Settings / 设置 → 📱 微信桥接。
  2. 填写 DSH 工作目录。
  3. 点击 扫码绑定,用微信扫描页面上的二维码。
  4. 绑定成功后直接点击 启动。

也可以在 DSH 所在机器终端执行:

node lib/bridge/main.js setup

按提示用微信扫码,完成后选择 DSH 工作目录。

2. 启动桥接

在 DSH 对话中让模型执行:

  • wechat_bridge_start
  • wechat_bridge_status
  • wechat_bridge_logs
  • wechat_bridge_stop

或者在 Web 设置页(settings.section 槽位)点击“启动 / 停止 / 重启”。

3. 微信端命令

命令 说明
/help 显示帮助
/clear 清除当前 DSH 会话
/new 开启全新会话(等价 /clear)
/stop 停止当前任务并清空排队消息
/status 查看会话状态
/cwd [路径] 查看 / 切换工作目录
/model [名称] 查看 / 切换模型
/prompt [内容] 查看 / 设置系统提示词
/history [数量] 查看最近对话
/send <路径> 发送本地文件到微信
/trust [备注] 添加信任用户(manual 模式;仅 owner)
/distrust 吊销信任用户(仅 owner)
/trustlist 查看信任集(仅 owner)
/trustmode [模式] 查看/切换信任模式(owner-only / bootstrap / manual)

超时安抚配置

DSH 长时间没有产出消息时,桥接会主动发一条"还在处理"的安抚消息(默认 5 分钟静默后、每 5 分钟一条,避免用户以为卡死)。嫌频繁或想自定义,可在 Web 面板「⏳ 超时安抚」区块调整,或直接编辑 config.json 的 calm 节:

{
"calm": {
"enabled": true,        // 是否启用安抚,默认 true
"silenceMs": 600000,    // 首次静默多久后安抚(毫秒),默认 300000(5 分钟)
"intervalMs": 900000,   // 两次安抚最小间隔(毫秒),默认同 silenceMs
"maxCount": 3,          // 每轮任务最多安抚次数,0/省略 = 不限制
"messages": [           // 自定义文案(随机取一条),留空用内置默认
"还在处理中,这个问题有点复杂,请再稍等一下",
"马上就好,正在收尾"
]
}
}

保存后即时生效(最长延迟数秒),无需重启守护进程。改动只在守护进程运行时展示于面板;若面板无「超时安抚」区块,请更新插件后重启 DSH。

防休眠(preventSleep)

默认关闭。开启后,守护进程运行期间会抑制系统休眠——锁屏/合盖不挂起,微信消息持续响应(适合挂机跑长任务)。

  • 面板「💤 防休眠」开关,或直接编辑 config.json:
{
"preventSleep": true
}
  • 平台实现:macOS caffeinate / Linux systemd-inhibit / Windows SetThreadExecutionState(尽力而为)。
  • 切换后需重启守护进程生效(面板「重启」按钮即可)。

安全模型(多用户信任集)

> iLink 微信协议的扫码绑定是 bot 自身 登录(不是用户配对)。因此"多用户"的边界在协议层之上划定:把可信微信用户的 from_user_id 加进信任集,放行/拒绝入站。

信任模式(fail-closed 默认)

模式 行为 适用
owner-only(默认) 只认绑定账号 owner 本人,陌生人一律拒绝 单用户,行为与旧版完全一致
bootstrap 首个联系的陌生人自动入信任集(一次性),之后不再自动 快速开号试用
manual 仅 owner 用 /trust 或 Web 面板显式添加的人可对话 正式多人使用
  • 信任集持久化在 trust.json(0600),mode 是唯一真相源;config.json 只存 notifyRejected。
  • 拒绝原则:陌生人消息只记日志、不回复(不泄露任何内部信息);可选 notifyRejected: true 让 owner 收到「陌生人尝试联系」提醒(Web 面板或 /trustmode 后由面板开关)。
  • 吊销即失效:/distrust 或面板「吊销」后,该用户新消息立刻被拒绝;其历史会话文件保留只读(不丢历史)。

per-user 隔离

  • 每个受信用户(含 owner)一套独立:DSH 会话(${botAccountId}::${userId} 为 key)、会话文件、消息队列、上下文 token、/history /status /cwd /model。
  • A 的任务进行中,B 发消息不会被阻塞(独立队列);A 的 /yes /no 只裁决 A 自己 agent 的待审批(审批 key 归属 session key),B 无权替 A 裁决。
  • 项目绑定两级粒度:Web 面板选择项目会话 → 对该 bot 下所有用户生效;微信内 /session 绑定 → 仅对当前用户生效。

升级迁移

  • 旧单用户数据自动迁移:sessions/.json → sessions/__.json,session-ids.json 旧 key → ${accountId}::${ownerUserId},迁移留痕日志,绝不丢历史;无法确定 owner 的旧数据保留原样只读。

> ⚠️ 验证状态(如实标注):信任集判定与迁移逻辑有纯函数单测覆盖(39 项);
> owner-only 模式已真机回归(行为与旧版一致)。多用户路径(bootstrap 入集、双用户隔离并发)
> 真机验证待补
——需要第二个微信账号走查,在此之前请仅在受控环境开启 bootstrap/manual 模式。

数据目录

默认 ~/.dsh/wechat-bridge/(可用 DSH_HOME 调整):

~/.dsh/wechat-bridge/
├── accounts/       # 微信账号凭证(0600)
├── sessions/       # 每个微信账号的本地会话状态
├── session-ids.json # 微信账号 → DSH 持久化会话 ID 映射(用于重启后 resume)
├── trust.json       # 多用户信任集(模式 + 信任用户,0600)
├── context-tokens.json # per-user context_token(主动推送/审批通行证)
├── pending-queue/  # 发送失败暂存队列
├── daemon-port.json # 守护进程 notify 端点端口(token 鉴权)
├── notify-stats.json # 主动通知每日配额计数
├── config.json     # 工作目录 / 模型 / 系统提示词
└── logs/           # 运行日志

安全说明

  • 守护进程与 DSH 插件之间的内部 API 只监听 127.0.0.1,并使用随机 token 鉴权。
  • 微信账号凭证仅保存在本机 ~/.dsh/wechat-bridge/accounts/,权限为 0600。
  • 日志中的 token / secret / password 会自动脱敏。
  • 请勿把真实账号凭证、token 或日志提交到 Issue / PR。

贡献

欢迎提交 Issue 和 PR。请先阅读 CONTRIBUTING.md,并查看 SECURITY.md 了解安全报告方式。

License

MIT

常见问题

8 问
答案由本站依据条目字段整理,不引用上游原文
dsh-wechat-bridge 怎么安装?

在 DSH 里执行 `dsh plugin --profile web add @lanbaolu/[email protected]` 即可。对应的 npm 包名是 `@lanbaolu/dsh-wechat-bridge`。

dsh-wechat-bridge 的验证等级是什么意思?

L5 · 运行验证通过。在 dsh 沙盒中完成安装与运行冒烟——装得上、跑得起来

dsh-wechat-bridge 安全吗?

低风险。vet 静态分析未发现可疑行为,判定为干净(clean)。

dsh-wechat-bridge 支持哪些 DSH 版本?

上游记录的兼容版本包括 0.2.0-rc.2、0.2.0-rc.1、0.1.7-rc.2、0.1.7-rc.1、0.1.6-alpha.2、0.1.6-alpha.1、0.1.1-rc.2。

dsh-wechat-bridge 需要什么运行环境?

Node.js >=18;需要同时安装 @deepseek-ai/cordis@^4.0.1、@deepseek-ai/dsh-agent@^0.1.0-rc.6、@deepseek-ai/dsh-agent-default-model@^0.1.0-rc.6、@deepseek-ai/dsh-client-runtime@^0.1.0-rc.6、@deepseek-ai/dsh-client-ui-settings@^0.1.0-rc.6。环境不满足时安装会失败,建议先确认本机版本。

dsh-wechat-bridge 用的是什么许可证?

上游标注为 MIT。商用或二次分发前请到仓库确认许可证原文。

dsh-wechat-bridge 有哪些功能?

微信扫码绑定、多用户独立会话、微信内审批、文件双向传输、流式回复。

这条记录的数据可靠吗?

本站按仓库名去重后合并整理,字段以作者仓库与 npm 元数据为准;安装命令、仓库地址与 README 保持原文,带 L4 / L5 标记的安装命令已在隔离沙盒里真实跑通。

同名或近似条目

4 条
不同作者的仓库分开列,请确认你要装的是哪一个
通知与集成
按星标排序,可作替代方案

treg

treg

Treg 是面向 Agent 工具的 OpenRouter,聚合 60 个提供商的 2896 个端点,按调用计费,统一令牌访问,无需注册各供

L3 · 安装规范通过 4,976 星

dsh-im

dsh-im

将IM机器人接入DeepSeek Harness,支持飞书、微信、钉钉等九种渠道,通过扫码或凭据配置,统一管理多机器人连接。

L5 · 运行验证通过 1,837 星

dsh-dafeiyu

dsh-dafeiyu

DSH 大肥鱼是一款由 DeepSeek Harness 真实工作状态驱动的桌面伴侣插件,以始终置顶的透明窗口实时展示 Agent 的思考、

L5 · 运行验证通过 425 星

dsh-trading

dsh-trading

L3 · 安装规范通过 235 星

A-share-Ai

A-share-Ai

幻银量化A股阿法狗AlphaHYQi,100%由ai自主驱动的实盘交易机器。接入自产龙虾iClaw,手机端一句话控制四大模型同时干活。获取方

L4 · 沙盒安装通过 130 星

lanbaolu 的其它插件

1 个

插件的元信息来自作者仓库;分类、验证等级与安全结论的中文说明为中文整理,最近核验 2026-10-08。