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 managed RTK and lean-ctx binaries for local CLI context filtering — 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
lean-ctx CLI commands, MCP tools, editor rules CLI wrapper · MCP 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. Headroom can also use lean-ctx as the selected CLI context tool; set HEADROOM_CONTEXT_TOOL=lean-ctx before running headroom wrap ....


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.26.tar.gz (1.6 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.26-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.26-cp313-cp313-manylinux_2_28_aarch64.whl (19.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.10manylinux: glibc 2.28+ ARM64

headroom_ai-0.21.26-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.26.tar.gz.

File metadata

  • Download URL: headroom_ai-0.21.26.tar.gz
  • Upload date:
  • Size: 1.6 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.26.tar.gz
Algorithm Hash digest
SHA256 4d1273b7f81fabf882e836e83994ad94566f5d74856db8781b26db8a04444b06
MD5 18be6ff8306b6ebe29bc4bbabe180b6d
BLAKE2b-256 40b70119488e33c9599995fb7335b5ea293118b2b1f2aab324c718e18cd78ed9

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for headroom_ai-0.21.26-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 52a3b23f4d715eed392d7dfafed95d07e454a4407ed5e679d7ea8970c1b9c0d3
MD5 54f6e8d5a8fd5e91cf26224ba23e82b1
BLAKE2b-256 fb9e600a0a02038a5456652197d55648d1ceb119fb5269f66099ad559aca592d

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for headroom_ai-0.21.26-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 cfc5834cd0e01a1f6bbf6a92cd2e8ed8da58cb012997546cbf1804a3114d160b
MD5 5822bd35b61443154b2f39e1cb8c2eb3
BLAKE2b-256 c645dd7efb2f7dd33241388ddddb0b1bd182cfd6f1b0b9cfc7cd4baef2a6c14e

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for headroom_ai-0.21.26-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a33073cc0743491a29814032e07c28f6c4ca710e55efdb5e9858b82311614a46
MD5 57ac5af5bb738ca3f305a37ae0c25e6c
BLAKE2b-256 190fc960b08cb7e4a1fa889e3194de78c32f659430287401928a849c908c7b7b

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for headroom_ai-0.21.26-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a798b9af1c3e99a95e6106cffea3258d0d9cd365020c811a570e330e363f02aa
MD5 af4e7fd8dc193f64c92dd3f2109c4568
BLAKE2b-256 187c2ef5a28b39bebb5914dfd67d32290f1dcc9c44b89754fc4c59465361884e

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for headroom_ai-0.21.26-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 4cbbfb5f9a445a7a3b65c115d323f0c6068cd3405efb8ccc36793f68c2298840
MD5 8e5de9b1694686f2d2719b1a9d6fd5a1
BLAKE2b-256 68a5c9d2e0f0723b80005e00e1483371aae5c0683ae82b0739658dc7889a41e8

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for headroom_ai-0.21.26-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ce486f2c9e4ad1cb8a4b9383b21125e84248052973c90bb78c690155ae0f922d
MD5 9be48610176bc45370baa5c13ce64bf8
BLAKE2b-256 777c6c0cfebbfd1e4c9f61c348edbbeebff7cfd18bec349e3597ed5c5748afe6

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for headroom_ai-0.21.26-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 fc6785f6a9e318a1a087df15b6e9de09e1c7eefe8f90f48ad746cb97eb973591
MD5 9c2a0a088eb4d26a3d10a1cb9b32bae3
BLAKE2b-256 0c6738599c2ebb11d65394a9ce043dc06e19134ac96bbb7b05d534e6fb61792e

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for headroom_ai-0.21.26-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 6aed13ea60a7824091c6a44ad400f4b34daa68f9cb492feb6d6dccfde3cbf617
MD5 350e3ec1f4df55c98b6e343cb3cb56ff
BLAKE2b-256 7a3302dda36d9e1a7405f48272accc859d00a5b8b351024d7db4225d7349fba9

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for headroom_ai-0.21.26-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 666784f45e184bcaad7c008254f853c1eac4bc9741db77d06ca22003ed437763
MD5 75f6620907f50398715c29478b7eca69
BLAKE2b-256 cdb4477b3cf649f23e8a572445b8a4cd64df7b733aaf8ae20397adf757743983

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for headroom_ai-0.21.26-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2186420d4c0c3c1cbbed7a2be3866b14a76d15f2d60fc2af0263d853e7a5404f
MD5 e330d995fa83a0b096a59ec78d388e75
BLAKE2b-256 65a2cd7a0e86466150b3e948e9148be75d43438df0b5a32b6d52ddb2fb365a73

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for headroom_ai-0.21.26-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 68f3917100081b595ae3eb9e0bd079ebfecae610a3613e5293b1c8faa7b8ebdc
MD5 44718fe577cc25f3e3d61d132265f9ec
BLAKE2b-256 528f419bcdb19bf7fc30047842575104feee0c3d9e84774bd2de40426224209f

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for headroom_ai-0.21.26-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ff34434d7d7b3acf503921f49c26364e7210f58c4f23a4fe2702da4ef890a569
MD5 33df6e84d7bf3aaf4878f427b910c366
BLAKE2b-256 8f78c447a24c3022cc16b0a2f57cbb0e62ba5c5f065c222572d31a16cb212a84

See more details on using hashes here.

Provenance

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