前言¶
在 DSH Web UI 里调试时,经常会遇到需要重新拉起 dsh web 的情况:页面状态需要重置、本地修改后需要重新加载,或者希望少切回终端执行命令。dsh-web-restart 把这类操作收敛为界面里的一个按钮:在侧边栏底部、Settings 旁边增加一个圆形重启按钮,单击后直接重启 dsh web 进程。
这是什么¶
dsh-web-restart 是面向 DeepSeek Harness Web UI 的一个小型插件。它给 Web 侧边栏底部增加一个重启入口,用于单击重启 dsh web 进程,不提供二次确认步骤。插件以 bundle-layer plugin 形式安装,因此它触发的 DSH 重启后,按钮本身仍然保留。
仓库地址为:
https://github.com/1123762794/dsh-web-restart
许可证为:
MIT
核心功能¶
- 在侧边栏底部、Settings 旁边增加小圆形重启按钮。
- 单击按钮即可重启
dsh web进程,没有确认步骤。 - 重启进行中会显示反馈;如果一次重启尚未完成,第二次点击会被拒绝。
- 插件持久存在,作为 bundle-layer plugin 可经受它触发的 DSH 重启。
- 插件用于显示 DSH 的存活/状态,轮询接口为:
GET /dsh-health
轮询间隔为 5 秒。
安装与启用¶
从 GitHub 安装¶
已核实的安装命令使用占位 YOUR_OWNER,执行前需要替换为实际仓库所有者。本文给出的仓库地址为:
https://github.com/1123762794/dsh-web-restart
安装命令如下:
dsh plugin --profile web add github:YOUR_OWNER/dsh-web-restart
执行后,需要再重启一次 dsh web,让 bundle 层加载。
手动编辑 profile 文件¶
如果不用命令安装,也可以手动编辑 web profile 文件。
1、在下面的文件中加入依赖:
~/.dsh/profiles/web/package.json
{
"dependencies": {
"dsh-web-restart": "github:YOUR_OWNER/dsh-web-restart"
}
}
2、在下面的文件中加入插件插入行:
~/.dsh/profiles/web/cordis.patch.yml
- insert:
- id: dsh-web-restart
name: dsh-web-restart
3、在 profile 目录执行依赖安装:
pnpm install
4、再重启一次 dsh web。
典型用法¶
安装并重启 dsh web 后,可以在 Web UI 的侧边栏底部看到重启按钮。单击按钮后,dsh web 进程会被重启;页面通常会断开约 15–20 秒,完成后刷新页面即可恢复。资料说明会话会保存在磁盘上,并自动恢复。
在调试本地改动时,可以检查下面两个文件:
node --check lib/index.js
node --check lib/client.js
组成与文件¶
下面列出已核实的文件与职责。
lib/index.js
lib/client.js
cordis.patch.yml
lib/index.js:宿主侧文件,负责触发重启。资料说明宿主侧会在danger-full-access沙箱策略下启动重启脚本。lib/client.js:客户端文件,负责注册侧边栏按钮并轮询GET /dsh-health。cordis.patch.yml:bundle 层插入行,用于把插件挂载到 web profile。
适用场景与注意¶
版本与依赖:
DeepSeek Harness 0.1.0-rc.6
@deepseek-ai/cordis ^4.0.1
适合以下场景:
- 使用 DeepSeek Harness 的 web profile。
- 希望把
dsh web的重启动作放到 Web UI 中完成,减少切换到终端。 - 需要看到 DSH 基本存活/状态,避免误以为页面还可用。
使用前需要注意:
- 该插件偏 Windows:重启会通过一个独立的隐藏 PowerShell 进程启动
dsh web,以便在 harness 进程被终止后脚本仍可继续运行。 - 重启脚本路径按作者机器硬编码为:
D:\1\dsh-web-host.ps1
如果你的环境不同,需要 fork 仓库后调整路径,或替换 lib/index.js 中的命令。
- 宿主侧在
danger-full-access沙箱策略下启动重启脚本。由于这类操作会由 dsh 宿主侧触发,应将其视为以当前 dsh 进程可获得的权限运行;安装前建议检查源码、许可证,并确认你信任该仓库。 - 重启期间页面会断开约 15–20 秒;完成后需要刷新页面。会话保存在磁盘上,并自动恢复。
结尾¶
dsh-web-restart 把 dsh web 的重启动作从终端移到 Web UI 侧边栏:单击触发、有进行中反馈、重启后按钮仍在,并能显示 DSH 的存活/状态。许可证为 MIT,仓库地址为:
https://github.com/1123762794/dsh-web-restart
如果通过独立社区目录检索,可以按插件名 dsh-web-restart 查找;本文未提供已核实的目录页链接。