Back to home@ADDD1118

dsh-update

DeepSeek Harness (dsh) check-for-updates plugin — 右上角检查更新 UI + 关闭后自动升级 (npm / update-dsh.ps1)

Stars
0
Language
TypeScript
Created
Aug 22, 2026
Updated
Aug 22, 2026

Introduction

dsh-update

English | 简体中文

A user-level plugin for DeepSeek Harness (dsh) that adds a "Check for updates" button to the top-right of the Web UI, plus automatic update-on-close.

  • Grey "Check for updates" button in the session header → "Checking"
  • Blue spinner while checking
  • Liquid-glass toast: "You are already on the latest version, X" when up to date
  • Blue "New version" button + centered update dialog (release notes + "Update") when a newer release exists
  • Click "Update" → records a pending update, then a detached background process upgrades dsh after the app closes; on the next launch a liquid-glass toast shows the new version
  • Detects the update mechanism: runs the sibling launcher/update-dsh.ps1 (source/launcher setup) or npm install -g @deepseek-ai/dsh@<version> (npm install) — never touches the launcher exe or ~/.dsh user data

English

Requirements

  • DeepSeek Harness (dsh) Web surface (dsh web), v0.1.0+
  • Node 22+ (uses the built-in fetch)

Installation

Add the plugin to your web profile, then register the row.

dsh plugin --profile web add ADDD1118/dsh-update

Append this to ~/.dsh/profiles/web/cordis.patch.yml:

- insert:
    - id: dsh-update
      name: dsh-update

Restart dsh web and hard-refresh the browser (Ctrl+F5). The button appears in the top-right of the session header (beside "Session log").

The plugin ships prebuilt (lib/index.js + lib/client.js), so no build step is required.

How the update works

  • When a newer release exists, the check reports it and the "New version" flow lets you schedule an update.
  • Closing dsh spawns a detached background updater that waits for the server to exit, takes an exclusive lock, then either runs launcher/update-dsh.ps1 (source/launcher setup) or npm install -g @deepseek-ai/dsh@<version> (npm install). The outcome is written to ~/.dsh/.dsh-update-state.json and shown as a toast on the next launch.

简体中文

功能

DeepSeek Harness (dsh) 的 Web 界面右上角新增 "检查更新" 按钮,并支持关闭后自动升级。

  • 会话头右上角灰色 "检查更新" 按钮 → 点击后变 "检查中"
  • 检查时显示蓝色转圈
  • 已是最新时弹出液态玻璃提示:"当前已是最新版本,版本号为 X"
  • 有新版时按钮变蓝色 "新版本",点击弹出居中更新对话框(含更新说明 + "更新"按钮)
  • 点 "更新" 记录待更新标记,关闭 dsh 后由分离后台进程自动升级;下次打开弹玻璃提示新版本
  • 自动检测更新机制:运行同级的 launcher/update-dsh.ps1(源码/启动器方式)或 npm install -g @deepseek-ai/dsh@<版本>(npm 方式);不触碰启动器 exe 和 ~/.dsh 用户数据

安装

将插件加入 web profile,并注册插件行。

dsh plugin --profile web add ADDD1118/dsh-update

~/.dsh/profiles/web/cordis.patch.yml 追加:

- insert:
    - id: dsh-update
      name: dsh-update

重启 dsh web 并强刷浏览器(Ctrl+F5)。按钮出现在会话头右上角("Session log" 旁)。

插件已预构建(lib/index.js + lib/client.js),无需再执行构建。

更新原理

  • 发现新版本后会提示,并通过 "新版本" 流程安排更新。
  • 关闭 dsh 会派生一个分离的后台进程:等待服务退出 → 加独占锁 → 运行 launcher/update-dsh.ps1(源码/启动器方式)或 npm install -g @deepseek-ai/dsh@<版本>(npm 方式)。结果写入 ~/.dsh/.dsh-update-state.json,下次启动时以玻璃提示展示。

License

MIT