# 🚀 OmniRoute — Besplatni AI pristupnik
**Izradio [Diego Souza](https://github.com/diegosouzapw)**
## 💰 ~1.62B tokena mjesečno kroz besplatne razine trećih strana
> **Koristite vlastite račune kod pružatelja usluga.** Ovo je procijenjeni zbroj zasebno prihvatljivih besplatnih razina trećih strana, a ne dodjela tokena od strane OmniRoutea. Registrirajte se, pribavite vjerodajnice gdje je to potrebno i povežite pružatelje usluga koje možete koristiti; svaki pružatelj sam određuje svoja ograničenja, dostupnost i uvjete.
>
> Ručno kombiniranje besplatnih razina je naporno — deseci SDK-ova, deseci ograničenja brzine i nikakva predodžba o tome koliko zapravo imate. OmniRoute katalogizira **465 unosa besplatnih razina kroz 34 ključa ponavljajućih skupova** i izračunava istaknuti broj tokena iz **17 skupova s objavljenim pozitivnim mjesečnim budžetom te pet Groqovih ograničenja po modelu**, dedupliciranih prema dijeljenom skupu. Kvote koje se otvaraju tek nakon regionalne provjere identiteta (danas: ModelScope) prikazane su zasebno, +~6M nakon regionalne provjere identiteta, i nikada se ne zbrajaju u istaknuti broj. Rezultat ostaje vidljiv na nadzornoj ploči (`/dashboard/free-tiers`).
> Animirani sažetak aktivne stranice `/dashboard/free-tiers`. Potpuna metodologija (deduplikacija skupova, razine kredita, uvjeti pružatelja): **[docs/reference/FREE_TIERS.md](docs/reference/FREE_TIERS.md)**.
>
> Ove se brojke ponovno provjeravaju svaka dva tjedna u odnosu na aktivni katalog i **mijenjaju se u oba smjera** — pružatelj ukine besplatnu razinu i broj se smanji; pojavi se novi i broj poraste. Objavljujemo ono što katalog stvarno izračuna, nikada zaokruženi najbolji mogući scenarij.
⭐ Označite repozitorij zvjezdicom ako vam je OMNIROUTE pomogao uštedjeti novac i olakšati posao.
[](https://github.com/diegosouzapw/OmniRoute)
[](https://www.star-history.com/diegosouzapw/omniroute)
[](https://olud.ai/project/diegosouzapw-omniroute.html)
### 💬 Pridružite se zajednici
**👋 Pratite održavatelja — prvi saznajte za nove pružatelje, izdanja i savjete:**
[](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)
**Pitanja, savjeti o pružateljima, plan razvoja i podrška → [Discord](https://discord.gg/U47eFqAXCn) · [Telegram](https://t.me/omnirouteOficial) · WhatsApp [🌍 Global](https://chat.whatsapp.com/FvuCbrpZmQ6I85n2vW5QIC?s=cl&p=a&mlu=4) / [🇧🇷 Brazil](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)**
## 📈 Gateway i dalje raste
| | v3.8.50 | **v3.8.51** | `v3.8.54+` |
| ------------------------------------- | :-------------------: | :---------: | :-------------------: |
| 🌐 Pružatelji | 352 | **358** | 388 |
| 🧠 Jedinstveni ID-ovi chat modela | 1320 | **1374** | 1491 |
| 🖼️ Most modaliteta | 🆕 vid + zvuk + video | ✓ | ✓ |
| 📡 Besplatni katalog Radara | 🆕 uz prijavu | ✓ | ✓ |
| ⚖️ Raspoređivanje uz uvažavanje kvota | 🆕 Quota-Share | ✓ | ✓ |
| 📊 Telemetrija kvota | 🆕 uživo | ✓ | ✓ |
| 🧰 Način rada bez sučelja | — | — | 🆕 `serve --headless` |
| 🛤️ LTS infrastruktura tračnice | — | — | 🆕 kanali izdanja |
| 🔎 API za otkrivanje modela | — | — | 🆕 `/v1/models/query` |
**→ [Plan puta](ROADMAP.md) — vožnja tračnicom do `v3.9.0 LTS`**
## 🆓 Instalirajte, povežite pružatelja, a zatim usmjeravajte kroz jednu krajnju točku
```bash
# Nakon povezivanja pružatelja kopirajte svoj OmniRoute ključ iz Nadzorne ploče → Krajnje točke:
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` treba prihvatljivu rutu. Nova instalacija možda nema nijedno prihvatljivo odredište bez ključa, a pružatelj bez ključa može odbiti klijente trećih strana. Pružatelji označeni s `tos: avoid`, uključujući Kiro, prema zadanim su postavkama isključeni iz automatskog usmjeravanja; povezivanje računa ne poništava tu postavku. Prije odabira pružatelja pogledajte [Vodič kroz besplatne pakete](docs/getting-started/FREE-TIERS-GUIDE.md).📦 Skripte za brzi početak koje možete kopirati i zalijepiti za **Python, Node.js, PHP i cURL** → [`examples/quickstart/`](examples/quickstart/)
# 💥 Obećanje
# 🤔 Zašto OmniRoute?
## 🤝 Uz podršku naših prijatelja otvorenog koda
> **Želite li nam se pridružiti kao prijatelj otvorenog koda?** Ovo su tvrtke koje podržavaju otvoreni kod i pomažu da se OmniRoute nastavi razvijati — a mi javno objavljujemo kamo odlazi svaki token koji nam daju. Javite nam se: [diegosouza.pw@outlook.com](mailto:diegosouza.pw@outlook.com)
Kimi Moonshot AI
Hvala Kimi (Moonshot AI), našem osnivačkom prijatelju otvorenog koda, na podršci ovom projektu! Kimi je AI laboratorij koji stoji iza obitelji modela otvorenih težina K2 i K3 — Kimi K3 pruža kontekstni prozor od 1M tokena, izvorne mogućnosti obrade slike i programiranje na razini vodećih modela uz djelić cijene zatvorenih modela te odmah radi s alatima Claude Code, Codex i svim alatima za programiranje koje OmniRoute podržava.
Što omogućuje Kimijeva podrška: Kimijevi API krediti pokreću OmniRouteov proces izdanja potvrđen umjetnom inteligencijom — fazu provjere spajanja koju pokreće Kimi K3, koja pregledava svaki zahtjev za povlačenje prije objave — kao i svakodnevni razvoj značajki. Prvorazredna podrška za Kimi dostupna je kroz oba kanala: izravni Kimi API (kimi-k3) i programerski plan Kimi Code (OAuth i API ključ). OmniRoute je također prvi brazilski projekt otvorenog koda u Kimijevu programu podrške. Nabavite Kimi API ključ uz 15% dodatnih kredita →
Cheaper Inference cheaperinference.com
Hvala Cheaper Inference, OmniRouteovu prijatelju otvorenog koda, na podršci ovom projektu! Cheaper Inference pristupnik je rangiran prema troškovima koji preprodaje 42 vrhunska modela — Claude, GPT-5.x, Gemini, Kimi K3, GLM, DeepSeek, Grok i MiniMax — putem jedne krajnje točke kompatibilne s OpenAI-jem, usmjeravajući svaki zahtjev najjeftinijem prikladnom pružatelju bez naplate iznosa višeg od cjenika autora modela.
Prvorazredna podrška u OmniRouteu: dovršavanje razgovora, izvorna krajnja točka /v1/responses, obrada slike, pozivanje alata i 3 modela za slike (grok-imagine, nano-banana-pro, nano-banana-2, dostupna kao cheaperinference/<model>). Nabavite API ključ →
Veze označene s aff=omniroute partnerske su veze. Financiraju projekt bez dodatnih troškova za vas. 🎟️ Partnerske promocije — besplatni kuponi pružatelja pri registraciji koje ne sponzoriramo (kliknite za proširenje)Ovaj je odjeljak namijenjen isključivo kodovima za preporuke/kupone. Sponzorirana partnerstva nalaze se u prethodnom odjeljku 🤝 Uz podršku naših prijatelja otvorenog koda. OmniRoute nema sponzorski ni partnerski odnos s ovdje navedenim pružateljima — ovo su javni kuponi koje svatko može upotrijebiti.
AgentRouter agentrouter.org
AgentRouter — partnerska registracija · $100 besplatnih kredita pri registraciji (besplatan poslužitelj, očekujte veću latenciju — najbolje za testiranje, ne za produkciju). Prvorazredna podrška u OmniRouteu od verzije v3.8.50: dovršavanje razgovora, format prijenosa kompatibilan s Anthropicom i put kompatibilan s OpenAI-jem. Dostupni modeli uključuju claude-opus-4-8, claude-opus-5, gpt-5.6-sol i druge. Preuzmite svojih $100 →
⚠️ Partnerska veza — OmniRoute nema sponzorski ni partnerski odnos s ovim pružateljem.
Znate li drugog pružatelja s izdašnim besplatnim kuponom pri registraciji od kojeg bi korisnici OmniRoutea imali koristi? Otvorite prijavu problema i dodat ćemo ga ovdje.
## 🎯 Kombinacije — Glavna značajka
> **Kombinacija** je lanac modela između kojih OmniRoute usmjerava **automatski**. Ako se kvota potroši, pružatelj zakaže ili troškovi naglo porastu, kombinacija može prijeći na sljedeći prihvatljiv i ispravan model. 🛡️
### ⚡ Bez konfiguracije — samo upotrijebite `auto`
Nema potrebe za izradom kombinacije. Postavite svoj model na `auto` (ili neku varijantu) i OmniRoute će izgraditi virtualnu kombinaciju od vaših povezanih pružatelja, ocijenjenu u stvarnom vremenu:
ID modela
Što optimizira
auto
🎯 Uravnotežena zadana opcija (LKGP — ostaje uz vašeg posljednjeg pouzdanog pružatelja)
auto/coding
🧑💻 Ponderi usmjereni na kvalitetu za generiranje koda
auto/fast
⚡ Najprije najniža latencija
auto/cheap
💰 Najprije najniža cijena po tokenu
auto/subscription
🎟️ Samo kvota pretplate koju već plaćate — sigurno se zaustavlja i nikad ne prelazi na naplativu zamjensku opciju (vodič)
auto/thrifty
🪜 Najprije kvota tarife, a zatim korak po korak prema najjeftinijim plaćenim opcijama — povratak na tarifu nakon što se kvota obnovi (vodič)
auto/offline
🔋 Najprije najveća rezerva kvote / ograničenja brzine
auto/smart
🔭 Kvaliteta na prvom mjestu + 10% istraživanja radi otkrivanja boljih modela
auto/lkgp
📌 Izričito zadržavanje uz posljednjeg poznatog pouzdanog pružatelja
auto/chaos
🧪 Paralelno slanje upita panelu modela (jedan po pružatelju, zadano 5), uz vraćanje jednog odgovora; jedan poziv prema nadređenoj usluzi po modelu panela, bez ubrizgavanja pogrešaka
##
### 🔀 Ili izradite vlastitu — 20 strategija usmjeravanja
Svih **20** strategija — kombinirajte ih po koraku kombinacije:
#
Strategija
Što radi
1
priority
Uređeni popis s prvim ciljem kao prioritetom — iscrpite svaki prije prelaska na sljedeći 🥇
2
fill-first
Potpuno iskoristite kvotu svakog cilja prije prelaska na sljedeći
3
weighted
Ponderirani nasumični odabir prema ponderu svakog cilja
4
round-robin
Kružno prolazite kroz ciljeve redom
5
p2c
Nasumično uravnoteženje opterećenja metodom odabira između dviju opcija
6
least-used
Odaberite cilj s trenutačno najmanjim opterećenjem
7
random
Jednolik nasumični odabir (bez duplikata)
8
strict-random
Nasumični odabir bez uklanjanja ponavljanja 🎲
9
cost-optimized
Smanjuje trošak po zahtjevu na temelju aktualnih cijena iz kataloga 💸
10
headroom
Odaberite cilj s najviše preostale kvote
11
quota-weighted
Preskače iscrpljene račune, a zatim odabire razmjerno preostaloj kvoti ÷ trenutačnom opterećenju — postojeći razgovori ostaju prikvačeni ⚖️
12
reset-window
Daje prednost cilju čije se razdoblje kvote najranije obnavlja
13
reset-aware
Rangira prema vremenu obnove kvote — najprije kratka razdoblja 📊
14
context-relay
Predaje kontekst između ciljeva za duge razgovore 🧠
15
context-optimized
Odabire cilj koji najbolje odgovara trenutačnoj veličini konteksta
16
cache-optimized
Prikvačuje svaki ponovno upotrebljivi prefiks upita na isti račun — povećava broj pogodaka u predmemoriji upita 🎯
17
lkgp
Posljednja poznata pouzdana putanja — prikvačuje se na posljednjeg uspješnog pružatelja, a zatim prelazi na rezervna pravila
18
auto
Ocjenjivanje u stvarnom vremenu prema 16 čimbenika za svaku vezu 🤖
19
fusion
Šalje upite panelu modela + model-sudac sintetizira jedan odgovor 🧬
20
pipeline
Lančano povezuje korake — izlaz svakog cilja prosljeđuje se sljedećem 🔗
Mehanizam Auto-Combo ocjenjuje svakog kandidata prema **16 čimbenika** (stanje, kvota, trošak, latencija, prikladnost za zadatak, kvaliteta, dostupnost sesije…) — pogledajte [`docs/routing/AUTO-COMBO.md`](docs/routing/AUTO-COMBO.md).
##
### 🧱 Otpornost je ugrađena (3 neovisna sloja)
📖 [Mehanizam Auto-Combo](docs/routing/AUTO-COMBO.md) · [Vodič za otpornost](docs/architecture/RESILIENCE_GUIDE.md)
## 🏆 Po čemu se OmniRoute izdvaja
📊 Cjelovita metodologija & pojedinosti o svakoj značajci u usporedbi s 9router, OpenRouter, CLIProxyAPI & LiteLLM → [`docs/comparison/OMNIROUTE_VS_ALTERNATIVES.md`](docs/comparison/OMNIROUTE_VS_ALTERNATIVES.md)
## 💚 Podržite OmniRoute
OmniRoute je licenciran pod licencom MIT i održava se otvoreno. Ako vam štedi vrijeme ili novac, evo kako možete pomoći da ostane neovisan — odaberite ono što vam odgovara. Sponzorstvo nikada ne utječe na prioritet usmjeravanja; ono donosi vidljivost, a ne viši poredak.
**🇧🇷 PIX** — trenutačno, bez naknada (Brazil)
Ključ (nasumični): `5d865059-bc44-483a-962d-43ceb80126eb`
PIX za kopiranje i lijepljenje:
```
00020101021126580014br.gov.bcb.pix01365d865059-bc44-483a-962d-43ceb80126eb5204000053039865802BR5922OMNIROUTE CONTRIBUICAO6006BRASIL62070503***630475DD
```
₿ Kriptovalute — BTC · ETH · USDT-TRC20 · USDC-Solana (kliknite za proširenje)
₿ BTC
Bitcoin (SegWit)
bc1qh00smz004sy85wyl28v77tenkt3ckl6eaep7fd
Ξ ETH
Ethereum (ERC20)
0x64Cf6B68A6Ff34288e89172950a2d00102337a84
₮ USDT
Tron (TRC20)
TKAF41JpuQrHbKTnsQa9svJE2T192Hvsc2
$ USDC
Solana
2emNNZzVVWQc3FQ2wk9M6qXUQmW8AKdjjL174fXR28Tu
⚠️ Svaku valutu šaljite samo putem prikazane mreže — slanje putem pogrešne mreže može dovesti do gubitka sredstava.
🐛 Pronašli ste pogrešku ili imate povratne informacije? Otvorite [raspravu](https://github.com/diegosouzapw/OmniRoute/discussions).
Napomene za razvojne programere: Projekt tijekom npm install/postinstall može generirati lokalnu datoteku .env radi praktičnosti razvojnih programera. Ta se datoteka namjerno ignorira putem .gitignore (pogledajte .gitignore) i nikada se ne smije predati u repozitorij — ako je slučajno predana, promijenite sve izložene tajne i uklonite datoteku iz povijesti. Smjernice za upravljanje datotekama lokalnog okruženja i tajnama potražite u docs/DEVELOPER-ENVIRONMENT.md.
## 📡 OmniRoute Radar
Glavna brojka za besplatnu razinu ostaje **~1.62B tokena/mjesečno** iz gore dokumentiranog
kataloga s uklonjenim duplikatima među skupovima. Privremeni krediti za registraciju kod pružatelja mogu zasebno povećati prvi
mjesec na **~2.22B**. Radar je neobavezan, potpisan kataloški sloj za korisnike koji žele ažurniju
dostupnost besplatnih modela između izdanja OmniRoutea; katalog zajednice i sve postojeće besplatne
značajke ostaju besplatni.
Podržavatelji mogu dobiti aktualni katalog i dodatne mogućnosti pružatelja. Njegova zasebna,
promjenjiva gornja granica iznosi **najviše približno 3B tokena/mjesečno**, ovisno o dostupnosti pružatelja.
Ta gornja granica nije zajamčena: pružatelji u bilo kojem trenutku mogu promijeniti kvote, uvjete prihvatljivosti, modele ili regije.
Radar zahtijeva izričito uključivanje i koristi samo GET zahtjeve. Klijent OmniRoute ne prenosi upite, promet, konfiguraciju
pružatelja, telemetriju korištenja ni lokalno stanje odbacivanja obavijesti. Saznajte više o uvjetima prihvatljivosti i
trenutačnom katalogu na **[radar.omniroute.online/planos](https://radar.omniroute.online/planos)**.
## ✨ Što je novo
> Najnovije istaknute značajke iz razdoblja **v3.8.20 → v3.8.54**. Cijela povijest nalazi se u [`CHANGELOG.md`](CHANGELOG.md).
- **⚖️ Usmjeravanje `quota-weighted`** — 20. strategija kombinacija preskače iscrpljene račune, a zatim među preostalima odabire razmjerno omjeru preostale kvote ÷ opterećenja zahtjevima u tijeku, pri čemu postojeći razgovori ostaju vezani uz isti račun. → [Automatske kombinacije](docs/routing/AUTO-COMBO.md)
- **🧰 Način rada bez sučelja** — `omniroute serve --headless` (ili `OMNIROUTE_HEADLESS=1`) pokreće samo proxy mehanizam `/v1/*`, dok su nadzorna ploča i podsustavi dostupni samo nadzornoj ploči isključeni. → [Način rada bez sučelja](docs/guides/HEADLESS.md)
- **🔎 Otkrivanje modela** — `/v1/models` filtrira prema mogućnostima, kontekstu, vrsti i tekstu, a `POST /v1/models/query` vraća kratak deterministički popis kandidata s istom vidljivošću po ključu. → [Referenca API-ja](docs/reference/API_REFERENCE.md)
- **🔑 Upravljanje usmjeravanjem po ključu** — API ključ možete vezati uz jedan model ili kombinaciju pomoću `forcedModel`, te atomski dodavati ili uklanjati modele i kombinacije ključa (`/api/keys/{id}/access`). → [Referenca API-ja](docs/reference/API_REFERENCE.md) · [OpenAPI](docs/openapi.yaml)
- **🛡️ Preciznije kontrole PII-ja** — odabir po vrsti, do 20 provjerenih prilagođenih obrazaca maskiranja i brojači otkrivanja po vrsti; samo maskiranje i dalje je opcionalno. → [Zaštitne mjere](docs/security/GUARDRAILS.md)
- **🌍 67 jezika** — nadzorna ploča, zrcala dokumentacije i CLI, pri čemu `npm run i18n:add-locale` dodaje jezik svugdje jednom naredbom. → [Vodič za i18n](docs/guides/I18N.md)
- **🎛️ OmniConductor** — ulazno A2A delegiranje vašoj floti agenata, Conductor vještine na Agent Cardu i ploča nadzorne ploče s glasovnim razgovorom Faro push-to-talk. → [A2A poslužitelj](docs/frameworks/A2A-SERVER.md)
- **🛂 Prilagodljivi prihvat i zaštita od preopterećenja** — zahtjevi za zahtjevne razgovore stavljaju se u red čekanja umjesto vraćanja pogreške 503, uz atomske klizne zakupnine RPM-a po vezi. → [Vodič za otpornost](docs/architecture/RESILIENCE_GUIDE.md)
- **🗂️ Kanonski redoslijed `/v1/models`** — jedan neprekinuti blok grupiran prema pružatelju za svakog pružatelja (kombinacije su prve), stabilan u svim izvorima kataloga. → [Referenca API-ja](docs/reference/API_REFERENCE.md)
- **🗜️ Ojačana kompresija** — zaštita od prekomjerne ekspanzije uključena je prema zadanim postavkama, Caveman paketi za DE / FR / JA + kineski (wényán), RTK filtri za Gradle i .NET. → [Kompresija](docs/compression/COMPRESSION_ENGINES.md)
- **💸 Pošten trošak s fiksnom tarifom** — pružatelji pretplata / coding-planova u analitici troškova prikazuju **$0**; proračun, kvota i usmjeravanje i dalje daju procjene. → [Referenca API-ja](docs/reference/API_REFERENCE.md)
- **⚖️ Usmjeravanje Quota-Share** — ravnomjerno dijeli kvotu zajedničkog računa među objedinjenim ključevima i učinkovito koristi resurse tako da se neaktivni dijelovi posuđuju drugima. → [Vodič za otpornost](docs/architecture/RESILIENCE_GUIDE.md)
- **🤖 Postavljanje CLI-ja/agenata jednom naredbom** — 15 registriranih naredbi `setup-*`; `omniroute run` pokreće 7 CLI-ja (Claude Code, Codex, Aider, Goose, OpenCode, Qwen Code, Gemini CLI); `omniroute configure` podržava 11 ciljeva s interaktivnim biračem pružatelja i modela te omiljenim stavkama po kontekstu. → [CLI integracije](docs/guides/CLI-INTEGRATIONS.md)
- **🛰️ Udaljeni način rada** — upravljajte udaljenim OmniRouteom pomoću tokena ograničenih opsegom (`connect` / `contexts` / `tokens`) + pomoćnog programa `antigravity` za OAuth pri instalacijama na VPS-u. → [Udaljeni način rada](docs/guides/REMOTE-MODE.md)
- **🧭 Pametnije automatsko usmjeravanje** — kombinacije `auto/:`, **Fusion** (panel modela + procjenjivač), usmjeravanje svjesno zadatka, nadjačavanja modela / načina rada / USD proračuna po zahtjevu. → [Automatske kombinacije](docs/routing/AUTO-COMBO.md)
- **🗜️ Proširiva kompresija** — 12 kombinabilnih mehanizama + Compression Studios: LLMLingua-2, Ultra u dvije razine, omniglyph, provjera vjernosti po koraku, GCF v3.2, uređivač s povlačenjem i promjenom redoslijeda. → [Kompresija](docs/compression/COMPRESSION_ENGINES.md)
- **🕵️ Transparentno MITM dešifriranje (TPROXY)** — CLI-ji za hvatanje prometa koji zanemaruju proxy varijable okruženja, uz instalacijski program CA-a po SNI-ju + spremišta pouzdanja. → [MITM/TPROXY](docs/security/MITM-TPROXY-DECRYPT.md)
- **💸 Telemetrija troškova svugdje** — zaglavlja troškova/korištenja `X-OmniRoute-*` na svakoj krajnjoj točki, zaglavlje uštede od pogodaka predmemorije i kvote potrošnje u USD-u po ključu. → [Referenca API-ja](docs/reference/API_REFERENCE.md)
- **🧠 Memorija pod vašom kontrolom** — prema zadanim je postavkama isključena, uz opcionalnu vektorsku kvantizaciju int8 + tipizirano slabljenje te `x-omniroute-no-memory` po zahtjevu. → [Memorija](docs/frameworks/MEMORY.md)
- **🛡️ Sigurnost** — zaštita od ubrizgavanja upita na svakoj LLM ruti (red-team paket), opcionalna zaštita maskiranja vjerodajnica (redigira procurjele API ključeve/tajne u oba smjera), besplatno web-pretraživanje DuckDuckGo kao krajnja opcija i neobavezna OIDC prijava za nadzornu ploču (prijava lozinkom uvijek ostaje dostupna). → [Zaštitne mjere](docs/security/GUARDRAILS.md)
- **🖼️ Nove krajnje točke** — `/v1/ocr` (Mistral OCR) i `/v1/audio/translations` (u stilu Whispera) zaokružuju medijski sloj. → [Referenca API-ja](docs/reference/API_REFERENCE.md)
- **🎨 Generiranje slika / videozapisa / zvuka** — jedan API za medije: xAI Grok Imagine i Novita AI video, ComfyUI, Magnific, Adobe Firefly, Segmind te pružatelji govora poput ElevenLabsa. → [Referenca API-ja](docs/reference/API_REFERENCE.md)
- **🌍 Implementacija i operacije** — `basePath` obrnutog proxyja, automatsko otkrivanje jezika preglednika, praćenje uređaja po ključu, MITM povjerenje bez root ovlasti, lokalizacija zh-TW. → [Okruženje](docs/reference/ENVIRONMENT.md)
- **🤝 Više pružatelja i agenata** — agenti u oblaku (Codex Cloud, Cursor, Devin, Jules), Grok Build (xAI) s prijavom putem preglednika + OAuth, prvoklasna kartica za Ollamu, Claude Opus 5 i Sonnet 5, službeno partnerstvo s Kimi (Code/Web/Moonshot), Zed, Requesty, SenseNova, Yuanbao, Agnes AI… i osvježeni **katalog s 388 pružateljem**. → [Pružatelji](docs/reference/PROVIDER_REFERENCE.md)
- **📡 Transparentnost usmjeravanja** — svaki odgovor sadrži zaglavlje `X-OmniRoute-Decision` koje navodi strategiju/pružatelja/latenciju koji su ga poslužili, nova strategija kombinacije `cache-optimized` + faktor usmjeravanja `cacheAffinity` u Automatskim kombinacijama vraća ponovljene zahtjeve vezi koja sadrži predmemorirani prefiks, a krajnja točka samo za čitanje `/v1/auto-combo/{channel}/candidates` izlaže aktivni skup kandidata kanala `auto/*`. → [Automatske kombinacije](docs/routing/AUTO-COMBO.md).
- **⚡ Lokalne performanse i infrastruktura** — lokalni Redis jednim klikom, implementatori releja za Cloudflare Workers / Deno Deploy, Bifrost i Mux kao nadzirane ugrađene usluge. → [Ugrađene usluge](docs/frameworks/EMBEDDED-SERVICES.md)
- **🧩 Također uključeno** — okvir za dodatke i tržnica, okviri vještina Omni/Agent/GitHub, integracija s trezorom Obsidiana (22 MCP alata), API-ji Batch i Files kompatibilni s OpenAI-jem, semantička predmemorija odgovora, gamifikacija s ljestvicama, otkrivanje ACP agenata (15 ugrađenih agenata), zakazani izvoz zapisnika u BigQuery, paralelno grananje prema više modela `auto/chaos`, most za Telegram bota, upravitelj verzija unutar aplikacije i poredak besplatnih pružatelja usluga LMArena-ELO. → [Dokumentacija](docs/README.md)
## 🤖 Kompatibilni CLI-ji i koderski agenti
> Jedna konfiguracija — `http://localhost:20128/v1` — i **svaki** AI IDE ili CLI radi na besplatnim i povoljnim modelima.
+ radi i s · Agent Deck · Kiro · Command Code · Antigravity · Windsurf · AMP · bilo kojim alatom kompatibilnim s OpenAI
📖 Postavljanje za svaki alat pojedinačno za svih 39 alata (28 CLI Code + 11 CLI Agenti) → [`docs/reference/CLI-TOOLS.md`](docs/reference/CLI-TOOLS.md) · 🧩 OpenCode dodatak → [`@omniroute/opencode-provider`](https://www.npmjs.com/package/@omniroute/opencode-provider)
**Pokrenite bilo koji podržani CLI putem OmniRoute jednom naredbom** — bez pisanih konfiguracijskih datoteka,
povjerljive informacije se ubrizgavaju po procesu, Qwen/Gemini dobivaju privremeni izolirani 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"
# Ili odaberite provider+model interaktivno i napišite vlastitu konfiguraciju alata:
omniroute configure codex # također: claude opencode qwen aider goose gemini cline continue kilo 5dive
```
Svaka naredba poštuje aktivni udaljeni kontekst (`omniroute connect `), `--dry-run`
prikazuje točno okruženje/argumente bez izvršavanja, a `--api-key-env NAME` čuva tajne izvan
povijesti vaše ljuske. → [CLI Integracije](docs/guides/CLI-INTEGRATIONS.md)
## 🌐 388 pružatelj AI usluga — 153 označena u katalogu kao besplatna
> **388 registrirani pružatelj** u kanonskim zbirkama za chat, medije, pretraživanje, lokalne usluge, agente u oblaku i sustav, uključujući **153 pružatelja s metapodacima za otkrivanje `hasFree: true`**. Registar chat modela obuhvaća **239 pružatelja / 3,059 različitih parova pružatelj-model / 1,475 neobrađenih ID-ova modela**; zasebni katalog besplatnih kvota ima **471 redak po modelu**, **34 ponavljajuća skupa** i **52 pružatelja s ponavljajućom/besplatnom uslugom bez ključa, trajno besplatna**. Ti su nazivnici namjerno različiti; definicije i izračuni s deduplikacijom skupova dostupni su u dokumentima [Referenca pružatelja](docs/reference/PROVIDER_REFERENCE.md) i [Besplatne razine](docs/reference/FREE_TIERS.md).
### 🏢 Svaki veliki laboratorij — kroz jednu krajnju točku
OpenAI
Anthropic
Gemini
xAI Grok
DeepSeek
Mistral
Qwen
Meta Llama
Groq
NVIDIA
MiniMax
Cohere
Perplexity
HuggingFace
Together
Fireworks
Cloudflare
Baidu
…i još 350+ — svaka se ikona uživo dohvaća iz kataloga pružatelja na nadzornoj ploči. 📖 [Referenca pružatelja](docs/reference/PROVIDER_REFERENCE.md)
### 🆓 Besplatno zauvijek — 0 $, bez kartice
OpenCode Zen DeepSeek V4, Nemotron 3 Bez ograničenja broja tokena
Kilo Code Automatsko usmjeravanje, Tencent Hy3 Besplatno zauvijek
### 🧩 Novo: OmniRoute unutar izvornog Copilot Chata VS koda
> Nema nove bočne trake, nema novog chata UI — svaki model OmniRoute poslužuje pojavljuje se izravno u**Copilot alat za odabir modela chata koji već koristite** . Od VS koda 1.122, modeli pružatelja usluga rade bez GitHub prijave ili Copilot pretplate — način rada agenta, pozivanje alata i vizija, besplatno.
Instalirajte** [OmniCopilot](https://github.com/diegosouzapw/OmniCopilot)** proširenje, usmjerite ga na svoj OmniRoute poslužitelj (zadano je `localhost:20128`), zatim otvorite Copilot Chat → odabirač modela →** Upravljanje modelima…** →**OmniRoute** .
Iz uređivača: otvorite** Ekstenzije** pogled, pretraga** "OmniRoute"** , kliknite** Instalirati** — radi na isti način u obje trgovine. Izvor, izdanja i izdavački zbornik uživo na [diegosouzapw/OmniCopilot](https://github.com/diegosouzapw/OmniCopilot).
📖 [VS kod Copilot Vodič za chat](docs/guides/VSCODE-COPILOT.md) — postavljanje, što pokazuje birač, nadzorna ploča u kartici, rješavanje problema
### 🎩 Novo: OmniRouteTray — vaš gateway, živi u traci izbornika
> `omniroute serve` je najsretniji kad je uvijek uključen.** [OmniRouteTray](https://github.com/zoispag/omniroute-tray)** pretvara to u aplikaciju trake izbornika za postavljanje i zaboravljanje za macOS: pokreće poslužitelj, održava ga živim tijekom ponovnih pokretanja, ažurira ga na mjestu i stavlja vaš proračun tokena uživo na jedan klik —** nijedan prozor terminala nije otvoren, nema `npm install -g omniroute` za čuvanje djece.**
Izgrađen s [Tauri v2](https://v2.tauri.app/) (Rust jezgra veličine pogreške zaokruživanja), isporučuje vlastito potpisano vrijeme izvođenja Node 24 i upravlja OmniRoute instalacijom u vlasništvu aplikacije, tako da se nikada ne bori s vašim globalnim `node`/`bun`. To** dijeli vašu postojeću `~/.omniroute/` konfiguraciju i bazu podataka** — pa to je isti OmniRoute koji već trčite, samo sa šeširom. 🎩
Što radi
Kako
🟢 Nadzire poslužitelj
Pokreće omniroute serve , usvaja već pokrenutu instancu umjesto da je duplicira
📊 Brzi pregled upotrebe uživo
Trake kvota pružatelja, Claude session/weekly ograničenja s odbrojavanjem za poništavanje, 30-dnevna analiza troškova
🔄 Automatsko ažuriranje na mjestu
Postupna instalacija, atomic swap, vraćanje u slučaju kvara — uvijek na najnovijem izdanju
🚀 Pokretanje pri prijavi
Neobavezno pokretanje pri prijavi; samo tray, bez ikone priključne stanice
🩺 Doctor & zapisuje
Dijagnostika jednim klikom i pristup zapisniku poslužitelja
```sh
brew install --cask zoispag/tap/omniroute-tray
```
Radije preuzimate? Preuzmite najnoviji .dmg s
Oslobađa . Izvor, problemi i građenje
dokumenti uživo na zoispag/omniroute-tray.
💛 Projekt zajednice autora @zoispag — nije službeno OmniRoute izdanje.
> Osim poslužitelja, OmniRoute je **potpuno komandno središte za naredbeni redak** s **više od 80 naredbi**, uz otvorene protokole za agente koji omogućuju AI agentu da njime upravlja **samostalno**.
### ⌨️ Pravi CLI (ne samo `start`)
```bash
omniroute # pokreni pristupnik i nadzornu ploču (port 20128)
omniroute chat # interaktivni TUI klijent za razgovor (kose naredbe: /model /combo /skill /memory)
omniroute setup # vođeni čarobnjak za prvo pokretanje
omniroute doctor # dijagnosticiraj pružatelje, portove i izvorne ovisnosti
```
### 🛰️ Udaljeni način rada — pokrenite CLI ovdje, a OmniRoute na VPS-u
OmniRoute je na poslužitelju? Upravljajte njime sa svojeg prijenosnog računala putem **istog CLI-ja**. Jednom se prijavite
pomoću pristupnog tokena ograničenog opsega; svaka se naredba zatim izvršava na udaljenom poslužitelju.
```bash
omniroute connect 192.168.0.15 # lozinka → token ograničenog opsega, spremljen kao kontekst
omniroute models # ← izvršava se na UDALJENOM poslužitelju
omniroute configure codex # ← odabire udaljeni model, zapisuje lokalni Codex profil
omniroute tokens create --name ci --scope read # izradi tokene užeg opsega za druga računala
omniroute contexts use default # ← prebaci se natrag na lokalni poslužitelj
```
Tokeni imaju opsege `read` / `write` / `admin`; rute koje pokreću procese ostaju dostupne samo putem povratne petlje.
📖 [Udaljeni način rada](docs/guides/REMOTE-MODE.md)
### 🤝 Povežite agenta — i on sam upravlja OmniRouteom
Izložite OmniRoute putem **MCP-a**, **A2A-a**, **REST API-ja**, **web-dojavnika** ili **udaljenog CLI-ja** — svaki sposoban agent (ili vaš vlastiti kôd) dobiva pristup cijelom pristupniku: usmjeravanju, pružateljima, kombinacijama, predmemoriji, kompresiji i memoriji — autonomno. HTTP krajnje točke u nastavku dostupne su pod `http://localhost:20128`.
Sučelje
Krajnja točka / naredba
Upotrijebite za
🧰 MCP (stdio)
omniroute --mcp
Povezivanje s Claude Desktopom, Cursorom ili bilo kojim MCP klijentom
Komunikacija između agenata, JSON-RPC 2.0 + SSE, 6 vještina
🌐 REST API
/v1/*
Kompatibilno s OpenAI-jem — razgovor, ugrađivanja, slike, zvuk, OCR
🔔 Web-dojavnici
/api/webhooks
Šaljite događaje zahtjeva / kvota u Slack, Discord, Telegram ili na bilo koji URL
🛰️ Udaljeni CLI
omniroute connect
Upravljajte udaljenom instancom pomoću pristupnih tokena ograničenog opsega
```bash
# Omogućite Claude Codeu potpuni skup OmniRoute alata putem MCP-a:
claude mcp add-server omniroute --type http --url http://localhost:20128/api/mcp/stream
```
📖 [MCP poslužitelj](docs/frameworks/MCP-SERVER.md) · [A2A poslužitelj](docs/frameworks/A2A-SERVER.md) · [Protokoli za agente](docs/frameworks/AGENT_PROTOCOLS_GUIDE.md)
## 🗜️ Automatski uštedite 15–95% tokena
### 📖 Kako funkcionira — cjevovod, arhitektura i izračun uštede
Zadana složena kombinacija pokreće `RTK → Caveman`. Kada oba djeluju na istom alatu/kontekstnom sadržaju, uštede se kumuliraju:
```txt
combined = 1 − (1 − RTK) × (1 − Caveman_input)
average = 1 − (1 − 0.80) × (1 − 0.46) = 89.2%
range = 78.4 – 94.6%
```
Blokovi koda, URL-ovi, JSON i strukturirani podaci **uvijek su zaštićeni** mehanizmom očuvanja.
> **Zašto koristiti mnogo tokena kada je dovoljno nekoliko?** Svaki zahtjev **transparentno** prolazi kroz OmniRouteov cjevovod kompresije — bez promjena na klijentu. Sada je to **skup od 12 kompozabilnih mehanizama** koji se pokreću redoslijedom i kombiniraju prema kombinaciji usmjeravanja — nadograđujući ideje iz projekata [RTK](https://github.com/rtk-ai/rtk), [Caveman](https://github.com/JuliusBrussee/caveman) (⭐ 90K+), [LLMLingua-2](https://github.com/microsoft/LLMLingua) i [Troglodita](https://github.com/leninejunior/troglodita) (PT-BR).
### 🧱 Skup od 12 mehanizama
Mehanizmi se pokreću redoslijedom cjevovoda; svaki se može neovisno uključiti i konfigurirati prema kombinaciji:
#
Mehanizam
Što radi
1
Session-Dedup
Uklanja sadržaj koji se ponavlja između poteza (adresiranje prema sadržaju, između poteza)
2
CCR
Arhivira velike blokove iza oznaka za dohvat, koje se dohvaćaju prema potrebi
3
Lite
Uklanjanje razmaka + skraćivanje URL-ova slika (osnovna postavka s malim kašnjenjem)
4
RTK
Pametno filtriranje rezultata alata, uklanjanje duplikata i skraćivanje (svjesno naredbi)
Kompaktiranje JSON polja bez gubitka (~30%) putem ugrađenog GCF kodeka
7
Relevance
Ekstraktivno bodovanje rečenica prema posljednjem korisničkom upitu
8
Caveman
Kompresija proze na temelju pravila (~65–75% na izlazu)
9
Aggressive
Sažimanje + progresivno starenje starih poteza
10
LLMLingua-2
Semantičko obrezivanje putem ML-a koristeći MobileBERT ONNX — sigurno za kod, asinkrono
11
Ultra
Heurističko obrezivanje tokena s neobaveznom razinom malog modela (SLM)
12
OmniGlyph
Eksperimentalno kodiranje konteksta kao slike za izmjereni Claude Fable 5 na izravnoj Anthropic vezi; GPT 5.6 transformatori ostaju zatvoreni u slučaju neuspjeha dok se čekaju potvrde pružatelja. Četiri profila kompresije (zadani agresivni, uravnoteženi, sigurni za kodiranje, prosljeđivanje) (najagresivniji; potrebno je uključivanje)
Blokovi koda, URL-ovi i strukturirani podaci **uvijek se čuvaju** bajt po bajt. **Jednim klikom možete odabrati unaprijed postavljene postavke** koje kombiniraju mehanizme:
Način
Ušteda
Najbolje za
🪶 Lite
~15%
Sigurna zadana postavka koja je uvijek uključena
🪨 Standard (Caveman)
~30%
Svakodnevno programiranje
⚡ Aggressive
~50%
Duge sesije s mnogo alata
🔥 Ultra
~75%
Maksimalna ušteda
🧰 RTK
60–90%
Izlaz ljuske/testiranja/izgradnje/git-a
🔗 Stacked (RTK → Caveman)
78–95%
Mješoviti upiti + zapisnici alata
**Stvarni primjer — Standardni način:**
> **Prije (69 tokena):** _"Razlog zbog kojeg se vaša React komponenta ponovno iscrtava vjerojatno je stvaranje nove reference objekta pri svakom ciklusu iscrtavanja. Kada proslijedite ugrađeni objekt kao prop, Reactova plitka usporedba svaki put vidi drugi objekt, što pokreće ponovno iscrtavanje. Preporučio bih korištenje useMemo za memoriranje objekta."_
>
> **Poslije (19 tokena):** _"Nova referenca objekta pri svakom iscrtavanju. Ugrađeni objekt kao prop = nova referenca = ponovno iscrtavanje. Omotajte ga u useMemo."_
>
> **Isti odgovor. 72% manje tokena. Nulti gubitak točnosti.** ✅
**PT-BR primjer — način [Troglodita](https://github.com/leninejunior/troglodita):**
> **Prije (42 tokena):** _"Problem je u tome što se komponenta ponovno renderira jer se u svakom ciklusu renderiranja stvara nova referenca objekta. Preporučio bih upotrebu useMemo."_
>
> **Poslije (12 tokena):** _"Ponovno renderiranje: nova ref. u svakom ciklusu (inline objekt ponovno stvoren). Upotrijebiti `useMemo`."_
>
> **Isti odgovor. ~70% manje tokena. Tehnička preciznost očuvana.** ✅
### 🎚️ Iza mehanizama — stilovi izlaza, prilagodljivi regulator i kontrola po zahtjevu
Gornjih 12 mehanizama sažima ono što ide **unutra**. Još tri sloja oblikuju **kako**, **kada** i što izlazi:
- **🪄 Stilovi izlaza** _(usmjeravanje osi izlaza)_ — ubacuju determinističke upute za oblikovanje odgovora, sigurne za predmemoriranje; mogu se kombinirati, a svaki je dostupan s intenzitetom `lite` / `full` / `ultra`. Dodavanje stila svodi se na jedan redak u registru:
- **Sažeta proza** — izbacuje poštapalice / članove / ograde; tehnički sadržaj ostaje potpuno precizan.
- **Manje koda** — YAGNI pristup „lijenog senior developera”: najmanja radna izmjena, bez nezatražene pomoćne strukture.
- **Rep (lijeniji senior developer)** — penje se ljestvicom YAGNI-ja, ispravlja temeljni uzrok, najmanji radni diff.
- **Imam ADHD (usmjereno na radnju)** — sljedeća radnja je na početku, koraci su numerirani, navodi se jedan konkretan sljedeći korak, bez uvoda.
- **Sažeti CJK (文言)** — iznimno sažet stil klasičnog kineskog jezika (ograničen na lokalizaciju `zh`).
- **🎯 Prilagodljivi proračun konteksta** _(regulator)_ — umjesto jednog praga tokena koji je uključen ili isključen, aktivira najjeftinije mehanizme s najmanjim gubitkom samo do mjere potrebne za **uklapanje u kontekstni prozor modela**. Pravilo: `reserve-output` (zadano, prilagođeno modelu) · `percentage` · `absolute`. Način rada: `floor` (jamči uklapanje) · `replace-autotrigger` (vaš izričiti odabir ima prednost) · `off` (naslijeđeni prag).
- **🎛️ Gdje se odlučuje kompresija** _(redoslijed prednosti, od veće prema manjoj)_ — zaglavlje `x-omniroute-compression` po zahtjevu › nadjačavanje kombinacije usmjeravanja › aktivni imenovani profil › prilagodljivi način / automatsko pokretanje › zadana postavka ploče › isključeno. Primijenjeni plan vraća se u zaglavlju odgovora `X-OmniRoute-Compression: ; source=`.
Automatsko pokretanje prema pragu tokena, uključivanje prilagodljivog regulatora, vezivanje imenovanog profila, jednokratno postavljanje po zahtjevu ili dodjela cjevovoda po kombinaciji usmjeravanja — odaberite ono što odgovara radnom opterećenju. Neobavezni izvanmrežni **evaluacijski alat** (`npm run eval:compression`) ocjenjuje vjernost u odnosu na uštedu na fiksiranom korpusu prije nego što uvedete izmjenu.
📖 [`COMPRESSION_GUIDE.md`](docs/compression/COMPRESSION_GUIDE.md) · [`RTK_COMPRESSION.md`](docs/compression/RTK_COMPRESSION.md) · [`COMPRESSION_ENGINES.md`](docs/compression/COMPRESSION_ENGINES.md)
# ⚡ Brzi početak
**1) Instalirajte i pokrenite**
```bash
npm install -g omniroute
omniroute
```
> 💡 Vidite `npm warn ERESOLVE` ili upozorenja o peer ovisnostima? [Bezopasna su](docs/guides/TROUBLESHOOTING.md#npm-install-warnings-eresolve--peer--deprecated).
> **Upotrebljavate npm 11 ili noviji?** npm može blokirati skripte životnog ciklusa paketa ako nisu dopuštene. OmniRouteov `postinstall` (`node scripts/build/postinstall.mjs`) potreban je za pripremu izvornih datoteka njegova runtimea. Pri globalnoj instalaciji dopustite pakete navedene u npmovu upozorenju. Za skup paketa koji prijavljuje OmniRoute 3.8.54:
>
> ```bash
> npm install -g --allow-scripts=omniroute,keytar,onnxruntime-node,@parcel/watcher,@swc/core,protobufjs,esbuild omniroute
> ```
>
> Da biste ovaj popis dopuštenih paketa ponovno upotrebljavali pri budućim globalnim instalacijama, konfigurirajte ga jednom, a zatim instalirajte na uobičajen način:
>
> ```bash
> npm config set allow-scripts=omniroute,keytar,onnxruntime-node,@parcel/watcher,@swc/core,protobufjs,esbuild --location=user
> npm install -g omniroute
> ```
>
> Popis ovisnosti može se mijenjati između izdanja; ako npm prijavi drukčiji popis, upotrijebite nazive paketa iz tog upozorenja. Dopuštanje paketa omogućuje pokretanje njegovih instalacijskih skripti.
> **Upotrebljavate Gemini Web ili drugog pružatelja koji koristi web-kolačiće?** npm paket uključuje
> Playwright, ali ne i njegovu binarnu datoteku Chromium. Pogledajte napomenu
> [Postavljanje Playwright Chromiuma](docs/guides/TROUBLESHOOTING.md#gemini-web-and-playwright-chromium)
> prije prvog zahtjeva web-pružatelju.
Nadzorna ploča na `http://localhost:20128` · API na `http://localhost:20128/v1`.
**2) Povežite podržanog pružatelja koristeći vlastiti račun**
Nadzorna ploča → **Pružatelji** → odaberite pružatelja čiji trenutačni uvjeti i kvota odgovaraju vašem slučaju upotrebe → dodajte njegov API ključ ili dovršite postupak povezivanja računa. Besplatne razine mogu zahtijevati registraciju, odobrenje ili način plaćanja. Pregledajte [Vodič kroz besplatne razine](docs/getting-started/FREE-TIERS-GUIDE.md); dostupnost bez ključa nije zajamčena, a pružatelji označeni s `tos: avoid` prema zadanim su postavkama isključeni iz načina `auto`.
**3) Usmjerite svoj alat za programiranje**
```txt
Osnovni URL: http://localhost:20128/v1
API ključ: [kopirajte iz Nadzorna ploča → Krajnje točke]
Model: auto (usmjerava među prihvatljivim vezama — ili odaberite pružatelja/model)
```
**4) Provjerite radi li**
```bash
curl http://localhost:20128/v1/models -H "Authorization: Bearer YOUR_KEY"
```
Trebali biste vidjeti popis povezanih modela. 🎉 To je sve — počnite programirati, a OmniRoute će automatski usmjeravati zahtjeve i prebacivati se na pričuvne opcije.
Ako vaš klijent ne može slati prilagođena zaglavlja, OmniRoute nudi i tokenizirane kompatibilne pseudonime:
```txt
OpenAI katalog: http://localhost:20128/vscode/YOUR_KEY/
OpenAI modeli: http://localhost:20128/vscode/YOUR_KEY/models
OpenAI chat: http://localhost:20128/vscode/YOUR_KEY/chat/completions
OpenAI odgovori: http://localhost:20128/vscode/YOUR_KEY/responses
Ollama chat: http://localhost:20128/vscode/YOUR_KEY/api/chat
Ollama oznake: http://localhost:20128/vscode/YOUR_KEY/api/tags
```
Upotrebljavajte ih samo za klijente koji ne mogu dodati `Authorization: Bearer ...`. Autentifikacija putem zaglavlja i dalje je preporučeni način.
## 📦 Više načina instalacije — Docker, izvorni kod, 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` prati najvišu **objavljenu** stabilnu SemVer verziju. Ne prati git granu `main`. Za GitOps fiksirajte `:X.Y.Z`. Pogledajte [Dockerove kanale izdanja](docs/guides/DOCKER_GUIDE.md#release-channels).Slika fiksira **`OMNIROUTE_MEMORY_MB=1024`**. To je dovoljno za nadzornu ploču i lagani razgovor. **Agenti za programiranje** (`POST /v1/responses` iz Claude Codea, Codexa, Groka, …) trebaju znatno veću V8 memorijsku hrpu ili će proces završiti porukom `FATAL ERROR` pri približno 12 GiB tijekom dvaju preklapajućih dugih konteksta. Dodijelite spremniku više memorije od veličine hrpe (izvorni međuspremnici nalaze se izvan V8):
| Radno opterećenje | Hrpa (`-e OMNIROUTE_MEMORY_MB`) | Spremnik (`--memory`) |
| ---------------------------------- | ------------------------------- | --------------------- |
| Nadzorna ploča / lagani razgovor | `1024` (zadano u slici) | ≥2 g |
| Jedan agent za programiranje | `8192` | ≥10 g |
| Dva istodobna duga `/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
```
Cijela tablica: [Docker vodič — RAM tijekom izvođenja](docs/guides/DOCKER_GUIDE.md#runtime-ram-for-coding-agents).
> **Dockerov kanal predizdanja:** `diegosouzapw/omniroute:next` i
> `diegosouzapw/omniroute:next-web` prate trenutačnu zadanu granu `release/v*`.
> Te promjenjive oznake namijenjene su isključivo testiranju još neobjavljenih ispravaka i
> **nisu podržane za produkciju**. Pogledajte
> [Dockerove kanale izdanja](docs/guides/DOCKER_GUIDE.md#release-channels).
**🥟 Bun**
Standardni `bun install` i globalna instalacija (`bun install -g omniroute`) podržani su putem otkrivanja Bunovog izvršnog okruženja:
- **Ugrađeni `bun:sqlite`**: OmniRoute tijekom izvođenja pod Bunom upotrebljava Bunov ugrađeni upravljački program `bun:sqlite`, uz povratak na `better-sqlite3` u okruženju Node.js ili na `sql.js`.
- **Automatski odabir Webpack alata za objedinjavanje u razvoju**: Razvojno okruženje (`bun run dev`) automatski otkriva Bun i onemogućuje Turbopack u korist Webpacka kako bi spriječilo nekompatibilnosti s izvornim V8 vezama. Produkcijske međuverzije (`bun run build`) slijede `OMNIROUTE_USE_TURBOPACK` potpuno jednako kao na Nodeu: Turbopack je zadan, a `OMNIROUTE_USE_TURBOPACK=0` služi za izgradnju pomoću Webpacka (`Dockerfile.bun` izlaže ga kao `--build-arg`).
- **Namjenski Bun Dockerfile**: Višefazni `Dockerfile.bun` za izvorne produkcijske implementacije Buna (`docker build -f Dockerfile.bun -t omniroute:bun .`).
```bash
# Instalirajte i pokrenite pomoću Buna
bun install
bun run dev
```
**🛠️ Iz izvornog koda**
```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
# Upotreba Nix flakesa
nix develop
npm run dev
# Ili upotreba devboxa
devbox run npm run dev
```
📖 [Docker vodič](docs/guides/DOCKER_GUIDE.md) — Compose profili, Caddy HTTPS, Cloudflare tuneli.
**🦭 Podman**
```bash
# 1. Pripremite vezano montirani direktorij podataka
mkdir -p data
# 2. Samo Linux + lokalni rootless Podman (nikada udaljeni klijent Podman Machinea):
podman unshare chown 1000:1000 ./data
# 3. Postavite naznaku izvršnog okruženja, izgradite lokalnu Compose sliku i pokrenite
echo "CONTAINER_HOST=podman" >> .env
podman compose --profile base up -d --build
```
Na sustavima macOS ili Windows Podman upotrebljava udaljeni Podman Machine: preskočite `podman unshare` i
slijedite [upute za direktorij podataka specifične za topologiju](contrib/podman/README.md#data-directory-permissions-by-topology).
📖 [Podman vodič](contrib/podman/README.md) — Compose međuverzije, Podman Machine i
postavljanje Quadleta za Linux/systemd.
**⚡ Brža / jednostavnija instalacija (preskočite izvornu izgradnju)**
Izvorni SQLite pogon (`better-sqlite3`) **neobavezna** je ovisnost, pa globalna
instalacija nikada ne čeka prevođenje iz izvornog koda: upotrebljava unaprijed izgrađenu binarnu datoteku kada odgovara
vašoj platformi/Nodeu, a u suprotnom se neprimjetno prebacuje na čisti JS pogon
(`node:sqlite` na Nodeu 22+, inače priloženi `sql.js` WASM) — alati za izgradnju nisu potrebni.
Za potpuno preskakanje **zagrijavanja izvornog modula** nakon instalacije (CI, sustavi bez grafičkog sučelja ili spora računala).
Napomena: time se preskače samo korak zagrijavanja izvornog SQLitea (`scripts/postinstall.mjs`); skripta
za kopiranje/popravak binarne datoteke (`scripts/build/postinstall.mjs`) i dalje se izvršava uobičajeno:
```bash
OMNIROUTE_SKIP_POSTINSTALL=1 npm install -g omniroute # CI=1 također ga preskače
```
Za najbrže instalacije odaberite **pnpm** (pohrana adresirana sadržajem + čvrste poveznice — pogledajte iznad).
Za izvršno okruženje bez nadzorne ploče i grafičkog sučelja upotrijebite Dockerov profil `base` (iznad) ili
[Termux vodič](docs/guides/TERMUX_GUIDE.md). CLI i web-nadzornu ploču poslužuje
isti proces na jednom priključku, pa trenutačno ne postoji zaseban paket samo za CLI.
pino — strukturirani JSON zapisi s kontekstom zahtjeva
Testiranje
Izvršivač testova Node.js + Vitest — više od 60.000 statičkih deklaracija testova u više od 8.400 praćenih datoteka testova (jedinični, integracijski, E2E, sigurnosni, ekosustavni)
Platforme
Računalo (Electron) · Android (Termux) · PWA (bilo koji preglednik)
CI/CD
GitHub Actions — automatska npm objava + Docker Hub pri izdanju
Strategija pokrivenosti testovima za više od 60.000 statičkih deklaracija testova u više od 8.400 praćenih datoteka testova
# ⭐ Najveći doprinositelji
> OmniRoute oblikuje strastvena zajednica otvorenog koda. Ove su osobe dale iznimne doprinose koji izravno utječu na kvalitetu, stabilnost i doseg projekta. **Hvala vam.**
### Vanjski doprinositelji prema spojenim pull requestovima
Popis je sastavljen 2026-11-03 03:01:19 UTC uz aktualni vrh release/v3.8.5305bc048d6c. Paginirani popis GitHub GraphQL sadržava 9.947 spojenih PR-ova: 4.130 autora vlasnika repozitorija, 240 autora Dependabota, 6 autora drugih botova/aplikacija i 5.571 vanjski PR od 883 različita doprinositelja. „Promijenjeni reci” zbroj je GitHubovih dodavanja i brisanja te uključuje generirane datoteke, lockdatoteke, kataloge, prijevode i dokumentaciju; riječ je o opsegu promjena, a ne o LOC-u autora. Za 53 PR-a GitHubovi diffovi navode više od 500.000 redaka (na primjer #13399, jedno dodavanje pružatelja, navodi 2.347 promijenjenih datoteka), što povećava nekoliko gornjih ukupnih vrijednosti. Jednaki rezultati rangiraju se zajedno.
### Comm itovi pripisani GitHubu
Ponovno provjereno 2026-11-03 02:09:16 UTC: GitHub commitovi koje je prijavio Contributors API repozitorija za zadanu granu release/v3.8.53. API je vratio 903 identiteta (429 korisnika, 2 bota, 472 anonimna identiteta); ova tablica isključuje održavatelja, botove i anonimne identitete te zadržava izjednačenja u poretku. Razlikuje se i od poretka iznad prema spojenim PR-ovima i od popisa Git-metapodataka u nastavku.
> 🙏 Značajke, ispravci programskih pogrešaka i infrastrukturna poboljšanja ovih suradnika **ključan su dio** onoga što OmniRoute čini pouzdanim i bogatim značajkama. Svaki zahtjev za povlačenje, svaki testni slučaj i svaka i18n prevoditeljska datoteka važni su. Otvoreni kod stvaraju ljudi poput njih.
---
## 💖 Sponzori
Od srca zahvaljujemo ljudima koji financiraju OmniRoute iz vlastitog džepa — svaki doprinos pomaže da projekt ostane besplatan, neovisan i da napreduje.
… i drugima koji žele ostati anonimni 💛Javni GitHub sponzori ponovno su provjereni 2026-10-18 putem GitHub Sponsors GraphQL API-ja: 11 javnih sponzorstava (6 aktivnih, 5 prijašnjih) od ukupno 14. GitHubov status isActive određuje oznake aktivnih sponzora iznad; javnim prijašnjim jednokratnim podržavateljima i dalje zahvaljujemo, dok privatni sponzori ostaju anonimni. Donacije putem platformi Ko-fi, Buy Me a Coffee i Liberapay te donacije putem PIX-a i kriptovaluta nisu navedene jer za njih ne postoji javni zapis o sponzoru.💖 Postanite sponzor → — svaki dolar pomaže da OmniRoute ostane besplatan i neovisan.
## 👥 Više od 1.000 suradnika
[](https://github.com/diegosouzapw/OmniRoute/graphs/contributors)
Revidirano 2026-11-02. na aktivnoj točki release/v3.8.531c7135e0fb (7.972 commita): 1.074 normaliziranih ljudskih Git identiteta — 759 ih se pojavljuje kao autori commita (uključujući održavatelja), a 315 samo u eksplicitnim završecima Co-authored-by. Popis primjenjuje .mailmap, uspoređuje adrese e-pošte bez razlikovanja velikih i malih slova, povezuje numeričke i obične GitHub noreply adrese samo kada kodiraju isti pseudonim, isključuje 29 identiteta botova/agenta/usluga/rezerviranih identiteta te ne spaja obične adrese e-pošte samo zato što im se prikazana imena podudaraju. Revizija od 2026-08-24 objavila je 639; ponovna primjena ove metode na osnovu te revizije ac02c5b42f daje 619, stoga povećanje proizlazi iz novih suradnika, a ne iz blaže metode.
### Kako doprinijeti
1. Izradite fork repozitorija
2. Izradite granu iz **aktivne** točke `release/vX.Y.Z` (ne iz `main`) — pogledajte [Model grananja i izdanja](docs/ops/BRANCHING_MODEL.md)
3. Izradite svoju granu značajke (`git checkout -b feat/amazing-feature`)
4. Predajte promjene (`git commit -m 'feat: add amazing feature'`)
5. Pošaljite ih na granu (`git push origin feat/amazing-feature`)
6. Otvorite zahtjev za povlačenje s **base = tom granom** `release/vX.Y.Z`
Detaljne smjernice pogledajte u [CONTRIBUTING.md](CONTRIBUTING.md).
### Objavljivanje nove verzije
```bash
# Izradite izdanje — npm publish pokreće se automatski
VERSION=x.y.z
gh release create "v${VERSION}" --title "v${VERSION}" --generate-notes
```
## 📊 Zvjezdice
## 🌍 StarMapper
## 🙏 Zahvale
OmniRoute stoji na ramenima divova. Započeo je kao fork projekta **[9router](https://github.com/decolua/9router)** i TypeScript port Go projekta **[CLIProxyAPI](https://github.com/router-for-me/CLIProxyAPI)** — a odatle je svaki podsustav u nastavku nadahnut projektom otvorenog koda koji je prvi stigao do tog rješenja. Svaki od njih oblikovao je konkretan dio projekta OmniRoute. Ovo je naša zahvala svima njima. 🙏
> ⭐ broj zvjezdica provjeren je putem GitHubova REST API-ja 3. studenoga 2026. — dajte ovim projektima zvjezdicu. Brojevi su točan snimak stanja na navedeni datum i prirodno će se mijenjati.
### 🧬 Podrijetlo i pristupnik
AI pristupnik čiji javni skup podataka o cijenama napaja našu sinkronizaciju praćenja troškova i čiji je model normalizacije pružatelja usluga usmjerio naše rutiranje.
MIT izvor prilagođen za ugrađeni most ChatGPT Web → Codex Responses, uključujući prilagodnike za sesije preglednika, uokvirivanje odgovora, upotrebu i web-pretraživanje.
Obrasci preneseni u oporavak toka, aliasе bez razmišljanja, rezervno web-pretraživanje, ograničenja kliznog prozora, uklanjanje osjetljivih podataka iz zapisnika i ojačane tokove pokretača.
Njegova mapiranja Grokovih modela, generator Statsiga za lažni TypeError, zadane vrijednosti zahtjeva i uređaja te procesor NDJSON odgovora materijalno su prilagođeni izvršitelju Grok Weba u OmniRouteu.
Glavni tranzitivni izvor koda iza projekta grok2api-merged; njegove implementacije modela, zaglavlja, sadržaja, Statsiga i procesora sačuvane su u lozi Grok Weba.
Temeljni MIT izvor za zadane vrijednosti Grokova sadržaja i uređaja, generator Statsiga te procesor result.response koji je prenesen kroz projekte TQZHR i grok2api-merged.
Tranzitivni izvor kojem grok2api-merged pripisuje svoj sloj skupa proxyja; OmniRoute čuva tu napomenu o podrijetlu, ali ne tvrdi da je prenio skup proxyja u svom ograničenom izvršitelju Grok Weba.
Izvorna implementacija Grok Weba poslužila je kao referenca za dizajn HTTP/browser nadređenog sustava; njezin izravni HTTP put izveden je iz projekta GrokProxy, stoga se ne tvrdi da je riječ o zasebnom prijenosu koda.
Viralni projekt „why use many token when few token do trick” — njegova filozofija govora pećinskog čovjeka pokreće naš standardni način kompresije i više od 30 pravila za uklanjanje/sažimanje suvišnog sadržaja.
Istraživanje kompresije prompta (LLMLingua / LLMLingua-2) — nadahnulo je naš asinhroni engine llmlingua, siguran za kôd i s načinom sigurnog propuštanja u slučaju pogreške.
Vještina YAGNI-programera u stilu „lijenog iskusnog developera” — nadahnula je naš izlazni stil less-code: usmjeravanje prema najmanjoj funkcionalnoj promjeni koje smanjuje količinu _generiranog_ kôda (srodnik Cavemanova sažetog proznog stila na osi izlaza).
Kompresija izlaza svjesna sadržaja, po vrsti datoteke, uz odustajanje u slučaju pogreške — potvrdila je naše usmjeravanje po vrsti i preskakanje uz minimalni dobitak.
Stupčasti JSON u Rustu + dohvat adresiran sadržajem + deduplikacija kroz više poruka — potvrdili su naš dizajn enginea headroom/ccr/session-dedup i invarijantu stabilnosti predmemorije „komprimirani oblik neovisan je o položaju”.
Komplet alata za API prevoditelja TypeScripta — nadahnuo je naše uklanjanje komentara temeljeno na parseru, koje čuva literale nizova, predložaka i regularnih izraza.
MITM presretanje/analiza prometa između pomoćnika za programiranje i LLM-a oblikovali su rane zahtjeve za Traffic Inspector. Četiri prethodno izvedena modula — spajanje SSE-a, normalizacija razgovora, maskiranje tajni i čišćenje zaglavlja — zamijenjene su neovisnim implementacijama razvijenima u čistom okruženju na temelju javnih protokolarnih standarda. Dvije površine za prosljeđivanje hosta (passthrough.ts i _internal/bypass.cjs) ostaju interne implementacije OmniRoutea, klasificirane neovisno; nisu ponovno napisane u sklopu te zamjene.
Transparentno usmjeravanje proxyja po procesu — nadahnulo je naše sigurno rušenje MITM-a nakon pada, vremenska ograničenja neaktivnosti utičnica, atribuciju procesa putem /proc i TPROXY hvatanje.
### 📚 Podaci o modelima, vidljivost i korisničko sučelje
Vidljivost servisne mreže Istio — nadahnula je naše oznake automatskog prekida strujnog kruga i vizualizacije rubova pogrešaka u Studiju usmjeravanja/kombiniranja.
Odabrani popis biblioteka koje su prema zadanim postavkama sigurne i usmjeravaju naše sigurnosne odabire (Helmet.js, DOMPurify, ssrf-req-filter, safe-regex, Google Tink).
Njegovo ponovno mapiranje modela svjesno računa, provjera putanja izvršnih datoteka i ponašanje oznaka plana oblikovali su runtime Antigravity u OmniRouteu.
Identificirao je površinu kvote Grok Build; OmniRoute je zatim neovisno provjerio i ispravio format žice uživo.
## 📄 Licenca
MIT licenca – pojedinosti potražite u datoteci [LICENSE](LICENSE).
---
**[⬆ Povratak na vrh](#-omniroute)** · Izrađeno ❤️ za open-source AI zajednicu.
Izradio Diego Souza · OmniRoute v3.8.54 · Node ≥22.22.2 · MIT licenca · omniroute.online