dsh-context-guard:DeepSeek Harness 的 Token 高效工具结果修剪插件

前言

在开发 DeepSeek Harness (DSH) 预设时,长会话中工具结果往往体积庞大,容易导致上下文溢出。现有的压缩方式有时难以兼顾压缩力度与历史恢复能力。dsh-context-guard 旨在通过修剪过大的工具结果来控制上下文增长,同时保留持久会话历史以供针对性恢复。

是什么

这是一个由 kpl0111 维护的 DSH 预设插件,专注于解决长智能体会话中的 Token 消耗问题。它通过策略管理工具结果的保留与修剪,不引入额外的 LLM 调用。

核心功能

插件通过以下机制控制 Token 消耗:

  • 超限修剪与预览:在下一次模型请求前,插件会将过大的普通工具结果替换为 2.3K 字符的预览(保留开头 1792 字符和末尾 448 字符)。
  • 会话历史保留:原始工具输出存储在 DSH 的追加式会话历史中,插件本身不会删除原始数据,仅修剪预览。
  • 特定策略:搜索结果遵循正常修剪策略;回忆结果仅保留完整内容供紧接的下一步使用,之后再次进入修剪队列。

安装与启用

使用官方命令安装插件:

dsh plugin --profile web add github:kpl0111/dsh-context-guard#v0.2.0

若需要有界搜索和回忆恢复,需安装配套包:

dsh plugin --profile web add github:KitDoesIt/dsh-compaction-instant

在使用修剪后的输出时,需在 persona/system prompt 中添加提示,指导模型优先使用文件路径或窄范围搜索,仅在必要时使用回忆。

安装或更新后,必须重启 DSH 并创建新会话。

验证

  1. 在新会话中运行产生大量输出的工具(如 PowerShell)。
  2. 检查会话事件日志或上下文视图,确认模型接收的是约 2.3K 字符的预览而非完整结果。
  3. 使用搜索定位已知值,然后执行回忆以验证完整内容。

兼容性与注意事项

  • 版本要求:需要 @deepseek-ai/dsh-* 0.1.0-rc.6 及以上兼容版本。
  • 内置组件:与内置的 @deepseek-ai/dsh-compaction-tool-result-pruner 配合工作。
  • 阈值设置:thresholdRatio: 0.001 触发阈值接近即时,但仍会检查上下文窗口;若偏好延迟修剪可设为 0.20。
  • 数据安全:插件不会删除原始工具输出(仅修剪预览)。
  • 互斥性:与 presets/standard-lite.fragment.yml 互斥,不可同时启用。

结尾

该插件通过策略级控制优化了 DSH 会话的 Token 利用率。更多细节请参考项目目录或源码。

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

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

小夜