dsh-tool-squeeze:DeepSeek Harness 的证据保留输出压缩插件

前言

在 DeepSeek Harness (DSH) 的开发中,工具返回的日志、JSON 或 HTML 往往包含大量重复或低信息量的内容,这会快速消耗模型的上下文窗口。如果直接截断,可能会丢失关键的错误信息或堆栈根因。

DSH 本身已有基于硬性大小的回退机制(Spill Store),但缺乏对“证据”的感知。dsh-tool-squeeze 插件运行在 tools/post-execute 生命周期上,在结果发送给模型前,通过本地确定性算法进行压缩,优先保留错误、警告和结构化样本。

是什么

dsh-tool-squeeze 是一个用于 DeepSeek Harness 的证据保留工具输出压缩插件。它不依赖 LLM 进行压缩,也不修改 Harness Core 本体,而是通过公开的插件接口进行安全集成。

维护者: w2829562572-dev
许可证: MIT
核心价值: 在压缩上下文的同时,确保关键证据(如错误、失败信息)不被遗漏,并通过官方 Spill Store 保留原始格式。

核心功能

该插件专注于本地化、确定性的处理流程,主要能力包括:

  1. 确定性本地处理:在模型调用前进行压缩,不引入额外的模型调用开销。
  2. 证据保留压缩:在压缩时优先保留 head(头部)、tail(尾部)、errors(错误)、warnings(警告)以及结构化样本。
  3. 多格式支持:支持对 logs(日志)、JSON、HTML 和 plain text 进行处理。
  4. 原始保留机制:通过 DSH 官方的 spill store 保留原始格式化内容,确保可追溯性。
  5. 安全隔离:通过 tools/post-execute 生命周期集成,解析或压缩器的异常不会导致工具调用失败。

安装与配置

安装

通过 DSH 插件管理器安装该插件:

dsh plugin --profile web add github:w2829562572-dev/dsh-tool-squeeze

配置

插件默认启用,配置项定义在 cordis.patch.yml 中。默认参数如下:

enabled: true
minTokens: 4000
targetTokens: 6000
maxTokens: 12000

processors:
  log: true
  json: true
  html: true
  text: true

preserve:
  headLines: 80
  tailLines: 120
  errors: true
  warnings: true

report:
  enabled: true

excludeTools: []
retainOriginal: true

使用示例

在 cordis.patch.yml 中覆盖默认配置,可以调整压缩阈值或排除特定工具:

- id: dsh-tool-squeeze
  config:
    minTokens: 6000
    targetTokens: 5000
    excludeTools: [database_export]

如果需要禁用原始保留(不推荐),可设置 retainOriginal: false。

注意事项

  1. 环境要求:运行环境需满足 Node >= 22.19。
  2. 依赖项:插件依赖于以下 Peer Dependencies:
    • @deepseek-ai/cordis ^4.0.1
    • @deepseek-ai/dsh-tools 0.1.0-rc.8
  3. 安全优先级:插件的优先级逻辑为 Safety > information preservation > compression ratio。小于 minTokens 的输出保持不变;错误和警告信息始终优先保留。
  4. 异常处理:插件内部的解析器或压缩器异常会被捕获,且插件失败不会导致工具调用转变为系统错误。

总结

dsh-tool-squeeze 提供了一种在 DSH 生态中管理大型工具输出的方案。它通过本地确定性压缩,帮助开发者在节省上下文 Token 的同时,确保关键证据(如失败日志、结构化数据)能被模型正确感知和利用。

项目目录
GitHub 仓库

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

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

小夜