# ๐ OmniRoute โ The Free AI Gateway
### Never stop coding. Connect every AI tool to **177 providers** โ **50+ free** โ through one endpoint.
**Plug Claude Code, Codex, Cursor, Cline, Copilot & Antigravity into FREE Claude / GPT / Gemini. Auto-fallback.**
**RTK + Caveman compression saves 15โ95% tokens. Never hit limits.**
**~1.9B+ documented free tokens/month** โ up to **~2.5B in your first month** with signup credits โ aggregated across the free tiers, and the compression above stretches every one further. ([how we count โ](docs/reference/FREE_TIERS.md#tldr--how-much-free-inference-does-omniroute-actually-aggregate))
[](#-177-ai-providers--50-free)
[](#-177-ai-providers--50-free)
[](docs/reference/FREE_TIERS.md)
[](#%EF%B8%8F-save-1595-tokens--automatically)
[](#-combos--the-flagship)
[](#-quick-start)
### ๐ฌ Join the community on Discord
[](https://discord.gg/hmexnhgE)
**Questions, provider tips, roadmap & support โ [discord.gg/hmexnhgE](https://discord.gg/hmexnhgE)**
[](https://www.npmjs.com/package/omniroute)
[](LICENSE)
[](package.json)
[](https://github.com/diegosouzapw/OmniRoute)
> Stop juggling 10 dashboards, dead API keys, and surprise bills.
| โ The daily pain | โ How OmniRoute fixes it |
| ------------------------------------------------------ | ----------------------------------------------------------------------------- |
| ๐ Subscription quota expires unused every month | **Maximize subscriptions** โ track quota, use every token before reset |
| ๐ Rate limits stop you mid-coding | **4-tier auto-fallback** โ Subscription โ API โ Cheap โ Free, in milliseconds |
| ๐ฅ Tool outputs (`git diff`, `grep`, logs) burn tokens | **RTK + Caveman compression** โ save 15โ95% eligible tokens per request |
| ๐ธ Expensive APIs ($20โ50/mo per provider) | **Cost-optimized routing** โ auto-route to the cheapest viable model |
| ๐งฐ Each AI tool wants its own setup | **One endpoint, every tool, one dashboard** |
| ๐ AI blocked in your country | **3-level proxy** + TLS fingerprint stealth โ use AI from anywhere |
> A **combo** is a chain of models OmniRoute routes across **automatically**. Quota runs out, a provider fails, or costs spike โ the combo silently slides to the next model. **This is what makes OmniRoute unbreakable.** ๐ก๏ธ
### โก Zero-config โ just use `auto`
No combo to create. Set your model to `auto` (or a variant) and OmniRoute builds a virtual combo from your connected providers, scored live:
| Model ID | What it optimizes for |
| -------------- | -------------------------------------------------------------- |
| `auto` | ๐ฏ Balanced default (LKGP โ sticks to your last good provider) |
| `auto/coding` | ๐งโ๐ป Quality-first weights for code generation |
| `auto/fast` | โก Lowest latency first |
| `auto/cheap` | ๐ฐ Cheapest per token first |
| `auto/offline` | ๐ Most quota / rate-limit headroom first |
| `auto/smart` | ๐ญ Quality-first + 10% exploration to discover better models |
##
### ๐ Or build your own โ 14 routing strategies
| Goal | Strategy / combo |
| --------------------------------------- | -------------------------------------------------- |
| ๐ฅ Drain my subscription before paying | `priority` / `fill-first` |
| โ๏ธ Spread load across accounts | `round-robin` ยท `weighted` ยท `p2c` ยท `least-used` |
| ๐ธ Always cheapest viable model | `cost-optimized` ยท `auto/cheap` |
| ๐ง Hand off long context between models | `context-relay` ยท `context-optimized` |
| ๐ฒ Randomized / privacy routing | `random` ยท `strict-random` |
| ๐ค Just make it smart | `auto` (9-factor scoring) ยท `lkgp` ยท `reset-aware` |
The Auto-Combo engine scores every candidate on **9 factors** (health, quota, cost, latency, success rate, freshnessโฆ) โ see [`docs/routing/AUTO-COMBO.md`](docs/routing/AUTO-COMBO.md).
##
### ๐งฑ Resilience is built in (3 independent layers)
| Layer | Scope | What it does |
| -------------------------- | ----------------- | -------------------------------------------------------------------------- |
| ๐ **Circuit breaker** | whole provider | Stops hammering a provider that's failing upstream; auto-probes to recover |
| ๐ค **Connection cooldown** | one account / key | Skips a rate-limited key while other keys keep serving |
| ๐ฏ **Model lockout** | provider + model | Quarantines just one quota-limited model, not the whole connection |
```
Combo: "always-on" Strategy: priority
1. cc/claude-opus-4-7 โ subscription (use it fully)
2. cx/gpt-5.5 โ second subscription
3. glm/glm-5.1 โ cheap backup ($0.5/1M)
4. kr/claude-sonnet-4.5 โ FREE, unlimited (never fails)
Result: 4 layers of fallback = zero downtime
```
๐ [Auto-Combo Engine](docs/routing/AUTO-COMBO.md) ยท [Resilience Guide](docs/architecture/RESILIENCE_GUIDE.md)
๏ผ also works with ยท Cline ยท Antigravity ยท Windsurf ยท AMP ยท Hermes ยท Qwen CLI ยท Roo ยท Continue ยท any OpenAI-compatible tool
๐ Per-tool setup for all 16+ tools โ [`docs/reference/CLI-TOOLS.md`](docs/reference/CLI-TOOLS.md) ยท ๐งฉ OpenCode plugin โ [`@omniroute/opencode-provider`](https://www.npmjs.com/package/@omniroute/opencode-provider)
# ๐ 177 AI Providers โ 50+ Free
> The most complete catalog of any open-source router: **177 providers**, **50+ with a free tier**, **11 free forever**.
### ๐ Free Forever โ $0, no card
GPT-5, Claude, Gemini $100 free credits
Kimi-K2, DeepSeek-R1 Unlimited FREE
GPT-5, Claude, Llama 4 No key needed
Flash-Lite 50M tokens/day ๐ฅ
50+ models 10K neurons/day
gemini-3-flash 180K/mo free
129 models ~40 RPM free
Qwen3 235B 1M tokens/day
๐ Full machine-readable catalog โ [`docs/reference/PROVIDER_REFERENCE.md`](docs/reference/PROVIDER_REFERENCE.md)
# ๐ฅ๏ธ Where OmniRoute Runs โ Anywhere
> Same app, your machine, your rules. From a global npm install to **your phone** via Termux.
| Platform | Install | Highlights |
| ------------------------- | -------------------------------------------- | --------------------------------------------------------- |
| ๐ฆ **npm (global)** | `npm install -g omniroute` | One command, any OS |
| ๐ณ **Docker** | `docker run โฆ diegosouzapw/omniroute` | Multi-arch **AMD64 + ARM64** |
| ๐ฅ๏ธ **Desktop (Electron)** | `npm run electron:build` | Native window + system tray โ **Windows / macOS / Linux** |
| ๐ช **ARM** | native `arm64` | Raspberry Pi, ARM servers, Apple Silicon |
| ๐ฑ **Android (Termux)** | `pkg install nodejs-lts && npx -y omniroute` | Runs **on your phone**, 24/7, no root |
| ๐ฒ **PWA** | "Add to Home Screen" | Fullscreen, offline, installable from browser |
| ๐งฉ **OpenCode plugin** | `@omniroute/opencode-provider` | Native OpenCode integration |
| ๐ ๏ธ **From source** | `npm install && npm run dev` | Hack on it, contribute |
๐ [Docker Guide](docs/guides/DOCKER_GUIDE.md) ยท [Desktop](electron/README.md) ยท [Termux](docs/guides/TERMUX_GUIDE.md) ยท [PWA](docs/guides/PWA_GUIDE.md) ยท [OpenCode](docs/frameworks/OPENCODE.md)
# ๐ Private & Local-First
> Your keys, your machine, your data. OmniRoute is a **local proxy** โ it never phones home.
- ๐ **Runs 100% on your hardware** โ npm, Docker, desktop, or your phone. No OmniRoute cloud sits in the request path.
- ๐ **Credentials encrypted at rest** โ API keys & OAuth tokens sealed with **AES-256-GCM**.
- ๐ซ **Zero telemetry by default** โ your prompts go only to the providers _you_ choose, nowhere else.
- ๐ก๏ธ **Hardened gateway** โ API-key scoping, IP filtering, rate limits, prompt-injection guard, loopback-only process routes.
- ๐ **MIT licensed & fully open-source** โ audit every line, self-host forever.
๐ [Authorization](docs/architecture/AUTHZ_GUIDE.md) ยท [Guardrails](docs/security/GUARDRAILS.md) ยท [Compliance](docs/security/COMPLIANCE.md)
# ๐ Full CLI + A2A & MCP
> OmniRoute isn't just a server โ it's a **full command-line cockpit** with **60+ commands**, plus open agent protocols so an AI agent can drive OmniRoute **by itself**.
### โจ๏ธ A real CLI (not just `start`)
```bash
omniroute # serve gateway + dashboard (port 20128)
omniroute chat # interactive TUI chat client (slash: /model /combo /skill /memory)
omniroute setup # guided first-run wizard
omniroute doctor # diagnose providers, ports, native deps
```
### ๐ค Connect an agent โ and it controls OmniRoute itself
Expose OmniRoute over **MCP** or **A2A** and any capable agent gets the keys to the whole gateway โ routing, providers, combos, cache, compression, memory โ autonomously.
| Protocol | Endpoint | Use it for |
| ------------------ | ----------------------------------------------- | ------------------------------------------------------ |
| ๐งฐ **MCP (stdio)** | `omniroute --mcp` | Plug into Claude Desktop, Cursor, any MCP client |
| ๐ **MCP (HTTP)** | `http://localhost:20128/api/mcp/stream` | Remote MCP โ **37 tools**, 13 scopes, full audit trail |
| ๐ก **MCP (SSE)** | `http://localhost:20128/api/mcp/sse` | Streaming MCP transport |
| ๐ค **A2A** | `http://localhost:20128/.well-known/agent.json` | Agent-to-agent, **JSON-RPC 2.0** + SSE, 5 skills |
```bash
# Give Claude Code the full OmniRoute toolset over MCP:
claude mcp add-server omniroute --type http --url http://localhost:20128/api/mcp/stream
```
๐ [MCP Server](docs/frameworks/MCP-SERVER.md) ยท [A2A Server](docs/frameworks/A2A-SERVER.md) ยท [Agent Protocols](docs/frameworks/AGENT_PROTOCOLS_GUIDE.md)
# ๐๏ธ Save 15โ95% Tokens โ Automatically
> **Why use many token when few token do trick?** Every request passes through OmniRoute's compression pipeline **transparently** โ no client changes. It stacks ideas from [RTK](https://github.com/rtk-ai/rtk), [Caveman](https://github.com/JuliusBrussee/caveman) (โญ 51K+), and [Troglodita](https://github.com/leninejunior/troglodita) (PT-BR).
| Mode | Savings | Best for |
| ------------------------------ | ---------- | --------------------------- |
| ๐ชถ **Lite** | ~15% | Always-on safe default |
| ๐ชจ **Standard (Caveman)** | ~30% | Daily coding |
| โก **Aggressive** | ~50% | Long tool-heavy sessions |
| ๐ฅ **Ultra** | ~75% | Maximum savings |
| ๐งฐ **RTK** | 60โ90% | Shell/test/build/git output |
| ๐ **Stacked (RTK โ Caveman)** | **78โ95%** | Mixed prompts + tool logs |
**Real example โ Standard mode:**
> **Before (69 tokens):** _"The reason your React component is re-rendering is likely because you're creating a new object reference on each render cycle. When you pass an inline object as a prop, React's shallow comparison sees it as a different object every time, which triggers a re-render. I would recommend using useMemo to memoize the object."_
>
> **After (19 tokens):** _"New object ref each render. Inline object prop = new ref = re-render. Wrap in useMemo."_
>
> **Same answer. 72% fewer tokens. Zero accuracy loss.** โ
**PT-BR example โ [Troglodita](https://github.com/leninejunior/troglodita) mode:**
> **Antes (42 tokens):** _"O problema รฉ que o componente estรก re-renderizando porque uma nova referรชncia de objeto estรก sendo criada em cada ciclo de renderizaรงรฃo. Eu recomendaria usar useMemo."_
>
> **Depois (12 tokens):** _"Re-render: ref nova cada ciclo (objeto inline recriado). Usar `useMemo`."_
>
> **Mesma resposta. ~70% menos tokens. Precisรฃo tรฉcnica intacta.** โ
### ๐ How it works โ pipeline, architecture & savings math
```
Client (10,000 tok) โโโถ OmniRoute Compression (7 options) โโโถ Provider (~1,080 tok, up to 95% saved)
```
Default stacked combo runs `RTK โ Caveman`. When both act on the same tool/context payload, savings compound:
```txt
combined = 1 โ (1 โ RTK) ร (1 โ Caveman_input)
average = 1 โ (1 โ 0.80) ร (1 โ 0.46) = 89.2%
range = 78.4 โ 94.6%
```
Code blocks, URLs, JSON and structured data are **always protected** by the preservation engine. Auto-trigger compression by token threshold, or assign a compression pipeline per routing combo.
๐ [`COMPRESSION_GUIDE.md`](docs/compression/COMPRESSION_GUIDE.md) ยท [`RTK_COMPRESSION.md`](docs/compression/RTK_COMPRESSION.md) ยท [`COMPRESSION_ENGINES.md`](docs/compression/COMPRESSION_ENGINES.md)
# โก Quick Start
**1) Install & run**
```bash
npm install -g omniroute
omniroute
```
Dashboard at `http://localhost:20128` ยท API at `http://localhost:20128/v1`.
**2) Connect a FREE provider (no signup)**
Dashboard โ **Providers** โ connect **Kiro AI** (free Claude unlimited) or **OpenCode Free** (no auth) โ done.
**3) Point your coding tool**
```txt
Base URL: http://localhost:20128/v1
API Key: [copy from Dashboard โ Endpoints]
Model: auto (zero-config smart routing โ or any provider/model)
```
**4) Verify it's working**
```bash
curl http://localhost:20128/v1/models -H "Authorization: Bearer YOUR_KEY"
```
You should see your connected models listed. ๐ That's it โ start coding, and OmniRoute auto-routes & falls back for you.
## ๐ฆ More install methods โ Docker, source, pnpm, Arch
**๐ณ Docker**
```bash
docker run -d --name omniroute --restart unless-stopped --stop-timeout 40 \
-p 20128:20128 -v omniroute-data:/app/data diegosouzapw/omniroute:latest
```
**๐ ๏ธ From source**
```bash
cp .env.example .env && npm install
PORT=20128 npm run dev
```
**๐ฆ pnpm**
```bash
pnpm install -g omniroute && pnpm approve-builds -g && omniroute
```
**๐ง Arch Linux (AUR)**
```bash
yay -S omniroute-bin && systemctl --user enable --now omniroute.service
```
**๐ง Nix (Flake)**
```bash
# Using Nix flakes
nix develop
npm run dev
# Or using devbox
devbox run npm run dev
```
๐ [Docker Guide](docs/guides/DOCKER_GUIDE.md) โ Compose profiles, Caddy HTTPS, Cloudflare tunnels.
**๐ฆญ Podman**
```bash
# 1. Build the image
podman build --target runner-base -t omniroute:base .
# 2. Fix data directory permissions for rootless Podman
mkdir -p data && podman unshare chown 1000:1000 ./data
# 3. Set runtime in .env, then run (see contrib/podman/ for Quadlet)
echo "CONTAINER_HOST=podman" >> .env
podman compose --profile base up -d
```
๐ [Podman Guide](contrib/podman/README.md) โ Quadlet setup, podman-compose, Quadlet.
> ๐ฌ **Made a video about OmniRoute?** Open an [issue](https://github.com/diegosouzapw/OmniRoute/issues/new) or [discussion](https://github.com/diegosouzapw/OmniRoute/discussions) with the link โ we'll feature it here.
# ๐ Explore More
๐ฐ Pricing at a glance & the $0 Free Stack (11 providers)
| Tier | Example | Cost |
| --------------------------- | ---------------------------------------- | ---------- |
| ๐ณ **Subscription** | Claude Code Pro / Codex / Copilot | $10โ200/mo |
| ๐ **API Key (free tiers)** | NVIDIA NIM, Cerebras, Groq | **FREE** |
| ๐ฐ **Cheap** | GLM-5 $0.5/1M ยท MiniMax M2.5 $0.3/1M | pennies |
| ๐ **Free Forever** | Kiro, Qoder, Qwen, Pollinations, LongCat | **$0** |
**The $0 Free Stack โ combine into one unbreakable combo:**
| Provider | Prefix | Free models | Quota |
| ----------------- | ----------- | ----------------------------------------------- | ----------------- |
| **Kiro** | `kr/` | Claude Sonnet 4.5, Haiku 4.5, Opus 4.6 | 50 credits/mo |
| **Qoder** | `if/` | kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 | โพ๏ธ Unlimited |
| **Qwen** | `qw/` | qwen3-coder-plus/flash/next | โพ๏ธ Unlimited |
| **Pollinations** | `pol/` | GPT-5, Claude, Gemini, DeepSeek, Llama 4 | No key needed |
| **LongCat** | `lc/` | LongCat-Flash-Lite | 50M tokens/day ๐ฅ |
| **Cloudflare AI** | `cf/` | 50+ models | 10K neurons/day |
| **NVIDIA NIM** | `nvidia/` | 129 models | ~40 RPM |
| **Cerebras** | `cerebras/` | Qwen3 235B, GPT-OSS 120B | 1M tok/day |
> ๐ก The dashboard "cost" is a **savings tracker**, not a bill โ OmniRoute never charges you. A "$290 total cost" using free models means **$290 saved**.
๐ Complete free directory โ [`docs/reference/FREE_TIERS.md`](docs/reference/FREE_TIERS.md) โ 25+ providers, quotas, base URLs.
๐ฏ Use Cases โ ready-made combo playbooks
**$0 forever:**
```
1. kr/claude-sonnet-4.5 (Kiro โ unlimited)
2. if/kimi-k2-thinking (Qoder โ unlimited)
3. pol/gpt-5 (Pollinations โ no key)
4. lc/longcat-flash-lite (50M tok/day backup)
Compression: aggressive (~50%) โ double your free quota ยท Cost: $0/mo
```
**24/7 no interruptions:** chain 2 subscriptions โ cheap โ free for 5 layers of fallback.
**Blocked region:** free providers + global/per-provider proxy โ access AI from any country.
**Max savings:** subscription + cheap backup + `ultra` compression (~75%) โ ~$150โ300/mo saved for heavy users.
๐ Bypass geo-blocks โ 3-level proxy + stealth
๐ท๐บ ๐จ๐ณ ๐ฎ๐ท ๐จ๐บ ๐น๐ท In a blocked region? OmniRoute's **3-level proxy** (Global / Per-Provider / Per-Connection) proxies API requests, OAuth flows, connection tests, token refresh & model sync.
- **Protocols:** HTTP/HTTPS, SOCKS5, authenticated proxies
- **๐ 1proxy marketplace** โ hundreds of free validated proxies, quality scores, auto-rotation
- **Anti-detection** โ TLS fingerprint spoofing (`wreq-js`), CLI fingerprint matching, proxy IP preservation
๐ [`docs/ops/PROXY_GUIDE.md`](docs/ops/PROXY_GUIDE.md)
โจ Full feature list โ 30+ capabilities (memory, evals, observability)
**Routing:** 14 strategies ยท task-aware smart routing ยท thinking budget controls ยท wildcard routing ยท system prompt injection.
**Compatibility:** OpenAI โ Claude โ Gemini โ Responses API ยท auto OAuth refresh (PKCE, 8 providers) ยท multi-account round-robin ยท Batch + Files API ยท live OpenAPI 3.0.
**Protocols:** MCP (37 tools, 3 transports, 13 scopes) ยท A2A (JSON-RPC 2.0, SSE, skills) ยท ACP ยท cloud agents (Codex, Devin, Jules).
**Quality & Ops:** built-in **Evals** (golden-set: exact/contains/regex/custom) ยท guardrails (PII, injection, vision) ยท health dashboard ยท p50/p95/p99 telemetry ยท webhooks ยท compliance audit.
**AI Agent Skills:** drop-in markdown manifests โ point any agent at `skills/omniroute/SKILL.md`. 10 skills available.
๐ [MCP Server](open-sse/mcp-server/README.md) ยท [A2A Server](src/lib/a2a/README.md) ยท [Resilience Guide](docs/architecture/RESILIENCE_GUIDE.md) ยท [Features Gallery](docs/guides/FEATURES.md)
๐ Setup, env vars & FAQ
| Env var | Default | Purpose |
| ----------------- | -------------- | -------------------------------- |
| `PORT` | `20128` | API + dashboard port |
| `REQUIRE_API_KEY` | `false` | Require API key for all requests |
| `DATA_DIR` | `~/.omniroute` | Database & config storage |
**Will I be charged by OmniRoute?** No โ it's free, open-source software on your machine. You only pay paid providers directly. OmniRoute has no billing system.
**Are FREE providers really unlimited?** Yes โ Kiro, Qoder, Pollinations, LongCat, Cloudflare. No catch.
**Will compression hurt quality?** No โ it only compresses the **input**; code, URLs, JSON are always protected.
**Does it work where AI is blocked?** Yes โ 3-level proxy + 1proxy marketplace reach all 177 providers.
๐ [User Guide](docs/guides/USER_GUIDE.md) ยท [API Reference](docs/reference/API_REFERENCE.md) ยท [Environment Config](docs/reference/ENVIRONMENT.md)
๐ Troubleshooting
| Problem | Quick fix |
| ----------------------------------------- | ------------------------------------------------------------- |
| "Language model did not provide messages" | Provider quota exhausted โ use a combo fallback |
| Rate limiting (429) | Add fallback: `cc/claude โ glm/glm-4.7 โ if/kimi-k2-thinking` |
| OAuth token expired | Auto-refreshed; if stuck, delete + re-auth in Providers |
| `unsupported_country_region_territory` | Configure proxy in Settings โ Proxy |
| Docker SQLite locks | Use `--stop-timeout 40` for clean WAL checkpoint |
| Node runtime errors | Use Node `>=20.20.2 <21`, `>=22.22.2 <23`, or `>=24 <25` |
๐ **Reporting a bug?** Run `npm run system-info` and attach `system-info.txt`. ๐ [`docs/guides/TROUBLESHOOTING.md`](docs/guides/TROUBLESHOOTING.md)
๐ธ Dashboard screenshots
| Page | Screenshot | Page | Screenshot |
| ---------- | ------------------------------------------------- | ---------- | --------------------------------------------- |
| Providers |  | Combos |  |
| Analytics |  | Health |  |
| Translator |  | Settings |  |
| CLI Tools |  | Usage Logs |  |
# ๐ง Support & Community
> ๐ฌ **Join our WhatsApp groups** โ get help, share tips, stay updated:
> ยท [**๐ International**](https://chat.whatsapp.com/JI7cDQ1GyaiDHhVBpLxf8b?mode=gi_t) ยท [**๐ง๐ท Portuguรชs**](https://chat.whatsapp.com/CeGCxdFzqBe5Uki288wOvf)
- ๐ **Website**: [omniroute.online](https://omniroute.online)
- ๐ **GitHub**: [github.com/diegosouzapw/OmniRoute](https://github.com/diegosouzapw/OmniRoute)
- ๐ **Issues**: [report a bug](https://github.com/diegosouzapw/OmniRoute/issues) (attach `npm run system-info` output)
- ๐ค **Contributing**: see [CONTRIBUTING.md](CONTRIBUTING.md) or pick a `good first issue`
# โญ Top Contributors
> OmniRoute is shaped by a passionate open-source community. These individuals have made exceptional contributions that directly impact the quality, stability, and reach of the project. **Thank you.**
benzntech ๐ 20 commits โข +7.5K lines Electron desktop app, auto-updater, release build workflows, cross-platform CI
> ๐ These contributors' features, bug fixes, and infrastructure improvements are a **core part** of what makes OmniRoute reliable and feature-rich. Every pull request, every test case, and every i18n translation file matters. Open source is built by people like them.
---
## ๐ฅ Contributors
[](https://github.com/diegosouzapw/OmniRoute/graphs/contributors)
### How to Contribute
1. Fork the repository
2. Create your feature branch (`git checkout -b feature/amazing-feature`)
3. Commit your changes (`git commit -m 'Add amazing feature'`)
4. Push to the branch (`git push origin feature/amazing-feature`)
5. Open a Pull Request
See [CONTRIBUTING.md](CONTRIBUTING.md) for detailed guidelines.
### Releasing a New Version
```bash
# Create a release โ npm publish happens automatically
gh release create v3.8.2 --title "v3.8.2" --generate-notes
```
## ๐ Stars
## ๐ StarMapper
## ๐ Acknowledgments
Special thanks to **[9router](https://github.com/decolua/9router)** by **[decolua](https://github.com/decolua)** โ the original project that inspired this fork. OmniRoute builds upon that incredible foundation with additional features, multi-modal APIs, and a full TypeScript rewrite.
Special thanks to **[CLIProxyAPI](https://github.com/router-for-me/CLIProxyAPI)** by **[router-for-me](https://github.com/router-for-me)** โ the original Go implementation that inspired this JavaScript port.
Special thanks to **[Caveman](https://github.com/JuliusBrussee/caveman)** by **[JuliusBrussee](https://github.com/JuliusBrussee)** (โญ 51K+) โ the viral "why use many token when few token do trick" project whose caveman-speak compression philosophy inspired OmniRoute's standard compression mode and 30+ filler/condensation regex rules.
Special thanks to **[RTK - Rust Token Killer](https://github.com/rtk-ai/rtk)** by **[RTK AI](https://github.com/rtk-ai)** โ the high-performance command-output compression project whose terminal, build, test, git, and tool-output filtering model inspired OmniRoute's RTK engine, JSON filter DSL, raw-output recovery, and stacked RTK โ Caveman compression pipeline.
Special thanks to **[Troglodita](https://github.com/leninejunior/troglodita)** by **[Lenine Jรบnior](https://github.com/leninejunior)** โ the PT-BR token compression project ("por que gastar muitos tokens quando poucos resolve?") whose Portuguese-native rules power OmniRoute's pt-BR language pack: pleonasm reduction, filler removal tuned for Brazilian Portuguese grammar, and technical abbreviations for the dev BR community.
## ๐ฐ Free-Token Budget โ see exactly how much free inference you have
Stacking free tiers by hand is painful: dozens of SDKs, dozens of rate limits, and no idea how much you actually have. OmniRoute aggregates the **documented** free tiers of **50+ provider pools / 530 models** into one honest number and shows it live on the dashboard (`/dashboard/free-tiers`).
- **~1.9B free tokens / month** (steady) โ and **up to ~2.5B in your first month** with signup credits.
- **Pool-deduped, honest:** we count each shared free pool **once**, so the headline isn't inflated by rate-limit ceilings the way multi-billion competitor claims are. (The naรฏve per-model sum would read ~8B; we don't publish that.)
- **Per-model breakdown**, **live used / remaining** for the current month, and a **ToS flag** for the 19 providers whose terms don't permit proxying.

> Preview mockup โ a real screenshot lands once the `/dashboard/free-tiers` page is validated. Full methodology (pool dedupe, credit tiers, the 19 ToS-restricted providers): **[docs/reference/FREE_TIERS.md](docs/reference/FREE_TIERS.md)**.
## ๐ License
MIT License - see [LICENSE](LICENSE) for details.
---
**[โฌ Back to top](#-omniroute)** ยท Built with โค๏ธ for the open-source AI community.
OmniRoute v3.8.6 ยท Node โฅ22.22.2 ยท MIT License ยท omniroute.online