OmniRoute Dashboard # 🚀 OmniRoute — Den gratis AI-gateway 🌐 **[English](#-omniroute--the-free-ai-gateway)** | **[Português (BR)](#-omniroute--gateway-de-ia-gratuito)** ### Stop aldrig med at kode. Smart routing til **GRATIS og billige AI-modeller** med automatisk fallback. _Din universelle API-proxy — ét slutpunkt, 36+ udbydere, ingen nedetid._ **Chatafslutninger • Indlejringer • Billedgenerering • Lyd • Genrangering • 100 % TypeScript** --- ### 🤖 Gratis AI-udbyder til dine foretrukne kodningsagenter _Tilslut ethvert AI-drevet IDE- eller CLI-værktøj gennem OmniRoute - gratis API-gateway til ubegrænset kodning._
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 agenter forbinder via http://localhost:20128/v1 eller http://cloud.omniroute.online/v1__OMNI_TOKEN_245, —limited one config and kvote --- [![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) [![License](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) • [🚀 Quick Start](#-quick-start) • [💡 Features](#-key-features) • [📖 Docs](#-documentation) • [💰 Pricing](#-pricing-at-a-glance) • [💬 WhatsApp](https://chat.whatsapp.com/JI7cDQ1GyaiDHhVBpLxf8b?mode=gi_t) 🌐 **Available in:** 🇺🇸 [English](README.md) | 🇧🇷 [Português (Brasil)](README.pt-BR.md) | 🇪🇸 [Español](README.es.md) | 🇫🇷 [Français](README.fr.md) | 🇮🇹 [Italiano](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) | 🇩🇰 [Dansk](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) | 🇳🇱 [Nederlands](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) | 🇵🇭 [Filipino](README.phi.md)
--- ## 🤔 Hvorfor OmniRoute? **Stop med at spilde penge og nå grænser:** - Abonnementskontingent udløber ubrugt hver måned - Hastighedsgrænser stopper dig midtkodning - Dyre API'er ($20-50/måned pr. udbyder) - Manuel skift mellem udbydere **OmniRoute løser dette:** - ✅ **Maksimer abonnementer** - Spor kvote, brug hver bit før nulstilling - ✅ **Automatisk fallback** - Abonnement → API-nøgle → Billig → Gratis, ingen nedetid - ✅ **Multi-konto** - Round-robin mellem konti pr. udbyder - ✅ **Universal** - Virker med Claude Code, Codex, Gemini CLI, Cursor, Cline, OpenClaw, ethvert CLI-værktøj --- ## 🔄 Sådan virker det ``` ┌─────────────┐ │ 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 ``` --- ## ⚡ Hurtig start **1. Installer globalt:** ```bash npm install -g omniroute omniroute ``` 🎉 Dashboard åbner kl. `http://localhost:20128` | Kommando | Beskrivelse | | ----------------------- | --------------------------------- | | `omniroute` | Start server (standardport 20128) | | `omniroute --port 3000` | Brug tilpasset port | | `omniroute --no-open` | Åbn ikke browseren automatisk | | `omniroute --help` | Vis hjælp | **2. Tilslut en GRATIS udbyder:** Dashboard → Udbydere → Connect **Claude Code** eller **Antigravity** → OAuth-login → Færdig! **3. Brug i dit CLI-værktøj:** ``` Claude Code/Codex/Gemini CLI/OpenClaw/Cursor/Cline Settings: Endpoint: http://localhost:20128/v1 API Key: [copy from dashboard] Model: if/kimi-k2-thinking ``` **Det var det!** Begynd at kode med GRATIS AI-modeller. **Alternativt — kør fra kilden:** ```bash cp .env.example .env npm install PORT=20128 NEXT_PUBLIC_BASE_URL=http://localhost:20128 npm run dev ``` --- ## 🐳 Docker OmniRoute er tilgængelig som et offentligt Docker-billede på [Docker Hub](https://hub.docker.com/r/diegosouzapw/omniroute). **Hurtigt løb:** ```bash docker run -d \ --name omniroute \ --restart unless-stopped \ -p 20128:20128 \ -v omniroute-data:/app/data \ diegosouzapw/omniroute:latest ``` **Med miljøfil:** ```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 ``` **Brug af 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 ``` | Billede | Tag | Størrelse | Beskrivelse | | ------------------------ | -------- | --------- | ------------------------- | | `diegosouzapw/omniroute` | `latest` | ~250MB | Seneste stabile udgivelse | | `diegosouzapw/omniroute` | `1.0.3` | ~250MB | Nuværende version | --- ## 💰 Prissætning på et øjeblik | Tier | Udbyder | Omkostninger | Kvote nulstilling | Bedst til | | ----------------- | ----------------- | --------------------------- | ------------------ | -------------------------- | | **💳 ABONNEMENT** | Claude Code (Pro) | 20 USD/md. | 5 timer + ugentlig | Allerede abonneret | | | Codex (Plus/Pro) | $20-200/md. | 5 timer + ugentlig | OpenAI-brugere | | | Gemini CLI | **GRATIS** | 180K/md + 1K/dag | Alle sammen! | | | GitHub Copilot | $10-19/md. | Månedlig | GitHub-brugere | | **🔑 API NØGLE** | NVIDIA NIM | **GRATIS** (1000 kreditter) | Engangs | Gratis tier test | | | DeepSeek | Betal pr. brug | Ingen | Bedste pris/kvalitet | | | Groq | Gratis niveau + betalt | Sats begrænset | Ultrahurtig slutning | | | xAI (Grok) | Betal pr. brug | Ingen | Grok modeller | | | Mistral | Gratis niveau + betalt | Sats begrænset | Europæisk AI | | | OpenRouter | Betal pr. brug | Ingen | 100+ modeller | | **💰 BILLIG** | GLM-4.7 | 0,6 USD/1 mio. | Dagligt 10:00 | Budget backup | | | MiniMax M2.1 | $0,2/1 mio. | 5-timers rullende | Billigste mulighed | | | Kimi K2 | 9 USD/md. lejlighed | 10M tokens/md. | Forudsigelige omkostninger | | **🆓 GRATIS** | iFlow | $0 | Ubegrænset | 8 modeller gratis | | | Qwen | $0 | Ubegrænset | 3 modeller gratis | | | Kiro | $0 | Ubegrænset | Claude gratis | **💡 Pro-tip:** Start med Gemini CLI (180K gratis/måned) + iFlow (ubegrænset gratis) combo = $0 omkostninger! --- ## 🎯 Use Cases ### Case 1: "Jeg har Claude Pro-abonnement" **Problem:** Kvoten udløber ubrugt, satsgrænser under tung kodning ``` Combo: "maximize-claude" 1. cc/claude-opus-4-6 (use subscription fully) 2. glm/glm-4.7 (cheap backup when quota out) 3. if/kimi-k2-thinking (free emergency fallback) Monthly cost: $20 (subscription) + ~$5 (backup) = $25 total vs. $20 + hitting limits = frustration ``` ### Case 2: "Jeg vil have nul omkostninger" **Problem:** Har ikke råd til abonnementer, har brug for pålidelig AI-kodning ``` Combo: "free-forever" 1. gc/gemini-3-flash (180K free/month) 2. if/kimi-k2-thinking (unlimited free) 3. qw/qwen3-coder-plus (unlimited free) Monthly cost: $0 Quality: Production-ready models ``` ### Case 3: "Jeg har brug for 24/7 kodning, ingen afbrydelser" **Problem:** Deadlines, har ikke råd til nedetid ``` Combo: "always-on" 1. cc/claude-opus-4-6 (best quality) 2. cx/gpt-5.2-codex (second subscription) 3. glm/glm-4.7 (cheap, resets daily) 4. minimax/MiniMax-M2.1 (cheapest, 5h reset) 5. if/kimi-k2-thinking (free unlimited) Result: 5 layers of fallback = zero downtime ``` ### Case 4: "Jeg vil have GRATIS AI i OpenClaw" **Problem:** Har brug for AI-assistent i beskedapps, helt gratis ``` Combo: "openclaw-free" 1. if/glm-4.7 (unlimited free) 2. if/minimax-m2.1 (unlimited free) 3. if/kimi-k2-thinking (unlimited free) Monthly cost: $0 Access via: WhatsApp, Telegram, Slack, Discord, iMessage, Signal... ``` --- ## 💡 Nøglefunktioner ### 🧠 Core Routing & Intelligence | Funktion | Hvad det gør | | ---------------------------------- | -------------------------------------------------------------------------------------- | | 🎯 **Smart 4-lags fallback** | Auto-rute: Abonnement → API-nøgle → Billig → Gratis | | 📊 **Kvotesporing i realtid** | Live token count + nulstil nedtælling pr. udbyder | | 🔄 **Formatoversættelse** | OpenAI ↔ Claude ↔ Gemini ↔ Markør ↔ Kiro sømløs + respons sanitisering | | 👥 **Multi-Account Support** | Flere konti pr. udbyder med intelligent valg | | 🔄 **Automatisk token-opdatering** | OAuth-tokens opdateres automatisk med genforsøg | | 🎨 **Tilpassede kombinationer** | 6 strategier: fill-first, round-robin, p2c, random, mindst brugt, omkostningsoptimeret | | 🧩 **Tilpassede modeller** | Tilføj ethvert model-id til enhver udbyder | | 🌐 **Wildcard-router** | Rut `provider/*` mønstre til enhver udbyder dynamisk | | 🧠 **Tænkende budget** | Passthrough, auto, brugerdefinerede og adaptive tilstande til ræsonnerende modeller | | 💬 **System Prompt Injection** | Global systemprompt anvendt på tværs af alle anmodninger | | 📄 **Responses API** | Fuld OpenAI Responses API (`/v1/responses`) understøttelse af Codex | ### 🎵 Multi-Modal API'er | Funktion | Hvad det gør | | ------------------------ | -------------------------------------------------- | | 🖼️ **Billedgenerering** | `/v1/images/generations` — 4 udbydere, 9+ modeller | | 📐 **Indlejringer** | `/v1/embeddings` — 6 udbydere, 9+ modeller | | 🎤 **Lydtransskription** | `/v1/audio/transcriptions` — Whisper-kompatibel | | 🔊 **Tekst-til-tale** | `/v1/audio/speech` — Multi-udbyder lydsyntese | | 🛡️ **Moderationer** | `/v1/moderations` — Indholdssikkerhedstjek | | 🔀 **Omrangering** | `/v1/rerank` — Omrangering af dokumentrelevans | ### 🛡️ Modstandsdygtighed og sikkerhed | Funktion | Hvad det gør | | -------------------------------- | ------------------------------------------------------------------------------ | | 🔌 **Circuit Breaker** | Automatisk åbning/lukning pr. udbyder med konfigurerbare tærskler | | 🛡️ **Anti-tordenbesætning** | Mutex + semafor-hastighedsgrænse for API-nøgleudbydere | | 🧠 **Semantisk cache** | To-lags cache (signatur + semantisk) reducerer omkostninger og ventetid | | ⚡ **Anmod om idempotens** | 5s dedup-vindue for duplikerede anmodninger | | 🔒 **TLS Fingerprint Spoofing** | Omgå TLS-baseret botdetektion via wreq-js | | 🌐 **IP-filtrering** | Tilladelsesliste/blokeringsliste til API-adgangskontrol | | 📊 **Redigerbare satsgrænser** | Konfigurerbar RPM, min. gap og maks. samtidighed på systemniveau | | 🛡 **API-endepunktsbeskyttelse** | Auth gating + udbyderblokering for `/models` slutpunktet | | 🔒 **Proxysynlighed** | Farvekodede badges: 🟢 global, 🟡 udbyder, 🔵 per forbindelse med IP-skærm | | 🌐 **3-Level Proxy Config** | Konfigurer proxyer på globalt niveau, pr. udbyder eller pr. forbindelsesniveau | ### 📊 Observerbarhed og analyse | Funktion | Hvad det gør | | --------------------------- | ------------------------------------------------------------------------------------- | | 📝 **Anmod om logning** | Fejlretningstilstand med fuld anmodnings-/svarlogs | | 💾 **SQLite Proxy Logs** | Vedvarende proxy-logfiler overlever genstart af server | | 📊 **Analytics Dashboard** | Recharts-drevet: statkort, modelbrugsdiagram, udbydertabel | | 📈 **Fremskridtssporing** | Opt-in SSE-fremskridtsbegivenheder til streaming | | 🧪 **LLM-evalueringer** | Gyldne sæt test med 4 kampstrategier | | 🔍 **Anmod om telemetri** | p50/p95/p99 latenstidsaggregering + X-Request-Id-sporing | | 📋 **Log Dashboard** | Samlet side med 4 faner: Anmodningslogfiler, Proxylogfiler, Revisionslogfiler, Konsol | | 🖥️ **Konsol Log Viewer** | Real-time terminal-stil fremviser med niveau filter, søgning, auto-scroll | | 📑 **Filbaseret logning** | Konsolinterceptor fanger alt output til JSON-logfil med rotation | | 🏥 **Sundhedskontrolpanel** | Systemets oppetid, strømafbrydertilstande, lockouts, cachestatistik | | 💰 **Omkostningssporing** | Budgetstyring + priskonfiguration pr. model | ### ☁️ Implementering og synkronisering | Funktion | Hvad det gør | | ---------------------------- | ------------------------------------------------------------------------ | | 💾 **Cloud Sync** | Synkroniser konfiguration på tværs af enheder via Cloudflare Workers | | 🌐 **Deploy hvor som helst** | Localhost, VPS, Docker, Cloudflare Workers | | 🔑 **API Key Management** | Generer, roter og omfang API-nøgler pr. udbyder | | 🧙 **Onboarding Wizard** | 4-trins guidet opsætning for førstegangsbrugere | | 🔧 **CLI Tools Dashboard** | Et-klik konfigurer Claude, Codex, Cline, OpenClaw, Kilo, Antigravity | | 🔄 **DB-sikkerhedskopier** | Automatisk backup, gendannelse, eksport og import for alle indstillinger | | 🌐 **Internationalisering** | Fuld i18n med next-intl — engelsk + portugisisk (Brasilien) support | | 🌍 **Sprogvælger** | Globusikon i overskriften til sprogskift i realtid (🇺🇸/🇧🇷) | | 📂 **Tilpasset datakatalog** | `DATA_DIR` env var for at tilsidesætte standard `~/.omniroute` lagersti |
📖 Funktionsdetaljer ### 🎯 Smart 4-Tier Fallback Opret kombinationer med automatisk fallback: ``` Combo: "my-coding-stack" 1. cc/claude-opus-4-6 (your subscription) 2. nvidia/llama-3.3-70b (free NVIDIA API) 3. glm/glm-4.7 (cheap backup, $0.6/1M) 4. if/kimi-k2-thinking (free fallback) → Auto switches when quota runs out or errors occur ``` ### 📊 Kvotesporing i realtid - Tokenforbrug pr. udbyder - Nulstil nedtælling (5 timer, dagligt, ugentligt) - Omkostningsestimat for betalte niveauer - Månedlige udgiftsrapporter ### 🔄 Formatoversættelse Problemfri oversættelse mellem formater: - **OpenAI** ↔ **Claude** ↔ **Gemini** ↔ **OpenAI-svar** - Dit CLI-værktøj sender OpenAI-format → OmniRoute oversætter → Udbyder modtager oprindeligt format - Fungerer med ethvert værktøj, der understøtter brugerdefinerede OpenAI-endepunkter - **Responssanering** — Fjerner ikke-standardfelter for streng OpenAI SDK-kompatibilitet - **Rollenormalisering** — `developer` → `system` for ikke-OpenAI; `system` → `user` til GLM/ERNIE-modeller - **Tænk tag-udtrækning** — `` blokke → `reasoning_content` til tænkende modeller - **Struktureret output** — `json_schema` → Gemini's `responseMimeType`/`responseSchema` ### 👥 Support til flere konti - Tilføj flere konti pr. udbyder - Auto round-robin eller prioritetsbaseret routing - Fallback til næste konto, når man rammer kvoten ### 🔄 Automatisk token-opdatering - OAuth-tokens opdateres automatisk før udløb - Ingen manuel gengodkendelse nødvendig - Problemfri oplevelse på tværs af alle udbydere ### 🎨 Brugerdefinerede kombinationer - Opret ubegrænsede modelkombinationer - 6 strategier: fill-first, round-robin, power-of-to-choices, tilfældig, mindst brugt, omkostningsoptimeret - Del kombinationer på tværs af enheder med Cloud Sync ### 🏥 Health Dashboard - Systemstatus (oppetid, version, hukommelsesforbrug) - Strømafbrydertilstande pr. udbyder (lukket/åbent/halvt åbent) - Takstgrænsestatus og aktive lockouts - Signatur cache statistik - Latency-telemetri (p50/p95/p99) + prompt-cache - Nulstil sundhedsstatus med et enkelt klik ### 🔧 Oversætterlegeplads OmniRoute inkluderer en kraftfuld indbygget oversætterlegeplads med **4 tilstande** til fejlretning, test og overvågning af API-oversættelser: | Tilstand | Beskrivelse | | ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | **💻 Legeplads** | Direkte formatoversættelse — indsæt enhver API-anmodningstekst og se øjeblikkeligt, hvordan OmniRoute oversætter det mellem udbyderformater (OpenAI ↔ Claude ↔ Gemini ↔ Responses API). Indeholder eksempelskabeloner og automatisk genkendelse af formater. | | **💬 Chattester** | Send rigtige chatanmodninger gennem OmniRoute og se den fulde rundrejse: dit input, den oversatte anmodning, udbyderens svar og det oversatte svar tilbage. Uvurderlig til validering af combo routing. | | **🧪 Test bænk** | Batch-testtilstand – definer flere testcases med forskellige input og forventede output, kør dem alle på én gang, og sammenlign resultater på tværs af udbydere og modeller. | | **📱 Live Monitor** | Overvågning af anmodninger i realtid — se indgående anmodninger, mens de flyder gennem OmniRoute, se formatoversættelser, der foregår live, og identificer problemer med det samme. | **Adgang:** Dashboard → Oversætter (sidebjælke) ### 💾 Cloud Sync - Synkroniser udbydere, kombinationer og indstillinger på tværs af enheder - Automatisk baggrundssynkronisering - Sikker krypteret opbevaring
--- ## 📖 Opsætningsvejledning
💳 Abonnementsudbydere ### 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 ``` **Prof tip:** Brug Opus til komplekse opgaver, Sonnet for hurtighed. OmniRoute sporer kvote pr. model! ### 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 (GRATIS 180K/måned!) ```bash Dashboard → Providers → Connect Gemini CLI → Google OAuth → 180K completions/month + 1K/day Models: gc/gemini-3-flash-preview gc/gemini-2.5-pro ``` **Bedste værdi:** Kæmpe gratis niveau! Brug dette før betalte niveauer. ### 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-nøgleudbydere ### NVIDIA NIM (GRATIS 1000 kreditter!) 1. Tilmeld dig: [build.nvidia.com](https://build.nvidia.com) 2. Få gratis API-nøgle (1000 slutningskreditter inkluderet) 3. Dashboard → Tilføj udbyder → NVIDIA NIM: - API-nøgle: `nvapi-your-key` **Modeller:** `nvidia/llama-3.3-70b-instruct`, `nvidia/mistral-7b-instruct` og mere end 50 **Prof tip:** OpenAI-kompatibel API — fungerer problemfrit med OmniRoutes formatoversættelse! ### DeepSeek 1. Tilmeld dig: [platform.deepseek.com](https://platform.deepseek.com) 2. Hent API-nøgle 3. Dashboard → Tilføj udbyder → DeepSeek **Modeller:** `deepseek/deepseek-chat`, `deepseek/deepseek-coder` ### Groq (gratis niveau tilgængelig!) 1. Tilmeld dig: [console.groq.com](https://console.groq.com) 2. Få API-nøgle (gratis niveau inkluderet) 3. Dashboard → Tilføj udbyder → Groq **Modeller:** `groq/llama-3.3-70b`, `groq/mixtral-8x7b` **Prof tip:** Ultrahurtig slutning — bedst til realtidskodning! ### OpenRouter (100+ modeller) 1. Tilmeld dig: [openrouter.ai](https://openrouter.ai) 2. Hent API-nøgle 3. Dashboard → Tilføj udbyder → OpenRouter **Modeller:** Få adgang til mere end 100 modeller fra alle større udbydere via en enkelt API-nøgle.
💰 Billige udbydere (backup) ### GLM-4.7 (Daglig nulstilling, $0,6/1 mio.) 1. Tilmeld dig: [Zhipu AI](https://open.bigmodel.cn/) 2. Hent API-nøgle fra Coding Plan 3. Dashboard → Tilføj API-nøgle: - Udbyder: `glm` - API-nøgle: `your-key` **Brug:** `glm/glm-4.7` **Pro-tip:** Coding Plan tilbyder 3× kvote til 1/7 pris! Nulstil dagligt 10:00. ### MiniMax M2.1 (5 timers nulstilling, $0,20/1 mio.) 1. Tilmeld dig: [MiniMax](https://www.minimax.io/) 2. Hent API-nøgle 3. Dashboard → Tilføj API-nøgle **Brug:** `minimax/MiniMax-M2.1` **Prof tip:** Billigste mulighed for lang sammenhæng (1M tokens)! ### Kimi K2 ($9/måned lejlighed) 1. Abonner: [Moonshot AI](https://platform.moonshot.ai/) 2. Hent API-nøgle 3. Dashboard → Tilføj API-nøgle **Brug:** `kimi/kimi-latest` **Prof tip:** Fast $9/måned for 10M tokens = $0,90/1M effektive omkostninger!
🆓 GRATIS udbydere (nødbackup) ### iFlow (8 GRATIS modeller) ```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 GRATIS modeller) ```bash Dashboard → Connect Qwen → Device code authorization → Unlimited usage Models: qw/qwen3-coder-plus qw/qwen3-coder-flash ``` ### Kiro (Claude GRATIS) ```bash Dashboard → Connect Kiro → AWS Builder ID or Google/GitHub → Unlimited usage Models: kr/claude-sonnet-4.5 kr/claude-haiku-4.5 ```
🎨 Opret kombinationer ### Eksempel 1: Maksimer abonnement → Billig 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 ``` ### Eksempel 2: Kun gratis (nul omkostninger) ``` 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 ### Markør 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 Brug siden **CLI Tools** i dashboardet til konfiguration med et enkelt klik, eller rediger `~/.claude/settings.json` manuelt. ### Codex CLI ```bash export OPENAI_BASE_URL="http://localhost:20128" export OPENAI_API_KEY="your-omniroute-api-key" codex "your prompt" ``` ### OpenClaw **Mulighed 1 — Dashboard (anbefalet):** ``` Dashboard → CLI Tools → OpenClaw → Select Model → Apply ``` **Mulighed 2 — Manuel:** Rediger `~/.openclaw/openclaw.json`: ```json { "models": { "providers": { "omniroute": { "baseUrl": "http://127.0.0.1:20128/v1", "apiKey": "sk_omniroute", "api": "openai-completions" } } } } ``` > **Bemærk:** OpenClaw fungerer kun med lokale OmniRoute. Brug `127.0.0.1` i stedet for `localhost` for at undgå problemer med IPv6-opløsning. ### Cline / Fortsæt / RooCode ``` Settings → API Configuration: Provider: OpenAI Compatible Base URL: http://localhost:20128/v1 API Key: [from OmniRoute dashboard] Model: if/kimi-k2-thinking ```
--- ## 📊 Tilgængelige modeller
Se alle tilgængelige modeller **Claude-kode (`cc/`)** - Pro/Max: - `cc/claude-opus-4-6` - `cc/claude-sonnet-4-5-20250929` - `cc/claude-haiku-4-5-20251001` **Codex (`cx/`)** - Plus/Pro: - `cx/gpt-5.2-codex` - `cx/gpt-5.1-codex-max` **Gemini CLI (`gc/`)** - GRATIS: - `gc/gemini-3-flash-preview` - `gc/gemini-2.5-pro` **GitHub Copilot (`gh/`)**: - `gh/gpt-5` - `gh/claude-4.5-sonnet` **NVIDIA NIM (`nvidia/`)** - GRATIS kreditter: - `nvidia/llama-3.3-70b-instruct` - `nvidia/mistral-7b-instruct` - 50+ flere modeller på [build.nvidia.com](https://build.nvidia.com) **GLM (`glm/`)** - 0,6 USD/1 mio. - `glm/glm-4.7` **MiniMax (`minimax/`)** - 0,2 USD/1 mio. - `minimax/MiniMax-M2.1` **iFlow (`if/`)** - GRATIS: - `if/kimi-k2-thinking` - `if/qwen3-coder-plus` - `if/deepseek-r1` - `if/glm-4.7` - `if/minimax-m2` **Qwen (`qw/`)** - GRATIS: - `qw/qwen3-coder-plus` - `qw/qwen3-coder-flash` **Kiro (`kr/`)** - GRATIS: - `kr/claude-sonnet-4.5` - `kr/claude-haiku-4.5` **OpenRouter (`or/`)** - 100+ modeller: - `or/anthropic/claude-4-sonnet` - `or/google/gemini-2.5-pro` - Enhver model fra [openrouter.ai/models](https://openrouter.ai/models)
--- ## 🧪 Evalueringer (evalueringer) OmniRoute inkluderer en indbygget evalueringsramme til at teste LLM-svarkvaliteten mod et gyldent sæt. Få adgang til det via **Analytics → Evals** i dashboardet. ### Indbygget gyldent sæt Det forudindlæste "OmniRoute Golden Set" indeholder 10 testcases, der dækker: - Hilsen, matematik, geografi, kodegenerering - JSON format compliance, oversættelse, markdown - Sikkerhedsafvisning (skadeligt indhold), optælling, boolsk logik ### Evalueringsstrategier | Strategi | Beskrivelse | Eksempel | | ---------- | ----------------------------------------------------------------------- | -------------------------------- | | `exact` | Output skal matche nøjagtigt | `"4"` | | `contains` | Output skal indeholde understreng (uafhængig af store og små bogstaver) | `"Paris"` | | `regex` | Output skal matche regex-mønster | `"1.*2.*3"` | | `custom` | Brugerdefineret JS-funktion returnerer sand/falsk | `(output) => output.length > 10` | --- ## 🔐 OAuth em Servidor Remoto (Remote OAuth Setup) > **⚠️ VIGTIGT til brugere af OmniRoute med VPS/Docker/server-fjernbetjening** ### Kan du bruge Antigravity / Gemini CLI til at udføre fjernbetjeninger? Os testedores **Antigravity** og **Gemini CLI** usam **Google OAuth 2.0** for autenticação. O Google exige que a `redirect_uri` usada no fluxo OAuth seja **exatamente** uma das URIs pré-cadastradas no Google Cloud Console do aplicativo. Som credenciais OAuth embutidas no OmniRoute estão cadastradas **apenas para `localhost`**. Quando você acessa o OmniRoute em um servidor remoto (ex: `https://omniroute.meuservidor.com`), o Google afviser en autenticação com: ``` Error 400: redirect_uri_mismatch ``` ### Løsning: Konfigurer OAuth, der er godkendt Você precisa criar um **OAuth 2.0 Client ID** ingen Google Cloud Console med en URI, der udfører denne service. #### Passo a passo **1. Adgang til Google Cloud Console** Abra: [https://console.cloud.google.com/apis/credentials](https://console.cloud.google.com/apis/credentials) **2. Crie um novo OAuth 2.0 Client ID** - Klik på dem **"+ Opret legitimationsoplysninger"** → **"OAuth-klient-id"** - Tipo de aplicativo: **"Webapplikation"** - Navn: escolha qualquer nome (eks.: `OmniRoute Remote`) **3. Adicione som autoriseret omdirigerings-URI** Ingen campo **"Autoriseret omdirigerings-URI'er"**, adicione: ``` https://seu-servidor.com/callback ``` > Substitua `seu-servidor.com` pelo domínio ou IP do seu servidor (inclua a porta se necessário, ex: `http://45.33.32.156:20128/callback`). **4. Salve e copy as credenciais** Após criar, o Google mostrará o **Client ID** e o **Client Secret**. **5. Konfigurer som variáveis de ambiente** No seu `.env` (ou nas variáveis de ambiente do Docker): ```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. Reinicie o OmniRoute** ```bash # Se usando npm: npm run dev # Se usando Docker: docker restart omniroute ``` **7. Tente conectar novamente** Dashboard → Udbydere → Antigravity (ou Gemini CLI) → OAuth Agora o Google redirecionará corretamente para `https://seu-servidor.com/callback` og autenticação funcionará. --- ### Løsning midlertidigt (som konfigureret credenciais próprias) Se não quiser criar credenciais próprias agora, ainda é possível usar o fluxo **manual de URL**: 1. O OmniRoute abrirá en URL de autorização til Google 2. Após você autorizar, o Google tentará redirecionar para `localhost` (que falha no servidor remoto) 3. **Kopier en URL komplet** da barra de endereço do sin browser (mesmo que a página não carregue) 4. Cole essa URL no campo que aparece no modal de conexão do OmniRoute 5. Klik på **"Forbind"** > Este workaround funciona porque or código de autorização na URL é válido independente do redirect ter carregado or não. --- ## 🐛 Fejlfinding
Klik for at udvide fejlfindingsvejledning **"Sprogmodellen leverede ikke beskeder"** - Udbyderkvote opbrugt → Tjek dashboardkvotesporing - Løsning: Brug combo fallback eller skift til et billigere niveau **Satsbegrænsende** - Abonnementskontingent ude → Fallback til GLM/MiniMax - Tilføj kombination: `cc/claude-opus-4-6 → glm/glm-4.7 → if/kimi-k2-thinking` **OAuth-token er udløbet** - Automatisk genopfrisket af OmniRoute - Hvis problemerne fortsætter: Dashboard → Udbyder → Genopret forbindelse **Høje omkostninger** - Tjek brugsstatistik i Dashboard → Omkostninger - Skift primær model til GLM/MiniMax - Brug gratis niveau (Gemini CLI, iFlow) til ikke-kritiske opgaver **Dashboard åbner på forkert port** - Sæt `PORT=20128` og `NEXT_PUBLIC_BASE_URL=http://localhost:20128` **Skysynkroniseringsfejl** - Bekræft `BASE_URL` peger på din løbeforekomst - Bekræft `CLOUD_URL` point til dit forventede cloud-endepunkt - Hold `NEXT_PUBLIC_*` værdier på linje med værdier på serversiden **Første login virker ikke** - Tjek `INITIAL_PASSWORD` i `.env` - Hvis den ikke er angivet, er reserveadgangskoden `123456` **Ingen anmodningslogfiler** - Indstil `ENABLE_REQUEST_LOGS=true` i `.env` **Forbindelsestest viser "Ugyldig" for OpenAI-kompatible udbydere** - Mange udbydere eksponerer ikke et `/models` slutpunkt - OmniRoute v1.0.6+ inkluderer fallback-validering via chatafslutninger - Sørg for, at basis-URL'en inkluderer suffikset `/v1`
--- ## 🛠️ Tech Stack - **Runtime**: Node.js 18–22 LTS (⚠️ Node.js 24+ er **ikke understøttet** — `better-sqlite3` native binære filer er inkompatible) - **Sprog**: TypeScript 5.9 — **100 % TypeScript** på tværs af `src/` og `open-sse/` (v1.0.6) - **Framework**: Next.js 16 + React 19 + Tailwind CSS 4 - **Database**: LowDB (JSON) + SQLite (domænetilstand + proxylogfiler) - **Streaming**: Server-sendte hændelser (SSE) - **Auth**: OAuth 2.0 (PKCE) + JWT + API-nøgler - **Test**: Node.js testløber (368+ enhedstest) - **CI/CD**: GitHub-handlinger (automatisk npm-udgivelse + Docker Hub ved udgivelse) - **Websted**: [omniroute.online](https://omniroute.online) - **Pakke**: [npmjs.com/package/omniroute](https://www.npmjs.com/package/omniroute) - **Docker**: [hub.docker.com/r/diegosouzapw/omniroute](https://hub.docker.com/r/diegosouzapw/omniroute) - **Resiliens**: Circuit breaker, eksponentiel backoff, anti-tordenbesætning, TLS spoofing --- ## 📖 Dokumentation | Dokument | Beskrivelse | | -------------------------------------------- | -------------------------------------------------------- | | [User Guide](docs/USER_GUIDE.md) | Udbydere, kombinationer, CLI-integration, implementering | | [API Reference](docs/API_REFERENCE.md) | Alle endepunkter med eksempler | | [Troubleshooting](docs/TROUBLESHOOTING.md) | Almindelige problemer og løsninger | | [Architecture](docs/ARCHITECTURE.md) | Systemarkitektur og indre | | [Contributing](CONTRIBUTING.md) | Udviklingsopsætning og retningslinjer | | [OpenAPI Spec](docs/openapi.yaml) | OpenAPI 3.0-specifikation | | [Security Policy](SECURITY.md) | Sårbarhedsrapportering og sikkerhedspraksis | | [VM Deployment](docs/VM_DEPLOYMENT_GUIDE.md) | Komplet guide: VM + nginx + Cloudflare opsætning | | [Features Gallery](docs/FEATURES.md) | Visuel dashboard-rundvisning med skærmbilleder | ### 📸 Dashboard Preview
Klik for at se skærmbilleder af dashboard | Side | Skærmbillede | | ----------------- | ------------------------------------------------- | | **Udbydere** | ![Providers](docs/screenshots/01-providers.png) | | **Komboer** | ![Combos](docs/screenshots/02-combos.png) | | **Analyse** | ![Analytics](docs/screenshots/03-analytics.png) | | **Sundhed** | ![Health](docs/screenshots/04-health.png) | | **Oversætter** | ![Translator](docs/screenshots/05-translator.png) | | **Indstillinger** | ![Settings](docs/screenshots/06-settings.png) | | **CLI-værktøjer** | ![CLI Tools](docs/screenshots/07-cli-tools.png) | | **Brugslogfiler** | ![Usage](docs/screenshots/08-usage.png) | | **Endpunkt** | ![Endpoint](docs/screenshots/09-endpoint.png) |
--- ## 🗺️ Køreplan OmniRoute har **210+ funktioner planlagt** på tværs af flere udviklingsfaser. Her er nøgleområderne: | Kategori | Planlagte funktioner | Højdepunkter | | -------------------------------- | -------------------- | ---------------------------------------------------------------------------------------------------------- | | 🧠 **Routing & intelligens** | 25+ | Routing med laveste latens, tag-baseret routing, kvote preflight, valg af P2C-konto | | 🔒 **Sikkerhed og overholdelse** | 20+ | SSRF-hærdning, tilsløring af legitimationsoplysninger, hastighedsgrænse pr. slutpunkt, styringsnøgleomfang | | 📊 **Observabilitet** | 15+ | OpenTelemetry-integration, kvoteovervågning i realtid, omkostningssporing pr. model | | 🔄 **Udbyderintegrationer** | 20+ | Dynamisk modelregistrering, udbydernedkøling, multi-konto Codex, Copilot-kvoteparsing | | ⚡ **Ydeevne** | 15+ | Dobbelt cachelag, promptcache, svarcache, streaming keepalive, batch API | | 🌐 **Økosystem** | 10+ | WebSocket API, config hot-reload, distribueret config butik, kommerciel tilstand | ### 🔜 Kommer snart - 🔗 **OpenCode-integration** — Native udbyderunderstøttelse af OpenCode AI-kodnings-IDE - 🔗 **TRAE-integration** — Fuld understøttelse af TRAE AI-udviklingsrammen - 📦 **Batch API** — Asynkron batchbehandling til masseanmodninger - 🎯 **Tag-baseret Routing** — Ruteanmodninger baseret på tilpassede tags og metadata - 💰 **Laveste omkostningsstrategi** — Vælg automatisk den billigste tilgængelige udbyder > 📝 Fuld funktionsspecifikationer tilgængelige i [**OMNI_TOKEN_147**](docs/new-features/) (217 detaljerede specifikationer) --- ## 📧 Support > 💬 **Tilmeld dig vores fællesskab!** [WhatsApp Group](https://chat.whatsapp.com/JI7cDQ1GyaiDHhVBpLxf8b?mode=gi_t) — Få hjælp, del tips, og hold dig opdateret. - **Websted**: [omniroute.online](https://omniroute.online) - **GitHub**: [github.com/diegosouzapw/OmniRoute](https://github.com/diegosouzapw/OmniRoute) - **Problemer**: [github.com/diegosouzapw/OmniRoute/issues](https://github.com/diegosouzapw/OmniRoute/issues) - **WhatsApp**: [Community Group](https://chat.whatsapp.com/JI7cDQ1GyaiDHhVBpLxf8b?mode=gi_t) - **Originalt projekt**: [9router by decolua](https://github.com/decolua/9router) --- ## 👥 Bidragydere [![Contributors](https://contrib.rocks/image?repo=diegosouzapw/OmniRoute&max=100&columns=20&anon=1)](https://github.com/diegosouzapw/OmniRoute/graphs/contributors) ### Sådan bidrager du 1. Fork depotet 2. Opret din funktionsgren (`git checkout -b feature/amazing-feature`) 3. Bekræft dine ændringer (`git commit -m 'Add amazing feature'`) 4. Skub til grenen (`git push origin feature/amazing-feature`) 5. Åbn en pull-anmodning Se [CONTRIBUTING.md](CONTRIBUTING.md) for detaljerede retningslinjer. ### Frigiver en ny version ```bash # Create a release — npm publish happens automatically gh release create v1.0.6 --title "v1.0.6" --generate-notes ``` --- ## 📊 Stjernehistorie Star History Chart --- ## 🙏 Tak Særlig tak til **[9router](https://github.com/decolua/9router)** af **[decolua](https://github.com/decolua)** — det originale projekt, der inspirerede denne gaffel. OmniRoute bygger på det utrolige fundament med yderligere funktioner, multimodale API'er og en fuld TypeScript-omskrivning. Særlig tak til **[CLIProxyAPI](https://github.com/router-for-me/CLIProxyAPI)** — den originale Go-implementering, der inspirerede denne JavaScript-port. --- ## 📄 Licens MIT-licens - se [LICENSE](LICENSE) for detaljer. --- --- ## 🇧🇷 OmniRoute — Gateway de IA Gratis ### Nunca pare de codar. Roteamento inteligente para **modelos de IA GRATUITOS e de baixo custo** com fallback automático. _Seu proxy universal de API — et slutpunkt, 36+ tests, nul nedetid._ ### 🌐 Internacionalização (i18n) O dashboard til OmniRoute understøtter **multiplos idiomas**. Atualmente disponível em: | Idioma | Kode | Status | | --------------------- | ------- | ---------- | | 🇺🇸 Engelsk | `en` | ✅ Komplet | | 🇧🇷 Português (Brasil) | `pt-BR` | ✅ Komplet | **Para trocar o idioma:** Click no selector de idioma (🇺🇸 EN) no header do dashboard → selection o idioma desejado. **Sådan tilføjes et nyt formsprog:** 1. Crie `src/i18n/messages/{codigo}.json` baseado em `en.json` 2. Adicione o código em `src/i18n/config.ts` → `LOCALES` og `LANGUAGES` 3. Reinicie o servidor ### ⚡ Início Rápido ```bash # Instalar via npm npx omniroute@latest # Ou rodar do código-fonte cp .env.example .env npm install PORT=20128 NEXT_PUBLIC_BASE_URL=http://localhost:20128 npm run dev ``` ### 🐳 Docker ```bash docker run -d --name omniroute -p 20128:20128 diegosouzapw/omniroute:latest ``` ### 🔑 Funcionalidades Principais - **36+ provedores de IA** — Claude, GPT, Gemini, Llama, Qwen, DeepSeek, e mais - **Roteamento inteligente** — Fallback automático entre provedores - **Tradução de formato** — OpenAI ↔ Claude ↔ Gemini automaticamente - **Multi-conta** — Múltiplas contas por provedor com seleção inteligente - **Cache semântico** — Reduz custos e latência - **OAuth automático** — Tokens renovam automaticamente - **Combos personalizados** — 6 estratégias de roteamento - **Dashboard komplet** — Overvågning, logfiler, analyser, konfigurationer - **CLI Tools** — Konfigurer Claude Code, Codex, Cursor, Cline com um clique - **100% TypeScript** — Código limpo e tipado ### 📖 Dokumentation | Dokument | Beskrivelse | | ----------------------------------------------- | ---------------------------------------------- | | [Guia do Usuário](docs/USER_GUIDE.md) | Provedores, combos, CLI, implementering | | [Referência da API](docs/API_REFERENCE.md) | Todos os endepunkter com eksempler | | [Solução de Problemas](docs/TROUBLESHOOTING.md) | Problemas comuns e soluções | | [Arquitetura](docs/ARCHITECTURE.md) | Arquitetura e internos do systema | | [Contribuição](CONTRIBUTING.md) | Opsætning af desenvolvimento og retningslinjer | | [Deploy em VM](docs/VM_DEPLOYMENT_GUIDE.md) | Komplet: VM + nginx + Cloudflare | ### 📧 Støtte > 💬 **Entre para a comunidade!** [Grupo WhatsApp](https://chat.whatsapp.com/JI7cDQ1GyaiDHhVBpLxf8b?mode=gi_t) — Træk til, kompartilhe dicas e fique atualizado. - **Websted**: [omniroute.online](https://omniroute.online) - **GitHub**: [github.com/diegosouzapw/OmniRoute](https://github.com/diegosouzapw/OmniRoute) - **Problemer**: [github.com/diegosouzapw/OmniRoute/issues](https://github.com/diegosouzapw/OmniRoute/issues) ---
Bygget med ❤️ for udviklere, der koder 24/7
omniroute.online