lifeodyssey/dsh-compressor
DeepSeek Harness plugin: compress tool output, cut up to 20% of context, without touching the context cache or agent performance.
Listed
1
Tools
Bundle verified
Preview
What it does
A slim port of Headroom: compresses tool output, cuts up to 20% of context, without affecting the model's context cache or agent performance.
Best for
- Tool-heavy agent sessions where long logs, JSON, search results, text, or diffs consume substantial context.
- Workflows that need shorter model-visible tool output while retaining the original output on disk for retrieval.
- Long sessions that benefit from preserving the already-sent context prefix for cache reuse.
Not ideal for
- Sessions whose tool outputs are already short, where compression adds little value.
- Workflows needing code-aware tree-sitter compression or ONNX-based long-prose compression; those crushers are not wired in.
- Cases where every detail of each tool result must remain immediately visible without using the retrieval tool.
README
| English | 中文 |
dsh-compressor
A slim port of Headroom. Compresses tool output and cuts up to 20% of context, without affecting the model’s context cache or agent performance.
Install
dsh plugin --profile web add dsh-compressor
How it works
A tool run leaves a long log / JSON / diff. Only a small part of it is useful. This plugin shortens that output before the next turn, keeps the original on disk, leaves the already-sent prefix alone so the cache stays valid, and gives the agent a tool to pull the full context back.
flowchart LR
A[Tool finishes] --> B{Output long?}
B -->|no| C[Full text stays]
B -->|yes| D[Shorten and save original]
D --> E[Model sees the useful part]
Compressor code comes from Headroom. Wired in today: Log / Smart / Text / Search / Diff. The only crushers not wired in yet:
- Code-aware (tree-sitter, source code)
- Kompress (ONNX, long prose)
Develop
cd plugins/dsh-compressor
pnpm install
pnpm test
Contributing
Open PRs on this repo, not on Headroom.
Plugin code is in plugins/dsh-compressor (Node 22+, pnpm):
cd plugins/dsh-compressor
pnpm install
pnpm test
pnpm typecheck
Crushers live in crates/:
cargo test --workspace
make test-parity
One change per PR. Plugin changes need tests; crusher changes need cargo test. Details: CONTRIBUTING.md.
This plugin is MIT. crates/headroom-* remains Apache-2.0.
Frequently Asked QuestionsFAQ
Use the verified command dsh plugin --profile default add github:lifeodyssey/dsh-compressor in a DSH-enabled shell. The command resolves the public package metadata and keeps the plugin attached to the catalog identity shown on this page.
Compatibility follows the bundle and profile status shown above. If a profile is not detected, keep the plugin disabled there and check the repository documentation before enabling it in production.
The GitHub link and activity metadata are the source of truth for releases and maintenance. Revisit this page after a new release to confirm the catalog has observed the latest version.