前言¶
DeepSeek Harness(DSH)把能力拆成插件之後,入口會分散在左側欄頁面、右側欄標籤和各自菜單裏。聊天過程中若要換插件,往往要在主欄和側欄之間來回切,對話上下文也容易丟。插件塢(dsh-plugin-dock)不重寫各插件界面,只通過 DSH 公開插槽發現入口、用公開 API 打開它們,把「已安裝插件 + 快捷動作」收進右側欄面板,並在左側欄與輸入框提供總入口。
這是什麼¶
插件塢由維護者 Sun-0306 發佈,包名 dsh-plugin-dock,當前版本 0.1.0,MIT 許可證,屬於 DSH 社區目錄中的客戶端類插件(Host + Web Client 雙半插件)。
一句話定位:右側隨手調用面板 + 左側全局入口頁 + 輸入框一鍵按鈕。價值在於「不離開對話」——右欄與主欄會話並排,窄屏時右欄可全屏,寬度約 320–900 px 均可用。
- 目錄頁:https://www.skillhub.cn/plugins/Sun-0306/dsh-plugin-dock
- 源碼:https://github.com/Sun-0306/dsh-plugin-dock
入口與界面¶
同一產品有四個入口:
| 位置 | 作用 |
|---|---|
左側欄面板列表(id plugin-dock,與「插件」「定時任務」同級) |
全局門戶;默認點擊後回到對話並在右欄打開插件塢 |
右側欄標籤頁(type id dsh-plugin-dock) |
主工作區:搜索、快捷動作、右側面板、插件頁、已安裝插件 |
右欄「+」指南(order 45) |
從指南再次打開插件塢 |
輸入框工具行左側(id plugin-dock-launcher) |
一鍵在右欄打開插件塢 |
右欄面板自上而下包括:標題行(含搜索、刷新、設置頁入口)、快捷動作(內置「上下文歸納」示範跨插件調用)、右側面板(枚舉其他插件註冊的右欄 tab)、插件頁(左側欄整頁入口,可選「整頁打開」或「右側打開」)、已安裝插件(Host 目錄 API 清單,可展開詳情)、底部狀態(偏好同步、設置頁、刷新)。搜索框會同時過濾上述區塊;標籤頁 keepMounted,切走再回來保留搜索詞與展開狀態。
點左側欄「插件塢」時,默認不會停在整頁:leftEntryOpensDock 默認爲 true,會把主欄切回對話並在右欄打開插件塢。需要完整控制中心時,在面板內點「打開完整設置頁」或底部「設置頁」,才進入整頁(狀態條、目錄、設置、自檢、API 文檔等)。無會話、右欄打不開時會留在整頁並提示;約 0.5 秒內的導航不會被強行拉回(導航守衛)。
安裝與啓用¶
前置條件¶
- DSH 0.2.1 系 Web/Desktop 組合,desktop profile 需由 DeepSeek Harness 初始化;
- Host 半要求 Node ≥ 20(隨 DSH 運行,無需單獨起進程);
- 倉庫無構建步驟、無第三方依賴,可直接以本地目錄或打包 tgz 安裝。
安裝前請自行閱讀倉庫源碼與 MIT 許可證;插件在當前 DSH 進程權限下運行,與宿主共享 profile 目錄。
推薦方式¶
維護者在 README 中提供了腳本與等價 CLI,路徑需換成你本機上的插件目錄(勿使用 git clone 作爲唯一手段;按官方文檔用 link: 或 file: 安裝)。
桌面版若 npm 全局 dsh 拒絕寫入 desktop profile,應使用 DeepSeek Harness 自帶 CLI,例如:
"/Applications/DeepSeek Harness.app/Contents/Resources/runtime/cli/bin/dsh" \
plugin --profile desktop add "link:/你的路徑/dsh-plugin-dock"
等價核心命令(將路徑改爲本機目錄):
dsh plugin --profile desktop add link:/你的路徑/dsh-plugin-dock
確認 ~/.dsh/profiles/desktop/package.json 的 dsh.profile.bundles 中包含 "dsh-plugin-dock";若 CLI 未自動寫入,可手動追加。也可使用打包安裝包(版本以 dist 文件名爲準):
dsh plugin --profile desktop add file:/你的路徑/dsh-plugin-dock/dist/dsh-plugin-dock-0.1.0.tgz
倉庫內還提供 scripts/install-manual.sh、scripts/install-local.sh 等腳本(README 含完整步驟與備份 package.json.bak.<時間戳> 說明)。完全退出並重啓 DSH 後生效;Host 半可能 HMR 熱加載,客戶端界面通常需 ⌘/Ctrl+R 刷新 GUI。
快速自檢:不帶 token 請求 http://127.0.0.1:57598/dsh-plugin-dock/api/health 若返回 401 JSON,說明 Host 半已加載;帶頁面 token 時返回 ok:true。
卸載¶
dsh plugin --profile desktop remove dsh-plugin-dock
並從 dsh.profile.bundles 刪除 "dsh-plugin-dock" 後重啓。數據目錄 <profile>/.dsh-plugin-dock/ 默認保留;徹底清空可手動刪除,例如 ~/.dsh/profiles/desktop/.dsh-plugin-dock。
典型用法¶
聊天中調用¶
- 打開會話,點輸入框左側插件塢按鈕,或右欄「+」→ 插件塢;
- 在「快捷動作」點「一鍵歸納」:對當前會話做上下文歸納並顯示用量(需已安裝
dsh-context-summarizer); - 在「右側面板」點任意插件 chip:該插件在右欄打開,對話仍可見;
- 在「插件頁」點「整頁打開」進入該插件整頁,或點「右側打開」優先用右欄 tab。
收藏、最近與整頁¶
已安裝插件行可星標收藏;打開過的插件進入「最近」(最多 50 條)。偏好經 Host /api/prefs 持久化到 <profileDir>/.dsh-plugin-dock/state.json,Host 不可用時退回 localStorage 並在底欄顯示「本地緩存」。
整頁控制中心提供統一目錄、設置與自檢(/api/self-check)。常用設置項:
| 設置項 | 默認 | 說明 |
|---|---|---|
leftEntryOpensDock |
true |
左欄入口直接開右欄並回到對話 |
autoOpenDock |
true |
首次打開頁面時自動開一次右欄(有 localStorage 標記) |
showPageEntries |
true |
是否展示「插件頁」區塊 |
density |
comfortable |
comfortable / compact |
設計要點與適用場景¶
插件塢只枚舉入口、調用公開 API(如 ctx.sidebarRight.openTab、ctx.layout.selectPanel),不 import 其他插件內部模塊、不讀對方 DOM。某能力缺失時對應按鈕降級,不阻塞整個面板。
適合:插件裝得較多、希望在同一會話旁切換右欄工具或打開整頁設置的用戶。不適合把它當成各插件功能的替代品——具體能力仍由各插件提供。
「上下文歸納」快捷動作爲跨插件調用示例;未安裝歸納插件或缺少 token/會話時,卡片顯示空狀態與「打開插件頁」兜底,不會拖垮面板。
結尾¶
插件塢把 DSH 已安裝插件的入口收到右側欄,用左側欄門戶和輸入框按鈕縮短路徑,核心判斷是:調用插件的時機幾乎總在對話進行中。若你在用 DSH 0.2.1+ 桌面版並願意本地 link 或 tgz 安裝,可按 README 安裝後從輸入框左側按鈕或左欄「插件塢」試用。