@wenbin_wb/dsh-bridge 2.8.6 → 2.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,235 +1,295 @@
1
- # 更新日志 (Changelog)
2
-
3
- 所有关键版本的更新历史均记录于此。
4
-
5
- ---
6
-
7
- ## [v2.8.6] - 2026-08-30
8
-
9
- ### 📱 移动端交互适配重构 & 隧道保活与传输优化
10
- - **📱 移动端工作区体验重构与多途径秒级回切**:
11
- - 修复移动端工作区面板(Workbench / `dsh-better-sidebar` / 任务管理)遮盖聊天对话与收起后白屏残留问题;
12
- - 引入严密的显隐状态机(`dsh-workbench-open`),打开面板时在 Tab 栏常驻 **`✕ 返回对话`** 蓝色操作胶囊;
13
- - 提供多途径极速回切:支持点击「返回对话」按钮、点击顶部 Header 会话标题、或在左侧抽屉切换会话秒级返回对话流;
14
- - **🗂️ DSH 原生收起图标深度适配与双向开合**:
15
- - 在移动端侧边栏抽屉顶部 Logo 栏完整集成并复用 DSH 原生自带的收起图标(`[|`);
16
- - 支持点击主界面 `≡` 汉堡菜单流畅滑出抽屉、点击原生收起图标/点击会话/轻触遮罩丝滑收回抽屉;
17
- - **🖥️ PC 桌面端严格隔离与零侵入**:
18
- - 通过媒体查询与运行期断点双重守卫,确保 PC 桌面端(`> 768px`)100% 保持官方原生多列分栏布局与纯净体验,无任何样式污染与多余组件;
19
- - **🛡️ Cloudflared 隧道守护进程自愈与自动重启**:
20
- - 修复 Cloudflared 进程异常退出后无法自动拉起的问题,增加子进程退出监听与指数退避自动重连机制,确保长时间公网访问不断连;
21
- - **⚡ 自建隧道 SSE 稳定性与数据传输优化**:
22
- - 修复弱网环境下 SSE 断线重连问题,精简 Session 列表超大数据负载传输,显著降低移动端带宽占用与弱网延迟。
23
-
24
- ---
25
-
26
- ## [v2.8.5] - 2026-08-27
27
-
28
- ### 🎯 产物文件推送改为 AI 指令驱动 & 修复 IM 平台断开连接问题
29
- - **🎯 显式文件发送协议**:由 AI 通过 `[SEND_FILE: <路径>]` 显式驱动文件直传,杜绝修改代码时的文件误发风暴;
30
- - **🧹 聊天正文自动净化**:自动剔除聊天窗口中的文件发送指令,保持聊天气泡清爽;
31
- - **🔌 修复 IM 断开连接失效**:修复 QQ 等网关断开连接时 WebSocket 事件悬挂问题,断开后彻底阻断入站消息与出站回复。
32
-
33
- ---
34
-
35
- ## [v2.8.4] - 2026-08-26
36
-
37
- ### 🗂️ 会话列表 Web 端 1:1 深度对齐与归档过滤修复
38
- - **🗂️ 严格按工作区账本对齐会话列表**:全面采用 DSH 官方工作区账本排序规则,自动过滤子代理派生会话、空白草稿与已归档会话,彻底解决磁盘历史孤立会话冗余列出的问题,保持 IM 端与 Web 端侧边栏 1:1 结构一致与编号精准对应。
39
-
40
- ---
41
-
42
- ## [v2.8.3] - 2026-08-26
43
-
44
- ### 📱 微信与全平台 IM 文件收发链路全面修复与深度兼容
45
- - **📱 微信 iLink 官方媒体传输协议完全对齐**:
46
- - 修复 `getuploadurl` 媒体类型映射,确保文件上传请求采用标准 `UploadMediaType.FILE = 3`,微信服务端正确识别文件类型与大小;
47
- - 严格采用官方规范对 `CDNMedia.aes_key` 进行 `base64(hex_string)` 编码,彻底解决微信移动端/电脑端解密失败报「文件已过期/下载失败/0B」的深层问题;
48
- - 精简规范 `file_item` 结构并对齐 `encrypt_type: 1`。
49
- - **🤖 QQ 机器人富媒体文件直传与显示修复**:
50
- - 支持 `file_type: 4` 通用文件传输,适配 QQ OpenAPI v2 文件格式校验(解决此前类型不符导致的 850019 拦截);
51
- - 显式传递 `file_name`,彻底消除 QQ 聊天界面将文档显示为「未命名」的问题;
52
- - 自动识别群聊与单聊端点路由(`/v2/users/{openid}/files` `/v2/groups/{group_openid}/files`)。
53
- - **🌐 微信会话凭证(context_token)持久化机制**:
54
- - 捕获微信入站消息时自动将实时安全会话凭证持久化落盘(`wechat-context-tokens.json`),并在服务启动与重启时自动载入,彻底避免凭证在重启后丢失;
55
- - 完善 `ret: -2` / `prepare failed` 过期感知,当用户重新发消息时自动刷新续期。
56
- - **📢 多平台多端共享会话广播**:
57
- - 优化同一工作区多端共享会话的广播逻辑,当任一客户端(飞书/QQ/Telegram/Web)触发生成文件时,各平台桥接器自动回退至已授权用户,实现产物文件多端同步直传。
58
-
59
- ---
60
-
61
- ## [v2.8.2] - 2026-08-26
62
-
63
- ### 🚀 微信/IM 本地生成文件全域探测与直接推送
64
- - **📁 全域文件智能探测与提取**:全面支持从 PowerShell/Bash 终端脚本(`New-Item`、`Set-Content`、`Out-File`、`>`)、工具调用参数及回复文本中自动探测提取生成的文件,并结合会话工作区目录自动解析为绝对路径;
65
- - **🌐 微信官方 CDN 媒体上传链路修复**:严格对齐腾讯 iLink 官方 CDN `/upload` 路由子路径与 `encrypted_query_param` / `filekey` 鉴权参数,彻底解决此前上传失败的问题;
66
- - **💬 微信与各 IM 原生文件气泡推送**:任务结束自动将 txt/pdf/docx/xlsx/zip/png 等产物推送到聊天界面,支持直接下载查看与转发。
67
-
68
- ---
69
-
70
- ## [v2.8.1] - 2026-08-26
71
-
72
- ### 🛡️ 微信/IM 消息分块保护与流式体验修复
73
- - **🛡️ 修复消息被切成 20 字符碎片的问题**:排查并修复历史配置中 `maxMessageChars` 异常写入 `20` 导致的聊天框逐句高频切块分发问题;
74
- - **⚙️ 全链路字符数下限安全防御**:在会话桥基类、各平台 Service 配置接口及启动加载链路中增加强制安全下限(`< 200` 自动回退为平台标准默认容量),彻底杜绝异常分块;
75
- - **💬 微信与各 IM 平台体验恢复**:恢复完整 Markdown 回复、段落与代码块的原生一次性聚合推送。
76
-
77
- ---
78
-
79
- ## [v2.8.0] - 2026-08-25
80
-
81
- ### 📱 移动端体验革新、远程工作区管理与全面安全加固
82
- - **🗂️ 远程工作区网页选择器**:彻底解决手机/远程设备点击「添加工作区」在电脑端静默弹窗、移动端无感知的痛点;自动唤出响应式底部抽屉/弹窗树形目录浏览器,支持盘符(C/D 盘)与快捷目录直达与手动路径跳转;
83
- - **🖥️ 本机电脑无感智能分流**:本机电脑(localhost / 127.0.0.1 / Electron 桌面客户端)点击添加工作区直接调用系统原生文件夹选择对话框,仅在移动端/远程访问时呼出网页选择器;
84
- - **📱 移动端视觉与布局体验深度优化**:
85
- - **顶部固定导航栏**:会话标题统一提升至顶部导航栏正中央,加粗居中显示,彻底消除顶部空白;
86
- - **第二行会话工具栏**:智能路由/子代理徽标与 28px 圆形纯图标 Session Log 下载按钮两端规整排列,呼吸感十足;
87
- - **底部输入框工具栏**:弹性自适应排版,彻底解决移动端与窄屏下权限预设与模型选择器重叠碰撞问题;
88
- - **🔐 全方位安全审计与深度加固**:
89
- - **RPC 端点鉴权**:文件树、驱动器与工作区注册 RPC 端点增加 `checkAdminAuth` 管理员认证校验;
90
- - **路径穿越与系统黑名单**:拦截 `C:\Windows\System32`、`/etc/shadow`、`/root/.ssh` 等敏感目录访问,检测软链接逃逸;
91
- - **滑动窗口速率限制**:针对文件系统探测接口实施每用户每分钟限流防护;
92
- - **IM 命令权限拦截**:非管理员用户禁止通过 `/addworkspace` 随意添加工作区。
93
-
94
- ---
95
-
96
- ## [v2.7.2] - 2026-08-25
97
-
98
- ### 🗂️ 远程工作区网页选择器与全平台 `/addworkspace` 指令
99
- - **🗂️ 远程工作区网页目录选择器**:彻底解决手机/远程设备点击「添加工作区」在电脑端静默弹窗、移动端无感知的痛点;在浏览器内直接呈现高颜值文件夹浏览弹窗;
100
- - **💾 驱动器与快捷目录一键直达**:智能探测 Windows 盘符 (`C:\`, `D:\` 等) 与常用根目录(桌面、IdeaProjects、Projects 等),支持可视点选与手动路径输入;
101
- - **🎯 原生点击事件捕获拦截**:在 DOM 捕获阶段拦截原生「添加工作区」/「打开文件夹」按钮点击,无缝转由网页选择器承接;
102
- - **🤖 IM 机器人 `/addworkspace` 指令**:微信 / QQ / 飞书 / Telegram 全面支持 `/addworkspace <电脑绝对路径>`,随时随地在聊天框添加项目工作区。
103
-
104
- ---
105
-
106
- ## [v2.7.1] - 2026-08-25
107
-
108
- ### 🛠️ Windows 一键升级与自建协议修复
109
- - **🛠️ 修复 Windows 平台一键升级 `spawn EINVAL` 错误**:适配 Windows 下 `.cmd` 批处理文件派生子进程的执行环境;
110
- - **🌐 修复自建隧道 WebSocket 诊断协议报错**:自动映射 `ws:`/`wss:` 协议进行端到端探测;
111
- - **🛡️ 并发防抖与状态优化**:优化多端并发请求与状态重连。
112
-
113
- ---
114
-
115
- ## [v2.7.0] - 2026-08-25
116
-
117
- ### 📊 运维监控看板、网络诊断与会话重命名
118
- - **📊 宿主系统与运行看板**:实时监控 CPU 核心与型号、DSH 运行时间(Uptime)、Node 堆内存占用与系统总内存彩色占用条;
119
- - **🔍 网络连通性一键诊断**:全面探测本地反向代理端口、局域网 IPv4、Cloudflare Anycast 边缘网络、自建隧道部署服务器与国内 npmmirror 镜像源连通性及延迟;
120
- - **🗄️ 全局配置备份与恢复**:支持一键导出/导入插件配置 JSON 文件(涵盖平台凭证、白名单与安全认证规则),支持跨设备迁移;
121
- - **🔄 DSH 服务平滑重启**:升级后或运维面板内支持一键平滑重启 DSH 进程,前端自动健康探测轮询并在重启成功后无缝重连刷新;
122
- - **🏷️ IM 机器人会话重命名**:微信、QQ、飞书、Telegram 均支持 `/rename <新标题>` 指令,实时修改当前活动会话标题并同步更新 Web 抽屉;
123
- - **🎨 界面与体验打磨**:Tab 栏彻底隐藏原生灰色横向滚动条保留流畅滑动手势,卡片间距规范化防重叠,深色模式原生深度适配;
124
- - **🛡️ 并发与竞态保护**:Telegram/WeChat/QQ 网关 start/stop 增加 in-flight 串行化防抖锁,ConversationBridge 增加会话恢复并发竞态防重锁。
125
-
126
- ---
127
-
128
- ## [v2.6.1] - 2026-08-25
129
-
130
- ### 🌐 公网隧道与专属域名重大升级
131
- - **🔄 隧道开机自启与状态记忆**:记录 Cloudflare 隧道与自建隧道运行状态,DSH 重启后自动无感拉起;
132
- - **🌐 Cloudflare 固定域名(Token 模式)**:支持 Cloudflare Named Tunnel(Zero Trust Token),绑定自定义专属域名(如 `dsh.yourdomain.com`),**重启后 URL 永久固定不变**;
133
- - **⚡ 零门槛临时模式兼容**:未配置 Token 时维持 1 秒极速免登录临时随机域名;
134
- - **⚙️ 控制台开关**:公网隧道卡片右上角新增「随 DSH 启动自动开启」复选框与折叠式高级 Token 配置。
135
-
136
- ---
137
-
138
- ## [v2.6.0] - 2026-08-24
139
-
140
- ### 📱 移动端触控交互全面升级
141
- - **🎨 顶栏与输入框重构**:极简通透顶栏,大圆角胶囊输入框,提供原生 App 般的丝滑手感;
142
- - **🖐️ 长按(Long Press)呼出菜单**:侧边栏会话行支持长按(≥380ms)触觉震动反馈并自动呼出操作菜单(重命名/分叉/归档),支持边缘手势滑动开闭抽屉;
143
- - **💊 状态药丸防换行**:全面修复手机小屏幕下「运行中」等状态药丸徽标断行换行问题;
144
- - **✨ 更新日志预览**:版本更新检查卡片直观渲染新版本特性亮点(Release Notes)。
145
-
146
- ---
147
-
148
- ## [v2.5.5] - 2026-08-23
149
-
150
- ### 🛠️ 缺陷修复与稳定性提升
151
- - **💓 心跳泄漏修复**:修复 IM 任务结束后心跳定时器未彻底注销的潜在泄漏问题;
152
- - **🧹 生命周期清理**:强化平台会话节点(Conversation Node)生命周期管理,连接断开时自动清理关联资源;
153
- - **🛡️ 稳健长连接**:提升微信、QQ、飞书与 Telegram 机器人在长周期运行时的并发稳定性。
154
-
155
- ---
156
-
157
- ## [v2.5.4] - 2026-08-23
158
-
159
- ### 📦 依赖规范化
160
- - **🧩 规范化依赖**:将 DSH 共享宿主包依赖调整为 `peerDependencies`,杜绝多实例冗余依赖问题;
161
- - **📉 体积瘦身**:进一步优化 npm 包体积与生态集成规范;
162
- - **📖 文档同步**:同步更新快速安装命令与版本号指引。
163
-
164
- ---
165
-
166
- ## [v2.5.3] - 2026-08-23
167
-
168
- ### 🚀 稳定性与依赖优化
169
- - **📦 内置预编译飞书 SDK**:内置预打包编译飞书 SDK(消除 `protobufjs` postinstall build script 报错);
170
- - **⚡ 纯净安装**:在 pnpm 11、npm yarn 下实现 100% 纯净、无告警的一键秒级安装体验;
171
- - **🛠️ 隧道服务端脚本增强**:优化一键部署脚本国内镜像源容错机制。
172
-
173
- ---
174
-
175
- ## [v2.5.2] - 2026-08-23
176
-
177
- ### 核心更新与优化
178
- - **🔑 本地管理免密直通**:优化 Localhost 物理回环访问判定逻辑,提升本地开发与管理体验;
179
- - **🔐 交互式解锁弹窗**:新增统一的管理员解锁弹窗组件,支持密码解锁与状态实时同步;
180
- - **📱 移动端 Polyfill**:增强移动设备浏览器环境兼容性;
181
- - **📸 视觉与文档**:更新全套控制台高清界面实机截图与架构说明。
182
-
183
- ---
184
-
185
- ## [v2.5.1] - 2026-08-23
186
-
187
- ### 🛡️ 深度加固安全防护与修复潜在风险
188
- - **🔐 Secret Token 严格脱敏**:控制台公开状态彻底隔离,未授权访客不可见明文;
189
- - **🚫 token_only 模式严格禁止密码登录**;
190
- - **🛡️ RPC 服务端管理员权限校验**:强化关键配置修改与敏感操作鉴权;
191
- - **⚡ Scope 防护范围 Header 伪造防范**。
192
-
193
- ---
194
-
195
- ## [v2.5.0] - 2026-08-23
196
-
197
- ### 🔐 全新访问安全认证体系与 Tab 面板
198
- - **🛡️ 双密码管理**:访客密码与管理员独立密码;
199
- - **🚨 三重容灾保命体系**:支持 Localhost 物理特权免密、应急 reset-auth 文件恢复机制;
200
- - **🎛️ Tab 结构升级**:局域网、公网隧道、IM 机器人、安全认证独立 Tab 组织。
201
-
202
- ---
203
-
204
- ## [v2.4.0] - 2026-08-23
205
-
206
- ### ✈️ 接入 Telegram 官方机器人
207
- - 支持 Telegram Bot API、打字机流式输出、原生指令菜单与交互卡片。
208
-
209
- ---
210
-
211
- ## [v2.3.0 ~ v2.3.3] - 2026-08-22
212
-
213
- ### 🐦 接入飞书官方长连接机器人
214
- - 支持 Card 2.0 原生流式打字机、双端并发审批、多平台统一消息架构重构。
215
-
216
- ---
217
-
218
- ## [v2.2.0 ~ v2.2.9] - 2026-08-20 ~ 2026-08-21
219
-
220
- ### 🐧 QQ 官方机器人全面升级
221
- - 支持 OpenAPI v2、指令面板、自定义菜单、全回复流式 Markdown 与群聊交互。
222
-
223
- ---
224
-
225
- ## [v2.0.0] - 2026-08-20
226
-
227
- ### 🚀 多平台架构重构
228
- - 引入统一 Platform 抽象基类与 ConversationBridge。
229
-
230
- ---
231
-
232
- ## [v1.0.0 ~ v1.2.3] - 2026-08-19
233
-
234
- ### 💬 微信 Bot 初代上线
235
- - 支持微信 ClawBot/iLink、局域网访问、Cloudflare 临时公网隧道与自建隧道。
1
+ # 更新日志 (Changelog)
2
+
3
+ 所有关键版本的更新历史均记录于此。
4
+
5
+ ---
6
+
7
+ ## [v2.9.0] - 2026-08-31
8
+
9
+ > ⚠️ **升级前必读**:本次为大规模更新(覆盖安全加固、并发模型、代码结构重构),改动量远超以往版本,尽管已通过 165 项自动化测试与多轮实测,仍可能存在未知问题。建议:
10
+ > - 升级前备份 `~/.dsh/dsh-bridge/config.json`(可在面板「运维监控 → 备份恢复」导出);
11
+ > - 升级后重点验证:各 IM 平台收发消息、审批流程、隧道连接;
12
+ > - 如遇异常可回退至 v2.8.7,并欢迎携带日志提交 Issue:https://github.com/wenbin-wb/dsh-bridge/issues
13
+ >
14
+ > **行为变更**:① 群聊自动授权默认关闭(可在平台卡片勾选开启);② 未设置密码时,备份导出/导入、隧道配置等高危操作将要求先设置密码;③ IM 发起的审批只在 IM 决议,Web 发起的只在 Web 弹窗。
15
+
16
+ ### 🛡️ 全面安全加固与代码质量大修(全仓库深度代码审查落地)
17
+
18
+ - **🔐 安全加固**:
19
+ - 访问/管理密码哈希升级:PBKDF2-SHA256 迭代 10,000 → 600,000(OWASP 建议),哈希格式带算法版本前缀,存量旧哈希在下次成功登录时透明升级,无需重设密码;
20
+ - 管理密码解锁防爆破:连续 5 次失败锁定 60 秒;
21
+ - 未设置任何密码时,备份导出/导入、隧道配置与启动、远程目录浏览、添加工作区、插件升级、重启 DSH 等高危操作强制要求先设置密码(**行为变更**);
22
+ - 本机特权 Token 端点(loopback-token)CORS 收敛:仅放行本插件生成的面板来源(回环 / 局域网 IP / 隧道地址),不再使用 `*`,收敛 Firefox/Safari 下的 drive-by 令牌窃取面;
23
+ - 隧道令牌掩码保护:非管理员视图的 `******` 掩码回显不再覆盖真实 Token,未变更字段不上传;
24
+ - 登录页与锁屏页不再向访客泄露救急重置明文命令,改为指向文档;修正 README 救急路径笔误(`~/.dsh-bridge` → `~/.dsh/dsh-bridge`)。
25
+ - **🐞 稳定性修复(含 eslint 静态分析新抓出的 4 个必崩 BUG)**:
26
+ - 修复 iOS 16 等旧移动端浏览器访问面板发送消息报 `AbortSignal.any is not a function (internal)` 的问题:DSH 网页客户端用该 API 组合请求超时/取消信号,而 Safari 17.4 才支持;代理注入页自动补齐兼容垫片(服务端运行在低版本 Node <20.3 时同样自动垫片并告警引导升级);
27
+ - 修复微信入站媒体下载 100% 抛 ReferenceError(`downloadMedia` 缺失 `fetch()` 调用,旧测试未覆盖);
28
+ - 修复 QQ 流式输出失败后补发收尾必崩(`streamMsgId` 作用域错误);
29
+ - 修复前端「查看手动升级命令」渲染崩溃(`UpgradeCommandRow` 组件缺失);
30
+ - 修复插件卸载时 `session/event` 监听器永不解绑(dispose 清理闭包引用错误,幽灵事件持续外发); - 修复微信/QQ 等 IM 端 `/list`、`/sessions`、`/use` 命令报 `cannot get property "sessionProjCache" without inject` 的问题:宿主 cordis 上下文禁止插件读取未在 inject 中声明的属性,会话列表的内存注入点改为安全探测、失败自动回落磁盘存储;
31
+
32
+ - 修复出站 digest 状态 Map 无限增长、自建隧道启动失败僵尸占用、cloudflared 意外退出后状态失真、`/use N` 编号与会话列表显示错位、`/status` 缺 reason 崩溃等问题。
33
+ - **🚦 并发模型修复**:
34
+ - 出站消息统一串行队列:心跳 / 正文 / 审批卡片 / 媒体不再交错乱序,消除 QQ 流式 replace 共享 `_msgSeq` 的并发冲突;
35
+ - 入站消息串行化 + 出站事件绑定发起轮次的会话 peer,杜绝 A 任务进行中 B 来消息导致回复串到 B 窗口的跨用户串扰;
36
+ - 审批发起者校验:群聊中其他成员回复 `/yes` 无法代批工具执行;
37
+ - 群聊自动授权改为显式配置 `groupAutoApprove`(**默认关闭**,行为变更:白名单非空时陌生群不再因 @机器人 一次即获授权);
38
+ - 配置持久化读-改-写整事务化,多平台并发保存不再丢失更新; - **修复 IM 端收不到审批卡片的问题**:DSH 宿主的审批分发是顺序瀑布(web GUI 认领监听器先行否决),桥接审批桥此前永远没有机会执行,导致微信/QQ 等 IM 端工具审批全部以"用户未批准"失败;现以 prepend 方式注册到分发链最外层,并采用严格归属模型:IM 发起的轮次审批只在 IM 决议(不再并行打开 Web 通道,杜绝 Web 端弹窗在 IM 决议后永久残留),Web 发起的轮次则完全交由 GUI 处理;支持任务停止时同步取消待决审批;
39
+ 同步修复飞书:其遗留的专属审批桥(未 prepend、无归属门槛)导致飞书发起的审批永远收不到卡片而 Web 反而弹窗,现已对齐统一归属模型并保留飞书原生按钮卡片 UX(按钮决议同样校验发起者);
40
+
41
+ - 平台配置恢复统一工厂化,消除四段复制与启动期竞态回滚。
42
+ - **🧹 代码质量与工程化**:
43
+ - 引入 eslint(flat config)与 CI:Node 22/24 × Ubuntu/Windows 全矩阵执行 lint + 单元测试;
44
+ - 提交 `package-lock.json` 锁定依赖树,清理 pnpm 残留配置;
45
+ - `conversation-bridge.js`(1642 行)按职责拆分为 `message-split` / `dsh-storage` / `session-catalog` / `commands` 四个模块;
46
+ - 主插件平台装配循环化;删除 7 个废弃 `wechat*` RPC 端点、`BRIDGE_MARK` 等死代码;
47
+ - 微信 context-token 落盘改为防抖合并写(此前每条入站消息同步读写盘);
48
+ - 自建隧道响应增加 32MB 上限(防内存拖垮)+ gzip 压缩异步化(不再阻塞事件循环)。
49
+
50
+ ---
51
+
52
+ ## [v2.8.7] - 2026-08-30
53
+
54
+ ### 🛜 多网卡智能切换与 macOS 升级与隧道自愈加固
55
+ - **🛜 支持局域网多网卡可视化切换与持久化 (Issue #5)**:
56
+ - 自动探测并列出宿主机所有可用物理网卡与虚拟网卡(Wi-Fi、以太网、WSL、VMware、Docker 等),支持识别网卡类型与优先级推荐;
57
+ - 在局域网控制台提供网卡下拉切换器,切换后即时重新生成局域网链接与二维码,并自动记忆持久化保存,彻底解决多网卡/WSL 环境下移动端扫码 IP 无法互通的问题;
58
+ - **🍏 加固 macOS 一键平滑升级**:
59
+ - `upgradePlugin` 自动补全 macOS GUI / 后台环境下缺失的系统 `PATH` 环境变量(自动兼容 `/opt/homebrew/bin`、`/usr/local/bin`、`~/.nvm/...` 等);
60
+ - 自动优先绑定当前运行中 Node.js 同级目录下的 `npm`/`npx` 二进制绝对路径,杜绝 `spawn ENOENT` 升级失败;
61
+ - **🛡️ 优化 macOS Cloudflared 二进制探测与隔离自愈**:
62
+ - 启动时优先扫描系统 `PATH` 与 Homebrew 安装的 `cloudflared` 全局二进制;
63
+ - 网络下载解压后自动通过 `xattr -d com.apple.quarantine` 移除 Gatekeeper 隔离标记,并加入 `--version` 运行期校验与自愈。
64
+
65
+ ---
66
+
67
+ ## [v2.8.6] - 2026-08-30
68
+
69
+ ### 📱 移动端交互适配重构 & 隧道保活与传输优化
70
+ - **📱 移动端工作区体验重构与多途径秒级回切**:
71
+ - 修复移动端工作区面板(Workbench / `dsh-better-sidebar` / 任务管理)遮盖聊天对话与收起后白屏残留问题;
72
+ - 引入严密的显隐状态机(`dsh-workbench-open`),打开面板时在 Tab 栏常驻 **`✕ 返回对话`** 蓝色操作胶囊;
73
+ - 提供多途径极速回切:支持点击「返回对话」按钮、点击顶部 Header 会话标题、或在左侧抽屉切换会话秒级返回对话流;
74
+ - **🗂️ DSH 原生收起图标深度适配与双向开合**:
75
+ - 在移动端侧边栏抽屉顶部 Logo 栏完整集成并复用 DSH 原生自带的收起图标(`[|`);
76
+ - 支持点击主界面 `≡` 汉堡菜单流畅滑出抽屉、点击原生收起图标/点击会话/轻触遮罩丝滑收回抽屉;
77
+ - **🖥️ PC 桌面端严格隔离与零侵入**:
78
+ - 通过媒体查询与运行期断点双重守卫,确保 PC 桌面端(`> 768px`)100% 保持官方原生多列分栏布局与纯净体验,无任何样式污染与多余组件;
79
+ - **🛡️ Cloudflared 隧道守护进程自愈与自动重启**:
80
+ - 修复 Cloudflared 进程异常退出后无法自动拉起的问题,增加子进程退出监听与指数退避自动重连机制,确保长时间公网访问不断连;
81
+ - **⚡ 自建隧道 SSE 稳定性与数据传输优化**:
82
+ - 修复弱网环境下 SSE 断线重连问题,精简 Session 列表超大数据负载传输,显著降低移动端带宽占用与弱网延迟。
83
+
84
+ ---
85
+
86
+ ## [v2.8.5] - 2026-08-27
87
+
88
+ ### 🎯 产物文件推送改为 AI 指令驱动 & 修复 IM 平台断开连接问题
89
+ - **🎯 显式文件发送协议**:由 AI 通过 `[SEND_FILE: <路径>]` 显式驱动文件直传,杜绝修改代码时的文件误发风暴;
90
+ - **🧹 聊天正文自动净化**:自动剔除聊天窗口中的文件发送指令,保持聊天气泡清爽;
91
+ - **🔌 修复 IM 断开连接失效**:修复 QQ 等网关断开连接时 WebSocket 事件悬挂问题,断开后彻底阻断入站消息与出站回复。
92
+
93
+ ---
94
+
95
+ ## [v2.8.4] - 2026-08-26
96
+
97
+ ### 🗂️ 会话列表 Web 端 1:1 深度对齐与归档过滤修复
98
+ - **🗂️ 严格按工作区账本对齐会话列表**:全面采用 DSH 官方工作区账本排序规则,自动过滤子代理派生会话、空白草稿与已归档会话,彻底解决磁盘历史孤立会话冗余列出的问题,保持 IM 端与 Web 端侧边栏 1:1 结构一致与编号精准对应。
99
+
100
+ ---
101
+
102
+ ## [v2.8.3] - 2026-08-26
103
+
104
+ ### 📱 微信与全平台 IM 文件收发链路全面修复与深度兼容
105
+ - **📱 微信 iLink 官方媒体传输协议完全对齐**:
106
+ - 修复 `getuploadurl` 媒体类型映射,确保文件上传请求采用标准 `UploadMediaType.FILE = 3`,微信服务端正确识别文件类型与大小;
107
+ - 严格采用官方规范对 `CDNMedia.aes_key` 进行 `base64(hex_string)` 编码,彻底解决微信移动端/电脑端解密失败报「文件已过期/下载失败/0B」的深层问题;
108
+ - 精简规范 `file_item` 结构并对齐 `encrypt_type: 1`。
109
+ - **🤖 QQ 机器人富媒体文件直传与显示修复**:
110
+ - 支持 `file_type: 4` 通用文件传输,适配 QQ OpenAPI v2 文件格式校验(解决此前类型不符导致的 850019 拦截);
111
+ - 显式传递 `file_name`,彻底消除 QQ 聊天界面将文档显示为「未命名」的问题;
112
+ - 自动识别群聊与单聊端点路由(`/v2/users/{openid}/files` 与 `/v2/groups/{group_openid}/files`)。
113
+ - **🌐 微信会话凭证(context_token)持久化机制**:
114
+ - 捕获微信入站消息时自动将实时安全会话凭证持久化落盘(`wechat-context-tokens.json`),并在服务启动与重启时自动载入,彻底避免凭证在重启后丢失;
115
+ - 完善 `ret: -2` / `prepare failed` 过期感知,当用户重新发消息时自动刷新续期。
116
+ - **📢 多平台多端共享会话广播**:
117
+ - 优化同一工作区多端共享会话的广播逻辑,当任一客户端(飞书/QQ/Telegram/Web)触发生成文件时,各平台桥接器自动回退至已授权用户,实现产物文件多端同步直传。
118
+
119
+ ---
120
+
121
+ ## [v2.8.2] - 2026-08-26
122
+
123
+ ### 🚀 微信/IM 本地生成文件全域探测与直接推送
124
+ - **📁 全域文件智能探测与提取**:全面支持从 PowerShell/Bash 终端脚本(`New-Item`、`Set-Content`、`Out-File`、`>`)、工具调用参数及回复文本中自动探测提取生成的文件,并结合会话工作区目录自动解析为绝对路径;
125
+ - **🌐 微信官方 CDN 媒体上传链路修复**:严格对齐腾讯 iLink 官方 CDN `/upload` 路由子路径与 `encrypted_query_param` / `filekey` 鉴权参数,彻底解决此前上传失败的问题;
126
+ - **💬 微信与各 IM 原生文件气泡推送**:任务结束自动将 txt/pdf/docx/xlsx/zip/png 等产物推送到聊天界面,支持直接下载查看与转发。
127
+
128
+ ---
129
+
130
+ ## [v2.8.1] - 2026-08-26
131
+
132
+ ### 🛡️ 微信/IM 消息分块保护与流式体验修复
133
+ - **🛡️ 修复消息被切成 20 字符碎片的问题**:排查并修复历史配置中 `maxMessageChars` 异常写入 `20` 导致的聊天框逐句高频切块分发问题;
134
+ - **⚙️ 全链路字符数下限安全防御**:在会话桥基类、各平台 Service 配置接口及启动加载链路中增加强制安全下限(`< 200` 自动回退为平台标准默认容量),彻底杜绝异常分块;
135
+ - **💬 微信与各 IM 平台体验恢复**:恢复完整 Markdown 回复、段落与代码块的原生一次性聚合推送。
136
+
137
+ ---
138
+
139
+ ## [v2.8.0] - 2026-08-25
140
+
141
+ ### 📱 移动端体验革新、远程工作区管理与全面安全加固
142
+ - **🗂️ 远程工作区网页选择器**:彻底解决手机/远程设备点击「添加工作区」在电脑端静默弹窗、移动端无感知的痛点;自动唤出响应式底部抽屉/弹窗树形目录浏览器,支持盘符(C/D 盘)与快捷目录直达与手动路径跳转;
143
+ - **🖥️ 本机电脑无感智能分流**:本机电脑(localhost / 127.0.0.1 / Electron 桌面客户端)点击添加工作区直接调用系统原生文件夹选择对话框,仅在移动端/远程访问时呼出网页选择器;
144
+ - **📱 移动端视觉与布局体验深度优化**:
145
+ - **顶部固定导航栏**:会话标题统一提升至顶部导航栏正中央,加粗居中显示,彻底消除顶部空白;
146
+ - **第二行会话工具栏**:智能路由/子代理徽标与 28px 圆形纯图标 Session Log 下载按钮两端规整排列,呼吸感十足;
147
+ - **底部输入框工具栏**:弹性自适应排版,彻底解决移动端与窄屏下权限预设与模型选择器重叠碰撞问题;
148
+ - **🔐 全方位安全审计与深度加固**:
149
+ - **RPC 端点鉴权**:文件树、驱动器与工作区注册 RPC 端点增加 `checkAdminAuth` 管理员认证校验;
150
+ - **路径穿越与系统黑名单**:拦截 `C:\Windows\System32`、`/etc/shadow`、`/root/.ssh` 等敏感目录访问,检测软链接逃逸;
151
+ - **滑动窗口速率限制**:针对文件系统探测接口实施每用户每分钟限流防护;
152
+ - **IM 命令权限拦截**:非管理员用户禁止通过 `/addworkspace` 随意添加工作区。
153
+
154
+ ---
155
+
156
+ ## [v2.7.2] - 2026-08-25
157
+
158
+ ### 🗂️ 远程工作区网页选择器与全平台 `/addworkspace` 指令
159
+ - **🗂️ 远程工作区网页目录选择器**:彻底解决手机/远程设备点击「添加工作区」在电脑端静默弹窗、移动端无感知的痛点;在浏览器内直接呈现高颜值文件夹浏览弹窗;
160
+ - **💾 驱动器与快捷目录一键直达**:智能探测 Windows 盘符 (`C:\`, `D:\` 等) 与常用根目录(桌面、IdeaProjects、Projects 等),支持可视点选与手动路径输入;
161
+ - **🎯 原生点击事件捕获拦截**:在 DOM 捕获阶段拦截原生「添加工作区」/「打开文件夹」按钮点击,无缝转由网页选择器承接;
162
+ - **🤖 IM 机器人 `/addworkspace` 指令**:微信 / QQ / 飞书 / Telegram 全面支持 `/addworkspace <电脑绝对路径>`,随时随地在聊天框添加项目工作区。
163
+
164
+ ---
165
+
166
+ ## [v2.7.1] - 2026-08-25
167
+
168
+ ### 🛠️ Windows 一键升级与自建协议修复
169
+ - **🛠️ 修复 Windows 平台一键升级 `spawn EINVAL` 错误**:适配 Windows `.cmd` 批处理文件派生子进程的执行环境;
170
+ - **🌐 修复自建隧道 WebSocket 诊断协议报错**:自动映射 `ws:`/`wss:` 协议进行端到端探测;
171
+ - **🛡️ 并发防抖与状态优化**:优化多端并发请求与状态重连。
172
+
173
+ ---
174
+
175
+ ## [v2.7.0] - 2026-08-25
176
+
177
+ ### 📊 运维监控看板、网络诊断与会话重命名
178
+ - **📊 宿主系统与运行看板**:实时监控 CPU 核心与型号、DSH 运行时间(Uptime)、Node 堆内存占用与系统总内存彩色占用条;
179
+ - **🔍 网络连通性一键诊断**:全面探测本地反向代理端口、局域网 IPv4、Cloudflare Anycast 边缘网络、自建隧道部署服务器与国内 npmmirror 镜像源连通性及延迟;
180
+ - **🗄️ 全局配置备份与恢复**:支持一键导出/导入插件配置 JSON 文件(涵盖平台凭证、白名单与安全认证规则),支持跨设备迁移;
181
+ - **🔄 DSH 服务平滑重启**:升级后或运维面板内支持一键平滑重启 DSH 进程,前端自动健康探测轮询并在重启成功后无缝重连刷新;
182
+ - **🏷️ IM 机器人会话重命名**:微信、QQ、飞书、Telegram 均支持 `/rename <新标题>` 指令,实时修改当前活动会话标题并同步更新 Web 抽屉;
183
+ - **🎨 界面与体验打磨**:Tab 栏彻底隐藏原生灰色横向滚动条保留流畅滑动手势,卡片间距规范化防重叠,深色模式原生深度适配;
184
+ - **🛡️ 并发与竞态保护**:Telegram/WeChat/QQ 网关 start/stop 增加 in-flight 串行化防抖锁,ConversationBridge 增加会话恢复并发竞态防重锁。
185
+
186
+ ---
187
+
188
+ ## [v2.6.1] - 2026-08-25
189
+
190
+ ### 🌐 公网隧道与专属域名重大升级
191
+ - **🔄 隧道开机自启与状态记忆**:记录 Cloudflare 隧道与自建隧道运行状态,DSH 重启后自动无感拉起;
192
+ - **🌐 Cloudflare 固定域名(Token 模式)**:支持 Cloudflare Named Tunnel(Zero Trust Token),绑定自定义专属域名(如 `dsh.yourdomain.com`),**重启后 URL 永久固定不变**;
193
+ - **⚡ 零门槛临时模式兼容**:未配置 Token 时维持 1 秒极速免登录临时随机域名;
194
+ - **⚙️ 控制台开关**:公网隧道卡片右上角新增「随 DSH 启动自动开启」复选框与折叠式高级 Token 配置。
195
+
196
+ ---
197
+
198
+ ## [v2.6.0] - 2026-08-24
199
+
200
+ ### 📱 移动端触控交互全面升级
201
+ - **🎨 顶栏与输入框重构**:极简通透顶栏,大圆角胶囊输入框,提供原生 App 般的丝滑手感;
202
+ - **🖐️ 长按(Long Press)呼出菜单**:侧边栏会话行支持长按(≥380ms)触觉震动反馈并自动呼出操作菜单(重命名/分叉/归档),支持边缘手势滑动开闭抽屉;
203
+ - **💊 状态药丸防换行**:全面修复手机小屏幕下「运行中」等状态药丸徽标断行换行问题;
204
+ - **✨ 更新日志预览**:版本更新检查卡片直观渲染新版本特性亮点(Release Notes)。
205
+
206
+ ---
207
+
208
+ ## [v2.5.5] - 2026-08-23
209
+
210
+ ### 🛠️ 缺陷修复与稳定性提升
211
+ - **💓 心跳泄漏修复**:修复 IM 任务结束后心跳定时器未彻底注销的潜在泄漏问题;
212
+ - **🧹 生命周期清理**:强化平台会话节点(Conversation Node)生命周期管理,连接断开时自动清理关联资源;
213
+ - **🛡️ 稳健长连接**:提升微信、QQ、飞书与 Telegram 机器人在长周期运行时的并发稳定性。
214
+
215
+ ---
216
+
217
+ ## [v2.5.4] - 2026-08-23
218
+
219
+ ### 📦 依赖规范化
220
+ - **🧩 规范化依赖**:将 DSH 共享宿主包依赖调整为 `peerDependencies`,杜绝多实例冗余依赖问题;
221
+ - **📉 体积瘦身**:进一步优化 npm 包体积与生态集成规范;
222
+ - **📖 文档同步**:同步更新快速安装命令与版本号指引。
223
+
224
+ ---
225
+
226
+ ## [v2.5.3] - 2026-08-23
227
+
228
+ ### 🚀 稳定性与依赖优化
229
+ - **📦 内置预编译飞书 SDK**:内置预打包编译飞书 SDK(消除 `protobufjs` postinstall build script 报错);
230
+ - **⚡ 纯净安装**:在 pnpm 11、npm 及 yarn 下实现 100% 纯净、无告警的一键秒级安装体验;
231
+ - **🛠️ 隧道服务端脚本增强**:优化一键部署脚本国内镜像源容错机制。
232
+
233
+ ---
234
+
235
+ ## [v2.5.2] - 2026-08-23
236
+
237
+ ### ✨ 核心更新与优化
238
+ - **🔑 本地管理免密直通**:优化 Localhost 物理回环访问判定逻辑,提升本地开发与管理体验;
239
+ - **🔐 交互式解锁弹窗**:新增统一的管理员解锁弹窗组件,支持密码解锁与状态实时同步;
240
+ - **📱 移动端 Polyfill**:增强移动设备浏览器环境兼容性;
241
+ - **📸 视觉与文档**:更新全套控制台高清界面实机截图与架构说明。
242
+
243
+ ---
244
+
245
+ ## [v2.5.1] - 2026-08-23
246
+
247
+ ### 🛡️ 深度加固安全防护与修复潜在风险
248
+ - **🔐 Secret Token 严格脱敏**:控制台公开状态彻底隔离,未授权访客不可见明文;
249
+ - **🚫 token_only 模式严格禁止密码登录**;
250
+ - **🛡️ RPC 服务端管理员权限校验**:强化关键配置修改与敏感操作鉴权;
251
+ - **⚡ Scope 防护范围 Header 伪造防范**。
252
+
253
+ ---
254
+
255
+ ## [v2.5.0] - 2026-08-23
256
+
257
+ ### 🔐 全新访问安全认证体系与 Tab 面板
258
+ - **🛡️ 双密码管理**:访客密码与管理员独立密码;
259
+ - **🚨 三重容灾保命体系**:支持 Localhost 物理特权免密、应急 reset-auth 文件恢复机制;
260
+ - **🎛️ Tab 结构升级**:局域网、公网隧道、IM 机器人、安全认证独立 Tab 组织。
261
+
262
+ ---
263
+
264
+ ## [v2.4.0] - 2026-08-23
265
+
266
+ ### ✈️ 接入 Telegram 官方机器人
267
+ - 支持 Telegram Bot API、打字机流式输出、原生指令菜单与交互卡片。
268
+
269
+ ---
270
+
271
+ ## [v2.3.0 ~ v2.3.3] - 2026-08-22
272
+
273
+ ### 🐦 接入飞书官方长连接机器人
274
+ - 支持 Card 2.0 原生流式打字机、双端并发审批、多平台统一消息架构重构。
275
+
276
+ ---
277
+
278
+ ## [v2.2.0 ~ v2.2.9] - 2026-08-20 ~ 2026-08-21
279
+
280
+ ### 🐧 QQ 官方机器人全面升级
281
+ - 支持 OpenAPI v2、指令面板、自定义菜单、全回复流式 Markdown 与群聊交互。
282
+
283
+ ---
284
+
285
+ ## [v2.0.0] - 2026-08-20
286
+
287
+ ### 🚀 多平台架构重构
288
+ - 引入统一 Platform 抽象基类与 ConversationBridge。
289
+
290
+ ---
291
+
292
+ ## [v1.0.0 ~ v1.2.3] - 2026-08-19
293
+
294
+ ### 💬 微信 Bot 初代上线
295
+ - 支持微信 ClawBot/iLink、局域网访问、Cloudflare 临时公网隧道与自建隧道。