前言¶
在 DeepSeek Harness(DSH)裏給 Agent 掛很多第三方插件工具和 MCP 工具時,會話開頭的工具列表會變長。不常動用的專用工具往往還配套操作說明、約束和示例;若全部塞進初始上下文,既佔名額,也容易讓模型在通用對話裏誤觸。
常規做法是「先搜能力 → 發現工具 → 再調用」。本插件走另一條工作流設計:「先加載任務 Skill → 同時拿到指引與被分配的工具 → 再調用」。README 明確說明這是工作流層面的取捨,並未與工具搜索做過準確率、延遲或成本的對比基準測試。
下面介紹維護者 NyxJae 發佈的 dsh-skill-gated-tools(分類:工作流)。它面向 DSH 的智能體與插件使用者,把專用工具默認藏起來,在成功加載指定 Skill 後於同一會話、同一輪對話中立即可用。
這是什麼¶
Skill-gated tool discovery for DeepSeek Harness:按需通過 Skill 暴露工具。支持第三方插件工具與 MCP 工具;可爲單個工具設置可見性規則。新 Agent 會話開始時,被設爲「Skill-gated」的工具不可見;對應 Skill 加載成功後,工具在同輪即可調用,無需新開會話。
- 目錄頁:skillhub.cn 插件頁
- 源碼與文檔:GitHub — NyxJae/dsh-skill-gated-tools
- npm 包名:
dsh-skill-gated-tools(package.json版本 0.1.0)
Claude Skill 發現依賴 DSH 自帶的文件系統 Skill 提供方;README 要求 DSH 0.2.2-rc.1 或兼容版本(peerDependencies 中 @deepseek-ai/dsh-skill-filesystem 爲 ^0.2.2-rc.1)。
三類可見性策略¶
在 Settings → Skill-gated tools 中搜索或篩選工具,選中一條或多條,選擇策略並保存。
| 策略 | 當前 Agent 看到的效果 |
|---|---|
| Available | 會話開始就可見。 |
| Skill-gated | 任意一個已綁定的 Skill 加載成功後出現。 |
| Always blocked | 即使加載了 Skill 也保持隱藏。 |
要點如下:
- 每個 Agent 獨立解鎖;恢復會話時會還原已成功加載 Skill 的歷史。
- 同一工具可綁定多個 Skill,加載其中任意一個即可解鎖。
- Always blocked 優先級最高。
- 保存時只更新已選工具,其餘規則保留;保存失敗會保留草稿。改完規則後建議重新打開會話以應用配置。
可用 Available 篩選預覽「新會話初始工具列表」;用 Skill-gated 篩選並在 Access rule 列查看 Skill 綁定關係。
安裝與啓用¶
插件裝在需要規則生效的 DSH profile 上。Desktop 與 Web/CLI 可使用不同 profile,安裝前先確認正在配置哪一側 Host。
Desktop(已發佈 npm 包時)¶
- 側邊欄打開 Plugins。
- 點擊 Add plugin。
- 輸入包名
dsh-skill-gated-tools。 - 點擊 Install,按提示啓用。
若 registry 尚未發佈,在同一對話框中使用提供的本地插件壓縮包的絕對路徑安裝。
Web / CLI¶
將 <web-profile> 換成啓動 Web Host 時使用的 profile 名。npm 發佈後執行:
dsh plugin --profile <web-profile> add dsh-skill-gated-tools
例如 profile 名爲 web:
dsh plugin --profile web add dsh-skill-gated-tools
配置示例¶
將 MCP 工具綁定到全局 Skill¶
例如選中表格中的 MCP 相關工具,策略選 Skill-gated,再選中全局 mcp Skill,Save rules。MCP 工具可逐條選擇或批量綁定,與其他插件工具相同。README 中的示例把圖像生成、視頻生成與結果查詢類 MCP 工具綁到 ai-image-generation Skill。
徹底屏蔽某個工具¶
在工具行點擊 Edit,選 Always blocked,Save rules。
配置後的行爲覈對¶
在新會話中查看實際工具列表:等待 Skill 的工具與 Always blocked 的工具不應出現在初始列表中。當用戶提出需要某類任務(README 以 meme 爲例)時,Agent 加載 meme Skill,工具列表更新,並可在同一輪調用例如 send_meme。
用 Agent 維護規則¶
插件註冊了內置配置 Skill skill-gated-tools。可向 Agent 下達類似指令:
Load the skill-gated-tools skill. Bind send_meme to the meme skill and preserve all other rules.
該 Skill 引導 Agent 查看真實目錄、更新規則並回讀結果。
爲解鎖類 Skill 寫清 description 很重要:寫明相關任務、代表性工具名,並說明使用前須先加載該 Skill,便於在工具仍隱藏時從 Skill 目錄找到入口。例如 meme 可寫:
Find and send memes. Before using send_meme or related meme tools, load this skill to unlock them.
可改本地 Skill 的 description,或改插件註冊時的描述;本插件不會自動改寫其他 Skill。
與 KV cache、工具定義的說明¶
README 專節說明:是否影響 KV cache 取決於模型協議與 DSH 適配器。本插件只調整工具可見性;工具定義如何進入模型請求由 DSH 決定。支持會話內追加的路由可在保持前綴不變的情況下追加新工具;其他路由可能重寫靠前的工具定義並打斷前綴複用。插件未宣稱「更少初始工具定義」已帶來可測量的成本或延遲收益;具體可參考倉庫內 docs/tool-loading-and-cache.md 與 README 中的官方文檔鏈接。
適用場景與注意¶
適合誰
- 想把 MCP、低頻插件工具與任務 Skill 綁在一起、減少通用對話初始工具噪音的 DSH 用戶。
- 已習慣「先 load skill 再幹活」、且專用工具需要配套說明的團隊工作流。
使用前請注意
- 插件在當前 dsh 進程的權限下運行;安裝前應閱讀 GitHub 倉庫 源碼與
LICENSE、THIRD_PARTY_NOTICES.md。 - DSH 社區目錄(如 skillhub.cn)爲獨立生態站點,與 DeepSeek / 幻方無官方從屬關係;本文不構成官方商店說明。
- Web 與 Desktop 的 profile、插件集合可能不同,規則不會自動跨 Host 同步。
結尾¶
dsh-skill-gated-tools 把「加載 Skill」當作工具發現的入口:默認隱藏專用能力,任務到位再解鎖,並支持 MCP 與逐工具策略。若你在 DSH 裏工具越掛越多,又希望指令與能力成對出現,可按上文步驟安裝並在 Skill-gated tools 中綁定規則。