前言¶
在 DeepSeek Harness (DSH) 开发中,每个可见的工具定义都会在每次请求中消耗输入 token。频繁更改工具列表会改变请求前缀,从而减少上下文缓存的重用。渐进式披露需要同时具备两个属性:一个小的初始请求,以及一个跨后续请求的字节稳定的工具和系统前缀。
dsh-progressive-tools 插件通过默认的 stable-proxy 模式提供这种契约:发送小而固定的工具表面,将完整目录保留在进程内存中,并通过常规 Harness 管道执行发现的工具。
插件介绍¶
名称:dsh-progressive-tools
所有者:everclear077
许可证:MIT
定位:Cache-stable progressive tool discovery for DeepSeek Harness。
核心功能¶
该插件提供了一套完整的工具管理机制,主要包括:
- 稳定代理模式:发送小而稳定的工具表面,保持完整目录在进程内存中。
- 真实管道执行:通过常规 Harness 管道执行发现的工具。
- 可搜索目录:搜索更改对话历史,而非顶层工具列表。
- 冻结请求表面:确保请求表面在多次调用中保持稳定。
- 延迟目录:将完整目录保留在进程内存中。
- 安全与控制:支持审批、守卫、参数验证、超时包装器、结果策略、延迟上下文和取消。
安装与依赖¶
该插件作为 Cordis 插件运行,需要满足特定的运行环境。
依赖项:
{
"@deepseek-ai/cordis": "~4.0.4",
"@deepseek-ai/dsh-agent": "0.2.0-rc.1",
"@deepseek-ai/dsh-llm": "0.2.0-rc.1",
"@deepseek-ai/dsh-system-prompt": "0.2.0-rc.1",
"@deepseek-ai/dsh-tools": "0.2.0-rc.1"
}
运行环境:
* Node.js:^22.19.0 或 >=24.0.0
* 包管理器:pnpm@11.19.0
典型用法¶
在实际配置中,可以通过以下方式启用插件的核心能力:
- 使用
stable-proxy模式发送小而稳定的工具表面。 - 将完整目录保留在进程内存中,通过常规 Harness 管道执行发现的工具。
- 搜索更改对话历史而非顶层工具列表。
- 设置
maxResults: 2以减少可见工具的数量。 - 启用审批、守卫、参数验证、超时包装器、结果策略、延迟上下文和取消。
适用场景与注意¶
该插件在常规文件和编码工作场景下效果显著。测量数据显示,在 100 个回合的测试中:
- 可见工具:从 71 个减少到 9 个(减少 87%)。
- 缓存读取 Token:从 3,133,428 减少到 663,687(减少约 79%)。
- 总延迟:从 45.2 秒降低到 20.9 秒(降低约 54%)。
注意事项:
* 由于发现结果进入对话历史,未缓存输入 Token 可能会增加约 20%。
* S8 评分器将 tool_search 视为失败,可能导致评分不准确。
* 计费通常按缓存读取而非新鲜输入的较低费率计算。
结尾¶
DSH Progressive Tools 通过引入稳定代理模式,解决了工具定义对上下文缓存稳定性的影响。它减少了可见工具数量,显著降低了缓存读取 Token 和延迟,适合需要稳定性和性能优化的 DeepSeek Harness 管道。
仓库:https://github.com/everclear077/dsh-progressive-tools
目录:https://www.skillhub.cn/plugins/everclear077/dsh-progressive-tools