Bundle
dsh-compact-suite
面向本地部署的 DSH 上下文压缩控制面:面板一键立即压缩、摘要改走指定模型(省掉本地卡的全长 prefill)、让触发阈值真正生效、引擎读数对齐卡片、暂停即完整还原。基线为 dsh-compaction-threshold 1.0.3(MIT)。
- Source
- NoiraBaka
- stars
- 1 stars
- License
- MIT
- Updated
- Updated 3 days ago
Readme
# dsh-compact-suite 给 DSH 的上下文压缩加一个控制面板。 DSH 的上下文快满时,会自动把旧对话压成一小段摘要来腾地方。但**什么时候压、用哪个模型压、留多少**,这些你平时都管不了 —— 全由 DSH 自己决定。 这个插件就是把这几个开关交回你手里。 ## 它能干什么 - **一键立即压缩** —— 点一下按钮,马上把旧对话压成摘要,不用等 DSH 决定。 - **什么时候压,你说了算** —— 拖滑块定触发点。原版没有这个入口。 - **用哪个模型压,你说了算** —— 摘要交给指定的模型,主模型不用从头读一遍历史。 - **留多少,你说了算** —— 压完保留多少最近对话,自动或手动。 - **随时反悔** —— 顶部开关一关,全部还原成 DSH 原样,不用重启。 ## 安装 不用 git,不用 npm,两步。 > **兼容性**:2.9.2 起要求 DSH **0.2.1-rc.1 或更新**。旧版 DSH(0.2.0-rc.2)用 2.8.9。 > 差别只有一条:`@deepseek-ai/schemastery` 从 peer 依赖改成了真依赖 —— 0.2.1 里它不再被别的包顺带装进 profile,插件在 `import` 阶段就会失败、整个宿主半不加载(面板显示「无法读取状态」)。 **第 1 步:下载安装包** 点下面的链接,浏览器会把它存到你的下载文件夹: [dsh-compact-suite-2.9.2.tgz](https://github.com/NoiraBaka/dsh-compact-suite/releases/download/v2.9.2/dsh-compact-suite-2.9.2.tgz) **第 2 步:装进 DSH** 打开 DSH 的 **设置 → 插件 → 安装**,选中刚才下载的那个 `.tgz` 文件。 装完按 DSH 的提示刷新或重启一次。 以后要更新,去 [Releases 页面](https://github.com/NoiraBaka/dsh-compact-suite/releases) 下载最新那个 `.tgz`,装法一样。 ## 从源码安装(开发者) ```bash git clone https://github.com/NoiraBaka/dsh-compact-suite.git cd dsh-compact-suite npm pack ``` 然后用上面第 2 步同样的方式装生成的 `.tgz`。 ## 面板在哪 输入框左边那排工具,点【压缩】。打开是个小面板: - **压缩** —— 唯一那个按钮,按保留量压:把触发阈值临时降到保留量下限,**下一条消息发出时**引擎自己压一次,压完阈值自动还原。按钮变成「已就绪 · 发消息时压」,再点一次是取消。 为什么不是立刻压:引擎的手动入口把保留预算写死成 `0`(`selectCompactableRange(…, 0)`),唯一读保留量的路径是自动那条,而它只在 `agent/pre-step` 上跑。空闲会话没有 step 可挂,所以「立刻 + 守保留量」在公开 API 上表达不出来 —— 这个按钮要的是能表达的那一半。 想要「忽略保留量、压到底」,手打 `/compact` 就是,面板上不再放第二个按钮。 - **接管压缩阈值** —— 总开关。关掉 = 一切还原。 - **触发阈值** —— 滑块。越高,撑得越满才压。**不影响「压缩」按钮** —— 那个按钮按自己的下限走。 - **保留量** —— 决定压完留多少。「压缩」按钮守它;「压到底」和溢出恢复不守。 - **摘要模型** —— 让哪个模型去做压缩这件事。 - **压缩记录** —— 本会话每次压缩:压前多少、压后多少、省了多少。 ## 常见疑问 **刚压完,"压后"那一栏写的是「计算中」,不是数字?** 正常。压缩结束那一刻还没有可信的数字,等你发下一条消息后自动补上。 它不是在后台慢慢算,是在等下一次请求。 **为什么原版没有压缩面板?** DSH 自带的压缩是全自动的,不给你留开关。这个插件补上了面板和按钮。 **装了这个,会不会把 DSH 改坏?** 不会。它只在你开着「接管压缩阈值」时生效;关掉开关、或卸载插件,DSH 恢复原样,不用重启。 ## 开发 ```bash npm test ``` ## License MIT
Install
dsh plugin --profile web add github:NoiraBaka/dsh-compact-suite
Profile: web
With the hub plugin installed, ask your agent to install it by name — it resolves the same plan shown here.
dsh plugin --profile web add github:stvlynn/dsh.fish#path:packages/dsh-plugin-hub
install dsh-compact-suite from the hub
- This source has no pinned commit, so a later push upstream changes what installs. Prefer pinning a commit.