# README (Polski) 🌐 **Languages:** 🇺🇸 [English](../../../README.md) · 🇪🇹 [am](../am/README.md) · 🇸🇦 [ar](../ar/README.md) · 🇦🇿 [az](../az/README.md) · 🇧🇬 [bg](../bg/README.md) · 🇧🇩 [bn](../bn/README.md) · 🇧🇦 [bs](../bs/README.md) · 🇨🇿 [cs](../cs/README.md) · 🇩🇰 [da](../da/README.md) · 🇩🇪 [de](../de/README.md) · 🇬🇷 [el](../el/README.md) · 🇪🇸 [es](../es/README.md) · 🇪🇪 [et](../et/README.md) · 🇮🇷 [fa](../fa/README.md) · 🇫🇮 [fi](../fi/README.md) · 🇫🇷 [fr](../fr/README.md) · 🇮🇪 [ga](../ga/README.md) · 🇮🇳 [gu](../gu/README.md) · 🇳🇬 [ha](../ha/README.md) · 🇮🇱 [he](../he/README.md) · 🇮🇳 [hi](../hi/README.md) · 🇭🇷 [hr](../hr/README.md) · 🇭🇺 [hu](../hu/README.md) · 🇦🇲 [hy](../hy/README.md) · 🇮🇩 [id](../id/README.md) · 🇳🇬 [ig](../ig/README.md) · 🇮🇹 [it](../it/README.md) · 🇯🇵 [ja](../ja/README.md) · 🇬🇪 [ka](../ka/README.md) · 🇰🇭 [km](../km/README.md) · 🇮🇳 [kn](../kn/README.md) · 🇰🇷 [ko](../ko/README.md) · 🇱🇹 [lt](../lt/README.md) · 🇱🇻 [lv](../lv/README.md) · 🇮🇳 [ml](../ml/README.md) · 🇮🇳 [mr](../mr/README.md) · 🇲🇾 [ms](../ms/README.md) · 🇲🇹 [mt](../mt/README.md) · 🇲🇲 [my](../my/README.md) · 🇳🇵 [ne](../ne/README.md) · 🇳🇱 [nl](../nl/README.md) · 🇳🇴 [no](../no/README.md) · 🇮🇳 [or](../or/README.md) · 🇮🇳 [pa](../pa/README.md) · 🇵🇭 [phi](../phi/README.md) · 🇵🇹 [pt](../pt/README.md) · 🇧🇷 [pt-BR](../pt-BR/README.md) · 🇷🇴 [ro](../ro/README.md) · 🇷🇺 [ru](../ru/README.md) · 🇱🇰 [si](../si/README.md) · 🇸🇰 [sk](../sk/README.md) · 🇸🇮 [sl](../sl/README.md) · 🇷🇸 [sr](../sr/README.md) · 🇸🇪 [sv](../sv/README.md) · 🇰🇪 [sw](../sw/README.md) · 🇮🇳 [ta](../ta/README.md) · 🇮🇳 [te](../te/README.md) · 🇹🇭 [th](../th/README.md) · 🇹🇷 [tr](../tr/README.md) · 🇺🇦 [uk-UA](../uk-UA/README.md) · 🇵🇰 [ur](../ur/README.md) · 🇺🇿 [uz](../uz/README.md) · 🇻🇳 [vi](../vi/README.md) · 🇳🇬 [yo](../yo/README.md) · 🇨🇳 [zh-CN](../zh-CN/README.md) · 🇹🇼 [zh-TW](../zh-TW/README.md) ---
Panel OmniRoute

# 🚀 OmniRoute — Darmowa brama AI **Autor: [Diego Souza](https://github.com/diegosouzapw)** OmniRoute — Nigdy nie przestawaj programować. Każde narzędzie AI → 388 dostawców — 150+ bezpłatnych — za pośrednictwem jednego punktu końcowego. Claude Code, Codex, Cursor, Cline, Copilot i Antigravity z dostępem do BEZPŁATNYCH modeli Claude / GPT / Gemini z automatycznym przełączaniem awaryjnym. Kompresja RTK + Caveman pozwala oszczędzić 15–95% tokenów (średnio ~89%) — nigdy nie napotykaj limitów. 388 dostawców AI · 150+ bezpłatnych poziomów · ~1,62 mld bezpłatnych tokenów/mies. · 20 strategii routingu · $0 na start.
## 💰 ~1,62 mld tokenów / miesiąc w ramach bezpłatnych planów zewnętrznych dostawców
> **Korzystaj z własnych kont dostawców.** Jest to szacunkowa suma dostępna w ramach osobno kwalifikujących się bezpłatnych planów zewnętrznych dostawców, a nie pula tokenów przyznawana przez OmniRoute. Zarejestruj się, uzyskaj dane uwierzytelniające, jeśli są wymagane, i połącz dostawców, z których możesz korzystać; każdy dostawca samodzielnie ustala limity, dostępność i warunki. > > Ręczne łączenie bezpłatnych planów jest uciążliwe — dziesiątki SDK, dziesiątki limitów szybkości i brak wiedzy o tym, ile faktycznie masz do dyspozycji. OmniRoute kataloguje **465 wpisów bezpłatnych planów w ramach 34 cyklicznych kluczy puli** i oblicza główną wartość tokenów na podstawie **17 pul z opublikowanym dodatnim miesięcznym budżetem oraz pięciu limitów Groq dla poszczególnych modeli**, usuwając duplikaty według współdzielonej puli. Limity, które stają się dostępne dopiero po regionalnej weryfikacji tożsamości (obecnie: ModelScope), są prezentowane osobno: +~6 mln po regionalnej weryfikacji tożsamości i nigdy nie są sumowane w głównej wartości. Wynik pozostaje widoczny na pulpicie (`/dashboard/free-tiers`). Karta bezpłatnego budżetu OmniRoute: ~1,62 mld bezpłatnych tokenów miesięcznie w stałym użyciu, do ~2,22 mld w pierwszym miesiącu wraz z kredytami za rejestrację, z 34 udokumentowanymi cyklicznymi kluczami puli obejmującymi 465 skatalogowanych wpisów bezpłatnych planów dostępnych za pośrednictwem jednego endpointu. Uczciwe obliczenia z usuwaniem duplikatów pul — każda współdzielona pula jest liczona raz, w tym 17 cyklicznych pul z opublikowanym dodatnim miesięcznym budżetem tokenów oraz pięć limitów Groq dla poszczególnych modeli; 12 dostawców jest oznaczonych jako „unikaj” w katalogu ryzyka związanego z warunkami, więc to Ty decydujesz. Pasek budżetu obejmuje Mistral 1B, Nara 210M, LLM7 150M, xKiro 150M, Groq 30M (pięć limitów dla poszczególnych modeli) i mniejsze pule, a także kredyty za rejestrację w pierwszym miesiącu oraz dostawców trwale bezpłatnych, bez limitu tokenów, prezentowanych osobno, aby nigdy nie zawyżali głównej wartości. Aktualne zużycie i pozostała liczba tokenów na /dashboard/free-tiers. > Animowane podsumowanie aktywnej strony `/dashboard/free-tiers`. Pełna metodologia (usuwanie duplikatów pul, poziomy kredytów, warunki dostawców): **[docs/reference/FREE_TIERS.md](docs/reference/FREE_TIERS.md)**. > > Wartości te są ponownie weryfikowane co dwa tygodnie na podstawie aktywnego katalogu i **zmieniają się w obie strony** — gdy dostawca kończy bezpłatny plan, liczba spada; gdy pojawia się nowy, rośnie. Publikujemy wartości faktycznie obliczane przez katalog, nigdy zaokrąglony w górę najlepszy możliwy scenariusz.

⭐ Dodaj gwiazdkę do repozytorium, jeśli OMNIROUTE pomogło Ci zaoszczędzić pieniądze i ułatwiło pracę.

[![Gwiazdy](https://img.shields.io/github/stars/diegosouzapw/OmniRoute?style=social)](https://github.com/diegosouzapw/OmniRoute) diegosouzapw%2FOmniRoute | Trendshift [![Pozycja w rankingu historii gwiazdek](https://api.star-history.com/badge?repo=diegosouzapw/OmniRoute&theme=dark)](https://www.star-history.com/diegosouzapw/omniroute) [![olud.ai](https://olud.ai/badge.php?tool=diegosouzapw-omniroute)](https://olud.ai/project/diegosouzapw-omniroute.html) ### 💬 Dołącz do społeczności **👋 Obserwuj opiekuna projektu — jako pierwszy poznawaj nowych dostawców, wydania i wskazówki:** [![Obserwuj Diego na LinkedIn](https://img.shields.io/badge/Follow_Diego_on-LinkedIn-0A66C2?style=for-the-badge&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/diegosouzapw/) [![Obserwuj @diegosouzapw na GitHub](https://img.shields.io/github/followers/diegosouzapw?style=for-the-badge&logo=github&logoColor=white&label=Follow%20on%20GitHub&color=181717)](https://github.com/diegosouzapw) [![Discord](https://img.shields.io/badge/Discord-5865F2?style=for-the-badge&logo=discord&logoColor=white)](https://discord.gg/U47eFqAXCn) [![Telegram](https://img.shields.io/badge/Telegram-26A5E4?style=for-the-badge&logo=telegram&logoColor=white)](https://t.me/omnirouteOficial) [![WhatsApp Global](https://img.shields.io/badge/WhatsApp_Global-25D366?style=for-the-badge&logo=whatsapp&logoColor=white)](https://chat.whatsapp.com/FvuCbrpZmQ6I85n2vW5QIC?s=cl&p=a&mlu=4) [![WhatsApp Brazylia](https://img.shields.io/badge/WhatsApp_Brasil-25D366?style=for-the-badge&logo=whatsapp&logoColor=white)](https://chat.whatsapp.com/KWgatljAjmbELQory59Oti?s=cl&p=a&mlu=4) [![Witryna](https://img.shields.io/badge/Website-omniroute.online-blue?logo=google-chrome&logoColor=white)](https://omniroute.online) **Pytania, wskazówki dotyczące dostawców, plan rozwoju i pomoc → [Discord](https://discord.gg/U47eFqAXCn) · [Telegram](https://t.me/omnirouteOficial) · WhatsApp [🌍 Globalny](https://chat.whatsapp.com/FvuCbrpZmQ6I85n2vW5QIC?s=cl&p=a&mlu=4) / [🇧🇷 Brazylia](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)**
## 📈 Brama wciąż się rozwija
| | v3.8.50 | **v3.8.51** | `v3.8.54+` | | --------------------------------------- | :----------------------: | :---------: | :-------------------: | | 🌐 Dostawcy | 352 | **358** | 388 | | 🧠 Unikalne identyfikatory modeli czatu | 1320 | **1374** | 1491 | | 🖼️ Mostek modalności | 🆕 obraz + audio + wideo | ✓ | ✓ | | 📡 Bezpłatny katalog Radar | 🆕 opt-in | ✓ | ✓ | | ⚖️ Planowanie uwzględniające limity | 🆕 Quota-Share | ✓ | ✓ | | 📊 Telemetria limitów | 🆕 na żywo | ✓ | ✓ | | 🧰 Tryb bez głowy | — | — | 🆕 `serve --headless` | | 🛤️ Infrastruktura toru LTS | — | — | 🆕 kanały wydań | | 🔎 API wykrywania modeli | — | — | 🆕 `/v1/models/query` | **→ [Mapa drogowa](ROADMAP.md) — jedziemy torem do `v3.9.0 LTS`**

## 🧩 Dostępne [![Wersja npm](https://img.shields.io/npm/v/omniroute?color=cb3837&logo=npm)](https://www.npmjs.com/package/omniroute) ![Miesięczne pobrania NPM](https://img.shields.io/npm/dm/omniroute?label=npm/month&color=cb3837&logo=npm) [![Docker Hub](https://img.shields.io/docker/v/diegosouzapw/omniroute?label=Docker%20Hub&logo=docker&color=2496ED)](https://hub.docker.com/r/diegosouzapw/omniroute) ![Licencja: MIT](https://img.shields.io/badge/License-MIT-yellow.svg?style=flat-square)](LICENSE) ![Pobrania obrazów Docker](https://img.shields.io/docker/pulls/diegosouzapw/omniroute?label=docker%20pulls&logo=docker&color=2496ED) ![Pobrania Electron](https://img.shields.io/github/downloads/diegosouzapw/omniroute/total?style=flat&label=electron%20downloads&logo=electron&color=47848F)
🚀 Start 🚀 Szybki start 📦 Instalacja 🆓 Połącz dostawcę
💡 Poznaj 💥 Obietnica 🤔 Dlaczego OmniRoute 🏆 Co nas wyróżnia
⚙️ Funkcje 🎯 Kombinacje 🌐 Dostawcy 🔌 CLI i MCP
🗜️ Kompresja 🖥️ Gdzie działa 🔒 Prywatność
👀 Zobacz 🎬 W działaniu ✨ Co nowego 🤖 Kompatybilne CLI
💚 Wesprzyj 💚 Wesprzyj / Przekaż darowiznę 💬 Społeczność 💖 Sponsorzy
📦 Projekt 🛠️ Stos technologiczny 📖 Dokumentacja 👥 Współtwórcy
🌐 W 67 językach

Angielski (en) Português — Brasil (pt-BR) Português (pt) Español (es) Français (fr) Italiano (it) Deutsch (de) Nederlands (nl) Русский (ru) Українська (uk-UA) Polski (pl) Čeština (cs) Slovenčina (sk) Română (ro) Magyar (hu) Български (bg) Dansk (da) Suomi (fi) Norsk (no) Svenska (sv) 中文 — 简体 (zh-CN) 中文 — 繁體 (zh-TW) 日本語 (ja) 한국어 (ko) ไทย (th) Tiếng Việt (vi) Bahasa Indonesia (id) Bahasa Melayu (ms) Filipino (phi) हिन्दी (hi) ગુજરાતી (gu) मराठी (mr) தமிழ் (ta) తెలుగు (te) বাংলা (bn) اردو (ur) فارسی (fa) العربية (ar) עברית (he) Türkçe (tr) Azərbaycan (az) Kiswahili (sw) Ελληνικά (el) Hrvatski (hr) Српски (sr) Lietuvių (lt) Eesti (et) Latviešu (lv) Slovenščina (sl) Malti (mt) Gaeilge (ga) ಕನ್ನಡ (kn) മലയാളം (ml) ଓଡ଼ିଆ (or) ਪੰਜਾਬੀ (pa) नेपाली (ne) සිංහල (si) မြန်မာ (my) ខ្មែរ (km) Hausa (ha) Yorùbá (yo) Igbo (ig) አማርኛ (am) Oʻzbekcha (uz) ქართული (ka) Հայերեն (hy) Bosanski (bs)


## 🆓 Zainstaluj, połącz dostawcę, a następnie kieruj ruch przez jeden endpoint
Trzy kroki: zainstaluj i uruchom OmniRoute, połącz kwalifikującego się dostawcę za pomocą własnego konta lub klucza API, a następnie wskaż w swoim narzędziu adres localhost:20128/v1, używając klucza API OmniRoute i modelu auto. Routing zależy od dostępnych kwalifikujących się połączeń oraz limitów dostawców. ```bash # Po połączeniu dostawcy skopiuj klucz OmniRoute z 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` wymaga kwalifikującej się trasy. Świeża instalacja może nie mieć żadnych kwalifikujących się celów niewymagających klucza, a dostawca niewymagający klucza może odrzucać klientów zewnętrznych. Dostawcy oznaczeni jako `tos: avoid`, w tym Kiro, są domyślnie wykluczeni z automatycznego routingu; połączenie konta nie powoduje zmiany tego ustawienia. Przed wybraniem dostawcy zapoznaj się z [Przewodnikiem po bezpłatnych planach](docs/getting-started/FREE-TIERS-GUIDE.md). 📦 Skrypty szybkiego startu do skopiowania i uruchomienia dla **Python, Node.js, PHP i cURL** → [`examples/quickstart/`](examples/quickstart/)
# 💥 Obietnica
Obietnica — jeden endpoint i 388 dostawców. Automatyczny fallback utrzymuje routing, dopóki dostępny jest inny sprawny cel. Sześć filarów: odporny fallback obejmujący 388 dostawców · do 95% oszczędności tokenów w kwalifikujących się zadaniach · 0 USD na start dzięki ponad 150 bezpłatnym planom oraz 52 cyklicznym lub niewymagającym klucza dostawcom oferującym bezpłatny dostęp bezterminowo · 39 integracji CLI/agentów za pomocą jednej konfiguracji · zgodność z interfejsami API OpenAI, Claude, Gemini i Responses pod adresem /v1 · mechanizmy kontroli produkcyjnej, w tym wyłączniki obwodu, TLS stealth, 110 narzędzi MCP, A2A, pamięć, zabezpieczenia, ewaluacje oraz ponad 56 000 statycznych deklaracji testów w ponad 7800 śledzonych plikach testów.

# 🤔 Dlaczego OmniRoute?
Dlaczego OmniRoute — przestań przełączać się między 10 pulpitami, nieaktywnymi kluczami API i niespodziewanymi rachunkami. Dziesięć codziennych problemów i rozwiązań: wygasający niewykorzystany limit → maksymalne wykorzystanie subskrypcji; limity szybkości w trakcie kodowania → automatyczny fallback 4 poziomów (Subskrypcja → API → Tani → Bezpłatny); wyniki narzędzi pochłaniające tokeny → kompresja RTK + Caveman (15–95%); drogie interfejsy API → routing zoptymalizowany pod kątem kosztów; każde narzędzie wymaga własnej konfiguracji → jeden endpoint, jeden pulpit; zablokowana AI → proxy 3 poziomów + TLS stealth; nieaktywne klucze → odporność 3 warstw (wyłączniki obwodu, cooldown klucza, blokada modelu); zespół współdzielący jedną subskrypcję → pule kluczy z limitami sprawiedliwego udziału; prompty przesyłane przez chmurę innej osoby → podejście local-first z kluczami szyfrowanymi przy użyciu AES-256-GCM; brak widoczności wydatków → analityka na żywo (użycie, limit, oszczędności, opóźnienie p95).
Przepływ żądania OmniRoute: Twoje IDE lub CLI (Claude Code, Cursor, Cline…) wywołuje jeden lokalny endpoint (http://localhost:20128/v1); inteligentny router OmniRoute (kompresja RTK + Caveman, 20 strategii routingu, wyłączniki obwodu, TLS stealth, MCP, A2A, zabezpieczenia) może przełączać się awaryjnie między 4 poziomami dostawców, dopóki pozostaje dostępny kwalifikujący się i sprawny cel — poziom 1 Subskrypcja, poziom 2 Klucz API, poziom 3 Tani i poziom 4 Bezpłatny.

## 🤝 Wspierane przez naszych Przyjaciół Open Source

Kimi K3 — Open Frontier Intelligence · 2.8T parameters · 1M-token context

> **Chcesz dołączyć jako Przyjaciel Open Source?** To są firmy, które wspierają open source i pomagają OmniRoute działać — a my publicznie informujemy, na co przeznaczany jest każdy token, który nam przekazują. Skontaktuj się: [diegosouza.pw@outlook.com](mailto:diegosouza.pw@outlook.com)
Kimi (Moonshot AI)
Kimi
Moonshot AI

Founding Open Source Friend
Dzięki **Kimi (Moonshot AI)**, naszemu założycielskiemu Przyjacielowi Open Source, za wsparcie tego projektu! Kimi to laboratorium AI stojące za rodzinami modeli K2 i K3 o otwartej wadze — **Kimi K3** oferuje okno kontekstowe 1M tokenów, natywną wizję i kodowanie na poziomie granicznym za ułamek cen modeli zamkniętych, i działa od razu po wyjęciu z pudełka z Claude Code, Codex i każdym narzędziem do kodowania, które obsługuje OmniRoute.

**Co umożliwia wsparcie Kimi:** Kredyty API Kimi zasilają potok wydawniczy OmniRoute walidowany przez AI — etap *walidacji scalania zasilany przez Kimi K3*, który przegląda każdy pull request przed jego wdrożeniem — a także codzienny rozwój funkcji. Wysokiej klasy wsparcie Kimi jest dostępne na obu torach: bezpośrednim API Kimi (kimi-k3) oraz planie kodowania Kimi Code (OAuth i klucz API). OmniRoute jest również pierwszym brazylijskim projektem open-source w programie wsparcia Kimi. Zdobądź klucz API Kimi z 15% dodatkowymi kredytami →
Cheaper Inference
Cheaper Inference
cheaperinference.com

Open Source Friend
Dzięki **Cheaper Inference**, Przyjacielowi Open Source OmniRoute, za wsparcie tego projektu! Cheaper Inference to bramka z rankingiem kosztów, która odsprzedaje 42 modele graniczne — Claude, GPT-5.x, Gemini, Kimi K3, GLM, DeepSeek, Grok i MiniMax — za jednym punktem końcowym kompatybilnym z OpenAI, kierując każde żądanie do najtańszego kwalifikującego się dostawcy, nigdy nie pobierając opłat powyżej ceny katalogowej twórcy modelu.

**Wysokiej klasy wsparcie w OmniRoute:** Uzupełnianie czatu, natywny punkt końcowy /v1/responses, wizja, wywoływanie narzędzi i 3 modele obrazów (grok-imagine, nano-banana-pro, nano-banana-2, dostępne jako cheaperinference/<model>). Zdobądź klucz API →
Linki oznaczone aff=omniroute to linki partnerskie. Finansują one projekt bez dodatkowych kosztów dla Ciebie.
🎟️ Promocja Afiliacyjna — darmowe kupony rejestracyjne od dostawców, których nie sponsorujemy (kliknij, aby rozwinąć) Ta sekcja jest przeznaczona wyłącznie na kody polecające/kupony. Sponsorowane partnerstwa znajdują się w sekcji 🤝 Wspierane przez naszych Przyjaciół Open Source powyżej. OmniRoute nie ma żadnego sponsoringu ani partnerstwa z wymienionymi tutaj dostawcami — są to publiczne kupony, z których każdy może skorzystać.
AgentRouter
AgentRouter
agentrouter.org
AgentRouter — rejestracja afiliacyjna · **$100 darmowych kredytów** przy rejestracji (darmowy serwer, spodziewaj się wyższego opóźnienia — najlepszy do testowania, nie do produkcji). Wysokiej klasy wsparcie w OmniRoute od **v3.8.50**: Uzupełnianie czatu, format danych kompatybilny z Anthropic i ścieżka kompatybilna z OpenAI. Dostępne modele to claude-opus-4-8, claude-opus-5, gpt-5.6-sol i inne. **Zdobądź swoje $100 →**

⚠️ *Link afiliacyjny — OmniRoute nie ma sponsoringu ani partnerstwa z tym dostawcą.*
Znasz innego dostawcę z hojnym darmowym kuponem rejestracyjnym, który przynosi korzyści użytkownikom OmniRoute? Otwórz zgłoszenie, a dodamy go tutaj.

## 🎯 Kombinacje — flagowa funkcja
Animowane przykłady 18 z 20 strategii routingu kombinacji — po jednym kafelku na strategię: priority, fill-first, weighted, round-robin, p2c, least-used, random, strict-random, cost-optimized, headroom, reset-window, reset-aware, context-relay, context-optimized, lkgp, auto, fusion, pipeline. Strategie cache-optimized i quota-weighted nie są animowane; poniższa tabela opisuje wszystkie 20. > **Kombinacja** to łańcuch modeli, między którymi OmniRoute routuje **automatycznie**. Jeśli limit zostanie wyczerpany, dostawca ulegnie awarii lub koszty gwałtownie wzrosną, kombinacja może przejść do następnego kwalifikującego się, sprawnego modelu. 🛡️ ### ⚡ Bez konfiguracji — po prostu użyj `auto` Nie musisz tworzyć kombinacji. Ustaw model na `auto` (lub jeden z wariantów), a OmniRoute utworzy wirtualną kombinację z połączonych dostawców, oceniając ich na bieżąco:
Identyfikator modeluCo optymalizuje
auto🎯 Zrównoważone ustawienie domyślne (LKGP — pozostaje przy ostatnim sprawdzonym dostawcy)
auto/coding🧑💻 Wagi ukierunkowane przede wszystkim na jakość generowania kodu
auto/fast⚡ Najpierw najniższe opóźnienie
auto/cheap💰 Najpierw najniższy koszt za token
auto/subscription🎟️ Tylko limit subskrypcji, za którą już płacisz — w razie niepowodzenia kończy działanie, nigdy nie przełącza się na płatną opcję zapasową (przewodnik)
auto/thrifty🪜 Najpierw limit planu, a następnie stopniowe przechodzenie do najtańszych płatnych opcji — powrót do planu po odnowieniu limitu (przewodnik)
auto/offline🔋 Najpierw największy zapas limitu / ograniczenia szybkości
auto/smart🔭 Najpierw jakość + 10% eksploracji w celu odkrywania lepszych modeli
auto/lkgp📌 Jawne trzymanie się ostatniego sprawdzonego dostawcy
auto/chaos🧪 Równoległe rozsyłanie do panelu modeli (po jednym na dostawcę, domyślnie 5), zwracające jedną odpowiedź; jedno wywołanie nadrzędne na każdy model w panelu, bez wstrzykiwania awarii
## ### 🔀 Lub utwórz własną — 20 strategii routingu Wszystkie **20** strategii — łącz je dowolnie na poszczególnych etapach kombinacji:
# Strategia Jak działa
1 priority Uporządkowana lista z pierwszym celem — wyczerpuje każdy przed przejściem do następnego 🥇
2 fill-first W pełni wykorzystuje limit każdego celu przed przejściem dalej
3 weighted Losowy wybór ważony wagą każdego celu
4 round-robin Cyklicznie przechodzi przez cele w ustalonej kolejności
5 p2c Losowe równoważenie obciążenia metodą wyboru spośród dwóch opcji
6 least-used Wybiera cel o aktualnie najniższym obciążeniu
7 random Jednostajny wybór losowy (z usuwaniem duplikatów)
8 strict-random Wybór losowy bez usuwania powtórzeń 🎲
9 cost-optimized Minimalizuje koszt $ na żądanie na podstawie aktualnych cen katalogowych 💸
10 headroom Wybiera cel z największym pozostałym limitem
11 quota-weighted Pomija konta z wyczerpanym limitem, a następnie losuje proporcjonalnie do pozostałego limitu ÷ bieżącego obciążenia — istniejące konwersacje pozostają przypięte ⚖️
12 reset-window Preferuje cel, którego okres limitu odnowi się najwcześniej
13 reset-aware Klasyfikuje według czasu odnowienia limitu — najpierw krótkie okresy 📊
14 context-relay Przekazuje kontekst między celami podczas długich konwersacji 🧠
15 context-optimized Wybiera opcję najlepiej dopasowaną do bieżącego rozmiaru kontekstu
16 cache-optimized Przypina każdy prefiks promptu wielokrotnego użytku do tego samego konta — maksymalizuje trafienia w pamięci podręcznej promptów 🎯
17 lkgp Ostatnia sprawdzona ścieżka — przypina do ostatniego dostawcy, który pomyślnie obsłużył żądanie, a następnie przełącza się na reguły awaryjne
18 auto Bieżąca ocena 16 czynników dla każdego połączenia 🤖
19 fusion Rozsyła żądanie do panelu modeli, a model oceniający syntetyzuje jedną odpowiedź 🧬
20 pipeline Łączy etapy — dane wyjściowe każdego celu są przekazywane do następnego 🔗
Silnik Auto-Combo ocenia każdego kandydata na podstawie **16 czynników** (stan, limity, koszt, opóźnienie, dopasowanie do zadania, jakość, dostępność sesji…) — zobacz [`docs/routing/AUTO-COMBO.md`](docs/routing/AUTO-COMBO.md). ## ### 🧱 Odporność jest wbudowana (3 niezależne warstwy) Odporność OmniRoute — 3 niezależne warstwy samonaprawcze, właściwa warstwa dla właściwej awarii. Warstwa 1: wyłącznik obwodu dostawcy (cały dostawca): uruchamia się wyłącznie przy błędach 408/5xx, progi: OAuth 8× / klucz API 12× / lokalnie 2×, resetuje się po 60s/30s/15s, przechodząc do próby w stanie HALF-OPEN, odzyskiwanie na żądanie; w stanie OPEN kombinacja przekierowuje ruch do następnego dostawcy. Warstwa 2: okres wyciszenia połączenia (jeden klucz/konto): bazowo 5s dla OAuth / 3s dla klucza API, wykładnicze wycofanie ×2 z zabezpieczeniem przed efektem „thundering herd”, kod 429 respektuje Retry-After, sukces usuwa cały stan błędu; klucz w okresie wyciszenia jest pomijany, podczas gdy pozostałe klucze nadal obsługują żądania. Warstwa 3: blokada modelu (jeden model): kod 429 dla modelu, lokalny kod 404 lub odmowy trybu blokują tylko ten model — nigdy całe połączenie. Stany końcowe (zablokowany, wygasły, wyczerpane środki) wymagają interwencji operatora, a nie okresu wyciszenia. 📖 [Silnik Auto-Combo](docs/routing/AUTO-COMBO.md) · [Przewodnik po odporności](docs/architecture/RESILIENCE_GUIDE.md)
## 🏆 Co wyróżnia OmniRoute
Co wyróżnia OmniRoute — aktualne zestawienie funkcji w porównaniu z 9router, OpenRouter, CLIProxyAPI i LiteLLM w 13 obszarach. OmniRoute: 388 dostawców, ponad 150 wbudowanych bezpłatnych progów, 20 strategii routingu, kompresja tokenów z wykorzystaniem 12 silników, wbudowany serwer MCP ze 110 narzędziami, protokół agentów A2A, trwała pamięć, mechanizmy ochronne, agenci chmurowi, ukrywanie odcisku TLS, Desktop/Termux/PWA oraz 67 lokalizacji interfejsu i18n. OmniRoute jest objęty licencją MIT i można go samodzielnie hostować. Możliwości i liczby dotyczące konkurencyjnych rozwiązań mogą się zmieniać; zobacz powiązaną metodologię. 📊 Pełna metodologia i szczegóły dotyczące poszczególnych funkcji w porównaniu z 9router, OpenRouter, CLIProxyAPI i LiteLLM → [`docs/comparison/OMNIROUTE_VS_ALTERNATIVES.md`](docs/comparison/OMNIROUTE_VS_ALTERNATIVES.md)
## 💚 Wesprzyj OmniRoute OmniRoute jest udostępniany na licencji MIT i rozwijany w sposób otwarty. Jeśli pozwala Ci oszczędzać czas lub pieniądze, oto jak możesz pomóc zachować jego niezależność — wybierz dowolną formę wsparcia. Sponsoring nigdy nie wpływa na priorytet routingu; zapewnia widoczność, a nie wyższą pozycję.
⭐ Dodaj gwiazdkę do repozytoriumBezpłatnie — naprawdę pomaga zwiększyć widocznośćDodaj gwiazdkę OmniRoute
🐙 GitHub SponsorsJednorazowo lub co miesiąc · bez opłat platformowychgithub.com/sponsors/diegosouzapw
☕ Ko-fiSzybki jednorazowy datek, bez konieczności rejestracji darczyńcyko-fi.com/diegosouzapw
🧋 Buy Me a CoffeeDrobny, nieformalny gestbuymeacoffee.com/diegosouzapw
🖐 LiberapayCyklicznie · organizacja non-profit · open sourceliberapay.com/diegosouzapw
🇧🇷 PIX (Brazylia)Natychmiastowo, bez opłatklucz i kod QR poniżej
₿ KryptowalutyBTC · ETH · USDT-TRC20 · USDC-Solanaadresy poniżej
**🇧🇷 PIX** — natychmiastowo, bez opłat (Brazylia) Kod QR PIX OmniRoute Klucz (losowy): `5d865059-bc44-483a-962d-43ceb80126eb` Kod PIX do skopiowania i wklejenia: ``` 00020101021126580014br.gov.bcb.pix01365d865059-bc44-483a-962d-43ceb80126eb5204000053039865802BR5922OMNIROUTE CONTRIBUICAO6006BRASIL62070503***630475DD ```
₿ Kryptowaluty — BTC · ETH · USDT-TRC20 · USDC-Solana (kliknij, aby rozwinąć)
₿ BTCBitcoin (SegWit)bc1qh00smz004sy85wyl28v77tenkt3ckl6eaep7fd
Ξ ETHEthereum (ERC20)0x64Cf6B68A6Ff34288e89172950a2d00102337a84
₮ USDTTron (TRC20)TKAF41JpuQrHbKTnsQa9svJE2T192Hvsc2
$ USDCSolana2emNNZzVVWQc3FQ2wk9M6qXUQmW8AKdjjL174fXR28Tu
⚠️ Każdą monetę wysyłaj wyłącznie w podanej sieci — wysłanie jej w niewłaściwej sieci może spowodować utratę środków.
🐛 Znalazłeś błąd lub masz uwagi? Otwórz [dyskusję](https://github.com/diegosouzapw/OmniRoute/discussions).

Uwagi dla deweloperów: Podczas npm install/postinstall projekt może dla wygody dewelopera wygenerować lokalny plik .env. Plik ten jest celowo ignorowany za pośrednictwem .gitignore (zobacz .gitignore) i nigdy nie może zostać zatwierdzony w repozytorium — jeśli zostanie zatwierdzony przypadkowo, zmień wszystkie ujawnione dane poufne i usuń plik z historii. Wskazówki dotyczące zarządzania lokalnymi plikami środowiskowymi i danymi poufnymi znajdziesz w dokumencie docs/DEVELOPER-ENVIRONMENT.md.

## 📡 OmniRoute Radar Główna wartość deklarowana dla bezpłatnego poziomu nadal wynosi **~1.62B tokenów/miesiąc** na podstawie udokumentowanego, pozbawionego duplikatów między pulami katalogu powyżej. Tymczasowe środki przyznawane przy rejestracji u dostawców mogą niezależnie zwiększyć limit w pierwszym miesiącu do **~2.22B**. Radar to opcjonalna, podpisana nakładka na katalog dla osób, które chcą mieć dostęp do bardziej aktualnych informacji o dostępności bezpłatnych modeli między wydaniami OmniRoute; katalog społecznościowy oraz wszystkie istniejące bezpłatne funkcje pozostają bezpłatne. Osoby wspierające projekt mogą otrzymywać aktualizowany na bieżąco katalog oraz informacje o dodatkowych możliwościach oferowanych przez dostawców. Jego oddzielny, zmienny pułap wynosi **maksymalnie około 3B tokenów/miesiąc**, zależnie od dostępności u dostawców. Pułap ten nie jest gwarantowany: dostawcy mogą w dowolnym momencie zmieniać limity, kryteria kwalifikacji, modele lub regiony. Radar jest opcjonalny i obsługuje wyłącznie żądania GET. Klient OmniRoute nie przesyła promptów, ruchu, konfiguracji dostawców, telemetrii użytkowania ani lokalnego stanu odrzucenia powiadomień. Informacje o kryteriach kwalifikacji oraz aktualnym katalogu znajdziesz na stronie **[radar.omniroute.online/planos](https://radar.omniroute.online/planos)**.
## ✨ Co nowego
> Najważniejsze zmiany od **v3.8.20 → v3.8.54**. Pełna historia w [`CHANGELOG.md`](CHANGELOG.md). - **⚖️ Routing `quota-weighted`** — 20. strategia combo pomija wyczerpane konta, a następnie losuje spośród pozostałych proporcjonalnie do pozostałego limitu ÷ obciążenia żądań w toku, zachowując przypisanie istniejących rozmów. → [Auto-Combo](docs/routing/AUTO-COMBO.md) - **🧰 Tryb bez interfejsu** — `omniroute serve --headless` (lub `OMNIROUTE_HEADLESS=1`) uruchamia wyłącznie silnik proxy `/v1/*`, wyłączając pulpit i podsystemy dostępne tylko z pulpitu. → [Tryb bez interfejsu](docs/guides/HEADLESS.md) - **🔎 Wykrywanie modeli** — `/v1/models` filtruje według możliwości, kontekstu, rodzaju i tekstu, a `POST /v1/models/query` zwraca krótką deterministyczną listę z tą samą widocznością dla poszczególnych kluczy. → [Dokumentacja API](docs/reference/API_REFERENCE.md) - **🔑 Routing dla poszczególnych kluczy** — przypnij klucz API do jednego modelu lub combo za pomocą `forcedModel`, a także atomowo dodawaj lub usuwaj modele i combosy klucza (`/api/keys/{id}/access`). → [Dokumentacja API](docs/reference/API_REFERENCE.md) · [OpenAPI](docs/openapi.yaml) - **🛡️ Bardziej szczegółowa kontrola danych osobowych** — wybór poszczególnych typów, do 20 zweryfikowanych niestandardowych wzorców maskowania oraz liczniki wykryć dla poszczególnych typów; samo maskowanie pozostaje opcjonalne. → [Mechanizmy ochronne](docs/security/GUARDRAILS.md) - **🌍 67 języków** — pulpit, mirrory dokumentacji i CLI, a `npm run i18n:add-locale` dodaje język wszędzie za pomocą jednego polecenia. → [Przewodnik i18n](docs/guides/I18N.md) - **🎛️ OmniConductor** — przychodząca delegacja A2A do floty agentów, umiejętności Conductor na karcie agenta oraz panel pulpitu z rozmową głosową push-to-talk Faro. → [Serwer A2A](docs/frameworks/A2A-SERVER.md) - **🛂 Adaptacyjne dopuszczanie i ochrona przed przeciążeniem** — ciężkie żądania czatu są kolejkowane zamiast kończyć się błędem 503, z atomowymi kroczącymi dzierżawami RPM dla każdego połączenia. → [Przewodnik po odporności](docs/architecture/RESILIENCE_GUIDE.md) - **🗂️ Kanoniczna kolejność `/v1/models`** — jeden ciągły blok zgrupowany według dostawcy dla każdego dostawcy (combosy przypięte na początku), stabilny we wszystkich źródłach katalogu. → [Dokumentacja API](docs/reference/API_REFERENCE.md) - **🗜️ Wzmocnienie kompresji** — domyślnie włączona ochrona przed nadmierną inflacją, pakiety Caveman dla DE / FR / JA i chińskiego (wényán), filtry RTK dla Gradle i .NET. → [Kompresja](docs/compression/COMPRESSION_ENGINES.md) - **💸 Uczciwy koszt ryczałtowy** — dostawcy subskrypcji / planów programistycznych są wykazywani jako **$0** w analizie kosztów; budżet, limity i routing nadal korzystają z szacunków. → [Dokumentacja API](docs/reference/API_REFERENCE.md) - **⚖️ Routing Quota-Share** — sprawiedliwie dzieli limit współdzielonego konta między pule kluczy, zapewniając wykorzystanie zasobów dzięki pożyczaniu bezczynnych przydziałów. → [Przewodnik po odporności](docs/architecture/RESILIENCE_GUIDE.md) - **🤖 Konfiguracja CLI/agenta jednym poleceniem** — 15 zarejestrowanych poleceń `setup-*`; `omniroute run` uruchamia 7 CLI (Claude Code, Codex, Aider, Goose, OpenCode, Qwen Code, Gemini CLI); `omniroute configure` obsługuje 11 celów, oferując interaktywny wybór dostawcy i modelu oraz ulubione ustawienia dla poszczególnych kontekstów. → [Integracje CLI](docs/guides/CLI-INTEGRATIONS.md) - **🛰️ Tryb zdalny** — sterowanie zdalnym OmniRoute za pomocą tokenów o ograniczonym zakresie (`connect` / `contexts` / `tokens`) oraz pomocnika OAuth `antigravity` do instalacji na VPS. → [Tryb zdalny](docs/guides/REMOTE-MODE.md) - **🧭 Inteligentniejszy automatyczny routing** — combosy `auto/:`, **Fusion** (panel modeli + sędzia), routing świadomy zadań, zastępowanie modelu / trybu / budżetu USD dla poszczególnych żądań. → [Auto-Combo](docs/routing/AUTO-COMBO.md) - **🗜️ Wtyczkowa kompresja** — 12 kompozytowalnych silników + Compression Studios: LLMLingua-2, dwupoziomowy Ultra, omniglyph, bramka wierności dla poszczególnych kroków, GCF v3.2, edytor z przeciąganiem i zmianą kolejności. → [Kompresja](docs/compression/COMPRESSION_ENGINES.md) - **🕵️ Przezroczyste odszyfrowywanie MITM (TPROXY)** — CLI do przechwytywania, które ignorują zmienne środowiskowe proxy, wraz z instalatorem urzędu certyfikacji dla poszczególnych SNI i magazynu zaufania. → [MITM/TPROXY](docs/security/MITM-TPROXY-DECRYPT.md) - **💸 Telemetria kosztów wszędzie** — nagłówki kosztów i użycia `X-OmniRoute-*` na każdym endpointcie, nagłówek oszczędności trafień pamięci podręcznej oraz limity wydatków USD dla poszczególnych kluczy. → [Dokumentacja API](docs/reference/API_REFERENCE.md) - **🧠 Pamięć pod Twoją kontrolą** — domyślnie wyłączona, opcjonalna kwantyzacja wektorów int8 + typowane wygaszanie, `x-omniroute-no-memory` dla poszczególnych żądań. → [Pamięć](docs/frameworks/MEMORY.md) - **🛡️ Bezpieczeństwo** — ochrona przed prompt injection na każdej trasie LLM (zestaw red-team), opcjonalny mechanizm maskowania danych uwierzytelniających (usuwa ujawnione klucze API i sekrety w obu kierunkach), bezpłatne wyszukiwanie w sieci DuckDuckGo jako ostateczność oraz opcjonalna bramka logowania OIDC dla pulpitu (logowanie hasłem pozostaje zawsze dostępne). → [Mechanizmy ochronne](docs/security/GUARDRAILS.md) - **🖼️ Nowe endpointy** — `/v1/ocr` (Mistral OCR) i `/v1/audio/translations` (w stylu Whisper) uzupełniają obsługę multimediów. → [Dokumentacja API](docs/reference/API_REFERENCE.md) - **🎨 Generowanie obrazów / wideo / dźwięku** — jedno API do multimediów: xAI Grok Imagine i wideo Novita AI, ComfyUI, Magnific, Adobe Firefly, Segmind oraz dostawcy mowy, tacy jak ElevenLabs. → [Dokumentacja API](docs/reference/API_REFERENCE.md) - **🌍 Wdrażanie i operacje** — `basePath` odwrotnego proxy, automatyczne wykrywanie języka przeglądarki, śledzenie urządzeń dla poszczególnych kluczy, zaufanie MITM bez uprawnień roota, lokalizacja zh-TW. → [Środowisko](docs/reference/ENVIRONMENT.md) - **🤝 Więcej dostawców i agentów** — agenci chmurowi (Codex Cloud, Cursor, Devin, Jules), Grok Build (xAI) z przeglądarką i logowaniem OAuth, karta Ollama jako pełnoprawny element, Claude Opus 5 i Sonnet 5, oficjalne partnerstwo z Kimi (Code/Web/Moonshot), Zed, Requesty, SenseNova, Yuanbao, Agnes AI… oraz odświeżony **katalog 388 dostawców**. → [Dostawcy](docs/reference/PROVIDER_REFERENCE.md) - **📡 Przejrzystość routingu** — każda odpowiedź zawiera nagłówek `X-OmniRoute-Decision` z nazwą strategii/dostawcy i opóźnieniem, które obsłużyły żądanie; nowa strategia combo `cache-optimized` oraz współczynnik `cacheAffinity` Auto-Combo kierują powtarzane żądania z powrotem do połączenia przechowującego buforowany prefiks, a tylko do odczytu endpoint `/v1/auto-combo/{channel}/candidates` udostępnia bieżącą pulę kandydatów kanału `auto/*`. → [Auto-Combo](docs/routing/AUTO-COMBO.md) - **⚡ Lokalna wydajność i infrastruktura** — lokalny Redis uruchamiany jednym kliknięciem, wdrażanie przekaźników Cloudflare Workers / Deno Deploy, Bifrost i Mux jako nadzorowane usługi osadzone. → [Usługi osadzone](docs/frameworks/EMBEDDED-SERVICES.md) - **🧩 Także w zestawie** — framework wtyczek i marketplace, frameworki umiejętności Omni/Agent/GitHub, integracja z sejfem Obsidian (22 narzędzia MCP), zgodne z OpenAI interfejsy API Batch i Files, semantyczna pamięć podręczna odpowiedzi, grywalizacja z tabelami wyników, wykrywanie agentów ACP (15 wbudowanych agentów), zaplanowany eksport logów do BigQuery, równoległe rozgałęzianie na wiele modeli `auto/chaos`, mostek bota Telegram, menedżer wersji w aplikacji oraz rankingi bezpłatnych dostawców LMArena-ELO. → [Dokumentacja](docs/README.md)
## 🤖 Kompatybilne CLI i Agenci Kodowania > Jedna konfiguracja — `http://localhost:20128/v1` — i **każde** AI IDE lub CLI działa na darmowych i niskokosztowych modelach.
Claude Code
Claude Code
                           
Codex CLI
Codex CLI
                           
Cline
Cline
                           
Kilo Code
Kilo Code
Zoo Code
Zoo Code
Continue
Continue
                           
Aider
Aider
                           
ForgeCode
ForgeCode
                           
jcode
jcode
                           
DeepSeek TUI
DeepSeek TUI
                           
CodeWhale
CodeWhale
                           
OpenCode
OpenCode
                           
Factory Droid
Factory Droid
                           
GitHub Copilot CLI
Copilot CLI
                           
Cursor CLI
Cursor CLI
                           
Smelt
Smelt
                           
Pi (pi-coding-agent)
Pi
                           
Grok Build (xAI)
Grok Build
                           
Hermes Agent (Nous Research)
Hermes Agent
                           
OpenClaw
OpenClaw
                           
Goose
Goose
                           
Open Interpreter
Open Interpreter
                           
Warp AI
Warp AI
                           
deyin.ai
deyin.ai
                           
+ działa także z · Agent Deck · Kiro · Command Code · Antigravity · Windsurf · AMP · każdym narzędziem kompatybilnym z OpenAI
📖 Konfiguracja dla każdego z 39 narzędzi (28 CLI Code + 11 CLI Agents) → [`docs/reference/CLI-TOOLS.md`](docs/reference/CLI-TOOLS.md) · 🧩 Wtyczka OpenCode → [`@omniroute/opencode-provider`](https://www.npmjs.com/package/@omniroute/opencode-provider)

**Uruchom dowolny obsługiwany CLI przez OmniRoute jednym poleceniem** — bez zapisywania plików konfiguracyjnych, dane uwierzytelniające wstrzykiwane do każdego procesu, Qwen/Gemini otrzymują tymczasowy, izolowany katalog domowy: ```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" # Lub wybierz dostawcę+model interaktywnie i zapisz własną konfigurację narzędzia: omniroute configure codex # także: claude opencode qwen aider goose gemini cline continue kilo 5dive ``` Każde polecenie respektuje aktywny zdalny kontekst (`omniroute connect `), `--dry-run` pokazuje dokładnie jakie zmienne środowiskowe/argumenty zostaną użyte bez wykonywania polecenia, a `--api-key-env NAME` chroni sekrety przed zapisaniem w historii powłoki. → [Integracje CLI](docs/guides/CLI-INTEGRATIONS.md)
## 🌐 388 dostawców AI — 153 oznaczonych w katalogu jako bezpłatni
> **388 zarejestrowanych dostawców** w kanonicznych kolekcjach czatu, multimediów, wyszukiwania, lokalnych, agentów chmurowych i systemowych, w tym **153 z metadanymi wykrywania `hasFree: true`**. Rejestr modeli czatu obejmuje **239 dostawców / 3 059 unikalnych par dostawca–model / 1 475 surowych identyfikatorów modeli**; oddzielny katalog bezpłatnych limitów obejmuje **471 wierszy dotyczących poszczególnych modeli**, **34 cykliczne pule** oraz **52 cyklicznych lub bezkluczowych dostawców bezpłatnych na zawsze**. Są to celowo różne mianowniki; definicje i obliczenia z deduplikacją pul znajdują się w [Informatorze dostawców](docs/reference/PROVIDER_REFERENCE.md) i [Bezpłatnych poziomach](docs/reference/FREE_TIERS.md).
### 🏢 Każde najważniejsze laboratorium — przez jeden endpoint
OpenAI
OpenAI
                           
Anthropic
Anthropic
                           
Gemini
Gemini
                           
xAI Grok
xAI Grok
                           
DeepSeek
DeepSeek
                           
Mistral
Mistral
                           
Qwen
Qwen
                           
Meta Llama
Meta Llama
                           
Groq
Groq
                           
NVIDIA
NVIDIA
                           
MiniMax
MiniMax
                           
Cohere
Cohere
                           
Perplexity
Perplexity
                           
Hugging Face
HuggingFace
                           
Together
Together
                           
Fireworks
Fireworks
                           
Cloudflare
Cloudflare
                           
Baidu
Baidu
                           
…i ponad 350 kolejnych — każda ikona jest na bieżąco pobierana z katalogu dostawców panelu. 📖 [Informator dostawców](docs/reference/PROVIDER_REFERENCE.md)
### 🆓 Bezpłatnie na zawsze — 0 USD, bez karty
OpenCode Zen
OpenCode Zen
DeepSeek V4, Nemotron 3
Bez limitu tokenów
Kilo Code
Kilo Code
Automatyczny router, Tencent Hy3
Bezpłatnie na zawsze
Requesty
Requesty
GPT-OSS 120B, Nemotron
Bezpłatnie na zawsze
SiliconFlow
SiliconFlow
DeepSeek V3.2 / R1
Darmowy plan
Z.AI GLM
Z.AI GLM
GLM-4.7 / 4.5-Flash
Bezpłatnie na zawsze
Baidu ERNIE
Baidu ERNIE
ERNIE 4.0
Bezpłatnie na zawsze
Qoder AI
Qoder AI
Qwen3-Max, Kimi-K2
BEZPŁATNIE bez limitu
Pollinations
Pollinations
GPT, Llama, Claude
Klucz nie jest wymagany
Cloudflare AI
Cloudflare AI
50+ modeli
10 tys. neuronów/dzień
NVIDIA NIM
NVIDIA NIM
GLM, MiniMax
~40 RPM bezpłatnie
Cerebras
Cerebras
GLM 4.7, GPT-OSS
Jednorazowy kredyt w wysokości 5 USD; wymagana karta
OpenRouter
OpenRouter
Darmowe modele
+10 USD → wyższy RPM
📖 Pełny katalog dostępny w formacie czytelnym maszynowo → [`docs/reference/PROVIDER_REFERENCE.md`](docs/reference/PROVIDER_REFERENCE.md)
## 🖥️ Gdzie działa OmniRoute — gdziekolwiek
> Ta sama aplikacja, Twoja maszyna, Twoje zasady. Z globalnej instalacji npm do** Twój telefon** za pośrednictwem Termuxa.
Platforma Zainstaluj Najważniejsze cechy
📦 npm (globalny) npm zainstaluj -g omniroute Jedno polecenie, dowolne OS
⚡ Bun (globalny) bun dodaj -g omniroute Ten sam plik tar rejestru, szybsza instalacja
🐳 Docker uruchomienie okna dokowanego… diegosouzapw/omniroute Multi-arch AMD64 + ARM64
🖥️ Desktop (Electron) npm run electro:build Natywne okno + zasobnik systemowy — Windows / macOS / Linux
🎩 Pasek menu (OmniRouteTray) brew install --cask zoispag/tap/omniroute-tray Nadzoruje & automatyczną aktualizację serwera — macOS
💪 ARM natywny arm64 Raspberry Pi, serwery ARM, Apple Silicon
📱 Android (Termux) pkg zainstaluj nodejs && npx -y omniroute Uruchamia na twoim telefonie , 24/7, bez rootowania
📲 PWA„Dodaj do ekranu głównego” Pełny ekran, offline, możliwość instalacji z przeglądarki
🧩 wtyczka OpenCode @omniroute/opencode-providerOpenCode integracja
🤖 VS Kod Copilot Czat zainstaluj OmniCopilot rozszerzenie Każdy model OmniRoute w natywnym Copilot Selektor czatów — stabilny & Insiderzy
🛠️ Ze źródła npm install && npm run dev Zhakuj to, wnieś swój wkład
📖 [Docker Przewodnik](docs/guides/DOCKER_GUIDE.md) · [Pulpit](electron/README.md) · [Taca paska menu](https://github.com/zoispag/omniroute-tray) · [Termux](docs/guides/TERMUX_GUIDE.md) · [PWA](docs/guides/PWA_GUIDE.md) · [OpenCode](docs/frameworks/OPENCODE.md)
### 🧩 Nowość: OmniRoute w natywnym czacie VS Code Copilot
> Żadnego nowego paska bocznego, żadnego nowego czatu UI — każdy model, który obsługuje OmniRoute pojawia się bezpośrednio w**Copilot Selektor modeli czatu, którego już używasz** . Od wersji VS Code 1.122 modele dostawców działają bez logowania się do GitHub lub subskrypcji Copilot — tryb agenta, wywoływanie narzędzi i wizja są bezpłatne. Zainstaluj** [OmniCopilot](https://github.com/diegosouzapw/OmniCopilot)** rozszerzenie, skieruj je na swój serwer OmniRoute (domyślnie jest to `localhost:20128`), a następnie otwórz Copilot Chat → model picker →** Zarządzaj modelami…** →**OmniRoute** . < td wyrównaj ="left">VS Code — stabilny & Insiderzy < td wyrównaj ="left">Cursor, Windsurf, VSCodium, Theia, serwer kodu, Gitpod, Antigravity, Kiro…
Store Link Współpracuje z
🧩 VS Code Marketplace Zainstaluj →
🔓 Otwórz rejestr VSX Zainstaluj →
Z poziomu edytora: otwórz plik** Rozszerzenia** przeglądaj, szukaj** "OmniRoute"** , kliknij** Zainstalować** — działa w ten sam sposób w obu sklepach. Źródło, problemy i element Runbook publikowania na żywo w [diegosouzapw/OmniCopilot](https://github.com/diegosouzapw/OmniCopilot). 📖 [VS Kod Copilot Przewodnik po czacie](docs/guides/VSCODE-COPILOT.md) — konfiguracja, co pokazuje selektor, pulpit nawigacyjny w zakładce, rozwiązywanie problemów
### 🎩 Nowość: OmniRouteTray — Twoja brama, dostępna na pasku menu
> `omniroute serve` jest najszczęśliwsza, gdy jest zawsze włączona.** [OmniRouteTray](https://github.com/zoispag/omniroute-tray)** zamienia to w aplikację z paskiem menu, którą można ustawić i zapomnieć dla macOS: uruchamia serwer, utrzymuje go przy ponownym uruchomieniu, aktualizuje go na miejscu i udostępnia budżet tokenów na żywo jednym kliknięciem —** żadne okno terminala nie pozostało otwarte, nie ma `npm install -g omniroute` do opieki nad dzieckiem.** Zbudowany z [Tauri v2](https://v2.tauri.app/) (rdzeń Rust wielkości błędu zaokrąglenia), dostarcza własne podpisane środowisko wykonawcze Node 24 i zarządza instalacją OmniRoute należącą do aplikacji, więc nigdy nie walczy z globalnym `node`/`bun`. To** udostępnia istniejącą konfigurację i bazę danych `~/.omniroute/`** — więc jest to to samo OmniRoute które już prowadzisz, tylko w kapeluszu. 🎩
Co robi Jak
🟢 Nadzoruje serwer Spawnuje omniroute służyć , przyjmuje już działającą instancję zamiast ją duplikować
📊 Rzut oka na wykorzystanie na żywo Paski kwot dostawcy, Claude session/weekly limity z resetowanym odliczaniem, zestawienie kosztów na 30 dni
🔄 Automatyczne aktualizacje na miejscu Instalacja etapowa, atomowa zamiana, przywracanie w przypadku awarii — zawsze na najnowszej wersji
🚀 Uruchomienie przy logowaniu Opcjonalne uruchomienie przy logowaniu; tylko w zasobniku, bez ikony dokowania
🩺 Doctor & logi Diagnostyka jednym kliknięciem i dostęp do dziennika serwera
```sh brew install --cask zoispag/tap/omniroute-tray ``` Wolisz pobierać? Pobierz najnowszy .dmg z Uwalnia . Źródło, problemy i kompilacja dokumentacja na żywo w zoispag/omniroute-tray.
💛 Projekt społecznościowy autorstwa @zoispag — nie jest to oficjalne wydanie OmniRoute.

## 🔒 Prywatność i podejście local-first
Prywatność i podejście local-first — brama oraz warstwa sterowania OmniRoute działają na Twoim komputerze. Prompty są wysyłane do dostawcy nadrzędnego wybranego dla każdego żądania; OmniRoute nie dodaje żadnego hostowanego etapu przetwarzania promptów, a telemetria jest domyślnie wyłączona. Dane uwierzytelniające są szyfrowane w spoczynku za pomocą AES-256-GCM; mechanizmy kontroli obejmują zakresy kluczy API, filtrowanie adresów IP, limity szybkości, zabezpieczenia przed wstrzykiwaniem promptów, usuwanie nagłówków dostawców nadrzędnych, opcjonalną redakcję danych osobowych, oczyszczone komunikaty o błędach oraz lokalny dziennik audytowy SQLite. OmniRoute jest udostępniany na licencji MIT i może być hostowany samodzielnie. 📖 [Autoryzacja](docs/architecture/AUTHZ_GUIDE.md) · [Mechanizmy ochronne](docs/security/GUARDRAILS.md) · [Zgodność](docs/security/COMPLIANCE.md)
## 🔌 Pełny interfejs CLI + A2A i MCP
> Poza serwerem OmniRoute jest **pełnoprawnym centrum sterowania z wiersza poleceń** z **ponad 80 poleceniami**, a także obsługuje otwarte protokoły agentowe, dzięki czemu agent AI może zarządzać nim **samodzielnie**. ### ⌨️ Prawdziwy interfejs CLI (nie tylko `start`) ```bash omniroute # uruchamia bramę i panel (port 20128) omniroute chat # interaktywny klient czatu TUI (polecenia z ukośnikiem: /model /combo /skill /memory) omniroute setup # kreator pierwszego uruchomienia z instrukcjami omniroute doctor # diagnozuje dostawców, porty i zależności natywne ``` ### 🛰️ Tryb zdalny — uruchom CLI tutaj, a OmniRoute na VPS-ie Masz OmniRoute na serwerze? Steruj nim z laptopa za pomocą **tego samego CLI**. Zaloguj się raz przy użyciu tokenu dostępu o określonym zakresie; każde kolejne polecenie będzie kierowane do zdalnej instancji. ```bash omniroute connect 192.168.0.15 # hasło → token o określonym zakresie, zapisany jako kontekst omniroute models # ← działa na ZDALNYM serwerze omniroute configure codex # ← wybiera zdalny model i zapisuje lokalny profil Codex omniroute tokens create --name ci --scope read # tworzy tokeny o węższym zakresie dla innych maszyn omniroute contexts use default # ← przełącza z powrotem na lokalny serwer ``` Tokeny mają zakres `read` / `write` / `admin`; trasy uruchamiające procesy pozostają dostępne wyłącznie przez interfejs pętli zwrotnej. 📖 [Tryb zdalny](docs/guides/REMOTE-MODE.md)
Animowana demonstracja terminala z interfejsem CLI OmniRoute — omniroute providers list, omniroute combo list i omniroute health — prezentująca 89 poleceń najwyższego poziomu: providers · oauth · keys · combo · nodes · models · cache · compression · cost · usage · quota · health · resilience · telemetry · logs · audit · mcp · a2a · cloud · memory · skills · eval · tunnel · backup · sync · webhooks · policy · pricing · translator · simulate …
### 🤝 Podłącz agenta — a będzie samodzielnie sterować OmniRoute Udostępnij OmniRoute przez **MCP**, **A2A**, **REST API**, **webhooki** lub **zdalny interfejs CLI** — każdy odpowiednio wyposażony agent (lub Twój własny kod) otrzyma dostęp do całej bramy: routingu, dostawców, kombinacji, pamięci podręcznej, kompresji i pamięci — autonomicznie. Poniższe punkty końcowe HTTP są dostępne pod adresem `http://localhost:20128`.
InterfejsPunkt końcowy / polecenieZastosowanie
🧰 MCP (stdio)omniroute --mcpIntegracja z Claude Desktop, Cursor i dowolnym klientem MCP
🌊 MCP (HTTP)/api/mcp/streamZdalny MCP — 110 narzędzi, 33 zakresy (egzekwowanie opcjonalne), pełna ścieżka audytu
📡 MCP (SSE)/api/mcp/sseStrumieniowy transport MCP
🤝 A2A/.well-known/agent.jsonKomunikacja między agentami, JSON-RPC 2.0 + SSE, 6 umiejętności
🌐 REST API/v1/*Zgodność z OpenAI — czat, osadzenia, obrazy, dźwięk, OCR
🔔 Webhooki/api/webhooksWysyłanie zdarzeń żądań i limitów do Slacka, Discorda, Telegrama lub pod dowolny adres URL
🛰️ Zdalny CLIomniroute connect Sterowanie zdalną instancją za pomocą tokenów dostępu o określonym zakresie
```bash # Udostępnij Claude Code pełny zestaw narzędzi OmniRoute przez MCP: claude mcp add-server omniroute --type http --url http://localhost:20128/api/mcp/stream ``` 📖 [Serwer MCP](docs/frameworks/MCP-SERVER.md) · [Serwer A2A](docs/frameworks/A2A-SERVER.md) · [Protokoły agentowe](docs/frameworks/AGENT_PROTOCOLS_GUIDE.md)
## 🗜️ Automatycznie oszczędzaj 15–95% tokenów
### 📖 Jak to działa — potok, architektura i obliczenia oszczędności Potok kompresji OmniRoute: przykładowe żądanie klienta zawierające 10 000 tokenów przechodzi przez 12 kompozycyjnych silników — Session-Dedup, CCR, Lite, RTK, Responses Tool Output, Headroom, Relevance, Caveman, Aggressive, LLMLingua-2, Ultra i OmniGlyph — i w udokumentowanym przykładzie złożonym może dotrzeć do dostawcy z około 1 080 tokenami. Uporządkowana treść jest chroniona przez mechanizmy ochrony i bramki wierności dla poszczególnych etapów; jawne tryby stratne lub eksperymentalne mogą przekształcać kwalifikującą się treść. Domyślna kombinacja złożona uruchamia `RTK → Caveman`. Gdy oba silniki działają na tym samym ładunku narzędzia/kontekstu, oszczędności się kumulują: ```txt combined = 1 − (1 − RTK) × (1 − Caveman_input) average = 1 − (1 − 0.80) × (1 − 0.46) = 89.2% range = 78.4 – 94.6% ``` Bloki kodu, adresy URL, JSON i dane strukturalne są **zawsze chronione** przez silnik zachowania. > **Po co używać wielu tokenów, skoro wystarczy ich kilka?** Każde żądanie przechodzi przez potok kompresji OmniRoute **w sposób transparentny** — bez zmian po stronie klienta. Obecnie jest to **zestaw 12 kompozycyjnych silników**, które działają w kolejności i mogą być dowolnie łączone w zależności od kombinacji routingu — bazując na pomysłach z [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). ### 🧱 Zestaw 12 silników Silniki działają w kolejności potoku; każdy z nich można niezależnie włączać, wyłączać i konfigurować dla danej kombinacji:
#SilnikDziałanie
1Session-DedupUsuwa treść powtarzającą się między turami (adresowanie treści, między turami)
2CCRArchiwizuje duże bloki za znacznikami pobierania, pobierając je na żądanie
3LiteUsuwa zbędne białe znaki i skraca adresy URL obrazów (lekka bazowa opcja o niskim opóźnieniu)
4RTKInteligentne filtrowanie, usuwanie duplikatów i obcinanie wyników narzędzi (ze świadomością poleceń)
5Responses Tool OutputKompresja JSON w pierwszej kolejności bezstratna + ograniczona kompresja diagnostyczna wyników powłoki/łatek/wyszukiwania/budowania (Responses API)
6HeadroomBezstratna kompaktowa reprezentacja tabelaryczna tablic JSON (~30%) za pomocą dołączonego kodeka GCF
7RelevanceEkstrakcyjne ocenianie zdań względem ostatniego zapytania użytkownika
8CavemanOparta na regułach kompresja prozy (~65–75% w wynikach)
9AggressivePodsumowywanie + stopniowe „starzenie się” wcześniejszych tur
10LLMLingua-2Semantyczne przycinanie ML za pomocą MobileBERT ONNX — bezpieczne dla kodu, asynchroniczne
11UltraHeurystyczne przycinanie tokenów z opcjonalną warstwą małego modelu (SLM)
12OmniGlyphEksperymentalne kodowanie kontekstu jako obrazu dla zmierzonego Claude Fable 5 w bezpośredniej komunikacji z Anthropic; transformatory GPT 5.6 pozostają domyślnie wyłączone do czasu otrzymania potwierdzeń od dostawcy. Cztery profile kompresji (domyślnie agresywny, zrównoważony, bezpieczny dla kodu, przekazywanie bez zmian) (najbardziej agresywny; wymaga jawnego włączenia)
Bloki kodu, adresy URL i dane strukturalne są **zawsze zachowywane** bajt w bajt. **Gotowe ustawienia obsługiwane jednym kliknięciem** łączą silniki:
TrybOszczędnośćNajlepsze zastosowanie
🪶 Lite~15%Bezpieślna opcja domyślna do stałego użycia
🪨 Standard (Caveman)~30%Codzienne programowanie
⚡ Aggressive~50%Długie sesje intensywnie korzystające z narzędzi
🔥 Ultra~75%Maksymalna oszczędność
🧰 RTK60–90%Wyniki shell/test/build/git
🔗 Stacked (RTK → Caveman)78–95%Mieszane prompty + logi narzędzi
**Rzeczywisty przykład — tryb Standard:** > **Przed (69 tokenów):** _"Powodem ponownego renderowania komponentu React jest prawdopodobnie tworzenie nowej referencji obiektu przy każdym cyklu renderowania. Gdy przekazujesz obiekt inline jako prop, płytkie porównanie Reacta za każdym razem uznaje go za inny obiekt, co wywołuje ponowne renderowanie. Zalecam użycie useMemo do zapamiętania obiektu."_ > > **Po (19 tokenach):** _"Nowa referencja obiektu przy każdym renderowaniu. Obiekt inline jako prop = nowa referencja = ponowne renderowanie. Owiń w useMemo."_ > > **Ta sama odpowiedź. O 72% mniej tokenów. Bez utraty dokładności.** ✅ **Przykład PT-BR — tryb [Troglodita](https://github.com/leninejunior/troglodita):** > **Wcześniej (42 tokeny):** _„Problem polega na tym, że komponent renderuje się ponownie, ponieważ w każdym cyklu renderowania tworzona jest nowa referencja obiektu. Zaleciłbym użycie useMemo.”_ > > **Później (12 tokenów):** _„Ponowne renderowanie: nowa referencja w każdym cyklu (obiekt inline tworzony ponownie). Użyć `useMemo`.”_ > > **Ta sama odpowiedź. ~70% mniej tokenów. Techniczna precyzja zachowana.** ✅
### 🎚️ Poza silnikami — style wyjścia, adaptacyjne pokrętło i sterowanie per żądanie Powyższe 12 silników zmniejsza ilość danych **wejściowych**. Trzy kolejne warstwy kształtują **sposób**, **moment** oraz to, co **wychodzi**: - **🪄 Style wyjścia** _(sterowanie osią wyjścia)_ — wstrzykują deterministyczne, bezpieczne dla pamięci podręcznej instrukcje kształtujące odpowiedź; można je łączyć, a każdy z nich ma poziom intensywności `lite` / `full` / `ultra`. Dodanie stylu wymaga jednego wpisu w rejestrze: - **Zwięzła proza** — usuwa wypełniacze / rodzajniki / wyrażenia asekuracyjne; zachowuje dokładną treść techniczną. - **Mniej kodu** — YAGNI w stylu „leniwego starszego dewelopera”: najmniejsza działająca zmiana, bez niezamówionego rusztowania. - **Kucyk (leniwy starszy deweloper)** — wspina się po drabinie YAGNI, naprawia przyczynę źródłową, wprowadza najmniejszy działający diff. - **Mam ADHD (najpierw działanie)** — następne działanie na początku, ponumerowane kroki, jeden konkretny kolejny krok, bez wstępu. - **Zwięzły CJK (文言)** — ultrazwięzły styl klasycznego języka chińskiego (ograniczony lokalizacją do `zh`). - **🎯 Adaptacyjny budżet kontekstu** _(pokrętło)_ — zamiast jednego progowego przełącznika tokenów eskaluje najtańsze i powodujące najmniejsze straty silniki tylko tak dalece, jak jest to potrzebne, aby **zmieścić się w oknie kontekstu modelu**. Zasady: `reserve-output` (domyślna, uwzględniająca model) · `percentage` · `absolute`. Tryb: `floor` (gwarantuje dopasowanie) · `replace-autotrigger` (wygrywa jawny wybór użytkownika) · `off` (starszy próg). - **🎛️ Gdzie podejmowana jest decyzja o kompresji** _(priorytet, od wysokiego do niskiego)_ — nagłówek per żądanie `x-omniroute-compression` › nadpisanie kombinacji routingu › aktywny nazwany profil › adaptacyjne / automatyczne wyzwalanie › domyślne ustawienie panelu › wyłączone. Zastosowany plan jest zwracany w nagłówku odpowiedzi `X-OmniRoute-Compression: ; source=`. Automatyczne wyzwalanie według progu tokenów, włączenie adaptacyjnego pokrętła, przypięcie nazwanego profilu, jednorazowe ustawienie per żądanie lub przypisanie potoku do kombinacji routingu — wybierz rozwiązanie dopasowane do obciążenia. Opcjonalny offline’owy **harness ewaluacyjny** (`npm run eval:compression`) ocenia wierność względem oszczędności na przypiętym korpusie, zanim zatwierdzisz zmianę. 📖 [`COMPRESSION_GUIDE.md`](docs/compression/COMPRESSION_GUIDE.md) · [`RTK_COMPRESSION.md`](docs/compression/RTK_COMPRESSION.md) · [`COMPRESSION_ENGINES.md`](docs/compression/COMPRESSION_ENGINES.md)
# ⚡ Szybki start
**1) Zainstaluj i uruchom** ```bash npm install -g omniroute omniroute ``` > 💡 Widzisz `npm warn ERESOLVE` lub ostrzeżenia dotyczące zależności peer? [Możesz je zignorować](docs/guides/TROUBLESHOOTING.md#npm-install-warnings-eresolve--peer--deprecated). > **Używasz npm 11 lub nowszego?** npm może blokować skrypty cyklu życia pakietów, dopóki nie zostaną dozwolone. `postinstall` OmniRoute (`node scripts/build/postinstall.mjs`) jest wymagany do przygotowania natywnych plików środowiska uruchomieniowego. Podczas instalacji globalnej zezwól na pakiety wymienione w ostrzeżeniu npm. Dla zestawu pakietów zgłoszonego przez OmniRoute 3.8.54: > > ```bash > npm install -g --allow-scripts=omniroute,keytar,onnxruntime-node,@parcel/watcher,@swc/core,protobufjs,esbuild omniroute > ``` > > Aby ponownie używać tej listy dozwolonych pakietów podczas przyszłych instalacji globalnych, skonfiguruj ją raz, a następnie instaluj normalnie: > > ```bash > npm config set allow-scripts=omniroute,keytar,onnxruntime-node,@parcel/watcher,@swc/core,protobufjs,esbuild --location=user > npm install -g omniroute > ``` > > Lista zależności może zmieniać się między wydaniami; jeśli npm zgłosi inną listę, użyj nazw pakietów z tego ostrzeżenia. Zezwolenie na pakiet pozwala na uruchamianie jego skryptów instalacyjnych. > **Używasz Gemini Web lub innego dostawcy korzystającego z plików cookie przeglądarki?** Pakiet npm zawiera > Playwright, ale nie zawiera jego pliku binarnego Chromium. Przed wykonaniem pierwszego żądania do dostawcy internetowego zapoznaj się z > [konfiguracją Chromium dla Playwright](docs/guides/TROUBLESHOOTING.md#gemini-web-and-playwright-chromium). Panel jest dostępny pod adresem `http://localhost:20128` · API pod adresem `http://localhost:20128/v1`. **2) Połącz kwalifikującego się dostawcę za pomocą własnego konta** Panel → **Dostawcy** → wybierz dostawcę, którego aktualne warunki i limit odpowiadają Twojemu przypadkowi użycia → dodaj jego klucz API lub przejdź przez proces zakładania konta. Darmowe plany mogą wymagać rejestracji, zatwierdzenia lub metody płatności. Zapoznaj się z [przewodnikiem po darmowych planach](docs/getting-started/FREE-TIERS-GUIDE.md); dostępność bez klucza nie jest gwarantowana, a dostawcy oznaczeni jako `tos: avoid` są domyślnie wykluczeni z `auto`. **3) Skonfiguruj narzędzie programistyczne** ```txt Base URL: http://localhost:20128/v1 API Key: [copy from Dashboard → Endpoints] Model: auto (routes among eligible connections — or choose provider/model) ``` **4) Sprawdź, czy wszystko działa** ```bash curl http://localhost:20128/v1/models -H "Authorization: Bearer YOUR_KEY" ``` Powinny zostać wyświetlone połączone modele. 🎉 To wszystko — zacznij kodować, a OmniRoute automatycznie wybierze trasę i zapewni przełączanie awaryjne. Jeśli Twój klient nie może wysyłać niestandardowych nagłówków, OmniRoute udostępnia również aliasy zgodności z tokenem: ```txt OpenAI catalog: http://localhost:20128/vscode/YOUR_KEY/ OpenAI models: http://localhost:20128/vscode/YOUR_KEY/models OpenAI chat: http://localhost:20128/vscode/YOUR_KEY/chat/completions OpenAI responses: http://localhost:20128/vscode/YOUR_KEY/responses Ollama chat: http://localhost:20128/vscode/YOUR_KEY/api/chat Ollama tags: http://localhost:20128/vscode/YOUR_KEY/api/tags ``` Używaj ich wyłącznie w przypadku klientów, którzy nie mogą dołączać `Authorization: Bearer ...`. Uwierzytelnianie nagłówkiem pozostaje preferowanym trybem.
## 📦 Więcej metod instalacji — Docker, kod źródłowy, 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` wskazuje najwyższą **opublikowaną** stabilną wersję SemVer. Nie śledzi gałęzi git `main`. W przypadku GitOps przypnij `:X.Y.Z`. Zobacz [Kanały wydań Docker](docs/guides/DOCKER_GUIDE.md#release-channels).Obraz ustawia na stałe **`OMNIROUTE_MEMORY_MB=1024`**. To wystarcza dla panelu i lekkiego czatu. **Agenci programistyczni** (`POST /v1/responses` z Claude Code, Codex, Grok, …) wymagają znacznie większej sterty V8, w przeciwnym razie proces kończy się błędem `FATAL ERROR` przy około 12 GiB w przypadku dwóch nakładających się długich kontekstów. Przydziel kontenerowi więcej pamięci niż rozmiar sterty (bufory natywne znajdują się poza V8): | Obciążenie | Sterta (`-e OMNIROUTE_MEMORY_MB`) | Kontener (`--memory`) | | -------------------------------------- | --------------------------------- | --------------------- | | Panel / lekki czat | `1024` (domyślna wartość obrazu) | ≥2 g | | Jeden agent programistyczny | `8192` | ≥10 g | | Dwa równoczesne długie `/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 ``` Pełna tabela: [Przewodnik po Dockerze — pamięć RAM środowiska uruchomieniowego](docs/guides/DOCKER_GUIDE.md#runtime-ram-for-coding-agents). > **Kanał przedpremierowy Dockera:** `diegosouzapw/omniroute:next` oraz > `diegosouzapw/omniroute:next-web` śledzą bieżącą domyślną gałąź `release/v*`. > Te zmienne tagi są przeznaczone wyłącznie do testowania niewydanych poprawek i > **nie są obsługiwane w środowisku produkcyjnym**. Zobacz > [Kanały wydań Docker](docs/guides/DOCKER_GUIDE.md#release-channels). **🥟 Bun** Standardowe polecenie `bun install` oraz instalacja globalna (`bun install -g omniroute`) są obsługiwane dzięki wykrywaniu środowiska uruchomieniowego Bun: - **Wbudowany `bun:sqlite`**: podczas działania w środowisku Bun OmniRoute używa wbudowanego sterownika `bun:sqlite`, a w środowisku Node.js korzysta awaryjnie z `better-sqlite3` lub `sql.js`. - **Automatyczny wybór narzędzia pakującego Webpack w środowisku deweloperskim**: tryb deweloperski (`bun run dev`) automatycznie wykrywa Bun i wyłącza Turbopack na rzecz Webpack, aby zapobiec niezgodnościom natywnych powiązań V8. Kompilacje produkcyjne (`bun run build`) stosują `OMNIROUTE_USE_TURBOPACK` dokładnie tak samo jak w Node: domyślnie Turbopack, a `OMNIROUTE_USE_TURBOPACK=0` pozwala budować za pomocą Webpack (`Dockerfile.bun` udostępnia tę opcję jako `--build-arg`). - **Dedykowany plik Dockerfile dla Bun**: wieloetapowy `Dockerfile.bun` do natywnych wdrożeń produkcyjnych Bun (`docker build -f Dockerfile.bun -t omniroute:bun .`). ```bash # Zainstaluj i uruchom za pomocą Bun bun install bun run dev ``` **🛠️ Z kodu źródłowego** ```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 # Korzystanie z płatków Nix nix develop npm run dev # Lub korzystanie z devbox devbox run npm run dev ``` 📖 [Przewodnik po Dockerze](docs/guides/DOCKER_GUIDE.md) — profile Compose, HTTPS z Caddy, tunele Cloudflare. **🦭 Podman** ```bash # 1. Przygotuj katalog danych montowany przez dowiązanie mkdir -p data # 2. Tylko Linux + lokalny Podman bez roota (nigdy zdalny klient Podman Machine): podman unshare chown 1000:1000 ./data # 3. Ustaw wskazówkę dotyczącą środowiska uruchomieniowego, zbuduj lokalny obraz Compose i uruchom echo "CONTAINER_HOST=podman" >> .env podman compose --profile base up -d --build ``` W systemie macOS lub Windows Podman korzysta ze zdalnej maszyny Podman Machine: pomiń `podman unshare` i postępuj zgodnie z [instrukcjami dotyczącymi katalogu danych właściwymi dla danej topologii](contrib/podman/README.md#data-directory-permissions-by-topology). 📖 [Przewodnik po Podmanie](contrib/podman/README.md) — kompilacje Compose, Podman Machine oraz konfiguracja Quadlet dla Linux/systemd. **⚡ Szybsza / lżejsza instalacja (pominięcie kompilacji natywnej)** Natywny silnik SQLite (`better-sqlite3`) jest zależnością **opcjonalną**, dlatego instalacja globalna nigdy nie jest blokowana przez kompilację z kodu źródłowego: używa wstępnie skompilowanego pliku binarnego, gdy jest on zgodny z Twoją platformą/Node, a w przeciwnym razie w sposób przezroczysty przełącza się na silnik oparty wyłącznie na JS (`node:sqlite` w Node 22+, w innym przypadku dołączony `sql.js` WASM) — narzędzia kompilacyjne nie są wymagane. Aby całkowicie pominąć natywne przygotowanie po instalacji (CI, środowiska bez interfejsu graficznego lub wolne maszyny): ```bash OMNIROUTE_SKIP_POSTINSTALL=1 npm install -g omniroute # CI=1 również je pomija ``` Aby uzyskać najszybszą instalację, wybierz **pnpm** (magazyn adresowany zawartością + dowiązania twarde — patrz wyżej). Aby korzystać ze środowiska bez panelu i interfejsu graficznego, użyj profilu Docker `base` (powyżej) lub [przewodnika po Termux](docs/guides/TERMUX_GUIDE.md). Interfejs CLI i panel internetowy są obsługiwane przez ten sam proces na jednym porcie, dlatego obecnie nie istnieje osobny pakiet zawierający wyłącznie CLI.
# 🎬 OmniRoute w działaniu
## 📹 Przewodniki wideo
Stan panelu na 2026-10-18 · Surowy katalog: YT 1.352 | TT 334 | IG 290 · Aktualność (dni): YT 5 | TT 48 | IG 49
Instagram Reel — nick_saraev
🎬 #1 — Instagram
nick_saraev — 3,042,474 wyświetlenia
Instagram Reel — nnapier7
🎬 #2 — Instagram
nnapier7 — 1,454,535 wyświetleń
YouTube — Amidia AI & Tech
🎬 #3 — YouTube
Amidia AI & Tech — 794,974 wyświetlenia
Instagram Reel — theopenstack
🎬 #4 — Instagram
theopenstack — 692,419 wyświetleń
TikTok — migue.baena
🎬 #5 — TikTok
migue.baena — 685,788 wyświetleń
**Pełny ranking (zdeduplikowane kanoniczne adresy URL, `v > 0`, największy zasięg):** | #1 | #2 | #3 | #4 | #5 | | -------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | | [nick_saraev — Instagram](https://www.instagram.com/reel/Da8ZthUPK98/) — **3,042,474** | [nnapier7 — Instagram](https://www.instagram.com/reel/Dbp7wv_CIO0/) — **1,454,535** | [Amidia AI & Tech — YouTube](https://www.youtube.com/watch?v=NJ0TQ-pyMDY) — **794,974** | [theopenstack — Instagram](https://www.instagram.com/reel/DaSs65mMrHk/) — **692,419** | [migue.baena — TikTok](https://www.tiktok.com/@migue.baena/video/7670919268216622358) — **685,788** | | #6 | #7 | #8 | #9 | #10 | | ------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | | [milesreevesai — TikTok](https://www.tiktok.com/@milesreevesai/video/7667980059189366019) — **620,400** | [nikothetech — TikTok](https://www.tiktok.com/@nikothetech/video/7671890769665477918) — **610,803** | [Vaibhav Sisinty — YouTube](https://www.youtube.com/watch?v=QucgvbO5gsM) — **509,281** | [buildwithai.club — Instagram](https://www.instagram.com/reel/DbIt9AjK7-U/) — **347,652** | [nivedan.ai — Instagram](https://www.instagram.com/reel/DbIrCksJiqq/) — **331,973** | Dane kanoniczne na 2026-10-18: **1.976 unikalnych filmów** · **20.220.289 znanych wyświetleń** (`v > 0`) · **1.210 kanałów/profili w poszczególnych sieciach**. Surowy panel zawiera 1.976 wierszy (YouTube 1.352 = 740 długich filmów + 612 Shorts · TikTok 334 · Instagram 290); po normalizacji według kanonicznego adresu URL, która zachowuje najwyższą liczbę wyświetleń danego filmu, nie pozostały żadne duplikaty. Zbieranie danych z YouTube zostało wstrzymane 2026-10-13 (limit API wyczerpany od 14 do 18/10), a z TikTok/Instagram od 2026-09-02 (brak środków na zbieranie danych); 76 filmów nadal nie ma danych o liczbie wyświetleń. > 🎬 **Masz film o OmniRoute?** Utwórz [zgłoszenie](https://github.com/diegosouzapw/OmniRoute/issues/new) lub rozpocznij [dyskusję](https://github.com/diegosouzapw/OmniRoute/discussions), podając link — zamieścimy go tutaj.
# 📧 Społeczność i pomoc > Wszystko w jednym miejscu — obserwuj opiekuna projektu, rozmawiaj ze społecznością lub utwórz zgłoszenie. | Kanał | Gdzie / jak | | ------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------- | | 💼 **LinkedIn** — obserwuj opiekuna projektu | [linkedin.com/in/diegosouzapw](https://www.linkedin.com/in/diegosouzapw/) | | 🐙 **GitHub** — obserwuj wydania i porady | [@diegosouzapw](https://github.com/diegosouzapw) | | 💬 **Discord** | [discord.gg/U47eFqAXCn](https://discord.gg/U47eFqAXCn) | | ✈️ **Telegram** | [t.me/omnirouteOficial](https://t.me/omnirouteOficial) | | 🟢 **WhatsApp — 🌍 Globalny** | [dołącz do grupy](https://chat.whatsapp.com/FvuCbrpZmQ6I85n2vW5QIC?s=cl&p=a&mlu=4) | | 🟢 **WhatsApp — 🇧🇷 Brazylia** | [dołącz do grupy](https://chat.whatsapp.com/KWgatljAjmbELQory59Oti?s=cl&p=a&mlu=4) | | 🌍 **Strona internetowa** | [omniroute.online](https://omniroute.online) | | 🌍 **🌍Społeczność StHub OmniRoute (bezpłatna)** | [portal StHub](https://portal.sthub.com.br/communities/groups/st-hub/channels/Omniroute-World-8kRjmK) | | 📦 **Kod źródłowy** | [github.com/diegosouzapw/OmniRoute](https://github.com/diegosouzapw/OmniRoute) | | 🐛 **Zgłoś błąd** | [utwórz zgłoszenie](https://github.com/diegosouzapw/OmniRoute/issues) — dołącz wynik polecenia `npm run system-info` | | 🤝 **Współtwórz projekt** | [CONTRIBUTING.md](CONTRIBUTING.md) · [Model gałęzi i wydań](docs/ops/BRANCHING_MODEL.md) · wybierz `good first issue` | | 💚 **Wesprzyj projekt** | [Sposoby wsparcia ↑](#-support-omniroute) · [Sponsorzy GitHub](https://github.com/sponsors/diegosouzapw) |
---
## 🛠️ Stos technologiczny
WarstwaTechnologia
Środowisko uruchomienioweNode.js 22.x / 24.x LTS — >=22.22.2 <23 || >=24.0.0 <27
JęzykTypeScript 6.0 — 100% TypeScript w całych katalogach src/ i open-sse/ (zero any w rdzeniu od wersji v2.0)
FrameworkNext.js 16 + React 19 + Tailwind CSS 4
Baza danychbetter-sqlite3 (SQLite, rejestrowanie WAL) + LowDB (starszy format JSON) — 147 modułów domenowych, 233 migracji
PamięćPełnotekstowe wyszukiwanie SQLite FTS5 + osadzenia wektorowe z kwantyzacją int8, typowane wygaszanie
SchematyZod 4 — walidacja wejścia/wyjścia narzędzi MCP + kontrakty API
ProtokołyMCP (stdio / HTTP / SSE) + A2A v0.3 (JSON-RPC 2.0 + SSE)
StrumieniowanieServer-Sent Events (SSE) + most WebSocket (/v1/ws)
KompresjaPotok z 12 silnikami — RTK, Caveman, LLMLingua-2 (MobileBERT ONNX), GCF, OmniGlyph
Uwierzytelnianie i bezpieczeństwoOAuth 2.0 (PKCE) + JWT + klucze API + uwierzytelnianie MCP z ograniczeniem zakresu · AES-256-GCM w spoczynku · DOMPurify
Ukrywaniewreq-js — podszywanie się pod odciski palca TLS JA3 / JA4, proxy z 3 poziomami
OdpornośćWyłącznik obwodu, wykładnicze ponawianie, ochrona przed efektem stada, automatyczne samonaprawianie kombinacji
Rejestrowaniepino — strukturalne dzienniki JSON z kontekstem żądania
TestowanieRunner testów Node.js + Vitest — ponad 60 000 statycznych deklaracji testów w ponad 8 400 śledzonych plikach testów (jednostkowe, integracyjne, E2E, bezpieczeństwa, ekosystemu)
PlatformyKomputery stacjonarne (Electron) · Android (Termux) · PWA (dowolna przeglądarka)
CI/CDGitHub Actions — automatyczna publikacja npm + Docker Hub przy wydaniu
LinkiStrona internetowa · npm · Docker Hub

## 📖 Dokumentacja
### 📘 Pierwsze kroki
DokumentOpis
Przewodnik użytkownikaDostawcy, kombinacje, integracja z CLI, wdrażanie
Przewodnik konfiguracjiPełne metody instalacji, konfiguracje narzędzi CLI, konfiguracja protokołów, dostrajanie limitów czasu
Przewodnik po narzędziach CLIKonfiguracja poszczególnych narzędzi: Claude Code, Codex, Cursor, Cline, OpenClaw, Kilo, Copilot
Tryb zdalnyObsługa zdalnego OmniRoute (VPS) z poziomu CLI na laptopie za pomocą tokenów dostępu z ograniczonym zakresem
Konfiguracja Claude CodeSkierowanie Claude Code do OmniRoute (lokalnego/zdalnego) za pomocą launch + profili dla poszczególnych modeli
Szybki startInstalacja w 3 krokach → połączenie → konfiguracja
### 🔧 Operacje i wdrażanie
DokumentOpis
Przewodnik DockerUruchamianie Docker, profile Compose, Caddy HTTPS, tunele, tagi obrazów
Przewodnik PodmanIntegracja z systemd za pomocą Quadlet, podman-compose, SELinux
Wdrażanie na VMKompletny przewodnik: konfiguracja VM + nginx + Cloudflare
Wdrażanie na Fly.ioWdrażanie na Fly.io z pamięcią trwałą
Przewodnik TermuxUruchamianie OmniRoute na Androidzie za pośrednictwem Termux
Przewodnik PWAInstalacja progresywnej aplikacji webowej, buforowanie, architektura
Przewodnik odinstalowywaniaCałkowite usuwanie dla wszystkich metod instalacji
Konfiguracja środowiskaKompletne zmienne i odwołania .env
### 🧠 Funkcje i architektura
DokumentOpis
ArchitekturaArchitektura systemu, przepływ danych i elementy wewnętrzne
Przewodnik kompresjiPotok z 7 opcjami: wyłączony / lite / standardowy / agresywny / ultra / RTK / stacked
Kompresja RTKKompresja wyników poleceń, filtry, zaufanie, weryfikacja, odzyskiwanie surowego wyniku
Silniki kompresjiCaveman, RTK, potoki stacked, interfejsy dashboardu/API/MCP
Format reguł kompresjiSchematy pakietów reguł JSON dla filtrów Caveman i RTK
Pakiety językowe kompresjiWykrywanie języka i tworzenie pakietów reguł Caveman
Przewodnik odpornościWyłączniki obwodu, czasy odnowienia, kolejka, ochrona przed lawiną żądań, podszywanie się pod TLS
Silnik Auto-ComboOcenianie według 16 czynników, pakiety trybów, samonaprawa
Przewodnik po proxyTrzypoziomowy system proxy, marketplace 1proxy, operacje CRUD rejestru
Darmowe poziomySkonsolidowany katalog: 34 udokumentowane cykliczne pule / 465 skatalogowanych wpisów darmowych poziomów
Galeria funkcjiWizualny przegląd dashboardu ze zrzutami ekranu
Dokumentacja bazy koduPrzystępny dla początkujących przewodnik po bazie kodu
### 🤖 Protokoły i API
DokumentOpis
Dokumentacja APIWszystkie endpointy z przykładami
Specyfikacja OpenAPISpecyfikacja OpenAPI 3.0
Serwer MCP110 narzędzi MCP, konfiguracje IDE, klienci Python/TS/Go
Przewodnik po serwerze MCPInstalacja MCP, transporty i dokumentacja narzędzi
Serwer A2AProtokół JSON-RPC 2.0, umiejętności, strumieniowanie, zarządzanie zadaniami
Przewodnik po serwerze A2AKarta agenta A2A, zadania, umiejętności i strumieniowanie
### 📋 Projekt i jakość
DokumentOpis
WspółtworzenieKonfiguracja środowiska programistycznego i wytyczne
Model rozgałęzień i wydańGdzie kierowane są PR-y (release/*), co oznaczają main i tagi
Dziennik zmianPełna historia wydań według wersji
Polityka bezpieczeństwaZgłaszanie luk w zabezpieczeniach i praktyki bezpieczeństwa
Przewodnik i18nObsługa 67 języków, proces tłumaczenia, RTL
Lista kontrolna wydaniaKroki walidacji przed wydaniem
Plan pokryciaStrategia pokrycia testami dla ponad 60 000 statycznych deklaracji testów w ponad 8 400 śledzonych plikach testów

# ⭐ Najwięksi współtwórcy > OmniRoute jest kształtowany przez pełną pasji społeczność open source. Te osoby wniosły wyjątkowy wkład, który bezpośrednio wpływa na jakość, stabilność i zasięg projektu. **Dziękujemy.** ### Zewnętrzni współtwórcy według scalonych pull requestów
MiejsceWspółtwórcaScalone PR-y~Zmienione wiersze
1maxmad64bis41825,367,739
2HouMinXi29513,557,796
3pacocartones22281,551
4backryun210270,562
5JxnLexn1983,570,623
6oyi77190411,243
7KooshaPari1515,972,314
8rdself14580,663
9RaviTharuma123500,065
10herjarsa88230,872
11hartmark852,849,623
12jonlwheat2-gif6869,097
13artickc6243,502
14xiaoyaner020159126,220
15chirag127526,661
16xz-dev50245,976
17woodsonl48811,771
18rqzbeh46151,229
19MumuTW4328,166
19QuangBlue4313,112
Spis przeprowadzono 2026-11-03 03:01:19 UTC z użyciem aktualnego wskaźnika release/v3.8.53 05bc048d6c. Stronicowany spis GitHub GraphQL obejmuje 9 947 scalonych PR-ów: 4 130 autorstwa właściciela repozytorium, 240 autorstwa Dependabot, 6 autorstwa innych botów/aplikacji oraz 5 571 zewnętrznych PR-ów od 883 różnych współtwórców. „Zmienione wiersze” oznaczają sumę dodatków i usunięć w GitHub oraz obejmują wygenerowane pliki, pliki blokad, katalogi, tłumaczenia i dokumentację; jest to skala zmian, a nie liczba wierszy kodu autorstwa. 53 PR-y zgłaszają różnice GitHub przekraczające 500 000 wierszy (na przykład #13399, pojedyncze dodanie dostawcy, zawiera 2 347 zmienionych plików), co zawyża kilka powyższych sum. Remisy są klasyfikowane wspólnie. ### Commity przypisane przez GitHub
Dizzle
Dizzle

🥇 418 zatwierdzeń przypisanych przez GitHub
Bob.Hou
Bob.Hou

🥈 294 zatwierdzenia przypisane przez GitHub
Paijo
Paijo

🥉 229 zatwierdzeń przypisanych przez GitHub
Paco Cartones
Paco Cartones

🏅 222 zatwierdzenia przypisane przez GitHub
backryun
backryun

🏅 202 zatwierdzenia przypisane przez GitHub
Jan Leon
Jan Leon

🏅 134 zatwierdzenia przypisane przez GitHub
Ravi Tharuma
Ravi Tharuma

🏅 126 zatwierdzeń przypisanych przez GitHub
Markus Hartung
Markus Hartung

🏅 115 zatwierdzeń przypisanych przez GitHub
Randi
Randi

🏅 108 zatwierdzeń przypisanych przez GitHub
Chris
Chris

🏅 70 zatwierdzeń przypisanych przez GitHub
WebPerson
WebPerson

🏅 68 zatwierdzeń przypisanych przez GitHub
Koosha Paridehpour
Koosha Paridehpour

🏅 68 zatwierdzeń przypisanych przez GitHub
Sprawdzono ponownie 2026-11-03 02:09:16 UTC: zatwierdzenia przypisane przez GitHub, zgłoszone przez API Contributors repozytorium dla domyślnej gałęzi release/v3.8.53. API zwróciło 903 tożsamości (429 użytkowników, 2 boty, 472 anonimowe); ta tabela pomija opiekuna projektu, boty i anonimowe tożsamości oraz zachowuje remisy w rankingu. Różni się ona zarówno od przedstawionego powyżej rankingu scalonych PR-ów, jak i od zamieszczonego poniżej spisu metadanych Git. > 🙏 Funkcje, poprawki błędów i usprawnienia infrastruktury tych współtwórców stanowią **podstawę** niezawodności i bogactwa funkcji OmniRoute. Każdy pull request, każdy przypadek testowy i każdy plik tłumaczenia i18n ma znaczenie. Projekty open source powstają dzięki takim osobom.
---
## 💖 Sponsorzy
Serdeczne podziękowania dla osób, które finansują OmniRoute z własnej kieszeni — każda wpłata pomaga utrzymać projekt bezpłatnym, niezależnym i stale rozwijanym.
Andrew
Andrew

💛 Aktywny comiesięczny sponsor
Vlad I
Vlad I

💛 Aktywny comiesięczny sponsor
小妍儿
小妍儿

💛 Aktywny comiesięczny sponsor
Guilherme Costa
Guilherme Costa

💛 Aktywny jednorazowy sponsor
Henrique Triches Iurkiv
Henrique Iurkiv

💛 Aktywny jednorazowy sponsor
Somesh Ghaturle
Somesh Ghaturle

💛 Aktywny jednorazowy sponsor
Kolonie AI
Kolonie AI

💛 Były jednorazowy darczyńca
Professor Igor Morais Vasconcelos
Prof. Igor Morais

💛 Były jednorazowy darczyńca
Pixma
Pixma

💛 Były jednorazowy darczyńca
Paco Cartones
Paco Cartones

💛 Były jednorazowy darczyńca
longtao
longtao

💛 Były jednorazowy darczyńca
… oraz inni, którzy wolą zachować anonimowość 💛 Publiczni sponsorzy w GitHub Sponsors zostali ponownie zweryfikowani 2026-10-18 za pośrednictwem interfejsu GitHub Sponsors GraphQL API: 11 publicznych sponsoringów (6 aktywnych, 5 zakończonych) spośród łącznie 14. Status isActive w GitHub określa powyższe etykiety aktywności; nadal dziękujemy byłym publicznym jednorazowym darczyńcom, a prywatni sponsorzy pozostają anonimowi. Wpłaty za pośrednictwem Ko-fi, Buy Me a Coffee, Liberapay, PIX oraz darowizny w kryptowalutach nie są wymienione, ponieważ nie mają publicznego wpisu sponsora. 💖 Zostań sponsorem → — każdy dolar pomaga utrzymać OmniRoute bezpłatnym i niezależnym.

## 👥 Ponad 1 000 współtwórców
[![Contributors](https://contrib.rocks/image?repo=diegosouzapw/OmniRoute&max=1074&columns=20&anon=1)](https://github.com/diegosouzapw/OmniRoute/graphs/contributors) Audyt przeprowadzony 2026-11-02 na bieżącym końcu gałęzi release/v3.8.53 1c7135e0fb (7 972 zatwierdzenia): 1 074 znormalizowane ludzkie tożsamości Git — 759 występuje jako autorzy zatwierdzeń (w tym opiekun projektu), a 315 wyłącznie w jawnych stopkach Co-authored-by. Spis uwzględnia plik .mailmap, porównuje adresy e-mail bez uwzględniania wielkości liter, łączy numeryczne i zwykłe adresy GitHub noreply tylko wtedy, gdy kodują tę samą nazwę użytkownika, wyklucza 29 tożsamości botów, agentów, usług i symboli zastępczych oraz nie scala zwykłych adresów e-mail tylko dlatego, że ich wyświetlane nazwy są takie same. Audyt z 2026-08-24 wykazał 639 osób; ponowne uruchomienie tej metody na bazie tamtego audytu ac02c5b42f daje 619, więc wzrost wynika z pojawienia się nowych współtwórców, a nie z zastosowania luźniejszej metody. ### Jak wnosić swój wkład 1. Utwórz fork repozytorium 2. Utwórz gałąź na podstawie **aktywnego** końca `release/vX.Y.Z` (nie `main`) — zobacz [Model gałęzi i wydań](docs/ops/BRANCHING_MODEL.md) 3. Utwórz gałąź funkcji (`git checkout -b feat/amazing-feature`) 4. Zatwierdź zmiany (`git commit -m 'feat: add amazing feature'`) 5. Wypchnij zmiany do gałęzi (`git push origin feat/amazing-feature`) 6. Otwórz pull request z **base = tą gałęzią `release/vX.Y.Z`** Szczegółowe wytyczne znajdziesz w pliku [CONTRIBUTING.md](CONTRIBUTING.md). ### Wydawanie nowej wersji ```bash # Utwórz wydanie — npm publish odbywa się automatycznie VERSION=x.y.z gh release create "v${VERSION}" --title "v${VERSION}" --generate-notes ```
## 📊 Gwiazdki Wykres historii gwiazdek
## 🌍 StarMapper StarMapper

## 🙏 Podziękowania
OmniRoute stoi na ramionach gigantów. Projekt rozpoczął się jako fork **[9router](https://github.com/decolua/9router)** oraz port projektu Go **[CLIProxyAPI](https://github.com/router-for-me/CLIProxyAPI)** do TypeScript — a od tego momentu każdy z poniższych podsystemów czerpał inspirację z projektu open source, który pojawił się wcześniej. Każdy z nich ukształtował konkretny element OmniRoute. To nasze podziękowanie dla nich wszystkich. 🙏 > ⭐ Liczby gwiazdek zweryfikowane za pomocą REST API GitHub 3 listopada 2026 r. — zajrzyj do tych projektów i dodaj im gwiazdkę. Liczby stanowią dokładny zrzut stanu z określonego dnia i naturalnie będą się zmieniać. ### 🧬 Genealogia i brama
Projekt⭐Jak zainspirował OmniRoute
9router31,861Oryginalny projekt, na którym opiera się ten fork — rozszerzony tutaj o wielomodalne API i pełne przepisanie do TypeScript.
CLIProxyAPI57,329Implementacja w Go, która zainspirowała ten port do JavaScript / TypeScript.
LiteLLM62,580Brama AI, której publiczny zbiór danych dotyczących cen zasila synchronizację śledzenia kosztów, a model normalizacji dostawców wpłynął na nasz routing.
codex-chatgpt-web15,435Źródło na licencji MIT zaadaptowane do dołączonego mostu ChatGPT Web → Codex Responses, w tym adapterów sesji przeglądarki, formatowania odpowiedzi, zużycia i wyszukiwania w sieci.
free-claude-code65,966Wzorce przeniesione do odzyskiwania strumienia, aliasów no-thinking, zapasowego wyszukiwania w sieci, limitów w oknie przesuwnym, redakcji logów i wzmocnionych przepływów uruchamiania.
composer-api347Wzorce wyboru narzędzi Cursor Composer, ograniczeń wyjścia i zatwierdzania narzędzi zaadaptowane do natywnego wykonawcy Cursor.
codex-multi-auth561Wzorce pierwszego logowania i rotacji tokenów odświeżania przeniesione do ponownego uwierzytelniania OAuth Codex.
opencode-anthropic-auth562Domyślne ustawienia transformacji zgodne z Claude Code oraz zachowanie nagłówków rozliczeniowych uogólnione w konfigurowanym przez konfigurację moście OmniRoute.
grok2api-merged2Mapowania modeli Grok, generator fałszywego TypeError Statsig, domyślne ustawienia żądań i urządzeń oraz procesor odpowiedzi NDJSON zostały w znacznym stopniu zaadaptowane do wykonawcy Grok Web w OmniRoute.
TQZHR/grok2api707Główne przechodnie źródło kodu stojące za grok2api-merged; jego implementacje modeli, nagłówków, danych payload, Statsig i procesora zachowano w genealogii Grok Web.
chenyme/grok2api7,874Podstawowe źródło na licencji MIT dla danych payload i domyślnych ustawień urządzeń Grok, generatora Statsig oraz procesora result.response przekazanych przez TQZHR i grok2api-merged.
grok2api-pro27Źródło przechodnie wskazane przez grok2api-merged jako źródło warstwy puli proxy; OmniRoute zachowuje tę informację o genealogii, ale nie twierdzi, że zaimplementował pulę proxy w swoim ograniczonym wykonawcy Grok Web.
GrokProxy52Jego uwierzytelniany za pomocą plików cookie proxy Grok oraz wzorzec strumieniowania result.response.token wpłynęły na transport Grok Web w OmniRoute.
GrokBridge5Skonsultowano jego projekt źródła HTTP/przeglądarki dla oryginalnej implementacji Grok Web; jego bezpośrednia ścieżka HTTP wywodzi się z GrokProxy, dlatego nie przypisujemy sobie niezależnego portu kodu.
### 🗜️ Kompresja kontekstu i tokenów — silniki
Projekt⭐Jak zainspirował OmniRoute
Caveman116,957Wirusowy projekt „po co używać wielu tokenów, skoro kilka tokenów robi robotę” — jego filozofia mowy jaskiniowca zasila nasz standardowy tryb kompresji oraz ponad 30 reguł usuwania wypełniaczy i kondensacji.
RTK – Rust Token Killer85,350Wysokowydajna kompresja wyjścia poleceń — zainspirowała nasz silnik RTK, DSL filtrów JSON, odzyskiwanie surowego wyjścia oraz potok RTK → Caveman.
headroom78,672Odwracalna kompresja kontekstu (SmartCrusher) — zainspirowała nasz silnik headroom oraz wzorzec znacznika pobierania ccr.
LLMLingua6,797Badania nad kompresją promptów (LLMLingua / LLMLingua-2) — zainspirowały nasz asynchroniczny, bezpieczny dla kodu i domyślnie przepuszczający błędy silnik llmlingua.
llmlingua-2-js33Port JS/ONNX (MobileBERT / XLM-RoBERTa) używany jako backend wątku roboczego naszego silnika LLMLingua.
Troglodita50Kompresja tokenów PT-BR — zasila nasz pakiet językowy pt-BR: redukcję pleonazmów i usuwanie wypełniaczy dostosowane do gramatyki brazylijskiego portugalskiego.
ponytail182,929Wirusowa umiejętność programowania YAGNI w stylu „leniwego starszego dewelopera” — zainspirowała nasz styl wyjścia less-code: sterowanie najmniejszą działającą zmianą, które ogranicza _wygenerowany_ kod (odpowiednik z osi wyjścia dla zwięzłej prozy Cavemana).
i-have-adhd59,838Jego skoncentrowany na działaniu, przyjazny osobom z ADHD styl odpowiedzi został zaadaptowany do zwięzłego stylu wyjścia OmniRoute w pięciu językach.
### 🧩 Zwięzłe formaty, badania nad tokenami i narzędzia uwzględniające kod
Projekt⭐Jak zainspirował OmniRoute
TOON25,602Token-Oriented Object Notation — jego kolumnowy model z nagłówkiem i wierszami ukształtował nasz etap kompresji tabelarycznej.
GCF – Graph Compact Format61Jego kompaktowy format grafów i projekt z ogólnym profilem wpłynęły na kompresję tabelaryczną OmniRoute oraz format kodeka Headroom.
gcf-typescript4Implementacja w TypeScript na licencji MIT, dołączona bezpośrednio do projektu i rozszerzona jako kodek ogólnego profilu Headroom.
token-optimizer-mcp566Pamięć podręczna Brotli/SQLite + delta kontekstu dla każdej sesji — zainspirowały nasz silnik session-dedup.
token-savior1,203Kompresja wyjścia Bash + profile MCP — zainspirowały naszą dyscyplinę rezygnacji z kompresji oraz redukcję manifestu narzędzi MCP.
token-saver162Świadoma rodzaju treści kompresja wyjścia dla poszczególnych typów plików z rezygnacją w przypadku błędów — potwierdziła zasadność naszego rozdzielania według typu oraz pomijania przy minimalnym zysku.
token-optimizer2,853„Znajdź duchy tokenów” — wzorzec odciążania + odzyskiwalnego uchwytu wpłynął na nasze podejście do odciążania CCR.
TokenMizer34Projekt grafu sesji + deduplikacji wierszy między turami, który wpłynął na projekt naszego session-dedup.
OmniCompress3Kolumnowy JSON w Rust + pobieranie oparte na adresowaniu treści + deduplikacja między wiadomościami — potwierdziły zasadność projektu naszych silników headroom/ccr/session-dedup oraz niezmiennika stabilnej pamięci podręcznej „skompresowana postać jest niezależna od pozycji”.
mcp-compressor140Kompresja schematów i opisów narzędzi MCP — wpłynęła na redukcję liczności manifestu narzędzi MCP.
RepoMapper218Ranking mapy repozytorium w stylu Aider — wpłynął na nasze badania nad mapą repozytorium i rankingiem pobierania.
quiet-shell-mcp4Deklaratywna redukcja wyjścia powłoki przez MCP — potwierdziła zasadność naszej deklaratywnej kompresji wyjścia bash.
ts-morph6,222Zestaw narzędzi TypeScript Compiler API — zainspirował nasze oparte na parserze usuwanie komentarzy z zachowaniem literałów tekstowych, szablonowych i wyrażeń regularnych.
### 🧠 Pamięć i RAG
Projekt⭐Jak zainspirował OmniRoute
Mem068,294Uniwersalna warstwa pamięci — jej model proxy jako granicy zapisu/odczytu ukształtował naszą architekturę pamięci.
Letta (MemGPT)25,321Agenci stanowowi z warstwową pamięcią — zainspirowali nasz warstwowy model Context Control & Recovery (CCR).
WFGY1,804Taksonomia ProblemMap obejmująca 16 powtarzających się trybów awarii RAG/LLM — wspólny słownik w naszym przewodniku rozwiązywania problemów.
### 🛰️ Inspekcja ruchu, MITM i transparentny proxy
Projekt⭐Jak zainspirował OmniRoute
llm-interceptor81Przechwytywanie/analiza MITM ruchu między asystentem programistycznym a LLM wpłynęły na wczesne wymagania Traffic Inspector. Cztery wcześniej wyprowadzone moduły — łączenie SSE, normalizacja konwersacji, maskowanie sekretów i sanityzacja nagłówków — zostały zastąpione niezależnymi implementacjami typu clean-room opartymi na publicznych standardach protokołów. Dwie powierzchnie host-passthrough (passthrough.ts i _internal/bypass.cjs) pozostają wewnętrznymi implementacjami OmniRoute, sklasyfikowanymi niezależnie; nie zostały przepisane w ramach tej zamiany.
ProxyBridge6,978Transparentne trasowanie proxy dla poszczególnych procesów — zainspirowało nasze bezpieczne przy awariach zamykanie MITM, limity bezczynności gniazd, ustalanie procesów na podstawie /proc oraz przechwytywanie TPROXY.
### 📚 Dane modeli, obserwowalność i interfejs użytkownika
Projekt⭐Jak zainspirował OmniRoute
models.dev7,486Otwarta baza specyfikacji, cen i możliwości modeli AI — natywnie synchronizowana z naszym katalogiem modeli.
React Flow / xyflow38,874Biblioteka grafów oparta na węzłach, zasilająca nasze działające w czasie rzeczywistym Compression Studio i Combo/Routing Studio.
LangGraph44,349Wizualizacja grafu przepływu pracy na żywo w LangGraph Studio zainspirowała działający w czasie rzeczywistym widok kaskadowy w naszych narzędziach Studio.
Langfuse36,907Jego model obserwowalności trace → span → generation ukształtował widok wodospadowy w naszym Compression Studio.
Kiali3,647Obserwowalność siatki usług Istio — zainspirowała nasze oznaczenia circuit-breakerów i wizualizacje krawędzi błędów w Routing/Combo Studio.
lobe-icons2,666Logotypy marek AI/LLM wyświetlające ikony dostawców w całym naszym panelu.
flag-icons12,499Udostępnia flagi SVG na licencji MIT używane przez selektor języka w README.
### 🛡️ Bezpieczeństwo
Projekt⭐Jak zainspirował OmniRoute
awesome-secure-defaults723Starannie wybrana lista bibliotek bezpiecznych w konfiguracji domyślnej, która kieruje naszymi wyborami dotyczącymi bezpieczeństwa (Helmet.js, DOMPurify, ssrf-req-filter, safe-regex, Google Tink).
### 🧭 Narzędzia uzupełniające
Projekt⭐Jak zainspirował OmniRoute
ClawRouter6,649Zainspirował deduplikację żądań, awaryjny bezkosztowy fallback, podłączane strategie Auto-Combo oraz wielojęzyczną klasyfikację intencji.
Antigravity-Manager32,785Jego uwzględniające konta przemapowywanie modeli, walidacja ścieżek plików wykonywalnych i sposób obsługi etykiet planów wpłynęły na środowisko uruchomieniowe Antigravity w OmniRoute.
vscode-antigravity-cockpit4,852Jego zwięzły format odliczania do resetu limitu zainspirował odpowiadający mu sposób wyświetlania limitu dostawcy w OmniRoute.
AionUi33,996Jego integracje ACP zainspirowały automatyczne wykrywanie zainstalowanych agentów CLI w OmniRoute.
CodexBar22,955Zidentyfikował powierzchnię limitu Grok Build; OmniRoute następnie niezależnie zweryfikował i skorygował format przewodowy używany na żywo.
## 📄 Licencja Licencja MIT — szczegóły znajdziesz w [LICENSE](LICENSE). ---
**[⬆ Powrót na górę](#-omniroute)** · Stworzone z ❤️ dla społeczności open source AI. Utworzone przez Diego Souzę · OmniRoute v3.8.54 · Node ≥22.22.2 · Licencja MIT · omniroute.online