Open source in August · launch in September — join the waitlist →
legroom_

Your AI coding bill is an observability problem.

Legroom is a local-first meter and guard for Claude Code. It sees every request at the wire, shows where every token goes, stops invisible waste — and proves every saving from your own ledger, not from a marketing page.

Two emails total: when the repo goes public and when v1 ships. No drip campaign. Unsubscribe is one reply.

  • Apache-2.0 open data path
  • Your code never leaves your machine
  • Content-free ledger
  • No telemetry. Ever.
$ legroom report --week
weekly savings & waste report   Jun 29 – Jul 5

  spend (API-equivalent)      $184.20   exact
  cache reads / input         71.4%     exact
  saved by caching            $312.55   estimated

  findings
   cache-bust storm · Tue 14:02        ~$18.40 wasted
    settings edit mid-session busted a warm prefix
   subagent model mismatch · 3 sessions
    configured sonnet → ran opus       ~$41.10 over
   ttl-mismatch: your gap profile favors 1h TTL
    would have saved ~$9.80/week        estimated

  guard
   session cap $25 · 1 pause · confirmed by you
   no runaway sessions this week
sample · jun 29 – jul 5
The weekly report: every number labeled exact or estimated. No claim without a receipt.

[ The problem ]

The waste you can’t see

The famous agentic-coding cost blowups of 2026 were not people using AI too much. They were observability failures — invisible at the harness, obvious at the wire.

$6,000

in one night

A provider silently cut the prompt-cache TTL from 1 hour to 5 minutes. An overnight polling loop re-wrote an ~800K-token context ~48 times a day at cache-write prices. Nobody saw it until the invoice.

MakeUseOf, May 2026 ↗

Opus

when you configured Sonnet

Subagents configured for cheaper models were silently upgraded to Opus. “85% of your usage came from subagent-heavy sessions” — billed at the premium rate, invisible in the session view.

claude-code #50742 ↗

66K tokens

before your first prompt

MCP servers and tool definitions tax every single request — and the built-in context meter misreported MCP usage roughly 3× for months. The tax is real; the dashboard was wrong.

Scott Spence: optimising MCP usage ↗

None of this shows up in your harness. All of it shows up at the wire — cache economics, subagent fanout, the MCP tax. That is where Legroom sits.

[ What it does ]

See. Guard. Save.

Three layers, in the order that keeps you honest: measure first, protect second, optimize only with evidence.

01

Free & open source

See

  • Wire-truth observability: every request, response, and retry between your harness and the API
  • Cache economics made visible — hit rates, cold restarts, what a bust actually cost
  • Subagent fanout and per-model breakdown, MCP/tool tax per session
  • Statusline, CLI metrics, and a local dashboard; exact costs where the API reports them, labeled estimates where it doesn’t

02

Free & open source

Guard

  • Session budget caps with warn → confirm → block modes
  • Runaway-session detector: spend-velocity anomalies caught in minutes, not on the invoice
  • Cache-anomaly alarm — the “$6,000 overnight” failure class, detected from your own ledger
  • Subagent model-mismatch alarm: configured Sonnet, running Opus? You’ll know.

03

Mechanism free · intelligence paid

Save

  • Deterministic detectors turn your ledger into recommendations with receipts
  • Routing config with cache-safe stickiness — switching models without torching your warm prompt cache
  • A weekly savings & waste report: every number labeled exact or estimated
  • Later, paid: continuously re-verified routing policy packs — the mechanism stays open, the refreshed intelligence is the product

[ Trust by architecture ]

Built to be distrusted

Local-first, by topology

Legroom runs on your machine, between your harness and the API. No cloud middleman, no new place your prompts and diffs travel to. It is the only routing/observability topology that adds zero new trust surface.

A content-free ledger

The evidence ledger records token counts, timings, models, routes, and fingerprints — never prompts, never code. Raw capture exists only as an explicit, local, opt-in switch.

No telemetry. Ever.

Not “anonymized”. Not “aggregate”. None. The binary phones home for nothing; the one future exception (an opt-out update check) will be documented field by field before it ships.

Open where it matters

The entire data path — proxy, ledger, detectors, routing — is Apache-2.0. Every tool that earned trust at this layer (Tailscale, Zed, Langfuse) is open exactly here. Verify, don’t trust: the repo goes public in August.

Read the security one-pager →

[ Differentiation by refusal ]

What Legroom does not do

  • It does not send telemetry. None — not “anonymized”, not “aggregate”.
  • It does not record prompts, code, or file contents. The ledger is content-free; raw capture is a local, explicit opt-in.
  • It does not resell tokens or add margin. BYOK, zero markup — we sit on your side of the meter.
  • It does not play subscription-limit games. Passive observability plus API-side routing, ToS-clean by design.
  • It does not claim savings it cannot prove. Every number is labeled exact or estimated, from your own ledger.
  • It does not block your work. If Legroom ever breaks, your traffic passes through.

[ One unit, not four tools ]

The point-tool stack, integrated

Cost-conscious Claude Code users run a stack of good tools that don’t know about each other:

a usage reporter

tells you what you spent, after the fact

a model router

switches models, blind to your cache state

an output pruner

trims tool output, blind to the ledger

a spend monitor

watches totals, blind to the cause

measure recommend act verify
the integrated loop — verified savings feed the next measurement

Legroom is those capabilities as one coherent unit, consistent by construction: routing decisions respect cache state, the guard reads the same evidence the recommendations cite, and every action lands in one ledger. Each piece exists elsewhere in disconnected form. The integrated loop — measure → recommend → act → verify — exists nowhere else.

[ How it works ]

Ten minutes, reversible

  1. step 1

    $ legroom install

    Point your harness at the local proxy

    One command wires Claude Code to Legroom on localhost. Backups are made, settings are preserved, and uninstall restores everything.

  2. step 2

    $ claude

    Work exactly as before

    Legroom observes at the wire, passively. If it ever breaks, your traffic passes through — the meter must never block the work.

  3. step 3

    $ legroom report --week

    Get the receipts

    Spend, cache economics, findings, and what they cost you — every number labeled exact or estimated. The screenshot people share is the whole product thesis.

BYOK and ToS-clean: observability is passive; routing works against API keys and gateways — no subscription-limit tricks, no OAuth games.

[ direction · in development ]

Your sessions will not stop at your machine.

Legroom pairs with Berek — the company-side agent environment by the same maker. A session belongs to a task and can start, stop, and transfer between your local machine and the company’s Berek deployment, behind the same secrets boundary on both sides. Legroom keeps background agents spending their AI budget efficiently; Berek provides the continuity between the company environment and the dev machine.

Berek — the company side ↗

[ For teams ]

Running 5–100 devs on AI coding?

You are likely spending $200–600 per dev per month with zero attribution. The Team plane adds a shared ledger, budgets and alerts across people, per-dev/per-repo/per-task attribution, and policy distribution — priced flat, against verified savings from your own ledger. Founding design-partner slots open in Q4: $299/mo flat, up to 15 seats, and a “pays for itself” guarantee.

[ FAQ ]

Fair questions

When can I actually use it? +

The repo goes public in August (quiet soft-open, build from source). The polished launch — signed binaries, auto-update — lands in September. Waitlist members get one email at each moment.

Does it work with my Claude subscription (Pro/Max)? +

Observability and the guard: yes — Legroom watches passively, whatever auth your harness uses. Routing to other providers is BYOK/API-key territory. Legroom never does subscription-limit arbitrage; that entire category dies by platform enforcement, and we are not building on borrowed time.

What exactly do you record? +

A content-free ledger: token counts, timing, models, routes, sizes, fingerprints. Never prompts, never code, never file contents. Raw capture exists only as a local, explicit opt-in. The security page lists the fields.

What is free and what will be paid? +

Everything that runs on your machine and touches your content is free and Apache-2.0, forever — the proxy, ledger, detectors, guard, routing mechanism, dashboard. Paid, later: continuously re-verified routing intelligence (policy packs), and the team/sync planes. It is written down on the pricing page before launch on purpose.

Are the savings numbers real? +

Every number in every report is labeled exact or estimated, computed from your own ledger, with the estimation method stated. This niche is full of unverifiable “80% savings” badges; our differentiation is that we refuse to play. No claim without a receipt.

Which harnesses and providers? +

Claude Code first. At launch: direct Anthropic plus any OpenAI-compatible endpoint, including enterprise gateways. Codex, Cursor, and OpenCode adapters follow by observed demand — the ledger schema is harness-agnostic.

Why would I trust a proxy with my traffic at all? +

You shouldn’t — that is the design constraint. Local-first topology, content-free ledger, no telemetry, and an Apache-2.0 data path exist precisely so you can verify instead of trust. Read the security page, then read the code in August.

The meter goes public in August.

Join the waitlist and get exactly two emails: repo open, and launch. If you run a team, check the box — founding partner slots are limited to five.

Two emails total: when the repo goes public and when v1 ships. No drip campaign. Unsubscribe is one reply.