Skip to content

Releases

v0.4.0 — DSH 上下文检查点 · 1-2-3-4 全流程服务包(插件 + skill + 安装器)

Choose a tag to compare

@Leafstory Leafstory released this 27 Sep 17:29

v0.4.0 — DSH 上下文检查点 · 1-2-3-4 全流程服务包

本 Release 已合并最初的功能发布与随后的文档/术语整理 —— 不再有单独的 0.4.1。

背景:为了解决什么

为的是 DeepSeek V4.1 Flash 在 DSH 长上下文里的稳定性问题。会话一长就会出现:

  • 否定自己先前的正确结论 —— 已经定下并验证过的事被重新推翻;
  • 丢失关键节点 —— 走到哪一步、还差什么,说不清;
  • 遗漏问题 —— 用户提过的约束与待办被漏掉;
  • 幻觉率随上下文变长而升高 —— 于是要花大量时间回头纠正。

同时观察到:它在每轮对话的开头注意力最高、思考也最展开。关键状态放在上下文开头,
是模型最容易真正读进去的位置;埋在几十万 token 的历史里则相反。

所以做法是:自动总结 → 压缩 → 把总结注入回上下文开头 → 继续同一个任务。
这是工程手段,不是模型修复 —— 插件的职责只是把关键状态反复放到最有注意力的位置。

四步闭环与责任方

步 做什么 由谁提供
① 达限 每步注入真实占用条;跨档位提醒落盘 插件静态提示词段
② 总结 把项目状态写进 important_view.<task>-<session>.md skill context-checkpoint + 插件工具 context_compact
③ 压缩 在下一个步骤边界用 DSH 原生压缩引擎压缩('context-overflow' 绕过阈值,不等空闲窗口) 插件触发 + profile 启用 compaction-basic
④ 注入 压缩后把检查点正文重新注入为静态上下文(跨代刷新) 插件静态提示词段

下载哪个

  • context-checkpoint-service-0.4.0.zip —— 推荐。解压后一条命令安装,不需要 npm。
  • dsh-external-context-checkpoint-0.4.0.tgz —— npm 包(npm install <tgz>),同样含 skill。

安装(目标机)

# 解压 zip 后进入目录
node install.mjs --dsh-home "<DSH_HOME>" --profile <profile>

# 先看要改什么 / 只体检 / 卸载
node install.mjs ... --dry-run
node install.mjs ... --check
node install.mjs ... --uninstall

安装器做四件事(幂等,写前备份 *.context-checkpoint.bak):
插件落位 → 写 dependencies + dsh.profile.bundles → 启用 compaction-basic → 投放 skill。

装完必须重启 DSH(装配只在启动时组合)。

验收(四条)

  1. context_status 出现 checkpointFresh / checkpointAgeMs / userIntentWindowMs: 900000 / recentUserIntent
  2. 同一返回里 capabilityProbe.compaction === "present"(第 ③ 步可压)
  3. 在占用远低于 50% 时对模型说「总结一下本轮」→ 应看到
    Compaction scheduled (on the user's explicit request: …),不需要任何 force
  4. 压缩后 system/message 段内换成新一代正文
    (node scripts/list-events.mjs system/message --last 3 --grep "generation:")

本版包含的变化

功能

  • 插件本体:占用条 / context_status / context_compact;③ 的触发点 = agent/pre-step
    步骤边界,用 'context-overflow' 绕过阈值走 DSH 原生压缩(不依赖空闲窗口)
  • 三道校验 + 一层豁免:触发门槛(窗口 50%)、执行前复核、落盘闸(检查点须 10 分钟内写过);
    用户本人明说「总结 / 开始项目」时只跳过门槛,落盘闸保留(D-006)
  • ④ 跨代注入:检查点正文作为静态提示词段注入,每代读一次、压缩后自动换新
  • skill context-checkpoint 随包分发(落盘纪律 + 载入协议)
  • scripts/install.mjs 一键安装器;scripts/export.mjs 导出构建器(自带干净 DSH_HOME 冒烟)

文档与术语

  • README 新增「背景」一节;去掉「第三版实现,前两版都失败了」这类实现历史叙事

  • 不再使用「上膛」比喻:改为 预约 / 触发门槛;英文文案与字段同步 armed → scheduled:

    旧 新
    Compaction is armed Compaction scheduled
    armedCompactions / armedTokens scheduledCompactions / scheduledTokens

协议

  • 采用 MIT License(原先 package.json 里写着 BSD-3-Clause 但仓库没有 LICENSE 文件,
    GitHub 因此认定"无协议")—— 现在补齐正文文件,版权署名 Copyright (c) 2026 Leafstory。

可直接公开

  • 清掉了开发机的绝对路径与用户名:取证脚本改用 scripts/paths.mjs(环境变量优先 + 自动推断),
    文档里的示例路径也换成通用写法;仓库内不含任何凭据。

验证:回归 124 项、闭环 7 项、构建 7 项校验全过;导出流程自带干净 DSH_HOME 冒烟
(安装 / 落地断言 / 幂等 / --check / 卸载)。

已知前提与坑

  • 需要 profile 启用 compaction-basic:ctx.compaction 在 web 平面默认被 disable,安装器会自动启用。
  • DSH Desktop 会在启动时重写 profile 的 package.json,可能抹掉 bundles 条目 ——
    重启后跑一次 node install.mjs --check 自查。
  • 别两条装配路同时用(注入器 + bundle = 同一个插件装配两次)。
  • 插件不自行实现压缩,用 DSH 原生引擎;提示词段内不能有动态值(会毁掉 prompt 缓存)。

安装与排障详见包内 INSTALL.md。