Auth: validate email pre-insert; reject disposable domains; keep `oauth_callback`; log `organization_id` + `request_id`; omit query/secrets; test valid/malformed/duplicate; return `invalid_email`.
illustrative rewrite · not production engine output
01
The things you run yourself. Local and byte-exact: your prompts never leave your machine to save you tokens.
caveman wrap claude proxies your agent on your machine, byte-safe. Without an account it watches and tells you what compression would have cut. Log in — free, one seat, no card — and it turns on.
$ cave wrap claude→ proxying claude → api.anthropic.com (byte-safe; your bytes are untouched)→ compression: OFF — no account yet14 requests · 512k tokens sentcompression would have cut ~310k of those (61%) —measured locally (inferred).turn it on: caveman login (free · 1 seat · no card)
$ caveman login→ signed in as dana@example.dev→ seat 1 of 1 active (Free — 5M optimized tokens/week)→ compression: ON→ telemetry: token counts only, never your prompts$ cave wrap claude→ compressing on your machine · savings land in your dashboard
illustrative session · local savings are measured locally and labeled inferred
A base-URL swap on your machine. Record mode is always pass-through; on any parse problem the body goes through unchanged. Your traffic is never held hostage — an expired plan means compression turns off, nothing else.
Tool output, logs, JSON, diffs, search results, stale context — compressed on-device before tokens cost you anything. Every original is recoverable byte-for-byte, and savings stay labeled inferred.
The local profiler. It reads your own sessions and proposes the cost moves compression alone can't make — cache hints, oversized tool results, retry loops — ranked by what they could save.
Prompts and responses go direct. Caveman's cloud is not in that path.
Token counts, model names, savings numbers. There is no code path that uploads prompt or response bytes.
Nothing. Zero data retention — the endpoint refuses the upload entirely.
Prompts go from your machine straight to your provider. Caveman's cloud sees token counts, never tokens. On Enterprise, it sees nothing at all.
1 seat · account, no card
1 seat · wrap + hosted gateway
10 seats · $29 per extra
contract seats · zero data retention
3 devices per seat · dashboard-only viewers are free
Auth: validate email pre-insert; reject disposable domains; keep `oauth_callback`; log `organization_id` + `request_id`; omit query/secrets; test valid/malformed/duplicate; return `invalid_email`.
illustrative rewrite · not production engine output
tsconfig.paths. Add alias. Rebuild.const cave = new Cave({ baseURL })
await cave.compress(json)
return recoveryHandle
cave = Cave(base_url=url)
result = cave.compress(data)
print(recovery_handle)
tool caveman_compress
input JSON · logs · schemas
output inferred · CCR handle
The MIT skill: output compression for Claude Code & 30+ agents.
curl -fsSL https://raw.githubusercontent.com/JuliusBrussee/caveman/main/install.sh | bashThe commercial compression core: a byte-safe local wrap for your agent.
The skill is MIT and always will be — so are the extension shell and the SDKs. The engine is commercial, shipped as a binary. That's what pays for a real free tier.
Yes. The wrap checks its entitlement about once every three days and carries a seven-day offline grace window. Compression runs entirely on your machine.
Compression turns off and the wrap keeps proxying untouched. Your traffic is never blocked, throttled, or altered — that rule has no exceptions.
Lives in your chat box: ChatGPT, Claude, Gemini.