dsh-mode-skills:DeepSeek Harness 的技能管理插件

前言

在 DeepSeek Harness(DSH)中,技能是控制模型行爲、注入預設邏輯的重要手段。當技能數量增多、分佈在多個目錄、並在不同模式下啓用或禁用時,手動管理會變得繁瑣:容易遺漏、難以追蹤使用頻率,也難以統一更新。dsh-mode-skills 爲這些問題提供了一套集中的管理入口。

這是什麼

dsh-mode-skills 是一個爲 DeepSeek Harness 設計的技能管理插件。它由 xiaohai-78 維護,開源協議爲 MIT。插件在側邊欄添加「Skills」入口,與「Plugins」和「Automation tasks」並列,讓你能查看所有技能、按模式開關、搜索與打標籤、創建與編輯、導入與版本控制,並從 GitHub 或技能目錄安裝。

核心功能

側邊欄入口與概覽

在側邊欄,Skills 位置在 Plugins 和 Automation tasks 下方,不在設置頁。每個技能顯示名稱、來源(DSH 用戶目錄、共享目錄、項目、模式內置、已安裝包、GitHub 等)和描述。展開後可查看文件位置、使用說明以及該技能在每個模式中的狀態。

按模式開關技能

插件爲每個加載技能的模式提供開關列(最多顯示四列;窗口較窄或模式較多時,行會顯示啓用該技能的模式數量)。單擊即可在對應模式中開啓或關閉技能;顯示爲短橫線表示該模式不加載該技能。展開某一行後,可爲每個模式設置狀態:On、Manual、Model 或 Off。你也可以一次性在所有模式中開啓或關閉技能,並提供撤銷操作。

  • On:技能在該模式下默認可用。
  • Manual:模型看不到該技能,但你可以通過 /技能名 手動啓動。
  • Model:模型能看到該技能,但不會出現在 / 菜單中。
  • Off:技能在該模式下被禁用。

對於不加載技能的模式(如 Minimal)或模式不支持的技能,狀態無法設置,並會顯示原因。

搜索、打標籤與過濾

搜索框匹配技能名稱、描述、顯示名稱、標籤以及技能文件中的文本(命中文本會標註「Text match」)。你可以爲技能設置顯示名稱(例如中文別名)和標籤,並通過標籤進行過濾。這些設置保存在插件自身的設置中,不修改技能文件本身。

項目技能

在「Project」部分,你可以選擇一個項目文件夾(點擊 Show 按鈕時會檢查並給出最近使用的選項),並查看該項目的 .dsh/skills 和 .agents/skills 中的技能。針對項目命名的技能開關會應用於所有同名項目,而會話僅在運行於該項目時才加載該技能。

從 GitHub 安裝

通過「Import skills → GitHub」,可以輸入倉庫地址(github.com/owner/repo,或帶分支和文件夾的完整地址,或簡寫 owner/repo),插件會下載公開歸檔並列出其中的技能。對於包含腳本的技能會給出警告。只有選擇後纔會安裝。插件會記住提交信息,之後可通過「Check for updates」對比倉庫當前版本與已安裝技能的文件夾,使用「Update all」安裝更新(更新前會將當前文件保存爲版本)。目前不支持私有倉庫。

技能目錄與安裝

點擊右上角的「Skill store」按鈕,可以搜索 skills.sh(一個公開技能目錄,帶有安裝計數),並查看插件內置的一組知名倉庫。點擊「View and install」會打開對應倉庫,支持篩選長列表,通過 ESC 返回技能目錄搜索結果,確認後點擊「Import selected」完成安裝。只有確認後纔會安裝,安裝後可以繼續瀏覽或結束。

按模式使用統計

「Usage」頁面統計各模式在過去 7、30、90 或 365 天內加載技能的次數(包括模型調用 skill 工具和手動輸入 /技能名),並顯示最後一次加載時間。可以在頂部選擇一個模式,查看該模式加載了哪些技能、從未加載哪些技能。它列出在所有模式或指定模式下都沒有被加載的技能,並提供在該模式中關閉的選項(帶撤銷)。統計讀取會話歷史中的名稱和時間,不分析消息文本,最多讀取最近 400 條會話,耗時不超過 25 秒,已保存的會話在 10 分鐘內可複用。

Token 成本估算

每個技能及其所在模式的技能目錄都會顯示大致的 Token 成本(列標題顯示模式成本,切換技能時隨之變化)。列表支持按 Token 數排序,幫助你在不同模式中決定哪些技能可以關閉以節省成本。具體估算方法見插件文檔的 Development 部分。

處理 DSH 無法加載的技能

插件會列出在技能文件夾中存在 SKILL.md 但 DSH 無法加載的文件,並給出原因(如缺少 Front Matter、YAML 語法錯誤、名稱無效、舊字段拼寫錯誤等)。對於可自動修復的文件,會提供修復後的內容供預覽和保存,保存前會先備份原文件。

回收站與版本歷史

刪除的技能會進入回收站,可以恢復或永久刪除。刪除後立即出現的提示提供撤銷選項。回收站不會自動清空。

通過「New skill」可以創建新技能,輸入名稱、描述、所在文件夾(DSH 自身或與其他代理工具共享的文件夾)以及初始啓用的模式,然後打開 SKILL.md 編輯器。編輯 SKILL.md 之前會自動保存當前文件爲版本;如果在編輯過程中文件在其他地方被修改,會提示。未保存的編輯在摺疊行或切換頁面時保持,離開編輯器前會詢問。屬於已安裝包的技能不能修改。

通過「Files and export」可以查看技能文件夾中的其他文件,進行查看、編輯、添加或刪除操作(舊文件會保留在 .dsh-mode-skills/backups/ 中),將技能導出爲 .zip,或在 ~/.dsh/skills 和 ~/.agents/skills 之間移動。

「Import skills」可以列出 Codex(~/.codex/skills)、Claude Code(~/.claude/skills 和插件技能)以及其他遵循 ~/.<tool>/skills 命名約定的代理工具的技能,讀取任意文件夾,或拖入/選擇 .zip 或技能文件夾。選中的技能會被複制;遇到同名衝突時可以重命名導入或替換現有技能(替換前會保存版本)。導入的技能不保留來源信息。

導入的技能會記錄來源,後續當來源發生變化時,列表會標記爲「Source changed」,展開後可以再次導入。

通過「Save version」可以手動保存版本(可選添加備註),查看、恢復到文件(保存當前文件後恢復)或刪除版本,已刪除的版本編號不會複用。

插件本身提供更新提示,確認後會使用 DSH 的安裝程序進行更新。

當安裝了 dsh-modes 時,插件會將按模式設置、導入記錄和版本控制的操作委託給 dsh-modes,並在其 Skills 頁面中同步。此時,Manual 和 Model 等不在 dsh-modes 中的設置將不可用。之前僅此插件保存的設置會被置爲未使用,可通過「Hand over to Mode Manager」將 Off 狀態遷移過去。回收站、跳過文件檢查、Token 成本、上傳、GitHub 安裝、顯示名稱與標籤、項目文件夾、文件編輯器和其他代理工具的文件夾等功能保持不變。

典型用法

  1. 在側邊欄點擊「Skills」,查看當前所有技能及其在各個模式中的狀態。
  2. 在頂部搜索框輸入關鍵詞,按標籤篩選,或查看文本匹配結果。
  3. 選擇一個模式,在該模式下通過開關控制技能的啓用狀態,或展開某行爲每個模式單獨設置。
  4. 點擊「New skill」創建新技能,配置名稱、描述和啓用模式,然後編輯 SKILL.md。
  5. 通過「Import skills」從 Codex、Claude Code 或其他代理工具目錄導入現有技能,或從 GitHub 倉庫安裝技能。
  6. 在「Usage」頁面查看各模式加載技能的頻率,關閉未被使用的技能以節省 Token 成本。
  7. 定期從 GitHub 檢查更新,或從「Skill store」瀏覽並安裝新的技能。
  8. 使用「Files and export」管理技能文件夾中的其他文件,或導出技能爲 zip。

適用場景與注意

適合需要集中管理多個技能、在不同模式下靈活開關、追蹤技能使用頻率、從其他代理工具遷移技能、以及需要版本控制與批量更新的 DSH 用戶。插件以當前 DSH 進程的權限運行,安裝前應檢查源碼與許可證。

短結尾

dsh-mode-skills 爲 DeepSeek Harness 提供了一個統一的技能管理入口,幫助你在多個模式中高效開關、搜索、導入與版本化技能,並追蹤使用成本。訪問目錄頁和 GitHub 倉庫可獲取更多信息。

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

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

小夜