BaoBao1996121/dsh-restart-ui

BaoBao1996121/dsh-restart-ui

为 DSH Web 界面添加基于本机回环接口的重启按钮,按当前进程的可执行文件、参数和工作目录请求重新启动。

UI 增强deepseek-harnessdsh

dsh-restart-ui

English

一个小型 DeepSeek Harness 插件:在 Web 界面会话标题栏中增加一键重启按钮。

插件会复刻当前 DSH 进程真实使用的 Node、启动参数和工作目录,因此源码启动、 已安装 CLI、便携 Node 与自定义 profile 都不需要写死机器路径。

安装

把固定版本安装到 Web profile:

dsh plugin --profile web add 'github:BaoBao1996121/dsh-restart-ui#v0.1.1'

如果你从 DSH 源码仓库启动,请在源码仓库中执行:

corepack pnpm dsh plugin --profile web add 'github:BaoBao1996121/dsh-restart-ui#v0.1.1'

安装后重启 DSH。会话标题栏的工具区域会出现 ⟳ 重启 按钮。

工作原理

  • 浏览器端只增加一个按钮,并调用同源 POST 接口。
  • Host 接口只接受本机回环地址请求。
  • 包内 Node 小程序等待旧进程退出,再使用相同的可执行文件、Node 参数、CLI 参数 和工作目录启动新进程。
  • 接口注册由插件生命周期托管;禁用插件时会一并卸载。

仓库直接提交构建后的 lib/ 文件。因此从 GitHub 安装时不需要执行生命周期构建 脚本,也不需要给 pnpm 增加构建权限。

开发与检查

需要 Node.js ^22.19.0 || >=24.0.0 与 pnpm 11。

corepack pnpm install --frozen-lockfile
corepack pnpm check

卸载

dsh plugin --profile web remove dsh-restart-ui

安全边界

重启 DSH 会以当前用户权限执行程序。浏览器不能传入命令或文件路径;插件只启动包内 固定的小程序,并复用当前 DSH 进程的启动信息。请审阅并固定你安装的版本。

许可证

MIT。本项目是独立社区插件,与 DeepSeek 无隶属或官方背书关系。