前言¶
DeepSeek Harness Desktop(DSH)的核心理念是“一切皆插件”。在開發智能體時,管理 MCP 服務器和 Skill 通常需要手動編輯配置文件,這種方式不僅繁瑣,還容易出錯。dsh-skill-mcp-manager 爲 DSH 提供了一個設置頁內的統一管理界面,用於處理 MCP 服務器與 Skill 的增刪改查,無需手動修改 DSH 源碼。
這是什麼¶
這是爲 DeepSeek Harness Desktop 提供設置頁內的 MCP server 與 Skill 統一管理界面的插件,由用戶 kiligzzz 維護。它基於官方 DSH 雙面插件機制(host + 瀏覽器端)實現,通過 profile bundle 加載,隨 DSH 升級而存續。
核心功能¶
該插件主要包含以下功能模塊:
-
Skill 管理
- 列出所有 skill,支持按名稱、描述搜索,顯示啓用狀態。
- 開關:通過修改 frontmatter 的
disable-model-invocation標記實現啓用/禁用。 - 刪除:真實條目刪除文件/目錄;軟鏈接(symlink)只刪除鏈接本身,不追目標。
- 導入:上傳
.md文件,名稱自動規範化爲 kebab-case。 - 文件夾同步:使用
ln -s建立軟鏈,源文件夾改動實時生效。 - 編輯器打開:macOS 使用
open,Linux 使用xdg-open。
-
MCP 管理
- 新增、編輯、刪除 server,支持
stdio(命令/參數/環境變量/工作目錄)與streamable-http(URL/請求頭)兩種傳輸方式。 - 按會話漸進加載:啓動時不連接 MCP,也不注入原生工具 Schema。模型命中 Server 描述後調用
mcp_session(load),再通過@deepseek-ai/dsh-mcp-client加載該 Server 的工具。 mcp_session支持load/unload/status,不同會話互不影響。- 直接編輯
~/.dsh/mcp.json後,描述目錄會在 3 秒內刷新,且只安全重連已加載過該 Server 的會話。
- 新增、編輯、刪除 server,支持
-
能力清單 prompt 段
- 每個會話的系統提示詞都會追加緊湊的
capability:mcp段,僅列出已配置 Server 的名稱、description 與是否允許加載,模型需要時才加載完整工具 Schema。
- 每個會話的系統提示詞都會追加緊湊的
安裝與啓用¶
該插件需要支持 profile bundle patch 的 DSH 環境。在 profile 的 package.json 中添加以下依賴與配置:
{
"dependencies": {
"@kiligzzz/dsh-skill-mcp-manager": "^0.3.0"
},
"dsh": {
"profile": {
"bundles": ["@kiligzzz/dsh-skill-mcp-manager"]
}
}
}
安裝後重啓 DSH 即可。插件自帶 cordis.patch.yml,無需手寫 cordis.patch.yml insert 行。
典型用法¶
- 漸進式加載:模型命中 Server 描述後調用
mcp_session(load)加載工具。 - 配置熱更新:直接編輯
~/.dsh/mcp.json後,描述目錄會在 3 秒內刷新,且只安全重連已經加載過該 Server 的會話。 - 軟鏈同步:將源文件夾裏的 skill 逐個
ln -s軟鏈到~/.dsh/skills,源改動實時生效。
注意事項¶
- 該插件以當前 DSH 進程權限運行,安裝前應檢查源碼與許可證。
- 依賴環境:需要支持 profile bundle patch 的 DSH 環境。
- Host 依賴:Host 半區依賴
loader服務從 DSH 運行時解析@deepseek-ai/dsh-mcp-client(該包不隨此插件發佈)。 - 瀏覽器端依賴:瀏覽器端依賴
slots服務(settings.section槽位)。 - 配置格式:
~/.dsh/mcp.json以 map 格式{ "name": { ... } }寫入;舊版{ "servers": [...] }數組格式首次讀取時自動遷移。 - 破壞性操作:刪除或開關 skill 會寫
~/.dsh/skills下的文件,此類操作 UI 會先確認。
結語¶
dsh-skill-mcp-manager 通過統一界面解決了 DSH 環境下 Skill 與 MCP Server 管理的配置文件編輯問題,並通過漸進式加載優化了資源佔用。更多細節與源碼可參考 GitHub 或 技能社區目錄。