Skip to content
dsh.fish
Bundle

@agentframe/dsh-compaction

AgentFrame compaction backend for DeepSeek Harness: semantic + physical KV compression (28.4x) replacing LLM summarization

Source
ljsysfurryACE
stars
1 stars
License
GPL-3.0
Updated
Updated 14 days ago

Readme

# dsh-compaction-agentframe

AgentFrame 压缩后端插件 —— 把 DeepSeek Harness 的默认 LLM 摘要压缩替换为
**语义 + 物理双轨压缩**(28.4x KV 压缩思路)。

## 为什么替换默认压缩

默认 `compaction-basic` 用 LLM 摘要(有损总结旧对话),每次压缩都要一次
LLM 调用,且摘要可能丢细节。

AgentFrame 的思路:
- **语义轨**:MemoryDirector 判断哪些 token 值得保留(去闲聊、留关键)
- **物理轨**:吸收式 MLA + INT4 量化(270KB→7.6KB/token,28.4x)
- **效果**:保留关键信息 + 大幅省 token + 不额外调用 LLM

## 使用

在 profile 的 `cordis.patch.yml` 中把 `compaction-basic` 替换为:

```yaml
- id: compaction-agentframe
  name: '@deepseek-ai/dsh-compaction-agentframe'
  config:
    semantic: true
    retainRatio: 0.2
    physical: true
```

## 配置

| 字段 | 默认 | 说明 |
|------|------|------|
| `semantic` | true | 语义压缩(保留高信息行) |
| `retainRatio` | 0.2 | 压缩后保留比例 |
| `physical` | true | 物理压缩记账(bytes/token) |
| `bytesPerToken` | 7776 | INT4 压缩后每 token 字节 |
| `auto` | true | 自动压缩 |

## 实现

继承 `CompactionEngine`(compaction seam),实现三个抽象方法:
- `compactIfNeeded` — 自动压力触发
- `compactNow` — 手动 /compact 命令
- `compactRegion` — 指定范围压缩

保持 dsh 的 surface/事件/持久化契约(compaction/start → replace → compaction/end),
只替换"如何压缩"。

## License

GPL-3.0 © Cloud LTE Studio / AgentFrame

Install

dsh plugin --profile web add github:ljsysfurryACE/dsh-compaction

Profile: web

  • This package builds from source on install. pnpm will ask you to allow its build script — that is permission to run the package’s code on your machine, outside the agent sandbox. Only allow sources you trust.
  • This source has no pinned commit, so a later push upstream changes what installs. Prefer pinning a commit.
Source