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 許可證。

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

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

小夜