前言¶
DeepSeek Harness (DSH) 的桌面端默認行爲中,點擊窗口關閉鍵通常只會將應用縮至托盤,進程仍在後臺運行。對於需要徹底結束進程的場景(如系統維護、清理內存或特定重啓流程),這往往不夠直接。dsh-plugin-power-button 插件在側邊欄用戶按鈕右側添加了獨立的關機與重啓入口,實現一鍵完全退出並驗證重啓狀態。
功能概覽¶
- 位置與入口:按鈕位於側邊欄底部用戶(賬號)按鈕的最右側,點開後僅提供「關機」和「重新啓動」兩個選項。
- 完全退出:點擊「關機」會結束 Electron 外殼進程,窗口和任務欄托盤圖標同時消失,不同於常規的窗口最小化。
- 自動重啓與驗證:「重新啓動」先完全退出,待 Web 端口釋放後自動拉起 DSH,並驗證端口是否重新監聽。
- 工作確認:若檢測到正在運行的會話、排隊消息或後臺任務,會先彈出二次確認框;即使狀態查詢失敗也視爲有工作,要求確認。
- 環境限制:僅限 Windows 10/11 桌面端。非桌面端(如
dsh web)或非 Windows 平臺會自動隱藏按鈕並拒絕接口調用。 - 安全機制:接口要求
application/jsonContent-Type、同源請求以及攜帶啓動時生成的 nonce,防止跨站腳本惡意關機。使用 Node 腳本而非 PowerShell 執行,規避安全軟件攔截。
安裝與啓用¶
在使用前,請確保環境滿足以下依賴:
* Node.js >= 20
* DSH 桌面端版本 >= 0.2.0-rc.1
執行以下命令安裝插件:
dsh plugin --profile desktop add github:WovenJunct/dsh-plugin-power-button
安裝後需要重啓 DSH 並刷新頁面,側邊欄左下角用戶按鈕右側會出現 ⏻ 按鈕。
注意事項¶
- 打斷回覆:強制結束進程會中斷正在進行的回覆,會話日誌可能丟失最後一段。
- 重啓風險:在極端情況下(如安全軟件攔截助手進程),重啓可能只關不開,需查看日誌。
- 日誌位置:所有操作日誌記錄在
%USERPROFILE%\.dsh\dsh-plugin-power-button.log。
總結¶
該插件通過進程歸屬控制與安全接口校驗,爲 Windows 桌面端用戶提供了一個可控的進程管理入口。詳情請參考 GitHub 倉庫。