前言¶
在 DeepSeek Harness(DSH)裏同時開多個項目時,主窗口往往被編輯器或瀏覽器蓋住,很難一眼看出:當前哪條會話在跑、哪條在等你確認、子任務是否還在後臺。單獨做一個桌寵應用,又要自己維護啓動、退出和狀態來源,和 DSH 生命週期也容易脫節。
下面介紹社區插件 dsh-assistant(倉庫 vianvio/dsh-assistant)。它由 DSH 插件機制拉起,跟着 DSH 一起啓動和退出;展示層是 macOS 上的原生透明懸浮窗,狀態只來自 DSH 會話事件,不讀屏幕、也不根據模型名猜測進度。
這是什麼¶
DSH 小助手是 DSH 的客戶端類插件,維護者爲 vianvio。npm 包名 dsh-assistant,當前資料中版本爲 0.2.2,許可證 MIT,平臺要求 macOS 13+(Apple Silicon / Intel 通用二進制)。
分工可以概括爲:原生 Swift 負責桌面窗口與交互;Node 宿主插件負責接入 DSH 會話狀態,並包含素材管線與「今天干了什麼」日報能力。包裏自帶編譯好的 helper 與素材包(README 稱約 44MB,已知邊界裏 assets/pack 約 46MB),裝完即可使用,不需要 Xcode。
目錄頁:https://www.skillhub.cn/plugins/vianvio/dsh-assistant
狀態從哪裏來、頁面上看到什麼¶
插件不單獨作爲桌寵進程常駐,而是由 DSH 拉起。窗口爲透明、無邊框、始終置頂,切到 VS Code、瀏覽器或全屏應用後,仍能看到 DSH 當前是在思考、執行、等你確認還是已完成。
狀態映射爲七個耐久狀態(待機、思考、執行、等你確認、完成、出錯等),同一狀態會隨機換姿勢。多項目並行時,氣泡只給兩行關鍵信息:誰在跑、誰在等你。子 Agent 或後臺任務仍在進行時,對應項目仍顯示爲進行中;設置裏打開「含子 Agent」(includeSubagents)後,子會話單獨佔一格,父項目不再重複顯示同一份工作。
完成、出錯、等你確認會另起獨立通知,釘在寵物上方;點擊可將 DSH 窗口帶到最前並切到對應會話(macOS 上通過激活 DeepSeek Harness 本體)。
安裝與啓用¶
安裝命令須使用 README 原文,--profile 填你實際使用的 profile(桌面端爲 desktop,Web 端爲 web):
dsh plugin --profile desktop add dsh-assistant
命令背後是 pnpm;裝完包後會自動把聲明瞭 dsh.bundle 的依賴寫入 profile 的 dsh.profile.bundles,無需手改 package.json。
重啓 DSH 後,桌面右下角會出現寵物,設置左側導航多一頁「DSH小助手」。
升級:
dsh plugin --profile desktop update dsh-assistant
若希望跟蹤 GitHub main 最新提交(npm 爲發版快照):
dsh plugin --profile desktop add github:vianvio/dsh-assistant
本地改插件源碼時,README 建議 clone 後使用 link(資料中的示例路徑可按你的目錄調整):
git clone https://github.com/vianvio/dsh-assistant.git ~/dsh-assistant
dsh plugin --profile desktop add link:$HOME/dsh-assistant
peer 依賴:@deepseek-ai/dsh 版本範圍 >=0.1.5-rc.2 <0.3.0-0;Node 引擎 >=22。
設置與日常互動¶
設置頁「DSH小助手」集中了開關。資料中列出的字段與默認值如下:
| 設置 | 默認 | 說明 |
|---|---|---|
enabled |
開 | 關閉後立即收起桌面窗口 |
scale |
0.4 | 0.15 – 2.0;右鍵菜單有 40% / 55% / 70% / 100% |
bubbleEnabled |
開 | 是否顯示氣泡 |
bubbleTheme |
light |
淺色氣泡配黑字,深色配白字 |
reducedMotion |
關 | 減少動效 |
soundEnabled |
關 | 完成 / 出錯時響一聲 |
includeSubagents |
關 | 允許子 Agent 搶佔寵物狀態 |
backgroundSummary |
關 | 任務後臺總結(見日報一節) |
autoInteract |
開 | 狀態停留夠久則隨機互動 |
autoInteractSeconds |
10 | 判定間隔 5 – 300 秒,每隔該時長有 30% 概率觸發 |
寵物位置保存在本機 $DSH_HOME/dsh-assistant/layout.json;上述偏好由 DSH 存儲,自 0.2 起寫在 profile 補丁 $DSH_HOME/profiles/<profile>/cordis.patch.yml 的 dsh-assistant 段。
右鍵菜單含投餵點心、戳一下、誇誇它、摸摸頭、回到原位、今天干了什麼;左鍵點身體也會摸頭。
今天干了什麼(日報)¶
右鍵寵物 →「今天干了什麼」,或在設置裏點「生成日報」:按項目聚合回顧當天會話,產出「今天做了什麼 + 待辦」的 Markdown,長度有硬性上限,寫不下會自動重寫一輪。
生成完成後在寵物上方彈通知,點一下打開彈窗,可用「複製 Markdown」複製原文。生成過程使用隱藏會話,不出現在左側列表,也不彈系統通知。
打開 backgroundSummary(任務後臺總結)後,會話每次壓縮時在後臺提煉已完成內容,點日報時只補增量再彙總;該開關默認關(關着則每次重讀當天所有會話)。關着時彈窗底部會提示如何開啓;提示不進複製出來的正文。
素材與實現邊界¶
默認 88 段角色素材來自 Sutera-Diffusus/dsh-whale-musume(MIT);本項目對高度、WebP 烘焙與部分微動作序列做了加工,角色形象版權仍歸上游。原生懸浮窗路線參考 QCYTSN/dsh-dafeiyu(MIT)。
README 已知邊界(安裝前宜知曉):
- 平臺:原生 helper 目前僅 macOS(AppKit);Windows / Linux 需重寫面板或退回 Electron 子窗口(會失去「全屏應用之上」能力)。
- 分發:
.app爲 ad-hoc 簽名,瀏覽器下載可能遭 Gatekeeper 攔截。 - 素材體積:
assets/pack約 46MB;源碼倉內assets/motion另有大量源 MP4 且已 gitignore。
僅在你修改原生端或更換素材時才需要本地構建,例如:
npm run build:helper # 需 Xcode 命令行工具
npm run build:pack # 重新生成素材包
npm run verify # 自檢素材 / helper / 模塊 / 握手 / 狀態歸約
換角色:把圖放入目錄,改 scripts/build_pack.py 頂部 STATE_ASSETS / ACTION_ASSETS,再執行 npm run build:pack。
適用場景與安裝注意¶
適合:在 macOS 桌面端長期使用 DSH、希望不切換窗口也能看到真實會話狀態,並需要按項目彙總當日工作的開發者。
注意:DSH 插件與 DSH 主進程同一權限運行;安裝前應閱讀 倉庫源碼 與 THIRD_PARTY_NOTICES.md,確認許可證與第三方素材署名符合你的要求。社區目錄 SkillHub 爲獨立站點,與 DeepSeek / 幻方無官方從屬關係,不宜當作官方應用商店。
經過上面的步驟,你可以在 DSH 生命週期內獲得一塊始終可見、由會話事件驅動的桌面伴侶,並在需要時用日報把多項目進展收成一份 Markdown。