# 🚀 OmniRoute — Ang Libreng AI Gateway
**Ginawa ni [Diego Souza](https://github.com/diegosouzapw)**
## 💰 ~1.62B Token / Buwan sa Mga Libreng Tier ng Third-Party
> **Gamitin ang sarili mong mga account ng provider.** Tinatayang pinagsama-samang halaga ito mula sa magkakahiwalay at kwalipikadong libreng tier ng third-party, hindi token grant mula sa OmniRoute. Mag-sign up, kumuha ng mga kredensyal kung kinakailangan, at ikonekta ang mga provider na magagamit mo; bawat provider ang kumokontrol sa mga limitasyon, availability, at tuntunin nito.
>
> Masakit pagsama-samahin nang mano-mano ang mga libreng tier — dose-dosenang SDK, dose-dosenang rate limit, at walang ideya kung gaano karami talaga ang mayroon ka. Itinatala ng OmniRoute ang **465 entry ng libreng tier sa 34 na paulit-ulit na pool key** at kinakalkula ang pangunahing bilang ng token mula sa **17 pool na may inilathalang positibong buwanang budget, kasama ang limang per-model Groq cap**, na inalis ang mga duplikado batay sa shared pool. Ang mga quota na nagbubukas lamang pagkatapos ng regional identity check (sa ngayon: ModelScope) ay ipinapakita nang hiwalay, +~6M pagkatapos ng regional identity verification, at hindi kailanman isinasama sa pangunahing bilang. Nanatiling nakikita ang resulta sa dashboard (`/dashboard/free-tiers`).
> Animated na buod ng live na pahina ng `/dashboard/free-tiers`. Buong pamamaraan (pool dedupe, credit tier, tuntunin ng provider): **[docs/reference/FREE_TIERS.md](docs/reference/FREE_TIERS.md)**.
>
> Muling sinusuri ang mga bilang na ito bawat dalawang linggo batay sa live catalog at **gumagalaw ang mga ito sa parehong direksiyon** — kapag tinapos ng isang provider ang libreng tier nito, bumababa ang bilang; kapag may bagong dumating, tumataas ito. Inilalathala namin ang aktuwal na kinakalkula ng catalog, hindi kailanman ang binilog na pinakamagandang senaryo.
⭐ Bituinan ang repo kung nakatulong ang OMNIROUTE na makatipid ka at mapadali ang iyong trabaho.
[](https://github.com/diegosouzapw/OmniRoute)
[](https://www.star-history.com/diegosouzapw/omniroute)
[](https://olud.ai/project/diegosouzapw-omniroute.html)
### 💬 Sumali sa komunidad
**👋 Sundan ang maintainer — maunang makatanggap ng mga bagong provider, release at tip:**
[](https://www.linkedin.com/in/diegosouzapw/)
[](https://github.com/diegosouzapw)
[](https://discord.gg/U47eFqAXCn)
[](https://t.me/omnirouteOficial)
[](https://chat.whatsapp.com/FvuCbrpZmQ6I85n2vW5QIC?s=cl&p=a&mlu=4)
[](https://chat.whatsapp.com/KWgatljAjmbELQory59Oti?s=cl&p=a&mlu=4)
[](https://omniroute.online)
**Mga tanong, tip tungkol sa provider, roadmap at suporta → [Discord](https://discord.gg/U47eFqAXCn) · [Telegram](https://t.me/omnirouteOficial) · WhatsApp [🌍 Global](https://chat.whatsapp.com/FvuCbrpZmQ6I85n2vW5QIC?s=cl&p=a&mlu=4) / [🇧🇷 Brasil](https://chat.whatsapp.com/KWgatljAjmbELQory59Oti?s=cl&p=a&mlu=4) / [Portal](https://portal.sthub.com.br/communities/groups/st-hub/channels/Omniroute-World-8kRjmK)**
## 📈 Patuloy na Lumalaki ang Gateway
| | v3.8.50 | **v3.8.51** | `v3.8.54+` |
| ----------------------------------- | :-----------------------: | :---------: | :--------------------: |
| 🌐 Mga provider | 352 | **358** | 388 |
| 🧠 Mga natatanging ID ng chat model | 1320 | **1374** | 1491 |
| 🖼️ Tulay ng modality | 🆕 bisyon + audio + video | ✓ | ✓ |
| 📡 Libreng katalogo ng Radar | 🆕 opt-in | ✓ | ✓ |
| ⚖️ Pag-iiskedyul na batid ang quota | 🆕 Quota-Share | ✓ | ✓ |
| 📊 Telemetry ng quota | 🆕 live | ✓ | ✓ |
| 🧰 Headless mode | — | — | 🆕 `serve --headless` |
| 🛤️ Imprastraktura ng LTS rail | — | — | 🆕 mga release channel |
| 🔎 API para sa pagtuklas ng modelo | — | — | 🆕 `/v1/models/query` |
**→ [Roadmap](ROADMAP.md) — sumabay sa rail patungo sa `v3.9.0 LTS`**
## 🆓 Mag-install, magkonekta ng provider, pagkatapos ay mag-route sa pamamagitan ng isang endpoint
```bash
# Pagkatapos magkonekta ng provider, kopyahin ang iyong OmniRoute key mula sa Dashboard → Mga endpoint:
curl http://localhost:20128/v1/chat/completions \
-H "Authorization: Bearer YOUR_OMNIROUTE_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"auto","messages":[{"role":"user","content":"Hello!"}]}'
```
Kailangan ng `auto` ng isang kwalipikadong route. Maaaring walang kwalipikadong keyless target ang bagong installation, at maaaring tanggihan ng isang keyless provider ang mga third-party client. Ang mga provider na may markang `tos: avoid`, kabilang ang Kiro, ay hindi kasama sa awtomatikong routing bilang default; hindi binabago ng pagkonekta ng account ang setting na iyon. Tingnan ang [Gabay sa mga Libreng Tier](docs/getting-started/FREE-TIERS-GUIDE.md) bago pumili ng provider.📦 Mga quickstart script na maaaring i-copy-paste para sa **Python, Node.js, PHP, at cURL** → [`examples/quickstart/`](examples/quickstart/)
# 💥 Ang Pangako
# 🤔 Bakit OmniRoute?
## 🤝 Sinusuportahan ng Aming Mga Kaibigan sa Open Source
> **Gusto mo bang sumali bilang isang Kaibigan sa Open Source?** Ito ang mga kumpanyang sumusuporta sa open source at tumutulong na panatilihing gumagana ang OmniRoute — at ipinapahayag namin sa publiko kung saan napupunta ang bawat token na ibinibigay nila sa amin. Makipag-ugnayan: [diegosouza.pw@outlook.com](mailto:diegosouza.pw@outlook.com)
Kimi Moonshot AI
Salamat sa Kimi (Moonshot AI), ang aming founding Open Source Friend, sa pagsuporta sa proyektong ito! Ang Kimi ay ang AI lab sa likod ng open-weight K2 at K3 model families — ang Kimi K3 ay naghahatid ng 1M-token context window, native vision at frontier-level coding sa isang bahagi ng presyo ng closed-model, at gumagana agad sa Claude Code, Codex at bawat coding tool na inihahatid ng OmniRoute.
Ano ang pinapagana ng suporta ng Kimi: Ang mga API credit ng Kimi ay nagpapagana sa AI-validated release pipeline ng OmniRoute — ang merge validation na pinapagana ng Kimi K3 stage na sumusuri sa bawat pull request bago ito ilabas — kasama ang pang-araw-araw na pagbuo ng feature. Ang first-class na suporta ng Kimi ay inilalabas sa parehong rails: ang direktang Kimi API (kimi-k3) at ang Kimi Code coding plan (OAuth at API key). Ang OmniRoute din ang unang Brazilian open-source project sa support program ng Kimi. Kumuha ng Kimi API key na may 15% dagdag na credits →
Cheaper Inference cheaperinference.com
Salamat sa Cheaper Inference, isang OmniRoute Open Source Friend, sa pagsuporta sa proyektong ito! Ang Cheaper Inference ay isang cost-ranked gateway na nagbebenta muli ng 42 frontier models — Claude, GPT-5.x, Gemini, Kimi K3, GLM, DeepSeek, Grok at MiniMax — sa likod ng isang OpenAI-compatible endpoint, na nagruruta ng bawat kahilingan sa pinakamurang karapat-dapat na provider nang hindi kailanman naniningil ng mas mataas sa list price ng gumawa ng modelo.
First-class na suporta sa OmniRoute: Chat Completions, ang native na /v1/responses endpoint, vision, tool calling at 3 image models (grok-imagine, nano-banana-pro, nano-banana-2, na naaabot bilang cheaperinference/<model>). Kumuha ng API key →
Ang mga link na may tag na aff=omniroute ay mga partner link. Pinopondohan nila ang proyekto nang walang dagdag na gastos sa iyo. 🎟️ Affiliates Promo — libreng signup coupons mula sa mga provider na hindi namin sinusuportahan (i-click para palawakin)Ang seksyong ito ay para lamang sa referral/coupon codes. Ang mga sponsored partnership ay nasa 🤝 Sinusuportahan ng Aming Mga Kaibigan sa Open Source sa itaas. Walang sponsorship o partnership ang OmniRoute sa mga provider na nakalista dito — ito ay mga pampublikong coupon na maaaring gamitin ng sinuman.
AgentRouter agentrouter.org
AgentRouter — affiliate signup · $100 libreng credits sa signup (libreng server, asahan ang mas mataas na latency — pinakamahusay para sa pagsubok, hindi para sa produksyon). First-class na suporta sa OmniRoute mula noong v3.8.50: Chat Completions, ang Anthropic-compatible wire format at ang OpenAI-compatible path. Kasama sa mga available na modelo ang claude-opus-4-8, claude-opus-5, gpt-5.6-sol at marami pa. Kunin ang iyong $100 →
⚠️ Affiliate link — Walang sponsorship o partnership ang OmniRoute sa provider na ito.
May alam ka bang ibang provider na may mapagbigay na libreng signup coupon na makikinabang sa mga user ng OmniRoute? Magbukas ng isyu at idaragdag namin ito dito.
## 🎯 Mga Combo — Ang Pangunahing Tampok
> Ang **combo** ay isang hanay ng mga model na **awtomatikong** pinagrurutahan ng OmniRoute. Kung maubos ang quota, pumalya ang isang provider, o biglang tumaas ang mga gastos, maaaring lumipat ang combo sa susunod na kwalipikado at maayos na model. 🛡️
### ⚡ Walang configuration — gamitin lang ang `auto`
Walang combo na kailangang gawin. Itakda ang iyong model sa `auto` (o isang variant) at bubuo ang OmniRoute ng virtual na combo mula sa iyong mga nakakonektang provider, na sinusuri nang live:
Model ID
Kung para saan ito nag-o-optimize
auto
🎯 Balanseng default (LKGP — nananatili sa iyong huling maayos na provider)
auto/coding
🧑💻 Mga weight na inuuna ang kalidad para sa pagbuo ng code
auto/fast
⚡ Pinakamababang latency muna
auto/cheap
💰 Pinakamura bawat token muna
auto/subscription
🎟️ Tanging ang quota ng subscription na binabayaran mo na — hihinto kapag nabigo, at hindi kailanman lilipat sa fallback na may bayad (gabay)
auto/thrifty
🪜 Quota ng plan muna, pagkatapos ay paisa-isang antas patungo sa pinakamurang mga opsyong may bayad — babalik sa plan pagkatapos nitong mag-reset (gabay)
auto/offline
🔋 Pinakamalaking natitirang quota / kapasidad sa rate limit muna
auto/smart
🔭 Inuuna ang kalidad + 10% eksplorasyon upang makatuklas ng mas mahuhusay na model
auto/lkgp
📌 Tahasang pananatili sa huling kilalang maayos na provider
auto/chaos
🧪 Sabay-sabay na pagpapadala sa isang panel ng mga model (isa bawat provider, 5 bilang default), at nagbabalik ng isang sagot; isang upstream call bawat model sa panel, hindi fault injection
##
### 🔀 O bumuo ng sarili mo — 20 diskarte sa pagruruta
Lahat ng **20** diskarte — paghalu-haluin at pagtugmain sa bawat hakbang ng combo:
#
Diskarte
Kung ano ang ginagawa nito
1
priority
Listahang nakaayos ayon sa unang target — ubusin ang bawat isa bago lumipat sa susunod 🥇
2
fill-first
Lubusang punuin ang quota ng bawat target bago lumipat
3
weighted
Random na pagpili batay sa weight ng bawat target
4
round-robin
Umikot sa mga target ayon sa pagkakasunod-sunod
5
p2c
Random na load balancing gamit ang power-of-two-choices
6
least-used
Piliin ang target na may pinakamababang kasalukuyang load
7
random
Pantay-pantay na random na pagpili (inaalis ang mga duplicate)
8
strict-random
Random nang hindi inaalis ang mga pag-uulit 🎲
9
cost-optimized
Pinapaliit ang $ bawat request batay sa live na pagpepresyo sa catalog 💸
10
headroom
Piliin ang target na may pinakamaraming natitirang quota
11
quota-weighted
Laktawan ang mga account na ubos na, pagkatapos ay pumili nang proporsyonal sa natitirang quota ÷ kasalukuyang load — mananatiling naka-pin ang mga umiiral na pag-uusap ⚖️
12
reset-window
Unahin ang target na may quota window na pinakamalapit nang mag-reset
13
reset-aware
I-ranggo ayon sa oras ng pag-reset ng quota — maiikling window muna 📊
14
context-relay
Ilipat ang context sa iba't ibang target para sa mahahabang pag-uusap 🧠
15
context-optimized
Piliin ang pinakaangkop para sa kasalukuyang laki ng context
16
cache-optimized
I-pin ang bawat muling magagamit na prefix ng prompt sa parehong account — i-maximize ang mga hit sa prompt cache 🎯
17
lkgp
Huling Kilalang Maayos na Path — ipinipin sa huling matagumpay na provider, pagkatapos ay lilipat sa mga panuntunan bilang fallback
18
auto
Live na pagmamarka gamit ang 16 na salik sa lahat ng koneksyon 🤖
19
fusion
Ipadala sa isang panel ng mga model + isang tagahatol ang magsasama-sama ng iisang sagot 🧬
20
pipeline
Ikadena ang mga hakbang — ang output ng bawat target ay ipinapasa sa susunod 🔗
Binibigyan ng Auto-Combo engine ng puntos ang bawat kandidato batay sa **16 na salik** (kalusugan, quota, gastos, latency, pagiging angkop sa gawain, kalidad, availability ng session…) — tingnan ang [`docs/routing/AUTO-COMBO.md`](docs/routing/AUTO-COMBO.md).
##
### 🧱 Nakapaloob na ang resilience (3 independiyenteng layer)
📖 [Auto-Combo Engine](docs/routing/AUTO-COMBO.md) · [Gabay sa Resilience](docs/architecture/RESILIENCE_GUIDE.md)
## 🏆 Ano ang Nagpapaiba sa OmniRoute
📊 Buong metodolohiya at detalye sa bawat tampok kumpara sa 9router, OpenRouter, CLIProxyAPI & LiteLLM → [`docs/comparison/OMNIROUTE_VS_ALTERNATIVES.md`](docs/comparison/OMNIROUTE_VS_ALTERNATIVES.md)
## 💚 Suportahan ang OmniRoute
Ang OmniRoute ay may lisensyang MIT at hayagang pinapanatili. Kung nakakatipid ito ng oras o pera para sa iyo, narito kung paano mo ito matutulungang manatiling malaya — piliin ang naaangkop sa iyo. Hindi kailanman naaapektuhan ng sponsorship ang priyoridad sa routing; visibility ang binibili nito, hindi ranggo.
**🇧🇷 PIX** — agad-agad, walang bayarin (Brazil)
Key (random): `5d865059-bc44-483a-962d-43ceb80126eb`
Kopyahin-at-i-paste na Pix:
```
00020101021126580014br.gov.bcb.pix01365d865059-bc44-483a-962d-43ceb80126eb5204000053039865802BR5922OMNIROUTE CONTRIBUICAO6006BRASIL62070503***630475DD
```
₿ Crypto — BTC · ETH · USDT-TRC20 · USDC-Solana (i-click para palawakin)
₿ BTC
Bitcoin (SegWit)
bc1qh00smz004sy85wyl28v77tenkt3ckl6eaep7fd
Ξ ETH
Ethereum (ERC20)
0x64Cf6B68A6Ff34288e89172950a2d00102337a84
₮ USDT
Tron (TRC20)
TKAF41JpuQrHbKTnsQa9svJE2T192Hvsc2
$ USDC
Solana
2emNNZzVVWQc3FQ2wk9M6qXUQmW8AKdjjL174fXR28Tu
⚠️ Ipadala lamang ang bawat coin sa ipinapakitang network — maaaring mawala ang mga pondo kapag ipinadala sa maling network.
🐛 Nakakita ng bug o may feedback? Magbukas ng [Talakayan](https://github.com/diegosouzapw/OmniRoute/discussions).
Mga tala para sa developer: Maaaring bumuo ang proyekto ng lokal na .env file habang isinasagawa ang npm install/postinstall para sa kaginhawaan ng developer. Sadyang binabalewala ang file na ito sa pamamagitan ng .gitignore (tingnan ang .gitignore) at hindi ito kailanman dapat i-commit — kung aksidenteng na-commit, palitan ang anumang nalantad na secret at alisin ang file mula sa history. Tingnan ang docs/DEVELOPER-ENVIRONMENT.md para sa gabay sa pamamahala ng mga lokal na environment file at secret.
## 📡 OmniRoute Radar
Ang pangunahing headline para sa libreng tier ay nananatiling **~1.62B token/buwan** mula sa nakadokumento at na-deduplicate ayon sa pool na catalog sa itaas. Maaaring hiwalay na mapataas ng pansamantalang signup credits ng provider ang unang buwan sa **~2.22B**. Ang Radar ay isang opsyonal at nilagdaang catalog overlay para sa mga taong nais ng mas napapanahong availability ng mga libreng modelo sa pagitan ng mga release ng OmniRoute; mananatiling libre ang catalog ng komunidad at ang bawat umiiral na libreng feature.
Maaaring matanggap ng mga supporter ang live na catalog at mga karagdagang oportunidad mula sa provider. Ang hiwalay at nababagong limitasyon nito ay **humigit-kumulang 3B token/buwan sa pinakamataas**, depende sa availability ng provider. Hindi garantiya ang limitasyong iyon: maaaring baguhin ng mga provider ang mga quota, pagiging kwalipikado, mga modelo, o mga rehiyon anumang oras.
Ang Radar ay opt-in at GET-only. Hindi nag-a-upload ang OmniRoute client ng mga prompt, traffic, configuration ng provider, telemetry ng paggamit, o lokal na estado ng pag-dismiss sa announcement. Alamin ang tungkol sa pagiging kwalipikado at ang kasalukuyang catalog sa **[radar.omniroute.online/planos](https://radar.omniroute.online/planos)**.
## ✨ Ano ang Bago
> Mga kamakailang tampok mula **v3.8.20 → v3.8.54**. Makikita ang buong kasaysayan sa [`CHANGELOG.md`](CHANGELOG.md).
- **⚖️ `quota-weighted` na routing** — nilalaktawan ng ika-20 combo strategy ang mga account na ubos na, pagkatapos ay pumipili sa natitira ayon sa proporsyon ng natitirang quota ÷ kasalukuyang load, habang nananatiling naka-pin ang mga kasalukuyang conversation. → [Auto-Combo](docs/routing/AUTO-COMBO.md)
- **🧰 Headless mode** — pinapatakbo ng `omniroute serve --headless` (o `OMNIROUTE_HEADLESS=1`) ang `/v1/*` proxy engine lamang, habang naka-off ang dashboard at mga subsystem na para lamang sa dashboard. → [Headless Mode](docs/guides/HEADLESS.md)
- **🔎 Pagtuklas ng modelo** — nagfi-filter ang `/v1/models` ayon sa capability, context, uri at teksto, at nagbabalik ang `POST /v1/models/query` ng maikli at deterministic na shortlist na may parehong visibility sa bawat key. → [Sanggunian ng API](docs/reference/API_REFERENCE.md)
- **🔑 Kontrol sa routing bawat key** — maaaring i-pin ang isang API key sa isang modelo o combo gamit ang `forcedModel`, at maaaring idagdag o alisin nang atomiko ang mga modelo at combo ng isang key (`/api/keys/{id}/access`). → [Sanggunian ng API](docs/reference/API_REFERENCE.md) · [OpenAPI](docs/openapi.yaml)
- **🛡️ Mas pinong kontrol sa PII** — pagpili bawat uri, hanggang 20 na beripikadong custom masking pattern at mga counter ng detection bawat uri; nananatiling opt-in ang mismong masking. → [Mga Guardrail](docs/security/GUARDRAILS.md)
- **🌍 67 wika** — dashboard, mga mirror ng dokumentasyon at CLI, kung saan idinadagdag ng `npm run i18n:add-locale` ang isang wika sa lahat ng bahagi gamit ang isang command. → [Gabay sa i18n](docs/guides/I18N.md)
- **🎛️ OmniConductor** — inbound A2A delegation sa fleet ng iyong mga agent, mga Conductor skill sa Agent Card, at isang panel sa dashboard na may Faro push-to-talk voice chat. → [A2A Server](docs/frameworks/A2A-SERVER.md)
- **🛂 Adaptive admission at proteksiyon laban sa overload** — ipinipila ang mabibigat na chat request sa halip na magbalik ng 503, gamit ang atomikong RPM rolling lease bawat connection. → [Gabay sa Resilience](docs/architecture/RESILIENCE_GUIDE.md)
- **🗂️ Canonical na pagkakaayos ng `/v1/models`** — isang tuloy-tuloy na bloke na pinangkat ayon sa provider para sa bawat provider (mga combo muna), na stable sa lahat ng catalog source. → [Sanggunian ng API](docs/reference/API_REFERENCE.md)
- **🗜️ Mas matatag na compression** — inflation guard na naka-on bilang default, Caveman pack para sa DE / FR / JA at Chinese (wényán), at RTK filter para sa Gradle at .NET. → [Compression](docs/compression/COMPRESSION_ENGINES.md)
- **💸 Tapat na flat-rate na gastos** — ipinapakita bilang **$0** sa cost analytics ang mga provider ng subscription / coding-plan; patuloy na gumagawa ng pagtatantiya ang budget, quota at routing. → [Sanggunian ng API](docs/reference/API_REFERENCE.md)
- **⚖️ Quota-Share routing** — patas na hinahati ang quota ng isang shared account sa mga pooled key, at work-conserving upang maipahiram ang mga idle na bahagi. → [Gabay sa Resilience](docs/architecture/RESILIENCE_GUIDE.md)
- **🤖 Pagse-set up ng CLI/agent gamit ang isang command** — 15 nakarehistrong `setup-*` command; inilulunsad ng `omniroute run` ang 7 CLI (Claude Code, Codex, Aider, Goose, OpenCode, Qwen Code, Gemini CLI); sinusuportahan ng `omniroute configure` ang 11 target na may interactive na provider+model picker at mga paborito bawat context. → [Mga Integrasyon ng CLI](docs/guides/CLI-INTEGRATIONS.md)
- **🛰️ Remote mode** — kinokontrol ang isang remote na OmniRoute gamit ang mga scoped token (`connect` / `contexts` / `tokens`) + isang `antigravity` OAuth helper para sa mga VPS install. → [Remote Mode](docs/guides/REMOTE-MODE.md)
- **🧭 Mas matalinong auto-routing** — mga `auto/:` combo, **Fusion** (model panel + judge), routing na batay sa task, at mga override sa modelo / mode / USD-budget bawat request. → [Auto-Combo](docs/routing/AUTO-COMBO.md)
- **🗜️ Pluggable compression** — 12 composable engine + Compression Studios: LLMLingua-2, two-tier Ultra, omniglyph, per-step fidelity gate, GCF v3.2, at drag-reorder editor. → [Compression](docs/compression/COMPRESSION_ENGINES.md)
- **🕵️ Transparent na MITM decrypt (TPROXY)** — mga capture CLI na hindi pinapansin ang proxy environment variable, na may CA bawat SNI + installer ng trust store. → [MITM/TPROXY](docs/security/MITM-TPROXY-DECRYPT.md)
- **💸 Cost telemetry saanman** — mga `X-OmniRoute-*` cost/usage header sa bawat endpoint, header para sa natipid mula sa cache-HIT, at mga USD spend quota bawat key. → [Sanggunian ng API](docs/reference/API_REFERENCE.md)
- **🧠 Memory na ikaw ang kumokontrol** — naka-off bilang default, opt-in na int8 vector quantization + typed decay, at `x-omniroute-no-memory` bawat request. → [Memory](docs/frameworks/MEMORY.md)
- **🛡️ Seguridad** — prompt-injection guard sa bawat LLM route (red-team suite), opt-in na credential-masking guardrail (nagtatago ng mga nailabas na API key/secret sa parehong direksiyon), libreng DuckDuckGo web search bilang huling opsiyon, at opsyonal na OIDC login gate para sa dashboard (palaging mananatiling available ang password login). → [Mga Guardrail](docs/security/GUARDRAILS.md)
- **🖼️ Mga bagong endpoint** — kinukumpleto ng `/v1/ocr` (Mistral OCR) at `/v1/audio/translations` (istilong Whisper) ang media surface. → [Sanggunian ng API](docs/reference/API_REFERENCE.md)
- **🎨 Pagbuo ng image / video / audio** — isang API para sa media: xAI Grok Imagine at Novita AI video, ComfyUI, Magnific, Adobe Firefly, Segmind, at mga speech provider gaya ng ElevenLabs. → [Sanggunian ng API](docs/reference/API_REFERENCE.md)
- **🌍 Deployment at mga operasyon** — reverse-proxy `basePath`, awtomatikong pagtukoy ng wika ng browser, pagsubaybay sa device bawat key, root-less na MITM trust, at zh-TW localization. → [Environment](docs/reference/ENVIRONMENT.md)
- **🤝 Mas maraming provider at agent** — mga cloud agent (Codex Cloud, Cursor, Devin, Jules), Grok Build (xAI) na may browser + OAuth login, first-class card para sa Ollama, Claude Opus 5 at Sonnet 5, opisyal na pakikipagtulungan sa Kimi (Code/Web/Moonshot), Zed, Requesty, SenseNova, Yuanbao, Agnes AI… at isang bagong **388-provider catalog**. → [Mga Provider](docs/reference/PROVIDER_REFERENCE.md)
- **📡 Transparency sa routing** — may `X-OmniRoute-Decision` header ang bawat response na nagsasaad ng strategy/provider/latency na naghatid nito; isang bagong `cache-optimized` combo strategy + Auto-Combo `cacheAffinity` factor ang nagbabalik ng mga paulit-ulit na request sa connection na may hawak ng naka-cache na prefix; at inilalantad ng read-only na `/v1/auto-combo/{channel}/candidates` endpoint ang live candidate pool ng isang `auto/*` channel. → [Auto-Combo](docs/routing/AUTO-COMBO.md)
- **⚡ Lokal na performance at imprastraktura** — mga lokal na Redis na isang-click na sinisimulan, mga deployer ng relay para sa Cloudflare Workers / Deno Deploy, at Bifrost at Mux bilang mga naka-supervise na naka-embed na serbisyo. → [Mga Naka-embed na Serbisyo](docs/frameworks/EMBEDDED-SERVICES.md)
- **🧩 Kasama rin sa package** — framework ng plugin at marketplace, mga framework ng kasanayan para sa Omni/Agent/GitHub, integrasyon sa Obsidian vault (22 MCP tool), mga API na tugma sa OpenAI para sa Batch at Files, semantic response cache, gamification na may mga leaderboard, pagtuklas ng ACP agent (15 built-in na agent), nakaiskedyul na pag-export ng log sa BigQuery, parallel multi-model fan-out na `auto/chaos`, bridge ng Telegram bot, in-app na version manager, at mga ranking ng libreng provider ng LMArena-ELO. → [Dokumentasyon](docs/README.md)
## 🤖 Mga Compatible na CLI at Coding Agent
> Isang config — `http://localhost:20128/v1` — at **lahat** ng AI IDE o CLI ay tumatakbo gamit ang libre at murang mga modelo.
+ gumagana rin sa · Agent Deck · Kiro · Command Code · Antigravity · Windsurf · AMP · anumang OpenAI-compatible na tool
📖 Per-tool na setup para sa lahat ng 39 na tools (28 CLI Code's + 11 CLI Agents) → [`docs/reference/CLI-TOOLS.md`](docs/reference/CLI-TOOLS.md) · 🧩 OpenCode plugin → [`@omniroute/opencode-provider`](https://www.npmjs.com/package/@omniroute/opencode-provider)
**Ilunsad ang kahit anong suportadong CLI gamit ang OmniRoute sa isang utos** — walang kailangang isulat na config files,
ang mga kredensyal ay ini-inject kada proseso, ang Qwen/Gemini ay nakakakuha ng pansamantalang hiwalay na home:
```bash
omniroute run claude --model openai/gpt-5.4 # Claude Code
omniroute run codex --model glm/glm-5.2 # OpenAI Codex CLI
omniroute run aider --model glm/glm-5.2 -- --message "reply OK"
omniroute run goose --model glm/glm-5.2
omniroute run opencode --model glm/glm-5.2 -- run "reply OK"
omniroute run qwen --model glm/glm-5.2 -- -p "reply OK"
omniroute run gemini --model glm/glm-5.2 -- --skip-trust -p "reply OK"
# O pumili ng provider+model nang interaktibo at isulat ang sariling config ng tool:
omniroute configure codex # maaari rin: claude opencode qwen aider goose gemini cline continue kilo 5dive
```
Bawat utos ay sumusunod sa aktibong remote context (`omniroute connect `), ang `--dry-run`
ay nagpapakita ng eksaktong env/args nang hindi ine-execute, at ang `--api-key-env NAME` ay nagtatago ng mga sikreto
mula sa iyong shell history. → [CLI Integrations](docs/guides/CLI-INTEGRATIONS.md)
## 🌐 388 AI Provider — 153 Minarkahan ng Catalogo bilang Libre
> **388 nakarehistrong provider** sa mga canonical na koleksyon ng chat, media, search, local, cloud-agent at system, kabilang ang **153 na may `hasFree: true` na metadata para sa discovery**. Saklaw ng chat model registry ang **239 provider / 3,059 natatanging pares ng provider-model / 1,475 raw model ID**; ang hiwalay na catalog ng libreng budget ay may **471 row bawat modelo**, **34 umuulit na pool** at **52 provider na paulit-ulit/keyless at libreng-libre**. Magkakaiba ang mga denominator na ito ayon sa disenyo; makikita ang mga depinisyon at kalkulasyong inalisan ng duplicate sa pool sa [Provider Reference](docs/reference/PROVIDER_REFERENCE.md) at [Free Tiers](docs/reference/FREE_TIERS.md).
### 🏢 Lahat ng pangunahing lab — sa iisang endpoint
OpenAI
Anthropic
Gemini
xAI Grok
DeepSeek
Mistral
Qwen
Meta Llama
Groq
NVIDIA
MiniMax
Cohere
Perplexity
HuggingFace
Together
Fireworks
Cloudflare
Baidu
…at 350+ pa — bawat icon ay live na niri-resolve mula sa catalog ng mga provider ng dashboard. 📖 [Provider Reference](docs/reference/PROVIDER_REFERENCE.md)
### 🆓 Libreng-libre — $0, walang card
OpenCode Zen DeepSeek V4, Nemotron 3 Walang limitasyon sa token
Kilo Code Auto-router, Tencent Hy3 Libre magpakailanman
Qoder AI Qwen3-Max, Kimi-K2 Walang limitasyong LIBRE
Pollinations GPT, Llama, Claude Hindi kailangan ng key
Cloudflare AI 50+ modelo 10K neuron/araw
NVIDIA NIM GLM, MiniMax ~40 RPM na libre
Cerebras GLM 4.7, GPT-OSS Isang beses na $5 credit; kinakailangan ang card
OpenRouter :free models +$10 → mas mataas na RPM
📖 Buong catalog na nababasa ng machine → [`docs/reference/PROVIDER_REFERENCE.md`](docs/reference/PROVIDER_REFERENCE.md)
## 🖥️ Where OmniRoute Runs — Kahit saan
> Parehong app, ang iyong makina, ang iyong mga panuntunan. Mula sa isang pandaigdigang pag-install ng npm hanggang** iyong telepono** sa pamamagitan ng Termux.
Platform
I-install
Mga Highlight
📦 npm (global)
npm install -g omniroute
Isang utos, anumang OS
⚡ Bun (global)
bun add -g omniroute
Parehong registry tarball, mas mabilis na pag-install
🐳 Docker
docker run … diegosouzapw/omniroute
Multi-arch AMD64 + ARM64
🖥️ Desktop (Electron)
npm run electron:build
Native window + system tray — Windows / macOS / Linux
🎩 Menu-bar (OmniRouteTray)
brew install --cask zoispag/tap/omniroute-tray
Pinangangasiwaan & auto-update ang server — macOS
💪 ARM
native arm64
Raspberry Pi, ARM server, Apple Silicon
📱 Android (Termux)
pkg install nodejs && npx -y omniroute
Tumatakbo sa iyong telepono , 24/7, walang root
📲 PWA
"Idagdag sa Home Screen"
Fullscreen, offline, mai-install mula sa browser
🧩 OpenCode plugin
@omniroute/opencode-provider
Native OpenCode integration
🤖 VS Code Copilot Chat
install OmniCopilot extension
Bawat OmniRoute model sa native Copilot Chat picker — stable & Insiders
### 🧩 Bago: OmniRoute sa loob ng katutubong Copilot Chat ng VS Code
> Walang bagong sidebar, walang bagong chat UI — ang bawat modelong inihahatid ng OmniRoute ay lumalabas mismo sa**Copilot Chat model picker na ginagamit mo na** . Dahil ang VS Code 1.122, gumagana ang mga modelo ng provider nang walang GitHub sign-in o Copilot subscription — agent mode, tool calling at vision, nang libre.
I-install ang** [OmniCopilot](https://github.com/diegosouzapw/OmniCopilot)** extension, ituro ito sa iyong OmniRoute server (default sa `localhost:20128`), pagkatapos ay buksan ang Copilot Chat → model picker →** Pamahalaan ang Mga Modelo...** →**OmniRoute** .
Mula sa loob ng editor: buksan ang** Mga extension** tingnan, hanapin** "OmniRoute"** , i-click** I-install** — gumagana sa parehong paraan sa parehong mga tindahan. Pinagmulan, mga isyu at ang publishing runbook live sa [diegosouzapw/OmniCopilot](https://github.com/diegosouzapw/OmniCopilot).
📖 [VS Code Copilot Gabay sa chat](docs/guides/VSCODE-COPILOT.md) — setup, kung ano ang ipinapakita ng picker, dashboard-in-a-tab, pag-troubleshoot
### 🎩 Bago: OmniRouteTray — ang iyong gateway, nakatira sa menu bar
> `omniroute serve` ang pinakamasaya kapag laging naka-on.** [OmniRouteTray](https://github.com/zoispag/omniroute-tray)** ginagawa iyon sa isang set-and-forget menu-bar app para sa macOS: sinisimulan nito ang server, pinapanatili itong buhay sa mga pag-reboot, ina-update ito sa lugar, at inilalagay ang iyong live na token na badyet sa isang click lang —** walang terminal window na naiwang bukas, walang `npm install -g omniroute` sa babysit.**
Binuo gamit ang [Tauri v2](https://v2.tauri.app/) (isang Rust core na kasing laki ng rounding error), nagpapadala ito ng sarili nitong nilagdaang Node 24 runtime at namamahala ng pag-install OmniRoute na pagmamay-ari ng app, kaya hindi nito kailanman nilalabanan ang iyong global `node`/`bun`. Ito** ibinabahagi ang iyong umiiral na `~/.omniroute/` config at database** — so it's the same OmniRoute you already run, just with a hat on. 🎩
Ano ang ginagawa nito
Paano
🟢 Pinangangasiwaan ang server
Nagpapalabas ng omniroute serve , gumagamit ng tumatakbo nang instance sa halip na i-duplicate ito
📊 Live na paggamit sa isang sulyap
Mga quota bar ng provider, mga limitasyon Claude session/weekly na may mga reset na countdown, 30-araw na breakdown ng gastos
🔄 Awtomatikong pag-update sa lugar
Naka-stage na pag-install, atomic swap, rollback sa pagkabigo — palaging nasa pinakabagong release
🚀 Magsimula sa pag-login
Opsyonal na paglulunsad sa pag-login; tray-only, walang dock icon
🩺 Doctor & log
One-click diagnostics at server log access
```sh
brew install --cask zoispag/tap/omniroute-tray
```
Mas gusto ang pag-download? Kunin ang pinakabagong .dmg mula sa
Naglalabas ng . Pinagmulan, mga isyu at pagbuo
docs nakatira sa zoispag/omniroute-tray.
💛 Isang proyekto ng komunidad ni @zoispag — hindi isang opisyal na paglabas OmniRoute.
> Bukod sa server, ang OmniRoute ay isang **kumpletong command-line cockpit** na may **80+ command**, pati mga bukas na protocol para makontrol ito ng isang AI agent nang **mag-isa**.
### ⌨️ Isang tunay na CLI (hindi lang `start`)
```bash
omniroute # patakbuhin ang gateway + dashboard (port 20128)
omniroute chat # interaktibong TUI chat client (slash: /model /combo /skill /memory)
omniroute setup # ginabayang wizard para sa unang pagpapatakbo
omniroute doctor # suriin ang mga provider, port, at native dependency
```
### 🛰️ Remote mode — patakbuhin ang CLI rito, at ang OmniRoute sa isang VPS
Nasa isang server ang OmniRoute? Kontrolin ito mula sa iyong laptop gamit ang **parehong CLI**. Mag-log in nang isang beses
gamit ang scoped access token; pagkatapos, ang bawat command ay itutuon sa remote.
```bash
omniroute connect 192.168.0.15 # password → scoped token, sine-save bilang isang context
omniroute models # ← tumatakbo laban sa REMOTE server
omniroute configure codex # ← pumipili ng remote model, nagsusulat ng lokal na Codex profile
omniroute tokens create --name ci --scope read # gumawa ng mas limitadong mga token para sa ibang machine
omniroute contexts use default # ← bumalik sa lokal na server
```
May scope na `read` / `write` / `admin` ang mga token; nananatiling loopback-only ang mga route na naglulunsad ng process.
📖 [Remote Mode](docs/guides/REMOTE-MODE.md)
### 🤝 Ikonekta ang isang agent — at kokontrolin nito mismo ang OmniRoute
Ilantad ang OmniRoute sa pamamagitan ng **MCP**, **A2A**, isang **REST API**, mga **webhook**, o isang **remote CLI** — makukuha ng anumang may kakayahang agent (o ng sarili mong code) ang mga susi sa buong gateway: routing, mga provider, combo, cache, compression, memory — nang awtonomo. Inihahatid ang mga HTTP endpoint sa ibaba sa ilalim ng `http://localhost:20128`.
Interface
Endpoint / command
Gamitin ito para sa
🧰 MCP (stdio)
omniroute --mcp
Ikonekta sa Claude Desktop, Cursor, o anumang MCP client
Compatible sa OpenAI — chat, embedding, larawan, audio, OCR
🔔 Mga Webhook
/api/webhooks
Mag-push ng mga request / quota event sa Slack, Discord, Telegram, o anumang URL
🛰️ Remote CLI
omniroute connect
Kontrolin ang isang remote instance gamit ang mga scoped access token
```bash
# Ibigay sa Claude Code ang kumpletong toolset ng OmniRoute sa pamamagitan ng 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) · [Mga Protocol ng Agent](docs/frameworks/AGENT_PROTOCOLS_GUIDE.md)
## 🗜️ Awtomatikong Mag-save ng 15–95% Token
### 📖 Paano ito gumagana — pipeline, arkitektura at matematika ng pagtitipid
Ang default na stacked combo ay nagpapatakbo ng `RTK → Caveman`. Kapag parehong kumilos sa iisang tool/context payload, nagkakapatong ang pagtitipid:
```txt
combined = 1 − (1 − RTK) × (1 − Caveman_input)
average = 1 − (1 − 0.80) × (1 − 0.46) = 89.2%
range = 78.4 – 94.6%
```
Ang mga code block, URL, JSON at structured data ay **palaging pinoprotektahan** ng preservation engine.
> **Bakit gagamit ng maraming token kung sapat na ang iilan?** Ang bawat kahilingan ay dumaraan sa compression pipeline ng OmniRoute **nang transparente** — walang kailangang baguhin sa kliyente. Isa na itong **stack ng 12 composable engine** na tumatakbo ayon sa pagkakasunod-sunod at maaaring pagsamahin ayon sa routing combo — batay sa mga ideya mula sa [RTK](https://github.com/rtk-ai/rtk), [Caveman](https://github.com/JuliusBrussee/caveman) (⭐ 90K+), [LLMLingua-2](https://github.com/microsoft/LLMLingua), at [Troglodita](https://github.com/leninejunior/troglodita) (PT-BR).
### 🧱 Ang stack ng 12 engine
Tumatakbo ang mga engine ayon sa pagkakasunod-sunod sa pipeline; bawat isa ay maaaring hiwalay na i-toggle at i-configure para sa bawat combo:
#
Engine
Ginagawa nito
1
Session-Dedup
Inaalis ang content na nauulit sa magkakasunod na turn (content-addressed, cross-turn)
2
CCR
Ina-archive ang malalaking block sa likod ng retrieve marker, na kinukuha kapag kinakailangan
3
Lite
Pagbabawas ng whitespace + image-URL (magaan sa latency na baseline)
4
RTK
Matalinong pag-filter, pag-deduplicate at pag-truncate ng resulta ng tool (alam ang command)
5
Responses Tool Output
Lossless-first JSON + may limitasyong diagnostic compression para sa shell/patch/search/build output (Responses API)
6
Headroom
Lossless na tabular compaction ng mga JSON array (~30%) sa pamamagitan ng vendored na GCF codec
7
Relevance
Extractive na pagmamarka ng pangungusap batay sa pinakahuling query ng user
8
Caveman
Rule-based na prose compression (~65–75% sa output)
9
Aggressive
Summarization + progresibong paglipas ng mga lumang turn
10
LLMLingua-2
ML semantic pruning sa pamamagitan ng MobileBERT ONNX — ligtas para sa code, async
11
Ultra
Heuristic na token pruning na may opsyonal na small-model (SLM) tier
12
OmniGlyph
Experimental na context-as-image encoding para sa nasukat na Claude Fable 5 sa direktang Anthropic wire; nananatiling fail-closed ang GPT 5.6 transformer habang hinihintay ang mga resibo ng provider. Apat na compression profile (aggressive na default, balanced, coding-safe, passthrough) (pinaka-agresibo; opt-in)
Ang mga code block, URL at structured data ay **palaging pinapanatiling** byte-perfect. Pinagsasama ng **one-click preset** ang mga engine:
Mode
Matitipid
Pinakamainam para sa
🪶 Lite
~15%
Laging naka-on na ligtas na default
🪨 Standard (Caveman)
~30%
Pang-araw-araw na coding
⚡ Aggressive
~50%
Mahahabang session na maraming tool
🔥 Ultra
~75%
Pinakamalaking pagtitipid
🧰 RTK
60–90%
Shell/test/build/git output
🔗 Stacked (RTK → Caveman)
78–95%
Pinaghalong prompt + tool log
**Tunay na halimbawa — Standard mode:**
> **Bago (69 token):** _"Ang dahilan kung bakit muling nagre-render ang iyong React component ay malamang na gumagawa ka ng bagong object reference sa bawat render cycle. Kapag nagpasa ka ng inline object bilang prop, nakikita ito ng shallow comparison ng React bilang ibang object sa bawat pagkakataon, kaya nagti-trigger ito ng re-render. Inirerekomenda kong gamitin ang useMemo para i-memoize ang object."_
>
> **Pagkatapos (19 token):** _"Bagong object ref sa bawat render. Inline object prop = bagong ref = re-render. I-wrap sa useMemo."_
>
> **Parehong sagot. 72% mas kaunting token. Walang nawalang katumpakan.** ✅
**Halimbawa sa PT-BR — mode ng [Troglodita](https://github.com/leninejunior/troglodita):**
> **Bago (42 token):** _"Ang problema ay nagre-render muli ang component dahil may bagong object reference na nalilikha sa bawat cycle ng pag-render. Iminumungkahi kong gumamit ng useMemo."_
>
> **Pagkatapos (12 token):** _"Muling pag-render: bagong ref sa bawat cycle (muling nililikha ang inline na object). Gamitin ang `useMemo`."_
>
> **Parehong sagot. ~70% mas kaunting token. Buo ang teknikal na katumpakan.** ✅
### 🎚️ Higit pa sa mga engine — mga style ng output, adaptive dial at kontrol sa bawat request
Pinapaliit ng 12 engine sa itaas ang pumapasok. Tatlo pang layer ang humuhubog sa **kung paano**, **kung kailan**, at kung ano ang lumalabas:
- **🪄 Mga Style ng Output** _(pagkontrol sa output axis)_ — nag-i-inject ng deterministic at cache-safe na mga instruction para hubugin ang response; maaaring pagsamahin, at bawat isa ay may intensity na `lite` / `full` / `ultra`. Isang linya lang sa registry ang kailangan para magdagdag ng style:
- **Maikling prose** — alisin ang filler / mga pantukoy / pag-aalinlangan; panatilihing eksakto ang teknikal na laman.
- **Mas kaunting code** — YAGNI ng "tamad na senior dev": pinakamaliit na gumaganang pagbabago, walang scaffolding na hindi hiniling.
- **Ponytail (tamad na senior dev)** — umakyat sa YAGNI ladder, ayusin ang ugat ng problema, pinakamaliit na gumaganang diff.
- **May ADHD ako (action-first)** — manguna ang susunod na aksyon, may numerong mga hakbang, isang kongkretong susunod na hakbang, walang paunang paliwanag.
- **Maikling CJK (文言)** — napakaikling istilong klasikal na Chinese (nakabatay sa locale at para lamang sa `zh`).
- **🎯 Adaptive na context-budget** _(ang dial)_ — sa halip na isang threshold ng token na on/off, unti-unting gamitin ang pinakamura at may pinakamaliit na pagkawala ng impormasyon na mga engine hanggang sa kinakailangan upang **magkasya sa context window ng modelo**. Patakaran: `reserve-output` (default, batay sa modelo) · `percentage` · `absolute`. Mode: `floor` (ginagarantiya ang pagkakasya) · `replace-autotrigger` (nangingibabaw ang iyong tahasang pagpili) · `off` (legacy threshold).
- **🎛️ Kung saan nagpapasya ang compression** _(precedence, mataas → mababa)_ — per-request na `x-omniroute-compression` header › routing-combo override › aktibong named profile › adaptive / auto-trigger › default ng panel › off. Ibinabalik ng response header na `X-OmniRoute-Compression: ; source=` ang nailapat na plan.
Mag-auto-trigger batay sa token threshold, i-on ang adaptive dial, mag-pin ng named profile, magtakda ng one-off per request, o magtalaga ng pipeline sa bawat routing combo — alinman ang angkop sa workload. Sinusuri ng opt-in offline **eval harness** (`npm run eval:compression`) ang fidelity kumpara sa natipid na resources sa isang naka-pin na corpus bago ka mag-promote ng pagbabago.
📖 [`COMPRESSION_GUIDE.md`](docs/compression/COMPRESSION_GUIDE.md) · [`RTK_COMPRESSION.md`](docs/compression/RTK_COMPRESSION.md) · [`COMPRESSION_ENGINES.md`](docs/compression/COMPRESSION_ENGINES.md)
# ⚡ Mabilis na Pagsisimula
**1) Mag-install at magpatakbo**
```bash
npm install -g omniroute
omniroute
```
> 💡 Nakakakita ng `npm warn ERESOLVE` o mga babala tungkol sa peer dependency? [Hindi nakapipinsala ang mga ito](docs/guides/TROUBLESHOOTING.md#npm-install-warnings-eresolve--peer--deprecated).
> **Gumagamit ng npm 11 o mas bago?** Maaaring harangan ng npm ang mga package lifecycle script maliban kung pinahintulutan ang mga ito. Kinakailangan ang `postinstall` ng OmniRoute (`node scripts/build/postinstall.mjs`) upang ihanda ang mga native runtime file nito. Pahintulutan ang mga package na nakasaad sa babala ng npm kapag nag-i-install nang global. Para sa package set na iniulat ng OmniRoute 3.8.54:
>
> ```bash
> npm install -g --allow-scripts=omniroute,keytar,onnxruntime-node,@parcel/watcher,@swc/core,protobufjs,esbuild omniroute
> ```
>
> Para magamit muli ang allowlist na ito sa mga susunod na global install, i-configure ito nang isang beses, pagkatapos ay mag-install nang normal:
>
> ```bash
> npm config set allow-scripts=omniroute,keytar,onnxruntime-node,@parcel/watcher,@swc/core,protobufjs,esbuild --location=user
> npm install -g omniroute
> ```
>
> Maaaring magbago ang listahan ng dependency sa bawat release; kung ibang listahan ang iulat ng npm, gamitin ang mga pangalan ng package mula sa babalang iyon. Ang pagpapahintulot sa isang package ay nagbibigay-daan sa pagtakbo ng mga install script nito.
> **Gumagamit ng Gemini Web o ibang web-cookie provider?** Kasama sa npm package ang
> Playwright ngunit hindi ang binary ng Chromium nito. Tingnan ang
> [Playwright Chromium setup](docs/guides/TROUBLESHOOTING.md#gemini-web-and-playwright-chromium)
> na tala bago gawin ang unang request sa web provider.
Dashboard sa `http://localhost:20128` · API sa `http://localhost:20128/v1`.
**2) Ikonekta ang isang kwalipikadong provider gamit ang sarili mong account**
Dashboard → **Providers** → pumili ng provider na ang kasalukuyang mga tuntunin at quota ay angkop sa iyong gamit → idagdag ang API key nito o kumpletuhin ang proseso ng account nito. Maaaring mangailangan ang mga libreng tier ng signup, approval, o paraan ng pagbabayad. Suriin ang [Free Tiers Guide](docs/getting-started/FREE-TIERS-GUIDE.md); hindi ginagarantiya ang keyless availability, at hindi isinama bilang default sa `auto` ang mga provider na may markang `tos: avoid`.
**3) Ituro ang iyong coding tool**
```txt
Base URL: http://localhost:20128/v1
API Key: [copy from Dashboard → Endpoints]
Model: auto (routes among eligible connections — or choose provider/model)
```
**4) Tiyaking gumagana ito**
```bash
curl http://localhost:20128/v1/models -H "Authorization: Bearer YOUR_KEY"
```
Dapat mong makita ang listahan ng mga nakakonektang modelo. 🎉 Iyon na — magsimula nang mag-code, at awtomatikong nagro-route at nagfa-fallback ang OmniRoute para sa iyo.
Kung hindi makapagpadala ng mga custom header ang iyong client, naglalantad din ang OmniRoute ng mga tokenized compatibility alias:
```txt
OpenAI catalog: http://localhost:20128/vscode/YOUR_KEY/
OpenAI models: http://localhost:20128/vscode/YOUR_KEY/models
OpenAI chat: http://localhost:20128/vscode/YOUR_KEY/chat/completions
OpenAI responses: http://localhost:20128/vscode/YOUR_KEY/responses
Ollama chat: http://localhost:20128/vscode/YOUR_KEY/api/chat
Ollama tags: http://localhost:20128/vscode/YOUR_KEY/api/tags
```
Gamitin lamang ang mga ito para sa mga client na hindi makapag-attach ng `Authorization: Bearer ...`. Ang header auth pa rin ang inirerekomendang mode.
## 📦 Higit pang paraan ng pag-install — Docker, source, pnpm, Arch
**🐳 Docker**
```bash
docker run -d --name omniroute --restart unless-stopped --stop-timeout 40 \
-p 127.0.0.1:20128:20128 -v omniroute-data:/app/data diegosouzapw/omniroute:latest
```
Sinusundan ng `:latest` ang pinakamataas na **na-publish** na stable na SemVer. Hindi nito sinusubaybayan ang git `main`. I-pin ang `:X.Y.Z` para sa GitOps. Tingnan ang [Mga Channel ng Release ng Docker](docs/guides/DOCKER_GUIDE.md#release-channels). Naka-pin sa image ang **`OMNIROUTE_MEMORY_MB=1024`**. Sapat iyon para sa dashboard at magaan na chat. Nangangailangan ang mga **coding agent** (`POST /v1/responses` mula sa Claude Code, Codex, Grok, …) ng mas malaking V8 heap, kung hindi ay magkakaroon ng `FATAL ERROR` ang proseso sa ~12 GiB kapag may dalawang magkapatong na mahabang context. Maglaan sa container ng higit sa laki ng heap (nasa labas ng V8 ang mga native buffer):
| Workload | Heap (`-e OMNIROUTE_MEMORY_MB`) | Container (`--memory`) |
| ------------------------------------------ | ------------------------------- | ---------------------- |
| Dashboard / magaan na chat | `1024` (default ng image) | ≥2 g |
| Isang coding agent | `8192` | ≥10 g |
| Dalawang sabay na mahabang `/v1/responses` | `10240`–`12288` | ≥12–16 g |
```bash
docker run -d --name omniroute --restart unless-stopped --stop-timeout 40 \
-e OMNIROUTE_MEMORY_MB=8192 --memory=10g \
-p 127.0.0.1:20128:20128 -v omniroute-data:/app/data diegosouzapw/omniroute:latest
```
Buong talahanayan: [Gabay sa Docker — runtime RAM](docs/guides/DOCKER_GUIDE.md#runtime-ram-for-coding-agents).
> **Pre-release na channel ng Docker:** Sinusundan ng `diegosouzapw/omniroute:next` at
> `diegosouzapw/omniroute:next-web` ang kasalukuyang default na branch na `release/v*`.
> Ang mga nababagong tag na ito ay inilaan lamang para sa pagsubok ng mga hindi pa
> nailalabas na pag-aayos at **hindi sinusuportahan para sa production**. Tingnan ang
> [Mga Channel ng Release ng Docker](docs/guides/DOCKER_GUIDE.md#release-channels).
**🥟 Bun**
Sinusuportahan ang karaniwang `bun install` at global na pag-install (`bun install -g omniroute`) sa pamamagitan ng pagtukoy sa Bun runtime:
- **Built-in na `bun:sqlite`**: Ginagamit ng OmniRoute ang built-in na `bun:sqlite` driver ng Bun kapag tumatakbo sa Bun, at bumabalik sa `better-sqlite3` sa Node.js o `sql.js`.
- **Awtomatikong pagpili ng Webpack bundler sa dev**: Awtomatikong tinutukoy ng development (`bun run dev`) ang Bun at dini-disable ang Turbopack pabor sa Webpack upang maiwasan ang mga incompatibility sa native V8 binding. Eksaktong sinusunod ng mga production build (`bun run build`) ang `OMNIROUTE_USE_TURBOPACK` gaya sa Node: Turbopack bilang default, `OMNIROUTE_USE_TURBOPACK=0` upang mag-build gamit ang Webpack (inilalantad ito ng `Dockerfile.bun` bilang `--build-arg`).
- **Nakalaang Bun Dockerfile**: Multi-stage na `Dockerfile.bun` para sa mga native na Bun production deployment (`docker build -f Dockerfile.bun -t omniroute:bun .`).
```bash
# Mag-install at patakbuhin gamit ang Bun
bun install
bun run dev
```
**🛠️ Mula sa source**
```bash
cp .env.example .env && npm install
PORT=20128 npm run dev
```
**📦 pnpm**
```bash
pnpm add -g omniroute@latest --allow-build=better-sqlite3 --allow-build=@swc/core && omniroute
```
**🐧 Arch Linux (AUR)**
```bash
yay -S omniroute-bin && systemctl --user enable --now omniroute.service
```
**🔧 Nix (Flake)**
```bash
# Gamit ang mga Nix flake
nix develop
npm run dev
# O gamit ang devbox
devbox run npm run dev
```
📖 [Gabay sa Docker](docs/guides/DOCKER_GUIDE.md) — Mga Compose profile, Caddy HTTPS, mga Cloudflare tunnel.
**🦭 Podman**
```bash
# 1. Ihanda ang bind-mounted na data directory
mkdir -p data
# 2. Para lamang sa Linux + lokal na rootless Podman (huwag kailanman sa remote na Podman Machine client):
podman unshare chown 1000:1000 ./data
# 3. Itakda ang runtime hint, buuin ang lokal na Compose image, at simulan
echo "CONTAINER_HOST=podman" >> .env
podman compose --profile base up -d --build
```
Sa macOS o Windows, gumagamit ang Podman ng remote na Podman Machine: laktawan ang `podman unshare` at
sundin ang [gabay sa data directory na partikular sa topology](contrib/podman/README.md#data-directory-permissions-by-topology).
📖 [Gabay sa Podman](contrib/podman/README.md) — Mga Compose build, Podman Machine, at
pag-setup ng Linux/systemd Quadlet.
**⚡ Mas mabilis / mas magaan na pag-install (laktawan ang native build)**
Ang native na SQLite engine (`better-sqlite3`) ay isang **opsyonal** na dependency, kaya ang global na
pag-install ay hindi kailanman mahahadlangan ng pag-compile mula sa source: gumagamit ito ng prebuilt binary kapag may tumutugma
sa iyong platform/Node, at kung wala ay awtomatikong bumabalik sa isang pure-JS engine
(`node:sqlite` sa Node 22+, o kung hindi ay ang kasamang `sql.js` WASM) — walang kinakailangang build tool.
Upang ganap na laktawan ang native warm-up pagkatapos ng pag-install (CI, headless, o mababagal na machine):
```bash
OMNIROUTE_SKIP_POSTINSTALL=1 npm install -g omniroute # Nilalaktawan din ito ng CI=1
```
Para sa pinakamabilis na pag-install, piliin ang **pnpm** (content-addressed store + mga hard link — tingnan sa itaas).
Para sa headless runtime na walang dashboard, gamitin ang Docker `base` profile (sa itaas) o ang
[gabay sa Termux](docs/guides/TERMUX_GUIDE.md). Inihahatid ng iisang proseso sa iisang port ang CLI at web dashboard,
kaya walang hiwalay na CLI-only package sa kasalukuyan.
# 🎬 Aktuwal na Paggamit sa OmniRoute
## 📹 Mga Gabay sa Video
Snapshot ng dashboard noong 2026-10-18 · Hilaw na katalogo: YT 1.352 | TT 334 | IG 290 · Pagiging bago (mga araw): YT 5 | TT 48 | IG 49
**Kumpletong ranggo (mga na-deduplicate na canonical URL, `v > 0`, pinakamalawak na abot):**
| #1 | #2 | #3 | #4 | #5 |
| -------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- |
| [nick_saraev — Instagram](https://www.instagram.com/reel/Da8ZthUPK98/) — **3,042,474** | [nnapier7 — Instagram](https://www.instagram.com/reel/Dbp7wv_CIO0/) — **1,454,535** | [Amidia AI & Tech — YouTube](https://www.youtube.com/watch?v=NJ0TQ-pyMDY) — **794,974** | [theopenstack — Instagram](https://www.instagram.com/reel/DaSs65mMrHk/) — **692,419** | [migue.baena — TikTok](https://www.tiktok.com/@migue.baena/video/7670919268216622358) — **685,788** |
| #6 | #7 | #8 | #9 | #10 |
| ------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- |
| [milesreevesai — TikTok](https://www.tiktok.com/@milesreevesai/video/7667980059189366019) — **620,400** | [nikothetech — TikTok](https://www.tiktok.com/@nikothetech/video/7671890769665477918) — **610,803** | [Vaibhav Sisinty — YouTube](https://www.youtube.com/watch?v=QucgvbO5gsM) — **509,281** | [buildwithai.club — Instagram](https://www.instagram.com/reel/DbIt9AjK7-U/) — **347,652** | [nivedan.ai — Instagram](https://www.instagram.com/reel/DbIrCksJiqq/) — **331,973** |
Mga canonical na sukatan noong 2026-10-18: **1.976 natatanging video** · **20.220.289 kilalang panonood** (`v > 0`) · **1.210 channel/profile ayon sa network**. Naglalaman ang hilaw na dashboard ng 1.976 linya (YouTube 1.352 = 740 mahahabang video + 612 Shorts · TikTok 334 · Instagram 290); walang natirang duplicate pagkatapos ng normalisasyon ayon sa canonical URL, na nagpapanatili ng pinakamataas na bilang para sa bawat video. Naka-freeze ang pangongolekta mula sa YouTube noong 2026-10-13 (naubos ang quota ng API mula 14 hanggang 18/10), at ang TikTok/Instagram naman mula 2026-09-02 (walang credit para sa pangongolekta); 76 na video ang wala pa ring bilang ng panonood.
> 🎬 **Gumawa ka ba ng video tungkol sa OmniRoute?** Magbukas ng [issue](https://github.com/diegosouzapw/OmniRoute/issues/new) o [discussion](https://github.com/diegosouzapw/OmniRoute/discussions) na may kasamang link — itatampok namin ito rito.
# 📧 Komunidad at Tulong
> Lahat ay nasa iisang lugar — sundan ang maintainer, makipag-chat sa komunidad, o magbukas ng issue.
| Channel | Saan / paano |
| ------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| 💼 **LinkedIn** — sundan ang maintainer | [linkedin.com/in/diegosouzapw](https://www.linkedin.com/in/diegosouzapw/) |
| 🐙 **GitHub** — sundan para sa mga release at tip | [@diegosouzapw](https://github.com/diegosouzapw) |
| 💬 **Discord** | [discord.gg/U47eFqAXCn](https://discord.gg/U47eFqAXCn) |
| ✈️ **Telegram** | [t.me/omnirouteOficial](https://t.me/omnirouteOficial) |
| 🟢 **WhatsApp — 🌍 Pandaigdigan** | [sumali sa grupo](https://chat.whatsapp.com/FvuCbrpZmQ6I85n2vW5QIC?s=cl&p=a&mlu=4) |
| 🟢 **WhatsApp — 🇧🇷 Brazil** | [sumali sa grupo](https://chat.whatsapp.com/KWgatljAjmbELQory59Oti?s=cl&p=a&mlu=4) |
| 🌍 **Website** | [omniroute.online](https://omniroute.online) |
| 🌍 **🌍Komunidad ng StHub OmniRoute (libre)** | [portal ng StHub](https://portal.sthub.com.br/communities/groups/st-hub/channels/Omniroute-World-8kRjmK) |
| 📦 **Source code** | [github.com/diegosouzapw/OmniRoute](https://github.com/diegosouzapw/OmniRoute) |
| 🐛 **Mag-ulat ng bug** | [magbukas ng issue](https://github.com/diegosouzapw/OmniRoute/issues) — ilakip ang output ng `npm run system-info` |
| 🤝 **Mag-ambag** | [CONTRIBUTING.md](CONTRIBUTING.md) · [Modelo ng Branching at Release](docs/ops/BRANCHING_MODEL.md) · pumili ng `good first issue` |
| 💚 **Suportahan ang proyekto** | [Mga paraan upang sumuporta ↑](#-support-omniroute) · [GitHub Sponsors](https://github.com/sponsors/diegosouzapw) |
Diskarte sa test coverage para sa mahigit 60,000 static test declaration sa mahigit 8,400 sinusubaybayang test file
# ⭐ Mga Nangungunang Contributor
> Ang OmniRoute ay hinuhubog ng isang masigasig na open-source na komunidad. Ang mga indibidwal na ito ay gumawa ng pambihirang mga ambag na direktang nakaaapekto sa kalidad, katatagan, at saklaw ng proyekto. **Salamat.**
### Mga external contributor ayon sa mga na-merge na pull request
Isinagawa ang census noong 2026-11-03 03:01:19 UTC gamit ang live na tip ng release/v3.8.53 na 05bc048d6c. Naglalaman ang naka-pahinang GitHub GraphQL census ng 9,947 na na-merge na PR: 4,130 mula sa may-ari ng repositoryo, 240 mula sa Dependabot, 6 mula sa iba pang bot/app, at 5,571 external PR mula sa 883 natatanging contributor. Ang “Mga nabagong linya” ay mga addition + deletion ng GitHub at kabilang ang mga generated file, lockfile, catalog, pagsasalin at dokumentasyon; ito ay churn, hindi LOC na isinulat ng mga author. 53 PR ang nag-uulat ng mga GitHub diff na higit sa 500,000 linya (halimbawa, ang #13399, isang dagdag na provider, ay naglilista ng 2,347 nabagong file), na nagpapalaki sa ilan sa mga kabuuan sa itaas. Pinagsasama ang pagraranggo sa mga tabla.
### Mga commit na iniugnay ng GitHub
Muling sinuri noong 2026-11-03 02:09:16 UTC: mga commit na iniugnay sa GitHub na iniulat ng Contributors API ng repository para sa default branch na release/v3.8.53. Nagbalik ang API ng 903 identidad (429 user, 2 bot, 472 anonymous); hindi kasama sa talahang ito ang maintainer, mga bot, at mga anonymous na identidad, at pinanatili ang mga tabla sa kompetisyon. Naiiba ito sa parehong ranking ng mga na-merge na PR sa itaas at census ng Git metadata sa ibaba.
> 🙏 Ang mga feature, pag-aayos ng bug, at pagpapahusay sa imprastraktura ng mga contributor na ito ay **pangunahing bahagi** ng dahilan kung bakit maaasahan at mayaman sa feature ang OmniRoute. Mahalaga ang bawat pull request, bawat test case, at bawat i18n translation file. Ang open source ay binubuo ng mga taong tulad nila.
---
## 💖 Mga Sponsor
Taos-pusong pasasalamat sa mga taong nagpopondo sa OmniRoute mula sa sarili nilang bulsa — ang bawat ambag ay tumutulong upang manatiling libre, independiyente, at patuloy na umuunlad ang proyekto.
… at sa iba pang mas gustong manatiling pribado 💛Muling napatunayan ang mga pampublikong GitHub Sponsor noong 2026-10-18 sa pamamagitan ng GitHub Sponsors GraphQL API: 11 pampublikong sponsorship (6 na aktibo, 5 ang nakaraan) mula sa kabuuang 14. Ang status na isActive ng GitHub ang batayan ng mga aktibong label sa itaas; patuloy na pinasasalamatan ang mga dating pampublikong minsanang tagasuporta, at nananatiling hindi pinapangalanan ang mga pribadong sponsor. Hindi nakalista ang mga donasyon sa Ko-fi, Buy Me a Coffee, Liberapay, PIX, at crypto dahil wala silang pampublikong rekord ng sponsor.💖 Maging sponsor → — bawat dolyar ay tumutulong upang manatiling libre at independiyente ang OmniRoute.
## 👥 1,000+ Contributor
[](https://github.com/diegosouzapw/OmniRoute/graphs/contributors)
Sinuri noong 2026-11-02 sa live na release/v3.8.53 tip 1c7135e0fb (7,972 commit): 1,074 na na-normalize na human Git identity — 759 ang lumilitaw bilang mga commit author (kasama ang maintainer) at 315 lamang sa mga tahasang Co-authored-by trailer. Inilalapat ng census ang .mailmap, inihahambing ang mga e-mail address nang hindi isinasaalang-alang ang laki ng titik, pinagsasama ang numeric at plain na GitHub noreply address lamang kapag pareho ang handle na ine-encode ng mga ito, inaalis ang 29 bot/agent/service/placeholder identity, at hindi pinagsasama ang karaniwang mga e-mail address dahil lamang magkapareho ang display name ng mga ito. Ang audit noong 2026-08-24 ay naglathala ng 639; nang muling patakbuhin ang paraang ito sa base nitong audit na ac02c5b42f, 619 ang lumabas, kaya nagmula ang pagtaas sa mga bagong contributor, hindi sa mas maluwag na pamamaraan.
### Paano Mag-ambag
1. I-fork ang repository
2. Gumawa ng branch mula sa **aktibong** `release/vX.Y.Z` tip (hindi `main`) — tingnan ang [Modelo ng Branching at Release](docs/ops/BRANCHING_MODEL.md)
3. Gawin ang iyong feature branch (`git checkout -b feat/amazing-feature`)
4. I-commit ang iyong mga pagbabago (`git commit -m 'feat: add amazing feature'`)
5. I-push sa branch (`git push origin feat/amazing-feature`)
6. Magbukas ng Pull Request na may **base = ang `release/vX.Y.Z` branch na iyon**
Tingnan ang [CONTRIBUTING.md](CONTRIBUTING.md) para sa mga detalyadong gabay.
### Pag-release ng Bagong Bersyon
```bash
# Gumawa ng release — awtomatikong isinasagawa ang npm publish
VERSION=x.y.z
gh release create "v${VERSION}" --title "v${VERSION}" --generate-notes
```
## 📊 Mga Star
## 🌍 StarMapper
## 🙏 Mga Pagkilala
Ang OmniRoute ay nakatayo sa mga balikat ng mga higante. Nagsimula ito bilang fork ng **[9router](https://github.com/decolua/9router)** at isang TypeScript port ng Go project na **[CLIProxyAPI](https://github.com/router-for-me/CLIProxyAPI)** — at mula roon, ang bawat subsystem sa ibaba ay hinango ang inspirasyon mula sa isang open-source project na naunang gumawa nito. Bawat isa ay humubog sa isang kongkretong bahagi ng OmniRoute. Ito ang aming pasasalamat sa kanilang lahat. 🙏
> ⭐ na-verify ang bilang ng mga star mula sa REST API ng GitHub noong Nobyembre 3, 2026 — bigyan ninyo ng star ang mga project na ito. Eksaktong snapshot ayon sa petsa ang mga bilang at natural na magbabago sa paglipas ng panahon.
### 🧬 Pinagmulan at gateway
Ang AI gateway na nagbibigay ng pampublikong dataset ng pagpepresyo para sa aming cost-tracking sync at ang modelo nito sa pag-normalize ng provider ang nagbigay-kaalaman sa aming routing.
Inangkop ang MIT source sa naka-vendor na ChatGPT Web → Codex Responses bridge, kabilang ang mga adapter para sa browser session, pag-frame ng response, paggamit at web search.
Inilipat ang mga pattern nito sa stream recovery, mga no-thinking alias, fallback web search, mga limitasyong sliding-window, pag-redact ng log at mga pinatibay na launcher flow.
Ang mga mapping nito para sa Grok model, fake-TypeError Statsig generator, mga default para sa request at device, at NDJSON response processor ay mahalagang inangkop sa Grok Web executor ng OmniRoute.
Ang pangunahing transitive code source sa likod ng grok2api-merged; pinananatili sa Grok Web lineage ang mga implementasyon nito para sa model, header, payload, Statsig at processor.
Ang pinagbabatayang MIT source para sa mga default ng Grok payload at device, ng Statsig generator, at ng result.response processor na ipinasa sa TQZHR at grok2api-merged.
Isang transitive source na kinilala ng grok2api-merged para sa proxy-pool layer nito; pinananatili ng OmniRoute ang paunawang ito tungkol sa lineage ngunit hindi inaangkin ang pag-port ng proxy-pool sa bounded Grok Web executor nito.
Sinangguni ang HTTP/browser upstream design nito para sa orihinal na implementasyon ng Grok Web; nagmula sa GrokProxy ang direct HTTP path nito, kaya walang inaangking hiwalay na code port.
### 🗜️ Compression ng konteksto at token — mga engine
Ang viral na proyektong “why use many token when few token do trick” — ang pilosopiya nitong caveman-speak ang nagpapatakbo sa aming standard compression mode at higit 30 panuntunan para sa filler at condensation.
High-performance compression ng command output — naging inspirasyon para sa aming RTK engine, JSON filter DSL, raw-output recovery at stacked na RTK → Caveman pipeline.
Token compression para sa PT-BR — nagpapatakbo sa aming pt-BR language pack: pagbabawas ng pleonasm at pagtanggal ng filler na iniangkop sa gramatika ng Brazilian-Portuguese.
Ang viral na kasanayan ng “lazy senior dev” na YAGNI-coder — naging inspirasyon para sa aming less-code Output Style: pag-gabay sa pinakamaliit na gumaganang pagbabago na nagbabawas sa _generated_ code (ang output-axis na katapat ng maigsi at tuwirang prose ng Caveman).
Rust columnar-JSON + content-addressed retrieve + cross-message dedup — nagpatunay sa disenyo ng aming headroom/ccr/session-dedup engine at sa cache-stable na invariant na “ang compressed form ay hindi nakadepende sa posisyon.”
TypeScript Compiler API toolkit — naging inspirasyon para sa aming parser-based na pagtanggal ng komento na nagpapanatili sa string, template at regex literal.
Ang MITM interception/analysis ng trapiko sa pagitan ng coding-assistant at LLM ang nagbigay-kaalaman sa mga unang requirement ng Traffic Inspector. Ang apat na dating derived module — pagsasama ng SSE, normalization ng conversation, pagtatago ng secret at sanitization ng header — ay pinalitan ng mga independiyenteng clean-room implementation batay sa mga pampublikong protocol standard. Ang dalawang host-passthrough surface (passthrough.ts at _internal/bypass.cjs) ay nananatiling mga implementation na panloob sa OmniRoute at hiwalay na inuri; hindi muling isinulat ang mga ito bilang bahagi ng pagpapalit na iyon.
Transparent per-process proxy routing — nagbigay-inspirasyon sa aming crash-safe na MITM teardown, socket idle-timeout, attribution ng proseso gamit ang /proc at TPROXY capture.
Isang piniling listahan ng mga library na secure-by-default na gumagabay sa aming mga pagpili sa seguridad (Helmet.js, DOMPurify, ssrf-req-filter, safe-regex, Google Tink).
Nagbigay-inspirasyon sa deduplication ng request, emergency zero-cost fallback, mga pluggable na Auto-Combo strategy at multilingual intent classification.
Ang account-aware nitong model remapping, validation ng executable path at behavior ng plan label ang nagbigay-kaalaman sa Antigravity runtime ng OmniRoute.
Tinukoy nito ang quota surface ng Grok Build; pagkatapos ay independiyenteng bineripika at itinama ng OmniRoute ang live wire format.
## 📄 Lisensya
Lisensya ng MIT - tingnan ang [LICENSE](LICENSE) para sa mga detalye.
---
**[⬆ Bumalik sa itaas](#-omniroute)** · Binuo nang may ❤️ para sa open-source na komunidad ng AI.
Ginawa ni Diego Souza · OmniRoute v3.8.54 · Node ≥22.22.2 · Lisensya ng MIT · omniroute.online