前言¶
DSH 的插件生態裏,很多能力都可以圍繞 Web UI 做擴展,但窗口啓動、托盤、通知和關窗退出這類桌面行爲,通常不在 Web 服務本身的處理範圍內。dsh-native-launcher 針對這部分做一層適配:在 Windows 上把 DeepSeek Harness Web UI 的啓動入口、窗口行爲、托盤通知和卸載清理整理成一組可開關的功能。
它由 ingleav626-art 維護,使用 MIT 許可證。它不替換官方 Web UI,也不引入 Electron / Python / WebView2 等重型桌面端或運行時,而是在 DSH 官方插件生態及其官方基礎依賴上,用 Windows 原生機制補上桌面 App 式的一鍵啓動體驗。
這是什麼¶
一句話:dsh-native-launcher 是一個面向 Windows 的 DSH 插件,用來把 WebUI 啓動成桌面應用式入口,並提供托盤、通知、設置頁和一鍵卸載。
它主要解決這幾類操作:
- 不想每次手動跑命令啓動 WebUI。
- 希望雙擊桌面圖標即可啓動或回到已有窗口。
- 希望任務完成、出錯、等待審批時有系統通知。
- 希望關閉窗口時的服務退出行爲可配置。
- 希望卸載時能清理插件生成的文件、快捷方式、註冊表項和 profile 條目。
核心功能¶
桌面快捷方式¶
安裝後會生成桌面快捷方式。雙擊可啓動或返回 WebUI。設置頁裏可以自定義快捷方式名稱,也可以強制重建。
獨立應用窗口¶
可以把 WebUI 安裝爲桌面應用。應用窗口擁有獨立任務欄圖標,也沒有瀏覽器地址欄。如果沒有安裝應用,插件會按設置頁裏的打開方式回退。
窗口自動聚焦¶
如果 WebUI 已經在運行,再次點擊快捷方式或托盤時,插件會把已有窗口切換到前臺,而不是再開一個實例。
系統托盤與任務通知¶
插件提供常駐托盤圖標,入口包括“打開 WebUI”和“退出”。任務狀態變化會通過 Windows 原生通知提醒,覆蓋任務完成、出錯、中止、被阻塞、達到上限,以及等待審批、等待回答、計劃審閱等狀態。
通知以托盤通知爲主通道,瀏覽器通知僅作兜底。Windows 可能會靜默屏蔽短時間內的連續通知,測試通知時建議間隔幾秒再點。
關閉語義¶
當所有窗口都關閉,並且沒有運行中任務時,服務會自動停止;如果仍有任務在運行,服務會等待任務完成後再停止。設置頁裏可以關閉“關窗自動退出”,讓服務在關窗後繼續常駐。
設置頁與模塊化¶
設置頁提供可視化配置,並持久化保存。可配置項包括:
- 啓動命令
- 端口
- 快捷方式名稱
- 打開方式
- 托盤開關
- 通知開關
- 關閉語義參數
- 各功能模塊開關
附加功能以獨立模塊形式提供,可以單獨啓用或停用。如果已經使用其他同類插件,可以在設置頁關閉對應模塊,減少功能衝突。
一鍵卸載與日誌¶
設置頁提供一鍵卸載:停止服務、移除桌面快捷方式、清理生成文件與註冊表項、從 profile 移除插件條目,並可選擇清除個性化配置。
啓動、運行、卸載過程都有結構化日誌。卸載日誌位於:
%USERPROFILE%\.dsh-webui-launcher\uninstall.log
該日誌不會被卸載清理。通知問題可查看:
~/.dsh-webui-launcher/tray-notify.log
安裝與啓用¶
平臺與版本要求¶
僅支持 Windows 10/11,x64。macOS / Linux 請勿安裝。
需要:
dsh >= 0.1.0-rc.8
如果 dsh 版本過低,可執行:
npm install -g @deepseek-ai/dsh@0.1.0-rc.8
從 rc.8 開始,dsh web 默認會打開瀏覽器;dsh-native-launcher 通過 --no-open 避免插件和官方行爲同時打開頁面導致雙開。
dsh plugin 命令依賴 pnpm。如果提示:
pnpm is not recognized
可執行:
npm install -g pnpm
或:
corepack enable pnpm
@deepseek-ai/schemastery 是 DSH 官方基礎依賴,會隨插件安裝聲明;它用於設置頁 schema,不屬於額外社區功能框架。
方式一:npm 安裝¶
npm install -g dsh-native-launcher
dsh plugin --profile web add dsh-native-launcher
方式二:源碼安裝¶
git clone https://github.com/ingleav626-art/dsh-native-launcher
dsh plugin --profile web add <path-to-repo>
源碼安裝後,重啓 dsh web 後生效。
安裝後檢查¶
安裝並重啓後,桌面應出現快捷方式,右下角托盤應出現圖標。雙擊快捷方式即可啓動或返回 WebUI。
典型用法¶
啓動 WebUI¶
安裝後,直接雙擊桌面快捷方式。如果 WebUI 未運行,會啓動服務;如果已經運行,會切換到現有窗口。
安裝爲桌面應用¶
用普通標籤頁打開:
http://127.0.0.1:3080
在頁面提示框中點擊安裝。如果瀏覽器沒有彈出安裝提示,可在 Edge 菜單中進入:
⋯ → 更多工具 → 應用 → 將此站點安裝爲應用
安裝完成後,快捷方式會優先打開獨立應用窗口。
修改設置¶
設置頁可配置啓動命令、端口、快捷方式名稱、打開方式、托盤開關、通知開關、關閉語義參數,以及各功能模塊開關。修改保存後會持久化。
處理通知未收到¶
如果托盤通知沒有收到,可先確認托盤圖標存在,再查看:
~/.dsh-webui-launcher/tray-notify.log
在設置頁發送測試通知時,建議間隔幾秒再點,避免 Windows 短時間內屏蔽連續通知。
修改端口後舊應用打不開¶
修改 port 後,舊 PWA 仍可能指向舊端口。啓動時可能回退到 --app 模式,功能仍可用。舊應用需要到:
edge://apps
手動卸載後再安裝。
不想關窗退出服務¶
如果希望關閉窗口後服務繼續運行,在設置頁關閉“關窗自動退出”。之後需要手動使用托盤裏的退出入口停止服務。
快捷方式依賴全局 dsh 命令¶
快捷方式通過 dsh 命令啓動服務,依賴 PATH 中的全局 dsh 命令。v0.2.1 起可自動回退 npx 啓動並顯示提示;如果平時未全局安裝 dsh,仍建議確認 PATH 中的 dsh 命令可用。
卸載¶
推薦在設置頁執行一鍵卸載。它只會移除本插件提供的桌面化增強組件;dsh 服務本身與其數據不受影響。可選擇是否清除個性化配置。
手動備用方式:
dsh plugin --profile web remove dsh-native-launcher
並清理:
~/.dsh-webui-launcher
以及桌面上的 DSH WebUI 快捷方式。卸載日誌仍保留在:
%USERPROFILE%\.dsh-webui-launcher\uninstall.log
適用場景與注意¶
適合:
- Windows 10/11,x64 上的 DSH WebUI 用戶。
- 希望桌面快捷方式、托盤、通知和關窗退出統一管理。
- 希望保持輕量,不引入 Electron / Python / WebView2。
- 希望功能可單獨開關,減少與其他插件衝突。
注意:
- 僅限 Windows;macOS / Linux 不要安裝。
- dsh 版本需要
dsh >= 0.1.0-rc.8。 dsh plugin依賴 pnpm。- 托盤通知是主通道,瀏覽器通知是兜底;短時間連續通知可能被 Windows 靜默屏蔽。
- 修改端口後,舊 PWA 可能仍指向舊端口。
- 一鍵卸載只移除桌面化增強組件,不影響 dsh 服務本身與數據。
- 插件會在當前 dsh 進程權限下運行。安裝前建議檢查源碼、依賴聲明和 MIT 許可證。
鏈接¶
目錄頁:
https://www.skillhub.cn/plugins/ingleav626-art/dsh-native-launcher
GitHub:
https://github.com/ingleav626-art/dsh-native-launcher