Skip to main content

The context compression layer for AI agents - 60-95% fewer tokens on redundant workloads, reversible via CCR

Project description

  ███████╗ ██╗   ██╗ ██████╗  ██╗
  ██╔════╝ ██║   ██║ ██╔══██╗ ██║
  █████╗   ██║   ██║ ██████╔╝ ██║
  ██╔══╝   ██║   ██║ ██╔══██╗ ██║
   ██║      ╚██████╔╝ ██║  ██║ ███████╗
   ╚═╝       ╚═════╝  ╚═╝  ╚═╝ ╚══════╝
 The context compression layer for AI agents
  

60–95% fewer tokens on redundant workloads · a Claude Code plugin · local-first · reversible

Release License: Apache 2.0

Install · Proof · Library · Discord


Furl compresses everything your Claude Code agent reads — tool outputs, logs, web fetches, RAG chunks — before it reaches the model. Same answers, a fraction of the tokens. Every dropped byte stays retrievable on demand.

Furl in action

Install

Two commands inside Claude Code:

/plugin marketplace add omar-y-abdi/furl
/plugin install furl@furl

That's it — this installs the compression hook, the MCP tools, and the skill. No pip install, no setup: Furl fetches itself on first use. Requires uv on your PATH (same as the official serena plugin).

What you get

  • Auto-compression hook — shrinks large Bash / WebFetch / WebSearch / Task outputs before they enter context. Fail-open: never breaks a tool call.
  • Signal-aware offload + sliceable retrieval — a payload too big to compress inline (e.g. a 33 MB trace) comes back as a structured summary (schema, per-field value histograms, example rows) instead of a truncated head/tail, and the agent pulls a narrow slice on demand — retrieve(hash, select_field="name", select_equals="DroppedFrame") or a numeric range — without materializing the whole thing.
  • MCP toolsfurl_compress, furl_retrieve, furl_stats, furl_purge (erase stored originals), furl_search (find by content substring), furl_list (list stored entries). A seventh tool, furl_read, exists but is off by default — enable with FURL_MCP_READ=1.
  • Skill — explains the <<ccr:HASH>> retrieval flow and how to tune or disable it.

Tuning, disabling (FURL_HOOK_ENABLED=0), and the full reference: plugins/furl/README.md.

Proof

Token reduction on real captured data — reproducible, inputs committed under benchmarks/data/. Every number uses the engine's own tokenizer; needle recall is 100% (a known unique row is always recoverable, in the output or via CCR):

Dataset Items Before After Reduction Info retention
code 7 41,025 471 99% 100%
multiturn 135 14,866 2,073 86% 100%
logs 90 8,595 619 93% 100%
search 90 4,102 318 92% 100%
repeated logs 90 3,621 120 97% 100%
disk 9 694 279 60% 100%

Across the corpus: 95% fewer tokens (72,903 → 3,880) at 100% information retention. Full methodology and the 6-seed adversarial sweep: BENCHMARKS.md.

The code row's 99% is CCR-offload of a large non-file-read tool output (e.g. Bash dumping source text); an agent's own Read/Grep/Glob file access bypasses the compression hook by design and passes through unchanged, at 0%.

Also a Python library

The same engine drops into any Python app or MCP host: from furl_ctx import compress. Install, usage, pipeline internals, prompt-caching contract, and the full FURL_* config reference live in LIBRARY.md.

License

Apache 2.0 — see LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

furl_ctx-1.0.0.tar.gz (774.4 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

furl_ctx-1.0.0-cp310-abi3-manylinux_2_28_x86_64.whl (5.4 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.28+ x86-64

furl_ctx-1.0.0-cp310-abi3-manylinux_2_28_aarch64.whl (5.3 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.28+ ARM64

furl_ctx-1.0.0-cp310-abi3-macosx_11_0_arm64.whl (5.2 MB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

furl_ctx-1.0.0-cp310-abi3-macosx_10_12_x86_64.whl (5.3 MB view details)

Uploaded CPython 3.10+macOS 10.12+ x86-64

File details

Details for the file furl_ctx-1.0.0.tar.gz.

File metadata

  • Download URL: furl_ctx-1.0.0.tar.gz
  • Upload date:
  • Size: 774.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for furl_ctx-1.0.0.tar.gz
Algorithm Hash digest
SHA256 0c6e596d29b2dd46107c6e65aadbc752f2f995f00e567c6fe62fd2af2439b180
MD5 dfc83088c7ce345c73fe7f6ed5931fc7
BLAKE2b-256 c1b354152ac9477dcef1da546ee067425614b6a6b0fc64f71a0a5cabc5fb57a1

See more details on using hashes here.

Provenance

The following attestation bundles were made for furl_ctx-1.0.0.tar.gz:

Publisher: release.yml on omar-y-abdi/furl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file furl_ctx-1.0.0-cp310-abi3-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for furl_ctx-1.0.0-cp310-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d119d43c43a8c1702d40dd98d8404d9208cb6e5a7eff7b902a23db85df2f78f4
MD5 2450563ca5b9370c6f28d81341ed37d8
BLAKE2b-256 2831baf7d25c32ae1d56e5256ac2a7d32965546f6ebaf94b6767ce6fab82665b

See more details on using hashes here.

Provenance

The following attestation bundles were made for furl_ctx-1.0.0-cp310-abi3-manylinux_2_28_x86_64.whl:

Publisher: release.yml on omar-y-abdi/furl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file furl_ctx-1.0.0-cp310-abi3-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for furl_ctx-1.0.0-cp310-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 bdc1317ab313b10333b98a221bb6fb2f937265f1d2815c055c736847e9162747
MD5 bec3049a14394a430bb14acd276da130
BLAKE2b-256 4bd806e7351b73353f5f8e3cab610f1e6772045e18aa086c46cab46f8df9953e

See more details on using hashes here.

Provenance

The following attestation bundles were made for furl_ctx-1.0.0-cp310-abi3-manylinux_2_28_aarch64.whl:

Publisher: release.yml on omar-y-abdi/furl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file furl_ctx-1.0.0-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for furl_ctx-1.0.0-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8bdcab3aea3002a194ac6d82591d8dfeaeec80fe8a6a13862daf69765341aab0
MD5 f87c6f9fb109044312d2a0133dec7e04
BLAKE2b-256 efbce018971a1980665afc8f02a33f4174f5007f120fd0ae7826872c684d4849

See more details on using hashes here.

Provenance

The following attestation bundles were made for furl_ctx-1.0.0-cp310-abi3-macosx_11_0_arm64.whl:

Publisher: release.yml on omar-y-abdi/furl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file furl_ctx-1.0.0-cp310-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for furl_ctx-1.0.0-cp310-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 a532939a0a94f9cdd4cb935970c29a2fceb425fdf2cb83df340578bdddc42af1
MD5 cdaf5b88f4442a6a9bfcba7b544cdc57
BLAKE2b-256 7842b0d1655293d1072636dc8607da275d95cd8413ca83f5ba66864f26f08dc0

See more details on using hashes here.

Provenance

The following attestation bundles were made for furl_ctx-1.0.0-cp310-abi3-macosx_10_12_x86_64.whl:

Publisher: release.yml on omar-y-abdi/furl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page