Rate limits, subscription quotas, and $70/month model bills are the background noise of coding with frontier AI in July 2026 — especially after Fable 5's relaunch brought classifiers and a July 7 credits cliff.
OmniRoute (v3.8.42, ~9.8k GitHub stars) is a local-first answer: one OpenAI-compatible gateway on http://localhost:20128/v1, 231 providers, 50+ free tiers, 17 routing strategies, and RTK + Caveman compression that claims 15–95% token savings — without sending prompts through a vendor's cloud router.
Update — July 22, 2026: OmniRoute has grown fast since this post's original numbers. It's now v3.8.49, at ~23.6K GitHub stars, with 271 catalogued providers (90+ with a free tier, 40+ free forever), 18 routing strategies (added strict-random), and a compression pipeline expanded to 11 composable engines (up from 9), including new Session-Dedup and CCR stages. The biggest new feature is Quota-Share — splitting one provider subscription's rate-limit quota fairly across a team of API keys, with configurable allocation weights and hard/soft/burst enforcement policies. Remaining figures and setup steps below reflect the original July 2 publish date; core mechanics are unchanged.
Update — Oct 1, 2026: LiteLLM shipped Lens (agent-trace analysis on the LiteLLM proxy). That is not a reason to leave OmniRoute — who should try Lens, and who should not.
TL;DR
| What it is | MIT local AI gateway + dashboard — fork lineage from 9router / CLIProxyAPI |
| Latest | v3.8.42 (July 2026) |
| Providers | 231 catalogued · 50+ with free tier · 11 free forever |
| Endpoint | http://localhost:20128/v1 |
| Install | npm install -g omniroute · Docker · Electron desktop · Termux |
| Compression | 9-engine pipeline — RTK + Caveman stacked up to ~89% avg on tool logs |
| Routing | 17 strategies — priority, cost-optimized, context-relay, fusion, auto/* |
| Agents | MCP (87 tools) · A2A · remote mode with scoped tokens |
| Coding tools | Claude Code, Codex, Cursor, Cline, Copilot, OpenCode, Kilo, 16+ |
The Problem OmniRoute Solves
Developers in 2026 juggle:
- Subscription quotas that reset unused (Claude Max, Copilot, Codex)
- Rate limits that stop mid-session — see Fable 5 limits guide
- Tool output bloat — git diffs, logs, grep results burning context
- Per-tool API configs — different base URLs and keys for every IDE
OmniRoute's pitch: one endpoint, smart combos, automatic fallback.
Your IDE / CLI → localhost:20128/v1 → OmniRoute router
├─ Tier 1: Subscriptions (Claude Code, Codex…)
├─ Tier 2: Paid API keys
├─ Tier 3: Cheap models (GLM, MiniMax…)
└─ Tier 4: Free (Kiro, Qoder, Pollinations…)
When quota runs out or a provider fails, the combo slides to the next model in milliseconds — circuit breakers, per-key cooldowns, and model lockouts keep one bad key from killing the chain.
Flagship Feature: Combos and auto
A combo is an ordered chain of models. OmniRoute's auto modes build virtual combos from connected providers scored live:
| Model ID | Optimizes for |
|---|---|
auto | Balanced default (LKGP — last good provider stickiness) |
auto/coding | Quality-first for code |
auto/fast | Lowest latency |
auto/cheap | Cheapest per token |
auto/offline | Most quota headroom |
auto/smart | Quality + 10% exploration |
Example combo (from OmniRoute docs):
cc/claude-opus-4-7— drain subscription firstcx/gpt-5.5— second subscriptionglm/glm-5.1— cheap backupkr/claude-sonnet-4.5— free tier, always on
For Fable-heavy workflows, combos let you reserve frontier models for hard tasks and route volume work to Sonnet-class or free pools.
Token Compression — RTK + Caveman
Every request can pass through nine composable engines (session dedup, CCR archival, RTK, Headroom tabular compaction, Caveman, LLMLingua-2 ONNX, etc.).
Why it matters now: Opus fallbacks and long Claude Code agent loops multiply token burn. OmniRoute cites 78–95% savings when RTK and Caveman both act on tool-heavy payloads.
| Mode | Typical savings | Use case |
|---|---|---|
| Lite | ~15% | Always-on safe default |
| Standard (Caveman) | ~30% | Daily coding |
| RTK | 60–90% | Shell / test / git output |
| Stacked (RTK → Caveman) | 78–95% | Mixed prompts + tool logs |
Code blocks, URLs, and structured JSON stay byte-perfect — compression targets prose and repetitive tool output, not your source files.
Free Tier Aggregation
OmniRoute's dashboard shows ~1.6B documented free tokens/month (pool-deduped, not inflated by stacking rate limits). Highlights from the free-forever list:
- Qoder AI — Kimi-K2, DeepSeek-R1, unlimited free tier
- Pollinations — GPT-5, Claude, Llama 4, no key
- Kiro AI — free Claude credits monthly
- Cloudflare AI — 50+ models, 10K neurons/day
- Cohere / NVIDIA NIM / Cerebras — documented free RPM caps
Useful when Fable credits kick in after July 7 or when you want open-weight fallbacks without standing up vLLM yourself.
Claude Code and Agent Setup
Quick start:
npm install -g omniroute
omniroute
# Dashboard → http://localhost:20128
Claude Code config:
- Base URL:
http://localhost:20128/v1 - API Key: from Dashboard → Endpoints
- Model:
autoor a custom combo step
OmniRoute ships omniroute setup wizards for Claude Code, Codex, Cursor, Cline, Continue, Roo, Kilo, OpenCode, and more — plus omniroute launch-codex zero-config launchers.
MCP integration — expose the gateway to agents:
claude mcp add --transport http omniroute http://localhost:20128/api/mcp/stream
87 MCP tools cover routing, providers, combos, compression, memory, evals — agents can reconfigure the gateway autonomously. See What Is MCP for protocol context.
OmniRoute vs Cloud Routers
| OmniRoute | OpenRouter Fusion | LiteLLM | |
|---|---|---|---|
| Runs | Local (your hardware) | Cloud API | Library / self-host |
| Providers | 231 | OpenRouter catalog | You configure |
| Multi-model | Combos + fusion strategy | Panel + judge | Manual |
| Compression | RTK + Caveman stacked | None built-in | None built-in |
| Privacy | Keys stay local | Cloud path | Depends on deploy |
| Best for | Quota sharing, free tiers, compression | Research-grade ensemble answers | Enterprise proxy layer |
OmniRoute is closer to "run your own OpenRouter + LiteLLM + compression lab on localhost" than a hosted API.
v3.8.x Highlights (Recent)
From v3.8.20 → v3.8.42:
- Quota-share routing — deficit round-robin across accounts with session stickiness
- Remote mode — CLI against a VPS OmniRoute with scoped tokens
- Fusion strategy — parallel panel + judge (similar spirit to OpenRouter Fusion, local)
- Pluggable compression studio — visual pipeline editor, LLMLingua-2 ONNX, adaptive budget dial
- MITM/TPROXY — capture traffic from CLIs that ignore proxy env vars
- 236-provider catalog refresh — Cursor Cloud Agent, CodeBuddy CN, Vertex media, Grok Build OAuth
14,965 tests across the repo — unusually heavy CI for an open gateway project.
Limitations and Honest Caveats
- Operational complexity — 231 providers means configuration surface; start with
auto+ one free provider - Local only by default — you operate updates, OAuth flows, and disk encryption
- Free tier math is estimates — provider terms change; dashboard flags per-provider honesty
- Not a replacement for frontier taste — free models won't match Fable on hard agent work; combos help stretch access, not create capability
- Node 22/24 required — plan for LTS Krypton (Node 24) per upstream recommendation
Quick Install Paths
| Platform | Command |
|---|---|
| npm | npm install -g omniroute && omniroute |
| Docker | docker run -p 20128:20128 -v omniroute-data:/app/data diegosouzapw/omniroute:latest |
| Desktop | Electron build from repo |
| Android | Termux — pkg install nodejs && npx -y omniroute |
| Arch | AUR omniroute-bin |
Docs: omniroute.online · GitHub: diegosouzapw/OmniRoute
Test a fallback chain as an application behavior
Start with one provider and one model, then add a second route after the first works. Use a short request with a known expected structure. Force an ordinary failure in the primary route and inspect which provider answered, what the client received, and whether the gateway recorded the reason for switching.
Compatibility includes more than a successful text response. Your coding agent may depend on tool calling, streaming, structured output, or a particular context budget. Test those features explicitly across each fallback. A weaker provider that answers chat successfully can still break the workflow if it returns tool calls in an incompatible shape.
Use the OmniRoute repository for the current setup and client adapters. Preserve the configured provider and model in logs where appropriate. Otherwise a changing answer can be difficult to attribute when the gateway's automatic routing shifts between backends.
Compression needs an acceptance test too
Choose a representative tool log containing an actual error, a filename, and a relevant warning. Compare the agent's next action with compression enabled and disabled. Reducing tokens is useful only if the retained information still supports the decision the agent needs to make.
Pay attention to negation and exceptions in prose. Removing a word such as "not" or shortening a qualification can change meaning even when code blocks survive intact. Treat a repository's byte-preservation claim as a defined feature to test, rather than a universal guarantee that compressed context is semantically unchanged.
Local routing still needs a data-flow decision
The gateway may run on your machine while sending requests to configured external providers. Document which data each route is allowed to receive and what should happen when the preferred private route is unavailable. Falling back automatically to a cloud service is a policy change if the input was meant to remain local.
Keep provider charges and software licensing separate. A free gateway does not create an unlimited free upstream service. Review the account terms, usage limits, and recovery behavior for the actual providers you enable before using the chain for long autonomous sessions.
Related Reading
- Claude outage — authentication issue, August 16, 2026 — a real-world case for keeping a fallback provider routed through a gateway like this one
- Fireworks AI's Kimi K3 + Fable 5 routing study
- Fable 5 After Relaunch — Developer Reaction
- OpenRouter Fusion API — Multi-Model Deliberation
- How to Run Open Source Models Locally in OpenCode
- Loop Engineering for Coding Agents
- China AI Playbook — Free Models and Cheap Compute
