Rent → buy inbox

Every inference, triaged.

Point your provider client at kolm. Every call is captured, hashed, and dropped into this inbox. Keep what matters, discard what's noise, promote a winner into a recipe. When a namespace hits 1,000 pairs, distill it into a signed .kolm Specialist that runs on your own model — no upstream tokens, no per-call latency, full receipt chain.

Sign in to view your captures

The captures inbox is gated by your API key. Sign in or get an API key and your live captures land here.

How the loop closes

StepWhat happens
1. CaptureYour client hits kolm.ai/v1/capture/{openai,anthropic}. We forward upstream, return the response, and record (model, prompt_hash, output_hash, latency, ts).
2. TriageKeep — lock into the next distill batch. Discard — remove from training. Promote — deep-link into the recipe playground to lift this single observation into a reusable spec.
3. DistillAt 1,000 kept pairs in a namespace, the namespace flips to ready. One click fires POST /v1/specialists/auto-distill: the trainer bridge fits a LoRA, stamps a K-score, and returns a signed .kolm artifact.
4. SwitchRe-point the client at your own kolm serve. Per-call cost drops to electricity; the artifact ships with the receipt chain that proves how it was built.

What we never persist

Your upstream provider key (forwarded in x-upstream-api-key, dropped after the call). Cross-tenant data — the inbox is scoped to your tenant id by your API key. Raw bodies older than your retention window: hashes only, configurable per-namespace.