前言¶
DeepSeek Harness(DSH)採用插件化架構,一切皆插件。在桌面客戶端的使用過程中,有時需要重啓應用以應用更改或清理狀態。手動退出並重新啓動較爲繁瑣,且不利於自動化流程。dsh-plugin-restart-desktop 插件旨在解決這一痛點,通過側邊欄提供一個快速重啓入口。
是什麼¶
這是一個由 StabCut 維護的客戶端插件。其核心功能是在 DSH Desktop 側邊欄的底部設置行(齒輪右側)添加一個“重啓 Desktop”按鈕。點擊後通過調用底層 API 實現有序重啓,並顯示相應的等待層。
核心功能¶
- 界面集成:按鈕注入在側邊欄底部設置行內,位於齒輪右側,確保按鈕始終處於可視區,不會被操作堆疊裁剪。
- 二次確認與執行:點擊按鈕會彈出二次確認框,確認後調用桌面主進程的
desktopActions.requestRestart()方法(基於 Electron relaunch),並顯示“正在重啓…”等待層。 - 語言系統接入:按鈕文案接入 DSH 語言系統。用戶在設置 → 通用設置 → 語言中切換語言時,按鈕文本會自動切換(中文 / English)且立即生效。
- 作用域限制:該功能僅對
desktopprofile 生效。在headless webprofile 下,相關調用會返回{ ok: false }並彈出友好錯誤提示。
安裝與啓用¶
本插件僅適用於 desktop profile。
- 修改 profile 的
package.json,將插件添加到dependencies和dsh.profile.bundles:
// ~/.dsh/profiles/desktop/package.json
"dependencies": { "dsh-plugin-restart-desktop": "file:F:/path/to/dsh-plugin-restart-desktop" },
"dsh": { "profile": { "bundles": [ "@deepseek-ai/dsh-base", "@deepseek-ai/dsh-web-app", "dsh-plugin-restart-desktop" ] } }
- 進入 profile 目錄,執行安裝命令:
pnpm install
- 重啓 DSH Desktop,左下角設置行即可看到“重啓Desktop”按鈕。
典型用法¶
- 驗證插件安裝流程:通過 profile 註冊 →
pnpm install→ 重啓生效的步驟,快速驗證環境配置是否正確。 - 作爲自研插件的最小示例:參考其五件套包結構、
cordis.patch.yml的insert補丁、host/client 雙側與 Typert Remote 的寫法。
適用場景與注意¶
- 依賴項:插件依賴 peerDependencies,包括
@deepseek-ai/cordis、@deepseek-ai/dsh-typert-protocol、react等。 - 注意:僅桌面專用,headless web profile 下會返回失敗狀態。