🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI
广告☁️ 云服务器特惠阿里云首购 8 折 · 腾讯云合作特惠
DeepSeek Harness Hub
← 返回列表

yu381792/dsh-superlcm

DeepSeek Harnessspec-screened扫描:中风险在 GitHub 查看 ↗
⚠ 装前注意

SuperLcm — Lossless Context

基本兼容但装前注意:未发布到 npm registry,仅可从源码安装 · 最近上游提交 2026/9/23 · 已提供中文文档

为 DeepSeek Harness 实现异步、缓存友好、无损召回上下文压缩。

综合分
36.5
GitHub 分
36.5
用户评分
—
★ Stars
2
周下载量
—
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add yu381792/dsh-superlcm
未发布到 npm registry,仅可从源码安装,改用 GitHub 源安装
信任档位:已验证本站已于 3 天前真实安装成功(L4 · 真实安装)
是什么
dsh 原生插件 · chat
装得上吗
本站已真实安装成功(L4 · 真实安装,非静态推断)
安全吗
本站尚未对该插件做风险分级(暂未覆盖,不等同于无风险)
还在维护吗
活跃:最近一次提交在 2 天前

档位由下列信号合成:本站实装验证(真实安装,当前最高到 L4)· 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。下方各区块是它的证据明细。 验证判据与等级说明 →

🟢实装验证通过· 2026/9/23
由本站实装验证器在真实 dsh 环境安装成功,非静态推断。
数据截至 2026/9/23(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
安装兼容性检查⚠ 装前注意

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✗npm 包SuperLcm(未发布到 npm,仅可源码安装)
✓Node 引擎要求 >=22.16.0 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

未发布到 npm registry,仅可从源码安装

验证方式:npm registry 存在性 + package.json 静态校验 · 最后验证 2026/9/22 13:27:36

依赖的 DSH / Cordis 模块
@deepseek-ai/dsh-compaction@deepseek-ai/dsh-compaction-basic@deepseek-ai/dsh-llm@deepseek-ai/dsh-tools@deepseek-ai/schemastery
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动

README

由 DeepSeek 最新模型翻译生成
SuperLcm — Lossless Context

English · Releases · LCM 论文

CI
Release
License

SuperLcm 是 DeepSeek Harness(DSH)的异步上下文压缩与无损召回插件。它不把一段长对话永久替换成一个不可追溯的扁平摘要,而是保留 DSH 原始事件日志,建立分层摘要 DAG,并让 Agent 在需要时搜索、定位、展开之前的精确上下文。

main 当前版本:0.3.0-alpha.10;最新公开 Release 仍为 0.3.0-alpha.9。建议固定 DSH 与插件版本,在独立 profile 验证后再启用到主工作区。

点击上图打开论文团队的 LCM 官方交互式动态讲解

官方页面并不是一个独立的 MP4/WebM 视频,而是由网页脚本驱动的滚动交互动画;GitHub README 不能运行外部网页脚本。因此这里直接加载官方预览并链接到原始动态页面,同时在仓库内提供一份原生 GIF,把 SuperLcm 实际采用的流程完整展示出来:

SuperLcm LCM 原理动画

目录

- 五个核心目标
- LCM 的原理
- 全面异步压缩
- 为什么保持较少上下文
- 缓存优化与缓存成本
- 为什么是无损召回
- SQLite 里到底放了什么
- 召回工具
- 安装与启用

五个核心目标

1. 展示并实现 LCM 原理:原文永久留在 DSH 事件日志中;摘要形成层级 DAG;摘要节点保留精确源事件指针。
2. 异步压缩,不阻塞对话:独立 Worker 和独立模型在后台准备摘要,当前 Agent 回复不等待压缩模型。
3. 持续保持较少的活动上下文:旧历史进入 checkpoint,主模型只携带稳定摘要、必要原文和 fresh tail。
4. 缓存更稳定、成本更低:冻结 system/checkpoint 前缀,减少前缀重写;更短的活动请求也减少输入 token 与 cache write 体积。
5. 摘要可搜索,原文可精确取回:SQLite 只做可重建索引,lcm_expand 最终返回的是 DSH 原始事件,而不是摘要的二次转述。

1. LCM 的原理

SuperLcm 受 Clint Ehrlich 与 Theodore Blackman 的论文 LCM: Lossless Context Management 启发。推荐先看论文团队制作的 官方交互式动态讲解;论文也可在 arXiv:2605.04050 阅读。

传统压缩通常是:

原始消息 1 … 100  ──压缩──>  一个扁平摘要
│
└─ 摘要遗漏的细节通常无法再定位

LCM 的方式是:

DSH append-only event log(原始真源,始终保留)
│
├─ events 101–130 ─> S0-A ─┐
├─ events 131–160 ─> S0-B ─┼─> S1-A ─┐
├─ events 161–190 ─> S0-C ─┘         ├─> 更高层摘要
└─ recent events ─────────────────────┘

每个摘要节点都保留:node_id、child_ids、source event seqs

这意味着上下文可以递归压缩,但不是把过去抹掉:

- 低层摘要覆盖一段原始事件;
- 高层摘要可以覆盖多个低层摘要;
- 每一层都保留向下的 DAG 边;
- 最底层节点保留精确的 DSH event.seq;
- 需要细节时,Agent 沿节点和序号回到原始事件。

SuperLcm 不把摘要当成原文。摘要负责导航和筛选,DSH Event Log 才是最终证据。

2. 全面异步压缩:不阻塞对话

传统同步压缩把“等摘要模型完成”放在用户请求的关键路径上。上下文越长、压缩模型越慢,用户越容易看到明显停顿。

SuperLcm 的自动压缩只接受:

mode: rolling
foldTiming: background

完整流程:

sequenceDiagram
participant U as 用户
participant A as 当前 Agent
participant W as 后台压缩 Worker
participant S as DSH Session Log
participant DB as SQLite 索引

U->>A: 继续对话
A-->>U: 正常回复,不等待压缩
A->>W: 提交稳定历史快照
W->>W: 独立 provider/model 生成摘要
W->>S: 原子写入 start → summary → checkpoint → end
S->>DB: 成功事务完成后增量索引

关键点:

- 当前回复不 await 摘要模型。自动压缩路径不会把后台模型耗时加到当前对话延迟里。
- 使用独立 provider/model。后台任务绝不偷偷回退到当前 Agent 或 custom-subagent 的模型。
- 独立 AbortController。当前请求结束不会无条件取消已经安全启动的摘要工作。
- 先固定快照,再生成摘要。尾部可以继续增长;如果选中的历史区间被改写,结果会被丢弃并重新准备,不会覆盖错误范围。
- 提交是原子的。只接受完整的 compaction/start → compaction/summary → checkpoint user/message → compaction/end 生命周期。
- 压缩计算本身并没有凭空变快。节省的是用户等待压缩的时间:计算提前在后台完成,离开当前回复的关键路径。

默认策略会原样保留最近 24 个 surface node 和至少 32k fresh token;64k 左右的安全历史批次可以提前在后台准备。ready 摘要只有在 soft/hard pressure 或 overflow 需要释放上下文时才提交到活动 surface。

3. 持续保持较少的活动上下文

长上下文容量大,不等于每一轮都应该把所有历史重新发送给模型。

SuperLcm 把上下文分为三部分:

冻结前缀:SYSTEM + CHECKPOINT 01 + CHECKPOINT 02 + …
可压缩区:较新的 raw history
新鲜尾部:最近消息、工具调用和当前任务状态

好处:

- 减少无关历史干扰。模型更容易聚焦当前目标、约束和最近证据。
- 保留输出空间。输入越小,留给推理、工具结果和最终回答的 token 余量越大。
- 降低长上下文注意力稀释。旧细节不是消失,而是从“每轮强制携带”变成“相关时按需拉取”。
- 延迟更稳定。每轮输入不再随着会话历史无限线性增长。
- 重要细节仍能回来。摘要命中后,通过 lcm_expand 读取精确原始事件。

这里的目标不是把上下文压到越小越好,而是在 fresh tail、当前任务完整性和旧历史可召回之间保持有界平衡。

4. 缓存优化与更低的缓存成本

Prompt Cache 最依赖的是从请求开头开始逐字一致的最长前缀。如果每次压缩都重写最前面的摘要,后面的内容即使相同,也可能因为前缀变化而无法复用。

SuperLcm 使用冻结前缀:

SYSTEM · CHECKPOINT 01 · CHECKPOINT 02 │ RAW HISTORY │ FRESH TAIL
└──────────── 逐字冻结的缓存前缀 ────────────┘

规则:

1. system message 不进入普通折叠范围;
2. 已提交 checkpoint 默认不再改写;
3. 新一轮压缩只处理冻结前缀之后的 raw history;
4. 只有硬上限压力、且后段历史已经无法释放足够空间时,才允许低频合并旧 checkpoint;
5. 不猜测供应商 Prompt Cache 的 TTL,也不依赖“等缓存变冷再压缩”。

成本收益来自两部分:

- 更稳定的前缀:提高已有 Prompt Cache 内容继续命中的机会,减少反复 cache write;
- 更短的活动上下文:每轮发送的输入 token、更改后的 uncached tail 和新写入缓存的体积都更小。

具体命中率、读缓存价格、写缓存价格和 TTL 由模型提供方决定,因此项目不宣称一个虚假的固定节省百分比。

5. LCM 怎么做到无损,并拉回以前的上下文

“无损”的准确含义

无损的是原始事件可恢复性和来源链,不是摘要文本本身逐字包含所有细节。

摘要 checkpoint
│  marker: node_id + child_ids
▼
SQLite DAG node
│  source_seqs: [101, 102, 103, ...]
▼
DSH append-only Session Event Log
│
└─ 精确原始 JSON 事件

每个提交后的摘要都会附带版本化机器标记:

-->

标记中包含稳定 node_id 和子摘要 child_ids。真正的原始事件序号来自成功的 DSH 压缩事务,而不是相信摘要文本里任意声称的 ID。SuperLcm 只从具有真实 compact-checkpoint source 的事件建立父子边,避免用户文本伪造 DAG。

从摘要拉回原文

1. Agent 用 lcm_grep 搜索摘要和/或原始事件;
2. 用 lcm_describe 查看节点层级、父子关系和源事件范围;
3. 用 lcm_expand 根据 source_seqs 从当前 DSH Session Event Log 读取原始 JSON 事件;
4. 单个事件太大时,通过 source_offset 与 event_char_offset 继续分页,直到 next = null;
5. lcm_expand_query 可以先搜索多个摘要,再在一个共享字符预算内展开最相关原文。

因此主上下文可以只保留摘要,但旧消息、工具调用和结构化事件仍可精确回来。

为什么 SQLite 损坏也不会丢原文

DSH Event Log 是唯一原文真源;SQLite 是可删除、可重建的派生索引。SuperLcm 只索引完整成功的压缩生命周期:

compaction/start
↓
compaction/summary(带 marker 和 shadowedSeqs)
↓
user/message checkpoint(真实 compact source)
↓
compaction/end(无 error)
↓
写入 SQLite

不完整、失败、source 不匹配的事务不会进入索引。SQLite 丢失后,lcm_reindex 可以重新扫描 DSH 日志并恢复节点、边和精确序号。

SQLite 里到底放了什么

默认数据库:

~/.dsh/SuperLcm/lcm.sqlite

路径按当前操作系统解析,可用 DSH_SUPERLCM_DB 指定完整路径,或通过 DSH_HOME 改变 DSH 主目录;运行时代码使用 Node.js node:path 和 node:os.homedir(),没有 macOS 专用路径。

| 表/索引 | 内容 | 是否存原始 transcript |
| --- | --- | --- |
| lcm_nodes | summary JSON/text、node ID、child IDs、source seqs、事件范围、模型、provider、状态 | 否 |
| lcm_edges | 当前 session 内的 parent → child DAG 边 | 否 |
| lcm_nodes_fts | 摘要文本的 FTS5 全文索引 | 否 |
| lcm_scan_state | 每个 session 的增量扫描高水位 | 否 |
| lcm_index_state | 旧版 committed-end cursor 的兼容迁移状态 | 否 |

数据库启用 WAL、事务写入和 (session_id, node_id) 复合身份:

- 父会话和 fork 子会话不会互相覆盖;
- 节点、边和 FTS 行一起事务更新;
- SQLite 失败不会回滚已经成功写入的 DSH canonical transaction;
- lcm_doctor 默认只读,只有显式 repair: true 才重建派生索引。

召回工具

| 工具 | 用途 |
| --- | --- |
| lcm_grep | 搜索摘要、原始事件或两者 |
| lcm_describe | 查看节点摘要、层级、来源、父子关系和模型信息 |
| lcm_expand | 按精确序号恢复原始事件,支持大事件分页 |
| lcm_expand_query | 搜索摘要并在共享预算内展开相关原文 |
| lcm_reindex | 从 DSH 事件日志增量刷新或重建 SQLite |
| lcm_doctor | 检查 DAG、指针、缺失节点、悬空边和 SQLite 完整性 |

安装与启用

要求 Node.js 22.16+,并要求当前 DSH 仍提供官方 compaction、LLM、tools 和 session/event 接口。

安装公开 Release

Web profile:

dsh plugin --profile web add "https://github.com/ygc3817922006-sketch/dsh-superlcm/releases/download/v0.3.0-alpha.9/SuperLcm-0.3.0-alpha.9.tgz"

ACP profile:

dsh plugin --profile acp add "https://github.com/ygc3817922006-sketch/dsh-superlcm/releases/download/v0.3.0-alpha.9/SuperLcm-0.3.0-alpha.9.tgz"

安全启用

发布包内的 cordis.patch.yml 默认只挂载六个召回工具,不会自动再挂一个压缩提供方。启用 SuperLcm 压缩时,应当替换现有 compaction provider,而不是并排追加第二个 provider。

name: SuperLcm
mode: rolling
summarizationProvider: openai
summarizationModel: gpt-5.6-sol
可选:主压缩模型失败后只重试一次,不会回退到主 Agent。
fallbackSummarizationProvider: anthropic
fallbackSummarizationModel: claude-sonnet-4-5
tailCount: 24
minRetainTokens: 32000
pressureFoldTokens: 20000
foldBatchTokens: 64000
softActiveTokens: 160000
hardActiveTokens: 220000
foldTiming: background

备用路由可留空;若配置,provider/model 必须成对填写且不能与主路由相同。只有主路由失败且任务未取消时才调用一次备用路由;备用也失败时会保留两次错误,不再继续重试,更不会使用主 Agent 模型。

160k/220k 是面向大上下文模型的起始值,不应直接复制给小上下文模型。完整策略见 缓存策略,启用前验收步骤见 VALIDATION.md。

开发验证

npm run validate
npm pack --dry-run

CI 覆盖 Windows、Linux、macOS 的 Node.js 22,并在 Linux 上额外覆盖 Node.js 24。自动测试不等于所有 DSH 版本的真实 Agent-loop 认证;正式 profile 应固定版本并完成一次真实压缩、召回、fork 隔离和重启验收。

许可证与署名

MIT。详见 LICENSE 与 THIRD_PARTY_NOTICES.md。

SuperLcm 是独立项目,不隶属于 Voltropy、Martian Engineering 或 DeepSeek。仓库没有复制 LCM 官方交互站点、Lossless Claw 或 DSH 的源代码;README 通过官方公开 URL 展示其预览卡片,并明确链接回原始交互页面。

上游仓库有新提交时邮件通知你(每天最多一封,无更新不打扰),随时一键退订。

💬 加入社群

插件用法、部署报错、新插件第一时间同步——群里问,比一个人翻文档快。

DPharness QQ 群二维码,QQ 扫码进群
QQ 扫码进群
DPharness 飞书群二维码,飞书扫码进群
飞书扫码进群