Context compression for AI agents
Less repeated output.
More room to work.
Furl produces a compact view of large tool outputs and keeps stored originals retrievable through CCR. Ask for the details when you need them, while the entry is retained. The compact view is not the full original.
fewer tokens across six synthetic examples
22,630 tokens in, 1,922 out. The per-capture range is 87.2% to 95.8%. These six are generated, repetitive examples, furl-ctx's best case; on high-entropy prose the honest range is roughly 0 to 54 percent.
The demo
Six prerecorded captures. Fold each one.
This is a browser replay of real Furl output on synthetic inputs. Results were captured with Furl 1.2.0, generated by site/data/generate.py on 2026-07-13. It does not run a live compression server or upload your files. Pick a capture to inspect its saved result.
| Capture | Tokens before | Tokens after | Percent saved | Transform |
|---|---|---|---|---|
| Application logs | 6,213 | 263 | 95.8% | router:search |
| Crash report | 2,445 | 302 | 87.6% | router:ccr_offload |
| JSON API response | 3,791 | 218 | 94.2% | router:smart_crusher |
| Test output | 2,745 | 283 | 89.7% | router:ccr_offload |
| CI build log | 2,400 | 307 | 87.2% | router:ccr_offload |
| Query result | 5,036 | 549 | 89.1% | router:search |
How it works
Three moves, in order.
-
1
Keep a useful view
Furl selects a transformation for the content. Depending on the input, it can retain relevant lines, compact rows, or offload a large payload with a structured overview. Check the original before relying on omitted details.
-
2
Fold the duplicates
Repeated lines and near-identical rows collapse into a compact marker that records how many were removed and under which hash. The marker is small, readable, and honest about what it stands for.
-
3
Retrieve on demand
Stored text can be recovered byte-exact; structured JSON can be re-serialized while preserving its values rather than its original spacing. Retention, eviction, redaction settings and storage availability affect what can be retrieved.
The honest read
What is real today, and what is not yet.
The Python API, CLI and MCP tools compress content and retrieve stored details. This page replays historical captures from version 1.2.0; the current package is version 1.4.0. These results are not a promise for every input.
Automatic hooks are client-specific. ChatGPT uses explicit MCP tool calls; it does not run Claude Code hooks or automatically intercept other plugins. See the connection guide and the repository limits.
These captures are repetitive machine output, the case furl is built for. On high-entropy prose the honest range is lower, roughly zero to 54 percent. Some inputs are left unchanged; omitted details require retrieval.