前言¶
DeepSeek Harness(DSH)桌面端自带更新能力,但对普通用户来说有两处缺口:更新通道在壳层里被固定为 nightly,界面上无法切换稳定版、测试版或每日构建;「重启应用与 Host」入口只出现在 development 构建的菜单里,正式打包版往往找不到。装完新版本或改完插件后,只能手动关进程再开,或依赖不完整的更新提示。
下面介绍社区插件 dsh-update-plus(维护者 qiqqqqq517),在 DSH 设置里补上「更新与重启」面板:多通道检查更新、带 SHA-512 校验的直接下载,以及位于检查更新控件下方的重启按钮。插件分类为客户端,目录页见 SkillHub,源码与说明在 GitHub。
这是什么¶
dsh-update-plus 是 DeepSeek Harness 桌面端的更新与重启增强插件(npm 包名 dsh-update-plus,当前资料中版本 1.0.0,许可 MIT)。它不改变官方更新源,而是把稳定版 / 测试版 / 每日构建三个通道摊开,检查完成后可直接下载官方安装包并校验摘要;同时在面板上提供打包版缺失的「重启应用与 Host」入口。
package.json 中声明的 DSH 兼容范围为 >=0.1.7-rc.1,profile 支持 desktop 与 web;维护者在资料中标注与 0.2.0-rc.1、0.2.0-rc.2 兼容。
核心功能¶
多通道检查更新与下载¶
官方桌面端在 lib/main.js 中将 this.updater.channel 写死为 "nightly",用户无法在 UI 里选通道。本插件在 设置 → 更新与重启 提供分段按钮:稳定版、测试版、每日构建。
三个通道对应官方生产源上的清单文件,未发布的通道会标为「未发布」,不会伪造有更新:
| 通道 | 清单 | 资料中的实测(2026-10-07) |
|---|---|---|
| 稳定版 Stable | feeds/win-x64/latest.yml |
404 时回退官网「下载桌面版」直链,版本由构建尺寸比对推断,面板标为「官网直链」 |
| 测试版 Beta | feeds/win-x64/beta.yml |
404 → 显示「未发布」 |
| 每日构建 Nightly | feeds/win-x64/nightly.yml |
200 → 示例版本 0.2.0-rc.2 |
面板还提供 检查更新、直接下载最新版本;下载走流式管线并做 SHA-512 校验,摘要不一致会拒绝并删除文件。资料中记录过一次对 nightly 的全量 live 下载验证,字节数与清单一致且 SHA-512 匹配。
当前安装信息与设置项¶
同一面板展示:应用版本、Harness 版本、安装目录、启动程序、自带更新配置;设置区包括下载目录、手动指定安装目录、重启前等待秒数(默认 3 秒)。
一键重启应用与 Host¶
Harness Host 以桌面壳子进程形式运行,无法使用 Electron 的 app.relaunch()。插件通过脱离的 cmd 脚本:按配置等待若干秒后 taskkill /F 结束应用,确认进程消失后再 start 启动程序;日志写在 ~/.dsh/dsh-update-plus/restart.log。强制结束是刻意的:壳层窗口 close 会 preventDefault() 并藏到托盘,优雅关闭可能导致重启后多出一个托盘实例。按钮在「检查更新」正下方,并带有明确警告。
已知限制(来自 README):重启目前仅支持 Windows;macOS 上按钮会拒绝并提示用菜单。强制关应用会中断进行中的回复;稳定版在无 latest.yml 时版本号为推断结果;重启按钮无法变成 Electron 主进程里的原生菜单项(需 desktop-bridge 类方案,本插件刻意不做)。
架构要点¶
Host 半在 /dsh-update-plus/api 提供 JSON 接口(state / check / download / progress / cancel / restart / openFile / settings);Client 半通过 settings.section 注入面板(ModuleLoader bundle,无需构建)。二者走自建 HTTP 路由,而非生成的 Remote/typert 界面,以降低跨 Harness 版本变动的影响。
主要文件:lib/core.js(通道、清单、下载与校验、重启脚本)、lib/index.js(Host)、lib/client.js(Client)、cordis.patch.yml、install.mjs。
安装方式采用向 profile 的 dsh.profile.bundles 写入 "dsh-update-plus" 并拷贝包到 node_modules,而非仅手写 cordis.patch.yml 的 insert 行——资料说明后者可能被插件管理器视为「发现但未启用」。插件以当前 DSH 进程权限运行;安装前请自行查阅源码与 MIT 许可证。
安装与启用¶
资料中的安装步骤如下(示例路径中的用户名需换成本机 profile):
# 需要先关掉 DSH Desktop 吗?不需要;装完重启一次即可
node "C:\Users\30458\.dsh\plugins\dsh-update-plus\install.mjs"
装完后重启一次 DSH Desktop,或点面板里的重启按钮重新加载,再打开 设置 → 更新与重启。
卸载:
node install.mjs --revert
安装会在 <profile>\node_modules\dsh-update-plus\ 放置插件本体,并在 <profile>\package.json 的 dsh.profile.bundles 增加一条记录(首次会备份为 package.json.bak_update-plus)。若在 profile 里执行 pnpm install 可能清掉非托管拷贝,再跑一次 install.mjs 即可恢复。
典型用法¶
- 打开 DSH Desktop → 设置 → 更新与重启。
- 在 更新通道 选择稳定版、测试版或每日构建。
- 点 检查更新 查看各通道结果;需要安装包时点 直接下载最新版本,等待进度条与校验完成。
- 更新或改插件后,在检查更新控件下方点 重启应用与 Host(Windows;会强制结束应用,请先保存工作)。
维护者在插件目录提供测试入口:
cd "C:\Users\30458\.dsh\plugins\dsh-update-plus"
node run-tests.mjs
资料说明测试在 Host 运行时环境下执行,包含 core、下载、路由、cordis 加载、client 渲染与 install 等套件。
适用场景与注意¶
适合谁:长期使用 DSH 桌面端、希望按通道跟进官方构建、又希望在同一设置页完成下载校验与 Host 重启的开发者或高级用户。
注意:
- 插件与 DSH 同属本机进程权限,安装前请阅读 仓库源码 与 LICENSE。
- 社区目录 SkillHub 独立于 DeepSeek / 幻方,并非官方应用商店;DSH 生态强调「一切皆插件」,第三方插件需自行评估信任与兼容性。
- 官方桌面端仍处于 public preview 时,可能只有 nightly 清单有效;稳定版回退直链、测试版「未发布」属于如实反馈,而非插件失效。
结尾¶
dsh-update-plus 把桌面端缺失的「可选通道更新 + 带校验的直链下载」和「打包版可用的重启 Host」收到一块设置面板里,实现上尽量零构建、零额外运行时依赖,并用 bundle 方式保证开箱启用。需要细节、限制说明与发布流程时,以 GitHub README 为准;在目录站浏览元信息可打开 SkillHub 插件页。