kusesad-1122/dsh-context-compactor
DSH 上下文压缩/总结插件:80% 自动全局详细总结压缩(保留核心任务/决策/待解决问题/重要文件位置,删除调试细节与已解决错误),压缩后验保证 totalTokens 必须真实下降,context-overflow 自动恢复,/compact + /context-status,输入框上方一键按钮
Install
### 2. 全局详细总结 + 双份保存
- **全局,不是只压一段**:每次触发都把“全部较早历史”(从最早消息到保留尾巴之前)
一次性做成一个全局 checkpoint;若历史里已有旧 checkpoint,会与本次新消息
**全局合并**——仍然成立的事实保留,已解决/过时的删除,相同内容只保留一份。
- 总结严格按保留/删除策略执行:
- **必须保留**:① 核心任务与当前进度 ② 关键决策及理由 ③ 待解决问题
④ 重要文件或代码位置(精确路径/函数/类位置,必要时保留简短关键片段);
- **必须删除**:详细调试过程(只留结论)、已解决的错误(不保留报错原文与排查过程)、
客套话与所有重复内容。
- **保存 1**:会话日志持久化 checkpoint 节点(可回放);
- **保存 2**:额外写 Markdown 到
`~/.dsh/storages/dsh-context-compactor/summaries/<session-id>.md`(默认开启,
可关 `saveSummaryFile: false`);
- 总结调用生成上限默认 `maxTokens: 12288`(详细预算,可调大)。
### 3. context-overflow 自动恢复(专治 context length 报错)
- provider 明确报上下文超限时,先详细总结压缩,再自动 **retry 本轮请求**;
- 默认最多连续恢复 `maxOverflowRetries` 次。
### 4. 超大工具结果裁剪(辅助手段,不替代总结)
- 超过 `pruneThresholdChars`(默认 8192 字符)的工具输出,保留头 + 标记 + 尾;
- 只裁剪工具结果文本,**对话历史一律走详细总结**,绝不粗暴截断。
### 5. 输入框上方的「压缩总结」+「提示增强」按钮
- 浏览器半边通过 `dsh.client` 清单自动发现,注册到 `conversation.input.dock`
(输入框正上方,与 goal/todo 工具条同一排);
- 工具条实时显示**上下文用量百分比**(`contextPressure` 投影),到 80% 自动
高亮提醒;
- 左侧按钮「压缩总结」:点击通过 `remote.commands.execute(sessionId, '/compact')`
立即触发全局详细总结压缩,按钮会显示「压缩总结中…」并在条上回显结果;
- 右侧按钮「提示增强」:这是合并自 [LLM-Prompt-Enhancer](https://github.com/RunOnCodes/LLM-Prompt-Enhancer)
的功能,点击读取输入框草稿,调用 DSH 当前模型增强为更清晰的提示词,
自动写回输入框(无需额外 Groq Key);按钮显示「增强中…」并在条上回显结果;
- agent 运行中按钮自动禁用;全新空白会话不显示。
### 6. 手动命令
| 命令 | 作用 |
| --- | --- |
| `/compact` | 立即【全局详细总结】并把全部较早历史压缩成一个 checkpoint |
| `/enhance-prompt` | 用当前模型增强提示词(支持直接跟文本或 JSON `{"text":"..."}`) |
| `/context-status` | 查看 token 用量、窗口、80% 阈值、风险与总结保存路径 |
## 默认配置
Add kusesad-1122/dsh-context-compactor to your DSH config (web profile) to enable.
README
Expand full README Collapse
README is empty.
tt-a1i/archify
strukto-ai/mirage
liustack/modlens
omdsh-dev/DSH-better-sidebar
ccch1mneyyy/dsh-TUI
GanyuanRan/Aegis
dsh-market/dsh-market
toby-bridges/api-relay-audit