dsh-desktop-windowos:爲 DSH 提供 Windows 桌面殼

前言

用 DeepSeek Harness(DSH)做智能體開發,常見做法是終端裏跑 dsh web,再在瀏覽器裏打開 http://127.0.0.1:3080/。這條路徑能用,但有幾個實際摩擦:瀏覽器標籤容易被關掉,後臺服務還在跑卻不容易感知;任務跑完沒有桌面級提醒,得切回頁面看狀態;想常駐後臺又得自己管進程和托盤。

下面介紹社區插件 dsh-desktop-windowos(維護者 RAFOLIE,GitHub 倉庫 RAFOLIE/dsh-desktop-windowos)。它把 DSH 的 webchat 包進一個 Windows 原生窗口,托盤常駐,任務完成時彈系統通知,交付物是單個約 4.5 MB 的免安裝 exe。

這是什麼

dsh-desktop-windowos 是 DSH 的 Windows 桌面殼,技術棧爲 Tauri v2 + React 18 + TypeScript。應用啓動後自動拉起本機 DSH Web 服務,窗口內通過 iframe 嵌入 http://127.0.0.1:3080/ 的原生 webchat 界面——不自創聊天 UI,也不做反向代理。

在 SkillHub 社區目錄中歸類爲客戶端插件;截至撰寫時,GitHub 上約 11 stars、2 forks。插件 npm 包名爲 dsh-desktop-plugin,許可證 MIT;應用本體與 npm 插件是兩條獨立版本線(npm 現 1.5.10,應用現 v1.6.31,不一致是有意設計)。

核心功能

開箱即用與 DSH 發現

雙擊 exe 後,殼按候選鏈自動啓動 DSH:環境變量 DSH_CMD → 自定義路徑 → PATH 全局 dsh web → 項目本地 node_modules\.bin\dsh.cmd → 已確認過的 npx。全都找不到時,啓動頁提供一鍵全局安裝、npx 下載、手動填路徑等選項,不會未經同意靜默下載。

DSH rc.8+ 本地運行會自動開瀏覽器,殼會按版本探測並追加 --no-open 抑制。若 3080 端口已有 DSH 在跑,應用直接附加連接,退出時也不會動別人先啓動的實例。

窗口、托盤與通知

  • 自繪標題欄:無邊框窗口,居中膠囊控件點擊可打開環境管理面板;拖拽、最小化、最大化、關閉自繪,Win 貼靠與邊緣縮放保留。
  • 托盤常駐:點 X 只是隱藏到托盤,DSH 後臺繼續運行;雙擊托盤或右鍵「Open DSH」喚回窗口。
  • 任務完成通知:監聽 ws://127.0.0.1:3080/api/events.host,會話從運行中轉爲空閒且主窗口隱藏時,彈 Windows 系統通知,帶「打開窗口」和「明白」兩個按鈕。

環境管理與運維

環境管理面板提供搜索、環境 / 日誌 / 更新三標籤,展示運行狀態、DSH 內核與組件版本、位置與存儲等信息。日誌體系只記殼自身事件(dsh.log),ComfyUI 式逐行着色;「更多 → 導出診斷信息」可一鍵組裝 markdown 診斷包。

更新中心分兩張卡:一張管全局 @deepseek-ai/dsh 包升級,一張管殼自身(穩定版 / 預發佈通道、自動更新開關)。應用啓動時還會把已安裝的 dsh-desktop-plugin 對齊到 npm 最新版(只升不降)。

故障處理

DSH 意外退出時自動重拉並刷新界面,連續快速崩潰會熔斷報錯。缺 profile 包時自動帶冷卻期旁路補裝;settings.yaml 被寫壞時自動備份修復。托盤提供「重啓 dsh web(後端)」「前後端重啓」;僅托盤「退出(關閉 DSH)」才真正退出並清理進程樹。

安裝與啓用

前提條件

目標機器需已具備(exe 不攜帶):

要求
Node.js ^22.19 或 ≥ 24(必須)
DSH 可選:全局 npm i -g @deepseek-ai/dsh(推薦)、本地 pnpm add @deepseek-ai/dsh、或首次啓動走 npx
WebView2 Windows 11 自帶

方式一:通過 DSH 插件安裝(推薦)

在 DSH 環境中執行:

dsh plugin --profile web add dsh-desktop-plugin

重啓 DSH 後,插件自動把 exe 裝到 %LOCALAPPDATA%\Programs\dsh-desktop-windowos\,並在桌面生成「DeepSeek Harness」(桌面應用)和「DeepSeek Harness Web」(瀏覽器打開前端)兩個快捷方式。之後每次激活還會自動升級 exe 到最新 Release。對話裏可說「打開桌面應用」,通過 desktop_launch 工具直接拉起。

首次運行 exe 可能觸發 Windows SmartScreen(未簽名),點「更多信息 → 仍要運行」即可。

方式二:直接下載 exe

  1. GitHub Releases 下載 dsh-desktop-windowos-v<版本>.exe,雙擊運行。
  2. 若本機已有全局或本地 DSH,或 3080 已有服務在跑,會自動發現或附加。
  3. 若本地沒有任何 DSH,啓動頁可選「一鍵全局安裝並啓動(推薦)」或「下載並啓動(npx,備選)」。

典型用法

便攜模式:exe 與本地 DSH 同目錄

在任意文件夾安裝 DSH,把 exe 放進該文件夾根目錄,雙擊即可——應用自動發現旁邊的 node_modules\.bin\dsh.cmd,零下載、零配置:

pnpm add @deepseek-ai/dsh
# 或將 exe 放到已執行 npm i @deepseek-ai/dsh 的目錄根下

日常操作

  • 關閉窗口:DSH 繼續在托盤運行,雙擊托盤圖標喚回。
  • 任務跑完:收到系統通知後點「打開窗口」聚焦,或點「明白」收起。
  • 需要排障:打開環境管理面板 → 日誌標籤查看殼事件,或「更多 → 導出診斷信息」複製給 AI。
  • 更新 DSH 或殼:環境面板「更新」標籤,選通道後點「立即更新」。

從源碼構建(Windows 開發者)

需 Rust msvc 工具鏈 + VS 2022 生成工具:

pnpm install
pnpm tauri dev      # 開發模式
pnpm tauri build    # 產物: src-tauri\target\release\dsh-desktop-windowos.exe

適用場景與注意

適合誰

  • 主要在 Windows 上用 DSH,希望 webchat 像桌面應用一樣常駐、有托盤和任務完成提醒。
  • 不想每次手動開瀏覽器標籤,又需要環境面板統一管理 DSH 版本、日誌和自更新。
  • 接受單文件便攜 exe,數據與日誌寫在 %LOCALAPPDATA%\dsh-desktop\

使用前注意

  • 插件以當前 dsh 進程權限運行;安裝前應自行檢查 源碼倉庫 與 MIT 許可證,確認符合你的安全策略。
  • 僅支持 Windows;Node.js 版本必須滿足 DSH 要求(^22.19 或 ≥ 24)。
  • SkillHub 是社區插件目錄,與 DeepSeek / 幻方無官方從屬關係;本插件亦非官方出品。
  • 應用自動更新默認只追 GitHub releases/latest 穩定版;嚐鮮預發佈需手動下載或在更新中心切換通道。

結尾

dsh-desktop-windowos 把 DSH 的 webchat 裝進 Tauri 桌面殼:自動發現或拉起本機 DSH、托盤常駐、任務完成系統通知、環境面板管版本與日誌,單個 exe 約 4.5 MB 免安裝。若你已在用 DSH 的 web profile,一條插件命令即可接入桌面體驗。

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

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

小夜