dsh-cache-safe-tool-result
在终端中运行以下命令:
dsh plugin install DoctorxPriestess/dsh-cache-safe-tool-result
将以下提示词粘贴到 DeepSeek Harness 对话框中:
在 DeepSeek Harness 中执行 dsh plugin install DoctorxPriestess/dsh-cache-safe-tool-result 即可安装该插件,源码见 https://github.com/DoctorxPriestess/dsh-cache-safe-tool-result
插件介绍
DSH 的 prompt cache 是前缀缓存:provider 只在请求前导 token 与上次完全逐字节一致时才复用缓存。然而 DSH 内置的工具结果修剪器会在原地截断已经发送给 provider 的节点,一次改写就让该节点之后的整条前缀失效,后续 token 全部按未缓存单价重新计费。实测生产日志中,单次改写造成的 uncached token 跳跃从 5 万到 31 万不等,长会话下累积成本极其可观。
dsh-cache-safe-tool-result 围绕一条不变量工作:工具结果在首次进入会话表面之前可以压缩,一旦被 provider 请求携带,其字节从此不再变动。FIRST-PASS 挂在 tools/post-execute 瀑布流上,在超大结果被追加到会话表面之前就完成截断,确保节点从出生起就是最终形态;GUARD 则替换 toolResultPruner 服务,对已交付节点一律跳过、绝不改写,对未交付节点仍正常修剪。两半机制均通过 DSH 和 Cordis 的公开扩展点实现,无需修改任何 node_modules 文件。
适合运行长会话、依赖大量工具调用(代码生成、文件读写、API 查询等)的 DSH 用户。在两个真实生产会话的回归测试中,缓存命中率稳定在 99.7%,所有已记录的原地改写全部被拒绝,会话日志保持逐字节稳定。
使用场景
- 长会话中大量工具调用导致 cache 命中率持续下降
- 内置 pruner 原地改写已交付节点引发 uncached token 跳增
- 需要在不修改 DSH 源码的前提下优化缓存前缀行为
适合人员
- 运行 DSH 长会话并依赖大量工具调用的开发者
- 关注 prompt cache 命中率与 API token 用量的技术负责人
- 在不修改 node_modules 前提下定制 DSH 行为的插件开发者