> **Mú àwọn àkọọ́lẹ̀ olupèsè tirẹ wá.** Èyí jẹ́ àpapọ̀ ìṣírò láti inú àwọn ìpele ọ̀fẹ́ ẹgbẹ́ kẹta tí ọ̀kọ̀ọ̀kan ní àǹfààní tirẹ̀, kì í ṣe ẹ̀bùn tókìn láti OmniRoute. Forúkọsílẹ̀, gba àwọn ẹ̀rí ìwọlé níbi tí wọ́n bá ti nílò rẹ̀, kí o sì so àwọn olupèsè tí o lè lò pọ̀; olupèsè kọ̀ọ̀kan ló ń ṣàkóso àwọn ààlà, wíwà-lárọ̀ọ́wọ́tó, àti àwọn òfin tirẹ̀.
>
> Ṣíṣàkójọpọ̀ àwọn ìpele ọ̀fẹ́ pẹ̀lú ọwọ́ ńira — ọ̀pọ̀lọpọ̀ SDK, ọ̀pọ̀lọpọ̀ ààlà ìbéèrè, tí o kò sì mọ iye tí o ní gan-an. OmniRoute ṣàkójọ **àwọn àkọsílẹ̀ ìpele ọ̀fẹ́ 485 kọjá àwọn kọ́kọ́rọ́ adágún àsìkò-méjì 35** ó sì ń ṣírò àkòrí tókìn náà láti inú **àwọn adágún 17 tí wọ́n ní ìnáwó oṣooṣù rere tí a ti tẹ̀ jáde pẹ̀lú àwọn ààlà Groq márùn-ún fún awoṣe kọ̀ọ̀kan**, nípa yíyọ àwọn àdáwòkọ kúrò gẹ́gẹ́ bí adágún tí wọ́n pín. Àwọn ìpín tí wọ́n máa ń ṣí lẹ́yìn ìjẹ́rìísí ìdánimọ̀ agbègbè nìkan (lónìí: ModelScope) ni a fi hàn lọ́tọ̀, +~6M lẹ́yìn ìjẹ́rìísí ìdánimọ̀ agbègbè, a kò sì ka wọ́n pọ̀ mọ́ àkòrí náà láé. Àbájáde náà ṣì máa ń hàn lórí pánẹ́ẹ̀lì (`/dashboard/free-tiers`).
> Àkótán aláwòrán tí ń rìn ti ojú-ìwé `/dashboard/free-tiers` lọ́wọ́lọ́wọ́. Ọ̀nà ìṣirò kíkún (yíyọ àdáwòkọ adágún, àwọn ìpele kírẹ́díìtì, àwọn òfin olupèsè): **[docs/reference/FREE_TIERS.md](docs/reference/FREE_TIERS.md)**.
>
> A tún ń ṣàyẹ̀wò àwọn iye wọ̀nyí ní gbogbo ọ̀sẹ̀ méjì ní ìfiwéra pẹ̀lú àkójọ lọ́wọ́lọ́wọ́, wọ́n sì **lè lọ sí ìhà méjèèjì** — bí olupèsè kan bá fòpin sí ìpele ọ̀fẹ́, iye náà á dínkù; bí tuntun kan bá dé, á pọ̀ sí i. Ohun tí àkójọ náà ṣírò gan-an ni a ń tẹ̀ jáde, kì í ṣe àbájáde tó dára jù lọ tí a gbé sókè sí odidi.
⭐ Fi ìràwọ̀ sí repo náà bí OMNIROUTE bá ti ràn ọ́ lọ́wọ́ láti fi owó pamọ́ àti láti mú iṣẹ́ rẹ rọrùn sí i.
[](https://github.com/diegosouzapw/OmniRoute)
[](https://www.star-history.com/diegosouzapw/omniroute)
[](https://olud.ai/project/diegosouzapw-omniroute.html)
### 💬 Darapọ̀ mọ́ àwùjọ náà
**👋 Tẹ̀lé olùtọ́jú náà — jẹ́ ẹni àkọ́kọ́ láti gba àwọn olupèsè tuntun, àwọn ìtújáde àti àwọn ìmọ̀ràn:**
[](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)
**Àwọn ìbéèrè, ìmọ̀ràn nípa olupèsè, ètò-ọ̀nà àti àtìlẹ́yìn → [Discord](https://discord.gg/U47eFqAXCn) · [Telegram](https://t.me/omnirouteOficial) · WhatsApp [🌍 Àgbáyé](https://chat.whatsapp.com/FvuCbrpZmQ6I85n2vW5QIC?s=cl&p=a&mlu=4) / [🇧🇷 Brasil](https://chat.whatsapp.com/KWgatljAjmbELQory59Oti?s=cl&p=a&mlu=4) / [Pọ́ọ̀tálì](https://portal.sthub.com.br/communities/groups/st-hub/channels/Omniroute-World-8kRjmK)**
## 📈 Ẹnu-ọ̀nà Náà Ń Bá A Lọ Ní Dídàgbà
## 🆓 Fi sílẹ̀, so olùpèsè kan pọ̀, lẹ́yìn náà darí ìrìnṣẹ́ kọjá ojú-ọ̀nà ìwọlé kan ṣoṣo
```bash
# Lẹ́yìn tí o bá so olùpèsè kan pọ̀, ṣe àdàkọ kọ́kọ́rọ́ OmniRoute rẹ láti Dashboard → Endpoints:
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!"}]}'
```
`auto` nílò ipa-ọ̀nà tó yẹ. Fífìsílẹ̀ tuntun lè má ní ibùdó-afẹ́ tó yẹ tí kò nílò kọ́kọ́rọ́, olùpèsè tí kò nílò kọ́kọ́rọ́ sì lè kọ àwọn oníbàárà ẹni-kẹta. Àwọn olùpèsè tí a sàmì sí `tos: avoid`, tó fi mọ́ OpenCode Free àti Kiro, ni a yọ kúrò nínú ìdarí aládàáṣiṣẹ́ nípasẹ̀ àtòjọ àkọ́kọ́; sísopọ̀ àkọọ́lẹ̀ kan kò ní yí ààtò yẹn padà. Wo [Ìtọ́sọ́nà Àwọn Ìpele Ọ̀fẹ́](docs/getting-started/FREE-TIERS-GUIDE.md) kí o tó yan olùpèsè kan.📦 Àwọn skripti ìbẹ̀rẹ̀-kíákíá tí o lè ṣe àdàkọ-kí-o-sì-lẹ̀ mọ́lẹ̀ fún **Python, Node.js, PHP, àti cURL** → [`examples/quickstart/`](examples/quickstart/)
# 💥 Ìlérí Náà
# 🤔 Kí Nìdí OmniRoute?
## 🤝 Atilẹyin lati ọdọ Awọn Ọrẹ Orisun Ṣiṣi Wa
> **Ṣe o fẹ darapọ mọ bi Ọrẹ Orisun Ṣiṣi?** Iwọnyi ni awọn ile-iṣẹ ti o ṣe atilẹyin orisun ṣiṣi ati ṣe iranlọwọ lati jẹ ki OmniRoute n lọ — ati pe a sọ ni gbangba ibi ti gbogbo ami ti wọn fun wa ti lọ. Kan si wa: [diegosouza.pw@outlook.com](mailto:diegosouza.pw@outlook.com)
Kimi Moonshot AI
O ṣeun si Kimi (Moonshot AI), Ọrẹ Orisun Ṣiṣi oludasile wa, fun atilẹyin iṣẹ akanṣe yii! Kimi jẹ yàrá AI lẹhin awọn idile awoṣe K2 ati K3 ti o ni iwuwo ṣiṣi — Kimi K3 n pese window ipo 1M-token, iran abinibi ati koodu ipele aala ni ida kan ti awọn idiyele awoṣe pipade, ati pe o ṣiṣẹ ni ita apoti pẹlu Claude Code, Codex ati gbogbo ohun elo koodu ti OmniRoute n pese.
Kini atilẹyin Kimi n fun agbara: Awọn kirediti API Kimi n fun agbara opo gigun ti ifasilẹ ti OmniRoute ti AI-fọwọsi — ipele ijẹrisi iṣọkan ti o ni agbara nipasẹ Kimi K3 ti o ṣe atunyẹwo gbogbo ibeere ifamọra ṣaaju ki o to firanṣẹ — pẹlu idagbasoke ẹya ojoojumọ. Atilẹyin Kimi kilasi akọkọ n firanṣẹ lori awọn oju-irin mejeeji: taara Kimi API (kimi-k3) ati eto koodu Kimi Code (OAuth ati bọtini API). OmniRoute tun jẹ iṣẹ akanṣe orisun ṣiṣi akọkọ ti Brazil ninu eto atilẹyin Kimi. Gba bọtini API Kimi pẹlu 15% awọn kirediti afikun →
Inference ti o din owo cheaperinference.com
O ṣeun si Inference ti o din owo, Ọrẹ Orisun Ṣiṣi OmniRoute, fun atilẹyin iṣẹ akanṣe yii! Inference ti o din owo jẹ ẹnu-ọna ti o ni idiyele idiyele ti o tun ta awọn awoṣe aala 42 — Claude, GPT-5.x, Gemini, Kimi K3, GLM, DeepSeek, Grok ati MiniMax — lẹhin ipari-ojuami kan ti o ni ibamu pẹlu OpenAI, ti n ṣe ipa-ọna gbogbo ibeere si olupese ti o yẹ ti o din owo julọ laisi gbigba agbara ju idiyele atokọ ti olupilẹṣẹ awoṣe lọ.
Atilẹyin kilasi akọkọ ni OmniRoute: Awọn ipari iwiregbe, ipari-ojuami abinibi /v1/responses, iran, ipe ohun elo ati awọn awoṣe aworan 3 (grok-imagine, nano-banana-pro, nano-banana-2, ti o le de ọdọ bi cheaperinference/<model>). Gba bọtini API →
Awọn ọna asopọ ti a fi aami si aff=omniroute jẹ awọn ọna asopọ alabaṣepọ. Wọn ṣe inawo iṣẹ akanṣe laisi idiyele afikun si ọ. 🎟️ Ipolowo Awọn alafaramo — awọn kuponu iforukọsilẹ ọfẹ lati ọdọ awọn olupese ti a ko ṣe onigbọwọ (tẹ lati faagun)Abala yii jẹ fun awọn koodu itọkasi/kuponu nikan. Awọn ajọṣepọ onigbọwọ wa ni 🤝 Atilẹyin lati ọdọ Awọn Ọrẹ Orisun Ṣiṣi Wa loke. OmniRoute ko ni onigbọwọ tabi ajọṣepọ pẹlu awọn olupese ti a ṣe akojọ si nibi — iwọnyi jẹ awọn kuponu gbangba ti ẹnikẹni le lo.
AgentRouter agentrouter.org
AgentRouter — iforukọsilẹ alafaramo · $100 awọn kirediti ọfẹ lori iforukọsilẹ (olupin ọfẹ, nireti idaduro ti o ga julọ — o dara julọ fun idanwo, kii ṣe iṣelọpọ). Atilẹyin kilasi akọkọ ni OmniRoute lati v3.8.50: Awọn ipari iwiregbe, ọna kika okun ti o ni ibamu pẹlu Anthropic ati ọna ti o ni ibamu pẹlu OpenAI. Awọn awoṣe ti o wa pẹlu claude-opus-4-8, claude-opus-5, gpt-5.6-sol ati diẹ sii. Gba $100 rẹ →
⚠️ Ọna asopọ alafaramo — OmniRoute ko ni onigbọwọ tabi ajọṣepọ pẹlu olupese yii.
Ṣe o mọ olupese miiran pẹlu kuponu iforukọsilẹ ọfẹ ti o ni inurere ti o ṣe anfani awọn olumulo OmniRoute? Ṣii ọran kan ati pe a yoo fi kun nibi.
## 🎯 Àwọn Combo — Àkọ́kọ́ Pátápátá
> **Combo** jẹ́ ẹ̀wọ̀n àwọn model tí OmniRoute ń darí kọjá láàárín wọn **láìfọwọ́ṣe**. Bí quota bá tán, provider kan kùnà, tàbí iye owó bá ga lójijì, combo lè lọ sí model tó péye, tó sì ní ìlera tí ó tẹ̀lé. 🛡️
### ⚡ Kò nílò àtòpọ̀ — kan lo `auto`
Kò sí combo kankan láti ṣẹ̀dá. Ṣètò model rẹ sí `auto` (tàbí ọ̀kan lára àwọn ẹ̀yà rẹ̀), OmniRoute yóò sì kọ́ combo aláfojúṣe kan láti inú àwọn provider tí o ti sopọ̀, pẹ̀lú ìṣirò ààyè gidi:
🔭 Dídára lákọ̀ọ́kọ́ + ìṣàwárí 10% láti rí àwọn model tó dára jù
auto/lkgp
📌 Dídúró mọ́ provider rere tí a mọ̀ kẹ́yìn ní tààrà
auto/chaos
🧪 Pípín ìbéèrè lọ ní ìṣọ̀kan sí àkójọpọ̀ àwọn model (ọ̀kan fún provider kọ̀ọ̀kan, 5 ní àìyípadà), ó sì dá ìdáhùn kan padà; ìpè upstream kan fún model kọ̀ọ̀kan nínú àkójọpọ̀, kì í ṣe fífi àṣìṣe sínú ètò
##
### 🔀 Tàbí kọ tirẹ — àwọn ọgbọ́n ìdarí 19
Gbogbo ọgbọ́n **19** — dapọ̀ wọn bí o ṣe fẹ́ fún ìgbésẹ̀ combo kọ̀ọ̀kan:
#
Ọgbọ́n
Ohun tí ó ń ṣe
1
priority
Àtòjọ tí target àkọ́kọ́ ń ṣáájú — lo ọ̀kọ̀ọ̀kan tán kí o tó lọ sí èyí tó tẹ̀lé 🥇
2
fill-first
Lo quota target kọ̀ọ̀kan dé ẹ̀kúnrẹ́rẹ́ kí o tó tẹ̀síwájú
3
weighted
Yíyan láìlẹ́sẹ̀-n-lẹ̀ gẹ́gẹ́ bí ìwọ̀n target kọ̀ọ̀kan
4
round-robin
Yípo láàárín àwọn target ní ìtòlẹ́sẹẹsẹ
5
p2c
Pínpín ẹrù láìlẹ́sẹ̀-n-lẹ̀ pẹ̀lú agbára yíyan méjì
6
least-used
Yan target tó ní ẹrù lọ́wọ́lọ́wọ́ tó kéré jù
7
random
Yíyan láìlẹ́sẹ̀-n-lẹ̀ tó dọ́gba (pẹ̀lú yiyọ àwọn àtúnṣe kúrò)
8
strict-random
Yíyan láìlẹ́sẹ̀-n-lẹ̀ láìyọ àwọn àtúnṣe kúrò 🎲
9
cost-optimized
Dín $ fún ìbéèrè kọ̀ọ̀kan kù ní lílo iye owó àkójọ ọjà ààyè gidi 💸
10
headroom
Yan target tó ní quota tó pọ̀ jù lọ tó kù
11
reset-window
Fi target tí fèrèsé quota rẹ̀ máa tún bẹ̀rẹ̀ láìpẹ́ jù ṣáájú
12
reset-aware
Ṣètò gẹ́gẹ́ bí àkókò ìtúnrẹ̀ quota — àwọn fèrèsé kúkúrú lákọ̀ọ́kọ́ 📊
13
context-relay
Fi context lé àwọn target lọ́wọ́ láti ọ̀kan sí òmíràn fún ìjíròrò gígùn 🧠
14
context-optimized
Yan èyí tó bá ìwọ̀n context lọ́wọ́lọ́wọ́ mu jù
15
cache-optimized
Di ìbẹ̀rẹ̀ prompt kọ̀ọ̀kan tí a lè tún lò mọ́ account kan náà — mú kí lílu prompt-cache pọ̀ sí i 🎯
16
lkgp
Ọ̀nà Rere Tí A Mọ̀ Kẹ́yìn — di mọ́ provider tó ṣàṣeyọrí kẹ́yìn, lẹ́yìn náà ó padà sí àwọn òfin bí ó bá kùnà
17
auto
Ìṣirò ààyè gidi onípòkùnlé mẹ́rìndínlógún lórí gbogbo connection 🤖
18
fusion
Pín ìbéèrè sí àkójọpọ̀ àwọn model + adájọ́ kan ṣàkójọpọ̀ ìdáhùn kan 🧬
19
pipeline
So àwọn ìgbésẹ̀ pọ̀ — àbájáde target kọ̀ọ̀kan ń wọ èyí tó tẹ̀lé 🔗
Ẹ́ńjìnnì Auto-Combo ń ṣe ìṣirò olùdíje kọ̀ọ̀kan lórí **okùnfà 16** (ìlera, quota, iye owó, àkókò ìdádúró, ìbámu pẹ̀lú iṣẹ́, dídára, wíwà session…) — wo [`docs/routing/AUTO-COMBO.md`](docs/routing/AUTO-COMBO.md).
##
### 🧱 A ti kọ́ agbára ìfaradà sínú rẹ̀ (ìpele olómìnira 3)
📖 [Ẹ̀rọ Auto-Combo](docs/routing/AUTO-COMBO.md) · [Ìtọ́sọ́nà Ìfaradà](docs/architecture/RESILIENCE_GUIDE.md)
## 🏆 Ohun Tó Jẹ́ Kí OmniRoute Yàtọ̀
📊 Ìlànà ìṣètò kíkún & àlàyé ẹ̀ya kọ̀ọ̀kan ní ìfiwéra pẹ̀lú 9router, OpenRouter, CLIProxyAPI & LiteLLM → [`docs/comparison/OMNIROUTE_VS_ALTERNATIVES.md`](docs/comparison/OMNIROUTE_VS_ALTERNATIVES.md)
## 💚 Ṣe Àtìlẹ́yìn fún OmniRoute
OmniRoute ní ìwé-àṣẹ MIT, a sì ń tọ́jú rẹ̀ ní gbangba. Bí ó bá ń fi àkókò tàbí owó rẹ pamọ́, àwọn ọ̀nà tí o lè gbà jẹ́ kí ó wà ní òmìnira nìyí — yan èyíkéyìí tó bá ọ mu. Ìgbọ́wọ́ kò ní ipa lórí ààyò ìdarí láéláé; ó ń ra ìfarahàn, kì í ṣe ipò.
**🇧🇷 PIX** — lẹ́sẹ̀kẹsẹ̀, kò sí owó iṣẹ́ (Brazil)
Kọ́kọ́rọ́ (àìròtẹ́lẹ̀): `5d865059-bc44-483a-962d-43ceb80126eb`
Da Pix kọ, kí o sì lẹ̀ ẹ́ mọ́:
```
00020101021126580014br.gov.bcb.pix01365d865059-bc44-483a-962d-43ceb80126eb5204000053039865802BR5922OMNIROUTE CONTRIBUICAO6006BRASIL62070503***630475DD
```
₿ Crypto — BTC · ETH · USDT-TRC20 · USDC-Solana (tẹ̀ láti ṣí i)
₿ BTC
Bitcoin (SegWit)
bc1qh00smz004sy85wyl28v77tenkt3ckl6eaep7fd
Ξ ETH
Ethereum (ERC20)
0x64Cf6B68A6Ff34288e89172950a2d00102337a84
₮ USDT
Tron (TRC20)
TKAF41JpuQrHbKTnsQa9svJE2T192Hvsc2
$ USDC
Solana
2emNNZzVVWQc3FQ2wk9M6qXUQmW8AKdjjL174fXR28Tu
⚠️ Fi owó kọ̀ọ̀kan ránṣẹ́ lórí network tí a fihàn nìkan — fífi ránṣẹ́ lórí network tí kò tọ́ lè mú kí owó náà sọnù.
🐛 Ṣé o rí àṣìṣe kan tàbí o ní èsì? Ṣí [Ìjíròrò](https://github.com/diegosouzapw/OmniRoute/discussions) kan.
Àwọn àkọsílẹ̀ fún olùgbéejáde: Project náà lè ṣẹ̀dá fáìlì .env agbègbè kan nígbà npm install/postinstall láti mú iṣẹ́ rọrùn fún olùgbéejáde. A mọ̀ọ́mọ̀ foju fáìlì yìí kọjá nípasẹ̀ .gitignore (wo .gitignore), a kò sì gbọ́dọ̀ commit rẹ̀ láéláé — bí a bá commit rẹ̀ láìròtẹ́lẹ̀, yí gbogbo secrets tó fara hàn padà, kí o sì yọ fáìlì náà kúrò nínú ìtàn. Wo docs/DEVELOPER-ENVIRONMENT.md fún ìtọ́sọ́nà lórí bí a ṣe ń ṣàkóso àwọn fáìlì environment agbègbè àti secrets.
## 📡 Radar OmniRoute
Àkọlé pàtàkì fún ìpele ọ̀fẹ́ ṣì jẹ́ **~1.62B àmì/oṣù** láti inú àkójọ tí a ṣàkọsílẹ̀ rẹ̀ lókè,
tí a sì ti yọ àwọn ohun tó tún ara wọn ṣe nínú àkójọpọ̀ kúrò. Àwọn kirẹditi ìforúkọsílẹ̀ olùpèsè fún ìgbà díẹ̀ lè mú
oṣù àkọ́kọ́ ga sí **~2.22B** lọ́tọ̀. Radar jẹ́ àfikún àkójọ tí a fọwọ́sí, tí lílò rẹ̀ sì jẹ́ àṣàyàn, fún àwọn tó fẹ́
ìsọfúnni tuntun sí i nípa wíwà àwọn àwòṣe ọ̀fẹ́ láàárín àwọn ìtújáde OmniRoute; àkójọ àwùjọ àti gbogbo àwọn ẹ̀yà ọ̀fẹ́
tó ti wà tẹ́lẹ̀ ṣì jẹ́ ọ̀fẹ́.
Àwọn alátìlẹ́yìn lè gba àkójọ àkókò-gidi àti àwọn àǹfààní olùpèsè míì. Òkè ààlà rẹ̀ tó jẹ́ ọ̀tọ̀,
tí ó sì lè yí padà, jẹ́ **ìwọ̀n 3B àmì/oṣù ní ó pọ̀ jù**, ó da lórí wíwà àwọn olùpèsè.
Òkè ààlà yẹn kì í ṣe ìlérí: àwọn olùpèsè lè yí ìwọ̀n lílò, ìbéèrè yíyẹ, àwọn àwòṣe, tàbí àwọn ẹkùn padà
nígbàkigbà.
Lílò Radar jẹ́ àṣàyàn, GET nìkan sì ni ó ń lò. Oníbàárà OmniRoute kì í ṣe ìrùsókè àwọn àṣẹ, ìṣàn ìbéèrè, ààtò olùpèsè,
tẹlifíṣọ̀nù lílò, tàbí ipò ìkọ̀sílẹ̀ ìkéde abẹ́lẹ̀. Kọ́ sí i nípa ìbéèrè yíyẹ àti
àkójọ lọ́wọ́lọ́wọ́ ní **[radar.omniroute.online/planos](https://radar.omniroute.online/planos)**.
## ✨ Kí Ló Tún Wà
> Àwọn ohun pàtàkì tuntun láti **v3.8.20 → v3.8.50**. Ìtàn kíkún wà nínú [`CHANGELOG.md`](CHANGELOG.md).
- **🎛️ OmniConductor** — ìfiranṣẹ iṣẹ́ A2A tó ń wọlé sí ẹgbẹ́ àwọn aṣojú rẹ, àwọn ọgbọ́n Conductor lórí Agent Card, àti pánẹ́ẹ̀lì dashboard kan pẹ̀lú ìfọ̀rọ̀wérọ̀ ohùn Faro push-to-talk. → [Sẹ́fà A2A](docs/frameworks/A2A-SERVER.md)
- **🛂 Ìgbàwọlé tó ń mú ara mu àti ààbò kúrò lọ́wọ́ ìṣẹ́pọ̀jù** — àwọn ìbéèrè chat tó wuwo yóò dúró ní ìlà dípò kí wọ́n dá 503 padà, pẹ̀lú àwọn ìyálọ́wọ́ RPM yíyípo atomiki fún àsopọ̀ kọ̀ọ̀kan. → [Ìtọ́sọ́nà Ìfaradà](docs/architecture/RESILIENCE_GUIDE.md)
- **🗂️ Ìṣètò canonical `/v1/models`** — bulọ́ọ̀kù ọ̀tọ̀ọ̀tọ̀ kan tí a ṣètò nípa olupèsè fún olupèsè kọ̀ọ̀kan (àwọn combo ni a so síwájú), tó sì dúró ṣinṣin káàkiri gbogbo orísun catalog. → [Ìtọ́kasí API](docs/reference/API_REFERENCE.md)
- **🗜️ Fífi compression mú lágbára** — inflation guard tó máa ń ṣiṣẹ́ ní àìyẹsẹ̀, àwọn pack Caveman fún DE / FR / JA + Chinese (wényán), àti àwọn àlẹ̀mọ́ RTK fún Gradle & .NET. → [Compression](docs/compression/COMPRESSION_ENGINES.md)
- **💸 Iye owó flat-rate tó jẹ́ òtítọ́** — àwọn olupèsè subscription / coding-plan máa ń fi **$0** hàn nínú ìtúpalẹ̀ iye owó; budget, quota & routing ṣì ń ṣe ìṣírò àfojúsùn. → [Ìtọ́kasí API](docs/reference/API_REFERENCE.md)
- **⚖️ Routing Quota-Share** — pín quota àkọọ́lẹ̀ tí a ń lò pọ̀ ní ìdájọ́ òdodo láàárín àwọn key tó wà nínú pool, pẹ̀lú ìlò tó ń tẹ̀síwájú kí a lè yá àwọn ìpín tí kò ṣiṣẹ́ fún àwọn mìíràn. → [Ìtọ́sọ́nà Ìfaradà](docs/architecture/RESILIENCE_GUIDE.md)
- **🤖 Ìṣètò CLI/aṣojú pẹ̀lú command kan ṣoṣo** — àwọn command `setup-*` 13 tí a forúkọsílẹ̀; `omniroute run` ń ṣe ìfilọ́lẹ̀ àwọn CLI 7 (Claude Code, Codex, Aider, Goose, OpenCode, Qwen Code, Gemini CLI); `omniroute configure` ń ṣe àtìlẹ́yìn fún àwọn ibi-àfojúsùn 10 pẹ̀lú olùyan olupèsè+model alábáṣepọ̀ àti àwọn ààyò fún context kọ̀ọ̀kan. → [Àwọn Ìsopọ̀ CLI](docs/guides/CLI-INTEGRATIONS.md)
- **🛰️ Ipo jíjìnnà** — ṣàkóso OmniRoute tó wà ní jíjìnnà pẹ̀lú àwọn token tí a fi scope sí (`connect` / `contexts` / `tokens`) + olùrànlọ́wọ́ OAuth `antigravity` fún ìfikún sórí VPS. → [Ipo Jíjìnnà](docs/guides/REMOTE-MODE.md)
- **🧭 Auto-routing tó túbọ̀ jáfáfá** — àwọn combo `auto/:`, **Fusion** (pánẹ́ẹ̀lì model + adájọ́), routing tó mọ irú iṣẹ́, àti àwọn àtúnṣe model / mode / USD-budget fún ìbéèrè kọ̀ọ̀kan. → [Auto-Combo](docs/routing/AUTO-COMBO.md)
- **🗜️ Compression tí a lè so mọ́ ọn** — àwọn engine 12 tí a lè ṣàkópọ̀ + Compression Studios: LLMLingua-2, Ultra alápele-méjì, omniglyph, ẹnu-ọ̀nà fidelity fún ìgbésẹ̀ kọ̀ọ̀kan, GCF v3.2, àti olootu drag-reorder. → [Compression](docs/compression/COMPRESSION_ENGINES.md)
- **🕵️ Ìtúpalẹ̀ MITM tó hàn gbangba (TPROXY)** — mú àwọn CLI tí kò ka àwọn proxy env vars mọ́, pẹ̀lú CA fún SNI kọ̀ọ̀kan + olùfikún trust-store. → [MITM/TPROXY](docs/security/MITM-TPROXY-DECRYPT.md)
- **💸 Telemetry iye owó níbi gbogbo** — àwọn header iye owó/ìlò `X-OmniRoute-*` lórí gbogbo endpoint, header ìfipamọ́ cache-HIT, àti àwọn quota ìnáwó USD fún key kọ̀ọ̀kan. → [Ìtọ́kasí API](docs/reference/API_REFERENCE.md)
- **🧠 Memory tí ìwọ ń ṣàkóso** — kò ṣiṣẹ́ ní àìyẹsẹ̀, int8 vector quantization tí o yan láti lò + typed decay, àti `x-omniroute-no-memory` fún ìbéèrè kọ̀ọ̀kan. → [Memory](docs/frameworks/MEMORY.md)
- **🛡️ Ààbò** — prompt-injection guard lórí gbogbo ipa-ọ̀nà LLM (red-team suite), credential-masking guardrail tí o yan láti lò (ó ń bo àwọn API key/àṣírí tó tú síta ní ọ̀nà méjèèjì), ìṣàwárí wẹ́ẹ̀bù DuckDuckGo ọ̀fẹ́ gẹ́gẹ́ bí ọ̀nà ìgbẹ̀yìn, àti ẹnu-ọ̀nà iwọlé OIDC àṣàyàn fún dashboard (ìwọlé pẹ̀lú password máa wà nígbà gbogbo). → [Àwọn Guardrail](docs/security/GUARDRAILS.md)
- **🖼️ Àwọn endpoint tuntun** — `/v1/ocr` (Mistral OCR) àti `/v1/audio/translations` (irú Whisper) ń mú àyè media náà pé. → [Ìtọ́kasí API](docs/reference/API_REFERENCE.md)
- **🎨 Ṣíṣẹ̀dá àwòrán / fídíò / ohùn** — API kan ṣoṣo fún media: xAI Grok Imagine & Novita AI video, ComfyUI, Magnific, Adobe Firefly, Segmind, àti àwọn olupèsè ọ̀rọ̀-ohùn bíi ElevenLabs. → [Ìtọ́kasí API](docs/reference/API_REFERENCE.md)
- **🌍 Deployment & ops** — reverse-proxy `basePath`, ìṣàwárí èdè browser láìfọwọ́yí, ìtọpa ẹrọ fún key kọ̀ọ̀kan, ìgbẹ́kẹ̀lé MITM láìsí root, àti ìṣètò èdè zh-TW. → [Environment](docs/reference/ENVIRONMENT.md)
- **🤝 Àwọn olupèsè & aṣojú púpọ̀ sí i** — àwọn aṣojú cloud (Codex Cloud, Cursor, Devin, Jules), Grok Build (xAI) pẹ̀lú browser + iwọlé OAuth, káàdì Ollama tó jẹ́ ọmọ ẹgbẹ́ kíkún, Claude Opus 5 & Sonnet 5, ìfọwọ́sowọ́pọ̀ àṣẹ Kimi (Code/Web/Moonshot), Zed, Requesty, SenseNova, Yuanbao, Agnes AI… àti **catalog olupèsè 372** tí a tún ṣe. → [Àwọn Olùpèsè](docs/reference/PROVIDER_REFERENCE.md)
- **📡 Ìfihàn routing ní kedere** — gbogbo ìdáhùn ní header `X-OmniRoute-Decision` tó ń sọ orúkọ strategy/olupèsè/latency tó ṣiṣẹ́ fún un, strategy combo `cache-optimized` tuntun + factor Auto-Combo `cacheAffinity` ń darí àwọn ìbéèrè àtúnsọ padà sí àsopọ̀ tó di prefix inú cache mú, endpoint kíkà-nìkan `/v1/auto-combo/{channel}/candidates` sì ń fi candidate pool tó ń ṣiṣẹ́ lọ́wọ́lọ́wọ́ fún channel `auto/*` hàn. → [Auto-Combo](docs/routing/AUTO-COMBO.md)
- **⚡ Ìṣiṣẹ́ local & amáyédẹrùn** — Redis local pẹ̀lú ìtẹ̀ ẹ̀kan, àwọn olùṣe deployment relay Cloudflare Workers / Deno Deploy, àti Bifrost & Mux gẹ́gẹ́ bí iṣẹ́ embedded tí a ń ṣọ́. → [Àwọn Iṣẹ́ Embedded](docs/frameworks/EMBEDDED-SERVICES.md)
- **🧩 Àwọn ohun mìíràn tó tún wà nínú àpótí** — framework plugin + marketplace, àwọn framework ọgbọ́n Omni/Agent/GitHub, ìsopọ̀ Obsidian vault (irinṣẹ́ MCP 22), àwọn API Batch & Files tó bá OpenAI mu, cache ìdáhùn semantic, gamification pẹ̀lú leaderboard, ìṣàwárí aṣojú ACP (àwọn aṣojú 15 tí a kọ sínú rẹ̀), fífi log ránṣẹ́ sí BigQuery ní àkókò tí a ṣètò, fan-out ọ̀pọ̀-model ní ìṣọ̀kan `auto/chaos`, afárá bot Telegram, oluṣàkóso version inú app àti àwọn ìpele olupèsè ọ̀fẹ́ LMArena-ELO. → [Àwọn Ìwé Ìtọ́sọ́nà](docs/README.md)
## 🤖 Àwọn CLI & Aṣojú Kóòdù Tó Bára Mu
> Àtòjọ kan ṣoṣo — `http://localhost:20128/v1` — àti pé **gbogbo** IDE AI tàbí CLI ń ṣiṣẹ́ lórí àwọn àwòṣe ọ̀fẹ́ & olówó-kékeré.
+ ó tún ń ṣiṣẹ́ pẹ̀lú · Agent Deck · Kiro · Command Code · Antigravity · Windsurf · AMP · ohun èlò èyíkéyìí tó bá OpenAI mu
📖 Ìṣètò fún irinṣẹ́ kọ̀ọ̀kan fún gbogbo irinṣẹ́ 36 (CLI Code 26 + CLI Agents 10) → [`docs/reference/CLI-TOOLS.md`](docs/reference/CLI-TOOLS.md) · 🧩 Àfikún OpenCode → [`@omniroute/opencode-provider`](https://www.npmjs.com/package/@omniroute/opencode-provider)
**Ṣàgbéjáde CLI èyíkéyìí tí a ṣe àtìlẹ́yìn fún nípasẹ̀ OmniRoute pẹ̀lú àṣẹ kan ṣoṣo** — kò kọ fáìlì ìṣètò kankan,
a ń fi àwọn ẹ̀rí ìwọlé sínú process kọ̀ọ̀kan, Qwen/Gemini sì máa ń gba home àdádó ìgbà díẹ̀:
```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"
# Tàbí yan olùpèsè+àwòṣe ní ìbánisọ̀rọ̀, kí o sì kọ ìṣètò ti irinṣẹ́ náà fúnra rẹ̀:
omniroute configure codex # bákan náà: claude opencode qwen aider goose gemini cline continue kilo
```
Gbogbo àṣẹ máa ń tẹ̀lé àyíká jíjìn tó ń ṣiṣẹ́ (`omniroute connect `), `--dry-run`
máa ń ṣàfihàn env/args gangan láì ṣiṣẹ́ wọn, `--api-key-env NAME` sì ń jẹ́ kí àwọn àṣírí má wọ inú
ìtàn shell rẹ. → [Àwọn Ìṣọ̀kan CLI](docs/guides/CLI-INTEGRATIONS.md)
## 🌐 Àwọn Olùpèsè AI 372 — 154 Tí A Sàmì Sí Gẹ́gẹ́ Bí Ọ̀fẹ́ Nínú Kátálọ́ọ̀gù
> **Àwọn olùpèsè 372 tí a forúkọ sílẹ̀** jákèjádò àwọn àkójọpọ̀ ìfọ̀rọ̀wérọ̀, mídíà, ìṣàwárí, agbègbè, aṣojú-àwọsánmà àti ètò àkọ́kọ́, pẹ̀lú **154 tí ó ní metadata ìṣàwárí `hasFree: true`**. Ìforúkọsílẹ̀ módẹ́ẹ̀lì ìfọ̀rọ̀wérọ̀ ní **àwọn olùpèsè 237 / àwọn méjì olùpèsè-módẹ́ẹ̀lì ọ̀tọ̀ọ̀tọ̀ 3,009 / àwọn ID módẹ́ẹ̀lì àìṣẹ̀dá 1,443**; kátálọ́ọ̀gù ìnáwó-ọ̀fẹ́ ọ̀tọ̀ náà ní **àwọn ìlà 485 fún módẹ́ẹ̀lì kọ̀ọ̀kan**, **àwọn àkójọpọ̀ àsìkò-léraléra 35** àti **àwọn olùpèsè ọ̀fẹ́-títí-láé 53 tí ń tún ara wọn ṣe/tí kò nílò kọ́kọ́rọ́**. Àwọn wọ̀nyí jẹ́ àwọn iye ìpín ọ̀tọ̀ọ̀tọ̀ nípasẹ̀ àpẹrẹ; àwọn ìtumọ̀ àti ìṣirò tí a ti yọ àwọn àkójọpọ̀ àdáwòkọ kúrò wà nínú [Ìtọ́kasí Olùpèsè](docs/reference/PROVIDER_REFERENCE.md) àti [Àwọn Ìpele Ọ̀fẹ́](docs/reference/FREE_TIERS.md).
### 🏢 Gbogbo yàrá ìwádìí pàtàkì — nípasẹ̀ endpoint kan ṣoṣo
OpenAI
Anthropic
Gemini
xAI Grok
DeepSeek
Mistral
Qwen
Meta Llama
Groq
NVIDIA
MiniMax
Cohere
Perplexity
HuggingFace
Together
Fireworks
Cloudflare
Baidu
…àti 330+ míì — gbogbo àwòrán àmì ni a ń mú jáde lọ́wọ́lọ́wọ́ láti inú kátálọ́ọ̀gù olùpèsè dashboard náà. 📖 [Ìtọ́kasí Olùpèsè](docs/reference/PROVIDER_REFERENCE.md)
### 🆓 Ọ̀fẹ́ Títí Láé — $0, kò nílò káàdì
OpenCode Zen DeepSeek V4, Nemotron 3 Kò ní ààlà token
Kilo Code Olùdarí aládàáṣiṣẹ́, Tencent Hy3 Ọ̀fẹ́ títí láé
Requesty GPT-OSS 120B, Nemotron Ọ̀fẹ́ títí láé
SiliconFlow DeepSeek V3.2 / R1 Ìpele ọ̀fẹ́
Z.AI GLM GLM-4.7 / 4.5-Flash Ọ̀fẹ́ títí láé
Baidu ERNIE ERNIE 4.0 Ọ̀fẹ́ títí láé
Qoder AI Qwen3-Max, Kimi-K2 Ọ̀FẸ́ láìláàlà
Pollinations GPT, Llama, Claude Kò nílò kọ́kọ́rọ́
Cloudflare AI Àwọn àwòṣe 50+ Àwọn neuron 10K/ọjọ́
NVIDIA NIM GLM, MiniMax ~40 RPM lọ́fẹ̀ẹ́
Cerebras GLM 4.7, GPT-OSS Kírẹ́díìtì $5 ẹ̀ẹ̀kan ṣoṣo; káàdì ṣe pàtàkì
OpenRouter Àwọn àwòṣe :free +$10 → RPM tó ga jù
📖 Àkójọ ẹ̀rọ tó péye, tí ẹ̀rọ lè kà → [`docs/reference/PROVIDER_REFERENCE.md`](docs/reference/PROVIDER_REFERENCE.md)
## 🖥️ Ibi tí OmniRoute Ti Ń Ṣiṣẹ́ — Níbikíbi
> Ètò kan náà, ẹ̀rọ rẹ, àwọn òfin rẹ. Láti ìfìsórí npm àgbáyé títí dé **fóònù rẹ** nípasẹ̀ Termux.
Pẹpẹ
Ìfìsórí
Àwọn Ànfàní Pàtàkì
📦 npm (àgbáyé)
npm install -g omniroute
Àṣẹ kan, OS èyíkéyìí
🐳 Docker
docker run … diegosouzapw/omniroute
Ọ̀pọ̀ àkitektọ̀ AMD64 + ARM64
🖥️ Desktop (Electron)
npm run electron:build
Fèrèsé abínibí + àpótí ètò — Windows / macOS / Linux
🎩 Àkójọ-àṣàyàn (OmniRouteTray)
brew install --cask zoispag/tap/omniroute-tray
Ń ṣàkóso & ń ṣe ìmúdójúìwọ̀n olupin fúnra rẹ̀ — macOS
💪 ARM
abínibí arm64
Raspberry Pi, àwọn olupin ARM, Apple Silicon
📱 Android (Termux)
pkg install nodejs && npx -y omniroute
Ń ṣiṣẹ́ lórí fóònù rẹ, 24/7, láìsí root
📲 PWA
"Ṣàfikún sí Ojú Ìbẹ̀rẹ̀"
Ojú-kíkún, láìsí ayélujára, ó ṣeé fi sórí láti inú aṣàwákiri
🧩 Àfikún OpenCode
@omniroute/opencode-provider
Ìṣọ̀kan OpenCode abínibí
🤖 VS Code Copilot Chat
fi àfikún OmniCopilot sórí
Gbogbo àwòṣe OmniRoute nínú aṣàyàn Copilot Chat abínibí — stable & Insiders
### 🧩 Tuntun: OmniRoute nínú Copilot Chat abínibí ti VS Code
> Kò sí pẹpẹ-ẹ̀gbẹ́ tuntun, kò sí ojú ìbánisọ̀rọ̀ tuntun — gbogbo àwòṣe tí OmniRoute ń pèsè yóò hàn ní tààràtà nínú
> **aṣàyàn àwòṣe Copilot Chat tí o ti ń lò**. Láti VS Code 1.122, àwọn àwòṣe olùpèsè ń ṣiṣẹ́
> láìsí wíwọlé GitHub tàbí ìforúkọsílẹ̀ Copilot — ipò aṣojú, pípè irinṣẹ́ àti ìríran, lọ́fẹ̀ẹ́.
Fi àfikún **[OmniCopilot](https://github.com/diegosouzapw/OmniCopilot)** sórí, darí rẹ̀
sí olupin OmniRoute rẹ (àtìlẹ́yìn àkọ́kọ́ ni `localhost:20128`), lẹ́yìn náà ṣí Copilot Chat → aṣàyàn àwòṣe
→ **Ṣàkóso Àwọn Àwòṣe…** → **OmniRoute**.
Láti inú olóòtú: ṣí ojú **Àwọn Àfikún**, wá **"OmniRoute"**, tẹ **Fi sórí**
— ó ń ṣiṣẹ́ lọ́nà kan náà lórí ilé ìtajà méjèèjì. Kóòdù orísun, àwọn ìṣòro àti ìwé ìtọ́sọ́nà ìtẹ̀jáde wà ní
[diegosouzapw/OmniCopilot](https://github.com/diegosouzapw/OmniCopilot).
📖 [Ìtọ́sọ́nà VS Code Copilot Chat](docs/guides/VSCODE-COPILOT.md) — ìṣètò, ohun tí aṣàyàn náà ń fi hàn, àtẹ ìṣàkóso nínú taabu, yíyanjú ìṣòro
### 🎩 Tuntun: OmniRouteTray — ẹnubodè rẹ, tí ń gbé inú ọ̀pá àkójọ-àṣàyàn
> `omniroute serve` máa ń dára jù lọ nígbà tí ó bá ń ṣiṣẹ́ ní gbogbo ìgbà. **[OmniRouteTray](https://github.com/zoispag/omniroute-tray)**
> ń yí èyí padà sí ètò ọ̀pá àkójọ-àṣàyàn fún macOS tí o lè ṣètò kí o sì gbàgbé rẹ̀: ó ń bẹ̀rẹ̀ olupin, ó ń jẹ́ kí ó máa ṣiṣẹ́
> lẹ́yìn àwọn àtún-bẹ̀rẹ̀, ó ń ṣe ìmúdójúìwọ̀n rẹ̀ níbi kan náà, ó sì ń jẹ́ kí ìwọ̀n token rẹ ní àkókò gidi wà ní ìtẹ̀ kan — **kò sí
> fèrèsé terminal tí a fi sílẹ̀ ní ṣíṣí, kò sí `npm install -g omniroute` tí o ní láti máa tọ́jú.**
A kọ́ ọ pẹ̀lú [Tauri v2](https://v2.tauri.app/) (ìpìlẹ̀ Rust tí ó kéré gan-an), ó mú
runtime Node 24 tirẹ̀ tí a fọwọ́sí wá, ó sì ń ṣàkóso ìfìsórí OmniRoute tí ètò náà ní, nítorí náà kò ní bá
`node`/`bun` àgbáyé rẹ figagbága. Ó **ń pín àtòpọ̀ àti ibi ìpamọ́ dátà `~/.omniroute/` rẹ tí ó ti wà tẹ́lẹ̀** — nítorí náà,
OmniRoute kan náà tí o ti ń ṣiṣẹ́ ni, ó kàn wọ fìlà ni. 🎩
Ohun tí ó ń ṣe
Bí ó ṣe ń ṣe é
🟢 Ó ń ṣàkóso olupin
Ó ń ṣe ìpilẹ̀ṣẹ̀ omniroute serve, ó ń gba instance tí ó ti ń ṣiṣẹ́ dípò ṣíṣe ẹ̀dà rẹ̀ méjì
📊 Ìlò ní àkókò gidi ní ojú kan
Àwọn ọ̀pá ìpín olùpèsè, ààlà session/ọ̀sẹ̀ Claude pẹ̀lú ìṣírò àkókò tó kù sí àtúntò, ìpín iye owó ọjọ́ 30
🔄 Ó ń ṣe ìmúdójúìwọ̀n fúnra rẹ̀ níbi kan náà
Ìfìsórí ní ìpele, ìpàrọ̀ atomic, ìpadà sí ẹ̀yà àtijọ́ nígbà ìkùnà — ó máa ń wà lórí ìtẹ̀jáde tuntun jù lọ ní gbogbo ìgbà
🚀 Bẹ̀rẹ̀ nígbà wíwọlé
Ìpilẹ̀ṣẹ̀ àṣàyàn nígbà wíwọlé; àpótí nìkan, kò sí àmì dock
🩺 Àyẹ̀wò & àwọn àkọsílẹ̀
Àyẹ̀wò ìṣòro pẹ̀lú ìtẹ̀ kan àti ìráyè sí àkọsílẹ̀ olupin
```sh
brew install --cask zoispag/tap/omniroute-tray
```
Ṣé o fẹ́ràn ìgbàsílẹ̀? Gba .dmg tuntun láti
Àwọn Ẹ̀yà Tí A Ti Tu Sílẹ̀. Kóòdù orísun, àwọn ìṣòro àti àwọn àkọsílẹ̀ ìkọ́lé
wà ní zoispag/omniroute-tray.
💛 Iṣẹ́ àkànṣe àwùjọ láti ọwọ́ @zoispag — kì í ṣe ẹ̀yà OmniRoute tí a tú sílẹ̀ ní ọ̀nà ìjọba.
> Yàtọ̀ sí server náà, OmniRoute jẹ́ **ibi ìṣàkóso command-line kíkún** pẹ̀lú **àwọn àṣẹ 80+**, àti àwọn protocol agent ṣíṣí kí agent AI lè darí rẹ̀ **fúnra rẹ̀**.
### ⌨️ CLI gidi kan (kì í ṣe `start` nìkan)
```bash
omniroute # ṣe ìpèsè gateway + dashboard (port 20128)
omniroute chat # client ìfọ̀rọ̀wérọ̀ TUI aláṣepọ̀ (slash: /model /combo /skill /memory)
omniroute setup # wizard ìtọ́sọ́nà fún ìṣiṣẹ́ àkọ́kọ́
omniroute doctor # ṣe àyẹ̀wò providers, ports, native deps
```
### 🛰️ Ipò jíjìn — ṣiṣẹ́ CLI níbí, OmniRoute lórí VPS kan
OmniRoute wà lórí server kan? Darí rẹ̀ láti laptop rẹ pẹ̀lú **CLI kan náà**. Wọlé lẹ́ẹ̀kan
pẹ̀lú token ìwọlé tí a ní ìdíwọ̀n agbègbè; lẹ́yìn náà, gbogbo àṣẹ yóò tọ́ka sí èyí tí ó wà ní jíjìn.
```bash
omniroute connect 192.168.0.15 # ọ̀rọ̀ aṣínà → token tí a ní ìdíwọ̀n agbègbè, tí a fipamọ́ gẹ́gẹ́ bí context
omniroute models list # ← ń ṣiṣẹ́ lòdì sí server JÍJÌN náà
omniroute configure codex # ← yan model jíjìn kan, kọ profile Codex agbègbè kan
omniroute tokens create --name ci --scope read # ṣẹ̀dá àwọn token tó ní ìdíwọ̀n tóóró fún àwọn ẹ̀rọ mìíràn
omniroute contexts use default # ← padà sí server agbègbè náà
```
A pín àwọn token sí agbègbè `read` / `write` / `admin`; àwọn route tó ń dá process sílẹ̀ wà fún loopback nìkan.
📖 [Ipò Jíjìn](docs/guides/REMOTE-MODE.md)
### 🤝 So agent kan pọ̀ — yóò sì ṣàkóso OmniRoute fúnra rẹ̀
Ṣí OmniRoute síta nípasẹ̀ **MCP**, **A2A**, **REST API**, **webhooks** tàbí **CLI jíjìn** — agent èyíkéyìí tó lágbára (tàbí code tirẹ) yóò gba kọ́kọ́rọ́ sí gbogbo gateway náà: routing, providers, combos, cache, compression, memory — láìsí ìdarí ènìyàn. Àwọn endpoint HTTP tó wà nísàlẹ̀ ni a pèsè lábẹ́ `http://localhost:20128`.
Ojú-ìbáṣepọ̀
Endpoint / àṣẹ
Lò ó fún
🧰 MCP (stdio)
omniroute --mcp
So pọ̀ mọ́ Claude Desktop, Cursor, tàbí client MCP èyíkéyìí
Ó bá OpenAI mu — ìfọ̀rọ̀wérọ̀, embeddings, àwòrán, ohun, OCR
🔔 Webhooks
/api/webhooks
Fi àwọn ìṣẹ̀lẹ̀ ìbéèrè / quota ránṣẹ́ sí Slack, Discord, Telegram tàbí URL èyíkéyìí
🛰️ CLI Jíjìn
omniroute connect
Darí instance jíjìn kan pẹ̀lú àwọn token ìwọlé tí a ní ìdíwọ̀n agbègbè
```bash
# Fún Claude Code ní gbogbo àkójọpọ̀ irinṣẹ́ OmniRoute nípasẹ̀ MCP:
claude mcp add-server omniroute --type http --url http://localhost:20128/api/mcp/stream
```
📖 [Server MCP](docs/frameworks/MCP-SERVER.md) · [Server A2A](docs/frameworks/A2A-SERVER.md) · [Àwọn Protocol Agent](docs/frameworks/AGENT_PROTOCOLS_GUIDE.md)
## 🗜️ Fi 15–95% Àwọn Tókìnì Pamọ́ — Láìfọwọ́ṣe
### 📖 Bí ó ṣe ń ṣiṣẹ́ — ìpele ìṣiṣẹ́, àwòrán ètò & ìṣirò ìfipamọ́
Àkójọpọ̀ àìyípadà máa ń ṣiṣẹ́ ní ìtẹ̀lé `RTK → Caveman`. Nígbà tí àwọn méjèèjì bá ṣiṣẹ́ lórí ẹrù irinṣẹ́/àyíká-ọ̀rọ̀ kan náà, ìfipamọ́ máa ń pọ̀ sí i ní ìlọ́po:
```txt
combined = 1 − (1 − RTK) × (1 − Caveman_input)
average = 1 − (1 − 0.80) × (1 − 0.46) = 89.2%
range = 78.4 – 94.6%
```
Ẹ̀rọ ìpamọ́ **máa ń dáàbò bo** àwọn búlọ́ọ̀kù kóòdù, àwọn URL, JSON àti dátà tó ní ìṣètò **ní gbogbo ìgbà**.
> **Kí ló dé tí a fi máa lo ọ̀pọ̀ tókìnì nígbà tí díẹ̀ lè ṣe iṣẹ́ náà?** Gbogbo ìbéèrè máa ń gba inú ìpele ìfúnpọ̀ OmniRoute kọjá **láìfarahàn** — kò sí ìyípadà kankan fún oníbàárà. Ní báyìí, ó jẹ́ **àkójọpọ̀ àwọn ẹ̀rọ 12 tí a lè ṣàkójọpọ̀** tí ń ṣiṣẹ́ ní ìtẹ̀lé, tí a sì lè pò tàbí mú bá ara wọn mu fún àkójọpọ̀ ìdarí ọ̀nà kọ̀ọ̀kan — tí ó gbé karí àwọn èrò láti [RTK](https://github.com/rtk-ai/rtk), [Caveman](https://github.com/JuliusBrussee/caveman) (⭐ 90K+), [LLMLingua-2](https://github.com/microsoft/LLMLingua), àti [Troglodita](https://github.com/leninejunior/troglodita) (PT-BR).
### 🧱 Àkójọpọ̀ ẹ̀rọ 12 náà
Àwọn ẹ̀rọ máa ń ṣiṣẹ́ ní ìtẹ̀lé ìpele ìṣiṣẹ́; a lè tan tàbí pa ọ̀kọ̀ọ̀kan lọ́tọ̀, a sì lè ṣètò rẹ̀ fún àkójọpọ̀ kọ̀ọ̀kan:
#
Ẹ̀rọ
Ohun tí ó ń ṣe
1
Session-Dedup
Ń yọ àkóónú tí a tún lò láàárín àwọn ìfèsì (tí a ń tọ́ka sí nípasẹ̀ àkóónú, tó sì ń ṣiṣẹ́ kọjá àwọn ìfèsì)
2
CCR
Ń fi àwọn búlọ́ọ̀kù ńlá pamọ́ lẹ́yìn àwọn àmì ìmúpadàbọ̀, a sì ń mú wọn wá nígbà tí a bá nílò wọn
3
Lite
Ààyè òfìfo + gígé URL àwòrán kúrú (ìpìlẹ̀ tó fẹ́rẹ̀ẹ́ má ní ìdádúró)
4
RTK
Àlẹ̀mọ́ ọlọ́gbọ́n fún èsì irinṣẹ́, yíyọ àwọn àdàkọ & gígé kúrú (tó mọ àṣẹ)
5
Responses Tool Output
JSON tí kò pàdánù àlàyé lákọ̀ọ́kọ́ + ìfúnpọ̀ àyẹ̀wò tó ní ààlà fún àbájáde shell/patch/search/build (Responses API)
6
Headroom
Ìṣọdipúpọ̀ tábìlì tí kò pàdánù àlàyé fún àwọn àkójọ JSON (~30%) nípasẹ̀ codec GCF tí a ṣàkópọ̀ mọ́ ọn
7
Relevance
Ìfún àwọn gbólóhùn ní àmì láti mú èyí tó ṣe pàtàkì jáde ní ìfiwéra pẹ̀lú ìbéèrè oníṣe tó ṣẹ̀ṣẹ̀ dé
8
Caveman
Ìfúnpọ̀ ọ̀rọ̀ àpilẹ̀kọ tó dá lórí àwọn òfin (~65–75% lórí àbájáde)
9
Aggressive
Ṣíṣe àkótán + dídi àwọn ìfèsì àtijọ́ kúrú sí i ní ṣísẹ̀-n-tẹ̀lé
10
LLMLingua-2
Yíyọ apá ìtumọ̀ tí kò ṣe pàtàkì pẹ̀lú ML nípasẹ̀ MobileBERT ONNX — tó dáàbò bo kóòdù, async
Ìyípadà àyíká-ọ̀rọ̀ sí àwòrán fún Claude Fable 5 tí a wọn lórí ìsopọ̀ Anthropic tààrà gẹ́gẹ́ bí àdánwò; àwọn transformer GPT 5.6 ṣì máa ń kọ̀ láìsí ẹ̀rí ìjẹ́rìísí láti ọ̀dọ̀ olùpèsè. Àwọn profaili ìfúnpọ̀ mẹ́rin (aggressive gẹ́gẹ́ bí àìyípadà, balanced, coding-safe, passthrough) (tó le jù lọ; a gbọ́dọ̀ yàn láti lò ó)
Àwọn búlọ́ọ̀kù kóòdù, àwọn URL àti dátà tó ní ìṣètò ni a **máa ń tọ́jú ní gbogbo ìgbà** ní ìbámu pípé dé ìwọ̀n byte. **Àwọn àtòjọ tí a lè yàn pẹ̀lú ìtẹ̀ kan** ń darapọ̀ àwọn ẹ̀rọ náà:
Ìpo
Ìfipamọ́
Ó dára jù fún
🪶 Lite
~15%
Àìyípadà tó ní ààbò tí a lè máa lò ní gbogbo ìgbà
🪨 Standard (Caveman)
~30%
Kíkọ kóòdù ojoojúmọ́
⚡ Aggressive
~50%
Àwọn sáà gígùn tó kún fún lílo irinṣẹ́
🔥 Ultra
~75%
Ìfipamọ́ tó pọ̀ jù lọ
🧰 RTK
60–90%
Àbájáde shell/test/build/git
🔗 Stacked (RTK → Caveman)
78–95%
Àwọn ìtọ́ni àdàpọ̀ + àkọsílẹ̀ irinṣẹ́
**Àpẹẹrẹ gidi — Ìpo Standard:**
> **Ṣáájú (tókìnì 69):** _"Ìdí tí kọ́ńpónẹ́ǹtì React rẹ fi ń tún ara rẹ̀ ṣe àfihàn ṣeé ṣe kó jẹ́ pé o ń ṣẹ̀dá ìtọ́kasí object tuntun ní gbogbo ìyípo àfihàn. Nígbà tí o bá fi inline object ránṣẹ́ gẹ́gẹ́ bí prop, ìfiwéra React tí kò jinlẹ̀ máa ń rí i gẹ́gẹ́ bí object tó yàtọ̀ ní gbogbo ìgbà, èyí sì ń fa àtúnṣe àfihàn. Mo dábàá pé kí o lo useMemo láti fi object náà sínú memo."_
>
> **Lẹ́yìn (tókìnì 19):** _"Ìtọ́kasí object tuntun ní gbogbo àfihàn. Inline object prop = ìtọ́kasí tuntun = àtúnṣe àfihàn. Fi useMemo yí i ká."_
>
> **Èsì kan náà. Tókìnì dín kù ní 72%. Kò pàdánù ìpéye rárá.** ✅
**Àpẹẹrẹ PT-BR — Ìpo [Troglodita](https://github.com/leninejunior/troglodita):**
> **Ṣáájú (42 tokens):** _"Ìṣòro náà ni pé component náà ń tún render nítorí reference object tuntun ni a ń ṣẹ̀dá ní gbogbo render cycle. Màá dábàá lílo useMemo."_
>
> **Lẹ́yìn náà (12 tokens):** _"Àtún-render: ref tuntun ní gbogbo cycle (object inline tí a tún ṣẹ̀dá). Lo `useMemo`."_
>
> **Ìdáhùn kan náà. Tókìn dín kù ní ~70%. Ìpéye ìmọ̀ ẹ̀rọ kò yí padà.** ✅
### 🎚️ Kọjá àwọn engine — àwọn style output, dial aṣamubadọ́gba àti ìṣàkóso fún request kọ̀ọ̀kan
Àwọn engine 12 tó wà lókè dín ohun tó ń wọlé kù. Àwọn layer mẹ́ta míì ń ṣàkóso **bí**, **ìgbà wo**, àti ohun tó ń **jáde**:
- **🪄 Àwọn Style Output** _(ìdarí lórí axis output)_ — fi àwọn ìtọ́nisọ́nà tó dájú, tí kò ba cache jẹ́, sínú ìdáhùn láti mọ bí yóò ṣe rí; a lè da wọn pọ̀, ọ̀kọ̀ọ̀kan sì ní ìwọ̀n `lite` / `full` / `ultra`. Fífi style kan kún un jẹ́ entry registry onílà-kan:
- **Ọ̀rọ̀ ṣókí** — yọ ọ̀rọ̀ àfikún / article / ọ̀rọ̀ àní-àní kúrò; pa kókó ìmọ̀ ẹ̀rọ mọ́ ní pípé.
- **Code díẹ̀** — YAGNI ti “senior dev ọ̀lẹ”: àyípadà tó kéré jù tó sì ṣiṣẹ́, láìsí scaffolding tí a kò béèrè fún.
- **Ponytail (senior dev ọ̀lẹ)** — gun àkàbà YAGNI, tún gbòǹgbò ìṣòro náà ṣe, lo diff tó kéré jù tó sì ṣiṣẹ́.
- **Mo ní ADHD (ìgbésẹ̀-lákọ̀ọ́kọ́)** — bẹ̀rẹ̀ pẹ̀lú ìgbésẹ̀ tó kàn, fi nọ́ńbà sí àwọn ìgbésẹ̀, ìgbésẹ̀ gidi kan ṣoṣo tó kàn, kò sí ọ̀rọ̀ ìṣáájú.
- **CJK ṣókí (文言)** — style Ṣáínà àtijọ́ tó ṣókí gan-an (a fi locale mọ́ `zh` nìkan).
- **🎯 Ìwọ̀n context tó ń bá ipò mu** _(dial náà)_ — dípò threshold tókìn on/off kan ṣoṣo, mú àwọn engine tó wọ́pọ̀ jù, tí kò sì pàdánù ìtumọ̀ púpọ̀, ga dé ibi tó yẹ nìkan láti **ba context window model náà mu**. Policy: `reserve-output` (àiyipada, tó mọ model) · `percentage` · `absolute`. Mode: `floor` (jẹ́rìí pé yóò wọlé) · `replace-autotrigger` (àyàn rẹ tó ṣe kedere ló borí) · `off` (threshold àtijọ́).
- **🎛️ Ibi tí a ti pinnu compression** _(àṣẹ ìṣáájú, gíga → kékeré)_ — header `x-omniroute-compression` fún request kọ̀ọ̀kan › override routing-combo › profile olórúkọ tó ń ṣiṣẹ́ › adaptive / auto-trigger › àiyipada panel › off. Ètò tí a lò yóò tún hàn nínú header ìdáhùn `X-OmniRoute-Compression: ; source=`.
Ṣètò auto-trigger nípa threshold tókìn, tan dial adaptive, dì profile olórúkọ kan mú, ṣètò ti ẹ̀ẹ̀kan fún request kan, tàbí yan pipeline fún routing combo kọ̀ọ̀kan — èyíkéyìí tó bá iṣẹ́ náà mu. **Eval harness** offline tí o lè yàn láti lò (`npm run eval:compression`) ń díwọ̀n bí ìdúróṣinṣin ìtumọ̀ ṣe rí sí iye ìfipamọ́ lórí corpus tí a dì mú kí o tó gbé àyípadà kan ga.
📖 [`COMPRESSION_GUIDE.md`](docs/compression/COMPRESSION_GUIDE.md) · [`RTK_COMPRESSION.md`](docs/compression/RTK_COMPRESSION.md) · [`COMPRESSION_ENGINES.md`](docs/compression/COMPRESSION_ENGINES.md)
# ⚡ Bẹ̀rẹ̀ Kíákíá
**1) Fi sílẹ̀ kí o sì ṣiṣẹ́**
```bash
npm install -g omniroute
omniroute
```
> 💡 Ṣé o rí `npm warn ERESOLVE` tàbí àwọn ìkìlọ̀ peer-dep? [Wọn kò léwu](docs/guides/TROUBLESHOOTING.md#npm-install-warnings-eresolve--peer--deprecated).
> **Ṣé o ń lo npm 11 tàbí tuntun ju bẹ́ẹ̀ lọ?** npm lè dí àwọn script lifecycle package mọ́ àyàfi tí a bá gba wọn láàyè. `postinstall` ti OmniRoute (`node scripts/build/postinstall.mjs`) ṣe pàtàkì láti pèsè àwọn file runtime native rẹ̀. Gba àwọn package tí a dárúkọ nínú ìkìlọ̀ npm láàyè nígbà tí o bá ń fi í sílẹ̀ globally. Fún àkójọpọ̀ package tí OmniRoute 3.8.51 jabo:
>
> ```bash
> npm install -g --allow-scripts=omniroute,keytar,onnxruntime-node,@parcel/watcher,@swc/core,protobufjs,esbuild omniroute
> ```
>
> Láti tún allowlist yìí lò fún àwọn fifi-sílẹ̀ global lọ́jọ́ iwájú, ṣètò rẹ̀ lẹ́ẹ̀kan, lẹ́yìn náà fi sílẹ̀ bí àtẹ̀yìnwá:
>
> ```bash
> npm config set allow-scripts=omniroute,keytar,onnxruntime-node,@parcel/watcher,@swc/core,protobufjs,esbuild --location=user
> npm install -g omniroute
> ```
>
> Àkójọ dependency lè yí padà láàárín àwọn release; bí npm bá jabo àkójọ mìíràn, lo àwọn orúkọ package inú ìkìlọ̀ náà. Gbigba package kan láàyè túmọ̀ sí fífàyè gba àwọn script install rẹ̀ láti ṣiṣẹ́.
> **Ṣé o ń lo Gemini Web tàbí provider web-cookie mìíràn?** Package npm náà ní
> Playwright, ṣùgbọ́n kò ní binary Chromium rẹ̀. Wo àkíyèsí
> [ìṣètò Playwright Chromium](docs/guides/TROUBLESHOOTING.md#gemini-web-and-playwright-chromium)
> kí o tó ṣe request àkọ́kọ́ sí web-provider.
Dashboard wà ní `http://localhost:20128` · API wà ní `http://localhost:20128/v1`.
**2) So provider tó yẹ pọ̀ ní lílo account tirẹ**
Dashboard → **Providers** → yan provider kan tí àwọn terms àti quota rẹ̀ lọ́wọ́lọ́wọ́ bá use case rẹ mu → fi API key rẹ̀ kún un tàbí parí account flow rẹ̀. Àwọn free tier lè béèrè fún signup, approval, tàbí payment method. Ṣàyẹ̀wò [Ìtọ́sọ́nà Free Tiers](docs/getting-started/FREE-TIERS-GUIDE.md); a kò lè ṣe ìdánilójú pé keyless availability yóò wà, àwọn provider tí a sì sàmì sí `tos: avoid` ni a yọ kúrò nínú `auto` ní àiyipada.
**3) Darí coding tool rẹ sí i**
```txt
URL Ìpìlẹ̀: http://localhost:20128/v1
API Key: [dà á láti Dashboard → Endpoints]
Model: auto (ń route láàárín àwọn connection tó yẹ — tàbí yan provider/model)
```
**4) Jẹ́rìí pé ó ń ṣiṣẹ́**
```bash
curl http://localhost:20128/v1/models -H "Authorization: Bearer YOUR_KEY"
```
Ó yẹ kí o rí àkójọ àwọn model tí o ti so pọ̀. 🎉 Ó tán — bẹ̀rẹ̀ sí í kọ code, OmniRoute yóò sì ṣe auto-route àti fallback fún ọ.
Bí client rẹ kò bá lè fi custom header ránṣẹ́, OmniRoute tún pèsè àwọn alias compatibility tí a fi token mọ́:
```txt
Àkójọ OpenAI: http://localhost:20128/vscode/YOUR_KEY/
Àwọn model OpenAI: http://localhost:20128/vscode/YOUR_KEY/models
Chat OpenAI: http://localhost:20128/vscode/YOUR_KEY/chat/completions
Ìdáhùn OpenAI: http://localhost:20128/vscode/YOUR_KEY/responses
Chat Ollama: http://localhost:20128/vscode/YOUR_KEY/api/chat
Àwọn tag Ollama: http://localhost:20128/vscode/YOUR_KEY/api/tags
```
Lo àwọn wọ̀nyí fún àwọn client tí kò lè so `Authorization: Bearer ...` mọ́ request nìkan. Ìfàṣẹ̀sí nípasẹ̀ header ṣì ni mode tí a fẹ́ràn jù.
## 📦 Àwọn ọ̀nà ìfisílẹ̀ míì — 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
```
`:latest` ń tẹ̀lé ẹ̀yà SemVer tó dúró ṣinṣin tó ga jù lọ tí a ti **tẹ̀ jáde**. Kò tẹ̀lé git `main`. Lo `:X.Y.Z` pàtó fún GitOps. Wo [Àwọn Ikanni Ìtújáde Docker](docs/guides/DOCKER_GUIDE.md#release-channels).Àwòrán náà ṣètò **`OMNIROUTE_MEMORY_MB=1024`** gẹ́gẹ́ bí iye pàtó. Ìyẹn tó fún dashboard àti ìfọ̀rọ̀wérọ̀ kékeré. **Àwọn aṣojú coding** (`POST /v1/responses` láti Claude Code, Codex, Grok, …) nílò V8 heap tó tóbi púpọ̀ sí i, bí bẹ́ẹ̀ kọ́ process náà yóò ṣe `FATAL ERROR` ní nǹkan bí 12 GiB lábẹ́ àwọn context gígùn méjì tó bẹ̀rẹ̀ sí í lé ara wọn lórí. Ṣètò container náà kí ó tóbi ju heap lọ (àwọn native buffer wà ní òde V8):
| Irú iṣẹ́ | Heap (`-e OMNIROUTE_MEMORY_MB`) | Container (`--memory`) |
| ------------------------------------- | ------------------------------- | ---------------------- |
| Dashboard / ìfọ̀rọ̀wérọ̀ kékeré | `1024` (ìpìlẹ̀ àwòrán) | ≥2 g |
| Aṣojú coding kan | `8192` | ≥10 g |
| `/v1/responses` gígùn méjì lẹ́ẹ̀kan náà | `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
```
Tábìlì kíkún: [Ìtọ́sọ́nà Docker — RAM àsìkò ìṣiṣẹ́](docs/guides/DOCKER_GUIDE.md#runtime-ram-for-coding-agents).
> **Ikanni Docker ṣáájú ìtújáde:** `diegosouzapw/omniroute:next` àti
> `diegosouzapw/omniroute:next-web` ń tẹ̀lé ẹ̀ka `release/v*` tó jẹ́ àìyẹsẹ̀ lọ́wọ́lọ́wọ́.
> Àwọn tag tí ó lè yí padà wọ̀nyí wà fún dídán àwọn àtúnṣe tí a kò tíì tú jáde wò nìkan, wọn kò sì
> **ní àtìlẹ́yìn fún production**. Wo
> [Àwọn Ikanni Ìtújáde Docker](docs/guides/DOCKER_GUIDE.md#release-channels).
**🥟 Bun**
A ṣàtìlẹ́yìn fún `bun install` àtijọ́ àti ìfisílẹ̀ kárí-ayé (`bun install -g omniroute`) nípasẹ̀ ìṣàwárí runtime Bun:
- **`bun:sqlite` tí a kọ sínú rẹ̀**: OmniRoute máa ń lo driver `bun:sqlite` tí a kọ sínú Bun nígbà tó bá ń ṣiṣẹ́ lábẹ́ Bun, yóò sì yí padà sí `better-sqlite3` lórí Node.js tàbí `sql.js`.
- **Yíyan bundler Webpack láìfọwọ́ṣe ní dev**: Development (`bun run dev`) máa ń ṣàwárí Bun láìfọwọ́ṣe, yóò sì pa Turbopack láti lo Webpack dípò rẹ̀ láti dènà àìbáramu native V8 binding. Àwọn build production (`bun run build`) ń tẹ̀lé `OMNIROUTE_USE_TURBOPACK` gan-an bíi ti Node: Turbopack gẹ́gẹ́ bí àìyẹsẹ̀, `OMNIROUTE_USE_TURBOPACK=0` láti build pẹ̀lú Webpack (`Dockerfile.bun` ń mú un wà gẹ́gẹ́ bí `--build-arg`).
- **Dockerfile Bun àkànṣe**: `Dockerfile.bun` alápele-púpọ̀ fún àwọn deployment production Bun native (`docker build -f Dockerfile.bun -t omniroute:bun .`).
```bash
# Fi sílẹ̀ kí o sì ṣiṣẹ́ pẹ̀lú Bun
bun install
bun run dev
```
**🛠️ Láti 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
# Lílo àwọn flake Nix
nix develop
npm run dev
# Tàbí lílo devbox
devbox run npm run dev
```
📖 [Ìtọ́sọ́nà Docker](docs/guides/DOCKER_GUIDE.md) — Àwọn profile Compose, Caddy HTTPS, àwọn tunnel Cloudflare.
**🦭 Podman**
```bash
# 1. Pèsè àkọsílẹ̀ data tí a so mọ́ nípasẹ̀ bind
mkdir -p data
# 2. Linux + Podman rootless ti agbègbè nìkan (kì í ṣe client Podman Machine jíjìn rárá):
podman unshare chown 1000:1000 ./data
# 3. Ṣètò ìtọ́kasí runtime, build àwòrán Compose agbègbè, kí o sì bẹ̀rẹ̀
echo "CONTAINER_HOST=podman" >> .env
podman compose --profile base up -d --build
```
Lórí macOS tàbí Windows, Podman máa ń lo Podman Machine jíjìn: má ṣe lo `podman unshare`, kí o sì
tẹ̀lé [ìtọ́sọ́nà àkọsílẹ̀ data tó dá lórí topology](contrib/podman/README.md#data-directory-permissions-by-topology).
📖 [Ìtọ́sọ́nà Podman](contrib/podman/README.md) — Àwọn build Compose, Podman Machine, àti
ìṣètò Quadlet Linux/systemd.
**⚡ Ìfisílẹ̀ tó yára / fẹ́ẹrẹ̀ sí i (fo native build)**
Ẹ̀rọ SQLite native (`better-sqlite3`) jẹ́ dependency **àṣàyàn**, nítorí náà ìfisílẹ̀
kárí-ayé kì í dúró de compilation láti source: ó máa ń lo binary tí a ti kọ́ tẹ́lẹ̀ nígbà tí èyí tó bá
platform/Node rẹ mu bá wà, bí bẹ́ẹ̀ kọ́ yóò yí padà láìsí ìdíwọ́ sí ẹ̀rọ pure-JS
(`node:sqlite` lórí Node 22+, tàbí WASM `sql.js` tí a kó pọ̀ mọ́ ọn) — kò nílò àwọn irinṣẹ́ build.
Láti fo ìmúrúgbóná native lẹ́yìn ìfisílẹ̀ pátápátá (CI, headless, tàbí àwọn ẹ̀rọ tó lọ́ra):
```bash
OMNIROUTE_SKIP_POSTINSTALL=1 npm install -g omniroute # CI=1 náà máa ń fò ó
```
Fún ìfisílẹ̀ tó yára jù lọ, yan **pnpm** (ibi ìpamọ́ tó dá lórí àkóónú + àwọn hard link — wo òkè).
Fún runtime headless tí kò ní dashboard, lo profile `base` Docker (lókè) tàbí
[ìtọ́sọ́nà Termux](docs/guides/TERMUX_GUIDE.md). Process kan náà ló ń pèsè CLI àti dashboard wẹ́ẹ̀bù lórí
port kan, nítorí náà kò sí package CLI-nìkan lọ́tọ̀ ní báyìí.
# 🎬 OmniRoute Níbi Iṣẹ́
## 📹 Àwọn Ìtọ́sọ́nà Fídíò
Àwòrán pánẹ́ẹ̀lì ní 2026-08-24 · Àkójọ àìṣètò: YT 809 | TT 137 | IG 124 · Bí ó ṣe jẹ́ tuntun (ọjọ́): YT 1 | TT 21 | IG 22
Ọ̀nà ìgbàgbọ́n ìborí ìdánwò fún àwọn ìkéde ìdánwò àimi 39,000+ káàkiri àwọn fáìlì ìdánwò 5,100+ tí a ń tọpinpin
# ⭐ Àwọn Olùkópa Tó Ga Jù
> Àwùjọ orísun-ṣíṣí tí ó ní ìtara ló ń ṣe àgbékalẹ̀ OmniRoute. Àwọn ènìyàn wọ̀nyí ti ṣe àwọn àfikún àrà ọ̀tọ̀ tí ó kan dídára, ìdúróṣinṣin, àti bí iṣẹ́ náà ṣe dé ibi púpọ̀ ní tààràtà. **Ẹ ṣé.**
### Àwọn olùkópa láti òde gẹ́gẹ́ bí iye àwọn pull request tí a ti dapọ̀
A dì í mú ní orí ìparí release/v3.8.50 tó wà láàyè, dafb4ae808, pẹ̀lú àwọn ìdàpọ̀ títí dé 2026-08-24 05:26:03 UTC. Ìkànìyàn GitHub GraphQL tó ní ojúewé púpọ̀ ní àwọn PR 5,911 tí a ti dapọ̀: 2,707 láti ọ̀dọ̀ olówó ibi ìpamọ́, 179 láti ọ̀dọ̀ Dependabot, àti àwọn PR òde 3,025 láti ọ̀dọ̀ àwọn olùkópa ọ̀tọ̀ọ̀tọ̀ 535. “Àwọn ìlà tí a yí padà” ni àpapọ̀ àwọn àfikún + ìyọkúrò GitHub, ó sì ní àwọn fáìlì tí a ṣe jáde láìfọwọ́ṣe, àwọn lockfile, àwọn àkójọ, àwọn ìtumọ̀ àti ìwé àkọsílẹ̀ nínú; ó jẹ́ ìwọ̀n àyípadà, kì í ṣe LOC tí a kọ. A dá àwọn tó dọ́gba ní ibi ìgé dúró.
### Àwọn commit tí GitHub fi mọ́ àwọn olùkópa
Bob.Hou 🏅 51 àtúnṣe tí a so mọ́ GitHub · wọ́n dọ́gba ní #10
Xiangzhe 🏅 51 àtúnṣe tí a so mọ́ GitHub · wọ́n dọ́gba ní #10
A tún ṣàyẹ̀wò ní 2026-08-24 06:14:31 UTC: àwọn àtúnṣe tí a so mọ́ GitHub gẹ́gẹ́ bí repository Contributors API ṣe ròyìn fún ẹ̀ka àkọ́kọ́ release/v3.8.50. API náà dá àwọn ìdánimọ̀ 525 padà (àwọn aṣàmúlò 415, bots 2, àwọn aláìlórúkọ 108); tábìlì yìí kò fi olùtọ́jú, bots àti àwọn ìdánimọ̀ aláìlórúkọ kún un, ó sì pa àwọn ipò ìdíje tí ó dọ́gba mọ́. Ó yàtọ̀ sí ìpele merged-PR tó wà lókè àti ìkànìyàn Git-metadata ti ènìyàn 639 tó wà nísàlẹ̀.
> 🙏 Àwọn ẹ̀yà, àtúnṣe àṣìṣe, àti ìmúdára amáyédẹrùn àwọn olùdásí wọ̀nyí jẹ́ **apá pàtàkì** nínú ohun tó mú kí OmniRoute ṣeé gbẹ́kẹ̀lé tó sì ní àwọn ẹ̀yà púpọ̀. Gbogbo pull request, gbogbo test case, àti gbogbo fáìlì ìtumọ̀ i18n ṣe pàtàkì. Àwọn ènìyàn bíi tiwọn ni wọ́n ń kọ́ open source.
---
## 💖 Àwọn Olùgbọ́wọ́
Ọpẹ́ àtọkànwá sí àwọn ènìyàn tí wọ́n ń fi owó ara wọn ṣe ìnáwó fún OmniRoute — gbogbo àfikún ń jẹ́ kí iṣẹ́ náà wà lọ́fẹ̀ẹ́, ní òmìnira, kí ó sì máa tẹ̀ síwájú.
… àti àwọn mìíràn tí wọ́n fẹ́ kí ìdánimọ̀ wọn wà ní ìkọ̀kọ̀ 💛A tún fìdí àwọn GitHub Sponsors ti gbangba múlẹ̀ ní 2026-08-24. Ipò activeOnly ti GitHub ló ń pinnu àwọn àmì aláṣiṣẹ́ lókè; a ṣì ń dúpẹ́ lọ́wọ́ àwọn olùtìlẹ́yìn ìgbà kan ti gbangba tí a ti sọ̀rọ̀ nípa wọn tẹ́lẹ̀, àwọn olùgbọ́wọ́ aládàáni sì ṣì wà láìlórúkọ.💖 Di olùgbọ́wọ́ → — gbogbo dọ́là ń jẹ́ kí OmniRoute wà lọ́fẹ̀ẹ́ àti ní òmìnira.
## 👥 Àwọn Olùkópa 600+
[](https://github.com/diegosouzapw/OmniRoute/graphs/contributors)
A ṣe àyẹ̀wò ní 2026-08-24 lórí ìpìlẹ̀ tí a dì mọ́ ac02c5b42f, a sì tún ṣàyẹ̀wò ní orí tuntun ti release/v3.8.50 tó jẹ́ dafb4ae808: àwọn ìdánimọ̀ Git ènìyàn 639 tí a ti ṣe déédé — 407 fara hàn gẹ́gẹ́ bí àwọn olùkọ àtúnṣe (pẹ̀lú olùtọ́jú), 232 sì fara hàn nínú àwọn àfikún Co-authored-by tí a sọ ní kedere nìkan. Ìkànìyàn náà ń ṣe àwọn orúkọ-ìdánimọ̀ noreply GitHub déédé, kò ka àwọn ìdánimọ̀ bot/aṣojú/iṣẹ́/àfikún-pò 26 sí, kò sì dapọ̀ àwọn àdírẹ́sì ímeèlì lasán nítorí pé àwọn orúkọ ìfihàn wọn bá ara wọn mu.
### Bí A Ṣe Lè Kópa
1. Ṣe fork ibi ìpamọ́ náà
2. Ṣẹ̀dá ẹ̀ka láti orí **aláṣiṣẹ́** `release/vX.Y.Z` (kì í ṣe `main`) — wo [Àwòṣe Ẹ̀ka àti Ìtújáde](docs/ops/BRANCHING_MODEL.md)
3. Ṣẹ̀dá ẹ̀ka àfikún rẹ (`git checkout -b feat/amazing-feature`)
4. Ṣe commit àwọn àyípadà rẹ (`git commit -m 'feat: add amazing feature'`)
5. Ṣe push sí ẹ̀ka náà (`git push origin feat/amazing-feature`)
6. Ṣí Pull Request kan pẹ̀lú **base = ẹ̀ka `release/vX.Y.Z` yẹn**
Wo [CONTRIBUTING.md](CONTRIBUTING.md) fún àwọn ìlànà ẹ̀kúnrẹ́rẹ́.
### Ṣíṣe Ìtújáde Ẹ̀yà Tuntun
```bash
# Ṣẹ̀dá ìtújáde kan — npm publish máa ṣẹlẹ̀ láìfọwọ́ṣe
VERSION=x.y.z
gh release create "v${VERSION}" --title "v${VERSION}" --generate-notes
```
## 📊 Àwọn Ìràwọ̀
## 🌍 StarMapper
## 🙏 Ọ̀pẹ́
OmniRoute dúró lórí èjìká àwọn òmìrán. Ó bẹ̀rẹ̀ gẹ́gẹ́ bí ẹ̀ka kan láti inú **[9router](https://github.com/decolua/9router)** àti àtúnkọ iṣẹ́ akanṣe Go **[CLIProxyAPI](https://github.com/router-for-me/CLIProxyAPI)** sí TypeScript — láti ibẹ̀ sì ni gbogbo ẹ̀ka-ètò tó wà nísàlẹ̀ ti gba ìmísí láti inú iṣẹ́ akanṣe orísun-ṣíṣí kan tó ti kọ́kọ́ ṣe é. Ọ̀kọ̀ọ̀kan wọn ló ṣe àgbékalẹ̀ apá pàtó kan nínú OmniRoute. Èyí ni ọ̀nà wa láti dúpẹ́ lọ́wọ́ gbogbo wọn. 🙏
> ⭐ a ṣàyẹ̀wò iye àwọn ìràwọ̀ nípasẹ̀ GitHub REST API ní August 24, 2026 — ẹ lọ fún àwọn iṣẹ́ akanṣe wọ̀nyí ní ìràwọ̀. Àwọn iye náà jẹ́ àwòrán pàtó tí a mú ní ọjọ́ yẹn, wọ́n sì máa yí padà bí ó ṣe yẹ.
### 🧬 Ìran & ẹnu-ọ̀nà
Ẹnubodè AI tí àkójọpọ̀ dátà ìdíyelé gbogbogbò rẹ̀ ń pèsè fún ìmúdójúìwọ̀n ìtọ́pasẹ̀ iye owó wa, tí àwòṣe ìṣọ̀kan olùpèsè rẹ̀ sì ṣe ìtọ́sọ́nà fún ìrìnàjò wa.
Orísun MIT tí a ṣàmúlò sínú afárá ChatGPT Web → Codex Responses tí a ṣàkójọ mọ́ inú rẹ̀, pẹ̀lú àwọn ohun ìbámu fún ìgbà aṣàwákiri, ìṣètò férémù ìdáhùn, ìlò àti ìṣàwárí wẹ́ẹ̀bù.
Àwọn àpẹẹrẹ tí a ṣí lọ sínú ìmúpadàbọ̀ ṣiṣàn, àwọn orúkọ-àpèjúwe tí kò ní ìrònú, ìṣàwárí wẹ́ẹ̀bù àfẹ́yinti, àwọn ààlà fèrèsé-asunwọ̀n, ìbòmọ́lẹ̀ àkọsílẹ̀ àti àwọn ìṣàn olùpilẹ̀ṣẹ̀ tí a mú lágbára.
Àwọn ìbámu àwòṣe Grok rẹ̀, olùṣẹ̀dá Statsig fake-TypeError, àwọn àiyípadà àìyẹsẹ̀ fún ìbéèrè àti ẹ̀rọ, àti olùṣàkóso ìdáhùn NDJSON ni a ṣàmúlò ní kíkún sínú olùṣiṣẹ́ Grok Web ti OmniRoute.
Orísun MIT ìpìlẹ̀ fún payload Grok àti àwọn àiyípadà àìyẹsẹ̀ ẹ̀rọ, olùṣẹ̀dá Statsig, àti olùṣàkóso result.response tí a gbé kọjá nípasẹ̀ TQZHR àti grok2api-merged.
Orísun àpapọ̀ tí grok2api-merged fún ní ìyìn fún fẹ́lẹ́fẹ́lẹ́ àkójọpọ̀ aṣojú rẹ̀; OmniRoute pa àkọsílẹ̀ ìran náà mọ́ ṣùgbọ́n kò sọ pé ó ṣí àkójọpọ̀ aṣojú náà wá sínú olùṣiṣẹ́ Grok Web rẹ̀ tí ó ní ààlà.
Ìmúṣẹ Grok Web ìpilẹ̀ṣẹ̀ ṣàyẹ̀wò àpẹrẹ upstream HTTP/aṣàwákiri rẹ̀; ọ̀nà HTTP tààrà rẹ̀ wá láti GrokProxy, nítorí náà a kò sọ pé a ṣe ìṣípò kóòdù olómìnira kankan.
Àkànṣe “kí ló dé tí a fi ń lo token púpọ̀ nígbà tí token díẹ̀ lè ṣe iṣẹ́ náà” tó gbajúgbajà — ìmọ̀ràn ọ̀rọ̀-àpáta rẹ̀ ló ń ṣe agbára fún ipò ìfúnpọ̀ boṣewa wa àti àwọn òfin 30+ fún yíyọ ọ̀rọ̀-àfikún kúrò/ìṣókí.
Ìwádìí ìfúnpọ̀ prompt (LLMLingua / LLMLingua-2) — ó fún ẹ́ńjìnnì llmlingua wa tó jẹ́ async, tó dáàbò bo kóòdù, tí ó sì ń bá a lọ bí ìṣòro bá ṣẹlẹ̀ ní ìmísí.
Ọgbọ́n YAGNI-coder “olùgbéejáde àgbà ọ̀lẹ” tó gbajúgbajà — ó fún Àṣà Àbájáde less-code wa ní ìmísí: ìdarí sí ìyípadà tó kéré jù tí ó sì ń ṣiṣẹ́, tó ń dín _kóòdù tí a ṣẹ̀dá_ kù (ẹgbẹ́ ojú-ìwọ̀n àbájáde fún ọ̀rọ̀ ṣókí Caveman).
Ìfúnpọ̀ àbájáde tó mọ àkóónú, fún irú fáìlì kọ̀ọ̀kan, pẹ̀lú dídáwọ́ tó mọ ìkùnà — ó fìdí ìtọ́ka wa fún irú kọ̀ọ̀kan àti fífo ìjèrè tó kéré jù sílẹ̀ múlẹ̀.
Rust JSON oníwọ̀n + ìmúpadàbọ̀ tó dá lórí àkóónú + yíyọ àdáwòkọ kúrò láàárín àwọn ìfiránṣẹ́ — ó fìdí àpẹrẹ ẹ́ńjìnnì headroom/ccr/session-dedup wa àti òfin àìyípadà tó dúró ṣinṣin fún kaṣe pé “fọ́ọ̀mù tí a fún pọ̀ kò gbára lé ipò” múlẹ̀.
Ìdásẹ́wọ̀n/ìtúpalẹ̀ MITM ti ìrìnàjò dátà olùrànlọ́wọ́-kóòdù ↔ LLM ló ṣe ìtọ́sọ́nà àwọn àìní ìbẹ̀rẹ̀ fún Traffic Inspector. Àwọn módù mẹ́rin tí a ti ṣe àwárí rẹ̀ tẹ́lẹ̀ — ìṣọ̀kan SSE, ìṣọ̀kan ìjíròrò, ìbòmọ́lẹ̀ àṣírí àti ìmọ́tótó àkọlé — ni a ti fi àwọn ìmúlò clean-room olómìnira tí a gbé karí àwọn òṣùwọ̀n ìlànà gbogbogbò rọ́pò. Àwọn ojú-ìṣiṣẹ́ host-passthrough méjì (passthrough.ts àti _internal/bypass.cjs) ṣì jẹ́ àwọn ìmúlò abẹ́nú OmniRoute tí a pín sí ẹ̀ka lọ́nà olómìnira; a kò tún wọn kọ gẹ́gẹ́ bí apá kan ìrọ́pò náà.
Ìdarí aṣojú aláìhàn fún ìlànà-ìṣiṣẹ́ kọ̀ọ̀kan — ó fún ìfopin sí MITM wa tí ìkọlù kò lè bà jẹ́, àwọn àsìkò-ipari àìṣiṣẹ́ socket, ìdánimọ̀ ìlànà-ìṣiṣẹ́ /proc àti ìmúdá TPROXY ní ìmísí.
Àkójọ tí a fara balẹ̀ ṣàkójọ ti àwọn ilé-ìkàwé tó ní ààbò látìpilẹ̀, èyí tó ń darí àwọn yíyàn ààbò wa (Helmet.js, DOMPurify, ssrf-req-filter, safe-regex, Google Tink).
Ó fún ìmúkúrò àwọn ìbéèrè àdáwòkọ, ìyípadà-padà pàjáwìrì tí kò ná owó, àwọn ọgbọ́n Auto-Combo tí a lè so mọ́ ọn, àti ìpínsọ̀rí èrò inú onírúurú èdè ní ìmísí.