DeepSeek Harness plugin

DSH-WeChatClawBot

DSH bundle: WeChat floating-ball bridge (QR login, message relay, ClawBot model config)

Jump to install

Source facts

Repository
lubaiUwU/DSH-WeChatClawBot
Latest update
Aug 17, 2026
Category
Remote & Mobile
GitHub stars
0
Format
plugin
Catalog evidence
Upstream dsh.bundle evidence
Evidence path
package.json#dsh.bundle
Checked against
0.1.0-rc.8
Upstream check date
2026-08-20

This evidence comes from the upstream catalog. This site has not installed, run, or security-reviewed the plugin.

Install

Start with a prompt that asks an agent to review the GitHub repository and source. Switch to the command if you want to install it yourself.

Copy this prompt into DSH, Codex, or another agent and ask it to review the GitHub repository and source first.

Do not install or run any commands yet. Read this plugin's GitHub repository, README, and relevant source code. Then answer the questions below clearly and directly so I can decide whether it fits my needs:

1. What is this plugin, and what problem does it solve?
2. Who is it for, and what are its typical use cases?
3. How is it used after installation? Include one minimal example.
4. What known limitations or privacy, security, compatibility, or maintenance risks does it have?
5. Give a clear recommendation: recommend, conditionally recommend, or do not recommend, with reasons.

Distinguish statements documented by the repository, inferences from source code, and unknowns. If evidence is insufficient, say so explicitly. Do not guess or simply repeat the README.

GitHub: https://github.com/lubaiUwU/DSH-WeChatClawBot
Plugin: DSH-WeChatClawBot
Author: lubaiUwU

Check the source files

Read the README and other files from this plugin directory before installing.

File explorer3 files
README.mdSource · read only

DSH-WeChatClawBot — 微信悬浮球扫码桥接

安装(用户只需这一句): 对 DSH 说 请帮我安装插件 https://github.com/lubaiUwU/DSH-WeChatClawBot Windows / macOS / Linux、DSH Desktop 与 CLI 都适用。profile、allowBuilds、依赖垫片由安装方按下方「给安装 Agent 的步骤」自动处理,用户不用额外交代。

DeepSeek Harnessdsh)装一个插件后,GUI 右下角出现微信绿色悬浮球:点开 → 手机微信扫码登录 → 之后微信里发给你的消息直接进入独立的微信对话区(不会混进 GUI 会话),由 DSH 的 agent 处理,回复自动回传微信。

不需要 OpenClaw、不需要任何外部服务。微信接入使用腾讯官方渠道协议(iLink,与 @tencent-weixin/openclaw-weixin 同源,MIT 许可),本项目把协议核心抽成了独立网关服务。

微信 (手机)
   │ 扫码登录(悬浮球面板展示二维码)
   ▼
wechat-gateway      ← 独立 Node 服务(腾讯 iLink 协议:收/发消息,端口 51235)
   │  SSE message 事件
   ▼
dsh-wechat-bot      ← DSH 宿主插件(spawn/守护网关、注入会话、回复回传)
   │  createBridge(会话驱动核心,复用 dsh-wechat-bridge)
   ▼
DSH agent(独立微信对话区;上下文长期保留)
   ▲
dsh-client-wechat-ui ← 浏览器悬浮球(扫码/验证码/白名单/模型配置/新对话)

✨ 功能特性

  • 扫码即用:手机微信扫悬浮球二维码绑定;登录凭证存本机,重启 DSH 自动恢复登录(token 失效才需重扫)
  • 独立对话区:微信消息绝不进入 GUI 会话;对话区上下文连续,重启后自动恢复历史(持久化会话 + 会话映射)
  • 按命令切换对话:微信发 /new(或 /新对话/新会话)、悬浮球点「新对话」才新建对话区;默认永远沿用同一对话
  • ClawBot 专用模型:面板配置模型(快捷选择已配密钥的模型 / 自定义填写)+ 思考强度(off/high/max),重启后保留,只对微信回合生效
  • 联系人白名单:默认允许所有;可在面板批准/忽略新联系人

🖥️ 环境要求

依赖要求说明
操作系统Windows / macOS / Linux推荐 dsh plugin add;Windows 也可 .\install-wechat.ps1
DeepSeek Harness已安装 DSH Desktop 或能跑 dsh用户只需说「请帮我安装插件」+ 本仓库 URL;profile 由安装方自动检测
Node.js>= 22.19(建议 22.x 或 24.x LTS)与 DSH 引擎要求一致;网关与插件同标准
npm任意较新版本安装 wechat-gateway 的 qrcode 依赖
微信账号一个可扫码的手机微信建议小号:个人微信自动化存在账号风控风险,请自行评估
模型密钥可选在 DSH 设置(Models 页)配置密钥即可;快捷选择模型时会自动检测密钥状态
可用端口51234 / 51235 / 51236均为本机回环 127.0.0.1 监听,一般不会冲突

端口与数据目录

用途
127.0.0.1:51234dsh-wechat-bridge HTTP 桥调试 / OpenClaw 转发方案
127.0.0.1:51235wechat-gateway微信协议收/发、扫码登录、SSE 事件
127.0.0.1:51236dsh-wechat-bot 模型端点悬浮球读写「ClawBot 使用模型」配置
~/.dsh-wechat/状态目录登录凭证、白名单、模型配置(clawbot-model.json)、会话映射(bridge-sessions.json)、对话区编号(wechat-session.json

$DSH_HOME 默认 ~/.dsh(Windows:C:\Users\<你>\.dsh);Mac 桌面 .app 可能是 ~/Library/Application Support/DeepSeekHarness。可用环境变量 DSH_HOME 覆盖。DSH Desktop 的 profile 一般叫 desktop,CLI Web 一般叫 web(安装 Agent 会自动选,用户不用记)。

📦 目录结构

DSH-WeChatClawBot/
├── package.json          # 组合包 manifest(dsh.bundle → cordis.patch.yml)
├── cordis.patch.yml      # 注入 wechat-bot + wechat-ui 两行
├── wechat-gateway/       # 微信网关(gateway.mjs,Node 内置 fetch,依赖 qrcode)
├── dsh-wechat-bot/       # DSH 宿主插件(管理网关进程、会话注入、模型端点)
├── dsh-client-wechat-ui/ # 浏览器悬浮球插件(零依赖 bundle)
├── dsh-wechat-bridge/    # 会话驱动核心(createBridge + 可选 HTTP 桥 + 单元测试)
├── install-wechat.sh     # 一键安装(软链方案,macOS/Linux/Git Bash)
├── install-wechat.ps1    # 一键安装(PowerShell,Windows 原生)
├── install-dsh-bridge.sh # 安装 HTTP 桥(可选,OpenClaw 转发方案用)
├── scripts/              # prepare + peer 垫片(dsh plugin add 也会跑)
└── README.md

🚀 安装

用户只需对 DSH 说这一句(不必提 Windows、desktop、allowBuilds):

请帮我安装插件 https://github.com/lubaiUwU/DSH-WeChatClawBot

下面整节是给正在执行安装的 AI / Agent看的。用户不用说这些;你读完后自己做完,不要再追问用户选 profile。

给安装 Agent 的步骤(必须按顺序做完)

1. 自动选定 profile,不要默认 web。 $DSH_HOME 一般为 ~/.dsh(Windows:%USERPROFILE%\.dsh)。按下面优先级选一个已存在的目录名: - $DSH_HOME/profiles/desktop 存在 → 用 desktop(DSH Desktop / Windows 官方桌面版几乎都是这个) - 否则 $DSH_HOME/profiles/web 存在 → 用 web - 否则看 $DSH_HOME/profiles/ 下实际有哪个,用那个 记作 <profile>

2. 安装组合包:

``sh dsh plugin --profile <profile> add github:lubaiUwU/DSH-WeChatClawBot ``

3. pnpm ≥10 若失败并提示 allowBuilds 不要停下来问用户。编辑 $DSH_HOME/profiles/<profile>/pnpm-workspace.yaml 在文件中加入(没有该键就新建):

``yaml allowBuilds: dsh-wechat-clawbot: true ``

然后再执行一次第 2 步的 dsh plugin add。本仓库的 prepare / postinstall 会给 dsh-wechat-bot dsh-wechat-bridge 链接 @deepseek-ai/* 垫片;不跑 prepare 时,DSH Desktop 会因找不到 schemastery 而启动闪退。

4. 告诉用户重启 DSH / DSH Desktop。 重启后右下角应出现微信绿色悬浮球 → 扫码登录。不要假设不重启也能用。

5. 不要只改 cordis.patch.yml 却不装包;不要假设 profile 一定是 web不要spawn 网关时去掉 ELECTRON_RUN_AS_NODE(Windows Desktop 的 process.execPath 是 exe 不是 node)。

手动安装(脚本)

macOS / Linux / Git Bash:

git clone https://github.com/lubaiUwU/DSH-WeChatClawBot
cd DSH-WeChatClawBot
bash install-wechat.sh

Windows PowerShell:

git clone https://github.com/lubaiUwU/DSH-WeChatClawBot
cd DSH-WeChatClawBot
.\install-wechat.ps1                  # 自动选择 desktop 或 web
.\install-wechat.ps1 -Profile desktop # 强制装进 DSH Desktop

手动安装(DSH 插件命令)

若你自己跑命令:先看 $DSH_HOME/profiles/ 里是 desktop 还是 web,再用那个名字:

dsh plugin --profile desktop add github:lubaiUwU/DSH-WeChatClawBot
# 或
dsh plugin --profile web add github:lubaiUwU/DSH-WeChatClawBot

一键脚本(本地 checkout)

# 1. 安装(幂等,可重复执行;脚本会:装网关依赖 → 建插件依赖垫片 →
#    把三个包链接进 DSH profile 的 node_modules → 写入 cordis.patch.yml)
bash install-wechat.sh

# 2. 重启 DeepSeek Harness 应用(让宿主插件与悬浮球插件加载)

# 3. 扫码
#    GUI 右下角绿色微信悬浮球 → 点击 → 手机微信「扫一扫」
#    (部分账号首次登录需在面板输入手机显示的验证码)

验证网关:

curl http://127.0.0.1:51235/status
# {"phase":"logged_in","message":"已恢复登录(使用已保存的凭证)",...} 或 {"phase":"waiting_qrcode",...}

安装脚本做了什么

1. wechat-gateway/npm install(安装 qrcode 依赖)。 2. 为 dsh-wechat-botdsh-wechat-bridge 建立 node_modules/@deepseek-ai/* 依赖垫片(软链/junction 到 $DSH_HOME/profiles/node_modules)——DSH 按真实路径解析插件,两个包都需要垫片才能找到 @deepseek-ai/{cordis,schemastery,...}dsh plugin add 会在 prepare / postinstall 里自动做这一步。

3. 把插件软链进 $DSH_HOME/profiles/<desktop|web>/node_modules/

4. 在该 profile 的 cordis.patch.yml 注入 wechat-bot / wechat-ui 两行(若文件是空的 [] 则整文件替换,避免无效 YAML)。

卸载:删掉 cordis.patch.yml 中对应段与 profiles/<name>/node_modules/ 下对应链接,重启即可;~/.dsh-wechat/ 删除即退出登录。

📱 使用

  • 收消息:微信消息进入独立的微信对话区(GUI 侧边栏可见,不会混入你的 GUI 聊天);同对话区上下文连续,重启 DSH 自动恢复历史记忆
  • 切换对话:微信发 /new/新对话/新会话,或悬浮球面板点「新对话」→ 新建对话区(旧对话保留);其余时间一直沿用当前对话。
  • ClawBot 使用模型:面板「快捷选择」列出已配密钥的模型(自动检测密钥状态),或「自定义填写」Provider/模型,选思考强度(off/high/max),保存后只对微信回合生效、重启保留;选「跟随 DSH 默认」再保存即清除配置。
  • 新联系人:白名单为空 = 允许所有;陌生人消息会先收到提示,并在面板出现「批准/忽略」。

⚙️ 配置

$DSH_HOME/profiles/<desktop|web>/cordis.patch.yml

- insert:
    - id: wechat-bot
      name: dsh-wechat-bot
      config:
        gatewayPort: 51235        # 微信网关端口
        modelPort: 51236          # 模型配置端点端口
        timeoutMs: 300000         # 单回合超时
        maxMessageChars: 20000
        approval: reject          # 回合内审批:自动拒绝并注明(可在 GUI 重跑)
    - id: wechat-ui
      name: dsh-client-wechat-ui

网关环境变量(wechat-gateway/gateway.mjs):PORT(默认 51235)、STATE_DIR(默认 ~/.dsh-wechat)、UNAPPROVED_REPLY(未授权自动回复文案)、LOG_LEVEL(debug/info)。

🧪 开发与测试

  • 语法:node --check <file>;网关/插件零构建(纯 JS ESM)。
  • 会话结算单元测试:node dsh-wechat-bridge/settle.test.mjs(覆盖 turn/end 结算、超时、报错、丢弃兜底、模型覆盖等场景,共 7 项)。
  • 网关可独立运行调试:cd wechat-gateway && npm install && node gateway.mjs
  • 修改宿主插件或网关后需重启 DSH 生效;修改 client.js(悬浮球)同样重启生效(boot 图缓存)。

🛠️ 排障

| 现象 | 处理 | |---|---| | 没有悬浮球 | 确认已装进正在运行的那个 profile(Desktop 用 desktop,CLI 用 web)并重启过应用 | | DSH Desktop 双击闪退 | 多为 dsh-wechat-bridge 找不到 @deepseek-ai/schemastery。更新到本仓库最新版后重装:dsh plugin --profile desktop add github:lubaiUwU/DSH-WeChatClawBot。临时:给 dsh-wechat-bridge/node_modules/@deepseek-ai/ 建与 bot 相同的 junction 垫片 | | 面板「无法连接网关」 | 网关没起来。DSH Desktop(Electron)必须用 ELECTRON_RUN_AS_NODE=1 拉起网关(0.1.1 已内置)。检查 netstat -ano \| findstr 51235 是否 LISTENING;看日志 wechat-gateway: 行 | | 登录后重启又要扫码 | 正常情况会自动恢复;若出现「登录已失效」说明 token 被微信侧吊销,需重扫 | | 微信发消息没反应 | 面板确认状态为「已连接」;新联系人需先批准;日志看 dsh-wechat-bot: 行 | | 回复失败提示 | 登录态失效:面板解绑后重新扫码,或删 ~/.dsh-wechat/accounts/ | | 模型配置不生效 | 确认面板保存成功;配置只对微信发起的回合生效(GUI 手动回合不受影响) | | 想清空所有状态 | 删除 ~/.dsh-wechat/(凭证/模型/会话映射一并清除) |

📄 许可证

MIT。协议核心(iLink 客户端)源自 @tencent-weixin/openclaw-weixin(腾讯官方渠道插件,MIT)。

> ⚠️ 免责声明:本项目仅供学习与个人自动化研究。使用个人微信账号自动化存在账号风控/封号风险,请使用小号并自行承担后果。本项目与腾讯、DeepSeek 无官方关联。