Skip to main content

The Context Optimization Layer for LLM Applications - Cut costs by 50-90%

Project description

Headroom

Compress everything your AI agent reads. Same answers, fraction of the tokens.

CI codecov PyPI npm Model: Kompress-base Tokens saved: 60B+ License: Apache 2.0 Docs

Headroom in action

Every tool call, log line, DB read, RAG chunk, and file your agent injects into a prompt is mostly boilerplate. Headroom strips the noise and keeps the signal — losslessly, locally, and without touching accuracy.

100 logs. One FATAL error buried at position 67. Both runs found it. Baseline 10,144 tokens → Headroom 1,260 tokens87% fewer, identical answer. python examples/needle_in_haystack_test.py


Quick start

Works with Anthropic, OpenAI, Google, Bedrock, Vertex, Azure, OpenRouter, and 100+ models via LiteLLM.

Wrap your coding agent — one command:

pip install "headroom-ai[all]"

headroom wrap claude      # Claude Code
headroom wrap codex       # Codex
headroom wrap cursor      # Cursor
headroom wrap aider       # Aider
headroom wrap copilot     # GitHub Copilot CLI

Using pipx? Current release wheels are built for Python 3.10 through 3.13, so choose a supported interpreter explicitly:

pipx install --python python3.13 "headroom-ai[all]"

Drop it into your own code — Python or TypeScript:

from headroom import compress

result = compress(messages, model="claude-sonnet-4-5")
response = client.messages.create(model="claude-sonnet-4-5", messages=result.messages)
print(f"Saved {result.tokens_saved} tokens ({result.compression_ratio:.0%})")
import { compress } from 'headroom-ai';
const result = await compress(messages, { model: 'gpt-4o' });

Or run it as a proxy — zero code changes, any language:

headroom proxy --port 8787
ANTHROPIC_BASE_URL=http://localhost:8787 your-app
OPENAI_BASE_URL=http://localhost:8787/v1 your-app

Why Headroom

  • Accuracy-preserving. GSM8K 0.870 → 0.870 (±0.000). TruthfulQA +0.030. SQuAD v2 and BFCL both 97% accuracy after compression. Validated on public OSS benchmarks you can rerun yourself.
  • Runs on your machine. No cloud API, no data egress. Compression latency is milliseconds — faster end-to-end for Sonnet / Opus / GPT-4 class models than a hosted service round-trip.
  • Kompress-base on HuggingFace. Our open-source text compressor, fine-tuned on real agentic traces — tool outputs, logs, RAG chunks, code. Install with pip install "headroom-ai[ml]".
  • Cross-agent memory and learning. Claude Code saves a fact, Codex reads it back. headroom learn mines failed sessions and writes corrections straight to CLAUDE.md / AGENTS.md / GEMINI.md — reliability compounds over time.
  • Reversible (CCR). Compression is not deletion. The model can always call headroom_retrieve to pull the original bytes. Nothing is thrown away.

Bundles the RTK binary for shell-output rewriting — full attribution below.


How it fits

 Your agent / app
   (Claude Code, Cursor, Codex, LangChain, Agno, Strands, your own code…)
        │   prompts · tool outputs · logs · RAG results · files
        ▼
    ┌────────────────────────────────────────────────────┐
    │  Headroom   (runs locally — your data stays here)  │
    │  ───────────────────────────────────────────────   │
    │  CacheAligner  →  ContentRouter  →  CCR             │
    │                    ├─ SmartCrusher   (JSON)         │
    │                    ├─ CodeCompressor (AST)          │
    │                    └─ Kompress-base  (text, HF)     │
    │                                                     │
    │  Cross-agent memory  ·  headroom learn  ·  MCP      │
    └────────────────────────────────────────────────────┘
        │   compressed prompt  +  retrieval tool
        ▼
 LLM provider  (Anthropic · OpenAI · Bedrock · …)

Architecture · CCR reversible compression · Kompress-base model card

Canonical pipeline lifecycle

Headroom now exposes one stable request lifecycle across compress(), the SDK, and the proxy:

SetupPre-StartPost-StartInput ReceivedInput CachedInput RoutedInput CompressedInput RememberedPre-SendPost-SendResponse Received

  • Transforms still do the work: CacheAligner, ContentRouter, SmartCrusher, CodeCompressor, Kompress-base, IntelligentContext / RollingWindow.
  • Pipeline extensions observe or customize those lifecycle stages via on_pipeline_event(...).
  • Compression hooks still work and now sit alongside the canonical lifecycle instead of being the only extension seam.
  • Proxy extensions remain the server/app integration seam for ASGI middleware, routes, and startup policy.

Provider slices

Provider and tool-specific behavior is being moved behind dedicated modules under headroom/providers/ so core orchestration stays focused on lifecycle, sequencing, and policy.

  • CLI/tool slices: headroom/providers/claude, copilot, codex, openclaw
  • Provider runtime slices: headroom/providers/claude, gemini, plus shared backend/runtime dispatch in headroom/providers/registry.py
  • Core files stay orchestration-first: wrap.py, client.py, cli/proxy.py, and proxy/server.py now delegate provider-specific env shaping, API target normalization, backend selection, and transport dispatch instead of inlining those rules.

Proof

Savings on real agent workloads:

Workload Before After Savings
Code search (100 results) 17,765 1,408 92%
SRE incident debugging 65,694 5,118 92%
GitHub issue triage 54,174 14,761 73%
Codebase exploration 78,502 41,254 47%

Accuracy preserved on standard benchmarks:

Benchmark Category N Baseline Headroom Delta
GSM8K Math 100 0.870 0.870 ±0.000
TruthfulQA Factual 100 0.530 0.560 +0.030
SQuAD v2 QA 100 97% 19% compression
BFCL Tools 100 97% 32% compression

Reproduce:

python -m headroom.evals suite --tier 1

Community, live:

Full benchmarks & methodology


Built for coding agents

Agent One-command wrap Notes
Claude Code headroom wrap claude --memory for cross-agent memory, --code-graph for codebase intel
Codex headroom wrap codex --memory Shares the same memory store as Claude
Cursor headroom wrap cursor Prints Cursor config — paste once, done
Aider headroom wrap aider Starts proxy, launches Aider
Copilot CLI headroom wrap copilot Starts proxy, launches Copilot
OpenClaw headroom wrap openclaw Installs Headroom as ContextEngine plugin

MCP-native too — headroom mcp install exposes headroom_compress, headroom_retrieve, and headroom_stats to any MCP client.

headroom learn in action

Integrations

Drop Headroom into any stack
Your setup Hook in with
Any Python app compress(messages, model=…)
Any TypeScript app await compress(messages, { model })
Anthropic / OpenAI SDK withHeadroom(new Anthropic()) · withHeadroom(new OpenAI())
Vercel AI SDK wrapLanguageModel({ model, middleware: headroomMiddleware() })
LiteLLM litellm.callbacks = [HeadroomCallback()]
LangChain HeadroomChatModel(your_llm)
Agno HeadroomAgnoModel(your_model)
Strands Strands guide
ASGI apps app.add_middleware(CompressionMiddleware)
Multi-agent SharedContext().put / .get
MCP clients headroom mcp install
What's inside
  • SmartCrusher — universal JSON: arrays of dicts, nested objects, mixed types.
  • CodeCompressor — AST-aware for Python, JS, Go, Rust, Java, C++.
  • Kompress-base — our HuggingFace model, trained on agentic traces.
  • Image compression — 40–90% reduction via trained ML router.
  • CacheAligner — stabilizes prefixes so Anthropic/OpenAI KV caches actually hit.
  • IntelligentContext — score-based context fitting with learned importance.
  • CCR — reversible compression; LLM retrieves originals on demand.
  • Cross-agent memory — shared store, agent provenance, auto-dedup.
  • SharedContext — compressed context passing across multi-agent workflows.
  • headroom learn — plugin-based failure mining for Claude, Codex, Gemini.

Install

pip install "headroom-ai[all]"          # Python, everything
npm  install headroom-ai                # TypeScript / Node
docker pull ghcr.io/chopratejas/headroom:latest

Granular extras: [proxy], [mcp], [ml] (Kompress-base), [agno], [langchain], [evals]. Requires Python 3.10+.

Installation guide — Docker tags, persistent service, PowerShell, devcontainers.


Documentation

Start here Go deeper
Quickstart Architecture
Proxy How compression works
MCP tools CCR — reversible compression
Memory Cache optimization
Failure learning Benchmarks
Configuration Limitations

Compared to

Headroom runs locally, covers every content type (not just CLI or text), works with every major framework, and is reversible.

Scope Deploy Local Reversible
Headroom All context — tools, RAG, logs, files, history Proxy · library · middleware · MCP Yes Yes
RTK CLI command outputs CLI wrapper Yes No
Compresr, Token Co. Text sent to their API Hosted API call No No
OpenAI Compaction Conversation history Provider-native No No

Attribution. Headroom ships with the excellent RTK binary for shell-output rewriting — git showgit show --short, noisy ls → scoped, chatty installers → summarized. Huge thanks to the RTK team; their tool is a first-class part of our stack, and Headroom compresses everything downstream of it.


Contributing

git clone https://github.com/chopratejas/headroom.git && cd headroom
pip install -e ".[dev]" && pytest

Devcontainers in .devcontainer/ (default + memory-stack with Qdrant & Neo4j). See CONTRIBUTING.md.


Community

License

Apache 2.0 — see LICENSE.

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

headroom_ai-0.21.16.tar.gz (1.5 MB view details)

Uploaded Source

Built Distributions

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

headroom_ai-0.21.16-cp313-cp313-manylinux_2_28_x86_64.whl (18.5 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

headroom_ai-0.21.16-cp313-cp313-manylinux_2_28_aarch64.whl (19.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

headroom_ai-0.21.16-cp313-cp313-macosx_11_0_arm64.whl (17.3 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

headroom_ai-0.21.16-cp312-cp312-manylinux_2_28_x86_64.whl (18.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

headroom_ai-0.21.16-cp312-cp312-manylinux_2_28_aarch64.whl (19.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

headroom_ai-0.21.16-cp312-cp312-macosx_11_0_arm64.whl (17.3 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

headroom_ai-0.21.16-cp311-cp311-manylinux_2_28_x86_64.whl (18.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

headroom_ai-0.21.16-cp311-cp311-manylinux_2_28_aarch64.whl (19.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

headroom_ai-0.21.16-cp311-cp311-macosx_11_0_arm64.whl (17.3 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

headroom_ai-0.21.16-cp310-cp310-manylinux_2_28_x86_64.whl (18.5 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

headroom_ai-0.21.16-cp310-cp310-manylinux_2_28_aarch64.whl (19.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ ARM64

headroom_ai-0.21.16-cp310-cp310-macosx_11_0_arm64.whl (17.4 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

Details for the file headroom_ai-0.21.16.tar.gz.

File metadata

  • Download URL: headroom_ai-0.21.16.tar.gz
  • Upload date:
  • Size: 1.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for headroom_ai-0.21.16.tar.gz
Algorithm Hash digest
SHA256 2c88335cd00a56ce93fc09309500ef33f208b8e6843940d1f00a39d55d5bd6aa
MD5 313d91e19d3bb4675032ee7da4f4dd74
BLAKE2b-256 ec223e750d06d4810c318e80306ef778fa5311747b53a1f92f2bfe2d370906ec

See more details on using hashes here.

Provenance

The following attestation bundles were made for headroom_ai-0.21.16.tar.gz:

Publisher: release.yml on chopratejas/headroom

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

File details

Details for the file headroom_ai-0.21.16-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for headroom_ai-0.21.16-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0212ad42238620b666207780228203c6af5fa7c0ea7cf33009c4285faf46b530
MD5 eb43cf15447729e3dbf7b930e3d6deb0
BLAKE2b-256 7395d6d6d7c7da7aca8befbb92e43daa3a06bd2682fe38715323ccaf36f4fdc7

See more details on using hashes here.

Provenance

The following attestation bundles were made for headroom_ai-0.21.16-cp313-cp313-manylinux_2_28_x86_64.whl:

Publisher: release.yml on chopratejas/headroom

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

File details

Details for the file headroom_ai-0.21.16-cp313-cp313-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for headroom_ai-0.21.16-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 b1f4045a768f0eaf2d1c8303ffa2332be3ba2924b520212c0b9547c160c4c105
MD5 d4e503a668d8739e18ed3ae20414b661
BLAKE2b-256 1b5d969bfa00e6dc0114d6032a10003cf75deacffcb5d356e3c5d870a55c58da

See more details on using hashes here.

Provenance

The following attestation bundles were made for headroom_ai-0.21.16-cp313-cp313-manylinux_2_28_aarch64.whl:

Publisher: release.yml on chopratejas/headroom

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

File details

Details for the file headroom_ai-0.21.16-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for headroom_ai-0.21.16-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 998ceee142c5a4cdef00f074d91010eaa38312fa11a34c4010485cda87fb4e84
MD5 15c90767813f28cb41cca02049ec3729
BLAKE2b-256 90e7ae5996cabf6c0765d408737e802261808a3cc87e070a503f9e090d68eb94

See more details on using hashes here.

Provenance

The following attestation bundles were made for headroom_ai-0.21.16-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: release.yml on chopratejas/headroom

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

File details

Details for the file headroom_ai-0.21.16-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for headroom_ai-0.21.16-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5589a9394d6f50a57f03b280733e937f3c9e12d4687fa48b0479e8d1bcda124e
MD5 a1569423138f13b63902ef8ee14c4660
BLAKE2b-256 14f183a9bcddfbc25076dec02049ae8b1b2a73c4f09327671fe14c97d341c067

See more details on using hashes here.

Provenance

The following attestation bundles were made for headroom_ai-0.21.16-cp312-cp312-manylinux_2_28_x86_64.whl:

Publisher: release.yml on chopratejas/headroom

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

File details

Details for the file headroom_ai-0.21.16-cp312-cp312-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for headroom_ai-0.21.16-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 5a1464b846f0c0b32335ebb38ae9b135224025f151dc57886047837e1d15d723
MD5 004f2425961c5ae8470f9063dcfdf5b1
BLAKE2b-256 7dcd2821101b3275e97a7cf7944a6b597b0d6b052eb7b92c1eff6916ecf0745f

See more details on using hashes here.

Provenance

The following attestation bundles were made for headroom_ai-0.21.16-cp312-cp312-manylinux_2_28_aarch64.whl:

Publisher: release.yml on chopratejas/headroom

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

File details

Details for the file headroom_ai-0.21.16-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for headroom_ai-0.21.16-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3816d7b7ebde2c538c846741dd7c1937b026223e6a68976d861325287c7e5184
MD5 de32a8dbce0bd03efcab3c414154a65b
BLAKE2b-256 eba510427d465d8179445e47e338bed3c1b1b86259acad7bd03364ee7e1bca36

See more details on using hashes here.

Provenance

The following attestation bundles were made for headroom_ai-0.21.16-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: release.yml on chopratejas/headroom

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

File details

Details for the file headroom_ai-0.21.16-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for headroom_ai-0.21.16-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ca0e2a083b2752bd3f385670c03883dbf73c72a3d21625abd86ade542b577164
MD5 7b60e2070544d605e54bb889f0f52502
BLAKE2b-256 03b84038e4d7b7286bb040d2cec9ad35f0d0098bb4a3bd5fc7d6bf4366f3e5ac

See more details on using hashes here.

Provenance

The following attestation bundles were made for headroom_ai-0.21.16-cp311-cp311-manylinux_2_28_x86_64.whl:

Publisher: release.yml on chopratejas/headroom

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

File details

Details for the file headroom_ai-0.21.16-cp311-cp311-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for headroom_ai-0.21.16-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 fb9b24be2787dd59dd040d96d279fb34ea2b3861bc8f93e733dad0cf7ab7364f
MD5 fdc30c4f6c77be2120af68ed45af010d
BLAKE2b-256 a103b85252778f35865945e223b3bfe067f5b40225f555fb9a699d42ca5a5185

See more details on using hashes here.

Provenance

The following attestation bundles were made for headroom_ai-0.21.16-cp311-cp311-manylinux_2_28_aarch64.whl:

Publisher: release.yml on chopratejas/headroom

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

File details

Details for the file headroom_ai-0.21.16-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for headroom_ai-0.21.16-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d6903f1bd08a204921883b116c80133d8ebf280cf1bfe8d132482212f4c6f0a2
MD5 e2d0e0a7715b83c58559767d5070b427
BLAKE2b-256 f0895a4fb01ec439df2f322e05fc3094621a8d6ffa79bec0000dce229555ca1d

See more details on using hashes here.

Provenance

The following attestation bundles were made for headroom_ai-0.21.16-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: release.yml on chopratejas/headroom

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

File details

Details for the file headroom_ai-0.21.16-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for headroom_ai-0.21.16-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 091e9827a788c4d84d7ff2cea1dbcd2ed74dde97b687bcbc85cf1b51cba5b302
MD5 838d6ffa3cc09d16cffe8e01c273fdf3
BLAKE2b-256 92c6beb3bb23668691bd2bed181ade712408128afe84343a4692be44ccc1172b

See more details on using hashes here.

Provenance

The following attestation bundles were made for headroom_ai-0.21.16-cp310-cp310-manylinux_2_28_x86_64.whl:

Publisher: release.yml on chopratejas/headroom

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

File details

Details for the file headroom_ai-0.21.16-cp310-cp310-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for headroom_ai-0.21.16-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 4ddb82ca6f368a0a23da26d33f559f2afb89ea8210ffbe0f4ed05a09c1c28cc9
MD5 4d29622934026bc6c0a20b8be0a30734
BLAKE2b-256 75092d524b574cef194cbf21050086dae05cae7c41b49a14442fedf4faa45299

See more details on using hashes here.

Provenance

The following attestation bundles were made for headroom_ai-0.21.16-cp310-cp310-manylinux_2_28_aarch64.whl:

Publisher: release.yml on chopratejas/headroom

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

File details

Details for the file headroom_ai-0.21.16-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for headroom_ai-0.21.16-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 21e5bebc2159d1948346eb68073e3fba5e8ec31aaeeb9919c8539ca61448a034
MD5 65a644562e205063d0091370403445ee
BLAKE2b-256 4ffeb7a1da7017df2792b318023b062cac462d3923061d54d65fc1a9272707ac

See more details on using hashes here.

Provenance

The following attestation bundles were made for headroom_ai-0.21.16-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: release.yml on chopratejas/headroom

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