That's the point of routing: only prompts a local model handles well get routed locally, and anything nuanced or complex goes up a tier. When the classifier isn't confident, it escalates one tier up rather than risking an under-served prompt — over-provisioning wastes cents, under-provisioning wastes an afternoon. On held-out test prompts the router classified 24 of 24 correctly with zero dangerous misroutes.
A modern dev machine is enough. An 8–14B model runs comfortably on an Apple-silicon laptop with 16–24 GB of RAM or an equivalent desktop. kultivait init surveys your machine and adapts to whatever models you have — your smallest capable model becomes the simple tier, your largest the reasoning tier.
No. If you already use the claude or gemini CLIs, Kultivait.ai routes cloud-worthy prompts through them — no separate keys, no new billing relationship. No cloud CLIs at all? Local-only mode is first-class: cloud-worthy prompts are still recognized, served by your best local model, and packaged as a paste-ready escalation brief you can take to any frontier model yourself.
The routing decision itself is made by a local embedding model on your machine — no cloud call decides whether to make a cloud call. Prompts routed locally never leave your machine. Cloud-routed prompts follow the same terms as the cloud tools you already use.
A local embedding model (nomic-embed-text) embeds each prompt and classifies it by cosine similarity against seed-prompt centroids for four roles: simple, reasoning, docs, and architect. Thin classification margins escalate one tier up. Every decision is recorded to a local ledger with its margin, and you can dry-run any prompt with kultivait route "your prompt" to see exactly what would happen.
Run kultivait escalations --brief. The full conversation is already archived; a local model distills it into a paste-ready TASK / CONTEXT / PROGRESS / NEEDED brief and names where to take it. Escalating costs one paste instead of re-explaining the whole session.
Yes — on the OpenAI-compatible endpoint, tool calls pass straight through, so a full agentic loop (read, bash, edit, write) runs through the proxy with every turn routed and tallied. Tool-bearing requests are always served by a local tool-capable tier — cloud CLIs run their own agent loops and can't join a client-side tool loop — and the response metadata says so honestly when that overrides the classifier. See the developers page for an example agent config.
It's free during early access — one command to install, no account, no lock-in. If paid plans come later, the principle stands: a fraction of what it saves you.
Kultivait.ai is free during early access. If you run local models with ollama, you're two minutes from routing.
curl -fsSL https://kultivait.ai/install.sh | sh
Full quickstart and command reference on the developers page.