Repository navigation
Releases: zgat/dsh-wechat
Releases · zgat/dsh-wechat
Release list
v0.3.5 — 文档与上架契约对齐
文档
- 修正已删除机制的文档残留:扫码页 /
loginPagePort/ 一次性令牌 /login-page.url/--page/openInBrowser。 docs/side-effects.md:改为"零个自开监听端口",补全真实状态文件清单与 8 条断言。verify-profile-boot.sh:启动验证改探卡片接口/dsh-wechat/api/status(200 且含bots)与已删除扫码页(404)。
实测:{"status":"passed","dsh":"0.2.1-rc.2","install":true,"boot":true,"hostHttp":303,"cardApi":200,"scanPage":404,"uninstall":true}。- README:权限自评去掉"子进程";一次性 profile 证据改为"安装/组合/卸载 + 独立启动脚本";兼容性补
0.2.1-rc.2;STORE 状态更新为 2026-10-20 实测(三类信号、无可执行面、官方预检 passed、仅缺固定来源审阅记录)。
升级
安装后重启 DSH 生效。
v0.3.4 — 兼容声明补充 0.2.1-rc.2
仅声明 DSH 0.2.1-rc.2 兼容(依据:一次性 profile 的安装/合成/卸载证据,且插件正在该版本上运行)。
v0.3.3 — 修:改名与等待动画
修复
- 「改名」点了没反应:处理函数用了
window.prompt,而 Electron 不实现 prompt,调用直接失效。现在改成卡片里的内联输入框(保存/取消,Enter 保存、Esc 取消);「解绑」也改为两步确认,不再依赖window.confirm。并加了一条测试:bundle 里若再出现window.prompt(/window.confirm(直接失败。 - 「添加绑定」后有 1–2 秒空白才出现二维码:转圈此前只在"已有码但 SVG 未到"时显示。现在从点击那一刻就转圈(申请期间显示「正在申请二维码…」,取图期间显示「正在获取二维码…」),并且登录进行中把轮询从 4 秒收紧到 600 毫秒,二维码一生成就出现。
升级
安装后重启 DSH 生效。
v0.3.2 — 本地昵称(官方无昵称字段)
新增
- 可读的 bot 昵称:官方接口(Clawbot 相关接口)的扫码状态只返回
ilink_bot_id/ilink_user_id,没有任何昵称字段,因此昵称改为本地:设置页卡片每只 bot 有「改名」,按 bot 持久化、重新扫码不会丢;默认显示微信机器人 <id 尾 4 位>,原始 id 以小字保留。 /status与dsh-wechat --status也显示昵称。
升级
安装后重启 DSH 生效。
v0.3.1 — 加载转圈 + 设置页解绑
新增
- 二维码加载时的转圈:卡片取 SVG 期间显示与原二维码同尺寸的转圈占位(下方一行「正在获取二维码…」),码到了不会跳版。
- 设置页可直接解绑:每只 bot 一行带「解绑」按钮 → 宿主先停掉这只 bot 的长轮询、再删除它的凭据,其它 bot 不受影响(点击前会弹确认)。接口
POST /dsh-wechat/api/logout?bot=<id>:错误方法 405、未知 bot 404。
升级
安装后重启 DSH 生效。
v0.3.0 — 删除独立扫码页,二维码只在卡片/终端
破坏性变更
- 删除了独立扫码页(本机回环 HTTP 服务、页面 HTML、一次性令牌、
/state.json、login-page.url,以及「打开扫码页」按钮)。二维码现在只由设置页卡片内联绘制(GET /dsh-wechat/api/qr返回{version, svg}),或由dsh-wechat login打印在终端。 - CLI 去掉
--page/--no-open/--port:login只输出终端二维码;未知参数现在会直接报错而不是被忽略。 - 配置改名:
loginPage→qrInCard(旧名仍接受);loginPagePort已删除。
其它
- 插件不再自开任何监听端口(副作用测试已按此断言,顺带修掉了测试里"正则剥注释吞掉半个 index.js"的隐患)。
- 卡片、
/api/add、错误日志页与/api/errors不受影响。
升级
安装后重启 DSH 生效。
v0.2.10 — 二维码内联绘制(含文档修正)
修复
- 二维码改为在卡片里内联绘制(0.2.9 的功能,此前文档用例数写错,这里一并修正):卡片从
GET /dsh-wechat/api/qr取{ version, svg }(与扫码页同一渲染器)直接插入 DOM,不再依赖<img>加载、样式表或主题。/api/qr.svg保留给浏览器直接访问。 - 文档与测试数量对齐(251)。
升级
安装后重启 DSH 生效。
v0.2.9 — 二维码在卡片内联绘制
改进
- 二维码改为在卡片里内联绘制:卡片从
GET /dsh-wechat/api/qr取{ version, svg }(与扫码页同一渲染器)并直接插入 DOM,不再依赖<img>加载、样式表或主题——真正做到"直接显示在插件上"。/api/qr.svg保留给浏览器直接访问。
升级
安装后重启 DSH 生效。
v0.2.8 — 按 bot 判定所有者
修复
- 按 bot 判定所有者:此前所有者取自第一只 bot 的凭据,默认
allowlist策略下,第二只 bot 如果由另一个微信号扫码绑定,那个账号会被当成陌生人拒掉(⛔ 不在白名单)。现在访问判断、/status的"是否所有者"、欢迎语与maySendTo都按该会话所属 bot 的所有者计算,配置里的ownerUserId只作兜底。
测试
- 新增:bot B 的所有者发给 bot B 被接受(并真的进入 agent);同一发送者经 bot A 判定被拒;陌生人两种都拒。
升级
安装后重启 DSH 生效。
v0.2.7 — 修:添加绑定时二维码不显示
修复
- 「添加绑定」时二维码不显示:扫码页把"任意一只 bot 已登录"当成了"没有待扫的码",于是在已连接状态下点「添加绑定」时,接口返回
hasQr: false,卡片写着"用微信扫下方二维码"却没有码、扫码页还显示"登录成功"——从界面上根本没法添加第二只 bot。现在只有没有扫码进行中时才认为已登录,登录进行期间二维码照常出现。 - 验收脚本
scripts/verify-multibot.sh增加每只 bot 的活动证据(游标、去重条数、令牌数、出站条数与最近发送时间)以及会话键按 bot 的分布统计。
升级
安装后重启 DSH 生效。