# README (Deutsch) 🌐 **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) · 🇬🇷 [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) · 🇵🇱 [pl](../pl/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) ---
OmniRoute-Dashboard

# 🚀 OmniRoute — Das kostenlose KI-Gateway OmniRoute — Höre niemals auf zu programmieren. Jedes KI-Tool → 375 Anbieter — über 150 kostenlos — über einen einzigen Endpunkt. Claude Code, Codex, Cursor, Cline, Copilot & Antigravity mit KOSTENLOSEM Claude / GPT / Gemini und automatischem Fallback. Die kombinierte RTK- und Caveman-Komprimierung spart 15–95 % der Tokens (~89 % im Durchschnitt) — erreiche niemals Limits. 375 KI-Anbieter · über 150 kostenlose Tarife · ~1,62 Mrd. kostenlose Tokens/Monat · 20 Routing-Strategien · Einstieg für 0 $.
## 💰 ~1,62 Mrd. Tokens / Monat über kostenlose Tarife von Drittanbietern
> **Bring deine eigenen Provider-Konten mit.** Dies ist eine geschätzte Gesamtsumme über separat berechtigte kostenlose Tarife von Drittanbietern, keine Token-Zuweisung von OmniRoute. Melde dich an, hole dir die erforderlichen Zugangsdaten und verbinde die Provider, die du nutzen kannst; jeder Provider kontrolliert seine Limits, Verfügbarkeit und Bedingungen. > > Kostenlose Tarife von Hand zu stapeln ist mühsam — Dutzende SDKs, Dutzende Rate-Limits und keine Ahnung, wie viel du tatsächlich hast. OmniRoute katalogisiert **467 Einträge kostenloser Tarife über 34 wiederkehrende Pool-Schlüssel** und berechnet die Token-Kennzahl aus den **17 Pools mit einem veröffentlichten positiven Monatsbudget plus fünf modellspezifischen Groq-Caps**, dedupliziert nach gemeinsamem Pool. Kontingente, die erst nach einer regionalen Identitätsprüfung freigeschaltet werden (derzeit: ModelScope), werden separat ausgewiesen, +~6 Mio. hinter regionaler Identitätsverifizierung, und fließen nie in die Kennzahl ein. Das Ergebnis bleibt im Dashboard sichtbar (`/dashboard/free-tiers`). OmniRoute Budget-Karte für kostenlose Tarife: ~1,62 Mrd. kostenlose Tokens pro Monat dauerhaft, bis zu ~2,22 Mrd. im ersten Monat mit Anmelde-Guthaben, aus 34 dokumentierten wiederkehrenden Pool-Schlüsseln, die 467 katalogisierte Einträge kostenloser Tarife hinter einem einzigen Endpunkt abdecken. Ehrliche, pool-deduplizierte Rechnung — jeder gemeinsame Pool zählt einmal, einschließlich 17 wiederkehrender Pools mit einem veröffentlichten positiven monatlichen Token-Budget plus fünf modellspezifischer Groq-Caps; 12 Provider sind im Katalog für Bedingungen-Risiken als „avoid“ markiert, damit du selbst entscheiden kannst. Der Budget-Balken umfasst Mistral 1 Mrd., Nara 210 Mio., LLM7 150 Mio., xKiro 150 Mio., Groq 30 Mio. (fünf modellspezifische Caps) und kleinere Pools, plus Anmelde-Guthaben des ersten Monats und dauerhaft kostenlose Provider ohne Token-Cap, die separat ausgewiesen werden, damit sie die Kennzahl nie aufblähen. Live verbraucht/verbleibend auf /dashboard/free-tiers. > Animierte Zusammenfassung der Live-Seite `/dashboard/free-tiers`. Vollständige Methodik (Pool-Deduplizierung, Credit-Stufen, Provider-Bedingungen): **[docs/reference/FREE_TIERS.md](docs/reference/FREE_TIERS.md)**. > > Diese Zahlen werden alle zwei Wochen gegen den Live-Katalog neu geprüft und **bewegen sich in beide Richtungen** — ein Provider beendet einen kostenlosen Tarif und die Zahl sinkt; ein neuer kommt hinzu und sie steigt. Wir veröffentlichen, was der Katalog tatsächlich berechnet, niemals einen aufgerundeten Bestfall.

⭐ Gib dem Repo einen Stern, wenn OMNIROUTE dir geholfen hat, Geld zu sparen und deine Arbeit einfacher zu machen.

[![Stars](https://img.shields.io/github/stars/diegosouzapw/OmniRoute?style=social)](https://github.com/diegosouzapw/OmniRoute) diegosouzapw%2FOmniRoute | Trendshift [![Star History Rank](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) ### 💬 Werde Teil der Community **👋 Folge dem Maintainer — erfahre als Erster von neuen Providern, Releases & Tipps:** [![Follow Diego on 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/) [![Follow @diegosouzapw on 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 Brasil](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) [![Website](https://img.shields.io/badge/Website-omniroute.online-blue?logo=google-chrome&logoColor=white)](https://omniroute.online) **Fragen, Provider-Tipps, Roadmap & Support → [Discord](https://discord.gg/U47eFqAXCn) · [Telegram](https://t.me/omnirouteOficial) · WhatsApp [🌍 Global](https://chat.whatsapp.com/FvuCbrpZmQ6I85n2vW5QIC?s=cl&p=a&mlu=4) / [🇧🇷 Brasil](https://chat.whatsapp.com/KWgatljAjmbELQory59Oti?s=cl&p=a&mlu=4) / [Portal](https://portal.sthub.com.br/communities/groups/st-hub/channels/Omniroute-World-8kRjmK)**
## 📈 Das Gateway wächst weiter
| | v3.8.50 | **v3.8.51** | `v3.8.53+` | | ----------------------------- | :-----------------------: | :---------: | :-------------------: | | 🌐 Anbieter | 352 | **358** | 375 | | 🧠 Eindeutige Chat-Modell-IDs | 1320 | **1374** | 1475 | | 🖼️ Modality Bridge | 🆕 vision + audio + video | ✓ | ✓ | | 📡 Radar-Katalog (kostenlos) | 🆕 Opt-in | ✓ | ✓ | | ⚖️ Quota-bewusste Planung | 🆕 Quota-Share | ✓ | ✓ | | 📊 Quota-Telemetrie | 🆕 Live | ✓ | ✓ | | 🧰 Headless-Modus | — | — | 🆕 `serve --headless` | | 🛤️ LTS-Rail-Infrastruktur | — | — | 🆕 Release-Channels | | 🔎 Modell-Discovery-API | — | — | 🆕 `/v1/models/query` | **→ [Roadmap](ROADMAP.md) — auf dem Gleis zu `v3.9.0 LTS`**

## 🧩 Verfügbar [![npm-Version](https://img.shields.io/npm/v/omniroute?color=cb3837&logo=npm)](https://www.npmjs.com/package/omniroute) ![NPM monatlich](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) [![Lizenz: MIT](https://img.shields.io/badge/License-MIT-yellow.svg?style=flat-square)](LICENSE) ![Docker-Downloads](https://img.shields.io/docker/pulls/diegosouzapw/omniroute?label=docker%20pulls&logo=docker&color=2496ED) ![Electron-Downloads](https://img.shields.io/github/downloads/diegosouzapw/omniroute/total?style=flat&label=electron%20downloads&logo=electron&color=47848F)
🚀 Start 🚀 Schnellstart 📦 Installation 🆓 Anbieter verbinden
💡 Lernen 💥 Das Versprechen 🤔 Warum OmniRoute? 🏆 Was OmniRoute auszeichnet
⚙️ Funktionen 🎯 Combos 🌐 Anbieter 🔌 CLI & MCP
🗜️ Komprimierung 🖥️ Wo es läuft 🔒 Privat
👀 Ansehen 🎬 In Aktion ✨ Neuigkeiten 🤖 Kompatible CLIs
💚 Unterstützen 💚 Unterstützen / Spenden 💬 Community 💖 Sponsoren
📦 Projekt 🛠️ Technologie-Stack 📖 Dokumentation 👥 Mitwirkende
🌐 In 67 Sprachen

Englisch (en) Portugiesisch — Brasilien (pt-BR) Portugiesisch (pt) Spanisch (es) Französisch (fr) Italienisch (it) Deutsch (de) Niederländisch (nl) Russisch (ru) Ukrainisch (uk-UA) Polnisch (pl) Tschechisch (cs) Slowakisch (sk) Rumänisch (ro) Ungarisch (hu) Bulgarisch (bg) Dänisch (da) Finnisch (fi) Norwegisch (no) Schwedisch (sv) Chinesisch — Vereinfacht (zh-CN) Chinesisch — Traditionell (zh-TW) Japanisch (ja) Koreanisch (ko) Thailändisch (th) Vietnamesisch (vi) Indonesisch (id) Malaiisch (ms) Filipino (phi) Hindi (hi) Gujarati (gu) Marathi (mr) Tamilisch (ta) Telugu (te) Bengalisch (bn) Urdu (ur) Persisch (fa) Arabisch (ar) Hebräisch (he) Türkisch (tr) Aserbaidschanisch (az) Swahili (sw) Griechisch (el) Kroatisch (hr) Serbisch (sr) Litauisch (lt) Estnisch (et) Lettisch (lv) Slowenisch (sl) Maltesisch (mt) Irisch (ga) Kannada (kn) Malayalam (ml) Odia (or) Punjabi (pa) Nepalesisch (ne) Singhalesisch (si) Birmanisch (my) Khmer (km) Hausa (ha) Yoruba (yo) Igbo (ig) Amharisch (am) Usbekisch (uz) Georgisch (ka) Armenisch (hy) Bosnisch (bs)


## 🆓 Installieren, einen Anbieter verbinden und dann über einen einzigen Endpunkt routen
Drei Schritte: OmniRoute installieren und starten, einen berechtigten Anbieter mit deinem eigenen Konto oder API-Schlüssel verbinden und dann dein Tool mit einem OmniRoute-API-Schlüssel und dem Modell auto auf localhost:20128/v1 ausrichten. Das Routing hängt von verfügbaren berechtigten Verbindungen und den Anbieterlimits ab. ```bash # Nachdem du einen Anbieter verbunden hast, kopiere deinen OmniRoute-Schlüssel aus 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` benötigt eine berechtigte Route. Eine frische Installation kann keine berechtigten keyless-Ziele haben, und ein keyless-Anbieter kann Drittanbieter-Clients ablehnen. Anbieter, die mit `tos: avoid` markiert sind, einschließlich Kiro, sind standardmäßig vom automatischen Routing ausgeschlossen; das Verbinden eines Kontos hebt diese Einstellung nicht auf. Siehe den [Free-Tiers-Guide](docs/getting-started/FREE-TIERS-GUIDE.md), bevor du einen Anbieter auswählst. 📦 Kopierfertige Quickstart-Skripte für **Python, Node.js, PHP und cURL** → [`examples/quickstart/`](examples/quickstart/)
# 💥 Das Versprechen
Das Versprechen — Ein Endpunkt und 375 Anbieter. Automatischer Fallback hält das Routing aufrecht, solange ein anderes gesundes Ziel verfügbar ist. Sechs Säulen: resilienter Fallback über 375 Anbieter · bis zu 95 % Token-Einsparungen bei geeigneten Workloads · $0 zum Starten mit 150+ kostenlosen Tarifen und 51 wiederkehrenden/keyless dauerhaft kostenlosen Anbietern · 37 CLI-/Agent-Integrationen über eine Konfiguration · OpenAI-, Claude-, Gemini- und Responses-API-Kompatibilität unter /v1 · Produktionskontrollen einschließlich Circuit Breakers, TLS-Stealth, MCP 110 Tools, A2A, Memory, Guardrails, Evals und 56,000+ statischen Testdeklarationen in 7,800+ erfassten Testdateien.

# 🤔 Warum OmniRoute?
Warum OmniRoute — Schluss mit dem Jonglieren mit 10 Dashboards, toten API-Schlüsseln und Überraschungsrechnungen. Zehn alltägliche Schmerzpunkte vs. Lösungen: Kontingent verfällt ungenutzt → Abonnements maximieren; Rate-Limits mitten im Coding → automatischer Fallback mit 4 Stufen (Subscription → API → Cheap → Free); Tool-Ausgaben verbrennen Tokens → RTK- + Caveman-Kompression (15–95 %); teure APIs → kostenoptimiertes Routing; jedes Tool eine eigene Einrichtung → ein Endpunkt, ein Dashboard; KI blockiert → Proxy mit 3 Ebenen + TLS-Stealth; tote Schlüssel → Resilienz mit 3 Ebenen (Circuit Breakers, Key-Cooldown, Model-Lockout); Team teilt ein Abonnement → Key-Pools mit Fair-Share-Kontingenten; Prompts über die Cloud von jemand anderem → Local-First mit AES-256-GCM-verschlüsselten Schlüsseln; keine Ausgabenübersicht → Live-Analytics (Nutzung, Kontingent, Einsparungen, p95-Latenz).
OmniRoute-Anfragefluss: Deine IDE oder CLI (Claude Code, Cursor, Cline…) ruft einen lokalen Endpunkt auf (http://localhost:20128/v1); der OmniRoute Smart Router (RTK- + Caveman-Kompression, 20 Routing-Strategien, Circuit Breakers, TLS-Stealth, MCP, A2A, Guardrails) kann über 4 Anbieter-Tiers hinweg Fallback nutzen, solange ein berechtigtes gesundes Ziel verfügbar bleibt — Tier 1 Subscription, Tier 2 API Key, Tier 3 Cheap und Tier 4 Free.

## 🤝 Unterstützt von unseren Open-Source-Freunden

Kimi K3 — Offene Spitzenintelligenz · 2,8 Billionen Parameter · Kontext mit 1 Mio. Token

> **Möchten Sie sich als Open-Source-Freund anschließen?** Dies sind die Unternehmen, die Open Source unterstützen und dabei helfen, OmniRoute voranzubringen — und wir legen öffentlich offen, wofür jedes Token eingesetzt wird, das sie uns zur Verfügung stellen. Kontaktieren Sie uns: [diegosouza.pw@outlook.com](mailto:diegosouza.pw@outlook.com)
Kimi (Moonshot AI)
Kimi
Moonshot AI

Gründender Open-Source-Freund
Vielen Dank an Kimi (Moonshot AI), unseren ersten Open-Source-Freund, für die Unterstützung dieses Projekts! Kimi ist das KI-Labor hinter den Open-Weight-Modellfamilien K2 und K3 — Kimi K3 bietet ein Kontextfenster mit 1 Mio. Token, native Bildverarbeitung und Programmierfähigkeiten auf Spitzenniveau zu einem Bruchteil der Preise geschlossener Modelle und funktioniert sofort mit Claude Code, Codex und jedem von OmniRoute unterstützten Programmierwerkzeug.

Was durch Kimis Unterstützung ermöglicht wird: Kimis API-Guthaben finanzieren die KI-validierte Release-Pipeline von OmniRoute — die Phase Merge-Validierung, unterstützt von Kimi K3, die jeden Pull Request vor der Veröffentlichung prüft — sowie die tägliche Funktionsentwicklung. Erstklassige Kimi-Unterstützung ist auf beiden Wegen verfügbar: über die direkte Kimi API (kimi-k3) und den Kimi Code-Programmiertarif (OAuth und API-Schlüssel). OmniRoute ist außerdem das erste brasilianische Open-Source-Projekt im Unterstützungsprogramm von Kimi. Erhalten Sie einen Kimi-API-Schlüssel mit 15 % zusätzlichem Guthaben →
Cheaper Inference
Cheaper Inference
cheaperinference.com

Open-Source-Freund
Vielen Dank an Cheaper Inference, einen Open-Source-Freund von OmniRoute, für die Unterstützung dieses Projekts! Cheaper Inference ist ein nach Kosten sortiertes Gateway, das 42 Spitzenmodelle — Claude, GPT-5.x, Gemini, Kimi K3, GLM, DeepSeek, Grok und MiniMax — über einen einzigen OpenAI-kompatiblen Endpunkt weiterverkauft und jede Anfrage an den günstigsten geeigneten Anbieter weiterleitet, ohne jemals mehr als den Listenpreis des Modellherstellers zu berechnen.

Erstklassige Unterstützung in OmniRoute: Chat Completions, der native Endpunkt /v1/responses, Bildverarbeitung, Tool-Aufrufe und 3 Bildmodelle (grok-imagine, nano-banana-pro, nano-banana-2, erreichbar als cheaperinference/<model>). API-Schlüssel erhalten →
Mit aff=omniroute gekennzeichnete Links sind Partnerlinks. Sie finanzieren das Projekt, ohne dass Ihnen zusätzliche Kosten entstehen.
🎟️ Affiliate-Aktion — kostenlose Registrierungsgutscheine von Anbietern, die uns nicht sponsern (zum Aufklappen anklicken) Dieser Abschnitt ist ausschließlich für Empfehlungs-/Gutscheincodes vorgesehen. Gesponserte Partnerschaften finden Sie oben unter 🤝 Unterstützt von unseren Open-Source-Freunden. OmniRoute unterhält keine Sponsoringbeziehung oder Partnerschaft mit den hier aufgeführten Anbietern — dies sind öffentliche Gutscheine, die jeder nutzen kann.
AgentRouter
AgentRouter
agentrouter.org
AgentRouter — Affiliate-Registrierung · $100 kostenloses Guthaben bei der Registrierung (kostenloser Server, rechnen Sie mit höherer Latenz — am besten für Tests, nicht für die Produktion). Erstklassige Unterstützung in OmniRoute seit v3.8.50: Chat Completions, das Anthropic-kompatible Übertragungsformat und der OpenAI-kompatible Pfad. Zu den verfügbaren Modellen gehören claude-opus-4-8, claude-opus-5, gpt-5.6-sol und weitere. $100 sichern →

⚠️ Affiliate-Link — OmniRoute unterhält keine Sponsoringbeziehung oder Partnerschaft mit diesem Anbieter.
Kennen Sie einen weiteren Anbieter mit einem großzügigen kostenlosen Registrierungsgutschein, von dem OmniRoute-Nutzer profitieren? Eröffnen Sie ein Issue, und wir fügen ihn hier hinzu.

## 🎯 Combos — Das Flaggschiff
Animierte Beispiele für 18 der 20 Combo-Routing-Strategien — eine Kachel pro Strategie: 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 und quota-weighted sind nicht animiert; die Tabelle unten beschreibt alle 20. > Eine **Combo** ist eine Kette von Modellen, zwischen denen OmniRoute **automatisch** routet. Wenn das Kontingent aufgebraucht ist, ein Anbieter ausfällt oder die Kosten stark steigen, kann die Combo zum nächsten geeigneten, funktionsfähigen Modell wechseln. 🛡️ ### ⚡ Keine Konfiguration — einfach `auto` verwenden Es muss keine Combo erstellt werden. Lege dein Modell auf `auto` (oder eine Variante) fest, und OmniRoute erstellt aus deinen verbundenen Anbietern eine virtuelle Combo, die fortlaufend bewertet wird:
Modell-IDWofür optimiert wird
auto🎯 Ausgewogene Standardeinstellung (LKGP — bleibt bei deinem letzten zuverlässigen Anbieter)
auto/coding🧑💻 Qualitätsorientierte Gewichtung für die Codegenerierung
auto/fast⚡ Niedrigste Latenz zuerst
auto/cheap💰 Niedrigste Kosten pro Token zuerst
auto/subscription🎟️ Nur das bereits bezahlte Abonnementkontingent — bei Fehlern geschlossen, niemals ein kostenpflichtiger Fallback (Anleitung)
auto/thrifty🪜 Zuerst das Tarifkontingent, danach stufenweise die günstigsten kostenpflichtigen Optionen — nach dem Zurücksetzen wieder zurück zum Tarif (Anleitung)
auto/offline🔋 Größter Spielraum bei Kontingent bzw. Ratenlimit zuerst
auto/smart🔭 Qualität zuerst + 10 % Exploration, um bessere Modelle zu entdecken
auto/lkgp📌 Explizite Bindung an den letzten bekanntermaßen zuverlässigen Anbieter
auto/chaos🧪 Parallele Verteilung an eine Gruppe von Modellen (eines pro Anbieter, standardmäßig 5), die eine Antwort zurückgibt; ein Upstream-Aufruf pro Modell in der Gruppe, keine Fehlerinjektion
## ### 🔀 Oder erstelle deine eigene — 20 Routing-Strategien Alle **20** Strategien — pro Combo-Schritt frei kombinierbar:
# Strategie Funktionsweise
1 priority Geordnete Liste mit bevorzugtem Ziel — jedes Ziel wird vollständig ausgeschöpft, bevor das nächste verwendet wird 🥇
2 fill-first Das Kontingent jedes Ziels wird vollständig ausgeschöpft, bevor zum nächsten gewechselt wird
3 weighted Gewichtete Zufallsauswahl anhand der Gewichtung pro Ziel
4 round-robin Ziele der Reihe nach zyklisch durchlaufen
5 p2c Zufälliger Lastenausgleich nach dem Power-of-Two-Choices-Prinzip
6 least-used Das Ziel mit der aktuell geringsten Auslastung auswählen
7 random Gleichverteilte Zufallsauswahl (dedupliziert)
8 strict-random Zufallsauswahl ohne Deduplizierung von Wiederholungen 🎲
9 cost-optimized Kosten pro Anfrage anhand aktueller Katalogpreise minimieren 💸
10 headroom Das Ziel mit dem größten verbleibenden Kontingent auswählen
11 quota-weighted Ausgeschöpfte Konten überspringen, dann proportional zum verbleibenden Kontingent ÷ laufender Last auswählen — bestehende Unterhaltungen bleiben gebunden ⚖️
12 reset-window Das Ziel bevorzugen, dessen Kontingentfenster am frühesten zurückgesetzt wird
13 reset-aware Nach dem Zeitpunkt der Kontingentzurücksetzung ordnen — kurze Zeitfenster zuerst 📊
14 context-relay Kontext bei langen Unterhaltungen zwischen Zielen weiterreichen 🧠
15 context-optimized Die beste Eignung für die aktuelle Kontextgröße auswählen
16 cache-optimized Jedes wiederverwendbare Prompt-Präfix an dasselbe Konto binden — Treffer im Prompt-Cache maximieren 🎯
17 lkgp Last-Known-Good Path — bindet an den letzten erfolgreichen Anbieter und greift anschließend auf Regeln zurück
18 auto Live-Bewertung anhand von 16 Faktoren über alle Verbindungen hinweg 🤖
19 fusion Verteilung an eine Gruppe von Modellen + ein Bewertungsmodell führt die Ergebnisse zu einer Antwort zusammen 🧬
20 pipeline Schritte verketten — die Ausgabe jedes Ziels dient als Eingabe für das nächste 🔗
Die Auto-Combo-Engine bewertet jeden Kandidaten anhand von **16 Faktoren** (Status, Kontingent, Kosten, Latenz, Aufgabeneignung, Qualität, Sitzungsverfügbarkeit …) — siehe [`docs/routing/AUTO-COMBO.md`](docs/routing/AUTO-COMBO.md). ## ### 🧱 Resilienz ist integriert (3 unabhängige Ebenen) OmniRoute-Resilienz — 3 unabhängige selbstheilende Ebenen, die richtige Ebene für den jeweiligen Fehler. Ebene 1: Provider-Circuit-Breaker (gesamter Provider): Wird nur bei 408/5xx ausgelöst, Schwellenwerte OAuth 8× / API-Schlüssel 12× / lokal 2×, wechselt nach 60s/30s/15s für einen Test in den Zustand HALF-OPEN, verzögerte Wiederherstellung; während des Zustands OPEN leitet die Combo zum nächsten Provider um. Ebene 2: Verbindungs-Cooldown (ein Schlüssel/Konto): Basiswert 5s für OAuth / 3s für API-Schlüssel, exponentielles ×2-Backoff mit Schutz vor einem Thundering Herd, 429 berücksichtigt Retry-After, ein Erfolg löscht den gesamten Fehlerstatus; ein Schlüssel im Cooldown wird übersprungen, während andere Schlüssel weiterhin Anfragen verarbeiten. Ebene 3: Modellsperre (ein Modell): Modellspezifische 429-Fehler, lokale 404-Fehler oder Modusverweigerungen sperren nur dieses Modell — niemals die gesamte Verbindung. Endzustände (gesperrt, abgelaufen, Guthaben aufgebraucht) sind für den Betreiber bestimmt, nicht für Cooldowns. 📖 [Auto-Combo-Engine](docs/routing/AUTO-COMBO.md) · [Resilienzleitfaden](docs/architecture/RESILIENCE_GUIDE.md)
## 🏆 Was OmniRoute auszeichnet
Was OmniRoute auszeichnet — eine zeitgebundene Funktionsübersicht im Vergleich zu 9router, OpenRouter, CLIProxyAPI und LiteLLM anhand von 13 Funktionen. OmniRoute: 375 Anbieter, über 150 integrierte kostenlose Tarife, 20 Routing-Strategien, Token-Komprimierung mit 12 Engines, integrierter MCP-Server mit 110 Tools, A2A-Agentenprotokoll, persistenter Speicher, Schutzmechanismen, Cloud-Agenten, Tarnung des TLS-Fingerabdrucks, Desktop/Termux/PWA und 67 lokalisierte UI-Sprachversionen. OmniRoute ist MIT-lizenziert und kann selbst gehostet werden. Funktionen und Zahlen der Wettbewerber können sich ändern; siehe die verlinkte Methodik. 📊 Vollständige Methodik & Details zu den einzelnen Funktionen im Vergleich zu 9router, OpenRouter, CLIProxyAPI & LiteLLM → [`docs/comparison/OMNIROUTE_VS_ALTERNATIVES.md`](docs/comparison/OMNIROUTE_VS_ALTERNATIVES.md)
## 💚 OmniRoute unterstützen OmniRoute ist MIT-lizenziert und wird offen weiterentwickelt. Wenn es Ihnen Zeit oder Geld spart, können Sie so dazu beitragen, dass es unabhängig bleibt — wählen Sie einfach, was zu Ihnen passt. Sponsoring beeinflusst niemals die Routing-Priorität; es verschafft Sichtbarkeit, keine bessere Platzierung.
⭐ Repository mit einem Stern markierenKostenlos — hilft wirklich bei der SichtbarkeitOmniRoute mit einem Stern markieren
🐙 GitHub SponsorsEinmalig oder monatlich · keine Plattformgebührgithub.com/sponsors/diegosouzapw
☕ Ko-fiSchnelle einmalige Spende, keine Registrierung für Spendende erforderlichko-fi.com/diegosouzapw
🧋 Buy Me a CoffeeKleine, informelle Gestebuymeacoffee.com/diegosouzapw
🖐 LiberapayWiederkehrend · gemeinnützig · Open Sourceliberapay.com/diegosouzapw
🇧🇷 PIX (Brasilien)Sofort, gebührenfreiSchlüssel & QR-Code unten
₿ KryptowährungenBTC · ETH · USDT-TRC20 · USDC-SolanaAdressen unten
**🇧🇷 PIX** — sofort, gebührenfrei (Brasilien) PIX-QR-Code von OmniRoute Schlüssel (zufällig): `5d865059-bc44-483a-962d-43ceb80126eb` Pix copia-e-cola: ``` 00020101021126580014br.gov.bcb.pix01365d865059-bc44-483a-962d-43ceb80126eb5204000053039865802BR5922OMNIROUTE CONTRIBUICAO6006BRASIL62070503***630475DD ```
₿ Kryptowährungen — BTC · ETH · USDT-TRC20 · USDC-Solana (zum Aufklappen anklicken)
₿ BTCBitcoin (SegWit)bc1qh00smz004sy85wyl28v77tenkt3ckl6eaep7fd
Ξ ETHEthereum (ERC20)0x64Cf6B68A6Ff34288e89172950a2d00102337a84
₮ USDTTron (TRC20)TKAF41JpuQrHbKTnsQa9svJE2T192Hvsc2
$ USDCSolana2emNNZzVVWQc3FQ2wk9M6qXUQmW8AKdjjL174fXR28Tu
⚠️ Senden Sie jede Kryptowährung ausschließlich über das angegebene Netzwerk — beim Senden über das falsche Netzwerk können die Mittel verloren gehen.
🐛 Einen Fehler gefunden oder Feedback? Eröffnen Sie eine [Diskussion](https://github.com/diegosouzapw/OmniRoute/discussions).

Hinweise für Entwickler: Das Projekt kann während npm install/postinstall der Einfachheit halber eine lokale .env-Datei für Entwickler erstellen. Diese Datei wird absichtlich über .gitignore ignoriert (siehe .gitignore) und darf niemals committet werden — falls sie versehentlich committet wurde, ändern Sie alle offengelegten Geheimnisse und entfernen Sie die Datei aus dem Verlauf. Hinweise zur Verwaltung lokaler Umgebungsdateien und Geheimnisse finden Sie unter docs/DEVELOPER-ENVIRONMENT.md.

## 📡 OmniRoute Radar Die wichtigste Kennzahl für das kostenlose Kontingent bleibt bei **~1,62 Mrd. Tokens/Monat** aus dem oben dokumentierten, poolbereinigten Katalog. Vorübergehende Startguthaben von Anbietern können den Umfang im ersten Monat separat auf **~2,22 Mrd.** erhöhen. Radar ist eine optionale, signierte Katalog-Überlagerung für alle, die zwischen OmniRoute-Releases aktuellere Informationen zur Verfügbarkeit kostenloser Modelle wünschen; der Community-Katalog und alle bestehenden kostenlosen Funktionen bleiben kostenlos. Unterstützer können Zugriff auf den Live-Katalog und zusätzliche Anbieterangebote erhalten. Dessen separate, veränderliche Obergrenze liegt – abhängig von der Verfügbarkeit der Anbieter – bei **höchstens etwa 3 Mrd. Tokens/Monat**. Diese Obergrenze ist nicht garantiert: Anbieter können Kontingente, Teilnahmevoraussetzungen, Modelle oder Regionen jederzeit ändern. Radar ist optional und ausschließlich für GET-Anfragen vorgesehen. Der OmniRoute-Client lädt weder Prompts noch Datenverkehr, Anbieter- konfigurationen, Nutzungstelemetrie oder den lokalen Status verworfener Mitteilungen hoch. Informationen zu den Teilnahmevoraussetzungen und zum aktuellen Katalog finden Sie unter **[radar.omniroute.online/planos](https://radar.omniroute.online/planos)**.
## ✨ Neuigkeiten
> Aktuelle Highlights von **v3.8.20 → v3.8.53**. Die vollständige Historie steht in [`CHANGELOG.md`](CHANGELOG.md). - **⚖️ `quota-weighted`-Routing** — die 20. Combo-Strategie überspringt erschöpfte Konten und zieht dann unter den übrigen proportional zu Restkontingent ÷ aktiver Last; bestehende Unterhaltungen bleiben angepinnt. → [Auto-Combo](docs/routing/AUTO-COMBO.md) - **🧰 Headless-Modus** — `omniroute serve --headless` (oder `OMNIROUTE_HEADLESS=1`) startet nur die `/v1/*`-Proxy-Engine, während Dashboard und reine Dashboard-Subsysteme aus bleiben. → [Headless-Modus](docs/guides/HEADLESS.md) - **🔎 Modell-Erkennung** — `/v1/models` filtert nach Fähigkeit, Kontext, Art und Text, und `POST /v1/models/query` liefert eine kurze, deterministische Auswahl mit derselben Sichtbarkeit pro Schlüssel. → [API-Referenz](docs/reference/API_REFERENCE.md) - **🔑 Routing-Steuerung pro Schlüssel** — einen API-Schlüssel mit `forcedModel` an ein Modell oder eine Combo binden und die Modelle und Combos eines Schlüssels atomar hinzufügen oder entfernen (`/api/keys/{id}/access`). → [API-Referenz](docs/reference/API_REFERENCE.md) · [OpenAPI](docs/openapi.yaml) - **🛡️ Feinschliff bei PII-Kontrollen** — Auswahl pro Typ, bis zu 20 validierte benutzerdefinierte Maskierungsmuster und Erkennungszähler pro Typ; die Maskierung selbst bleibt opt-in. → [Guardrails](docs/security/GUARDRAILS.md) - **🌍 67 Sprachen** — Dashboard, Docs-Spiegel und CLI, wobei `npm run i18n:add-locale` eine Sprache überall mit einem einzigen Befehl hinzufügt. → [i18n-Leitfaden](docs/guides/I18N.md) - **🎛️ OmniConductor** — eingehende A2A-Delegierung an Ihre Agentenflotte, Conductor-Skills auf der Agent Card und ein Dashboard-Panel mit Faro-Push-to-Talk-Sprachchat. → [A2A-Server](docs/frameworks/A2A-SERVER.md) - **🛂 Adaptive Admission & Überlastschutz** — schwere Chat-Anfragen werden eingereiht statt mit 503 beantwortet, mit atomaren rollierenden RPM-Leases pro Verbindung. → [Resilienz-Leitfaden](docs/architecture/RESILIENCE_GUIDE.md) - **🗂️ Kanonische `/v1/models`-Reihenfolge** — ein zusammenhängender, nach Anbieter gruppierter Block pro Anbieter (Combos zuerst angepinnt), stabil über jede Katalogquelle hinweg. → [API-Referenz](docs/reference/API_REFERENCE.md) - **🗜️ Härtung der Kompression** — standardmäßig aktiver Inflation Guard, Caveman-Pakete für DE / FR / JA + Chinesisch (wényán), RTK-Filter für Gradle & .NET. → [Kompression](docs/compression/COMPRESSION_ENGINES.md) - **💸 Ehrliche Pauschalkosten** — Abo- / Coding-Plan-Anbieter werden in der Kostenanalyse mit **$0** ausgewiesen; Budget, Kontingent & Routing schätzen weiterhin. → [API-Referenz](docs/reference/API_REFERENCE.md) - **⚖️ Quota-Share-Routing** — das Kontingent eines gemeinsamen Kontos fair über gepoolte Schlüssel aufteilen, work-conserving, sodass ungenutzte Anteile verliehen werden. → [Resilienz-Leitfaden](docs/architecture/RESILIENCE_GUIDE.md) - **🤖 CLI-/Agenten-Einrichtung mit einem Befehl** — 15 registrierte `setup-*`-Befehle; `omniroute run` startet 7 CLIs (Claude Code, Codex, Aider, Goose, OpenCode, Qwen Code, Gemini CLI); `omniroute configure` unterstützt 11 Ziele mit interaktiver Anbieter+Modell-Auswahl und Favoriten pro Kontext. → [CLI-Integrationen](docs/guides/CLI-INTEGRATIONS.md) - **🛰️ Remote-Modus** — steuern Sie ein entferntes OmniRoute mit bereichsbezogenen Tokens (`connect` / `contexts` / `tokens`) + einem `antigravity`-OAuth-Helfer für VPS-Installationen. → [Remote-Modus](docs/guides/REMOTE-MODE.md) - **🧭 Intelligentere automatische Weiterleitung** — `auto/:`-Combos, **Fusion** (Modellpanel + Judge), aufgabenbewusstes Routing, Überschreibungen pro Anfrage für Modell / Modus / USD-Budget. → [Auto-Combo](docs/routing/AUTO-COMBO.md) - **🗜️ Austauschbare Kompression** — 12 kombinierbare Engines + Compression Studios: LLMLingua-2, zweistufiges Ultra, omniglyph, Fidelity-Gate pro Schritt, GCF v3.2, Drag-and-Drop-Editor. → [Kompression](docs/compression/COMPRESSION_ENGINES.md) - **🕵️ Transparente MITM-Entschlüsselung (TPROXY)** — erfassen Sie CLIs, die Proxy-Umgebungsvariablen ignorieren, mit einem CA pro SNI + Trust-Store-Installer. → [MITM/TPROXY](docs/security/MITM-TPROXY-DECRYPT.md) - **💸 Kosten-Telemetrie überall** — `X-OmniRoute-*`-Kosten-/Nutzungs-Header an jedem Endpunkt, Cache-HIT-Ersparnis-Header, USD-Ausgabenkontingente pro Schlüssel. → [API-Referenz](docs/reference/API_REFERENCE.md) - **🧠 Speicher unter Ihrer Kontrolle** — standardmäßig aus, opt-in int8-Vektorquantisierung + typisierter Verfall, `x-omniroute-no-memory` pro Anfrage. → [Speicher](docs/frameworks/MEMORY.md) - **🛡️ Sicherheit** — Prompt-Injection-Schutz auf jeder LLM-Route (Red-Team-Suite), opt-in Guardrail zur Maskierung von Anmeldedaten (redigiert geleakte API-Schlüssel/Geheimnisse in beide Richtungen), kostenlose DuckDuckGo-Websuche als letzte Rückfalloption und ein optionales OIDC-Login-Gate für das Dashboard (Passwort-Login bleibt immer verfügbar). → [Guardrails](docs/security/GUARDRAILS.md) - **🖼️ Neue Endpunkte** — `/v1/ocr` (Mistral OCR) und `/v1/audio/translations` (im Whisper-Stil) vervollständigen die Medienoberfläche. → [API-Referenz](docs/reference/API_REFERENCE.md) - **🎨 Bild- / Video- / Audiogenerierung** — eine API für Medien: xAI Grok Imagine & Novita AI Video, ComfyUI, Magnific, Adobe Firefly, Segmind und Sprachdienste wie ElevenLabs. → [API-Referenz](docs/reference/API_REFERENCE.md) - **🌍 Bereitstellung & Betrieb** — Reverse-Proxy-`basePath`, automatische Erkennung der Browsersprache, Geräteverfolgung pro Schlüssel, root-loses MITM-Vertrauen, zh-TW-Lokalisierung. → [Umgebung](docs/reference/ENVIRONMENT.md) - **🤝 Mehr Anbieter & Agenten** — Cloud-Agenten (Codex Cloud, Cursor, Devin, Jules), Grok Build (xAI) mit Browser- + OAuth-Login, erstklassige Ollama-Karte, Claude Opus 5 & Sonnet 5, offizielle Kimi-Partnerschaft (Code/Web/Moonshot), Zed, Requesty, SenseNova, Yuanbao, Agnes AI… und ein aufgefrischter **Katalog mit 375 Anbietern**. → [Anbieter](docs/reference/PROVIDER_REFERENCE.md) - **📡 Routing-Transparenz** — jede Antwort trägt einen `X-OmniRoute-Decision`-Header, der die Strategie/den Anbieter/die Latenz benennt, die sie bedient hat; eine neue `cache-optimized`-Combo-Strategie + Auto-Combo-Faktor `cacheAffinity` leiten wiederholte Anfragen zurück an die Verbindung, die das gecachte Präfix hält, und ein schreibgeschützter Endpunkt `/v1/auto-combo/{channel}/candidates` legt den Live-Kandidatenpool eines `auto/*`-Kanals offen. → [Auto-Combo](docs/routing/AUTO-COMBO.md) - **⚡ Lokale Performance & Infrastruktur** — lokales Redis per Ein-Klick, Relay-Deployer für Cloudflare Workers / Deno Deploy, Bifrost & Mux als überwachte eingebettete Dienste. → [Eingebettete Dienste](docs/frameworks/EMBEDDED-SERVICES.md) - **🧩 Ebenfalls enthalten** — Plugin-Framework + Marketplace, Omni/Agent/GitHub-Skills-Frameworks, Obsidian-Vault-Integration (22 MCP-Tools), OpenAI-kompatible Batch- & Files-APIs, semantischer Antwort-Cache, Gamification mit Bestenlisten, ACP-Agent-Erkennung (15 integrierte Agenten), geplanter Log-Export nach BigQuery, `auto/chaos` paralleles Multi-Model-Fan-out, eine Telegram-Bot-Bridge, einen In-App-Versionsmanager und LMArena-ELO-Rankings kostenloser Anbieter. → [Dokumentation](docs/README.md)
## 🤖 Kompatible CLIs & Coding-Agenten > Eine Konfiguration — `http://localhost:20128/v1` — und **jede** KI-IDE oder CLI läuft mit kostenlosen und kostengünstigen Modellen.
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
                           
+ funktioniert auch mit · Agent Deck · Kiro · Command Code · Antigravity · Windsurf · AMP · jedem OpenAI-kompatiblen Tool
📖 Einrichtung pro Tool für alle 37 Tools (27 CLI-Coding-Tools + 10 CLI-Agenten) → [`docs/reference/CLI-TOOLS.md`](docs/reference/CLI-TOOLS.md) · 🧩 OpenCode-Plugin → [`@omniroute/opencode-provider`](https://www.npmjs.com/package/@omniroute/opencode-provider)

**Starte jede unterstützte CLI mit nur einem Befehl über OmniRoute** — es werden keine Konfigurationsdateien geschrieben, Anmeldedaten werden pro Prozess injiziert und Qwen/Gemini erhalten ein temporäres, isoliertes Home-Verzeichnis: ```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" # Oder Anbieter und Modell interaktiv auswählen und die eigene Konfiguration des Tools schreiben: omniroute configure codex # ebenfalls: claude opencode qwen aider goose gemini cline continue kilo 5dive ``` Jeder Befehl berücksichtigt den aktiven Remote-Kontext (`omniroute connect `), `--dry-run` zeigt die exakten Umgebungsvariablen und Argumente vorab an, ohne sie auszuführen, und `--api-key-env NAME` verhindert, dass Geheimnisse in deinem Shell-Verlauf landen. → [CLI-Integrationen](docs/guides/CLI-INTEGRATIONS.md)
## 🌐 375 KI-Anbieter — 153 im Katalog als kostenlos markiert
> **375 registrierte Anbieter** in den kanonischen Sammlungen Chat, Media, Search, Local, Cloud-Agent und System, darunter **153 mit `hasFree: true` als Discovery-Metadaten**. Die Chat-Modellregistrierung umfasst **239 Anbieter / 3.059 verschiedene Anbieter-Modell-Paare / 1.475 rohe Modell-IDs**; der separate Katalog für kostenlose Budgets enthält **467 Zeilen pro Modell**, **34 wiederkehrende Pools** und **51 wiederkehrende/schlüssellose Anbieter, die für immer kostenlos sind**. Diese Nenner sind bewusst unterschiedlich; Definitionen und pool-deduplizierte Berechnungen finden sich in der [Provider-Referenz](docs/reference/PROVIDER_REFERENCE.md) und den [kostenlosen Tarifen](docs/reference/FREE_TIERS.md).
### 🏢 Jedes große Labor — über einen einzigen 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
                           
…und 350+ weitere — jedes Icon wird live aus dem Anbieterkatalog des Dashboards aufgelöst. 📖 [Provider-Referenz](docs/reference/PROVIDER_REFERENCE.md)
### 🆓 Für immer kostenlos — 0 $, keine Karte
OpenCode Zen
OpenCode Zen
DeepSeek V4, Nemotron 3
Kein Token-Limit
Kilo Code
Kilo Code
Auto-Router, Tencent Hy3
Dauerhaft kostenlos
Requesty
Requesty
GPT-OSS 120B, Nemotron
Dauerhaft kostenlos
SiliconFlow
SiliconFlow
DeepSeek V3.2 / R1
Kostenloser Tarif
Z.AI GLM
Z.AI GLM
GLM-4.7 / 4.5-Flash
Dauerhaft kostenlos
Baidu ERNIE
Baidu ERNIE
ERNIE 4.0
Dauerhaft kostenlos
Qoder AI
Qoder AI
Qwen3-Max, Kimi-K2
Unbegrenzt KOSTENLOS
Pollinations
Pollinations
GPT, Llama, Claude
Kein Schlüssel erforderlich
Cloudflare AI
Cloudflare AI
50+ Modelle
10K Neuronen/Tag
NVIDIA NIM
NVIDIA NIM
GLM, MiniMax
~40 RPM kostenlos
Cerebras
Cerebras
GLM 4.7, GPT-OSS
Einmalig 5 $ Guthaben; Karte erforderlich
OpenRouter
OpenRouter
:free-Modelle
+10 $ → höhere RPM
📖 Vollständiger maschinenlesbarer Katalog → [`docs/reference/PROVIDER_REFERENCE.md`](docs/reference/PROVIDER_REFERENCE.md)
## 🖥️ Wo OmniRoute läuft — überall
> Dieselbe App, dein Rechner, deine Regeln. Von einer globalen npm-Installation bis hin zu **deinem Smartphone** über Termux.
PlattformInstallationHighlights
📦 npm (global)npm install -g omnirouteEin Befehl, jedes Betriebssystem
🐳 Dockerdocker run … diegosouzapw/omnirouteMulti-Architektur: AMD64 + ARM64
🖥️ Desktop (Electron)npm run electron:buildNatives Fenster + Taskleiste — Windows / macOS / Linux
🎩 Menüleiste (OmniRouteTray)brew install --cask zoispag/tap/omniroute-trayÜberwacht und aktualisiert den Server automatisch — macOS
💪 ARMnativ für arm64Raspberry Pi, ARM-Server, Apple Silicon
📱 Android (Termux)pkg install nodejs && npx -y omnirouteLäuft auf deinem Smartphone, rund um die Uhr, ohne Root-Zugriff
📲 PWA„Zum Startbildschirm hinzufügen“Vollbildmodus, offline, über den Browser installierbar
🧩 OpenCode-Plugin@omniroute/opencode-providerNative OpenCode-Integration
🤖 VS Code Copilot ChatOmniCopilot-Erweiterung installierenJedes OmniRoute-Modell in der nativen Copilot-Chat-Auswahl — Stable & Insiders
🛠️ Aus dem Quellcodenpm install && npm run devAnpassen und mitwirken
📖 [Docker-Anleitung](docs/guides/DOCKER_GUIDE.md) · [Desktop](electron/README.md) · [Menüleisten-App](https://github.com/zoispag/omniroute-tray) · [Termux](docs/guides/TERMUX_GUIDE.md) · [PWA](docs/guides/PWA_GUIDE.md) · [OpenCode](docs/frameworks/OPENCODE.md)
### 🧩 Neu: OmniRoute im nativen Copilot Chat von VS Code
> Keine neue Seitenleiste, keine neue Chat-Oberfläche — jedes von OmniRoute bereitgestellte Modell erscheint direkt in der > **bereits verwendeten Modellauswahl von Copilot Chat**. Seit VS Code 1.122 funktionieren Anbietermodelle > ohne GitHub-Anmeldung oder Copilot-Abonnement — Agentenmodus, Tool-Aufrufe und Bildverarbeitung, > kostenlos. Installiere die Erweiterung **[OmniCopilot](https://github.com/diegosouzapw/OmniCopilot)**, verbinde sie mit deinem OmniRoute-Server (standardmäßig `localhost:20128`) und öffne dann Copilot Chat → Modellauswahl → **Modelle verwalten…** → **OmniRoute**.
StoreLinkKompatibel mit
🧩 VS Code MarketplaceInstallieren →VS Code — Stable & Insiders
🔓 Open VSX RegistryInstallieren →Cursor, Windsurf, VSCodium, Theia, code-server, Gitpod, Antigravity, Kiro…
Im Editor: Öffne die Ansicht **Erweiterungen**, suche nach **„OmniRoute“** und klicke auf **Installieren** — funktioniert in beiden Stores auf dieselbe Weise. Quellcode, Issues und das Runbook für die Veröffentlichung findest du unter [diegosouzapw/OmniCopilot](https://github.com/diegosouzapw/OmniCopilot). 📖 [Anleitung für VS Code Copilot Chat](docs/guides/VSCODE-COPILOT.md) — Einrichtung, Anzeige in der Modellauswahl, Dashboard in einem Tab, Fehlerbehebung
### 🎩 Neu: OmniRouteTray — dein Gateway in der Menüleiste
> `omniroute serve` funktioniert am besten, wenn es immer läuft. **[OmniRouteTray](https://github.com/zoispag/omniroute-tray)** > macht daraus eine einmalig einzurichtende Menüleisten-App für macOS: Sie startet den Server, hält ihn > auch nach Neustarts am Laufen, aktualisiert ihn direkt und macht dein aktuelles Token-Budget mit einem Klick verfügbar — **kein > offenes Terminalfenster und keine globale Installation mit `npm install -g omniroute`, um die du dich kümmern musst.** Die App basiert auf [Tauri v2](https://v2.tauri.app/) (mit einem winzigen Rust-Kern) und bringt eine eigene signierte Node-24-Laufzeitumgebung mit. Sie verwaltet eine app-eigene OmniRoute-Installation und gerät daher nie mit deinem globalen `node`/`bun` in Konflikt. Sie **verwendet deine vorhandene Konfiguration und Datenbank unter `~/.omniroute/`** — es ist also dasselbe OmniRoute, das du bereits ausführst, nur mit Hut. 🎩
FunktionFunktionsweise
🟢 Überwacht den ServerStartet omniroute serve und übernimmt eine bereits laufende Instanz, statt sie zu duplizieren
📊 Live-Nutzung auf einen BlickKontingentanzeigen der Anbieter, Sitzungs- und Wochenlimits von Claude mit Countdown bis zur Zurücksetzung sowie Kostenaufschlüsselung für 30 Tage
🔄 Automatische direkte UpdatesMehrstufige Installation, atomarer Austausch und Rollback bei Fehlern — immer auf dem neuesten Release
🚀 Beim Anmelden startenOptionaler Start bei der Anmeldung; nur in der Menüleiste, ohne Dock-Symbol
🩺 Diagnose & ProtokolleDiagnose mit einem Klick und Zugriff auf die Serverprotokolle
```sh brew install --cask zoispag/tap/omniroute-tray ``` Bevorzugen Sie einen Download? Laden Sie die neueste .dmg-Datei unter Releases herunter. Quellcode, Issues und Build-Dokumentation finden Sie unter zoispag/omniroute-tray.
💛 Ein Community-Projekt von @zoispag — keine offizielle OmniRoute-Veröffentlichung.

## 🔒 Privat & Local-First
Privat und Local-First — Gateway und Steuerungsebene von OmniRoute laufen auf Ihrem Rechner. Prompts werden an den für jede Anfrage ausgewählten Upstream-Anbieter gesendet; OmniRoute fügt keinen gehosteten Zwischenschritt zur Prompt-Verarbeitung hinzu, und Telemetrie ist standardmäßig deaktiviert. Zugangsdaten werden im Ruhezustand mit AES-256-GCM verschlüsselt; zu den Schutzmaßnahmen gehören die Einschränkung von API-Schlüsseln, IP-Filterung, Ratenbegrenzungen, Schutz vor Prompt-Injection, die Bereinigung von Upstream-Headern, optionale PII-Schwärzung, bereinigte Fehlermeldungen und ein lokales SQLite-Audit-Protokoll. OmniRoute ist MIT-lizenziert und kann selbst gehostet werden. 📖 [Autorisierung](docs/architecture/AUTHZ_GUIDE.md) · [Schutzmechanismen](docs/security/GUARDRAILS.md) · [Compliance](docs/security/COMPLIANCE.md)
## 🔌 Vollständige CLI + A2A & MCP
> Über den Server hinaus ist OmniRoute ein **vollständiges Kommandozeilen-Cockpit** mit **über 80 Befehlen** sowie offenen Agentenprotokollen, sodass ein KI-Agent es **selbstständig** steuern kann. ### ⌨️ Eine echte CLI (nicht nur `start`) ```bash omniroute # Gateway + Dashboard bereitstellen (Port 20128) omniroute chat # interaktiver TUI-Chat-Client (Slash-Befehle: /model /combo /skill /memory) omniroute setup # geführter Assistent für die Ersteinrichtung omniroute doctor # Anbieter, Ports und native Abhängigkeiten diagnostizieren ``` ### 🛰️ Remote-Modus — CLI hier ausführen, OmniRoute auf einem VPS OmniRoute läuft auf einem Server? Steuere es von deinem Laptop aus mit **derselben CLI**. Melde dich einmal mit einem bereichsbeschränkten Zugriffstoken an; danach richtet sich jeder Befehl an den Remote-Server. ```bash omniroute connect 192.168.0.15 # Passwort → bereichsbeschränktes Token, als Kontext gespeichert omniroute models # ← wird auf dem REMOTE-Server ausgeführt omniroute configure codex # ← wählt ein Remote-Modell aus und schreibt ein lokales Codex-Profil omniroute tokens create --name ci --scope read # eingeschränktere Tokens für andere Rechner erstellen omniroute contexts use default # ← zurück zum lokalen Server wechseln ``` Tokens sind auf `read` / `write` / `admin` beschränkt; Routen, die Prozesse starten, bleiben auf Loopback beschränkt. 📖 [Remote-Modus](docs/guides/REMOTE-MODE.md)
Animierte Terminal-Demo der OmniRoute-CLI — omniroute providers list, omniroute combo list und omniroute health — durchläuft die Oberfläche mit 89 Top-Level-Befehlen: 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 …
### 🤝 Einen Agenten verbinden — und OmniRoute selbst steuern lassen Stelle OmniRoute über **MCP**, **A2A**, eine **REST API**, **Webhooks** oder eine **Remote-CLI** bereit — jeder geeignete Agent (oder dein eigener Code) erhält damit die Kontrolle über das gesamte Gateway: Routing, Anbieter, Combos, Cache, Komprimierung und Speicher — autonom. Die folgenden HTTP-Endpunkte werden unter `http://localhost:20128` bereitgestellt.
SchnittstelleEndpunkt / BefehlVerwendungszweck
🧰 MCP (stdio)omniroute --mcpIn Claude Desktop, Cursor oder einen beliebigen MCP-Client integrieren
🌊 MCP (HTTP)/api/mcp/streamRemote-MCP — 110 Tools, 33 Bereiche (Durchsetzung optional), vollständiger Audit-Trail
📡 MCP (SSE)/api/mcp/sseStreaming-Transport für MCP
🤝 A2A/.well-known/agent.jsonAgent-zu-Agent-Kommunikation, JSON-RPC 2.0 + SSE, 6 Fähigkeiten
🌐 REST API/v1/*OpenAI-kompatibel — Chat, Embeddings, Bilder, Audio, OCR
🔔 Webhooks/api/webhooksAnfrage- und Kontingentereignisse an Slack, Discord, Telegram oder eine beliebige URL senden
🛰️ Remote-CLIomniroute connect Eine Remote-Instanz mit bereichsbeschränkten Zugriffstokens steuern
```bash # Claude Code über MCP den vollständigen OmniRoute-Werkzeugsatz bereitstellen: claude mcp add-server omniroute --type http --url http://localhost:20128/api/mcp/stream ``` 📖 [MCP-Server](docs/frameworks/MCP-SERVER.md) · [A2A-Server](docs/frameworks/A2A-SERVER.md) · [Agentenprotokolle](docs/frameworks/AGENT_PROTOCOLS_GUIDE.md)
## 🗜️ Spare 15–95 % Tokens — automatisch
### 📖 So funktioniert es — Pipeline, Architektur & Sparmathematik OmniRoute-Kompressionspipeline: Eine beispielhafte Client-Anfrage mit 10.000 Tokens durchläuft 12 kombinierbare Engines — Session-Dedup, CCR, Lite, RTK, Responses Tool Output, Headroom, Relevance, Caveman, Aggressive, LLMLingua-2, Ultra und OmniGlyph — und kann den Provider im dokumentierten gestapelten Beispiel mit etwa 1.080 Tokens erreichen. Strukturierte Inhalte werden durch Preservation-Guards und Fidelity-Gates pro Schritt geschützt; explizite verlustbehaftete oder experimentelle Modi können geeignete Inhalte transformieren. Die standardmäßig gestapelte Kombination führt `RTK → Caveman` aus. Wenn beide auf dieselbe Tool-/Kontext-Payload wirken, verstärken sich die Einsparungen: ```txt combined = 1 − (1 − RTK) × (1 − Caveman_input) average = 1 − (1 − 0.80) × (1 − 0.46) = 89.2% range = 78.4 – 94.6% ``` Codeblöcke, URLs, JSON und strukturierte Daten werden **immer geschützt** durch die Preservation-Engine. > **Warum viele Tokens verwenden, wenn wenige Tokens den Zweck erfüllen?** Jede Anfrage durchläuft die Kompressionspipeline von OmniRoute **transparent** — ohne Änderungen am Client. Sie ist jetzt ein **Stapel aus 12 kombinierbaren Engines**, die in Reihenfolge ausgeführt und pro Routing-Kombination gemischt und kombiniert werden — aufbauend auf Ideen aus [RTK](https://github.com/rtk-ai/rtk), [Caveman](https://github.com/JuliusBrussee/caveman) (⭐ 90K+), [LLMLingua-2](https://github.com/microsoft/LLMLingua) und [Troglodita](https://github.com/leninejunior/troglodita) (PT-BR). ### 🧱 Der 12-Engine-Stack Engines laufen in einer Pipeline; jede ist unabhängig umschaltbar und pro Kombination konfigurierbar:
#EngineWas sie tut
1Session-DedupEntfernt Inhalte, die über Turns hinweg wiederholt werden (content-addressed, turn-übergreifend)
2CCRArchiviert große Blöcke hinter Retrieve-Markern, bei Bedarf abgerufen
3LiteWhitespace- + Bild-URL-Trimming (latenzarme Baseline)
4RTKIntelligente Tool-Result-Filterung, Dedup & Kürzung (befehlssensitiv)
5Responses Tool OutputLossless-first JSON + begrenzte diagnostische Kompression für Shell-/Patch-/Such-/Build-Ausgaben (Responses API)
6HeadroomVerlustfreie tabellarische Kompaktierung von JSON-Arrays (~30 %) über einen eingebundenen GCF-Codec
7RelevanceExtraktives Satz-Scoring gegen die letzte Nutzeranfrage
8CavemanRegelbasierte Prosa-Kompression (~65–75 % auf der Ausgabe)
9AggressiveZusammenfassung + progressives Altern alter Turns
10LLMLingua-2ML-semantisches Pruning via MobileBERT ONNX — code-sicher, asynchron
11UltraHeuristisches Token-Pruning mit einer optionalen Small-Model-(SLM-)Stufe
12OmniGlyphExperimentelle Kontext-als-Bild-Kodierung für gemessenes Claude Fable 5 auf dem direkten Anthropic-Wire; GPT 5.6-Transformatoren bleiben fail-closed, bis Provider-Nachweise vorliegen. Vier Kompressionsprofile (aggressive Standard, balanced, coding-safe, passthrough) (am aggressivsten; Opt-in)
Codeblöcke, URLs und strukturierte Daten werden **immer bytegenau erhalten**. **Ein-Klick-Presets** kombinieren die Engines:
ModusEinsparungAm besten für
🪶 Lite~15 %Immer aktiver sicherer Standard
🪨 Standard (Caveman)~30 %Tägliches Coding
⚡ Aggressive~50 %Lange tool-lastige Sitzungen
🔥 Ultra~75 %Maximale Einsparungen
🧰 RTK60–90 %Shell-/Test-/Build-/Git-Ausgabe
🔗 Stacked (RTK → Caveman)78–95 %Gemischte Prompts + Tool-Logs
**Praxisbeispiel — Standard-Modus:** > **Vorher (69 Tokens):** _„Der Grund, warum deine React-Komponente neu rendert, ist wahrscheinlich, dass du bei jedem Renderzyklus eine neue Objektreferenz erzeugst. Wenn du ein Inline-Objekt als Prop übergibst, sieht Reacts flacher Vergleich es jedes Mal als ein anderes Objekt, was ein erneutes Rendern auslöst. Ich würde empfehlen, useMemo zu verwenden, um das Objekt zu memoisieren.“_ > > **Nachher (19 Tokens):** _„Neue Objektreferenz bei jedem Render. Inline-Objekt-Prop = neue Referenz = erneutes Rendern. In useMemo einwickeln.“_ > > **Gleiche Antwort. 72 % weniger Tokens. Keinerlei Genauigkeitsverlust.** ✅ **PT-BR-Beispiel — [Troglodita](https://github.com/leninejunior/troglodita)-Modus:** > **Vorher (42 Token):** _„Das Problem besteht darin, dass die Komponente erneut gerendert wird, weil in jedem Renderzyklus eine neue Objektreferenz erstellt wird. Ich würde empfehlen, useMemo zu verwenden.“_ > > **Nachher (12 Token):** _„Erneutes Rendern: neue Referenz je Zyklus (Inline-Objekt neu erstellt). `useMemo` verwenden.“_ > > **Gleiche Antwort. ~70 % weniger Token. Technische Präzision bleibt erhalten.** ✅
### 🎚️ Mehr als nur Engines — Ausgabestile, adaptive Regelung und Steuerung pro Anfrage Die 12 oben genannten Engines reduzieren, was **hineingeht**. Drei weitere Ebenen bestimmen, **wie**, **wann** und was **herauskommt**: - **🪄 Ausgabestile** _(Steuerung der Ausgabeachse)_ — fügen deterministische, Cache-kompatible Anweisungen zur Gestaltung der Antwort ein; kombinierbar, jeweils mit der Intensität `lite` / `full` / `ultra`. Zum Hinzufügen eines Stils genügt ein einzeiliger Registry-Eintrag: - **Knapp formuliert** — Füllwörter, Artikel und Relativierungen weglassen; technische Substanz exakt beibehalten. - **Weniger Code** — „fauler Senior-Entwickler“-YAGNI: kleinste funktionierende Änderung, kein unaufgefordertes Gerüst. - **Pferdeschwanz (fauler Senior-Entwickler)** — die YAGNI-Leiter hinaufsteigen, die Ursache beheben, kleinstmöglicher funktionierender Diff. - **Ich habe ADHS (handlungsorientiert)** — mit der nächsten Aktion beginnen, Schritte nummerieren, genau einen konkreten nächsten Schritt nennen, keine Einleitung. - **Knappes CJK (文言)** — ultraknapper klassisch-chinesischer Stil (durch Gebietsschema auf `zh` beschränkt). - **🎯 Adaptives Kontextbudget** _(der Regler)_ — statt eines einzigen Ein-/Aus-Token-Schwellenwerts werden die günstigsten Engines mit den geringsten Verlusten nur so weit zugeschaltet, wie es nötig ist, um **in das Kontextfenster des Modells zu passen**. Richtlinie: `reserve-output` (Standard, modellabhängig) · `percentage` · `absolute`. Modus: `floor` (garantiert die Einhaltung) · `replace-autotrigger` (Ihre explizite Auswahl hat Vorrang) · `off` (veralteter Schwellenwert). - **🎛️ Wo über die Komprimierung entschieden wird** _(Priorität, hoch → niedrig)_ — `x-omniroute-compression`-Header pro Anfrage › Überschreibung durch Routing-Kombination › aktives benanntes Profil › adaptiver Modus / automatische Auslösung › Standardeinstellung im Panel › aus. Der angewendete Plan wird im Antwort-Header `X-OmniRoute-Compression: ; source=` zurückgegeben. Automatische Auslösung per Token-Schwellenwert, adaptiven Regler aktivieren, ein benanntes Profil festlegen, eine einmalige Einstellung pro Anfrage setzen oder einer Routing-Kombination eine Pipeline zuweisen — je nachdem, was zur Arbeitslast passt. Eine optional aktivierbare Offline-**Evaluierungssuite** (`npm run eval:compression`) bewertet die Wiedergabetreue im Verhältnis zur Einsparung anhand eines festgelegten Korpus, bevor Sie eine Änderung übernehmen. 📖 [`COMPRESSION_GUIDE.md`](docs/compression/COMPRESSION_GUIDE.md) · [`RTK_COMPRESSION.md`](docs/compression/RTK_COMPRESSION.md) · [`COMPRESSION_ENGINES.md`](docs/compression/COMPRESSION_ENGINES.md)
# ⚡ Schnellstart
**1) Installieren und ausführen** ```bash npm install -g omniroute omniroute ``` > 💡 Sehen Sie `npm warn ERESOLVE` oder Warnungen zu Peer-Abhängigkeiten? [Sie sind harmlos](docs/guides/TROUBLESHOOTING.md#npm-install-warnings-eresolve--peer--deprecated). > **Verwenden Sie npm 11 oder neuer?** npm kann Lebenszyklus-Skripte von Paketen blockieren, sofern diese nicht zugelassen sind. Das `postinstall`-Skript von OmniRoute (`node scripts/build/postinstall.mjs`) ist erforderlich, um die nativen Laufzeitdateien vorzubereiten. Lassen Sie bei der globalen Installation die in der npm-Warnung genannten Pakete zu. Für die von OmniRoute 3.8.53 gemeldete Paketgruppe: > > ```bash > npm install -g --allow-scripts=omniroute,keytar,onnxruntime-node,@parcel/watcher,@swc/core,protobufjs,esbuild omniroute > ``` > > Um diese Zulassungsliste für zukünftige globale Installationen wiederzuverwenden, konfigurieren Sie sie einmal und führen Sie die Installation anschließend wie gewohnt durch: > > ```bash > npm config set allow-scripts=omniroute,keytar,onnxruntime-node,@parcel/watcher,@swc/core,protobufjs,esbuild --location=user > npm install -g omniroute > ``` > > Die Abhängigkeitsliste kann sich zwischen Versionen ändern. Falls npm eine andere Liste meldet, verwenden Sie die Paketnamen aus dieser Warnung. Durch das Zulassen eines Pakets dürfen dessen Installationsskripte ausgeführt werden. > **Verwenden Sie Gemini Web oder einen anderen Anbieter mit Web-Cookies?** Das npm-Paket enthält > Playwright, jedoch nicht dessen Chromium-Binärdatei. Lesen Sie vor der ersten Anfrage an den Webanbieter den Hinweis zur > [Einrichtung von Playwright Chromium](docs/guides/TROUBLESHOOTING.md#gemini-web-and-playwright-chromium). Dashboard unter `http://localhost:20128` · API unter `http://localhost:20128/v1`. **2) Einen geeigneten Anbieter mit Ihrem eigenen Konto verbinden** Dashboard → **Anbieter** → wählen Sie einen Anbieter, dessen aktuelle Bedingungen und Kontingente zu Ihrem Anwendungsfall passen → fügen Sie dessen API-Schlüssel hinzu oder schließen Sie den zugehörigen Kontovorgang ab. Kostenlose Tarife können eine Registrierung, Genehmigung oder Zahlungsmethode voraussetzen. Lesen Sie den [Leitfaden zu kostenlosen Tarifen](docs/getting-started/FREE-TIERS-GUIDE.md); eine schlüssellose Verfügbarkeit ist nicht garantiert, und mit `tos: avoid` gekennzeichnete Anbieter werden standardmäßig aus `auto` ausgeschlossen. **3) Ihr Programmierwerkzeug konfigurieren** ```txt Base URL: http://localhost:20128/v1 API Key: [copy from Dashboard → Endpoints] Model: auto (routes among eligible connections — or choose provider/model) ``` **4) Funktion überprüfen** ```bash curl http://localhost:20128/v1/models -H "Authorization: Bearer YOUR_KEY" ``` Ihre verbundenen Modelle sollten aufgelistet werden. 🎉 Das war’s — beginnen Sie mit dem Programmieren; OmniRoute übernimmt automatisch das Routing und weicht bei Bedarf auf Alternativen aus. Falls Ihr Client keine benutzerdefinierten Header senden kann, stellt OmniRoute außerdem tokenisierte Kompatibilitätsaliase bereit: ```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 ``` Verwenden Sie diese nur für Clients, die `Authorization: Bearer ...` nicht anhängen können. Die Authentifizierung per Header bleibt die bevorzugte Methode.
## 📦 Weitere Installationsmethoden — Docker, Quellcode, 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` folgt der höchsten **veröffentlichten** stabilen SemVer-Version. Es folgt nicht dem Git-Branch `main`. Verwenden Sie für GitOps eine feste Version mit `:X.Y.Z`. Siehe [Docker-Veröffentlichungskanäle](docs/guides/DOCKER_GUIDE.md#release-channels). Das Image setzt **`OMNIROUTE_MEMORY_MB=1024`** fest. Das reicht für das Dashboard und einen einfachen Chat. **Coding-Agenten** (`POST /v1/responses` von Claude Code, Codex, Grok, …) benötigen einen wesentlich größeren V8-Heap, andernfalls kommt es bei zwei sich überschneidenden langen Kontexten bei etwa 12 GiB zu einem `FATAL ERROR`. Dimensionieren Sie den Container größer als den Heap (native Puffer befinden sich außerhalb von V8): | Arbeitslast | Heap (`-e OMNIROUTE_MEMORY_MB`) | Container (`--memory`) | | ---------------------------------------- | ------------------------------- | ---------------------- | | Dashboard / einfacher Chat | `1024` (Image-Standardwert) | ≥2 g | | Ein Coding-Agent | `8192` | ≥10 g | | Zwei gleichzeitige lange `/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 ``` Vollständige Tabelle: [Docker-Leitfaden — Laufzeit-RAM](docs/guides/DOCKER_GUIDE.md#runtime-ram-for-coding-agents). > **Docker-Kanal für Vorabversionen:** `diegosouzapw/omniroute:next` und > `diegosouzapw/omniroute:next-web` folgen dem aktuellen standardmäßigen `release/v*`- > Branch. Diese veränderlichen Tags sind ausschließlich zum Testen unveröffentlichter Korrekturen vorgesehen und > werden **für den Produktionseinsatz nicht unterstützt**. Siehe > [Docker-Veröffentlichungskanäle](docs/guides/DOCKER_GUIDE.md#release-channels). **🥟 Bun** Die standardmäßige Installation mit `bun install` sowie die globale Installation (`bun install -g omniroute`) werden über die Bun-Laufzeiterkennung unterstützt: - **Integriertes `bun:sqlite`**: OmniRoute verwendet bei der Ausführung unter Bun dessen integrierten `bun:sqlite`-Treiber und greift unter Node.js auf `better-sqlite3` oder `sql.js` zurück. - **Automatische Auswahl des Webpack-Bundlers in der Entwicklungsumgebung**: Die Entwicklungsumgebung (`bun run dev`) erkennt Bun automatisch und deaktiviert Turbopack zugunsten von Webpack, um Inkompatibilitäten mit nativen V8-Bindings zu vermeiden. Produktions-Builds (`bun run build`) folgen `OMNIROUTE_USE_TURBOPACK` genau wie unter Node: standardmäßig Turbopack, mit `OMNIROUTE_USE_TURBOPACK=0` wird mit Webpack gebaut (`Dockerfile.bun` stellt dies als `--build-arg` bereit). - **Dediziertes Bun-Dockerfile**: Mehrstufiges `Dockerfile.bun` für native Bun-Produktionsbereitstellungen (`docker build -f Dockerfile.bun -t omniroute:bun .`). ```bash # Mit Bun installieren und ausführen bun install bun run dev ``` **🛠️ Aus dem Quellcode** ```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 # Mit Nix-Flakes nix develop npm run dev # Oder mit devbox devbox run npm run dev ``` 📖 [Docker-Leitfaden](docs/guides/DOCKER_GUIDE.md) — Compose-Profile, Caddy HTTPS, Cloudflare-Tunnel. **🦭 Podman** ```bash # 1. Das per Bind-Mount eingebundene Datenverzeichnis vorbereiten mkdir -p data # 2. Nur unter Linux + lokalem Rootless-Podman (niemals mit einem entfernten Podman-Machine-Client): podman unshare chown 1000:1000 ./data # 3. Den Laufzeithinweis festlegen, das lokale Compose-Image erstellen und starten echo "CONTAINER_HOST=podman" >> .env podman compose --profile base up -d --build ``` Unter macOS oder Windows verwendet Podman eine entfernte Podman Machine: Überspringen Sie `podman unshare` und befolgen Sie die [topologiespezifischen Hinweise zum Datenverzeichnis](contrib/podman/README.md#data-directory-permissions-by-topology). 📖 [Podman-Leitfaden](contrib/podman/README.md) — Compose-Builds, Podman Machine und Linux/systemd-Quadlet-Einrichtung. **⚡ Schnellere / schlankere Installation (nativen Build überspringen)** Die native SQLite-Engine (`better-sqlite3`) ist eine **optionale** Abhängigkeit, daher wird eine globale Installation niemals durch die Kompilierung aus dem Quellcode blockiert: Sie verwendet ein vorkompiliertes Binärprogramm, wenn eines zu Ihrer Plattform/Node-Version passt, und greift andernfalls transparent auf eine reine JS-Engine zurück (`node:sqlite` unter Node 22+, andernfalls das mitgelieferte `sql.js`-WASM) — keine Build-Werkzeuge erforderlich. So überspringen Sie die native Aufwärmphase nach der Installation vollständig (CI, Headless-Systeme oder langsame Rechner): ```bash OMNIROUTE_SKIP_POSTINSTALL=1 npm install -g omniroute # CI=1 überspringt sie ebenfalls ``` Für die schnellsten Installationen empfiehlt sich **pnpm** (inhaltsadressierter Speicher + Hardlinks — siehe oben). Für eine Headless-Laufzeitumgebung ohne Dashboard verwenden Sie das Docker-Profil `base` (siehe oben) oder den [Termux-Leitfaden](docs/guides/TERMUX_GUIDE.md). Die CLI und das Web-Dashboard werden vom gleichen Prozess über einen einzigen Port bereitgestellt, daher gibt es derzeit kein separates reines CLI-Paket.
# 🎬 OmniRoute in Aktion
## 📹 Videoanleitungen
Momentaufnahme des Dashboards vom 2026-10-18 · Rohkatalog: YT 1.352 | TT 334 | IG 290 · Aktualität (Tage): YT 5 | TT 48 | IG 49
Instagram-Reel — nick_saraev
🎬 #1 — Instagram
nick_saraev — 3,042,474 Aufrufe
Instagram-Reel — nnapier7
🎬 #2 — Instagram
nnapier7 — 1,454,535 Aufrufe
YouTube — Amidia AI & Tech
🎬 #3 — YouTube
Amidia AI & Tech — 794,974 Aufrufe
Instagram-Reel — theopenstack
🎬 #4 — Instagram
theopenstack — 692,419 Aufrufe
TikTok — migue.baena
🎬 #5 — TikTok
migue.baena — 685,788 Aufrufe
**Vollständige Rangliste (deduplizierte kanonische URLs, `v > 0`, größte Reichweite):** | #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** | Kanonische Metriken vom 2026-10-18: **1.976 einzigartige Videos** · **20.220.289 bekannte Aufrufe** (`v > 0`) · **1.210 Kanäle/Profile auf den Plattformen**. Das Roh-Dashboard enthält 1.976 Zeilen (YouTube 1.352 = 740 Langvideos + 612 Shorts · TikTok 334 · Instagram 290); nach der Normalisierung anhand der kanonischen URL, bei der die höchste Aufrufzahl pro Video beibehalten wird, sind keine Duplikate mehr vorhanden. Die YouTube-Datenerfassung ist seit 2026-10-13 eingefroren (API-Kontingent vom 14. bis 18.10. ausgeschöpft), die TikTok-/Instagram-Datenerfassung seit 2026-09-02 (keine Erfassungsguthaben); für 76 Videos liegt noch keine Aufrufzahl vor. > 🎬 **Du hast ein Video über OmniRoute erstellt?** Eröffne ein [Issue](https://github.com/diegosouzapw/OmniRoute/issues/new) oder eine [Diskussion](https://github.com/diegosouzapw/OmniRoute/discussions) mit dem Link — wir stellen es hier vor.
# 📧 Community & Hilfe > Alles an einem Ort — folge dem Maintainer, chatte mit der Community oder eröffne ein Issue. | Kanal | Wo / wie | | ---------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | | 💼 **LinkedIn** — dem Maintainer folgen | [linkedin.com/in/diegosouzapw](https://www.linkedin.com/in/diegosouzapw/) | | 🐙 **GitHub** — für Releases & Tipps folgen | [@diegosouzapw](https://github.com/diegosouzapw) | | 💬 **Discord** | [discord.gg/U47eFqAXCn](https://discord.gg/U47eFqAXCn) | | ✈️ **Telegram** | [t.me/omnirouteOficial](https://t.me/omnirouteOficial) | | 🟢 **WhatsApp — 🌍 Global** | [Der Gruppe beitreten](https://chat.whatsapp.com/FvuCbrpZmQ6I85n2vW5QIC?s=cl&p=a&mlu=4) | | 🟢 **WhatsApp — 🇧🇷 Brasilien** | [Der Gruppe beitreten](https://chat.whatsapp.com/KWgatljAjmbELQory59Oti?s=cl&p=a&mlu=4) | | 🌍 **Website** | [omniroute.online](https://omniroute.online) | | 🌍 **🌍StHub OmniRoute Community (kostenlos)** | [StHub-Portal](https://portal.sthub.com.br/communities/groups/st-hub/channels/Omniroute-World-8kRjmK) | | 📦 **Quellcode** | [github.com/diegosouzapw/OmniRoute](https://github.com/diegosouzapw/OmniRoute) | | 🐛 **Fehler melden** | [Issue erstellen](https://github.com/diegosouzapw/OmniRoute/issues) — Ausgabe von `npm run system-info` anhängen | | 🤝 **Mitwirken** | [CONTRIBUTING.md](CONTRIBUTING.md) · [Branching- & Release-Modell](docs/ops/BRANCHING_MODEL.md) · ein `good first issue` auswählen | | 💚 **Projekt unterstützen** | [Möglichkeiten zur Unterstützung ↑](#-support-omniroute) · [GitHub Sponsors](https://github.com/sponsors/diegosouzapw) |
---
## 🛠️ Tech-Stack
EbeneTechnologie
LaufzeitNode.js 22.x / 24.x LTS — >=22.22.2 <23 || >=24.0.0 <27
SpracheTypeScript 6.0 — 100 % TypeScript in src/ und open-sse/ (seit v2.0 kein any im Kern)
FrameworkNext.js 16 + React 19 + Tailwind CSS 4
Datenbankbetter-sqlite3 (SQLite, WAL-Journaling) + LowDB (JSON-Legacy) — 147 Domänenmodule, 209 Migrationen
SpeicherSQLite FTS5 Volltext + int8-quantisierte Vektor-Embeddings, typisierter Decay
SchemasZod 4 — I/O-Validierung für MCP-Tools + API-Verträge
ProtokolleMCP (stdio / HTTP / SSE) + A2A v0.3 (JSON-RPC 2.0 + SSE)
StreamingServer-Sent Events (SSE) + WebSocket-Bridge (/v1/ws)
Komprimierung12-Engine-Pipeline — RTK, Caveman, LLMLingua-2 (MobileBERT ONNX), GCF, OmniGlyph
Authentifizierung & SicherheitOAuth 2.0 (PKCE) + JWT + API Keys + MCP-Scoped-Auth · AES-256-GCM im Ruhezustand · DOMPurify
Stealthwreq-js — JA3/JA4-TLS-Fingerprint-Impersonation, 3-stufiger Proxy
ResilienzCircuit Breaker, exponentielles Backoff, Anti-Thundering-Herd, selbstheilendes Auto-Combo
Loggingpino — strukturierte JSON-Logs mit Request-Kontext
TestsNode.js Test Runner + Vitest — 56.000+ statische Testdeklarationen in über 7.800 erfassten Testdateien (Unit, Integration, E2E, Sicherheit, Ökosystem)
PlattformenDesktop (Electron) · Android (Termux) · PWA (jeder Browser)
CI/CDGitHub Actions — automatisches npm-Publish + Docker Hub beim Release
LinksWebsite · npm · Docker Hub

## 📖 Dokumentation
### 📘 Erste Schritte
DokumentBeschreibung
BenutzerhandbuchProvider, Kombos, CLI-Integration, Deployment
EinrichtungsleitfadenAlle Installationsmethoden, CLI-Tool-Konfigurationen, Protokoll-Einrichtung, Timeout-Optimierung
CLI-Tools-LeitfadenTool-spezifische Einrichtung für Claude Code, Codex, Cursor, Cline, OpenClaw, Kilo, Copilot
Remote-ModusEin entferntes OmniRoute (VPS) über bereichsbezogene Zugriffstoken von deiner Laptop-CLI aus steuern
Claude-Code-KonfigurationClaude Code auf OmniRoute (lokal/remote) ausrichten mit launch + modellspezifischen Profilen
SchnellstartInstallation in 3 Schritten → verbinden → konfigurieren
### 🔧 Betrieb & Deployment
DokumentBeschreibung
Docker-LeitfadenDocker run, Compose-Profile, Caddy HTTPS, Tunnel, Image-Tags
Podman-LeitfadenQuadlet-systemd-Integration, podman-compose, SELinux
VM-DeploymentVollständiger Leitfaden: VM + nginx + Cloudflare-Einrichtung
Fly.io-DeploymentBereitstellung auf Fly.io mit persistentem Speicher
Termux-LeitfadenOmniRoute auf Android über Termux ausführen
PWA-LeitfadenInstallation der Progressive Web App, Caching, Architektur
DeinstallationsleitfadenSaubere Entfernung für alle Installationsmethoden
UmgebungskonfigurationVollständige .env-Variablen und Referenzen
### 🧠 Funktionen & Architektur
DokumentBeschreibung
ArchitekturSystemarchitektur, Datenfluss und Interna
Komprimierungsleitfaden7-stufige Pipeline: off / lite / standard / aggressive / ultra / RTK / stacked
RTK-KomprimierungKommandoausgabe-Komprimierung, Filter, Trust, Verify, Wiederherstellung der Rohausgabe
Komprimierungs-EnginesCaveman, RTK, gestapelte Pipelines, Dashboard-/API-/MCP-Oberflächen
Format der KomprimierungsregelnJSON-Regelpaket-Schemata für Caveman- und RTK-Filter
Komprimierungs-SprachpaketeSpracherkennung und Erstellung von Caveman-Regelpaketen
Resilienz-LeitfadenCircuit Breaker, Cooldowns, Warteschlange, Anti-Thundering-Herd, TLS-Spoofing
Auto-Combo-Engine16-Faktor-Bewertung, Moduspakete, Selbstheilung
Proxy-Leitfaden3-stufiges Proxy-System, 1proxy-Marketplace, Registry-CRUD
Kostenlose TarifeKonsolidiertes Verzeichnis: 34 dokumentierte wiederkehrende Pools / 467 katalogisierte Free-Tier-Einträge
FunktionsgalerieVisuelle Dashboard-Tour mit Screenshots
Codebasis-DokumentationEinsteigerfreundlicher Rundgang durch die Codebasis
### 🤖 Protokolle & APIs
DokumentBeschreibung
API-ReferenzAlle Endpunkte mit Beispielen
OpenAPI-SpezifikationOpenAPI-3.0-Spezifikation
MCP-Server110 MCP-Tools, IDE-Konfigurationen, Python-/TS-/Go-Clients
MCP-Server-LeitfadenMCP-Installation, Transporte und Tool-Referenz
A2A-ServerJSON-RPC-2.0-Protokoll, Skills, Streaming, Task-Verwaltung
A2A-Server-LeitfadenA2A-Agent-Card, Tasks, Skills und Streaming
### 📋 Projekt & Qualität
DokumentBeschreibung
MitwirkenEntwicklungseinrichtung und Richtlinien
Branching- und Release-ModellWorauf PRs abzielen (release/*), was main und Tags bedeuten
ChangelogVollständige Release-Historie pro Version
SicherheitsrichtlinieMeldung von Schwachstellen und Sicherheitspraktiken
i18n-LeitfadenUnterstützung für 67 Sprachen, Übersetzungs-Workflow, RTL
Release-ChecklisteValidierungsschritte vor dem Release
Coverage-PlanTestabdeckungsstrategie für über 56.000 statische Testdeklarationen in über 7.800 erfassten Testdateien

# ⭐ Top-Mitwirkende > OmniRoute wird von einer leidenschaftlichen Open-Source-Community geprägt. Diese Personen haben außergewöhnliche Beiträge geleistet, die sich direkt auf die Qualität, Stabilität und Reichweite des Projekts auswirken. **Vielen Dank.** ### Externe Mitwirkende nach zusammengeführten Pull Requests
RangMitwirkenderZusammengeführte PRs~Geänderte Zeilen
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
Erhebung durchgeführt am 2026-10-18 15:09:09 UTC mit aktuellem release/v3.8.52-Stand 656f01cb43. Die paginierte GitHub-GraphQL-Erhebung umfasst 9.191 zusammengeführte PRs: 3.834 vom Repository-Eigentümer, 229 von Dependabot, 6 von anderen Bots/Apps und 5.122 externe PRs von 835 verschiedenen Mitwirkenden. „Geänderte Zeilen“ entspricht GitHub-Additionen + -Löschungen und enthält generierte Dateien, Lockfiles, Kataloge, Übersetzungen und Dokumentation; es handelt sich um Churn, nicht um selbst verfasste LOC. 49 PRs melden GitHub-Diffs mit über 500.000 Zeilen (zum Beispiel #13399, eine einzelne Anbieter-Ergänzung, listet 2.347 geänderte Dateien), was mehrere der obigen Summen aufbläht. Gleichstände werden gemeinsam eingestuft. ### GitHub-zugeordnete Commits
Dizzle
Dizzle

🥇 367 GitHub-zugeschriebene Commits
Bob.Hou
Bob.Hou

🥈 269 GitHub-zugeschriebene Commits
Paijo
Paijo

🥉 229 GitHub-zugeschriebene Commits
backryun
backryun

🏅 202 GitHub-zugeschriebene Commits
Paco Cartones
Paco Cartones

🏅 174 GitHub-zugeschriebene Commits
Ravi Tharuma
Ravi Tharuma

🏅 126 GitHub-zugeschriebene Commits
Markus Hartung
Markus Hartung

🏅 114 GitHub-zugeschriebene Commits
Randi
Randi

🏅 108 GitHub-zugeschriebene Commits
Jan Leon
Jan Leon

🏅 87 GitHub-zugeschriebene Commits
Chris
Chris

🏅 70 GitHub-zugeschriebene Commits
Koosha Paridehpour
Koosha Paridehpour

🏅 68 GitHub-zugeschriebene Commits
Erneut geprüft am 2026-10-18 14:44:45 UTC: von der Contributors API des Repositorys gemeldete GitHub-zugeschriebene Commits für den Standardbranch release/v3.8.52. Die API gab 849 Identitäten zurück (429 Nutzer, 2 Bots, 418 anonyme); diese Tabelle schließt den Maintainer, Bots und anonyme Identitäten aus und behält Gleichstände bei. Sie unterscheidet sich sowohl vom obigen Ranking der gemergten Pull Requests als auch von der folgenden Erhebung anhand der Git-Metadaten. > 🙏 Die Features, Bugfixes und Infrastrukturverbesserungen dieser Contributors sind ein **zentraler Bestandteil** dessen, was OmniRoute zuverlässig und funktionsreich macht. Jeder Pull Request, jeder Testfall und jede i18n-Übersetzungsdatei zählt. Open Source wird von Menschen wie ihnen aufgebaut.
--- ## 💖 Sponsoren
Ein herzliches Dankeschön an die Menschen, die OmniRoute aus eigener Tasche finanzieren — jeder Beitrag trägt dazu bei, dass das Projekt kostenlos, unabhängig und in Bewegung bleibt.
Andrew
Andrew

💛 Aktiver monatlicher Sponsor
Vlad I
Vlad I

💛 Aktiver monatlicher Sponsor
小妍儿
小妍儿

💛 Aktiver monatlicher Sponsor
Guilherme Costa
Guilherme Costa

💛 Aktiver einmaliger Sponsor
Henrique Triches Iurkiv
Henrique Iurkiv

💛 Aktiver einmaliger Sponsor
Somesh Ghaturle
Somesh Ghaturle

💛 Aktiver einmaliger Sponsor
Kolonie AI
Kolonie AI

💛 Ehemaliger einmaliger Unterstützer
Professor Igor Morais Vasconcelos
Prof. Igor Morais

💛 Ehemaliger einmaliger Unterstützer
Pixma
Pixma

💛 Ehemaliger einmaliger Unterstützer
Paco Cartones
Paco Cartones

💛 Ehemaliger einmaliger Unterstützer
longtao
longtao

💛 Ehemaliger einmaliger Unterstützer
… und weitere, die lieber anonym bleiben möchten 💛 Öffentliche GitHub-Sponsoren wurden am 2026-10-18 über die GitHub Sponsors GraphQL API erneut überprüft: 11 öffentliche Sponsorings (6 aktiv, 5 ehemalig) von insgesamt 14. Der isActive-Status von GitHub bestimmt die oben aufgeführten Aktiv-Kennzeichnungen; ehemaligen öffentlichen einmaligen Unterstützern wird weiterhin gedankt, und private Sponsoren bleiben anonym. Spenden über Ko-fi, Buy Me a Coffee, Liberapay, PIX und Kryptowährungen werden nicht aufgeführt, da für sie kein öffentlicher Sponsoreneintrag vorliegt. 💖 Sponsor werden → — jeder Dollar trägt dazu bei, dass OmniRoute kostenlos und unabhängig bleibt.

## 👥 Über 900 Mitwirkende
[![Mitwirkende](https://contrib.rocks/image?repo=diegosouzapw/OmniRoute&max=993&columns=20&anon=1)](https://github.com/diegosouzapw/OmniRoute/graphs/contributors) Geprüft am 2026-10-18 am aktuellen Stand von release/v3.8.52, Commit ad160ab2d1 (6.826 Commits): 993 normalisierte menschliche Git-Identitäten — 707 erscheinen als Commit-Autoren (einschließlich des Maintainers) und 286 ausschließlich in expliziten Co-authored-by-Trailern. Die Erhebung wendet .mailmap an, vergleicht E-Mail-Adressen ohne Berücksichtigung der Groß- und Kleinschreibung, führt numerische und reguläre GitHub-Noreply-Adressen nur dann zusammen, wenn sie denselben Benutzernamen codieren, schließt 26 Bot-/Agenten-/Dienst-/Platzhalteridentitäten aus und führt gewöhnliche E-Mail-Adressen nicht allein deshalb zusammen, weil ihre Anzeigenamen übereinstimmen. Bei der Prüfung vom 2026-08-24 wurden 639 veröffentlicht; wird diese Methode erneut auf die Basis ac02c5b42f jener Prüfung angewendet, ergibt sie 619. Der Anstieg ist daher auf neue Mitwirkende und nicht auf eine weniger strenge Methode zurückzuführen. ### So können Sie mitwirken 1. Forken Sie das Repository 2. Erstellen Sie einen Branch vom aktuellen Stand des **aktiven** Branches `release/vX.Y.Z` (nicht von `main`) — siehe [Branching- und Release-Modell](docs/ops/BRANCHING_MODEL.md) 3. Erstellen Sie Ihren Feature-Branch (`git checkout -b feat/amazing-feature`) 4. Committen Sie Ihre Änderungen (`git commit -m 'feat: add amazing feature'`) 5. Pushen Sie in den Branch (`git push origin feat/amazing-feature`) 6. Öffnen Sie einen Pull Request mit **base = diesem `release/vX.Y.Z`-Branch** Ausführliche Richtlinien finden Sie in [CONTRIBUTING.md](CONTRIBUTING.md). ### Veröffentlichen einer neuen Version ```bash # Release erstellen — npm publish erfolgt automatisch VERSION=x.y.z gh release create "v${VERSION}" --title "v${VERSION}" --generate-notes ```
## 📊 Sterne Diagramm des Sterneverlaufs
## 🌍 StarMapper StarMapper

## 🙏 Danksagungen
OmniRoute steht auf den Schultern von Giganten. Es begann als Fork von **[9router](https://github.com/decolua/9router)** und als TypeScript-Portierung des Go-Projekts **[CLIProxyAPI](https://github.com/router-for-me/CLIProxyAPI)** — und von da an wurde jedes der unten aufgeführten Subsysteme von einem Open-Source-Projekt inspiriert, das diesen Weg bereits zuvor beschritten hatte. Jedes davon hat einen konkreten Bestandteil von OmniRoute geprägt. Dies ist unser Dank an sie alle. 🙏 > ⭐ Die Anzahl der Sterne wurde am 18. Oktober 2026 über die REST-API von GitHub überprüft — gebt diesen Projekten einen Stern. Die Angaben sind eine exakte Momentaufnahme zu diesem Datum und werden sich naturgemäß ändern. ### 🧬 Abstammung & Gateway
Projekt⭐Wie es OmniRoute inspiriert hat
9router31,004Das ursprüngliche Projekt, auf dem dieser Fork basiert — hier um multimodale APIs und eine vollständige Neufassung in TypeScript erweitert.
CLIProxyAPI55,591Die Go-Implementierung, die diese JavaScript-/TypeScript-Portierung inspiriert hat.
LiteLLM61,482Das KI-Gateway, dessen öffentlicher Preisdatenbestand unsere Synchronisierung zur Kostenverfolgung speist und dessen Modell zur Anbieter-Normalisierung unser Routing beeinflusst hat.
codex-chatgpt-web14,526Unter MIT-Lizenz stehender Quellcode, der für die integrierte Brücke von ChatGPT Web zu Codex Responses angepasst wurde, einschließlich Adaptern für Browsersitzungen, Antwortformatierung, Nutzungserfassung und Websuche.
free-claude-code61,430Muster, die in die Stream-Wiederherstellung, Aliasse ohne Denkmodus, die Ausweich-Websuche, Sliding-Window-Limits, die Protokollredaktion und gehärtete Startabläufe portiert wurden.
composer-api346Muster für Werkzeugauswahl, Ausgabebeschränkungen und Werkzeugbestätigung aus Cursor Composer, die für den nativen Cursor-Executor angepasst wurden.
codex-multi-auth553Muster für Neuanmeldungen und die Rotation von Aktualisierungstoken, die in die erneute Authentifizierung über Codex OAuth portiert wurden.
opencode-anthropic-auth558Mit Claude Code kompatible Transformationsvorgaben und das Verhalten von Abrechnungs-Headern, die in der konfigurationsgesteuerten Brücke von OmniRoute verallgemeinert wurden.
grok2api-merged2Die Grok-Modellzuordnungen, der Statsig-Generator mit fingiertem TypeError, die Anfrage- und Gerätevorgaben sowie der NDJSON-Antwortprozessor wurden in wesentlichem Umfang für den Grok-Web-Executor von OmniRoute angepasst.
TQZHR/grok2api706Die wesentliche indirekte Codequelle hinter grok2api-merged; ihre Implementierungen für Modelle, Header, Nutzdaten, Statsig und Prozessoren bleiben in der Abstammungslinie von Grok Web erhalten.
chenyme/grok2api7,819Der zugrunde liegende MIT-lizenzierte Quellcode für Grok-Nutzdaten und -Gerätevorgaben, den Statsig-Generator und den über TQZHR und grok2api-merged übernommenen result.response-Prozessor.
grok2api-pro27Eine von grok2api-merged für dessen Proxy-Pool-Schicht angeführte indirekte Quelle; OmniRoute bewahrt diesen Herkunftshinweis, beansprucht für seinen klar abgegrenzten Grok-Web-Executor jedoch keine Portierung des Proxy-Pools.
GrokProxy51Der Cookie-authentifizierte Grok-Proxy und das Streaming-Muster result.response.token haben den Grok-Web-Transport von OmniRoute beeinflusst.
GrokBridge5Für die ursprüngliche Grok-Web-Implementierung wurde dessen HTTP-/Browser-Upstream-Design herangezogen; der direkte HTTP-Pfad leitet sich von GrokProxy ab, daher wird keine eigenständige Codeportierung beansprucht.
### 🗜️ Kontext- & Token-Komprimierung — Engines
Projekt⭐Wie es OmniRoute inspiriert hat
Caveman113,396Das virale „why use many token when few token do trick“-Projekt — seine Höhlenmenschen-Sprechweise bildet die Grundlage unseres Standard-Komprimierungsmodus und von über 30 Regeln zur Entfernung von Füllwörtern und zur Verdichtung.
RTK – Rust Token Killer83,835Hochleistungsfähige Komprimierung von Befehlsausgaben — inspirierte unsere RTK-Engine, die JSON-Filter-DSL, die Wiederherstellung von Rohausgaben und die gestapelte Pipeline RTK → Caveman.
headroom75,741Reversible Kontextkomprimierung (SmartCrusher) — inspirierte unsere headroom-Engine und das Abrufmarkierungsmuster ccr.
LLMLingua6,757Forschung zur Prompt-Komprimierung (LLMLingua / LLMLingua-2) — inspirierte unsere asynchrone, codesichere und ausfallsichere llmlingua-Engine.
llmlingua-2-js32Die JS/ONNX-Portierung (MobileBERT / XLM-RoBERTa), die als Worker-Thread-Backend für unsere LLMLingua-Engine verwendet wird.
Troglodita50PT-BR-Tokenkomprimierung — bildet die Grundlage unseres pt-BR-Sprachpakets: Reduzierung von Pleonasmen und Entfernung von Füllwörtern, abgestimmt auf die brasilianisch-portugiesische Grammatik.
ponytail166,731Der virale „lazy senior dev“-YAGNI-Coder-Skill — inspirierte unseren less-code-Ausgabestil: Ausrichtung auf die kleinstmögliche funktionierende Änderung, die _generierten_ Code reduziert (das ausgabeseitige Gegenstück zu Cavemans knapper Prosa).
i-have-adhd57,628Sein handlungsorientierter, ADHS-freundlicher Antwortstil wurde für OmniRoutes prägnanten Ausgabestil in fünf Sprachen adaptiert.
### 🧩 Kompakte Formate, Token-Forschung & codebewusste Werkzeuge
Projekt⭐Wie es OmniRoute inspiriert hat
TOON25,509Token-Oriented Object Notation — sein spaltenorientiertes Modell aus Kopfzeile und Zeilen prägte unsere Phase der tabellarischen Verdichtung.
GCF – Graph Compact Format59Sein kompaktes Graphformat und das Design mit generischem Profil flossen in OmniRoutes tabellarische Verdichtung und das Headroom-Codec-Format ein.
gcf-typescript4Die MIT-TypeScript-Implementierung wurde direkt eingebunden und zum Headroom-Codec mit generischem Profil erweitert.
token-optimizer-mcp551Brotli/SQLite-Cache + sitzungsbezogenes Kontextdelta — inspirierte unsere session-dedup-Engine.
token-savior1,182Verdichtung von Bash-Ausgaben + MCP-Profile — inspirierte unsere Disziplin beim Abbruch der Komprimierung und die Reduzierung von MCP-Werkzeugmanifesten.
token-saver154Inhaltsbewusste, dateitypspezifische Ausgabekomprimierung mit fehlerbewusstem Abbruch — bestätigte unsere typspezifische Weiterleitung und das Überspringen bei zu geringem Nutzen.
token-optimizer2,595„Find the ghost tokens“ — sein Muster aus Auslagerung und wiederherstellbarem Handle prägte unsere Überlegungen zur CCR-Auslagerung.
TokenMizer33Eine Blaupause für Sitzungsgraphen und zeilenbasierte Deduplizierung über mehrere Interaktionen hinweg, die unser session-dedup-Design prägte.
OmniCompress3Spaltenorientiertes JSON in Rust + inhaltsadressierter Abruf + nachrichtenübergreifende Deduplizierung — bestätigte das Design unserer Engines headroom/ccr/session-dedup sowie die cache-stabile Invariante „die komprimierte Form ist positionsunabhängig“.
mcp-compressor133Komprimierung von MCP-Werkzeugschemata und -beschreibungen — floss in unsere Kardinalitätsreduktion von MCP-Werkzeugmanifesten ein.
RepoMapper217Repository-Map-Ranking im Aider-Stil — floss in unsere Untersuchungen zu Repository-Maps und Retrieval-Ranking ein.
quiet-shell-mcp4Deklarative Reduzierung von Shell-Ausgaben über MCP — bestätigte unsere deklarative Verdichtung von Bash-Ausgaben.
ts-morph6,205Toolkit für die TypeScript Compiler API — inspirierte unsere parserbasierte Kommentarentfernung, die String-, Template- und Regex-Literale bewahrt.
### 🧠 Speicher & RAG
Projekt⭐Wie es OmniRoute inspiriert hat
Mem067,385Universelle Speicherschicht — ihr Proxy-Modell als Schreib-/Lesegrenze prägte unsere Speicherarchitektur.
Letta (MemGPT)25,179Zustandsbehaftete Agenten mit abgestuftem Speicher — inspirierte unser abgestuftes Modell für Context Control & Recovery (CCR).
WFGY1,800Die ProblemMap-Taxonomie mit 16 wiederkehrenden RAG-/LLM-Fehlermodi — das gemeinsame Vokabular in unserem Leitfaden zur Fehlerbehebung.
### 🛰️ Datenverkehrsanalyse, MITM & transparenter Proxy
Projekt⭐Wie es OmniRoute inspiriert hat
llm-interceptor79Die MITM-Interzeption/-Analyse des Datenverkehrs zwischen Coding-Assistenten ↔ LLMs floss in die frühen Anforderungen an den Traffic Inspector ein. Vier zuvor abgeleitete Module — SSE-Zusammenführung, Konversationsnormalisierung, Maskierung geheimer Daten und Header-Bereinigung — wurden durch unabhängige Clean-Room-Implementierungen auf Grundlage öffentlicher Protokollstandards ersetzt. Die beiden Host-Passthrough-Schnittstellen (passthrough.ts und _internal/bypass.cjs) bleiben OmniRoute-interne, unabhängig klassifizierte Implementierungen; sie wurden im Rahmen dieser Ersetzung nicht neu geschrieben.
ProxyBridge6,814Transparente Proxy-Weiterleitung pro Prozess — inspirierte unseren absturzsicheren MITM-Abbau, Leerlauf-Timeouts für Sockets, die Prozesszuordnung über /proc und die TPROXY-Erfassung.
### 📚 Modelldaten, Beobachtbarkeit & Benutzeroberfläche
Projekt⭐Wie es OmniRoute inspiriert hat
models.dev7,286Offene Datenbank mit Spezifikationen, Preisen und Funktionen von KI-Modellen — wird nativ mit unserem Modellkatalog synchronisiert.
React Flow / xyflow38,705Die knotenbasierte Graphbibliothek, auf der unser Echtzeit-Compression-Studio und unser Combo/Routing-Studio basieren.
LangGraph43,443Die Live-Visualisierung von Workflow-Graphen in LangGraph Studio inspirierte die Echtzeit-Kaskadenansicht unserer Studios.
Langfuse35,990Sein Beobachtbarkeitsmodell „Trace → Span → Generation“ prägte die Wasserfallansicht unseres Compression Studio.
Kiali3,645Beobachtbarkeit für Istio-Service-Meshes — inspirierte unsere Circuit-Breaker-Badges und die visuelle Darstellung von Fehlerkanten im Routing/Combo Studio.
lobe-icons2,615KI-/LLM-Markenlogos, mit denen die Anbieter-Icons in unserem Dashboard dargestellt werden.
flag-icons12,473Stellt die MIT-lizenzierten SVG-Flaggen bereit, die von der Sprachauswahl in der README verwendet werden.
### 🛡️ Sicherheit
Projekt⭐Wie es OmniRoute inspiriert hat
awesome-secure-defaults722Eine kuratierte Liste standardmäßig sicherer Bibliotheken, die unsere Sicherheitsentscheidungen leitet (Helmet.js, DOMPurify, ssrf-req-filter, safe-regex, Google Tink).
### 🧭 Ergänzende Werkzeuge
Projekt⭐Wie es OmniRoute inspiriert hat
ClawRouter6,628Inspirierte die Deduplizierung von Anfragen, einen kostenfreien Notfall-Fallback, austauschbare Auto-Combo-Strategien und die mehrsprachige Absichtsklassifizierung.
Antigravity-Manager32,333Seine kontobasierte Modellneuzuordnung, die Validierung ausführbarer Pfade und das Verhalten von Tarifbezeichnungen flossen in die Antigravity-Laufzeitumgebung von OmniRoute ein.
vscode-antigravity-cockpit4,850Sein kompaktes Countdown-Format für das Zurücksetzen von Kontingenten inspirierte die entsprechende Anzeige von Anbieterlimits in OmniRoute.
AionUi33,611Seine ACP-Integrationen inspirierten die automatische Erkennung installierter CLI-Agenten durch OmniRoute.
CodexBar22,616Identifizierte die Grok-Build-Kontingentschnittstelle; OmniRoute überprüfte und korrigierte anschließend das tatsächlich verwendete Übertragungsformat unabhängig.
## 📄 Lizenz MIT-Lizenz – Details siehe [LICENSE](LICENSE). ---
**[⬆ Nach oben](#-omniroute)** · Mit ❤️ für die Open-Source-KI-Community gebaut. OmniRoute v3.8.53 · Node ≥22.22.2 · MIT-Lizenz · omniroute.online