Skip to content

Latest commit

 

History

History
1813 lines (1427 loc) · 154 KB

README.md

File metadata and controls

1813 lines (1427 loc) · 154 KB

README (Italiano)

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


Dashboard di OmniRoute

🚀 OmniRoute — Il gateway AI gratuito

OmniRoute — Non smettere mai di programmare. Ogni strumento AI → 380 provider — oltre 150 gratuiti — tramite un unico endpoint. Claude Code, Codex, Cursor, Cline, Copilot e Antigravity con Claude / GPT / Gemini GRATUITI e fallback automatico. La compressione combinata RTK + Caveman riduce i token del 15–95% (~89% in media): non raggiungere mai i limiti. 380 provider AI · oltre 150 piani gratuiti · ~1,62 mld di token gratuiti/mese · 20 strategie di routing · $0 per iniziare.

💰 ~1,62 miliardi di token al mese dai piani gratuiti di terze parti

Usa i tuoi account dei provider. Questa è una stima aggregata dei piani gratuiti di terze parti per i quali si possiedono separatamente i requisiti, non un'assegnazione di token da parte di OmniRoute. Registrati, ottieni le credenziali dove richiesto e collega i provider che puoi utilizzare; ciascun provider gestisce i propri limiti, la disponibilità e i termini.

Combinare manualmente i piani gratuiti è complicato: decine di SDK, decine di limiti di frequenza e nessuna idea di quanta capacità sia effettivamente disponibile. OmniRoute cataloga 484 voci di piani gratuiti distribuite su 34 chiavi di pool ricorrenti e calcola il totale di token a partire dai 17 pool con un budget mensile positivo pubblicato più cinque limiti Groq per modello, eliminando i duplicati dovuti ai pool condivisi. Le quote disponibili solo dopo una verifica regionale dell'identità (attualmente: ModelScope) sono mostrate separatamente, +~6 milioni dietro verifica regionale dell'identità, e non vengono mai sommate al totale principale. Il risultato rimane visibile nella dashboard (/dashboard/free-tiers).

Scheda del budget dei piani gratuiti di OmniRoute: ~1,62 miliardi di token gratuiti al mese su base continuativa, fino a ~2,22 miliardi nel primo mese con i crediti di registrazione, provenienti da 34 chiavi di pool ricorrenti documentate che coprono 484 voci di piani gratuiti catalogate dietro un unico endpoint. Calcolo trasparente con deduplicazione dei pool: ogni pool condiviso viene conteggiato una sola volta, inclusi 17 pool ricorrenti con un budget mensile positivo di token pubblicato più cinque limiti Groq per modello; 12 provider sono contrassegnati come da evitare nel catalogo dei rischi relativi ai termini, così puoi decidere autonomamente. La barra del budget include Mistral 1 miliardo, Nara 210 milioni, LLM7 150 milioni, xKiro 150 milioni, Groq 30 milioni (cinque limiti per modello) e pool più piccoli, oltre ai crediti di registrazione del primo mese e ai provider permanentemente gratuiti senza limite di token, mostrati separatamente affinché non aumentino artificialmente il totale principale. Utilizzo e disponibilità residua in tempo reale su /dashboard/free-tiers.

Riepilogo animato della pagina live /dashboard/free-tiers. Metodologia completa (deduplicazione dei pool, livelli di credito, termini dei provider): docs/reference/FREE_TIERS.md.

Questi dati vengono sottoposti a una nuova verifica ogni due settimane rispetto al catalogo live e possono variare in entrambe le direzioni: se un provider interrompe un piano gratuito, il numero diminuisce; se ne viene aggiunto uno nuovo, aumenta. Pubblichiamo ciò che il catalogo calcola effettivamente, mai una stima ottimistica arrotondata per eccesso.


⭐ Aggiungi una stella al repository se OMNIROUTE ti ha aiutato a risparmiare e a semplificare il tuo lavoro.

Stelle diegosouzapw%2FOmniRoute | Trendshift Posizione nella cronologia delle stelle olud.ai

💬 Unisciti alla community

👋 Segui il maintainer per ricevere per primo nuovi provider, release e suggerimenti:

Segui Diego su LinkedIn Segui @diegosouzapw su GitHub

Discord Telegram WhatsApp globale WhatsApp Brasile Sito web

Domande, suggerimenti sui provider, roadmap e assistenza → Discord · Telegram · WhatsApp 🌍 Globale / 🇧🇷 Brasile / Portale


📈 Il Gateway continua a crescere

v3.8.50 v3.8.51 v3.8.53+
🌐 Fornitori 352 358 380
🧠 Modello di chat unico IDs 1320 1374 1475
🖼️ Modalità Ponte 🆕 visione + audio + video ✓ ✓
Catalogo gratuito 📡 Radar 🆕 opt-in ✓ ✓
⚖️ Pianificazione in base alle quote 🆕 Quota-Condivisione ✓ ✓
📊 Telemetria delle quote 🆕 dal vivo ✓ ✓
🧰 Modalità senza testa — — 🆕 serve --headless
🛤️ LTS ferroviario infra — — canali di rilascio 🆕
🔎 Scoperta del modello API — — 🆕 /v1/models/query

→ Roadmap : in treno fino a v3.9.0 LTS


🧩 Disponibile

versione npm Download mensili NPM Docker Hub Licenza: MIT Download Docker Download Electron

🚀 Inizia 🚀 Avvio rapido 📦 Installa 🆓 Connetti un provider
💡 Scopri 💥 La promessa 🤔 Perché OmniRoute 🏆 Cosa lo distingue
⚙️ Funzionalità 🎯 Combinazioni 🌐 Provider 🔌 CLI e MCP
🗜️ Compressione 🖥️ Dove funziona 🔒 Privato
👀 Guardalo 🎬 In azione ✨ Novità 🤖 CLI compatibili
💚 Supporto 💚 Supporta / Dona 💬 Comunità 💖 Sponsor
📦 Progetto 🛠️ Stack tecnologico 📖 Documentazione 👥 Collaboratori
🌐 In 67 lingue

English (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)


🆓 Installa, collega un provider, poi instrada attraverso un unico endpoint

Tre passaggi: installa e avvia OmniRoute, collega un provider idoneo con il tuo account o la tua API key, poi punta il tuo strumento su localhost:20128/v1 usando una API key di OmniRoute e il modello auto. Il routing dipende dalle connessioni idonee disponibili e dai limiti del provider.

# Dopo aver collegato un provider, copia la tua chiave OmniRoute da 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 richiede una rotta idonea. Un'installazione appena eseguita può non avere target keyless idonei, e un provider keyless potrebbe rifiutare client di terze parti. I provider contrassegnati con tos: avoid, incluso Kiro, sono esclusi dal routing automatico per impostazione predefinita; collegare un account non sovrascrive questa impostazione. Consulta la Guida ai piani gratuiti prima di scegliere un provider.

📦 Script quickstart da copia-incollare per Python, Node.js, PHP e cURL → examples/quickstart/


💥 La Promessa

La Promessa — Un unico endpoint e 380 provider. Il fallback automatico continua a instradare finché è disponibile un altro target sano. Sei pilastri: fallback resiliente su 380 provider · fino al 95% di risparmio sui token per carichi di lavoro idonei · $0 per iniziare con oltre 150 piani gratuiti e 52 provider free-forever ricorrenti/keyless · 37 integrazioni CLI/agent tramite un'unica configurazione · compatibilità con OpenAI, Claude, Gemini e Responses API su /v1 · controlli di produzione tra cui circuit breaker, TLS stealth, 110 strumenti MCP, A2A, memoria, guardrail, eval e oltre 56.000 dichiarazioni di test statici su oltre 7.800 file di test monitorati.



🤔 Perché OmniRoute?

Perché OmniRoute — smetti di destreggiarti tra 10 dashboard, API key morte e bollette a sorpresa. Dieci problemi quotidiani vs soluzioni: quota che scade inutilizzata → massimizza gli abbonamenti; rate limit a metà coding → auto-fallback a 4 livelli (Abbonamento → API → Economico → Gratuito); output degli strumenti che bruciano token → compressione RTK + Caveman (15–95%); API costose → routing ottimizzato sui costi; ogni strumento con la propria configurazione → un unico endpoint, un'unica dashboard; AI bloccata → proxy a 3 livelli + TLS stealth; chiavi morte → resilienza a 3 livelli (circuit breaker, cooldown delle chiavi, lockout dei modelli); team che condivide un abbonamento → pool di chiavi con quote fair-share; prompt che passano dal cloud di qualcun altro → local-first con chiavi cifrate AES-256-GCM; nessuna visibilità sulle spese → analytics in tempo reale (utilizzo, quota, risparmi, latenza p95).

Flusso di richiesta di OmniRoute: il tuo IDE o CLI (Claude Code, Cursor, Cline…) chiama un unico endpoint locale (http://localhost:20128/v1); lo Smart Router di OmniRoute (compressione RTK + Caveman, 20 strategie di routing, circuit breaker, TLS stealth, MCP, A2A, guardrail) può effettuare il fallback tra 4 livelli di provider finché rimane un target idoneo e sano — Livello 1 Abbonamento, Livello 2 API Key, Livello 3 Economico e Livello 4 Gratuito.

🤝 Supportato dai nostri Amici Open Source

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

Vuoi unirti come Amico Open Source? Queste sono le aziende che supportano l'open source e aiutano a mantenere OmniRoute in movimento — e noi dichiariamo pubblicamente dove va ogni token che ci danno. Contattaci: diegosouza.pw@outlook.com

Kimi (Moonshot AI)
Kimi
Moonshot AI

Amico Fondatore Open Source
Grazie a Kimi (Moonshot AI), il nostro Amico Fondatore Open Source, per aver supportato questo progetto! Kimi è il laboratorio di IA dietro le famiglie di modelli open-weight K2 e K3 — Kimi K3 offre una finestra di contesto da 1M di token, visione nativa e codifica a livello di frontiera a una frazione dei prezzi dei modelli chiusi, e funziona immediatamente con Claude Code, Codex e ogni strumento di codifica che OmniRoute serve.

Cosa alimenta il supporto di Kimi: I crediti API di Kimi alimentano la pipeline di rilascio convalidata dall'IA di OmniRoute — la fase di validazione della fusione alimentata da Kimi K3 che esamina ogni pull request prima che venga spedita — oltre allo sviluppo quotidiano delle funzionalità. Il supporto di prima classe per Kimi viene fornito su entrambi i binari: l'API Kimi diretta (kimi-k3) e il piano di codifica Kimi Code (OAuth e chiave API). OmniRoute è anche il primo progetto open-source brasiliano nel programma di supporto di Kimi. Ottieni una chiave API Kimi con il 15% di crediti extra →
Cheaper Inference
Cheaper Inference
cheaperinference.com

Amico Open Source
Grazie a Cheaper Inference, un Amico Open Source di OmniRoute, per aver supportato questo progetto! Cheaper Inference è un gateway classificato per costo che rivende 42 modelli all'avanguardia — Claude, GPT-5.x, Gemini, Kimi K3, GLM, DeepSeek, Grok e MiniMax — dietro un unico endpoint compatibile con OpenAI, instradando ogni richiesta al provider idoneo più economico senza mai addebitare un prezzo superiore a quello di listino del creatore del modello.

Supporto di prima classe in OmniRoute: Chat Completions, l'endpoint nativo /v1/responses, visione, tool calling e 3 modelli di immagine (grok-imagine, nano-banana-pro, nano-banana-2, raggiungibili come cheaperinference/<model>). Ottieni una chiave API →

I link taggati aff=omniroute sono link partner. Finanziano il progetto senza costi aggiuntivi per te.


🎟️ Promo Affiliati — coupon di iscrizione gratuiti da provider che non sponsorizziamo (clicca per espandere)

Questa sezione è solo per codici di riferimento/coupon. Le partnership sponsorizzate si trovano in 🤝 Supportato dai nostri Amici Open Source sopra. OmniRoute non ha sponsorizzazioni o partnership con i provider elencati qui — questi sono coupon pubblici che chiunque può usare.

AgentRouter
AgentRouter
agentrouter.org
AgentRouter — iscrizione affiliato · $100 di crediti gratuiti all'iscrizione (server gratuito, aspettati una latenza maggiore — ottimo per test, non per la produzione). Supporto di prima classe in OmniRoute dalla v3.8.50: Chat Completions, il formato wire compatibile con Anthropic e il percorso compatibile con OpenAI. I modelli disponibili includono claude-opus-4-8, claude-opus-5, gpt-5.6-sol e altro. Prendi i tuoi $100 →

⚠️ Link affiliato — OmniRoute non ha sponsorizzazioni o partnership con questo provider.

Conosci un altro provider con un generoso coupon di iscrizione gratuito che beneficia gli utenti di OmniRoute? Apri un'issue e lo aggiungeremo qui.


🎯 Combo — La funzionalità di punta

Esempi animati per 18 delle 20 strategie di instradamento delle combo — un riquadro per strategia: 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. cache-optimized e quota-weighted non sono animate; la tabella seguente descrive tutte e 20.

Una combo è una catena di modelli tra i quali OmniRoute instrada le richieste automaticamente. Se la quota si esaurisce, un provider non risponde o i costi aumentano, la combo può passare al successivo modello idoneo e operativo. 🛡️

⚡ Configurazione zero — usa semplicemente auto

Non serve creare alcuna combo. Imposta il modello su auto (o su una variante) e OmniRoute crea una combo virtuale a partire dai provider connessi, valutandoli in tempo reale:

ID modelloCosa ottimizza
auto🎯 Impostazione predefinita bilanciata (LKGP — mantiene l'ultimo provider funzionante)
auto/coding🧑💻 Pesi orientati alla qualità per la generazione di codice
auto/fast⚡ Prima la latenza più bassa
auto/cheap💰 Prima il costo per token più basso
auto/subscription🎟️ Solo la quota dell'abbonamento che già paghi — in caso di errore si blocca, senza mai ricorrere a un fallback a pagamento (guida)
auto/thrifty🪜 Prima la quota del piano, poi un livello alla volta verso le opzioni a pagamento più economiche — torna al piano dopo il ripristino della quota (guida)
auto/offline🔋 Prima il margine maggiore di quota / limite di frequenza
auto/smart🔭 Prima la qualità + 10% di esplorazione per individuare modelli migliori
auto/lkgp📌 Preferenza esplicita per l'ultimo provider funzionante noto
auto/chaos🧪 Distribuzione parallela a un gruppo di modelli (uno per provider, 5 per impostazione predefinita), restituisce una sola risposta; una chiamata upstream per ciascun modello del gruppo, non è un'iniezione di guasti

🔀 Oppure crea la tua combo — 20 strategie di instradamento

Tutte e 20 le strategie — combinabili liberamente per ogni passaggio della combo:

# Strategia Cosa fa
1 priority Elenco ordinato con precedenza al primo target — esaurisce ciascuno prima di passare al successivo 🥇
2 fill-first Utilizza interamente la quota di ciascun target prima di passare al successivo
3 weighted Selezione casuale ponderata in base al peso di ogni target
4 round-robin Scorre ciclicamente i target in ordine
5 p2c Bilanciamento casuale del carico con scelta tra due opzioni
6 least-used Seleziona il target con il carico corrente più basso
7 random Selezione casuale uniforme (senza duplicati)
8 strict-random Selezione casuale senza eliminare le ripetizioni 🎲
9 cost-optimized Riduce al minimo il costo per richiesta in base ai prezzi aggiornati del catalogo 💸
10 headroom Seleziona il target con la quota residua maggiore
11 quota-weighted Ignora gli account esauriti, quindi seleziona in proporzione alla quota residua ÷ carico in corso — le conversazioni esistenti rimangono vincolate allo stesso target ⚖️
12 reset-window Preferisce il target la cui finestra di quota si ripristina prima
13 reset-aware Ordina in base al momento di ripristino della quota — prima le finestre più brevi 📊
14 context-relay Trasferisce il contesto tra i target per le conversazioni lunghe 🧠
15 context-optimized Seleziona il target più adatto alle dimensioni correnti del contesto
16 cache-optimized Vincola ogni prefisso di prompt riutilizzabile allo stesso account — massimizza i riscontri nella cache dei prompt 🎯
17 lkgp Ultimo percorso funzionante noto — mantiene l'ultimo provider che ha risposto correttamente, quindi applica le regole di fallback
18 auto Valutazione in tempo reale basata su 16 fattori per ogni connessione 🤖
19 fusion Distribuisce le richieste a un gruppo di modelli + un giudice sintetizza una sola risposta 🧬
20 pipeline Concatena i passaggi — l'output di ogni target alimenta quello successivo 🔗

Il motore Auto-Combo assegna un punteggio a ogni candidato in base a 16 fattori (integrità, quota, costo, latenza, adeguatezza all'attività, qualità, disponibilità della sessione…) — consulta docs/routing/AUTO-COMBO.md.

🧱 La resilienza è integrata (3 livelli indipendenti)

Resilienza di OmniRoute — 3 livelli indipendenti di autoripristino, il livello giusto per ogni errore. Livello 1: circuit breaker del provider (intero provider): scatta solo in caso di 408/5xx, soglie OAuth 8× / chiave API 12× / locale 2×, si reimposta dopo 60s/30s/15s passando a una sonda HALF-OPEN, ripristino differito; mentre è OPEN, la combinazione reindirizza al provider successivo. Livello 2: cooldown della connessione (una chiave/account): base di 5s per OAuth / 3s per chiave API, backoff esponenziale ×2 con protezione contro il thundering herd, il 429 rispetta Retry-After, un esito positivo azzera tutto lo stato di errore; una chiave in cooldown viene ignorata mentre le chiavi associate continuano a servire le richieste. Livello 3: blocco del modello (un modello): un 429 specifico del modello, un 404 locale o il rifiuto di una modalità bloccano soltanto quel modello, mai l'intera connessione. Gli stati terminali (escluso, scaduto, crediti esauriti) richiedono l'intervento dell'operatore, non un cooldown.

📖 Motore Auto-Combo · Guida alla resilienza


🏆 Cosa distingue OmniRoute

Ciò che distingue OmniRoute — un'istantanea aggiornata delle funzionalità rispetto a 9router, OpenRouter, CLIProxyAPI e LiteLLM su 13 capacità. OmniRoute: 380 provider, oltre 150 livelli gratuiti integrati, 20 strategie di routing, compressione dei token con 12 motori, server MCP integrato con 110 strumenti, protocollo per agenti A2A, memoria persistente, misure di sicurezza, agenti cloud, occultamento dell'impronta digitale TLS, Desktop/Termux/PWA e interfaccia utente internazionalizzata in 67 lingue. OmniRoute è distribuito con licenza MIT e può essere ospitato autonomamente. Le capacità e i conteggi dei concorrenti possono cambiare; consulta la metodologia collegata.

📊 Metodologia completa e dettagli per funzionalità rispetto a 9router, OpenRouter, CLIProxyAPI e LiteLLM → docs/comparison/OMNIROUTE_VS_ALTERNATIVES.md


💚 Sostieni OmniRoute

OmniRoute è distribuito con licenza MIT e mantenuto apertamente. Se ti fa risparmiare tempo o denaro, ecco come contribuire a mantenerlo indipendente: scegli l'opzione che preferisci. Le sponsorizzazioni non influiscono mai sulla priorità di routing; offrono visibilità, non un posizionamento migliore.

⭐ Aggiungi una stella al repositoryGratis — aiuta davvero la visibilitàAggiungi una stella a OmniRoute
🐙 GitHub SponsorsUna tantum o mensile · nessuna commissione della piattaformagithub.com/sponsors/diegosouzapw
☕ Ko-fiDonazione rapida una tantum, senza registrazione per il donatoreko-fi.com/diegosouzapw
🧋 Buy Me a CoffeePiccolo gesto informalebuymeacoffee.com/diegosouzapw
🖐 LiberapayRicorrente · senza scopo di lucro · open sourceliberapay.com/diegosouzapw
🇧🇷 PIX (Brasile)Istantaneo, senza commissionichiave e codice QR qui sotto
₿ CriptovaluteBTC · ETH · USDT-TRC20 · USDC-Solanaindirizzi qui sotto

🇧🇷 PIX — istantaneo, senza commissioni (Brasile)

Codice QR PIX di OmniRoute

Chiave (casuale): 5d865059-bc44-483a-962d-43ceb80126eb

Pix copia e incolla:

00020101021126580014br.gov.bcb.pix01365d865059-bc44-483a-962d-43ceb80126eb5204000053039865802BR5922OMNIROUTE CONTRIBUICAO6006BRASIL62070503***630475DD

₿ Criptovalute — BTC · ETH · USDT-TRC20 · USDC-Solana (fai clic per espandere)
₿ BTCBitcoin (SegWit)bc1qh00smz004sy85wyl28v77tenkt3ckl6eaep7fd
Ξ ETHEthereum (ERC20)0x64Cf6B68A6Ff34288e89172950a2d00102337a84
₮ USDTTron (TRC20)TKAF41JpuQrHbKTnsQa9svJE2T192Hvsc2
$ USDCSolana2emNNZzVVWQc3FQ2wk9M6qXUQmW8AKdjjL174fXR28Tu

⚠️ Invia ogni valuta esclusivamente sulla rete indicata: l'invio sulla rete sbagliata può comportare la perdita dei fondi.

🐛 Hai trovato un bug o vuoi lasciare un feedback? Apri una Discussione.


Note per gli sviluppatori: Il progetto può generare un file locale .env durante npm install/postinstall per agevolare gli sviluppatori. Questo file viene intenzionalmente ignorato tramite .gitignore (consulta .gitignore) e non deve mai essere incluso in un commit; se viene incluso accidentalmente, sostituisci tutti i segreti esposti e rimuovi il file dalla cronologia. Consulta docs/DEVELOPER-ENVIRONMENT.md per indicazioni sulla gestione dei file di ambiente locali e dei segreti.

📡 OmniRoute Radar

Il dato principale del piano gratuito rimane ~1,62 miliardi di token/mese, in base al catalogo documentato e deduplicato per pool riportato sopra. I crediti temporanei di registrazione dei provider possono incrementare separatamente il primo mese fino a ~2,22 miliardi. Radar è un overlay opzionale e firmato del catalogo, destinato a chi desidera informazioni più aggiornate sulla disponibilità dei modelli gratuiti tra una release di OmniRoute e l'altra; il catalogo della community e tutte le funzionalità gratuite esistenti rimangono gratuiti.

I sostenitori possono ricevere il catalogo in tempo reale e ulteriori opportunità offerte dai provider. Il relativo limite massimo, separato e variabile, è di circa 3 miliardi di token/mese al massimo, a seconda della disponibilità dei provider. Tale limite non è garantito: i provider possono modificare quote, requisiti di idoneità, modelli o regioni in qualsiasi momento.

Radar è facoltativo ed effettua esclusivamente richieste GET. Il client OmniRoute non carica prompt, traffico, configurazioni dei provider, telemetria sull'utilizzo o lo stato locale relativo alla chiusura degli annunci. Scopri i requisiti di idoneità e il catalogo attuale su radar.omniroute.online/planos.


✨ Novità

Punti salienti recenti da v3.8.20 → v3.8.53. Cronologia completa in CHANGELOG.md.

  • ⚖️ Routing quota-weighted — la ventesima strategia combo salta gli account esauriti, poi estrae tra i restanti in proporzione alla quota residua divisa per il carico in corso, mantenendo ancorate le conversazioni esistenti. → Auto-Combo
  • 🧰 Modalità headless — omniroute serve --headless (o OMNIROUTE_HEADLESS=1) avvia solo il motore proxy /v1/*, con la dashboard e i sottosistemi riservati alla dashboard disattivati. → Modalità headless
  • 🔎 Scoperta dei modelli — /v1/models filtra per capacità, contesto, tipo e testo, e POST /v1/models/query restituisce una shortlist breve e deterministica con la stessa visibilità per chiave. → Riferimento API
  • 🔑 Controllo del routing per chiave — vincola una chiave API a un singolo modello o combo con forcedModel, e aggiungi o rimuovi atomicamente modelli e combo di una chiave (/api/keys/{id}/access). → Riferimento API · OpenAPI
  • 🛡️ Controlli PII più granulari — selezione per tipo, fino a 20 pattern di mascheramento personalizzati validati e contatori di rilevamento per tipo; il mascheramento stesso resta opt-in. → Guardrails
  • 🌍 67 lingue — dashboard, mirror della documentazione e CLI, con npm run i18n:add-locale che aggiunge una lingua ovunque con un solo comando. → Guida i18n
  • 🎛️ OmniConductor — delega A2A in ingresso verso la tua flotta di agenti, skill Conductor sulla Agent Card e un pannello della dashboard con chat vocale push-to-talk Faro. → Server A2A
  • 🛂 Ammissione adattiva e protezione dal sovraccarico — le richieste chat pesanti si accodano invece di restituire 503, con lease a scorrimento RPM atomici per connessione. → Guida alla resilienza
  • 🗂️ Ordinamento canonico di /v1/models — un blocco contiguo raggruppato per provider per ogni provider (combo ancorate per prime), stabile su ogni sorgente di catalogo. → Riferimento API
  • 🗜️ Rafforzamento della compressione — protezione dall'inflazione attiva per impostazione predefinita, pacchetti Caveman per DE / FR / JA + cinese (wényán), filtri RTK per Gradle e .NET. → Compressione
  • 💸 Costo flat-rate onesto — i provider in abbonamento / con piano coding mostrano $0 nelle analisi dei costi; budget, quota e routing continuano a stimare. → Riferimento API
  • ⚖️ Routing Quota-Share — suddivide equamente la quota di un account condiviso tra chiavi in pool, in modalità work-conserving così le fette inattive vengono prestate. → Guida alla resilienza
  • 🤖 Configurazione CLI/agente con un solo comando — 7 comandi setup-* registrati; omniroute run avvia 7 CLI (Claude Code, Codex, Aider, Goose, OpenCode, Qwen Code, Gemini CLI); omniroute configure supporta 11 target con un selettore interattivo di provider+modello e preferiti per contesto. → Integrazioni CLI
  • 🛰️ Modalità remota — gestisci un OmniRoute remoto con token con scope (connect / contexts / tokens) + un helper OAuth antigravity per installazioni su VPS. → Modalità remota
  • 🧭 Auto-routing più intelligente — combo auto/<category>:<tier>, Fusion (panel di modelli + giudice), routing consapevole del task, override per richiesta di modello / modalità / budget in USD. → Auto-Combo
  • 🗜️ Compressione pluggable — 12 motori componibili + Compression Studios: LLMLingua-2, Ultra a due livelli, omniglyph, gate di fedeltà per step, GCF v3.2, editor drag-reorder. → Compressione
  • 🕵️ Decrittazione MITM trasparente (TPROXY) — intercetta CLI che ignorano le variabili d'ambiente del proxy, con una CA per-SNI + installer per il trust store. → MITM/TPROXY
  • 💸 Telemetria dei costi ovunque — header di costo/utilizzo X-OmniRoute-* su ogni endpoint, header dei risparmi da cache-HIT, quote di spesa in USD per chiave. → Riferimento API
  • 🧠 Memoria sotto il tuo controllo — disattivata per impostazione predefinita, quantizzazione vettoriale int8 + decay tipizzato opt-in, x-omniroute-no-memory per richiesta. → Memoria
  • 🛡️ Sicurezza — protezione da prompt injection su ogni route LLM (suite red-team), guardrail di mascheramento delle credenziali opt-in (oscura chiavi API/segreti trapelati in entrambe le direzioni), ricerca web DuckDuckGo gratuita come ultima risorsa e un gate di login OIDC opzionale per la dashboard (il login con password resta sempre disponibile). → Guardrails
  • 🖼️ Nuovi endpoint — /v1/ocr (Mistral OCR) e /v1/audio/translations (in stile Whisper) completano la superficie media. → Riferimento API
  • 🎨 Generazione di immagini / video / audio — un'unica API per i media: xAI Grok Imagine e video Novita AI, ComfyUI, Magnific, Adobe Firefly, Segmind e provider vocali come ElevenLabs. → Riferimento API
  • 🌍 Deployment e operations — basePath per reverse proxy, rilevamento automatico della lingua del browser, tracciamento dei dispositivi per chiave, trust MITM senza root, localizzazione zh-TW. → Variabili d'ambiente
  • 🤝 Più provider e agenti — agenti cloud (Codex Cloud, Cursor, Devin, Jules), Grok Build (xAI) con login browser + OAuth, card di prima classe per Ollama, Claude Opus 5 e Sonnet 5, partnership ufficiale con Kimi (Code/Web/Moonshot), Zed, Requesty, SenseNova, Yuanbao, Agnes AI… e un catalogo di 380 provider aggiornato. → Provider
  • 📡 Trasparenza del routing — ogni risposta porta un header X-OmniRoute-Decision che indica la strategia/provider/latenza che l'hanno servita; una nuova strategia combo cache-optimized + il fattore cacheAffinity di Auto-Combo riportano le richieste ripetute alla connessione che detiene il prefisso in cache, e un endpoint di sola lettura /v1/auto-combo/{channel}/candidates espone il pool di candidati live di un canale auto/*. → Auto-Combo
  • ⚡ Prestazioni e infrastruttura locali — Redis locale con un clic, deployer relay per Cloudflare Workers / Deno Deploy, Bifrost e Mux come servizi embedded supervisionati. → Servizi embedded
  • 🧩 Incluso nel pacchetto — framework di plugin + marketplace, framework di skill Omni/Agent/GitHub, integrazione con l'Obsidian vault (22 strumenti MCP), API Batch & Files compatibili con OpenAI, cache semantica delle risposte, gamification con classifiche, scoperta degli agenti ACP (15 agenti integrati), esportazione pianificata dei log su BigQuery, fan-out parallelo multi-modello auto/chaos, un bridge per bot Telegram, un gestore di versioni in-app e classifiche dei provider gratuiti basate su LMArena-ELO. → Documentazione

🤖 CLIs e agenti di codifica compatibili

Una configurazione - http://localhost:20128/v1 - e** ogni** AI IDE o CLI funziona su modelli gratuiti e a basso costo.

Claude Code
Claude Codice
Codex CLI
Codex CLI
                           
Cline
Cline
                           
Kilo Code
Kilo Codice
Zoo Code
Codice Zoo
Continue
Continua
Aider
Aider
ForgeCode
ForgeCode
                           
jcode
jcode
DeepSeek TUI
DeepSeek TUI
                           
CodeWhale
CodeWhale
                           
OpenCode
OpenCode
                           
Factory Droid
Droid di fabbrica
GitHub Copilot CLI
Copilot CLI
                           
Cursor CLI
Cursor CLI
                           
Smelt

Pi (pi-coding-agent)
Pi
Grok Build (xAI)
Grok Costruisci
Hermes Agent (Nous Research)
Hermes Agent
OpenClaw
OpenClaw
                           
Goose
Oca
Open Interpreter
Interprete aperto
Warp AI
Warp AI
                           
deyin.ai
deyin.ai
+ funziona anche con · Agent Deck · Kiro · Codice comando · Antigravity · Windsurf · AMP · qualsiasi strumento compatibile con OpenAI

📖 Configurazione per strumento per tutti i 38 strumenti (27 CLI del codice + 11 agenti CLI ) → docs/reference/CLI-TOOLS.md · 🧩 OpenCode plugin → @omniroute/opencode-provider


Avvia qualsiasi CLI supportato tramite OmniRoute in un unico comando - nessun file di configurazione scritto, credenziali inserite per processo, Qwen/Gemini ottiene una casa isolata usa e getta:

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"

# Or pick provider+model interactively and write the tool's own config:
omniroute configure codex          # also: claude opencode qwen aider goose gemini cline continue kilo 5dive

Ogni comando rispetta il contesto remoto attivo (omniroute connect <host>), --dry-run visualizza in anteprima l'esatto env/args senza eseguirlo e --api-key-env NAME mantiene i segreti fuori dalla cronologia della shell. → CLI Integrazioni


🌐 380 provider di IA — 153 contrassegnati come gratuiti nel catalogo

380 provider registrati nelle raccolte canoniche di chat, contenuti multimediali, ricerca, servizi locali, agenti cloud e sistema, inclusi 153 con metadati di rilevamento hasFree: true. Il registro dei modelli di chat comprende 239 provider / 3.059 coppie provider-modello distinte / 1.475 ID modello grezzi; il catalogo separato delle disponibilità gratuite contiene 471 righe per modello, 34 pool ricorrenti e 52 provider gratuiti per sempre, ricorrenti/senza chiave. I denominatori sono intenzionalmente diversi; le definizioni e i calcoli con deduplicazione dei pool sono disponibili nella Guida di riferimento dei provider e nei Piani gratuiti.

🏢 Tutti i principali laboratori — tramite un unico 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
                           

…e oltre 350 altri — ogni icona viene caricata in tempo reale dal catalogo dei provider della dashboard. 📖 Guida di riferimento dei provider


🆓 Gratis per sempre — $0, nessuna carta richiesta

OpenCode Zen
OpenCode Zen
DeepSeek V4, Nemotron 3
Nessun limite di token
Kilo Code
Kilo Code
Router automatico, Tencent Hy3
Gratis per sempre
Requesty
Requesty
GPT-OSS 120B, Nemotron
Gratis per sempre
SiliconFlow
SiliconFlow
DeepSeek V3.2 / R1
Piano gratuito
Z.AI GLM
Z.AI GLM
GLM-4.7 / 4.5-Flash
Gratis per sempre
Baidu ERNIE
Baidu ERNIE
ERNIE 4.0
Gratis per sempre
Qoder AI
Qoder AI
Qwen3-Max, Kimi-K2
GRATUITO senza limiti
Pollinations
Pollinations
GPT, Llama, Claude
Nessuna chiave necessaria
Cloudflare AI
Cloudflare AI
Oltre 50 modelli
10K neuroni/giorno
NVIDIA NIM
NVIDIA NIM
GLM, MiniMax
~40 RPM gratuiti
Cerebras
Cerebras
GLM 4.7, GPT-OSS
Credito una tantum di $5; carta richiesta
OpenRouter
OpenRouter
Modelli :free
+$10 → RPM più elevati

📖 Catalogo completo leggibile dalle macchine → docs/reference/PROVIDER_REFERENCE.md


🖥️ Dove funziona OmniRoute : ovunque

La stessa app, la tua macchina, le tue regole. Da un'installazione npm globale a** il tuo telefono** tramite Termux.

Piattaforma Installa evidenza
📦 npm (globale) npm install -g omniroute Un comando, qualsiasi OS
⚡ Bun (globale) bun add -g omniroute Stesso tarball del registro, installazioni più veloci
🐳 Docker docker run … diegosouzapw/omniroute Multi-arco AMD64 + ARM64
🖥️ Desktop (Electron) npm esegui elettrone:build Finestra nativa + vassoio di sistema — Windows / macOS / Linux
🎩 Barra dei menu (OmniRouteTray) brew install --cask zoispag/tap/omniroute-tray Supervisiona & aggiorna automaticamente il server — macOS
💪 ARM nativo arm64 Raspberry Pi, server ARM, Apple Silicon
📱 Android (Termux) pkg install nodejs && npx -y omniroute Esegue sul tuo telefono , 24/7, no root
📲 PWA"Aggiungi alla schermata iniziale" Schermo intero, offline, installabile dal browser
🧩 OpenCode plugin @omniroute/opencode-provider Integrazione OpenCode nativa
🤖 VS Codice Copilot Chat installa OmniCopilot estensione Ogni modello OmniRoute nel selettore chat nativo Copilot : stabile & Insider
🛠️ Dal sorgente npm installa && npm esegui dev Hackalo, contribuisci

📖 Docker Guida · Desktop · Barra dei menu · Termux · PWA · OpenCode


🧩 Novità: OmniRoute all'interno della chat Copilot nativa di VS Code

Nessuna nuova barra laterale, nessuna nuova chat UI : ogni modello servito da OmniRoute viene visualizzato direttamente nel fileCopilot Selettore modello di chat che già usi . A partire dal codice VS 1.122, i modelli dei provider funzionano senza accesso GitHub o abbonamento Copilot : modalità agente, chiamata allo strumento e visione, gratuitamente.

Installa il** OmniCopilot** estensione, puntala sul tuo server OmniRoute (il valore predefinito è localhost:20128), quindi apri Copilot Chat → selettore modello →** Gestisci modelli…** →OmniRoute .

< td allinea ="sinistra">VS Codice: stabile & Insider < td allinea ="sinistra">Cursor, Windsurf, VSCodium, Theia, code-server, Gitpod, Antigravity, Kiro…
Negozio Link Funziona con
🧩 VS Mercato dei codici Installa →
🔓 Apri registro VSX Installa →

Dall'interno dell'editor: apri il file** Estensioni** visualizzare, cercare** "OmniRoute"** , fare clic** Installare** - funziona allo stesso modo su entrambi i negozi. Fonte, problemi e runbook di pubblicazione in diretta su diegosouzapw/OmniCopilot.

📖 VS Codice Copilot Guida alla chat : configurazione, cosa mostra il selettore, dashboard in una scheda, risoluzione dei problemi


🎩 Novità: OmniRouteTray : il tuo gateway, situato nella barra dei menu

omniroute serve è più felice quando è sempre acceso.** OmniRouteTray** lo trasforma in un'app della barra dei menu imposta e dimentica per macOS: avvia il server, lo mantiene attivo durante i riavvii, lo aggiorna in posizione e mette il budget del tuo token live a un clic di distanza —** nessuna finestra del terminale lasciata aperta, niente npm install -g omniroute a cui fare da babysitter.**

Costruito con Tauri v2 (un core Rust delle dimensioni di un errore di arrotondamento), fornisce il proprio runtime Node 24 firmato e gestisce un'installazione OmniRoute di proprietà dell'app, quindi non combatte mai il tuo node/bun globale. Esso** condivide la configurazione e il database ~/.omniroute/ esistenti** - quindi è lo stesso OmniRoute che già corri, solo con il cappello in testa. 🎩

Cosa fa Come
🟢 Supervisiona il server Genera omniroute serve , adotta un'istanza già in esecuzione invece di duplicarla
📊 Utilizzo in tempo reale a colpo d'occhio Barre delle quote del provider, Claude session/weekly limiti con conto alla rovescia reimpostato, suddivisione dei costi in 30 giorni
🔄 Aggiornamenti automatici sul posto Installazione graduale, scambio atomico, rollback in caso di errore: sempre sulla versione più recente
🚀 Avvia all'accesso Avvio opzionale all'accesso; solo nel vassoio, nessuna icona nel dock
🩺 Doctor & logs Diagnostica con un clic e accesso al log del server
brew install --cask zoispag/tap/omniroute-tray

Preferisci un download? Prendi l'ultimo .dmg da Rilascia . Fonte, problemi e costruzione i documenti vivono su zoispag/omniroute-tray.
💛 Un progetto comunitario di @zoispag — non una versione ufficiale OmniRoute.


🔒 Privato e local-first

Privato e local-first — il gateway e il piano di controllo di OmniRoute vengono eseguiti sulla tua macchina. I prompt vengono inviati al provider upstream selezionato per ciascuna richiesta; OmniRoute non aggiunge alcun passaggio ospitato per l'elaborazione dei prompt e la telemetria è disabilitata per impostazione predefinita. Le credenziali sono crittografate a riposo con AES-256-GCM; i controlli includono limitazione dell'ambito delle chiavi API, filtraggio IP, limiti di frequenza, protezioni contro la prompt injection, rimozione degli header upstream, oscuramento opzionale dei dati PII, errori anonimizzati e un audit trail SQLite locale. OmniRoute è distribuito con licenza MIT e può essere ospitato autonomamente.

📖 Autorizzazione · Misure di sicurezza · Conformità


🔌 CLI completa + A2A e MCP

Oltre al server, OmniRoute è una console completa da riga di comando con oltre 80 comandi, più protocolli aperti per agenti che consentono a un agente IA di gestirla in autonomia.

⌨️ Una vera CLI (non solo start)

omniroute               # avvia il gateway + la dashboard (porta 20128)
omniroute chat          # client di chat TUI interattivo (comandi slash: /model /combo /skill /memory)
omniroute setup         # procedura guidata per la prima configurazione
omniroute doctor        # diagnostica provider, porte e dipendenze native

🛰️ Modalità remota — esegui la CLI qui e OmniRoute su un VPS

OmniRoute è su un server? Gestiscila dal tuo laptop con la stessa CLI. Accedi una sola volta con un token di accesso con ambito limitato; da quel momento ogni comando verrà eseguito sul server remoto.

omniroute connect 192.168.0.15            # password → token con ambito limitato, salvato come contesto
omniroute models                         # ← viene eseguito sul server REMOTO
omniroute configure codex                 # ← seleziona un modello remoto e scrive un profilo Codex locale
omniroute tokens create --name ci --scope read   # genera token con privilegi più limitati per altre macchine
omniroute contexts use default            # ← torna al server locale

I token hanno ambito read / write / admin; le route che avviano processi rimangono accessibili solo tramite loopback. 📖 Modalità remota

Demo animata nel terminale della CLI di OmniRoute — omniroute providers list, omniroute combo list e omniroute health — che scorre gli 89 comandi principali disponibili: 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 …

🤝 Connetti un agente — e controllerà autonomamente OmniRoute

Esponi OmniRoute tramite MCP, A2A, una REST API, webhook o una CLI remota: qualsiasi agente compatibile (o il tuo codice) avrà accesso all'intero gateway, inclusi routing, provider, combinazioni, cache, compressione e memoria, in piena autonomia. Gli endpoint HTTP riportati di seguito sono disponibili all'indirizzo http://localhost:20128.

InterfacciaEndpoint / comandoUtilizzo
🧰 MCP (stdio)omniroute --mcpIntegralo con Claude Desktop, Cursor o qualsiasi client MCP
🌊 MCP (HTTP)/api/mcp/streamMCP remoto — 110 strumenti, 33 ambiti (applicazione opzionale), audit trail completo
📡 MCP (SSE)/api/mcp/sseTrasporto MCP in streaming
🤝 A2A/.well-known/agent.jsonComunicazione agente-agente, JSON-RPC 2.0 + SSE, 6 competenze
🌐 REST API/v1/*Compatibile con OpenAI — chat, embedding, immagini, audio, OCR
🔔 Webhook/api/webhooksInvia eventi relativi a richieste e quote a Slack, Discord, Telegram o qualsiasi URL
🛰️ CLI remotaomniroute connect Gestisci un'istanza remota con token di accesso con ambito limitato
# Fornisci a Claude Code l'intero set di strumenti OmniRoute tramite MCP:
claude mcp add-server omniroute --type http --url http://localhost:20128/api/mcp/stream

📖 Server MCP · Server A2A · Protocolli per agenti


🗜️ Risparmia il 15–95% dei token — automaticamente

📖 Come funziona — pipeline, architettura e calcolo del risparmio

Pipeline di compressione di OmniRoute: una richiesta illustrativa di 10.000 token dal client attraversa 12 motori componibili — Session-Dedup, CCR, Lite, RTK, Responses Tool Output, Headroom, Relevance, Caveman, Aggressive, LLMLingua-2, Ultra e OmniGlyph — e può raggiungere il provider a circa 1.080 token nell'esempio impilato documentato. I contenuti strutturati sono protetti dalle guardie di preservazione e dai gate di fedeltà per ogni fase; le modalità esplicitamente lossy o sperimentali possono trasformare i contenuti idonei.

La combo impilata predefinita esegue RTK → Caveman. Quando entrambi agiscono sullo stesso payload di tool/contesto, i risparmi si combinano:

combined = 1 − (1 − RTK) × (1 − Caveman_input)
average  = 1 − (1 − 0.80) × (1 − 0.46) = 89.2%
range    = 78.4 – 94.6%

I blocchi di codice, gli URL, il JSON e i dati strutturati sono sempre protetti dal motore di preservazione.

Perché usare molti token quando pochi bastano? Ogni richiesta attraversa la pipeline di compressione di OmniRoute in modo trasparente — nessuna modifica lato client. Ora è uno stack di 12 motori componibili che vengono eseguiti in ordine e si combinano in base alla combo di routing — basato su idee da RTK, Caveman (⭐ 90K+), LLMLingua-2 e Troglodita (PT-BR).

🧱 Lo stack di 12 motori

I motori vengono eseguiti nell'ordine della pipeline; ciascuno è attivabile e configurabile in modo indipendente per ogni combo:

#MotoreCosa fa
1Session-DedupElimina i contenuti ripetuti tra i turni (content-addressed, tra turni)
2CCRArchivia i blocchi di grandi dimensioni dietro marcatori di recupero, recuperati su richiesta
3LiteRiduzione di spazi bianchi + URL delle immagini (baseline a bassa latenza)
4RTKFiltro intelligente dei risultati dei tool, dedup e troncamento (consapevole dei comandi)
5Responses Tool OutputCompressione JSON lossless-first + diagnostica limitata per output di shell/patch/search/build (Responses API)
6HeadroomCompattazione tabellare lossless degli array JSON (~30%) tramite un codec GCF incorporato
7RelevancePunteggio estrattivo delle frasi rispetto all'ultima query dell'utente
8CavemanCompressione della prosa basata su regole (~65–75% sull'output)
9AggressiveRiassunto + invecchiamento progressivo dei turni precedenti
10LLMLingua-2Pruning semantico ML tramite MobileBERT ONNX — sicuro per il codice, asincrono
11UltraPruning euristico dei token con un livello opzionale basato su modello piccolo (SLM)
12OmniGlyphCodifica sperimentale del contesto come immagine per il misurato Claude Fable 5 sul wire diretto Anthropic; i transformer GPT 5.6 restano fail-closed in attesa dei riscontri dai provider. Quattro profili di compressione (predefinito aggressivo, bilanciato, coding-safe, passthrough) (il più aggressivo; opt-in)

I blocchi di codice, gli URL e i dati strutturati sono sempre preservati a livello di byte. I preset con un clic combinano i motori:

ModalitàRisparmioIdeale per
🪶 Lite~15%Default sicuro sempre attivo
🪨 Standard (Caveman)~30%Programmazione quotidiana
⚡ Aggressive~50%Sessioni lunghe con molti tool
🔥 Ultra~75%Massimo risparmio
🧰 RTK60–90%Output di shell/test/build/git
🔗 Stacked (RTK → Caveman)78–95%Prompt misti + log dei tool

Esempio reale — modalità Standard:

Prima (69 token): "Il motivo per cui il tuo componente React viene ri-renderizzato è probabilmente che stai creando un nuovo riferimento a un oggetto a ogni ciclo di render. Quando passi un oggetto inline come prop, il confronto superficiale di React lo vede come un oggetto diverso ogni volta, il che attiva un ri-render. Consiglierei di usare useMemo per memorizzare l'oggetto."

Dopo (19 token): "Nuovo riferimento a oggetto a ogni render. Prop con oggetto inline = nuovo riferimento = ri-render. Avvolgi in useMemo."

Stessa risposta. Il 72% di token in meno. Nessuna perdita di precisione. ✅

Esempio PT-BR — modalità Troglodita:

Prima (42 token): "Il problema è che il componente si ri-renderizza perché a ogni ciclo di render viene creata una nuova referenza di oggetto. Consiglierei di usare useMemo."

Dopo (12 token): "Ri-render: nuova ref a ogni ciclo (oggetto inline ricreato). Usare useMemo."

Stessa risposta. ~70% di token in meno. Precisione tecnica intatta. ✅


🎚️ Oltre gli engine — stili di output, il dial adattivo e il controllo per richiesta

I 12 engine qui sopra riducono ciò che entra. Altri tre livelli plasmano come, quando e cosa esce:

  • 🪄 Output Styles (steering sull'asse dell'output) — iniettano istruzioni deterministiche e cache-safe che plasmano la risposta; combinabili, ciascuno con intensità lite / full / ultra. Aggiungere uno stile è una voce di una riga nel registry:
    • Terse prose — elimina riempitivi / articoli / attenuazioni; mantiene esatta la sostanza tecnica.
    • Less code — YAGNI del "lazy senior dev": la modifica funzionante più piccola, nessuno scaffolding non richiesto.
    • Ponytail (lazy senior dev) — risali la scala YAGNI, correggi la causa radice, il diff funzionante più piccolo.
    • I have ADHD (action-first) — l'azione successiva apre, passi numerati, un solo passo successivo concreto, nessun preambolo.
    • Terse CJK (文言) — stile ultra-conciso in cinese classico (limitato al locale zh).
  • 🎯 Adaptive context-budget (il dial) — invece di un singolo threshold di token on/off, scala gli engine più economici e meno lossy solo quanto serve per stare nella finestra di contesto del modello. Policy: reserve-output (default, model-aware) · percentage · absolute. Mode: floor (garantisce il fit) · replace-autotrigger (la tua scelta esplicita vince) · off (threshold legacy).
  • 🎛️ Dove viene decisa la compressione (precedenza, alta → bassa) — header x-omniroute-compression per richiesta › override del routing-combo › profilo nominato attivo › adaptive / auto-trigger › default del pannello › off. Il piano applicato viene restituito nell'header di risposta X-OmniRoute-Compression: <mode>; source=<source>.

Auto-trigger per soglia di token, attiva il dial adattivo, fissa un profilo nominato, imposta un one-off per singola richiesta oppure assegna una pipeline per routing combo — quello che si adatta meglio al carico di lavoro. Un eval harness offline opt-in (npm run eval:compression) misura fedeltà vs. risparmio su un corpus fissato prima di promuovere una modifica.

📖 COMPRESSION_GUIDE.md · RTK_COMPRESSION.md · COMPRESSION_ENGINES.md


⚡ Avvio rapido

1) Installa ed esegui

npm install -g omniroute
omniroute

💡 Vedi npm warn ERESOLVE o warning sui peer-dep? Sono innocui. Usi npm 11 o successivo? npm può bloccare gli script del ciclo di vita dei pacchetti se non sono consentiti. Il postinstall di OmniRoute (node scripts/build/postinstall.mjs) è necessario per preparare i suoi file runtime nativi. Consenti i pacchetti indicati nel warning di npm quando installi globalmente. Per l'insieme di pacchetti riportato da OmniRoute 3.8.53:

npm install -g --allow-scripts=omniroute,keytar,onnxruntime-node,@parcel/watcher,@swc/core,protobufjs,esbuild omniroute

Per riutilizzare questa allowlist per future installazioni globali, configurala una volta sola e poi installa normalmente:

npm config set allow-scripts=omniroute,keytar,onnxruntime-node,@parcel/watcher,@swc/core,protobufjs,esbuild --location=user
npm install -g omniroute

L'elenco delle dipendenze può cambiare tra una release e l'altra; se npm riporta un elenco diverso, usa i nomi dei pacchetti presenti in quel warning. Consentire un pacchetto permette l'esecuzione dei suoi script di installazione. Usi Gemini Web o un altro provider basato su web-cookie? Il pacchetto npm include Playwright ma non il suo binario Chromium. Consulta la nota Configurazione di Playwright Chromium prima di effettuare la prima richiesta a un web-provider.

Dashboard su http://localhost:20128 · API su http://localhost:20128/v1.

2) Collega un provider idoneo usando il tuo account

Dashboard → Providers → scegli un provider i cui termini e quota attuali siano adatti al tuo caso d'uso → aggiungi la sua API key o completa il flusso di account. I piani gratuiti possono richiedere registrazione, approvazione o un metodo di pagamento. Consulta la Guida ai piani gratuiti; la disponibilità senza chiave non è garantita e i provider contrassegnati con tos: avoid sono esclusi da auto per impostazione predefinita.

3) Punta il tuo tool di coding

Base URL: http://localhost:20128/v1
API Key:  [copy from Dashboard → Endpoints]
Model:    auto            (routes among eligible connections — or choose provider/model)

4) Verifica che funzioni

curl http://localhost:20128/v1/models -H "Authorization: Bearer YOUR_KEY"

Dovresti vedere elencati i modelli collegati. 🎉 Tutto qui — inizia a scrivere codice e OmniRoute instrada e applica il fallback automaticamente per te.

Se il tuo client non può inviare header personalizzati, OmniRoute espone anche alias di compatibilità con token:

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

Usali solo per i client che non riescono ad allegare Authorization: Bearer .... L'autenticazione tramite header resta la modalità preferita.


📦 Altri metodi di installazione — Docker, sorgenti, pnpm, Arch

🐳 Docker

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 segue la versione SemVer stabile pubblicata più recente. Non segue il branch git main. Usa :X.Y.Z per GitOps. Consulta Canali di rilascio Docker. L'immagine imposta OMNIROUTE_MEMORY_MB=1024. È sufficiente per la dashboard e una chat leggera. Gli agenti di programmazione (POST /v1/responses da Claude Code, Codex, Grok, …) richiedono un heap V8 molto più grande, altrimenti il processo genera un FATAL ERROR a circa 12 GiB con due contesti lunghi sovrapposti. Dimensiona il container al di sopra dell'heap (i buffer nativi risiedono al di fuori di V8):

Carico di lavoro Heap (-e OMNIROUTE_MEMORY_MB) Container (--memory)
Dashboard / chat leggera 1024 (valore predefinito dell'immagine) ≥2 g
Un agente di programmazione 8192 ≥10 g
Due /v1/responses lunghi simultanei 10240–12288 ≥12–16 g
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

Tabella completa: Guida Docker — RAM di runtime.

Canale Docker di pre-release: diegosouzapw/omniroute:next e diegosouzapw/omniroute:next-web seguono il branch release/v* predefinito corrente. Questi tag modificabili sono destinati esclusivamente al test di correzioni non ancora rilasciate e non sono supportati in produzione. Consulta Canali di rilascio Docker.

🥟 Bun

L'installazione standard con bun install e quella globale (bun install -g omniroute) sono supportate tramite il rilevamento del runtime Bun:

  • bun:sqlite integrato: durante l'esecuzione con Bun, OmniRoute utilizza il driver bun:sqlite integrato di Bun, ricorrendo a better-sqlite3 su Node.js oppure a sql.js.
  • Selezione automatica del bundler Webpack in sviluppo: la modalità di sviluppo (bun run dev) rileva automaticamente Bun e disabilita Turbopack a favore di Webpack per evitare incompatibilità con i binding nativi V8. Le build di produzione (bun run build) rispettano esattamente OMNIROUTE_USE_TURBOPACK come su Node: Turbopack per impostazione predefinita, OMNIROUTE_USE_TURBOPACK=0 per compilare con Webpack (Dockerfile.bun lo espone come --build-arg).
  • Dockerfile dedicato a Bun: Dockerfile.bun multi-stage per distribuzioni di produzione native con Bun (docker build -f Dockerfile.bun -t omniroute:bun .).
# Installa ed esegui con Bun
bun install
bun run dev

🛠️ Dai sorgenti

cp .env.example .env && npm install
PORT=20128 npm run dev

📦 pnpm

pnpm add -g omniroute@latest --allow-build=better-sqlite3 --allow-build=@swc/core && omniroute

🐧 Arch Linux (AUR)

yay -S omniroute-bin && systemctl --user enable --now omniroute.service

🔧 Nix (Flake)

# Utilizzando i flake di Nix
nix develop
npm run dev

# Oppure utilizzando devbox
devbox run npm run dev

📖 Guida Docker — Profili Compose, HTTPS con Caddy, tunnel Cloudflare.

🦭 Podman

# 1. Prepara la directory dei dati montata tramite bind
mkdir -p data

# 2. Solo Linux + Podman rootless locale (mai un client Podman Machine remoto):
podman unshare chown 1000:1000 ./data

# 3. Imposta l'indicazione del runtime, crea l'immagine Compose locale e avvia
echo "CONTAINER_HOST=podman" >> .env
podman compose --profile base up -d --build

Su macOS o Windows, Podman utilizza una Podman Machine remota: salta podman unshare e segui le indicazioni sulla directory dei dati specifiche per la topologia.

📖 Guida Podman — Build Compose, Podman Machine e configurazione Quadlet di Linux/systemd.

⚡ Installazione più veloce / leggera (senza build nativa)

Il motore SQLite nativo (better-sqlite3) è una dipendenza opzionale, quindi un'installazione globale non rimane mai bloccata durante la compilazione dai sorgenti: utilizza un binario precompilato quando ne esiste uno compatibile con la piattaforma/Node in uso; in caso contrario, passa automaticamente a un motore JavaScript puro (node:sqlite su Node 22+, altrimenti il modulo WASM sql.js incluso) — senza richiedere strumenti di compilazione.

Per saltare completamente l'inizializzazione nativa successiva all'installazione (CI, sistemi headless o computer lenti). Nota: questa opzione salta solo il passaggio di inizializzazione di SQLite nativo (scripts/postinstall.mjs); l'hook di copia/riparazione del binario (scripts/build/postinstall.mjs) viene comunque eseguito normalmente:

OMNIROUTE_SKIP_POSTINSTALL=1 npm install -g omniroute   # Anche CI=1 lo salta

Per installazioni più rapide, preferisci pnpm (archivio indirizzato in base al contenuto + hard link — vedi sopra). Per un runtime headless senza dashboard, utilizza il profilo Docker base (sopra) oppure la guida Termux. La CLI e la dashboard web vengono servite dallo stesso processo su un'unica porta, quindi attualmente non esiste un pacchetto separato dedicato esclusivamente alla CLI.


🎬 OmniRoute in azione

📹 Guide video

Istantanea del pannello al 2026-10-18 · Catalogo grezzo: YT 1.352 | TT 334 | IG 290 · Aggiornamento (giorni): YT 5 | TT 48 | IG 49

Reel di Instagram — nick_saraev
🎬 #1 — Instagram
nick_saraev — 3,042,474 visualizzazioni
Reel di Instagram — nnapier7
🎬 #2 — Instagram
nnapier7 — 1,454,535 visualizzazioni
YouTube — Amidia AI & Tech
🎬 #3 — YouTube
Amidia AI & Tech — 794,974 visualizzazioni
Reel di Instagram — theopenstack
🎬 #4 — Instagram
theopenstack — 692,419 visualizzazioni
TikTok — migue.baena
🎬 #5 — TikTok
migue.baena — 685,788 visualizzazioni

Classifica completa (URL canonici deduplicati, v > 0, maggiore copertura):

#1 #2 #3 #4 #5
nick_saraev — Instagram — 3,042,474 nnapier7 — Instagram — 1,454,535 Amidia AI & Tech — YouTube — 794,974 theopenstack — Instagram — 692,419 migue.baena — TikTok — 685,788
#6 #7 #8 #9 #10
milesreevesai — TikTok — 620,400 nikothetech — TikTok — 610,803 Vaibhav Sisinty — YouTube — 509,281 buildwithai.club — Instagram — 347,652 nivedan.ai — Instagram — 331,973

Metriche canoniche al 2026-10-18: 1.976 video unici · 20.220.289 visualizzazioni note (v > 0) · 1.210 canali/profili per piattaforma. Il pannello grezzo contiene 1.976 righe (YouTube 1.352 = 740 video lunghi + 612 Shorts · TikTok 334 · Instagram 290); dopo la normalizzazione per URL canonico, che conserva il conteggio più alto per ciascun video, non è rimasto alcun duplicato. La raccolta dei dati di YouTube è ferma al 2026-10-13 (quota API esaurita dal 14 al 18/10), mentre quella di TikTok/Instagram è ferma al 2026-09-02 (crediti per la raccolta esauriti); 76 video non hanno ancora un conteggio delle visualizzazioni.

🎬 Hai realizzato un video su OmniRoute? Apri una segnalazione o una discussione con il link: lo metteremo in evidenza qui.


📧 Community e assistenza

Tutto in un unico posto: segui il maintainer, chatta con la community oppure apri una segnalazione.

Canale Dove / come
💼 LinkedIn — segui il manutentore linkedin.com/in/diegosouzapw
🐙 GitHub — segui per novità e consigli @diegosouzapw
💬 Discord discord.gg/U47eFqAXCn
✈️ Telegram t.me/omnirouteOficial
🟢 WhatsApp — 🌍 Globale unisciti al gruppo
🟢 WhatsApp — 🇧🇷 Brasile unisciti al gruppo
🌍 Sito web omniroute.online
🌍 🌍Community StHub OmniRoute (gratuita) portale sthub
📦 Codice sorgente github.com/diegosouzapw/OmniRoute
🐛 Segnala un bug apri una segnalazione — allega l'output di npm run system-info
🤝 Contribuisci CONTRIBUTING.md · Modello di branching e rilascio · scegli una good first issue
💚 Sostieni il progetto Modi per sostenerci ↑ · GitHub Sponsors


🛠️ Stack tecnologico

LivelloTecnologia
RuntimeNode.js 22.x / 24.x LTS — >=22.22.2 <23 || >=24.0.0 <27
LinguaggioTypeScript 6.0 — 100% TypeScript in src/ e open-sse/ (nessun any nel core dalla v2.0)
FrameworkNext.js 16 + React 19 + Tailwind CSS 4
Databasebetter-sqlite3 (SQLite, journaling WAL) + LowDB (JSON legacy) — 147 moduli di dominio, 219 migrazioni
MemoriaRicerca full-text SQLite FTS5 + embedding vettoriali quantizzati int8, decadimento tipizzato
SchemiZod 4 — convalida I/O degli strumenti MCP + contratti API
ProtocolliMCP (stdio / HTTP / SSE) + A2A v0.3 (JSON-RPC 2.0 + SSE)
StreamingServer-Sent Events (SSE) + bridge WebSocket (/v1/ws)
CompressionePipeline a 12 motori — RTK, Caveman, LLMLingua-2 (MobileBERT ONNX), GCF, OmniGlyph
Autenticazione & sicurezzaOAuth 2.0 (PKCE) + JWT + chiavi API + autenticazione MCP con ambiti · AES-256-GCM per i dati inattivi · DOMPurify
Occultamentowreq-js — impersonificazione delle fingerprint TLS JA3 / JA4, proxy a 3 livelli
ResilienzaCircuit breaker, backoff esponenziale, protezione anti-thundering-herd, autoripristino delle combinazioni automatiche
Registrazionepino — log JSON strutturati con contesto della richiesta
TestTest runner di Node.js + Vitest — oltre 56.000 dichiarazioni di test statiche in oltre 7.800 file di test tracciati (unitari, integrazione, E2E, sicurezza, ecosistema)
PiattaformeDesktop (Electron) · Android (Termux) · PWA (qualsiasi browser)
CI/CDGitHub Actions — pubblicazione automatica su npm + Docker Hub al rilascio
LinkSito web · npm · Docker Hub

📖 Documentazione

📘 Introduzione

DocumentoDescrizione
Guida utenteProvider, combinazioni, integrazione CLI, distribuzione
Guida alla configurazioneMetodi di installazione completi, configurazioni degli strumenti CLI, configurazione dei protocolli, ottimizzazione dei timeout
Guida agli strumenti CLIConfigurazione specifica per Claude Code, Codex, Cursor, Cline, OpenClaw, Kilo, Copilot
Modalità remotaControlla un'istanza OmniRoute remota (VPS) dalla CLI del tuo laptop tramite token di accesso con ambito limitato
Configurazione di Claude CodeCollega Claude Code a OmniRoute (locale/remoto) con launch e profili specifici per modello
Avvio rapidoInstallazione in 3 passaggi → connessione → configurazione

🔧 Operazioni e distribuzione

DocumentoDescrizione
Guida a DockerDocker run, profili Compose, HTTPS con Caddy, tunnel, tag delle immagini
Guida a PodmanIntegrazione di Quadlet con systemd, podman-compose, SELinux
Distribuzione su VMGuida completa: configurazione di VM + nginx + Cloudflare
Distribuzione su Fly.ioDistribuisci su Fly.io con archiviazione persistente
Guida a TermuxEsegui OmniRoute su Android tramite Termux
Guida alla PWAInstallazione, caching e architettura della Progressive Web App
Guida alla disinstallazioneRimozione completa per tutti i metodi di installazione
Configurazione dell'ambienteVariabili .env complete e relativi riferimenti

🧠 Funzionalità e architettura

DocumentoDescrizione
ArchitetturaArchitettura del sistema, flusso dei dati e meccanismi interni
Guida alla compressionePipeline con 7 opzioni: disattivata / leggera / standard / aggressiva / ultra / RTK / sovrapposta
Compressione RTKCompressione dell'output dei comandi, filtri, attendibilità, verifica, recupero dell'output grezzo
Motori di compressioneCaveman, RTK, pipeline sovrapposte, interfacce dashboard/API/MCP
Formato delle regole di compressioneSchemi dei pacchetti di regole JSON per i filtri Caveman e RTK
Pacchetti linguistici di compressioneRilevamento della lingua e creazione di pacchetti di regole Caveman
Guida alla resilienzaCircuit breaker, periodi di attesa, coda, prevenzione del thundering herd, spoofing TLS
Motore Auto-ComboValutazione basata su 16 fattori, pacchetti di modalità, autoriparazione
Guida ai proxySistema proxy a 3 livelli, marketplace 1proxy, operazioni CRUD sul registro
Livelli gratuitiDirectory consolidata: 34 pool ricorrenti documentati / 484 voci del livello gratuito catalogate
Galleria delle funzionalitàTour visivo della dashboard con schermate
Documentazione della codebasePanoramica della codebase adatta ai principianti

🤖 Protocolli e API

DocumentoDescrizione
Riferimento APITutti gli endpoint con esempi
Specifica OpenAPISpecifica OpenAPI 3.0
Server MCP110 strumenti MCP, configurazioni IDE, client Python/TS/Go
Guida al server MCPInstallazione di MCP, trasporti e riferimento degli strumenti
Server A2AProtocollo JSON-RPC 2.0, competenze, streaming, gestione delle attività
Guida al server A2AScheda dell'agente A2A, attività, competenze e streaming

📋 Progetto e qualità

DocumentoDescrizione
ContribuireConfigurazione e linee guida per lo sviluppo
Modello di branching e rilascioRami di destinazione delle PR (release/*) e significato di main e dei tag
Registro delle modificheCronologia completa dei rilasci per versione
Politica di sicurezzaSegnalazione delle vulnerabilità e pratiche di sicurezza
Guida all'i18nSupporto per 67 lingue, flusso di lavoro per le traduzioni, RTL
Checklist di rilascioPassaggi di convalida pre-rilascio
Piano di coperturaStrategia di copertura dei test per oltre 56.000 dichiarazioni di test statiche distribuite in oltre 7.800 file di test monitorati

⭐ Principali contributori

OmniRoute è plasmato da un'appassionata comunità open source. Queste persone hanno fornito contributi eccezionali che incidono direttamente sulla qualità, sulla stabilità e sulla diffusione del progetto. Grazie.

Contributori esterni per pull request incorporate

PosizioneContributorePR incorporate~Righe modificate
1maxmad64bis37125,326,561
2HouMinXi26913,456,272
3backryun210270,562
4oyi77190411,243
5pacocartones17478,276
6JxnLexn1513,562,936
6KooshaPari1515,972,314
8rdself14580,663
9RaviTharuma123500,065
10herjarsa88230,872
11hartmark842,849,554
12jonlwheat2-gif6768,548
13artickc6243,502
14chirag127526,661
15xz-dev50245,976
16xiaoyaner02014733,626
17woodsonl46809,391
18rqzbeh44147,896
19QuangBlue4313,112
20MumuTW4026,093

Rilevazione effettuata il 2026-10-18 alle 15:09:09 UTC sulla punta corrente di release/v3.8.52, 656f01cb43. La rilevazione paginata tramite GitHub GraphQL comprende 9.191 PR incorporate: 3.834 dall'autore del repository, 229 da Dependabot, 6 da altri bot/app e 5.122 PR esterne provenienti da 835 contributori distinti. Per “righe modificate” si intende la somma di aggiunte ed eliminazioni rilevate da GitHub; sono inclusi file generati, lockfile, cataloghi, traduzioni e documentazione. Si tratta quindi del volume delle modifiche, non delle righe di codice create. Per 49 PR, GitHub segnala diff superiori a 500.000 righe (ad esempio, la #13399, che aggiunge un singolo provider, elenca 2.347 file modificati), incrementando sensibilmente alcuni dei totali riportati sopra. Le posizioni a pari merito sono raggruppate.

Commit attribuiti da GitHub

Dizzle
Dizzle

🥇 367 commit attribuiti da GitHub
Bob.Hou
Bob.Hou

🥈 269 commit attribuiti da GitHub
Paijo
Paijo

🥉 229 commit attribuiti da GitHub
backryun
backryun

🏅 202 commit attribuiti da GitHub
Paco Cartones
Paco Cartones

🏅 174 commit attribuiti da GitHub
Ravi Tharuma
Ravi Tharuma

🏅 126 commit attribuiti da GitHub
Markus Hartung
Markus Hartung

🏅 114 commit attribuiti da GitHub
Randi
Randi

🏅 108 commit attribuiti da GitHub
Jan Leon
Jan Leon

🏅 87 commit attribuiti da GitHub
Chris
Chris

🏅 70 commit attribuiti da GitHub
Koosha Paridehpour
Koosha Paridehpour

🏅 68 commit attribuiti da GitHub

Ricontrollato il 2026-10-18 alle 14:44:45 UTC: commit attribuiti da GitHub segnalati dall'API Contributors del repository per il branch predefinito release/v3.8.52. L'API ha restituito 849 identità (429 utenti, 2 bot, 418 anonime); questa tabella esclude il manutentore, i bot e le identità anonime e mantiene le posizioni a pari merito. È distinta sia dalla classifica delle PR unite riportata sopra sia dal censimento dei metadati Git riportato sotto.

🙏 Le funzionalità, le correzioni di bug e i miglioramenti infrastrutturali apportati da questi collaboratori sono una parte fondamentale di ciò che rende OmniRoute affidabile e ricco di funzionalità. Ogni pull request, ogni caso di test e ogni file di traduzione i18n è importante. L'open source è costruito da persone come loro.



💖 Sostenitori

Un sentito ringraziamento alle persone che finanziano OmniRoute di tasca propria: ogni contributo mantiene il progetto gratuito, indipendente e in continua evoluzione.

Andrew
Andrew

💛 Sostenitore mensile attivo
Vlad I
Vlad I

💛 Sostenitore mensile attivo
小妍儿
小妍儿

💛 Sostenitore mensile attivo
Guilherme Costa
Guilherme Costa

💛 Sostenitore attivo con donazione una tantum
Henrique Triches Iurkiv
Henrique Iurkiv

💛 Sostenitore attivo con donazione una tantum
Somesh Ghaturle
Somesh Ghaturle

💛 Sostenitore attivo con donazione una tantum
Kolonie AI
Kolonie AI

💛 Precedente sostenitore con donazione una tantum
Professor Igor Morais Vasconcelos
Prof. Igor Morais

💛 Precedente sostenitore con donazione una tantum
Pixma
Pixma

💛 Precedente sostenitore con donazione una tantum
Paco Cartones
Paco Cartones

💛 Precedente sostenitore con donazione una tantum
longtao
longtao

💛 Precedente sostenitore con donazione una tantum

… e altri che preferiscono rimanere anonimi 💛

I sostenitori pubblici di GitHub sono stati riconvalidati il 2026-10-18 tramite l'API GraphQL di GitHub Sponsors: 11 sponsorizzazioni pubbliche (6 attive, 5 passate) su 14 totali. Lo stato isActive di GitHub determina le etichette relative ai sostenitori attivi riportate sopra; i precedenti sostenitori pubblici con donazione una tantum continuano a essere ringraziati, mentre i sostenitori privati rimangono anonimi. Le donazioni tramite Ko-fi, Buy Me a Coffee, Liberapay, PIX e criptovalute non sono elencate perché non dispongono di un registro pubblico dei sostenitori.

💖 Diventa un sostenitore → — ogni dollaro contribuisce a mantenere OmniRoute gratuito e indipendente.


👥 Oltre 900 contributori

Contributori

Verificato il 2026-10-18 sulla punta attiva di release/v3.8.52, commit ad160ab2d1 (6.826 commit): 993 identità Git umane normalizzate — 707 risultano come autori di commit (incluso il manutentore) e 286 compaiono solo nei trailer espliciti Co-authored-by. Il censimento applica .mailmap, confronta gli indirizzi e-mail senza distinguere tra maiuscole e minuscole, associa gli indirizzi GitHub noreply numerici e quelli testuali solo quando codificano lo stesso handle, esclude 26 identità relative a bot/agenti/servizi/segnaposto e non unifica i normali indirizzi e-mail solo perché i rispettivi nomi visualizzati corrispondono. L'audit del 2026-08-24 riportava 639 identità; rieseguendo questo metodo sulla base ac02c5b42f di tale audit se ne ottengono 619, pertanto l'incremento deriva da nuovi contributori, non da un metodo meno rigoroso.

Come contribuire

  1. Crea un fork del repository
  2. Crea un branch a partire dalla punta attiva di release/vX.Y.Z (non da main) — consulta Modello di branching e rilascio
  3. Crea il tuo branch per la funzionalità (git checkout -b feat/amazing-feature)
  4. Esegui il commit delle modifiche (git commit -m 'feat: add amazing feature')
  5. Esegui il push sul branch (git push origin feat/amazing-feature)
  6. Apri una Pull Request con base = quel branch release/vX.Y.Z

Consulta CONTRIBUTING.md per le linee guida dettagliate.

Rilascio di una nuova versione

# Crea una release — la pubblicazione su npm avviene automaticamente
VERSION=x.y.z
gh release create "v${VERSION}" --title "v${VERSION}" --generate-notes

📊 Stelle

Grafico della cronologia delle stelle

🌍 StarMapper

StarMapper

🙏 Ringraziamenti

OmniRoute si regge sulle spalle di giganti. È nato come fork di 9router e come port TypeScript del progetto Go CLIProxyAPI — e da lì, ogni sottosistema elencato di seguito è stato ispirato da un progetto open source che lo aveva realizzato per primo. Ognuno di essi ha plasmato una parte concreta di OmniRoute. Questo è il nostro ringraziamento a tutti loro. 🙏

⭐ numero di stelle verificato tramite l'API REST di GitHub il 18 ottobre 2026 — date una stella a questi progetti. I conteggi rappresentano un'istantanea esatta alla data indicata e cambieranno naturalmente nel tempo.

🧬 Origini e gateway

Progetto⭐Come ha ispirato OmniRoute
9router31,004Il progetto originale su cui si basa questo fork — qui esteso con API multimodali e una riscrittura completa in TypeScript.
CLIProxyAPI55,591L'implementazione in Go che ha ispirato questo port JavaScript / TypeScript.
LiteLLM61,482Il gateway AI il cui dataset pubblico dei prezzi alimenta la sincronizzazione del nostro monitoraggio dei costi e il cui modello di normalizzazione dei provider ha contribuito a definire il nostro routing.
codex-chatgpt-web14,526Codice sorgente MIT adattato nel bridge incluso ChatGPT Web → Codex Responses, inclusi gli adattatori per sessioni del browser, framing delle risposte, utilizzo e ricerca web.
free-claude-code61,430Pattern trasferiti nel ripristino degli stream, negli alias senza ragionamento, nella ricerca web di fallback, nei limiti a finestra scorrevole, nell'oscuramento dei log e nei flussi di avvio irrobustiti.
composer-api346Pattern di Cursor Composer per la scelta degli strumenti, i vincoli dell'output e il commit degli strumenti, adattati nell'esecutore nativo di Cursor.
codex-multi-auth553Pattern di nuovo accesso e rotazione dei token di aggiornamento trasferiti nella riautenticazione OAuth di Codex.
opencode-anthropic-auth558Valori predefiniti di trasformazione compatibili con Claude Code e comportamento delle intestazioni di fatturazione, generalizzati nel bridge basato sulla configurazione di OmniRoute.
grok2api-merged2Le sue mappature dei modelli Grok, il generatore Statsig con TypeError simulato, i valori predefiniti per richieste e dispositivi e il processore di risposte NDJSON sono stati adattati in modo sostanziale nell'esecutore Grok Web di OmniRoute.
TQZHR/grok2api706La principale fonte indiretta di codice alla base di grok2api-merged; le sue implementazioni di modelli, intestazioni, payload, Statsig e processori sono preservate nella discendenza di Grok Web.
chenyme/grok2api7,819Il codice sorgente MIT sottostante per i valori predefiniti di payload e dispositivi di Grok, il generatore Statsig e il processore result.response, confluiti attraverso TQZHR e grok2api-merged.
grok2api-pro27Una fonte indiretta citata da grok2api-merged per il suo livello di pool di proxy; OmniRoute conserva tale nota di discendenza, ma non rivendica il porting di un pool di proxy nel proprio esecutore Grok Web circoscritto.
GrokProxy51Il suo proxy Grok autenticato tramite cookie e il pattern di streaming result.response.token hanno contribuito a definire il trasporto Grok Web di OmniRoute.
GrokBridge5L'implementazione originale di Grok Web ha preso come riferimento la sua architettura upstream HTTP/browser; il suo percorso HTTP diretto deriva da GrokProxy, pertanto non viene rivendicato alcun porting indipendente del codice.

🗜️ Contesto e compressione dei token — motori

Progetto⭐Come ha ispirato OmniRoute
Caveman113,396Il progetto virale «perché usare molti token quando pochi token bastano» — la sua filosofia da uomo delle caverne alimenta la nostra modalità di compressione standard e oltre 30 regole di rimozione dei riempitivi e condensazione.
RTK – Rust Token Killer83,835Compressione ad alte prestazioni dell'output dei comandi — ha ispirato il nostro motore RTK, il DSL per i filtri JSON, il recupero dell'output grezzo e la pipeline combinata RTK → Caveman.
headroom75,741Compressione reversibile del contesto (SmartCrusher) — ha ispirato il nostro motore headroom e il modello di marcatori di recupero ccr.
LLMLingua6,757Ricerca sulla compressione dei prompt (LLMLingua / LLMLingua-2) — ha ispirato il nostro motore llmlingua asincrono, sicuro per il codice e con comportamento fail-open.
llmlingua-2-js32Il port JS/ONNX (MobileBERT / XLM-RoBERTa) usato come backend su thread worker per il nostro motore LLMLingua.
Troglodita50Compressione dei token in portoghese brasiliano — alimenta il nostro pacchetto linguistico pt-BR: riduzione dei pleonasmi e rimozione dei riempitivi ottimizzate per la grammatica del portoghese brasiliano.
ponytail166,731La skill virale del «senior dev pigro» che segue il principio YAGNI — ha ispirato il nostro stile di output less-code: orientamento verso la modifica funzionante più piccola, che riduce il codice _generato_ (l'equivalente, sul versante dell'output, della prosa concisa di Caveman).
i-have-adhd57,628Il suo stile di risposta orientato all'azione e adatto alle persone con ADHD è stato adattato nello stile di output conciso di OmniRoute in cinque lingue.

🧩 Formati compatti, ricerca sui token e strumenti sensibili al codice

Progetto⭐Come ha ispirato OmniRoute
TOON25,509Notazione degli oggetti orientata ai token — il suo modello colonnare, composto da intestazione e righe, ha plasmato la nostra fase di compattazione tabellare.
GCF – Graph Compact Format59Il suo formato compatto per grafi e la progettazione basata su un profilo generico hanno influenzato la compattazione tabellare di OmniRoute e il formato del codec Headroom.
gcf-typescript4L'implementazione TypeScript con licenza MIT, integrata direttamente ed estesa come codec del profilo generico di Headroom.
token-optimizer-mcp551Cache Brotli/SQLite + delta del contesto per sessione — ha ispirato il nostro motore session-dedup.
token-savior1,182Compattazione dell'output Bash + profili MCP — ha ispirato la nostra disciplina di interruzione della compressione e la riduzione dei manifest degli strumenti MCP.
token-saver154Compressione dell'output sensibile al contenuto e specifica per tipo di file, con interruzione in caso di errore — ha convalidato il nostro instradamento per tipo e l'omissione in caso di guadagno minimo insufficiente.
token-optimizer2,595«Trova i token fantasma» — il suo modello di offload + handle recuperabile ha influenzato il nostro approccio all'offload CCR.
TokenMizer33Un modello basato su un grafo di sessione + deduplicazione delle righe tra turni, che ha influenzato la progettazione di session-dedup.
OmniCompress3JSON colonnare in Rust + recupero indirizzato per contenuto + deduplicazione tra messaggi — ha convalidato la progettazione dei nostri motori headroom/ccr/session-dedup e l'invariante stabile rispetto alla cache secondo cui «la forma compressa è indipendente dalla posizione».
mcp-compressor133Compressione degli schemi e delle descrizioni degli strumenti MCP — ha influenzato la riduzione della cardinalità dei manifest degli strumenti MCP.
RepoMapper217Classificazione delle mappe dei repository in stile Aider — ha influenzato la nostra esplorazione delle mappe dei repository e della classificazione del recupero.
quiet-shell-mcp4Riduzione dichiarativa dell'output della shell tramite MCP — ha convalidato la nostra compattazione dichiarativa dell'output Bash.
ts-morph6,205Toolkit per la TypeScript Compiler API — ha ispirato la nostra rimozione dei commenti basata su parser, che preserva le stringhe, i template literal e le espressioni regolari.

🧠 Memoria e RAG

Progetto⭐Come ha ispirato OmniRoute
Mem067,385Livello di memoria universale — il suo modello di proxy come punto di confine per scrittura e lettura ha plasmato la nostra architettura della memoria.
Letta (MemGPT)25,179Agenti con stato e memoria a livelli — hanno ispirato il modello a livelli del nostro sistema di controllo e ripristino del contesto (CCR).
WFGY1,800La tassonomia ProblemMap di 16 modalità di errore ricorrenti nei sistemi RAG/LLM — il vocabolario condiviso della nostra guida alla risoluzione dei problemi.

🛰️ Ispezione del traffico, MITM e proxy trasparente

Progetto⭐Come ha ispirato OmniRoute
llm-interceptor79L'intercettazione e l'analisi MITM del traffico tra assistente di programmazione e LLM hanno contribuito a definire i requisiti iniziali dell'Ispettore del traffico. Quattro moduli derivati in precedenza — unione SSE, normalizzazione delle conversazioni, mascheramento dei segreti e sanificazione delle intestazioni — sono stati sostituiti da implementazioni indipendenti clean-room basate su standard di protocollo pubblici. Le due superfici host-passthrough (passthrough.ts e _internal/bypass.cjs) rimangono implementazioni interne di OmniRoute classificate in modo indipendente; non sono state riscritte nell'ambito di tale sostituzione.
ProxyBridge6,814Instradamento proxy trasparente per processo — ha ispirato il nostro arresto MITM resistente agli arresti anomali, i timeout di inattività dei socket, l'attribuzione dei processi tramite /proc e l'acquisizione TPROXY.

📚 Dati dei modelli, osservabilità e interfaccia utente

Progetto⭐Come ha ispirato OmniRoute
models.dev7,286Database aperto di specifiche, prezzi e funzionalità dei modelli di IA — sincronizzato nativamente con il nostro catalogo dei modelli.
React Flow / xyflow38,705La libreria di grafi basata su nodi su cui si fondano il nostro Studio di compressione e il nostro Studio di combinazione/instradamento in tempo reale.
LangGraph43,443La visualizzazione live del grafo del flusso di lavoro di LangGraph Studio ha ispirato la vista a cascata in tempo reale dei nostri Studio.
Langfuse35,990Il suo modello di osservabilità traccia → intervallo → generazione ha plasmato il diagramma a cascata del nostro Studio di compressione.
Kiali3,645Osservabilità della service mesh Istio — ha ispirato i nostri badge degli interruttori automatici e gli indicatori visivi degli archi di errore nello Studio di instradamento/combinazione.
lobe-icons2,615Loghi dei marchi IA/LLM utilizzati per visualizzare le icone dei fornitori nella nostra dashboard.
flag-icons12,473Fornisce le bandiere SVG con licenza MIT utilizzate dal selettore della lingua del README.

🛡️ Sicurezza

Progetto⭐Come ha ispirato OmniRoute
awesome-secure-defaults722Un elenco selezionato di librerie sicure per impostazione predefinita che orienta le nostre scelte di sicurezza (Helmet.js, DOMPurify, ssrf-req-filter, safe-regex, Google Tink).

🧭 Strumenti complementari

Progetto⭐Come ha ispirato OmniRoute
ClawRouter6,628Ha ispirato la deduplicazione delle richieste, il fallback di emergenza a costo zero, le strategie Auto-Combo collegabili e la classificazione multilingue degli intenti.
Antigravity-Manager32,333La rimappatura dei modelli basata sull'account, la convalida del percorso dell'eseguibile e il comportamento delle etichette dei piani hanno contribuito a definire il runtime Antigravity di OmniRoute.
vscode-antigravity-cockpit4,850Il suo formato compatto per il conto alla rovescia fino alla reimpostazione della quota ha ispirato la corrispondente visualizzazione dei limiti del fornitore in OmniRoute.
AionUi33,611Le sue integrazioni ACP hanno ispirato il rilevamento automatico degli agenti CLI installati da parte di OmniRoute.
CodexBar22,616Ha identificato l'interfaccia delle quote di Grok Build; OmniRoute ha quindi verificato e corretto in modo indipendente il formato effettivo dei dati trasmessi.

📄 Licenza

Licenza MIT - consulta LICENSE per i dettagli.


⬆ Torna all'inizio · Realizzato con ❤️ per la comunità AI open-source.

OmniRoute v3.8.53 · Node ≥22.22.2 · Licenza MIT · omniroute.online