Rizo classifies every request as trivial, general, or coding, and sends it to a model sized for the job, so you're not paying Claude-Sonnet prices to say hi. No shared account, no markup: OpenRouter bills you directly for exactly what you use.
code --install-extension ChaitanyaAggarwal.rizo
Every message is classified by keyword (word-boundary matched, so "capital" doesn't misfire on "api") into one of three tiers. Coding is hard-pinned to Claude Sonnet 5, no fallback, because that's the one place a cheaper model isn't worth the risk.
| Tier | Trigger | Model | Prompt / Completion (per M tok) |
|---|---|---|---|
| Trivial | short, low-effort messages | openai/gpt-5-nano | $0.05 / $0.40 |
| General | everyday questions, explanation, reasoning | google/gemini-2.5-flash | $0.30 / $2.50 |
| Coding | code, debugging, git, terminal, APIs | anthropic/claude-sonnet-5 | $2.00 / $10.00 |
Pricing is what OpenRouter charges for these models as of this writing. Check openrouter.ai/models for current rates.
One pill above the composer, no restart, no separate account.
The three-tier routing above. Small model for easy questions, mid-tier for general reasoning, Claude Sonnet 5 for coding. Billed by OpenRouter per token, at their published rate. Rizo adds nothing.
Routes through a ranked chain of free-tier OpenRouter models instead, with automatic fallback to the next one in the list on any error, rate limit, or empty reply, plus a final backstop (openrouter/free) so something always answers. No credit required.
Every file write and every shell command stops for approval first. A malicious repo can prompt-inject the model into attempting a bad tool call, but it can't click "Approve" for it.
git push --force, reset --hard, branch -D, rm -rf and its long-form/colon-refspec equivalents get an elevated warning every single time. "Always Allow" is deliberately not offered for these.Sign up at openrouter.aiFree account, add credit or use the free-tier models with none.
Paste your key into Rizo, onceStored in your OS keychain via VS Code's own Secret Storage, never written to a file.
OpenRouter bills you directlyFor exactly what you use. Rizo has no server sitting in between and never sees a cent of it.
Separate conversations, each with its own history. Auto-named from the first message, renameable any time.
Running token count and estimated dollar cost shown live under the composer, for the whole chat, not buried in a dashboard.
Runs commands in your workspace root with a 60s timeout and a capped output buffer: bounded, not a runaway loop.
Apache License 2.0. Fork it, read the routing logic, send a PR. Nothing about how it decides where your money goes is hidden.