# 🚀 OmniRoute – Das kostenlose KI-Gateway ### Hören Sie nie auf zu programmieren. Intelligentes Routing zu **KOSTENLOSEN und kostengĂŒnstigen KI-Modellen** mit automatischem Fallback. _Ihr universeller API-Proxy – ein Endpunkt, mehr als 36 Anbieter, keine Ausfallzeiten. Jetzt mit **MCP & A2A** Agenten-Orchestrierung._ **Chat-AbschlĂŒsse ‱ Einbettungen ‱ Bildgenerierung ‱ Video ‱ Musik ‱ Audio ‱ Reranking ‱ MCP-Server ‱ A2A-Protokoll ‱ 100 % TypeScript** ---
[![npm-Version](https://img.shields.io/npm/v/omniroute?color=cb3837&logo=npm)](https://www.npmjs.com/package/omniroute) [![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](https://img.shields.io/github/license/diegosouzapw/OmniRoute)](https://github.com/diegosouzapw/OmniRoute/blob/main/LICENSE) [![Website](https://img.shields.io/badge/Website-omniroute.online-blue?logo=google-chrome&logoColor=white)](https://omniroute.online) [![WhatsApp](https://img.shields.io/badge/WhatsApp-Community-25D366?logo=whatsapp&logoColor=white)](https://chat.whatsapp.com/JI7cDQ1GyaiDHhVBpLxf8b?mode=gi_t) [🌐 Website](https://omniroute.online) ‱ [🚀 Schnellstart](#-quick-start) ‱ [💡 Funktionen](#-key-features) ‱ [📖 Dokumente](#-documentation) ‱ [💰 Preise](#-pricing-at-a-glance) ‱ [💬 WhatsApp](https://chat.whatsapp.com/JI7cDQ1GyaiDHhVBpLxf8b?mode=gi_t)
🌐 **VerfĂŒgbar in:** đŸ‡ș🇾 [Englisch](README.md) | đŸ‡§đŸ‡· [PortuguĂȘs (Brasilien)](README.pt-BR.md) | đŸ‡Ș🇾 [Español](README.es.md) | đŸ‡«đŸ‡· [Français](README.fr.md) | 🇼đŸ‡č [Italienisch](README.it.md) | đŸ‡·đŸ‡ș [РуссĐșĐžĐč](README.ru.md) | 🇹🇳 [äž­æ–‡ (çź€äœ“)](README.zh-CN.md) | đŸ‡©đŸ‡Ș [Deutsch](README.de.md) | 🇼🇳 [à€čà€żà€šà„à€Šà„€](README.in.md) | đŸ‡č🇭 [àč„àž—àžą](README.th.md) | đŸ‡ș🇩 [ĐŁĐșŃ€Đ°Ń—ĐœŃŃŒĐșа](README.uk-UA.md) | 🇾🇩 [Ű§Ù„ŰčŰ±ŰšÙŠŰ©](README.ar.md) | đŸ‡ŻđŸ‡” [æ—„æœŹèȘž](README.ja.md) | đŸ‡»đŸ‡ł [Tiáșżng Việt](README.vi.md) | 🇧🇬 [БългарсĐșĐž](README.bg.md) | đŸ‡©đŸ‡° [DĂ€nisch](README.da.md) | đŸ‡«đŸ‡ź [Suomi](README.fi.md) | đŸ‡źđŸ‡± [ŚąŚ‘ŚšŚ™ŚȘ](README.he.md) | 🇭đŸ‡ș [Magyar](README.hu.md) | đŸ‡źđŸ‡© [Bahasa Indonesia](README.id.md) | đŸ‡°đŸ‡· [한ꔭ얎](README.ko.md) | đŸ‡ČđŸ‡Ÿ [Bahasa Melayu](README.ms.md) | đŸ‡łđŸ‡± [Niederlande](README.nl.md) | 🇳🇮 [Norsk](README.no.md) | đŸ‡”đŸ‡č [PortuguĂȘs (Portugal)](README.pt.md) | đŸ‡·đŸ‡Ž [RomĂąnă](README.ro.md) | đŸ‡”đŸ‡± [Polski](README.pl.md) | 🇾🇰 [Slovenčina](README.sk.md) | 🇾đŸ‡Ș [Svenska](README.sv.md) | đŸ‡”đŸ‡­ [Philippinisch](README.phi.md) --- ## đŸ–Œïž Haupt-Dashboard
OmniRoute Dashboard
--- ## 📾 Dashboard-Vorschau
Klicken Sie hier, um Dashboard-Screenshots anzuzeigen | Seite | Screenshot | | ---------------------- | -------------------------------------------------- | | **Anbieter** | ![Anbieter](docs/screenshots/01-providers.png) | | **Kombinationen** | ![Combos](docs/screenshots/02-combos.png) | | **Analytik** | ![Analytics](docs/screenshots/03-analytics.png) | | **Gesundheit** | ![Gesundheit](docs/screenshots/04-health.png) | | **Übersetzer** | ![Übersetzer](docs/screenshots/05-translator.png) | | **Einstellungen** | ![Einstellungen](docs/screenshots/06-settings.png) | | **CLI-Tools** | ![CLI-Tools](docs/screenshots/07-cli-tools.png) | | **Nutzungsprotokolle** | ![Verwendung](docs/screenshots/08-usage.png) | | **Endpunkt** | ![Endpunkt](docs/screenshots/09-endpoint.png) |
--- ### đŸ€– Kostenloser KI-Anbieter fĂŒr Ihre bevorzugten Programmieragenten _Verbinden Sie jedes KI-gestĂŒtzte IDE- oder CLI-Tool ĂŒber OmniRoute – kostenloses API-Gateway fĂŒr unbegrenzte Codierung._
OpenClaw
OpenClaw

⭐ 205K
NanoBot
NanoBot

⭐ 20.9K
PicoClaw
PicoClaw

⭐ 14.6K
ZeroClaw
ZeroClaw

⭐ 9.9K
IronClaw
IronClaw

⭐ 2.1K
OpenCode
OpenCode

⭐ 106K
Codex CLI
Codex CLI

⭐ 60.8K
Claude Code
Claude Code

⭐ 67.3K
Gemini CLI
Gemini CLI

⭐ 94.7K
Kilo Code
Kilo-Code

⭐ 15.5K
📡 Alle Agenten verbinden sich ĂŒber http://localhost:20128/v1 oder quote --- ## đŸ€” Warum OmniRoute? **Hören Sie auf, Geld zu verschwenden und an Grenzen zu stoßen:** - Das Abonnementkontingent lĂ€uft jeden Monat ungenutzt ab - Ratenbegrenzungen verhindern, dass Sie mitten in der Codierung sind - Teure APIs (20–50 $/Monat pro Anbieter) - Manueller Wechsel zwischen Anbietern **OmniRoute löst dieses Problem:** - ✅ **Abonnements maximieren** - Verfolgen Sie das Kontingent, nutzen Sie jedes Bit vor dem ZurĂŒcksetzen - ✅ **Auto-Fallback** – Abonnement → API-SchlĂŒssel → GĂŒnstig → Kostenlos, keine Ausfallzeiten - ✅ **Mehrere Konten** – Round-Robin zwischen Konten pro Anbieter - ✅ **Universell** – Funktioniert mit Claude Code, Codex, Gemini CLI, Cursor, Cline, OpenClaw und jedem CLI-Tool --- ## 📧 UnterstĂŒtzung> 💬 **Treten Sie unserer Community bei!** [WhatsApp-Gruppe](https://chat.whatsapp.com/JI7cDQ1GyaiDHhVBpLxf8b?mode=gi_t) – Holen Sie sich Hilfe, tauschen Sie Tipps aus und bleiben Sie auf dem Laufenden. - **Website**: [omniroute.online](https://omniroute.online) - **GitHub**: [github.com/diegosouzapw/OmniRoute](https://github.com/diegosouzapw/OmniRoute) - **Probleme**: [github.com/diegosouzapw/OmniRoute/issues](https://github.com/diegosouzapw/OmniRoute/issues) - **WhatsApp**: [Community-Gruppe](https://chat.whatsapp.com/JI7cDQ1GyaiDHhVBpLxf8b?mode=gi_t) - **Mitwirken**: Siehe [CONTRIBUTING.md](CONTRIBUTING.md), öffnen Sie eine PR oder wĂ€hlen Sie eine `good first issue` aus - **Originalprojekt**: [9router von decolua](https://github.com/decolua/9router) --- ## 🔄 Wie es funktioniert ``` ┌─────────────┐ │ Your CLI │ (Claude Code, Codex, Gemini CLI, OpenClaw, Cursor, Cline...) │ Tool │ └──────┬──────┘ │ http://localhost:20128/v1 ↓ ┌─────────────────────────────────────────┐ │ OmniRoute (Smart Router) │ │ ‱ Format translation (OpenAI ↔ Claude) │ │ ‱ Quota tracking + Embeddings + Images │ │ ‱ Auto token refresh │ └──────┬──────────────────────────────────┘ │ ├─→ [Tier 1: SUBSCRIPTION] Claude Code, Codex, Gemini CLI │ ↓ quota exhausted ├─→ [Tier 2: API KEY] DeepSeek, Groq, xAI, Mistral, NVIDIA NIM, etc. │ ↓ budget limit ├─→ [Tier 3: CHEAP] GLM ($0.6/1M), MiniMax ($0.2/1M) │ ↓ budget limit └─→ [Tier 4: FREE] iFlow, Qwen, Kiro (unlimited) Result: Never stop coding, minimal cost ``` --- ## 🎯 Was OmniRoute löst – 30 echte Problempunkte und AnwendungsfĂ€lle > **Jeder Entwickler, der KI-Tools verwendet, ist tĂ€glich mit diesen Problemen konfrontiert.** OmniRoute wurde entwickelt, um sie alle zu lösen – von KostenĂŒberschreitungen bis hin zu regionalen Blockaden, von unterbrochenen OAuth-FlĂŒssen bis hin zu ProtokollvorgĂ€ngen und Unternehmensbeobachtbarkeit.
💾 1. „Ich bezahle ein teures Abonnement, werde aber trotzdem durch Limits unterbrochen“ Entwickler zahlen 20–200 US-Dollar/Monat fĂŒr Claude Pro, Codex Pro oder GitHub Copilot. Auch wenn das Kontingent bezahlt wird, gibt es eine Obergrenze – 5 Stunden Nutzung, wöchentliche Limits oder Tariflimits pro Minute. WĂ€hrend der Codierungssitzung reagiert der Anbieter nicht mehr und der Entwickler verliert an Fluss und ProduktivitĂ€t. **So löst OmniRoute das Problem:** - **Intelligenter 4-Stufen-Fallback** – Wenn das Abonnementkontingent aufgebraucht ist, wird automatisch zu API Key → GĂŒnstig → Kostenlos weitergeleitet, ohne dass ein manueller Eingriff erforderlich ist - **Kontingentverfolgung in Echtzeit** – Zeigt den Token-Verbrauch in Echtzeit mit Reset-Countdown an (5 Stunden, tĂ€glich, wöchentlich) - **UnterstĂŒtzung mehrerer Konten** – Mehrere Konten pro Anbieter mit automatischem Round-Robin – wenn eines aufgebraucht ist, wird zum nĂ€chsten gewechselt - **Benutzerdefinierte Kombinationen** – Anpassbare Fallback-Ketten mit 6 Ausgleichsstrategien (Fill-First, Round-Robin, P2C, Random, Least-Used, Kostenoptimiert) - **Codex Business Quotas** – Überwachung der GeschĂ€fts-/Team-Arbeitsbereichskontingente direkt im Dashboard
🔌 2. „Ich muss mehrere Anbieter verwenden, aber jeder hat eine andere API“ OpenAI verwendet ein Format, Claude (Anthropic) verwendet ein anderes, Gemini noch ein anderes. Wenn ein Entwickler Modelle verschiedener Anbieter testen oder zwischen ihnen wechseln möchte, muss er SDKs neu konfigurieren, Endpunkte Ă€ndern und mit inkompatiblen Formaten umgehen. Benutzerdefinierte Anbieter (FriendLI, NIM) verfĂŒgen ĂŒber nicht standardmĂ€ĂŸige Modellendpunkte. **So löst OmniRoute das Problem:** - **Einheitlicher Endpunkt** – Ein einzelner `http://localhost:20128/v1` dient als Proxy fĂŒr alle ĂŒber 36 Anbieter - **FormatĂŒbersetzung** – Automatisch und transparent: OpenAI ↔ Claude ↔ Gemini ↔ Responses API - **Antwortbereinigung** – Entfernt nicht standardmĂ€ĂŸige Felder (`x_groq`, `usage_breakdown`, `service_tier`), die OpenAI SDK v1.83+ beschĂ€digen - **Rollennormalisierung** – Konvertiert `developer` → `system` fĂŒr Nicht-OpenAI-Anbieter; `system` → `user` fĂŒr GLM/ERNIE - **Think Tag Extraction** – Extrahiert ``-Blöcke aus Modellen wie DeepSeek R1 in das standardisierte `reasoning_content` - **Strukturierte Ausgabe fĂŒr Gemini** – `json_schema` → `responseMimeType`/`responseSchema` automatische Konvertierung - **`stream` ist standardmĂ€ĂŸig `false`** – Entspricht der OpenAI-Spezifikation und vermeidet unerwartetes SSE in Python/Rust/Go-SDKs
🌐 3. „Mein KI-Anbieter blockiert meine Region/mein Land“ Anbieter wie OpenAI/Codex blockieren den Zugriff aus bestimmten geografischen Regionen. Benutzer erhalten bei OAuth- und API-Verbindungen Fehler wie `unsupported_country_region_territory`. Dies ist besonders frustrierend fĂŒr Entwickler aus EntwicklungslĂ€ndern. **So löst OmniRoute das Problem:** - **3-Level-Proxy-Konfiguration** – Konfigurierbarer Proxy auf 3 Ebenen: global (gesamter Datenverkehr), pro Anbieter (nur ein Anbieter) und pro Verbindung/SchlĂŒssel - **Farbcodierte Proxy-Abzeichen** – Visuelle Indikatoren: 🟱 globaler Proxy, 🟡 Anbieter-Proxy, đŸ”” Verbindungs-Proxy, immer mit IP-Adresse - **OAuth-Token-Austausch ĂŒber Proxy** – Der OAuth-Fluss lĂ€uft auch ĂŒber den Proxy und löst `unsupported_country_region_territory` - **Verbindungstests ĂŒber Proxy** – Verbindungstests verwenden den konfigurierten Proxy (keine direkte Umgehung mehr) - **SOCKS5-UnterstĂŒtzung** – VollstĂ€ndige SOCKS5-Proxy-UnterstĂŒtzung fĂŒr ausgehendes Routing - **TLS-Fingerabdruck-Spoofing** – BrowserĂ€hnlicher TLS-Fingerabdruck ĂŒber `wreq-js` zur Umgehung der Bot-Erkennung
🆓 4. „Ich möchte KI zum Codieren verwenden, habe aber kein Geld“ Nicht jeder kann 20–200 $/Monat fĂŒr KI-Abonnements bezahlen. Studenten, Entwickler aus SchwellenlĂ€ndern, Bastler und Freiberufler benötigen Zugang zu hochwertigen Modellen zum Nulltarif. **So löst OmniRoute das Problem:** - **Integrierte kostenlose Anbieter** – Native UnterstĂŒtzung fĂŒr 100 % kostenlose Anbieter: iFlow (8 unbegrenzte Modelle), Qwen (3 unbegrenzte Modelle), Kiro (Claude kostenlos), Gemini CLI (180.000/Monat kostenlos) - **Nur kostenlose Combos** – Kette `gc/gemini-3-flash → if/kimi-k2-thinking → qw/qwen3-coder-plus` = 0 $/Monat ohne Ausfallzeit - **NVIDIA NIM Free Credits** – 1000 kostenlose Credits integriert - **Kostenoptimierte Strategie** – Routing-Strategie, die automatisch den gĂŒnstigsten verfĂŒgbaren Anbieter auswĂ€hlt
🔒 5. „Ich muss mein KI-Gateway vor unbefugtem Zugriff schĂŒtzen“ Wenn ein KI-Gateway dem Netzwerk (LAN, VPS, Docker) zugĂ€nglich gemacht wird, kann jeder mit der Adresse die Token/Kontingente des Entwicklers verbrauchen. Ohne Schutz sind APIs anfĂ€llig fĂŒr Missbrauch, sofortige Injektion und Missbrauch. **So löst OmniRoute das Problem:** - **API-SchlĂŒsselverwaltung** – Generierung, Rotation und Scoping pro Anbieter mit einer dedizierten `/dashboard/api-manager`-Seite - **Berechtigungen auf Modellebene** – BeschrĂ€nken Sie API-SchlĂŒssel auf bestimmte Modelle (`openai/*`, Platzhaltermuster) mit der Umschaltfunktion „Alle zulassen/EinschrĂ€nken“. - **API Endpoint Protection** – Fordern Sie einen SchlĂŒssel fĂŒr `/v1/models` an und blockieren Sie bestimmte Anbieter aus der Liste - **Auth Guard + CSRF-Schutz** – Alle Dashboard-Routen sind mit `withAuth`-Middleware + CSRF-Tokens geschĂŒtzt - **Ratenbegrenzer** – Ratenbegrenzung pro IP mit konfigurierbaren Fenstern - **IP-Filterung** – Zulassungs-/Blockierungsliste fĂŒr die Zugriffskontrolle - **Prompt Injection Guard** – Bereinigung gegen bösartige Eingabeaufforderungsmuster - **AES-256-GCM-VerschlĂŒsselung** – Anmeldeinformationen im Ruhezustand verschlĂŒsselt
🛑 6. „Mein Provider ist ausgefallen und ich habe meinen Codierungsfluss verloren“KI-Anbieter können instabil werden, 5xx-Fehler zurĂŒckgeben oder vorĂŒbergehende Ratengrenzen erreichen. Wenn ein Entwickler von einem einzelnen Anbieter abhĂ€ngig ist, wird er unterbrochen. Ohne Schutzschalter können wiederholte Versuche zum Absturz der Anwendung fĂŒhren. **So löst OmniRoute das Problem:** - **Leistungsschalter pro Anbieter** – Automatisches Öffnen/Schließen mit konfigurierbaren Schwellenwerten und Abklingzeit (geschlossen/offen/halb offen) - **Exponentielles Backoff** – Progressive Wiederholungsverzögerungen - **Anti-Thundering Herd** – Mutex + Semaphor-Schutz gegen gleichzeitige WiederholungsstĂŒrme - **Combo-Fallback-Ketten** – Wenn der primĂ€re Anbieter ausfĂ€llt, fĂ€llt er automatisch durch die Kette, ohne dass ein Eingreifen erforderlich ist - **Combo Circuit Breaker** – Deaktiviert automatisch ausgefallene Anbieter innerhalb einer Combo-Kette - **Gesundheits-Dashboard** – BetriebszeitĂŒberwachung, LeistungsschalterzustĂ€nde, Sperren, Cache-Statistiken, p50/p95/p99-Latenz
🔧 7. „Die Konfiguration jedes KI-Tools ist mĂŒhsam und repetitiv“ Entwickler verwenden Cursor, Claude Code, Codex CLI, OpenClaw, Gemini CLI, Kilo Code ... Jedes Tool benötigt eine andere Konfiguration (API-Endpunkt, SchlĂŒssel, Modell). Eine Neukonfiguration bei einem Anbieter- oder Modellwechsel ist Zeitverschwendung. **So löst OmniRoute das Problem:** - **CLI Tools Dashboard** – Spezielle Seite mit Ein-Klick-Einrichtung fĂŒr Claude Code, Codex CLI, OpenClaw, Kilo Code, Antigravity, Cline - **GitHub Copilot Config Generator** – Generiert `chatLanguageModels.json` fĂŒr VS-Code mit Massenmodellauswahl - **Onboarding-Assistent** – GefĂŒhrte Einrichtung in 4 Schritten fĂŒr Erstbenutzer - **Ein Endpunkt, alle Modelle** – Konfigurieren Sie `http://localhost:20128/v1` einmal und greifen Sie auf ĂŒber 36 Anbieter zu
🔑 8. „OAuth-Tokens von mehreren Anbietern zu verwalten ist die Hölle“ Claude Code, Codex, Gemini CLI, Copilot – alle verwenden OAuth 2.0 mit ablaufenden Token. Entwickler mĂŒssen sich stĂ€ndig neu authentifizieren, sich mit `client_secret is missing`, `redirect_uri_mismatch` und Fehlern auf Remote-Servern auseinandersetzen. Besonders problematisch ist OAuth auf LAN/VPS. **So löst OmniRoute das Problem:** - **Automatische Token-Aktualisierung** – OAuth-Tokens werden vor Ablauf im Hintergrund aktualisiert - **OAuth 2.0 (PKCE) integriert** – Automatischer Ablauf fĂŒr Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, iFlow - **Multi-Account OAuth** – Mehrere Konten pro Anbieter ĂŒber JWT/ID-Token-Extraktion - **OAuth LAN/Remote Fix** – Private IP-Erkennung fĂŒr `redirect_uri` + manueller URL-Modus fĂŒr Remote-Server - **OAuth Behind Nginx** – Verwendet `window.location.origin` fĂŒr Reverse-Proxy-KompatibilitĂ€t - **Remote OAuth Guide** – Schritt-fĂŒr-Schritt-Anleitung fĂŒr Google Cloud-Anmeldeinformationen auf VPS/Docker
📊 9. „Ich weiß nicht, wie viel ich ausgebe oder wo“ Entwickler nutzen mehrere kostenpflichtige Anbieter, haben jedoch keine einheitliche Sicht auf die Ausgaben. Jeder Anbieter verfĂŒgt ĂŒber ein eigenes Abrechnungs-Dashboard, es gibt jedoch keine konsolidierte Ansicht. Unerwartete Kosten können sich hĂ€ufen. **So löst OmniRoute das Problem:** - **Kostenanalyse-Dashboard** – Kostenverfolgung pro Token und Budgetverwaltung pro Anbieter - **Budgetgrenzen pro Stufe** – Ausgabenobergrenze pro Stufe, die einen automatischen Fallback auslöst - **Preiskonfiguration pro Modell** – Konfigurierbare Preise pro Modell- **Nutzungsstatistiken pro API-SchlĂŒssel** – Anzahl der Anfragen und zuletzt verwendeter Zeitstempel pro SchlĂŒssel - **Analytics-Dashboard** – Statistikkarten, Modellnutzungsdiagramm, Anbietertabelle mit Erfolgsraten und Latenz
🐛 10. „Ich kann Fehler und Probleme bei KI-Anrufen nicht diagnostizieren“ Wenn ein Anruf fehlschlĂ€gt, weiß der Entwickler nicht, ob es sich um eine Ratenbegrenzung, ein abgelaufenes Token, ein falsches Format oder einen Anbieterfehler handelt. Fragmentierte Protokolle ĂŒber verschiedene Terminals hinweg. Ohne Beobachtbarkeit ist das Debuggen ein Versuch und Irrtum. **So löst OmniRoute das Problem:** - **Unified Logs Dashboard** – 4 Registerkarten: Anforderungsprotokolle, Proxy-Protokolle, Audit-Protokolle, Konsole - **Console Log Viewer** – Echtzeit-Viewer im Terminal-Stil mit farbcodierten Ebenen, automatischem Scrollen, Suche und Filter - **SQLite-Proxy-Protokolle** – Persistente Protokolle, die Serverneustarts ĂŒberdauern - **Translator Playground** – 4 Debugging-Modi: Playground (FormatĂŒbersetzung), Chat Tester (Round-Trip), Test Bench (Batch), Live Monitor (Echtzeit) - **Telemetrie anfordern** – p50/p95/p99-Latenz + X-Request-Id-Ablaufverfolgung - **Dateibasierte Protokollierung mit Rotation** – Der Konsolen-Interceptor erfasst alles im JSON-Protokoll mit grĂ¶ĂŸenbasierter Rotation
đŸ—ïž 11. „Die Bereitstellung und Wartung des Gateways ist komplex“ Die Installation, Konfiguration und Wartung eines KI-Proxys in verschiedenen Umgebungen (lokal, VPS, Docker, Cloud) ist arbeitsintensiv. Probleme wie hartcodierte Pfade, `EACCES` in Verzeichnissen, Portkonflikte und plattformĂŒbergreifende Builds sorgen fĂŒr zusĂ€tzliche Reibung. **So löst OmniRoute das Problem:** - **npm globale Installation** – `npm install -g omniroute && omniroute` – fertig - **Docker Multi-Platform** – AMD64 + ARM64 nativ (Apple Silicon, AWS Graviton, Raspberry Pi) - **Docker Compose-Profile** – `base` (keine CLI-Tools) und `cli` (mit Claude Code, Codex, OpenClaw) - **Electron Desktop App** – Native App fĂŒr Windows/macOS/Linux mit Taskleiste, Autostart, Offline-Modus - **Split-Port-Modus** – API und Dashboard auf separaten Ports fĂŒr erweiterte Szenarien (Reverse-Proxy, Container-Netzwerk) - **Cloud Sync** – Konfigurieren Sie die gerĂ€teĂŒbergreifende Synchronisierung ĂŒber Cloudflare Workers - **DB-Backups** – Automatische Sicherung, Wiederherstellung, Export und Import aller Einstellungen
🌍 12. „Die BenutzeroberflĂ€che ist nur auf Englisch verfĂŒgbar und mein Team spricht kein Englisch“ Teams in nicht englischsprachigen LĂ€ndern, insbesondere in Lateinamerika, Asien und Europa, haben Probleme mit rein englischsprachigen BenutzeroberflĂ€chen. Sprachbarrieren verringern die Akzeptanz und erhöhen die Zahl von Konfigurationsfehlern. **So löst OmniRoute das Problem:** - **Dashboard i18n – 30 Sprachen** – Alle ĂŒber 500 Tasten ĂŒbersetzt, einschließlich Arabisch, Bulgarisch, DĂ€nisch, Deutsch, Spanisch, Finnisch, Französisch, HebrĂ€isch, Hindi, Ungarisch, Indonesisch, Italienisch, Japanisch, Koreanisch, Malaiisch, NiederlĂ€ndisch, Norwegisch, Polnisch, Portugiesisch (PT/BR), RumĂ€nisch, Russisch, Slowakisch, Schwedisch, ThailĂ€ndisch, Ukrainisch, Vietnamesisch, Chinesisch, Philippinisch, Englisch - **RTL-UnterstĂŒtzung** – Rechts-nach-links-UnterstĂŒtzung fĂŒr Arabisch und HebrĂ€isch - **Mehrsprachige READMEs** – 30 vollstĂ€ndige DokumentationsĂŒbersetzungen - **Sprachauswahl** – Globussymbol in der Kopfzeile zum Umschalten in Echtzeit
🔄 13. „Ich brauche mehr als nur Chat – ich brauche Einbettungen, Bilder, Audio“ KI ist nicht nur der Abschluss eines Chats. Entwickler mĂŒssen Bilder generieren, Audio transkribieren, Einbettungen fĂŒr RAG erstellen, Dokumente neu einordnen und Inhalte moderieren. Jede API hat einen anderen Endpunkt und ein anderes Format. **So löst OmniRoute das Problem:** - **Einbettungen** – `/v1/embeddings` mit 6 Anbietern und 9+ Modellen - **Bildgenerierung** – `/v1/images/generations` mit 10 Anbietern und ĂŒber 20 Modellen (OpenAI, xAI, Together, Fireworks, Nebius, Hyperbolic, NanoBanana, Antigravity, SD WebUI, ComfyUI) - **Text-zu-Video** – `/v1/videos/generations` – ComfyUI (AnimateDiff, SVD) und SD WebUI - **Text-zu-Musik** – `/v1/music/generations` – ComfyUI (Stable Audio Open, MusicGen) - **Audiotranskription** – `/v1/audio/transcriptions` – Whisper + Nvidia NIM, HuggingFace, Qwen3 - **Text-to-Speech** – `/v1/audio/speech` – ElevenLabs, Nvidia NIM, HuggingFace, Coqui, Tortoise, Qwen3, + bestehende Anbieter - **Moderationen** – `/v1/moderations` – ÜberprĂŒfung der Inhaltssicherheit - **Neueinstufung** – `/v1/rerank` – Neueinstufung der Dokumentenrelevanz - **Antwort-API** – VollstĂ€ndige `/v1/responses`-UnterstĂŒtzung fĂŒr Codex
đŸ§Ș 14. „Ich habe keine Möglichkeit, die QualitĂ€t verschiedener Modelle zu testen und zu vergleichen“ Entwickler möchten wissen, welches Modell fĂŒr ihren Anwendungsfall am besten geeignet ist – Code, Übersetzung, Argumentation –, aber ein manueller Vergleich ist langsam. Es sind keine integrierten Evaluierungstools vorhanden. **So löst OmniRoute das Problem:** - **LLM-Bewertungen** – Golden-Set-Test mit 10 vorinstallierten FĂ€llen zu BegrĂŒĂŸungen, Mathematik, Geografie, Codegenerierung, JSON-KonformitĂ€t, Übersetzung, Markdown und Sicherheitsverweigerung - **4 Match-Strategien** – `exact`, `contains`, `regex`, `custom` (JS-Funktion) - **Translator Playground Test Bench** – Batch-Tests mit mehreren Eingaben und erwarteten Ausgaben, anbieterĂŒbergreifender Vergleich - **Chat-Tester** – VollstĂ€ndiger Roundtrip mit visueller Antwortwiedergabe - **Live-Monitor** – Echtzeit-Stream aller Anfragen, die ĂŒber den Proxy fließen
📈 15. „Ich muss skalieren, ohne an Leistung einzubĂŒĂŸen“ Wenn das Anfragevolumen wĂ€chst, verursachen dieselben Fragen ohne Zwischenspeicherung doppelte Kosten. Ohne Idempotenz verschwenden doppelte Anfragen die Verarbeitung. Die Tarifbegrenzungen pro Anbieter mĂŒssen eingehalten werden. **So löst OmniRoute das Problem:** - **Semantischer Cache** – Zweistufiger Cache (Signatur + Semantik) reduziert Kosten und Latenz - **Request Idempotency** – 5-Sekunden-Deduplizierungsfenster fĂŒr identische Anfragen - **Ratenbegrenzungserkennung** – Provider-RPM, minimale LĂŒcke und maximale gleichzeitige Verfolgung - **Bearbeitbare Ratengrenzen** – Konfigurierbare Standardeinstellungen unter Einstellungen → Ausfallsicherheit mit Persistenz - **API Key Validation Cache** – 3-stufiger Cache fĂŒr Produktionsleistung - **Gesundheits-Dashboard mit Telemetrie** – p50/p95/p99-Latenz, Cache-Statistiken, Betriebszeit
đŸ€– 16. „Ich möchte das Modellverhalten global steuern“Entwickler, die alle Antworten in einer bestimmten Sprache oder mit einem bestimmten Ton wĂŒnschen oder die Argumentationstoken einschrĂ€nken möchten. Dies in jedem Tool/jeder Anfrage zu konfigurieren, ist unpraktisch. **So löst OmniRoute das Problem:** - **System Prompt Injection** – Globale Eingabeaufforderung, die auf alle Anfragen angewendet wird - **Thinking Budget Validation** – Reasoning-Token-Zuteilungskontrolle pro Anfrage (Passthrough, automatisch, benutzerdefiniert, adaptiv) - **6 Routing-Strategien** – Globale Strategien, die bestimmen, wie Anfragen verteilt werden - **Wildcard-Router** – `provider/*`-Muster leiten dynamisch an jeden Anbieter weiter - **Combo-Aktivierung/Deaktivierung umschalten** – Combos direkt ĂŒber das Dashboard umschalten - **Provider Toggle** – Alle Verbindungen fĂŒr einen Anbieter mit einem Klick aktivieren/deaktivieren - **Blockierte Anbieter** – Bestimmte Anbieter aus der `/v1/models`-Liste ausschließen
🧰 17. „Ich brauche MCP-Tools als erstklassige Produktfunktionen“ Viele KI-Gateways stellen MCP nur als verstecktes Implementierungsdetail zur VerfĂŒgung. Teams benötigen eine sichtbare, ĂŒberschaubare Betriebsebene. **So löst OmniRoute das Problem:** – MCP wird in der Dashboard-Navigation und auf der Registerkarte „Endpunktprotokoll“ angezeigt - Dedizierte MCP-Verwaltungsseite mit Prozess, Tools, Bereichen und Audit – Integrierter Schnellstart fĂŒr `omniroute --mcp` und Kunden-Onboarding
🧠 18. „Ich benötige A2A-Orchestrierung mit Synchronisierungs- und Stream-Aufgabenpfaden“ Agenten-Workflows erfordern sowohl direkte Antworten als auch eine lang andauernde gestreamte AusfĂŒhrung mit Lebenszykluskontrolle. **So löst OmniRoute das Problem:** – A2A JSON-RPC-Endpunkt (`POST /a2a`) mit `message/send` und `message/stream` - SSE-Streaming mit Terminal-State-Propagation – Task-Lebenszyklus-APIs fĂŒr `tasks/get` und `tasks/cancel`
đŸ›°ïž 19. „Ich benötige den echten Zustand des MCP-Prozesses, keinen erratenen Status“ Betriebsteams mĂŒssen wissen, ob MCP tatsĂ€chlich aktiv ist, und nicht nur, ob eine API erreichbar ist. **So löst OmniRoute das Problem:** – Laufzeit-Heartbeat-Datei mit PID, Zeitstempeln, Transport, Werkzeuganzahl und Oszilloskopmodus - MCP-Status-API, die Heartbeat + aktuelle AktivitĂ€t kombiniert - UI-Statuskarten fĂŒr Prozess-/VerfĂŒgbarkeits-/Heartbeat-AktualitĂ€t
📋 20. „Ich benötige eine ĂŒberprĂŒfbare MCP-Tool-AusfĂŒhrung“ Wenn Tools die Konfiguration verĂ€ndern oder operative Aktionen auslösen, benötigen Teams forensische RĂŒckverfolgbarkeit. **So löst OmniRoute das Problem:** – SQLite-gestĂŒtzte Audit-Protokollierung fĂŒr MCP-Tool-Aufrufe - Filtert nach Tool, Erfolg/Misserfolg, API-SchlĂŒssel und Paginierung - Dashboard-Audit-Tabelle + Statistik-Endpunkte fĂŒr die Automatisierung
🔐 21. „Ich benötige bereichsweise MCP-Berechtigungen pro Integration“ Verschiedene Clients sollten Zugriff auf die Werkzeugkategorien mit den geringsten Rechten haben. **So löst OmniRoute das Problem:** - 9 granulare MCP-Bereiche fĂŒr kontrollierten Werkzeugzugriff - Geltungsbereichsdurchsetzung und Sichtbarkeit in der MCP-Management-BenutzeroberflĂ€che - Sichere Standardhaltung fĂŒr Betriebswerkzeuge
⚙ 22. „Ich benötige Betriebskontrollen ohne erneute Bereitstellung“ Teams benötigen bei VorfĂ€llen oder Kostenereignissen schnelle LaufzeitĂ€nderungen. **So löst OmniRoute das Problem:** - Schalten Sie die Combo-Aktivierung direkt ĂŒber das MCP-Dashboard um - Wenden Sie Ausfallsicherheitsprofile aus vordefinierten Richtlinienpaketen an - Setzen Sie den Leistungsschalterstatus ĂŒber dasselbe Bedienfeld zurĂŒck
🔄 23. „Ich benötige Live-Sichtbarkeit und Abbruch des A2A-Aufgabenlebenszyklus“ Ohne Sichtbarkeit des Lebenszyklus wird es schwierig, AufgabenvorfĂ€lle zu selektieren. **So löst OmniRoute das Problem:** - Aufgabenliste/Filterung nach Bundesland/FĂ€higkeit mit Paginierung - Drilldown zu Aufgabenmetadaten, Ereignissen und Artefakten - Endpunkt zum Abbrechen von Aufgaben und UI-Aktion mit BestĂ€tigung
🌊 24. „Ich benötige aktive Stream-Metriken fĂŒr die A2A-Last“ Streaming-Workflows erfordern betriebliche Einblicke in ParallelitĂ€t und Live-Verbindungen. **So löst OmniRoute das Problem:** - Aktive Stream-ZĂ€hler im A2A-Status integriert - Zeitstempel der letzten Aufgabe und Anzahl pro Status - A2A-Dashboard-Karten fĂŒr die Echtzeit-BetriebsĂŒberwachung
đŸȘȘ 25. „Ich benötige Standard-Agent-Erkennung fĂŒr Clients“ Externe Kunden und Orchestratoren benötigen fĂŒr das Onboarding maschinenlesbare Metadaten. **So löst OmniRoute das Problem:** – Agentenkarte unter `/.well-known/agent.json` ausgestellt - FĂ€higkeiten und Fertigkeiten werden in der Management-BenutzeroberflĂ€che angezeigt – Die A2A-Status-API enthĂ€lt Erkennungsmetadaten fĂŒr die Automatisierung
🧭 26. „Ich benötige Protokollauffindbarkeit in der Produkt-UX“ Wenn Benutzer ProtokolloberflĂ€chen nicht entdecken können, sinken Akzeptanz und SupportqualitĂ€t. **So löst OmniRoute das Problem:** - SeitenleisteneintrĂ€ge fĂŒr MCP und A2A - Registerkarte „Protokolle“ auf der Endpunktseite mit Schnellstart und Status - Links von der Übersicht zu speziellen Management-Dashboards
đŸ§Ș 27. „Ich benötige eine End-to-End-Protokollvalidierung mit echten Clients“ Probetests reichen nicht aus, um die ProtokollkompatibilitĂ€t vor der Veröffentlichung zu ĂŒberprĂŒfen. **So löst OmniRoute das Problem:** – E2E-Suite, die die App startet und echten MCP SDK-Client-Transport verwendet - A2A-Clienttests fĂŒr Erkennungs-, Sende-, Stream-, Get- und AbbruchflĂŒsse - Vergleichen Sie Behauptungen mit MCP-Audit- und A2A-Aufgaben-APIs
📡 28. „Ich brauche eine einheitliche Beobachtbarkeit ĂŒber alle Schnittstellen hinweg“ Die Aufteilung der Beobachtbarkeit nach Protokoll fĂŒhrt zu blinden Flecken und einer lĂ€ngeren MTTR. **So löst OmniRoute das Problem:** - Einheitliche Dashboards/Protokolle/Analysen in einem Produkt - Gesundheits-, Audit- und Anforderungstelemetrie ĂŒber OpenAI-, MCP- und A2A-Ebenen hinweg - Operative APIs fĂŒr Status und Automatisierung
đŸ’Œ 29. „Ich benötige eine Laufzeit fĂŒr Proxy + Tools + Agent-Orchestrierung“ Die AusfĂŒhrung vieler separater Dienste erhöht die Betriebskosten und erhöht die FehlerhĂ€ufigkeit. **So löst OmniRoute das Problem:**- OpenAI-kompatibler Proxy, MCP-Server und A2A-Server in einem Stack – Gemeinsame Authentifizierung, Ausfallsicherheit, Datenspeicher und Beobachtbarkeit - Konsistentes Richtlinienmodell ĂŒber alle InteraktionsoberflĂ€chen hinweg
🚀 30. „Ich muss Agenten-Workflows ohne Glue-Code-Ausbreitung versenden“ Teams verlieren an Geschwindigkeit, wenn sie mehrere Ad-hoc-Dienste und -Skripte zusammenfĂŒgen. **So löst OmniRoute das Problem:** - Einheitliche Endpunktstrategie fĂŒr Kunden und Agenten - Integrierte Protokollverwaltungs-BenutzeroberflĂ€chen und Rauchvalidierungspfade - Produktionsreife Grundlagen (Sicherheit, Protokollierung, Ausfallsicherheit, Backup)
### Beispiel-Playbooks (Integrierte AnwendungsfĂ€lle) **Playbook A: Bezahltes Abonnement maximieren + gĂŒnstiges Backup** ```txt Combo: "maximize-claude" 1. cc/claude-opus-4-6 2. glm/glm-4.7 3. if/kimi-k2-thinking Monthly cost: $20 + small backup spend Outcome: higher quality, near-zero interruption ``` **Playbook B: Kostenfreier Codierungsstack** ```txt Combo: "free-forever" 1. gc/gemini-3-flash 2. if/kimi-k2-thinking 3. qw/qwen3-coder-plus Monthly cost: $0 Outcome: stable free coding workflow ``` **Playbook C: 24/7 Always-On-Fallback-Kette** ```txt Combo: "always-on" 1. cc/claude-opus-4-6 2. cx/gpt-5.2-codex 3. glm/glm-4.7 4. minimax/MiniMax-M2.1 5. if/kimi-k2-thinking Outcome: deep fallback depth for deadline-critical workloads ``` **Playbook D: Agentenoperationen mit MCP + A2A** ```txt 1) Start MCP transport (`omniroute --mcp`) for tool-driven operations 2) Run A2A tasks via `message/send` and `message/stream` 3) Observe via /dashboard/mcp and /dashboard/a2a 4) Control incidents with resilience profile + task cancellation ``` --- ## ⚡ Schnellstart ### 1) Installieren und ausfĂŒhren ```bash npm install -g omniroute omniroute ``` Das Dashboard wird unter `http://localhost:20128` geöffnet und die API-Basis-URL lautet `http://localhost:20128/v1`. | Befehl | Beschreibung | | ----------------------- | ------------------------------------------------------------------- | | `omniroute` | Server starten (`PORT=20128`, API und Dashboard auf demselben Port) | | `omniroute --port 3000` | Setzen Sie den kanonischen/API-Port auf 3000 | | `omniroute --mcp` | Starten Sie den MCP-Server (STDIO-Transport) | | `omniroute --no-open` | Browser nicht automatisch öffnen | | `omniroute --help` | Hilfe anzeigen | Optionaler Split-Port-Modus: ```bash PORT=20128 DASHBOARD_PORT=20129 omniroute # API: http://localhost:20128/v1 # Dashboard: http://localhost:20129 ``` ### 2) Verbinden Sie Anbieter und erstellen Sie Ihren API-SchlĂŒssel 1. Öffnen Sie Dashboard → `Providers` und verbinden Sie mindestens einen Anbieter (OAuth oder API-SchlĂŒssel). 2. Öffnen Sie Dashboard → `Endpoint` und erstellen Sie einen API-SchlĂŒssel. 3. (Optional) Öffnen Sie Dashboard → `Combos` und legen Sie Ihre Fallback-Kette fest. ### 3) Richten Sie Ihr Codierungstool auf OmniRoute ```txt Base URL: http://localhost:20128/v1 API Key: [copy from Endpoint page] Model: if/kimi-k2-thinking (or any provider/model prefix) ``` Funktioniert mit Claude Code, Codex CLI, Gemini CLI, Cursor, Cline, OpenClaw, OpenCode und OpenAI-kompatiblen SDKs. ### 4) Protokolle aktivieren und validieren (v2.0) **MCP (fĂŒr werkzeuggesteuerte VorgĂ€nge):** ```bash omniroute --mcp ``` Verbinden Sie dann Ihren MCP-Client ĂŒber `stdio` und testen Sie Tools wie: - `omniroute_get_health` - `omniroute_list_combos` **A2A (fĂŒr Agent-zu-Agent-Workflows):** ```bash curl http://localhost:20128/.well-known/agent.json ``` ```bash curl -X POST http://localhost:20128/a2a \ -H 'content-type: application/json' \ -d '{"jsonrpc":"2.0","id":"quickstart","method":"message/send","params":{"skill":"quota-management","messages":[{"role":"user","content":"Give me a short quota summary."}]}}' ``` ### 5) Alles durchgĂ€ngig validieren (empfohlen) ```bash npm run test:protocols:e2e ``` Diese Suite validiert echte MCP- und A2A-Client-Flows anhand einer laufenden App. ### Alternative: Von der Quelle ausfĂŒhren ```bash cp .env.example .env npm install PORT=20128 DASHBOARD_PORT=20129 NEXT_PUBLIC_BASE_URL=http://localhost:20129 npm run dev ``` --- ## 🐳 Docker OmniRoute ist als öffentliches Docker-Image auf [Docker Hub](https://hub.docker.com/r/diegosouzapw/omniroute) verfĂŒgbar. **Schneller Lauf:** ```bash docker run -d \ --name omniroute \ --restart unless-stopped \ -p 20128:20128 \ -v omniroute-data:/app/data \ diegosouzapw/omniroute:latest ``` **Mit Umgebungsdatei:** ```bash # Copy and edit .env first cp .env.example .env docker run -d \ --name omniroute \ --restart unless-stopped \ --env-file .env \ -p 20128:20128 \ -v omniroute-data:/app/data \ diegosouzapw/omniroute:latest ``` **Verwendung von Docker Compose:** ```bash # Base profile (no CLI tools) docker compose --profile base up -d # CLI profile (Claude Code, Codex, OpenClaw built-in) docker compose --profile cli up -d ``` | Bild | Tag | GrĂ¶ĂŸe | Beschreibung | | ------------------------ | -------- | ------- | ----------------------- | | `diegosouzapw/omniroute` | `latest` | ~250 MB | Neueste stabile Version | | `diegosouzapw/omniroute` | `1.0.3` | ~250 MB | Aktuelle Version | --- ## đŸ–„ïž FĂŒhren Sie OmniRoute als eigenstĂ€ndige Desktop-App aus – kein Terminal, kein Browser, keine Internetverbindung fĂŒr lokale Modelle erforderlich. Die Electron-basierte App umfasst: - đŸ–„ïž **Natives Fenster** – Spezielles App-Fenster mit Integration in die Taskleiste - 🔄 **Auto-Start** – OmniRoute bei der Systemanmeldung starten - 🔔 **Native Benachrichtigungen** – Erhalten Sie Benachrichtigungen bei Kontingentausschöpfung oder Anbieterproblemen - ⚡ **One-Click-Installation** – NSIS (Windows), DMG (macOS), AppImage (Linux) - 🌐 **Offline-Modus** – Funktioniert vollstĂ€ndig offline mit dem gebĂŒndelten Server ### Schnellstart ```bash # Development mode npm run electron:dev # Build for your platform npm run electron:build # Current platform npm run electron:build:win # Windows (.exe) npm run electron:build:mac # macOS (.dmg) — x64 & arm64 npm run electron:build:linux # Linux (.AppImage) ``` ### Systemablage Wenn OmniRoute minimiert ist, befindet es sich mit schnellen Aktionen in Ihrer Taskleiste: - Dashboard öffnen - Server-Port Ă€ndern - Anwendung beenden 📖 VollstĂ€ndige Dokumentation: [`electron/README.md`](electron/README.md) --- ## 💰 Preise im Überblick | Stufe | Anbieter | Kosten | Kontingent zurĂŒcksetzen | Am besten fĂŒr | | -------------------- | ----------------- | ---------------------------------------- | ------------------------- | ---------------------- | | **💳 ABO** | Claude Code (Pro) | 20 $/Monat | 5h + wöchentlich | Bereits abonniert | | | Codex (Plus/Pro) | 20–200 $/Monat | 5h + wöchentlich | OpenAI-Benutzer | | | Gemini CLI | **KOSTENLOS** | 180.000/Monat + 1.000/Tag | Alle! | | | GitHub-Copilot | 10–19 $/Monat | Monatlich | GitHub-Benutzer | | **🔑 API-SCHLÜSSEL** | NVIDIA NIM | **KOSTENLOS** (1000 Credits) | Einmalig | Kostenlose Tier-Tests | | | DeepSeek | Pay-per-Use | Keine | Bestes Preis/QualitĂ€t | | | Groq | Kostenloses Kontingent + kostenpflichtig | Tarif begrenzt | Ultraschnelle Inferenz | | | xAI (Grok) | Pay-per-Use | Keine | Grok-Modelle | | | Mistral | Kostenloses Kontingent + kostenpflichtig | Tarif begrenzt | EuropĂ€ische KI | | | OpenRouter | Pay-per-Use | Keine | Über 100 Modelle | | **💰 GÜNSTIG** | GLM-4.7 | 0,6 $/1 Mio. | TĂ€glich 10 Uhr | Budgetsicherung | | | MiniMax M2.1 | 0,2 $/1 Mio. | 5-Stunden-Rollen | GĂŒnstigste Option | | | Kimi K2 | $9/Monat pauschal | 10 Millionen Token/Monat | Vorhersehbare Kosten | | **🆓 KOSTENLOS** | iFlow | $0 | Unbegrenzt | 8 Modelle kostenlos | | | Qwen | $0 | Unbegrenzt | 3 Modelle kostenlos | | | Kiro | $0 | Unbegrenzt | Claude frei | **💡 Profi-Tipp:** Beginnen Sie mit der Kombination Gemini CLI (180.000 kostenlos/Monat) + iFlow (unbegrenzt kostenlos) = 0 $ Kosten! --- ## 💡 Hauptfunktionen OmniRoute v2.0 ist als Betriebsplattform konzipiert und nicht nur als Relay-Proxy. ### đŸ€– Agenten- und Protokolloperationen (v2.0)| Funktion | Was es tut | | ------------------------------------ | -------------------------------------------------------------------------------- | | 🔧 **MCP-Server (16 Tools)** | IDE-/Agent-Tools steuern Routing, Zustand, Kombinationen, Grenzwerte und VorgĂ€nge | | đŸ€ **A2A-Server (JSON-RPC + SSE)** | AusfĂŒhrung von Agent-zu-Agent-Aufgaben mit Synchronisierungs- und Streaming-Flows | | 🧭 **MCP/A2A-Dashboards** | Dedizierte Verwaltungsseiten (`/dashboard/mcp`, `/dashboard/a2a`) | | đŸ›°ïž **MCP Runtime Heartbeat** | Echter Prozessstatus (PID, Betriebszeit, Heartbeat-Alter, Transport, Scope-Modus) | | 📋 **MCP Audit Trail** | Filterbare Audit-Protokolle mit Erfolg/Misserfolg und SchlĂŒsselzuordnung | | 🔐 **Durchsetzung des MCP-Geltungsbereichs** | 9 granulare Umfangsberechtigungen fĂŒr kontrollierten Werkzeugzugriff | | 📡 **A2A Task Lifecycle Management** | Aufgaben auflisten/filtern, Ereignisse/Artefakte prĂŒfen, laufende Aufgaben abbrechen | | 📋 **Agentenkartenerkennung** | `/.well-known/agent.json` fĂŒr die automatische Client-Erkennung | | đŸ§Ș **Protokoll-E2E-Testkabel** | Echtes MCP SDK + A2A-Client fließt in `test:protocols:e2e` | | ⚙ **Betriebskontrollen** | Schaltkombination, Anwenden von Resilienzprofilen, ZurĂŒcksetzen von Leistungsschaltern ĂŒber eine BedienoberflĂ€che | ### 🧠 Routing und Intelligenz | Funktion | Was es tut | | ---------------------------------------- | ------------------------------------------------------------------------------------- | | 🎯 **Intelligenter 4-Stufen-Fallback** | Automatische Route: Abonnement → API-SchlĂŒssel → GĂŒnstig → Kostenlos | | 📊 **Kontingentverfolgung in Echtzeit** | Live-Token-ZĂ€hlung + Reset-Countdown pro Anbieter | | 🔄 **FormatĂŒbersetzung** | OpenAI ↔ Claude ↔ Gemini ↔ Antworten mit schemasicheren Konvertierungen | | đŸ‘„ **UnterstĂŒtzung mehrerer Konten** | Mehrere Konten pro Anbieter mit intelligenter Auswahl | | 🔄 **Automatische Token-Aktualisierung** | OAuth-Token werden bei Wiederholung automatisch aktualisiert | | 🎹 **Benutzerdefinierte Kombinationen** | 6 Ausgleichsstrategien + Fallback-Kettenkontrolle | | 🌐 **Wildcard-Router** | `provider/*` dynamisches Routing | | 🧠 **Budgetkontrollen denken** | Passthrough-, automatische, benutzerdefinierte und adaptive Reasoning-Grenzwerte | | 🔀 **Modell-Aliase** | Integrierte + benutzerdefinierte Modell-Aliasing- und Migrationssicherheit | | ⚡ **Hintergrundverschlechterung** | Hintergrundaufgaben mit niedriger PrioritĂ€t an gĂŒnstigere Modelle weiterleiten | | 💬 **System-Prompt-Injektion** | Globale Verhaltenskontrollen werden konsequent angewendet | | 📄 **Antwort-API-KompatibilitĂ€t** | VollstĂ€ndige `/v1/responses`-UnterstĂŒtzung fĂŒr Codex und erweiterte Agenten-Workflows | ### đŸŽ” Multimodale APIs | Funktion | Was es tut || -------------------------- | ------------------------------------------------------------- | | đŸ–Œïž **Bilderzeugung** | `/v1/images/generations` mit Cloud- und lokalen Backends | | 📐 **Einbettungen** | `/v1/embeddings` fĂŒr Such- und RAG-Pipelines | | đŸŽ€ **Audio-Transkription** | `/v1/audio/transcriptions` (Whisper und zusĂ€tzliche Anbieter) | | 🔊 **Text-to-Speech** | `/v1/audio/speech` (mehrere Engines/Anbieter) | | 🎬 **Videogenerierung** | `/v1/videos/generations` (ComfyUI + SD WebUI-Workflows) | | đŸŽ” **Musikgeneration** | `/v1/music/generations` (ComfyUI-Workflows) | | đŸ›Ąïž **Moderationen** | `/v1/moderations` SicherheitsprĂŒfungen | | 🔀 **Neueinstufung** | `/v1/rerank` fĂŒr Relevanzbewertung | ### đŸ›Ąïž Resilienz, Sicherheit und Governance | Funktion | Was es tut | | ---------------------------------------- | ------------------------------------------------------------------------------ | | 🔌 **Leistungsschalter** | Auslösung/Wiederherstellung auf Anbieterebene mit Schwellenwertkontrollen | | đŸ›Ąïž **Anti-Donnerende Herde** | Mutex- und Semaphorschutz bei Wiederholungs-/Ratenereignissen | | 🧠 **Semantik + Signatur-Cache** | Kosten-/Latenzreduzierung mit zwei Cache-Schichten | | ⚡ **Idempotenz anfordern** | Doppeltes Schutzfenster | | 🔒 **TLS-Fingerabdruck-Spoofing** | Bessere KompatibilitĂ€t mit Anti-Bot-gefilterten Anbietern | | 🌐 **IP-Filterung** | Zulassungs-/Blocklistenkontrolle fĂŒr exponierte Bereitstellungen | | 📊 **Bearbeitbare Ratenlimits** | Konfigurierbare globale/Provider-Level-Limits mit Persistenz | | 🔑 **API-SchlĂŒsselverwaltung + Scoping** | Sichere SchlĂŒsselausgabe/-rotation und Modell-/Anbieterkontrollen | | đŸ›Ąïž **GeschĂŒtzt `/models`** | Optionales Authentifizierungs-Gating und Provider-Ausblenden fĂŒr Modellkatalog | ### 📊 Beobachtbarkeit und Analyse | Funktion | Was es tut | | ---------------------------------------- | ------------------------------------------------------------------- | | 📝 **Anfrage + Proxy-Protokollierung** | VollstĂ€ndige Anfrage/Antwort- und Proxy-Protokollierung | | 📋 **Einheitliches Protokoll-Dashboard** | Anforderungs-, Proxy-, Audit- und Konsolenansichten auf einer Seite | | 🔍 **Telemetrie anfordern** | p50/p95/p99-Latenz und Anforderungsverfolgung | | đŸ„ **Gesundheits-Dashboard** | Betriebszeit, Breaker-ZustĂ€nde, Sperrungen, Cache-Statistiken | | 💰 **Kostenverfolgung** | Budgetkontrolle und Preistransparenz pro Modell | | 📈 **Analysevisualisierungen** | Einblicke in die Modell-/Anbieternutzung und Trendansichten | | đŸ§Ș **Bewertungsrahmen** | Golden-Set-Test mit konfigurierbaren Match-Strategien | ### ☁ Bereitstellung und Plattform | Funktion | Was es tut | | ------------------------------------------- | ------------------------------------------------------------------------------ | --- | ----------------------------- | ------------------------------------------------ | | 🌐 **Überall bereitstellen** | Localhost, VPS, Docker, Cloud-Umgebungen | | đŸ’Ÿ **Cloud-Synchronisierung** | Konfigurationssynchronisierung ĂŒber Cloud Worker | | 🔄 **Sichern/Wiederherstellen** | Export-/Import- und Disaster-Recovery-AblĂ€ufe | | 🧙 **Onboarding-Assistent** | Erstmaliges gefĂŒhrtes Setup | | 🔧 **CLI-Tools-Dashboard** | Ein-Klick-Setup fĂŒr beliebte Codierungstools | | 🌐 **i18n (30 Sprachen)** | VollstĂ€ndige SprachunterstĂŒtzung fĂŒr Dashboard und Dokumente mit RTL-Abdeckung | | 📂 **Benutzerdefiniertes Datenverzeichnis** | `DATA_DIR`-Überschreibung fĂŒr Speicherort | ### Feature Deep Dive #### Smarter Fallback mit praktischer Kostenkontrolle ```txt Combo: "my-coding-stack" 1. cc/claude-opus-4-6 2. nvidia/llama-3.3-70b 3. glm/glm-4.7 4. if/kimi-k2-thinking ``` Wenn Kontingent, Rate oder IntegritĂ€t fehlschlagen, wechselt OmniRoute automatisch zum nĂ€chsten Kandidaten, ohne dass ein manueller Wechsel erforderlich ist. #### Protokollverwaltung, die sichtbar und bedienbar ist - MCP + A2A sind in der BenutzeroberflĂ€che und in den Dokumenten erkennbar (nicht ausgeblendet) – Protokollstatus-APIs stellen Live-Betriebsdaten bereit (`/api/mcp/*`, `/api/a2a/*`) - Dashboards umfassen Aktionen fĂŒr Tag-2-Operationen (Kombinationsumschaltung, ZurĂŒcksetzen von Leistungsschaltern, Aufgabenabbruch). #### Übersetzer- und Validierungsworkflow Der Übersetzerbereich umfasst: - **Spielplatz**: TransformationsprĂŒfungen anfordern - **Chat-Tester**: vollstĂ€ndiger Anfrage-/Antwort-Roundtrip - **PrĂŒfstand**: mehrere FĂ€lle in einem Durchgang - **Live Monitor**: Echtzeit-Verkehrsansicht Plus Protokollvalidierung mit echten Clients ĂŒber `npm run test:protocols:e2e`. > 📖 **[MCP Server README](open-sse/mcp-server/README.md)** – Tool-Referenz, IDE-Konfigurationen und Client-Beispiele > > 📖 **[A2A Server README](src/lib/a2a/README.md)** – FĂ€higkeiten, JSON-RPC-Methoden, Streaming und Aufgabenlebenszyklus ## đŸ§Ș Bewertungen (Evals) OmniRoute umfasst ein integriertes Bewertungsframework zum Testen der LLM-AntwortqualitĂ€t anhand eines Golden Sets. Greifen Sie darauf ĂŒber **Analytics → Evals** im Dashboard zu. ### Eingebautes goldenes Set Das vorinstallierte „OmniRoute Golden Set“ enthĂ€lt TestfĂ€lle fĂŒr: - GrĂŒĂŸe, Mathematik, Geographie, Codegenerierung - Einhaltung des JSON-Formats, Übersetzung, Markdown-Generierung - Sicherheitsverweigerung (schĂ€dlicher Inhalt), ZĂ€hlung, boolesche Logik ### Bewertungsstrategien | Strategie | Beschreibung | Beispiel | | ---------- | -------------------------------------------------------------------------------------------- | --------------------------------------- | | `exact` | Die Ausgabe muss genau mit | ĂŒbereinstimmen `"4"` | | `contains` | Die Ausgabe muss eine Teilzeichenfolge enthalten (Groß-/Kleinschreibung wird nicht beachtet) | `"Paris"` | | `regex` | Die Ausgabe muss mit dem Regex-Muster | ĂŒbereinstimmen `"1.*2.*3"` | | `custom` | Benutzerdefinierte JS-Funktion gibt true/false | zurĂŒck `(output) => output.length > 10` | --- ## 📖 Einrichtungsanleitung ### Protokoll-Setup (MCP + A2A)
đŸ§© MCP-Setup (Modellkontextprotokoll) Starten Sie den MCP-Transport im Standardmodus: ```bash omniroute --mcp ``` Empfohlener Validierungsablauf: 1. Verbinden Sie Ihren MCP-Client ĂŒber stdio. 2. FĂŒhren Sie `omniroute_get_health` aus. 3. FĂŒhren Sie `omniroute_list_combos` aus. 4. Öffnen Sie `/dashboard/mcp`, um Heartbeat, AktivitĂ€t und Audit zu bestĂ€tigen. NĂŒtzliche APIs fĂŒr die Automatisierung: - `GET /api/mcp/status` - `GET /api/mcp/tools` - `GET /api/mcp/audit` - `GET /api/mcp/audit/stats`
đŸ€ A2A-Setup (Agent2Agent) Entdecken Sie den Agenten: ```bash curl http://localhost:20128/.well-known/agent.json ``` Senden Sie eine Aufgabe: ```bash curl -X POST http://localhost:20128/a2a \ -H 'content-type: application/json' \ -d '{"jsonrpc":"2.0","id":"setup-a2a","method":"message/send","params":{"skill":"quota-management","messages":[{"role":"user","content":"Summarize quota status."}]}}' ``` Lebenszyklus verwalten: - `GET /api/a2a/status` - `GET /api/a2a/tasks` - `GET /api/a2a/tasks/:id` - `POST /api/a2a/tasks/:id/cancel` Operative BenutzeroberflĂ€che: - `/dashboard/a2a` fĂŒr Task-/Status-/Stream-Beobachtbarkeit und Smoke-Aktionen
đŸ§Ș End-to-End-Protokollvalidierung Validieren Sie beide Protokolle mit echten Clients: ```bash npm run test:protocols:e2e ``` Dies bestĂ€tigt: - MCP SDK-Client-Verbindung/Liste/Anruf - A2A-Erkennung/Senden/Streamen/Get/Abbrechen - Vergleichen Sie die Daten in MCP-Audit- und A2A-Aufgabenverwaltungs-APIs
💳 Abonnementanbieter ### Claude Code (Pro/Max) ```bash Dashboard → Providers → Connect Claude Code → OAuth login → Auto token refresh → 5-hour + weekly quota tracking Models: cc/claude-opus-4-6 cc/claude-sonnet-4-5-20250929 cc/claude-haiku-4-5-20251001 ``` **Profi-Tipp:** Verwenden Sie Opus fĂŒr komplexe Aufgaben, Sonnet fĂŒr Geschwindigkeit. OmniRoute verfolgt das Kontingent pro Modell! ### OpenAI Codex (Plus/Pro) ```bash Dashboard → Providers → Connect Codex → OAuth login (port 1455) → 5-hour + weekly reset Models: cx/gpt-5.2-codex cx/gpt-5.1-codex-max ``` ### Gemini CLI (KOSTENLOS 180.000/Monat!) ```bash Dashboard → Providers → Connect Gemini CLI → Google OAuth → 180K completions/month + 1K/day Models: gc/gemini-3-flash-preview gc/gemini-2.5-pro ``` **Bester Wert:** Riesiges kostenloses Kontingent! Verwenden Sie dies vor kostenpflichtigen Stufen. ### GitHub-Copilot ```bash Dashboard → Providers → Connect GitHub → OAuth via GitHub → Monthly reset (1st of month) Models: gh/gpt-5 gh/claude-4.5-sonnet gh/gemini-3-pro ```
🔑 API-SchlĂŒsselanbieter ### NVIDIA NIM (KOSTENLOSE 1000 Credits!) 1. Registrieren Sie sich: [build.nvidia.com](https://build.nvidia.com) 2. Holen Sie sich einen kostenlosen API-SchlĂŒssel (1000 Inferenz-Credits inbegriffen) 3. Dashboard → Anbieter hinzufĂŒgen → NVIDIA NIM: - API-SchlĂŒssel: `nvapi-your-key` **Modelle:** `nvidia/llama-3.3-70b-instruct`, `nvidia/mistral-7b-instruct` und ĂŒber 50 weitere **Profi-Tipp:** OpenAI-kompatible API – funktioniert nahtlos mit der FormatĂŒbersetzung von OmniRoute! ### DeepSeek 1. Registrieren Sie sich: [platform.deepseek.com](https://platform.deepseek.com) 2. Holen Sie sich den API-SchlĂŒssel 3. Dashboard → Anbieter hinzufĂŒgen → DeepSeek **Modelle:** `deepseek/deepseek-chat`, `deepseek/deepseek-coder` ### Groq (Kostenloses Kontingent verfĂŒgbar!) 1. Registrieren Sie sich: [console.groq.com](https://console.groq.com) 2. Holen Sie sich den API-SchlĂŒssel (kostenloses Kontingent inbegriffen) 3. Dashboard → Anbieter hinzufĂŒgen → Groq **Modelle:** `groq/llama-3.3-70b`, `groq/mixtral-8x7b` **Profi-Tipp:** Ultraschnelle Inferenz – am besten fĂŒr Echtzeit-Codierung! ### OpenRouter (ĂŒber 100 Modelle) 1. Registrieren Sie sich: [openrouter.ai](https://openrouter.ai) 2. Holen Sie sich den API-SchlĂŒssel 3. Dashboard → Anbieter hinzufĂŒgen → OpenRouter **Modelle:** Greifen Sie ĂŒber einen einzigen API-SchlĂŒssel auf ĂŒber 100 Modelle aller großen Anbieter zu.
💰 GĂŒnstige Anbieter (Backup) ### GLM-4.7 (TĂ€glicher Reset, 0,6 $/1 Mio.) 1. Registrieren: [Zhipu AI](https://open.bigmodel.cn/) 2. Holen Sie sich den API-SchlĂŒssel vom Coding Plan 3. Dashboard → API-SchlĂŒssel hinzufĂŒgen: - Anbieter: `glm` - API-SchlĂŒssel: `your-key` **Verwendung:** `glm/glm-4.7` **Profi-Tipp:** Coding Plan bietet 3× Kontingent zu 1/7 Kosten! TĂ€glich um 10:00 Uhr zurĂŒckgesetzt. ### MiniMax M2.1 (5 Stunden ZurĂŒcksetzen, 0,20 $/1 Mio.) 1. Registrieren: [MiniMax](https://www.minimax.io/) 2. Holen Sie sich den API-SchlĂŒssel 3. Dashboard → API-SchlĂŒssel hinzufĂŒgen **Verwendung:** `minimax/MiniMax-M2.1` **Profi-Tipp:** GĂŒnstigste Option fĂŒr langen Kontext (1 Mio. Token)! ### Kimi K2 (9 $/Monat pauschal) 1. Abonnieren: [Moonshot AI](https://platform.moonshot.ai/) 2. Holen Sie sich den API-SchlĂŒssel 3. Dashboard → API-SchlĂŒssel hinzufĂŒgen **Verwendung:** `kimi/kimi-latest` **Profi-Tipp:** Feste 9 $/Monat fĂŒr 10 Mio. Token = 0,90 $/1 Mio. effektive Kosten!
🆓 KOSTENLOSE Anbieter (Notfall-Backup) ### iFlow (8 KOSTENLOSE Modelle)```bash Dashboard → Connect iFlow → iFlow OAuth login → Unlimited usage Models: if/kimi-k2-thinking if/qwen3-coder-plus if/glm-4.7 if/minimax-m2 if/deepseek-r1 ```` ### Qwen (3 KOSTENLOSE Modelle) ```bash Dashboard → Connect Qwen → Device code authorization → Unlimited usage Models: qw/qwen3-coder-plus qw/qwen3-coder-flash ```` ### Kiro (Claude KOSTENLOS) ```bash Dashboard → Connect Kiro → AWS Builder ID or Google/GitHub → Unlimited usage Models: kr/claude-sonnet-4.5 kr/claude-haiku-4.5 ```
🎹 Combos erstellen ### Beispiel 1: Abonnement maximieren → GĂŒnstiges Backup ``` Dashboard → Combos → Create New Name: premium-coding Models: 1. cc/claude-opus-4-6 (Subscription primary) 2. glm/glm-4.7 (Cheap backup, $0.6/1M) 3. minimax/MiniMax-M2.1 (Cheapest fallback, $0.20/1M) Use in CLI: premium-coding ``` ### Beispiel 2: Nur kostenlos (kostenlos) ``` Name: free-combo Models: 1. gc/gemini-3-flash-preview (180K free/month) 2. if/kimi-k2-thinking (unlimited) 3. qw/qwen3-coder-plus (unlimited) Cost: $0 forever! ```
🔧 CLI-Integration ### Cursor-IDE ``` Settings → Models → Advanced: OpenAI API Base URL: http://localhost:20128/v1 OpenAI API Key: [from OmniRoute dashboard] Model: cc/claude-opus-4-6 ``` ### Claude Code Verwenden Sie die Seite **CLI-Tools** im Dashboard fĂŒr die Ein-Klick-Konfiguration oder bearbeiten Sie `~/.claude/settings.json` manuell. ### Codex-CLI ```bash export OPENAI_BASE_URL="http://localhost:20128" export OPENAI_API_KEY="your-omniroute-api-key" codex "your prompt" ``` ### OpenClaw **Option 1 – Dashboard (empfohlen):** ``` Dashboard → CLI Tools → OpenClaw → Select Model → Apply ``` **Option 2 – Manuell:** Bearbeiten `~/.openclaw/openclaw.json`: ```json { "models": { "providers": { "omniroute": { "baseUrl": "http://127.0.0.1:20128/v1", "apiKey": "sk_omniroute", "api": "openai-completions" } } } } ``` > **Hinweis:** OpenClaw funktioniert nur mit lokaler OmniRoute. Verwenden Sie `127.0.0.1` anstelle von `localhost`, um Probleme mit der IPv6-Auflösung zu vermeiden. ### Cline / Weiter / RooCode ``` Settings → API Configuration: Provider: OpenAI Compatible Base URL: http://localhost:20128/v1 API Key: [from OmniRoute dashboard] Model: if/kimi-k2-thinking ``` ### OpenCode **Schritt 1:** OmniRoute als benutzerdefinierten Anbieter hinzufĂŒgen: ```bash opencode /connect # Select "Other" → Enter ID: "omniroute" → Enter your OmniRoute API key ``` **Schritt 2:** Erstellen/bearbeiten Sie `opencode.json` in Ihrem Projektstamm: ```json { "$schema": "https://opencode.ai/config.json", "provider": { "omniroute": { "npm": "@ai-sdk/openai-compatible", "name": "OmniRoute", "options": { "baseURL": "http://localhost:20128/v1" }, "models": { "cc/claude-sonnet-4-20250514": { "name": "Claude Sonnet 4" }, "gg/gemini-2.5-pro": { "name": "Gemini 2.5 Pro" }, "if/kimi-k2-thinking": { "name": "Kimi K2 (Free)" } } } } } ``` **Schritt 3:** WĂ€hlen Sie das Modell in OpenCode aus: ```bash /models # Select any OmniRoute model from the list ``` > **Tipp:** FĂŒgen Sie alle in Ihrem OmniRoute `/v1/models`-Endpunkt verfĂŒgbaren Modelle zum Abschnitt `models` hinzu. Verwenden Sie das Format `provider/model-id` aus Ihrem OmniRoute-Dashboard.
--- ## 🐛 Fehlerbehebung
Klicken Sie hier, um den Leitfaden zur Fehlerbehebung zu erweitern **„Sprachmodell hat keine Nachrichten bereitgestellt“** - Anbieterkontingent erschöpft → ÜberprĂŒfen Sie den Dashboard-Kontingent-Tracker - Lösung: Combo-Fallback verwenden oder auf gĂŒnstigere Stufe wechseln **Ratenbegrenzung** - Abonnementkontingent aufgebraucht → Fallback auf GLM/MiniMax - Kombination hinzufĂŒgen: `cc/claude-opus-4-6 → glm/glm-4.7 → if/kimi-k2-thinking` **OAuth-Token abgelaufen** - Automatische Aktualisierung durch OmniRoute - Wenn die Probleme weiterhin bestehen: Dashboard → Anbieter → Verbindung wiederherstellen **Hohe Kosten** - ÜberprĂŒfen Sie die Nutzungsstatistiken im Dashboard → Kosten - PrimĂ€rmodell auf GLM/MiniMax umstellen - Nutzen Sie das kostenlose Kontingent (Gemini CLI, iFlow) fĂŒr unkritische Aufgaben **Dashboard-/API-Ports sind falsch** - `PORT` ist der kanonische Basisport (und standardmĂ€ĂŸig API-Port) – `API_PORT` ĂŒberschreibt nur OpenAI-kompatible API-Listener – `DASHBOARD_PORT` ĂŒberschreibt nur Dashboard/Next.js-Listener - Setzen Sie `NEXT_PUBLIC_BASE_URL` auf Ihr Dashboard/öffentliche URL (fĂŒr OAuth-RĂŒckrufe). **Cloud-Synchronisierungsfehler** – ÜberprĂŒfen Sie, ob `BASE_URL` auf Ihre laufende Instanz verweist – ÜberprĂŒfen Sie, ob `CLOUD_URL` auf Ihren erwarteten Cloud-Endpunkt verweist – Halten Sie die `NEXT_PUBLIC_*`-Werte an den serverseitigen Werten ausgerichtet **Erste Anmeldung funktioniert nicht** - ÜberprĂŒfen Sie `INITIAL_PASSWORD` in `.env` – Wenn nicht festgelegt, lautet das Fallback-Passwort `123456` **Keine Anfrageprotokolle** - Setzen Sie `ENABLE_REQUEST_LOGS=true` in `.env` **Verbindungstest zeigt „UngĂŒltig“ fĂŒr OpenAI-kompatible Anbieter** – Viele Anbieter stellen keinen `/models`-Endpunkt bereit – OmniRoute v1.0.6+ beinhaltet eine Fallback-Validierung ĂŒber Chat-AbschlĂŒsse – Stellen Sie sicher, dass die Basis-URL das Suffix `/v1` enthĂ€lt ### 🔐 OAuth auf Server Remoto > **⚠ WICHTIG fĂŒr den Einsatz von OmniRoute auf VPS/Docker/Remote-Servern** #### OAuth Als OAuth-Anmeldeinformationen wurde OmniRoute nicht in die Liste eingetragen. **Zugelassen fĂŒr `localhost`**. Wenn Sie OmniRoute auf einem Remote-Server (z. B. ``` Error 400: redirect_uri_mismatch ``` #### Lösung: Konfigurieren Sie Ihre eigenen OAuth-Anmeldeinformationen Sie schreiben bitte eine **OAuth 2.0-Client-ID** in der Google Cloud Console mit einem URI fĂŒr Ihren Server. #### Passo a Passo **1. Zugriff auf die Google Cloud Console** Abra: [https://console.cloud.google.com/apis/credentials](https://console.cloud.google.com/apis/credentials) **2. Rufen Sie eine neue OAuth 2.0-Client-ID auf** - Klicken Sie auf **"+ Anmeldeinformationen erstellen"** → **"OAuth-Client-ID"** - Anwendungstyp: **„Webanwendung“** - Name: Escolha qualquer nome (z. B. `OmniRoute Remote`) **3. Adicione als autorisierte Weiterleitungs-URIs** Nein, **"Autorisierte Weiterleitungs-URIs"**, Zusatz: ``` https://seu-servidor.com/callback ``` > Ersetzen Sie `seu-servidor.com` durch die Domain oder die IP Ihres Servers (einschließlich eines Ports, der unbedingt erforderlich ist, z. B.: `http://45.33.32.156:20128/callback`). **4. Als Anmeldedaten speichern und kopieren** Anschließend hat Google die **Client-ID** und das **Client-Geheimnis** angezeigt. **5. Als Umgebungsvariationen konfigurieren** Kein `.env` (oder mehrere Docker-Umgebungsvarianten): ```bash # Para Antigravity: ANTIGRAVITY_OAUTH_CLIENT_ID=seu-client-id.apps.googleusercontent.com ANTIGRAVITY_OAUTH_CLIENT_SECRET=GOCSPX-seu-secret # Para Gemini CLI: GEMINI_OAUTH_CLIENT_ID=seu-client-id.apps.googleusercontent.com GEMINI_OAUTH_CLIENT_SECRET=GOCSPX-seu-secret GEMINI_CLI_OAUTH_CLIENT_SECRET=GOCSPX-seu-secret ``` **6. Neuzugang zu OmniRoute** ```bash # Se usando npm: npm run dev # Se usando Docker: docker restart omniroute ``` **7. Tente conectar novamente** Dashboard → Anbieter → Antigravity (oder Gemini CLI) → OAuth Jetzt hat Google die Nachricht an `https://seu-servidor.com/callback` weitergeleitet und eine Authentifizierungsfunktion durchgefĂŒhrt. --- #### Workaround vorĂŒbergehend (nicht vorab konfiguriert) Wenn Sie vorab keine Berechtigung erhalten möchten, besteht die Möglichkeit, das **URL-Handbuch** zu verwenden: 1. OmniRoute ruft eine von Google autorisierte URL auf 2. Nachdem Sie den Autor autorisiert haben, sendet Google eine Weiterleitung an `localhost` (diese wird jedoch nicht vom Server weitergeleitet). 3. **Kopieren Sie eine vollstĂ€ndige URL**, um sie in Ihren Browser zu laden (bitte beachten Sie, dass die Seite noch nicht abgeschlossen ist). 4. Geben Sie die URL ein, die nicht zur Verbindung mit OmniRoute verwendet werden soll 5. Klicken Sie auf **„Verbinden“** > Diese Problemumgehung funktioniert aufgrund des Autorisierungscodes auf der URL und ist unabhĂ€ngig von der Weiterleitung oder Nicht-Weiterleitung gĂŒltig.
--- ## đŸ› ïž
Klicken Sie hier, um die Tech-Stack-Details zu erweitern - **Laufzeit**: Node.js 18–22 LTS (⚠ Node.js 24+ wird **nicht unterstĂŒtzt** – native BinĂ€rdateien von `better-sqlite3` sind inkompatibel) - **Sprache**: TypeScript 5.9 – **100 % TypeScript** fĂŒr `src/` und `open-sse/` (null `any` in Kernmodulen seit Version 2.0) - **Framework**: Next.js 16 + React 19 + Tailwind CSS 4 - **Datenbank**: LowDB (JSON) + SQLite (DomĂ€nenstatus + Proxy-Protokolle + MCP-PrĂŒfung + Routing-Entscheidungen) - **Schemas**: Zod (MCP-Tool-I/O-Validierung, API-VertrĂ€ge) - **Protokolle**: MCP (stdio/HTTP) + A2A v0.3 (JSON-RPC 2.0 + SSE) - **Streaming**: Vom Server gesendete Ereignisse (SSE) - **Auth**: OAuth 2.0 (PKCE) + JWT + API-SchlĂŒssel + MCP-bezogene Autorisierung - **Testen**: Node.js-TestlĂ€ufer + Vitest (ĂŒber 900 Tests einschließlich Einheit, Integration, E2E)- **CI/CD**: GitHub-Aktionen (automatische NPM-Veröffentlichung + Docker Hub bei Veröffentlichung) - **Website**: [omniroute.online](https://omniroute.online) - **Paket**: [npmjs.com/package/omniroute](https://www.npmjs.com/package/omniroute) - **Docker**: [hub.docker.com/r/diegosouzapw/omniroute](https://hub.docker.com/r/diegosouzapw/omniroute) - **Resilienz**: Leistungsschalter, exponentielles Backoff, Anti-Donner-Herde, TLS-Spoofing, automatische Kombinations-Selbstheilung
--- ## 📖 Dokumentation | Dokument | Beschreibung | | ------------------------------------------------ | ------------------------------------------------------------------ | | [Benutzerhandbuch](docs/USER_GUIDE.md) | Anbieter, Kombinationen, CLI-Integration, Bereitstellung | | [API-Referenz](docs/API_REFERENCE.md) | Alle Endpunkte mit Beispielen | | [MCP-Server](open-sse/mcp-server/README.md) | 16 MCP-Tools, IDE-Konfigurationen, Python/TS/Go-Clients | | [A2A-Server](src/lib/a2a/README.md) | JSON-RPC 2.0-Protokoll, FĂ€higkeiten, Streaming, Aufgabenverwaltung | | [Auto-Combo-Engine](docs/auto-combo.md) | 6-Faktor-Bewertung, Moduspakete, Selbstheilung | | [Fehlerbehebung](docs/TROUBLESHOOTING.md) | HĂ€ufige Probleme und Lösungen | | [Architektur](docs/ARCHITECTURE.md) | Systemarchitektur und Interna | | [Beitrag](CONTRIBUTING.md) | Entwicklungsaufbau und Richtlinien | | [OpenAPI-Spezifikation](docs/openapi.yaml) | OpenAPI 3.0-Spezifikation | | [Sicherheitsrichtlinie](SECURITY.md) | Schwachstellenmeldung und Sicherheitspraktiken | | [VM-Bereitstellung](docs/VM_DEPLOYMENT_GUIDE.md) | VollstĂ€ndige Anleitung: VM + Nginx + Cloudflare-Setup | | [Features-Galerie](docs/FEATURES.md) | Visuelle Dashboard-Tour mit Screenshots | | [Release-Checkliste](docs/RELEASE_CHECKLIST.md) | Validierungsschritte vor der Veröffentlichung | --- ## đŸ—ș FĂŒr OmniRoute sind **210+ Funktionen** in mehreren Entwicklungsphasen geplant. Hier sind die SchlĂŒsselbereiche: | Kategorie | Geplante Funktionen | Höhepunkte | | ------------------------------ | ------------------- | ------------------------------------------------------------------------------------------------------ | | 🧠 **Routing & Intelligenz** | 25+ | Routing mit der niedrigsten Latenz, Tag-basiertes Routing, Quoten-Preflight, P2C-Kontoauswahl | | 🔒 **Sicherheit & Compliance** | 20+ | SSRF-HĂ€rtung, Credential-Cloaking, Ratenbegrenzung pro Endpunkt, VerwaltungsschlĂŒssel-Scoping | | 📊 **Beobachtbarkeit** | 15+ | OpenTelemetry-Integration, Echtzeit-KontingentĂŒberwachung, Kostenverfolgung pro Modell | | 🔄 **Anbieterintegrationen** | 20+ | Dynamische Modellregistrierung, Anbieter-Abklingzeiten, Multi-Account-Codex, Copilot-Kontingentanalyse | | ⚡ **Leistung** | 15+ | Duale Cache-Schicht, Prompt-Cache, Antwort-Cache, Streaming-Keepalive, Batch-API | | 🌐 **Ökosystem** | 10+ | WebSocket-API, Hot-Reload der Konfiguration, verteilter Konfigurationsspeicher, kommerzieller Modus | ### 🔜 Bald erhĂ€ltlich- 🔗 **OpenCode-Integration** – Native AnbieterunterstĂŒtzung fĂŒr die OpenCode AI-Codierungs-IDE - 🔗 **TRAE-Integration** – Volle UnterstĂŒtzung fĂŒr das TRAE AI-Entwicklungsframework - 📩 **Batch-API** – Asynchrone Stapelverarbeitung fĂŒr Massenanfragen - 🎯 **Tag-basiertes Routing** – Leiten Sie Anfragen basierend auf benutzerdefinierten Tags und Metadaten weiter - 💰 **Niedrigste Kostenstrategie** – WĂ€hlen Sie automatisch den gĂŒnstigsten verfĂŒgbaren Anbieter aus > 📝 VollstĂ€ndige Funktionsspezifikationen verfĂŒgbar in [`docs/new-features/`](docs/new-features/) (217 detaillierte Spezifikationen) --- ## đŸ‘„ Mitwirkende [![Mitwirkende](https://contrib.rocks/image?repo=diegosouzapw/OmniRoute&max=100&columns=20&anon=1)](https://github.com/diegosouzapw/OmniRoute/graphs/contributors) ### So leisten Sie einen Beitrag 1. Forken Sie das Repository 2. Erstellen Sie Ihren Feature-Zweig (`git checkout -b feature/amazing-feature`) 3. Übernehmen Sie Ihre Änderungen (`git commit -m 'Add amazing feature'`) 4. Push zum Zweig (`git push origin feature/amazing-feature`) 5. Öffnen Sie eine Pull-Anfrage Detaillierte Richtlinien finden Sie unter [CONTRIBUTING.md](CONTRIBUTING.md). ### Veröffentlichung einer neuen Version ```bash # Create a release — npm publish happens automatically gh release create v2.0.0 --title "v2.0.0" --generate-notes ``` --- ## 📊 Sterngeschichte Star History Chart --- ## 🙏 Danksagungen Besonderer Dank geht an **[9router](https://github.com/decolua/9router)** von **[decolua](https://github.com/decolua)** – das ursprĂŒngliche Projekt, das diesen Fork inspiriert hat. OmniRoute baut auf dieser unglaublichen Grundlage mit zusĂ€tzlichen Funktionen, multimodalen APIs und einer vollstĂ€ndigen Neufassung von TypeScript auf. Besonderer Dank geht an **[CLIProxyAPI](https://github.com/router-for-me/CLIProxyAPI)** – die ursprĂŒngliche Go-Implementierung, die diese JavaScript-Portierung inspiriert hat. --- ## 📄 Lizenz MIT-Lizenz – Einzelheiten finden Sie unter [LIZENZ](LICENSE). ---
BErstellt mit ❀ fĂŒr Entwickler, die rund um die Uhr programmieren
omniroute.online