前言¶
在使用 DeepSeek V4.1 Flash 进行长对话时,模型常出现否定先前结论、丢失关键节点或幻觉升高的问题。DSH 的原生压缩机制在空闲窗口难以触发。dsh-context-checkpoint 插件通过自动总结、压缩和注入,将关键状态固定在提示词开头,确保模型在注意力最高的位置读取当前事实。
这是什么¶
插件名 leafstory/dsh-context-checkpoint,由 Leafstory 维护。这是一个工作流插件,使用 MIT 许可证。它实现了一个闭环:达限 → 总结落盘 → 自动压缩 → 压缩后注入回上下文开头。
核心功能¶
- 自动总结落盘:将项目状态写入文件,作为长期存储。
- 压缩注入回上下文开头:压缩后注入为静态上下文,不依赖模型记忆。
- 使用 context_compact 预约压缩:通过工具预约压缩时机。
- 在 agent/pre-step 步骤边界触发压缩:不依赖空闲窗口,在步骤切换时自动执行。
- 工具 context_status 和 context_compact:提供状态查看与预约接口。
工作原理¶
- 达限:占用超过阈值时触发总结。
- 落盘:将状态写入
important_view.<task>-<session>.md文件。 - 预约:使用
context_compact预约压缩。 - 注入:压缩后注入为静态上下文,位于提示词前部。
典型用法¶
- 用户意图豁免:用户明确说“总结/落盘/压缩”时,豁免触发门槛。
- 强制绕过:调用
context_compact {force:true}可绕过门槛与落盘闸。 - 状态查看:使用
context_status查看精确 token 占用。 - 取证:使用
scripts/list-events.mjs查看检查点注入情况。
安装与启用¶
插件通过 npm 脚本进行安装:
npm run dsh:install
安装完成后,修改代码必须重启 DSH 才能生效。
适用场景与注意¶
- 依赖关系:依赖 DSH 原生压缩引擎,不自行实现压缩算法。
- 触发时机:压缩不依赖空闲窗口,在
agent/pre-step步骤边界自动执行。 - 上下文性质:注入内容作为静态上下文,不依赖模型记忆。
- 预约条件:预约压缩前需确保检查点文件存在且新鲜(10分钟内)。
短结尾¶
该插件通过工程手段将关键状态反复放到提示词最前部,是解决长任务稳定性的实用工具。
目录页:Leafstory/dsh-context-checkpoint
GitHub:Leafstory/dsh-context-checkpoint