前言¶
DeepSeek Harness (DSH) Web GUI 的 Profile Bundle 插件。它通过侧边栏按钮实现本地 DSH 仓库的一键更新。对于需要频繁迭代本地代码的开发者,该插件省去了在终端手动执行 git 和 pnpm 命令的步骤,将完整的更新流程封装在 Web 界面中。
安装与启用¶
该插件以 Profile Bundle 形态分发,通过一条命令即可完成安装并自动激活。
dsh plugin --profile web add @zhucy123/dsh-update
安装完成后,重启 DSH Web 进程。侧边栏底部、设置按钮上方会出现一个圆形的「⭯ 更新DSH」按钮。
核心功能¶
- 版本对比:读取本地 checkout 与远程
dsh-v*tags 进行对比。 - 更新前确认:检测到新版本时,不会自动执行,而是先展示本地/远程版本与更新内容,确认无误后再点击开始。
- 一条龙更新:自动执行
git fetch --tags、git stash(暂存本地改动)、git checkout、pnpm install、pnpm run clean、pnpm run build。 - 构建前自动 clean:切换版本后自动清理旧产物,防止
MISSING_EXPORT错误。 - 构建后核验:只有
install和build都成功才算完成。 - 更新内容展示:面板内展示该版本的 GitHub Releases 说明。
- 自动重启:更新成功约 2 秒后自动重启 dsh,或手动点击「重启DSH」。
- 版本回退:可在面板下拉选择历史
dsh-v*tag 进行回退。 - 本地改动安全:更新前自动执行
git stash push -u保护本地修改。 - 失败自动回滚:已切到新版本后,若 install/build 失败,自动回滚到原版本。
- 并发保护:同一时间只允许一个更新任务。
- 跨平台:支持 Windows / Linux / macOS。
使用方法¶
- 启动 dsh web,在侧边栏底部点击「⭯ 更新DSH」圆形按钮。
- 面板会自动检查版本,显示本地与远程版本信息。
- 若有新版,预览更新内容后,点击「开始更新」。
- 等待进度条,构建阶段页面可能会突然变空白,这是正常现象(构建阶段会替换网页资源文件)。
- 更新完成后,约 2 秒后自动重启,或手动点击「重启DSH」。
要求¶
- 本地需有
deepseek-harness的 git checkout 仓库,且 origin 包含dsh-v*tags。 - 本机可访问 GitHub(不可达时插件会尝试走
gh-proxy.com镜像)。 - Node.js ≥ 18,系统需安装 git 和 pnpm(POSIX 系统若无 pnpm 会自动回退使用
corepack pnpm)。
注意事项¶
- 更新期间整个页面可能突然变空白(构建阶段会替换网页资源文件),这属于正常现象。
- 默认自动定位更新目录(从进程 cwd 向上查找
.git),也可通过环境变量或插件 config 覆盖。 - 插件以 Profile Bundle 形态分发,安装后自动激活,无需手动编辑配置。