dsh-restart-button:为 DeepSeek Harness 添加 Web 界面退出功能

DeepSeek Harness (DSH) 的 Web 界面通常以独立进程运行。在开发或运维场景中,有时需要完全停止 dsh web 进程以释放端口,或强制进行冷启动。dsh-restart-button 插件在 Web 界面的右下角添加了一个浮动退出按钮,允许用户通过图形界面完成这一操作。

核心功能

  • 浮动按钮:固定在右下角,悬停时呈红色高亮。
  • 确认机制:点击后弹出主题确认卡片,防止误操作。
  • 完全退出:触发 dsh web 进程终止,释放其监听端口。
  • 冷启动就绪:进程退出后,下次启动将作为冷启动。

安装与启用

使用 DSH 的插件管理工具安装:

dsh plugin --profile web add "dsh-restart-button"

安装完成后,重启 dsh web 进程即可生效。

使用流程

  1. 点击界面右下角的退出按钮。
  2. 在弹出的确认卡片中点击确认。
  3. dsh web 进程完全退出,端口释放。

工作机制与安全

  • 服务器端:注册了 POST /api/dsh-restart/quit 路由,该路由仅接受回环请求。在返回 200 响应后调用 ctx.appExit。
  • 客户端:使用原生 DOM 操作,不依赖 React,通过 window.__ModuleLoader__ 加载。
  • 超时机制:如果退出清理过程挂起,插件会在 8 秒后触发强制退出,以确保资源释放。
  • 安全性:不生成文件,不生成新进程,仅通过 DSH 的 ctx.appExit 退出。

前置要求

插件要求 DeepSeek Harness 版本不低于 0.1.1-rc.1。

总结

该插件通过简单的 UI 操作实现了进程的完全退出,适用于需要频繁重启或进行冷启动的场景。代码托管在 GitHub 上,遵循 MIT 许可证。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜