前言¶
在 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 中绑定规则。