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

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 Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

headroom_ai-0.20.22-cp313-cp313-manylinux_2_28_x86_64.whl (15.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

headroom_ai-0.20.22-cp313-cp313-manylinux_2_28_aarch64.whl (16.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

headroom_ai-0.20.22-cp313-cp313-macosx_11_0_arm64.whl (13.8 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

headroom_ai-0.20.22-cp312-cp312-manylinux_2_28_x86_64.whl (15.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

headroom_ai-0.20.22-cp312-cp312-manylinux_2_28_aarch64.whl (16.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

headroom_ai-0.20.22-cp312-cp312-macosx_11_0_arm64.whl (13.8 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

headroom_ai-0.20.22-cp311-cp311-manylinux_2_28_x86_64.whl (15.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

headroom_ai-0.20.22-cp311-cp311-manylinux_2_28_aarch64.whl (16.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

headroom_ai-0.20.22-cp311-cp311-macosx_11_0_arm64.whl (13.8 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

headroom_ai-0.20.22-cp310-cp310-manylinux_2_28_x86_64.whl (15.0 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

headroom_ai-0.20.22-cp310-cp310-manylinux_2_28_aarch64.whl (16.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ ARM64

headroom_ai-0.20.22-cp310-cp310-macosx_11_0_arm64.whl (13.8 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

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

File metadata

File hashes

Hashes for headroom_ai-0.20.22-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b515cefb9b96e83e57e32a38a6f52d246d97ae37c7538e95c5fd1fc7ccd577f8
MD5 fd6490c57a2e1d4747e184ac9b8fdfbf
BLAKE2b-256 ef9961aa1eb7f5c5623f2fea41c66c5bd11f9f530504bb425473ec0c52dcf27c

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for headroom_ai-0.20.22-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 ccde13bc4ce998fb1c2dd7f9199fd0daa9489a4570b2aa20657a2be83768054b
MD5 4a4fc7877958488171cb7dad2d456e9c
BLAKE2b-256 fe67bc0a019d33dd976d4210816bd4128f71fba293fec1323240d8fb1751a860

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for headroom_ai-0.20.22-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 35aa7aaf46cb5df0ef4d8fa2b7ac1f59e5ad1563824c6b55109292d173e1e0aa
MD5 0eb9e064e013f7158341829c7e2cf039
BLAKE2b-256 b3e4071efc36d92b5b39246915705b92e088b7d5719f47344552c06f85a5ac77

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for headroom_ai-0.20.22-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 66e89c292546c07f37c87c71590c5afd44ce415cc7ceb4c7126f7431cb939430
MD5 6e7245622f448680b6a0dfb2bc994496
BLAKE2b-256 0e7c4652d4748bcc13e487df65344e9e62c3f296ee9d6443f0be9b8feaf4b940

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for headroom_ai-0.20.22-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 1ac28c6be695a688030127bc9f0d6a2fdc0685c312fd4e608a903519c1cd6dcb
MD5 604e57ded70067e0a772b506dda5566e
BLAKE2b-256 661c159a144f1d1271e8996cbeb3a4d537b795a5e9330b95afc93d890c6864cd

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for headroom_ai-0.20.22-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7b0a2125d907482756b3e81434392281462c708770d6d1f20001b96adc84ffec
MD5 4a91a7e0ff15fa951539f05564763a34
BLAKE2b-256 4179c16b4a610a4754b9c057e41f7477990d1f18f7f9c75562829afe806ba7d6

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for headroom_ai-0.20.22-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6903f24c079b3f05b36994f8fac573b232f447edcb9c3df44b8f7a33a6d89c04
MD5 5c578eed775f766d84753c16c4e30397
BLAKE2b-256 9230fec7c8743f58bf38da13f0467179ce42cddb2ee609fd767a2a1557d76245

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for headroom_ai-0.20.22-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 b247c0df4c5a1aa36127639a45fc21b1bf66977737ca4815e5ea70ea4899733d
MD5 d4b3bfa147e12233d963022aba4d2ee3
BLAKE2b-256 ddaf601c004797223d579238ce55adc6368598ef795e1b9a03db0ee968e3a877

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for headroom_ai-0.20.22-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0abed2c26da7b54bbfcb8d15742d97682150c69651c6f7baf6e184dd5b663079
MD5 66c667ec924c592cf2a85345b7611fe2
BLAKE2b-256 d3a4f9e8b8e934df072c65566d77759b6e62b6d1e39e4f90886c63251b7ed7e8

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for headroom_ai-0.20.22-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a76fd09b17065806e6d13b36d1902b1627c3d7d751e43fb4f85572009a833316
MD5 0404b990fc77469f38d990f108a431b0
BLAKE2b-256 c0cd07587b599c6dc8db92170d4297908af0b2ac09a06877bba3ae9c213a062c

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for headroom_ai-0.20.22-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 d078210478b926d15015e59e1e0598f1226bd1bcff3c05b90a43ff6e0b14a80d
MD5 31e233248f8bf3abfd90c6c2ab309dae
BLAKE2b-256 ab67f3406451b4fdcbc80b27d719b4ad6c65a35446d30f5c21640320cc990b0c

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for headroom_ai-0.20.22-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 bcc1596c3fbd7f7cb935a680530db6f3cf5f294462794752939395c3a1020df4
MD5 c4eb54f052bb7678256f2672e986aae1
BLAKE2b-256 77488c9a316ae3b5dc745976fedb5f156b77e8098f1258ff2af1225dafa32667

See more details on using hashes here.

Provenance

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