DSH Compaction Weave:长对话里保留要求与进度

前言

在 DeepSeek Harness(DSH)里跑长任务,日志、工具输出和反复澄清的要求会快速撑满上下文。常见做法是整段摘要或硬截断,容易打乱服务端对稳定前缀的缓存复用,也会在压缩后丢失仍有效的约束与未完成步骤。下面介绍社区插件 DSH Compaction Weave(nightfrost42/dsh-compaction-weave):在接近阈值时做增量压缩,把「正在做什么、哪些要求仍有效、已完成什么、下一步是什么」写进可继续工作的上下文,并把原始细节放进可检索归档。

这是什么

DSH Compaction Weave 是面向 DSH 的上下文压缩插件,维护者为 NightFrost42。在 SkillHub 目录中归类为「记忆」。项目采用 MIT 许可证;当前候选版本为 0.3.2-rc.1,要求 DSH 0.2.2-rc.1 与 Node.js 24.9+。

一句话定位:缓存友好的上下文压缩——要求保留、任务接续、历史回查与失败重试。

核心能力

README 将能力归纳为下表所示体验(以下表述均来自项目文档)。

能力 作用
增量压缩 优先保持已有摘要与稳定前缀,减少对缓存的扰动,并检查实际释放的空间
要求保留 单独核对数值、条件、禁止项与适用范围;修订采用新值,取消的任务及时移出
进度接续 保留最新工作报告、结果与证据位置,区分当前状态、历史与未来计划
低信息裁剪 清理独立的「继续」、重复表述和失效要求;近期原话按预算保留
历史回查 归档原始消息与附件,支持按关键词、消息序号和区间找回细节
分页接续 大段历史分段摘要,保存已完成页,重试时接着处理
失败重试 超时、断流或未通过检查的摘要按配置重试,耗尽次数后给出原因与诊断位置
中英文 设置文案与中英文文档;摘要语言可自动识别或手动选择

压缩与缓存如何配合

长对话中的结构可概括为:

压缩前:已有摘要 + 稳定前缀 + 新增历史 + 最近对话
                         ↓ 增量压缩
压缩后:已有摘要 + 稳定前缀 + 新摘要   + 最近对话
                         ↓ 达到合并条件
合并后:合并摘要                     + 最近对话

增量压缩优先保留已有内容,便于服务端继续复用前缀。达到检查点上限、旧要求被修订或需要更多空间时,再合并摘要后继续增量处理。默认最多保留 4 个摘要检查点;自动压缩以释放至少 20% 输入空间为目标。

要求如何随任务变化

文档中的示例逻辑如下:

“测试环境超时设为 35 秒”  →  “改成 55 秒”
                    保留最新有效值:55 秒

“生成报告并上传”          →  “取消上传,报告保留本地”
                    保留:生成本地报告

“继续”                   →  不占用长期原话预算

近期用户原话默认最多保留 32 条、约 4096 tokens。有效要求独立检查,原始细节仍可通过归档查询。

安装与启用

插件以当前 DSH 进程的权限运行。安装前建议在 GitHub 查看源码与许可证,确认与本地 DSH、Node 版本匹配。

桌面端

  1. 下载 v0.3.2-rc.1 安装包。
  2. 打开 DSH 侧栏 插件 → 添加插件。
  3. 输入安装包的绝对路径,例如 C:/Downloads/dsh-compaction-weave-0.3.2-rc.1.tgz。
  4. 按提示安装并启用,然后重启 DSH。

命令行

在正在使用的 profile 中安装(将 web 换成你的 profile 名称),完成后重启该 profile:

dsh plugin --profile web add https://github.com/NightFrost42/dsh-compaction-weave/releases/download/v0.3.2-rc.1/dsh-compaction-weave-0.3.2-rc.1.tgz

也可将 URL 换成本地 .tgz 的绝对路径。更多版本见 Releases。

典型用法

安装后照常对话即可。Weave 默认跟随当前会话模型生成摘要,在接近上下文阈值时自动整理历史。

手动压缩

/compact

阶段结束时整理

这一阶段已经完成,整理当前进度、有效要求和剩余任务,再继续下一阶段。

模型可通过 context_compact 申请压缩;当前工具执行结束后,Weave 处理申请并返回结果。

找回旧信息

查一下前面那次测试的原始报错,以及对应的文件位置。

相关工具:

工具 作用
context_compact 申请一次阶段性压缩
history_list 查看已归档的历史区间
history_search 按关键词检索历史
history_read 分段读取原始消息与附件

设置要点

在 设置 → 摘要模型 或插件详情中调整。保存后需重启 DSH 生效。

设置 默认值 用途
摘要供应商和模型 跟随会话 单独选择用于压缩的模型
摘要输出上限 8192 tokens 摘要生成额度
自动压缩触发比例 80% 开始整理上下文的时机
最小压缩幅度 20% 每次自动压缩的空间目标
失败重试次数 2 次 首次失败后最多再尝试 2 次
重试基础间隔 1 秒 连续失败时逐步延长等待
每次摘要等待上限 180 秒 单次摘要请求等待上限

缓存策略、原话预算、摘要语言和分页参数见仓库内 配置指南。

适用场景与注意

适合在 DSH 中执行多轮工具调用、长周期调试或需求频繁修订的任务:你希望上下文变短时仍保留有效约束与进度,又能在需要时从归档里拉回原始报错或附件。

项目自述的测试与实测数据(供参考,非独立验证):候选版 0.3.2-rc.1 已通过 50 套、1359 项本地测试;文档记载的一轮官方接口实测中,4 次成功压缩的平均输入缩减约为 68.50%,压缩后平均保留约 31.50%。若出现报错、压缩后遗漏要求或进度,可按 README 指引提交 Issue,并附上 DSH 与插件版本、复现步骤及压缩前后关键对话。

DSH 生态强调「一切皆插件」;SkillHub 目录页 为社区收录站点,与 DeepSeek / 幻方无官方从属关系。

链接

  • 目录页:https://www.skillhub.cn/plugins/NightFrost42/dsh-compaction-weave
  • 仓库:https://github.com/NightFrost42/dsh-compaction-weave
  • 问题反馈:https://github.com/NightFrost42/dsh-compaction-weave/issues/new/choose
羽毛球分组比赛记分
小程序二维码

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

小夜