前言¶
DeepSeek Harness(DSH)支持通過 skill 擴展模型能力。skill 落在磁盤上,常見來源包括工作區裏的 .dsh/skills、.agents/skills,用戶目錄 ~/.dsh 下的技能目錄,以及 DSH 自帶的一批。裝多了之後,「臨時不用」往往只能把目錄挪走,或去改 SKILL.md 裏的 frontmatter——前者容易忘掉位置,後者每次開關都要重新讀一遍聲明。另一個痛點是:很難一眼看出某個 skill 究竟是從哪條路徑被發現的。
dsh-plugin-skill-manager(維護者 tf961656585,分類爲客戶端插件)在 DSH 左側欄增加「技能」面板:按發現目錄分組列出 skill,逐行開關。關閉隻影響本機當前 DSH 進程,不刪文件、不改 SKILL.md,也不會改變其他客戶端讀到的同一批文件。
這是什麼¶
插件倉庫:github.com/tf961656585/dsh-plugin-skill-manager。目錄頁:skillhub.cn 上的條目。當前 package 版本爲 0.1.0,協議 MIT。
一句話:在 DSH 側欄裏把發現的每個 skill 列出來並逐個開關,關掉後它不再出現在模型可見的技能目錄裏,但磁盤上的 skill 文件保持不變。
核心功能¶
下面這些是 README 與 package 中已寫明的行爲。
- 按來源分組展示:項目(
.dsh/skills、.agents/skills)、用戶(~/.dsh及共享 agent 目錄)、隨 DSH 提供;組標題旁可顯示類似「3/8 已開啓」的計數。 - 本地開關,不改文件:關閉後模型技能目錄、
skill工具、/菜單都不再出現該項;面板裏仍保留該行並標爲已關閉,可隨時再開。若SKILL.md自身聲明停用,面板顯示「SKILL.md 中已關閉」並禁用開關,需改文件才能開啓。 - 實現方式:在每個 Agent 同作用域註冊 provider,對被關掉的 skill 返回
modelInvocable/userInvocable均爲 false 的條目;有消費者點名調用時返回明確說明,而非過期內容。 - 狀態持久化:寫入
<DSH_PROFILE_DIR>/skill-manager.json(無 profile 時依次退回$DSH_HOME、~/.dsh),內容爲被關閉的 skill 絕對路徑列表,原子替換;損壞時按空狀態處理並記日誌。 - 刷新:頂部「刷新」重新掃描目錄,新放入的 skill 會自動出現。
安裝與啓用¶
需先安裝 DeepSeek Harness。在 DSH 的插件安裝界面填寫倉庫地址:
github:tf961656585/dsh-plugin-skill-manager
也可填寫本機倉庫的絕對路徑。安裝完成後重啓 DSH,左側欄會出現「技能」入口;客戶端通過 cordis.patch.yml 注入側欄,並依賴 @deepseek-ai/dsh-client-ui-layout 與 @deepseek-ai/dsh-client-ui-sidebar。
典型用法¶
- 重啓 DSH 後,點擊左側欄「技能」圖標。
- 在對應分組下找到要停用的 skill,將行右側開關關閉;改動即時保存,無需再次重啓。
- 需要恢復時,在同一位置打開開關。
- 新拷貝或新建的 skill 若未立即出現,點頂部「刷新」或稍後重新進入面板。
適用場景與注意¶
適合:本機 DSH 上 skill 較多,需要按會話或按項目臨時收窄模型可見技能集,又不想動倉庫裏的 SKILL.md 或挪動目錄的用戶。
邊界與限制(來自 README):
- 隻影響 DSH;其他客戶端若直接讀同一文件,狀態由它們自己決定。
- 同一 skill 在不同工作區下的絕對路徑不同,會算作兩條記錄。
- DSH 啓動後纔出現的新技能目錄,可能要等「刷新」或下次進入面板才列出。
- 這是本地便利開關,不是權限隔離:能改配置的人仍可把 skill 重新打開;防的是模型「想起來」去調某個已關 skill,不是防人爲改回。
安全:插件在 DSH 進程權限下運行,安裝前建議瀏覽 host.js、client.js 等源碼並確認 MIT 許可證;社區目錄站點與 DeepSeek / 幻方無官方從屬關係,屬社區生態裏的獨立條目。
結尾¶
dsh-plugin-skill-manager 把「停用 skill」從改文件、挪目錄,收成側欄裏按路徑分組的一鍵開關,並與 DSH 的技能發現邏輯對齊,做到文件零修改、狀態本機持久化。