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.20.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.20-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.20-cp313-cp313-manylinux_2_28_aarch64.whl (19.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

headroom_ai-0.21.20-cp313-cp313-macosx_11_0_arm64.whl (17.4 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

headroom_ai-0.21.20-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.20-cp312-cp312-manylinux_2_28_aarch64.whl (19.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

headroom_ai-0.21.20-cp312-cp312-macosx_11_0_arm64.whl (17.4 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

headroom_ai-0.21.20-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.20-cp311-cp311-manylinux_2_28_aarch64.whl (19.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

headroom_ai-0.21.20-cp311-cp311-macosx_11_0_arm64.whl (17.4 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

headroom_ai-0.21.20-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.20-cp310-cp310-manylinux_2_28_aarch64.whl (19.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ ARM64

headroom_ai-0.21.20-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.20.tar.gz.

File metadata

  • Download URL: headroom_ai-0.21.20.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.20.tar.gz
Algorithm Hash digest
SHA256 dc4b1d054ff1fec871f5af7f8b8123a8832074458ffd65041c5b1c9d1416ef55
MD5 13c509c583e6c737b0d5b648eae17392
BLAKE2b-256 ffeede48344aef89826235059014422625604e0baee59acfe1327b194d9ac9b8

See more details on using hashes here.

Provenance

The following attestation bundles were made for headroom_ai-0.21.20.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.20-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for headroom_ai-0.21.20-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 736b3e67a4369da800e0fe0f45e299b16776392c75c968656408a7c428b6c75e
MD5 cefc4c88e44a774f932c70a301ab3845
BLAKE2b-256 773b9d593acc7ed43c58f45d5439e8552327e760207a0ffef54999e6e3c9784e

See more details on using hashes here.

Provenance

The following attestation bundles were made for headroom_ai-0.21.20-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.20-cp313-cp313-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for headroom_ai-0.21.20-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 3f6ef3fd690f8217886858e2c7c9b0f5e81b1ae8ba049031cd671e28ec9dd413
MD5 8de9bc06c4f4fa7fc19541f92a54a26f
BLAKE2b-256 8ba8007318e47cf356beb743e64793c65a03d10c2d10ad0768e37df686bdc2dc

See more details on using hashes here.

Provenance

The following attestation bundles were made for headroom_ai-0.21.20-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.20-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for headroom_ai-0.21.20-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e03e2c9d443454dedd480d77da361ba7cc404509b2d71a75f42104a2b29b073e
MD5 4a3882a8e32722d16d284d07886bc924
BLAKE2b-256 688012b2d321c70a77c9885fbc2ecf8528796fa5bb016748e78d35fe06c6a5dd

See more details on using hashes here.

Provenance

The following attestation bundles were made for headroom_ai-0.21.20-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.20-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for headroom_ai-0.21.20-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3b21a72875affba8d320ed864dc58619df980b11ac04ce42fe3afb9b4318f7aa
MD5 c60cefabab00c39d9a6b9fef38b3d5b2
BLAKE2b-256 2b59108da457a22591843b414c3f47cc0824e326344013c3f8793d5d47d2c69f

See more details on using hashes here.

Provenance

The following attestation bundles were made for headroom_ai-0.21.20-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.20-cp312-cp312-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for headroom_ai-0.21.20-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 d99685c2c18071a798149df940a3d87a865221ec79574ad0c7d9bc8ca758b2f2
MD5 63622dd1cfdcab046444da703622ad92
BLAKE2b-256 7ebf850b4870efc9087695bb1fdfb9bd46b0cb76742143b3a773c7cdd246c3aa

See more details on using hashes here.

Provenance

The following attestation bundles were made for headroom_ai-0.21.20-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.20-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for headroom_ai-0.21.20-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0d8b25c300ee9a5960b6a9f2665e4e89df97ce791d7f4c92387caabc5727332e
MD5 ea033eb01f4281e5e6fd8601d3271d81
BLAKE2b-256 b9a9af61d148e729476b275a4e53667805051c458de298f46a3b92531310699e

See more details on using hashes here.

Provenance

The following attestation bundles were made for headroom_ai-0.21.20-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.20-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for headroom_ai-0.21.20-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6d1812af54aa1c3ccc2cd796acbf6b8ed70551a6db5bf76e077fad20d106b411
MD5 c52962ee1d6dc4ece2ecf08c58be8917
BLAKE2b-256 54d07c4d74bd133369a53aed7fd7f7e8df810ca3563e565aea7df928833b2114

See more details on using hashes here.

Provenance

The following attestation bundles were made for headroom_ai-0.21.20-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.20-cp311-cp311-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for headroom_ai-0.21.20-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 785ad065485167cd4e847f36ea466cebc3861c003086203a45ce00521f8f9339
MD5 4ff1484060e638d0ba7434b0a69a4ec7
BLAKE2b-256 049c296051995e5220f461e810e3c537915a686eed6ba8637bd790a17a7e9430

See more details on using hashes here.

Provenance

The following attestation bundles were made for headroom_ai-0.21.20-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.20-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for headroom_ai-0.21.20-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c06d56262316f4e8025007fdb1a43c1b57d949b222a64bf6c62cefaf648b6e51
MD5 98f18056244f7d2011f5bc6f22eab974
BLAKE2b-256 46762721121542431aebb685fabd134a84283642c7ad35afa9395be20bd16542

See more details on using hashes here.

Provenance

The following attestation bundles were made for headroom_ai-0.21.20-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.20-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for headroom_ai-0.21.20-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 308e6747eb1c4cb1ac5140980c26f4c4c7ba8781ed4591edff7681757a8e36fe
MD5 7814a497d756f6a17e8fe0a4b298425b
BLAKE2b-256 ff1edb6bc169c2d9654c778e13bf0e8a9b680e562f6aa5006a671e2d3f16381d

See more details on using hashes here.

Provenance

The following attestation bundles were made for headroom_ai-0.21.20-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.20-cp310-cp310-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for headroom_ai-0.21.20-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 c73287127d5c5ee3a31d5adb9cf68575ba5a285740ed579cf005e1581428d067
MD5 bd10e49df081af791b2c808fe788289b
BLAKE2b-256 50d034ca99645f7abb6ee6a5f92f2d600488030aabfa7cc2d6fbfa9616a7427e

See more details on using hashes here.

Provenance

The following attestation bundles were made for headroom_ai-0.21.20-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.20-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for headroom_ai-0.21.20-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7d0a141a0fc4d55fe3bade4fb8ad7f1af17b2cacb30cba85a835e4ac1354c4ad
MD5 f075884d0c89985e09101118c2b1b131
BLAKE2b-256 993b44e4d76244b3198861f6356ad6c3d6e612457d3bf221ab5807456b3c17ce

See more details on using hashes here.

Provenance

The following attestation bundles were made for headroom_ai-0.21.20-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