You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
🎯 Hvad OmniRoute løser — 30 rigtige smertepunkter og brugssager
Alle udviklere, der bruger AI-værktøjer, står over for disse problemer dagligt. OmniRoute blev bygget til at løse dem alle - fra omkostningsoverskridelser til regionale blokke, fra ødelagte OAuth-flows til protokoloperationer og observerbarhed i virksomheden.
💸 1. "Jeg betaler for et dyrt abonnement, men bliver stadig afbrudt af grænser"
Udviklere betaler $20-200/måned for Claude Pro, Codex Pro eller GitHub Copilot. Selv ved betaling har kvoten et loft - 5 timers brug, ugentlige grænser eller satsgrænser pr. minut. Mid-coding session, udbyderen holder op med at svare, og udvikleren mister flow og produktivitet.
Sådan løser OmniRoute det:
Smart 4-Tier Fallback — Hvis abonnementskvoten løber ud, omdirigeres automatisk til API Key → Billig → Gratis uden manuel indgriben
Kvotesporing i realtid — Viser tokenforbrug i realtid med nulstillingsnedtælling (5 timer, dagligt, ugentligt)
Multi-Account Support - Flere konti pr. udbyder med automatisk round-robin - når den ene løber tør, skifter til den næste
Custom Combos — Tilpasselige fallback-kæder med 6 balanceringsstrategier (fill-first, round-robin, P2C, tilfældig, mindst brugt, omkostningsoptimeret)
Codex Business Quotas — Business/Team Workspace kvoteovervågning direkte i dashboardet
🔌 2. "Jeg skal bruge flere udbydere, men hver har en forskellig API"
OpenAI bruger et format, Claude (Antropisk) bruger et andet, Gemini endnu et andet. Hvis en udvikler ønsker at teste modeller fra forskellige udbydere eller fallback mellem dem, skal de omkonfigurere SDK'er, ændre slutpunkter, håndtere inkompatible formater. Tilpassede udbydere (FriendLI, NIM) har ikke-standardmodelslutpunkter.
Sådan løser OmniRoute det:
Unified Endpoint — En enkelt http://localhost:20128/v1 fungerer som proxy for alle 36+ udbydere
Formatoversættelse — Automatisk og gennemsigtig: OpenAI ↔ Claude ↔ Gemini ↔ Responses API
Rollenormalisering — Konverterer developer → system for ikke-OpenAI-udbydere; system → user til GLM/ERNIE
Think Tag Extraction — Udtrækker <think>-blokke fra modeller som DeepSeek R1 til standardiseret reasoning_content
Structured Output for Gemini — json_schema → responseMimeType/responseSchema automatisk konvertering
stream er som standard false — Justerer med OpenAI-specifikationer, og undgår uventede SSE i Python/Rust/Go SDK'er
🌐 3. "Min AI-udbyder blokerer mit område/land"
Udbydere som OpenAI/Codex blokerer adgang fra visse geografiske områder. Brugere får fejl som unsupported_country_region_territory under OAuth- og API-forbindelser. Dette er især frustrerende for udviklere fra udviklingslande.
Sådan løser OmniRoute det:
3-Level Proxy Config — Konfigurerbar proxy på 3 niveauer: global (al trafik), pr. udbyder (kun én udbyder) og pr. forbindelse/nøgle
Farvekodede proxy-badges — Visuelle indikatorer: 🟢 global proxy, 🟡 udbyder proxy, 🔵 forbindelsesproxy, viser altid IP'en
OAuth-tokenudveksling gennem proxy — OAuth-flowet går også gennem proxyen og løser unsupported_country_region_territory
Forbindelsestest via proxy — Forbindelsestest bruger den konfigurerede proxy (ikke mere direkte omgåelse)
SOCKS5-understøttelse — Fuld SOCKS5-proxy-understøttelse til udgående routing
TLS Fingerprint Spoofing — Browserlignende TLS-fingeraftryk via wreq-js for at omgå botdetektion
🆓 4. "Jeg vil bruge AI til kodning, men jeg har ingen penge"
Ikke alle kan betale $20-200/måned for AI-abonnementer. Studerende, udviklere fra vækstlande, hobbyfolk og freelancere har brug for adgang til kvalitetsmodeller uden omkostninger.
Kun gratis kombinationer — Kæde gc/gemini-3-flash → if/kimi-k2-thinking → qw/qwen3-coder-plus = $0/måned uden nedetid
NVIDIA NIM gratis kreditter — 1000 gratis kreditter integreret
Cost Optimized Strategy — Routingstrategi, der automatisk vælger den billigste tilgængelige udbyder
🔒 5. "Jeg skal beskytte min AI-gateway mod uautoriseret adgang"
Når en AI-gateway eksponeres for netværket (LAN, VPS, Docker), kan enhver med adressen forbruge udviklerens tokens/kvote. Uden beskyttelse er API'er sårbare over for misbrug, hurtig injektion og misbrug.
Sådan løser OmniRoute det:
API Key Management — Generering, rotation og scoping pr. udbyder med en dedikeret /dashboard/api-manager side
Tilladelser på modelniveau — Begræns API-nøgler til specifikke modeller (openai/*, jokertegnmønstre) med Tillad alt/Begræns-skift
API Endpoint Protection — Kræv en nøgle til /v1/models og bloker specifikke udbydere fra fortegnelsen
Auth Guard + CSRF Protection — Alle dashboard-ruter beskyttet med withAuth middleware + CSRF-tokens
Rate Limiter — Per-IP hastighedsbegrænsning med konfigurerbare vinduer
IP-filtrering — Tilladelsesliste/blokeringsliste til adgangskontrol
Prompt Injection Guard — Sanering mod ondsindede promptmønstre
AES-256-GCM-kryptering — Legitimationsoplysninger krypteret i hvile
🛑 6. "Min udbyder gik ned, og jeg mistede mit kodningsflow"AI-udbydere kan blive ustabile, returnere 5xx-fejl eller ramme midlertidige hastighedsgrænser. Hvis en udvikler afhænger af en enkelt udbyder, bliver de afbrudt. Uden strømafbrydere kan gentagne genforsøg crashe programmet.
Sådan løser OmniRoute det:
Circuit Breaker pr. udbyder — Automatisk åbning/lukning med konfigurerbare tærskler og nedkøling (lukket/åbent/halvt åbent)
| 🎯 Endpoint-Aware Models | Custom models declare supported endpoints + API format |
Eksponentiel backoff — Progressive forsinkelser af genforsøg
Anti-tordenbesætning — Mutex + semaforbeskyttelse mod samtidige genforsøgsstorme
Combo Fallback Chains — Hvis den primære udbyder fejler, falder den automatisk gennem kæden uden indgriben
Combo Circuit Breaker - Deaktiverer automatisk fejlende udbydere i en kombinationskæde
| 🎯 Endpoint-Aware Models | Custom models declare supported endpoints + API format |
Health Dashboard — Oppetidsovervågning, strømafbrydertilstande, lockouts, cachestatistik, p50/p95/p99 latency
🔧 7. "Konfiguration af hvert AI-værktøj er trættende og gentagende"
Udviklere bruger Cursor, Claude Code, Codex CLI, OpenClaw, Gemini CLI, Kilo Code... Hvert værktøj har brug for en anden konfiguration (API-endepunkt, nøgle, model). At omkonfigurere, når du skifter udbyder eller model, er spild af tid.
Sådan løser OmniRoute det:
CLI Tools Dashboard — Dedikeret side med et-klik opsætning til Claude Code, Codex CLI, OpenClaw, Kilo Code, Antigravity, Cline
GitHub Copilot Config Generator — Genererer chatLanguageModels.json til VS-kode med bulk modelvalg
Onboarding Wizard — Guidet 4-trins opsætning for førstegangsbrugere
Ét slutpunkt, alle modeller — Konfigurer http://localhost:20128/v1 én gang, få adgang til 36+ udbydere
🔑 8. "Administration af OAuth-tokens fra flere udbydere er et helvede"
Claude Code, Codex, Gemini CLI, Copilot - alle bruger OAuth 2.0 med udløbende tokens. Udviklere skal re-godkende konstant, håndtere client_secret is missing, redirect_uri_mismatch og fejl på fjernservere. OAuth på LAN/VPS er særligt problematisk.
Sådan løser OmniRoute det:
Automatisk tokenopdatering — OAuth-tokens opdateres i baggrunden før udløb
OAuth 2.0 (PKCE) Indbygget — Automatisk flow for Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, iFlow
Multi-Account OAuth — Flere konti pr. udbyder via JWT/ID-tokenudtrækning
OAuth LAN/Remote Fix — Privat IP-detektion for redirect_uri + manuel URL-tilstand til fjernservere
OAuth Behind Nginx — Bruger window.location.origin til omvendt proxykompatibilitet
Remote OAuth Guide — Trin-for-trin guide til Google Cloud-legitimationsoplysninger på VPS/Docker
📊 9. "Jeg ved ikke, hvor meget jeg bruger eller hvor"
Udviklere bruger flere betalte udbydere, men har ikke noget samlet syn på udgifter. Hver udbyder har sit eget faktureringsdashboard, men der er ingen konsolideret visning. Uventede omkostninger kan hobe sig op.
Sådan løser OmniRoute det:
Dashboard for omkostningsanalyse — omkostningssporing pr. token og budgetstyring pr. udbyder
Budgetgrænser pr. niveau — Udgiftsloft pr. niveau, der udløser automatisk fallback
Priskonfiguration pr. model — Konfigurerbare priser pr. model- Brugsstatistik pr. API-nøgle — Antal anmodninger og sidst anvendte tidsstempel pr. nøgle
Analytics Dashboard — Statiske kort, modelbrugsdiagram, udbydertabel med succesrater og latens
🐛 10. "Jeg kan ikke diagnosticere fejl og problemer i AI-opkald"
Når et opkald mislykkes, ved udvikleren ikke, om det var en takstgrænse, udløbet token, forkert format eller udbyderfejl. Fragmenterede logfiler på tværs af forskellige terminaler. Uden observerbarhed er fejlfinding trial-and-error.
Filbaseret logning med rotation — Konsolinterceptor fanger alt til JSON-log med størrelsesbaseret rotation
🏗️ 11. "Deployering og vedligeholdelse af gatewayen er kompleks"
Installation, konfiguration og vedligeholdelse af en AI-proxy på tværs af forskellige miljøer (lokalt, VPS, Docker, cloud) er arbejdskrævende. Problemer som hårdkodede stier, EACCES på mapper, portkonflikter og cross-platform builds tilføjer friktion.
Docker Compose Profiles — base (ingen CLI-værktøjer) og cli (med Claude Code, Codex, OpenClaw)
Electron Desktop App — Indbygget app til Windows/macOS/Linux med systembakke, autostart, offlinetilstand
Split-Port Mode — API og Dashboard på separate porte til avancerede scenarier (omvendt proxy, containernetværk)
Cloud Sync — Konfigurer synkronisering på tværs af enheder via Cloudflare Workers
DB Backups — Automatisk backup, gendannelse, eksport og import af alle indstillinger
🌍 12. "Grænsefladen er kun engelsk, og mit team taler ikke engelsk"
Hold i ikke-engelsktalende lande, især i Latinamerika, Asien og Europa, kæmper med grænseflader, der kun er på engelsk. Sprogbarrierer reducerer adoption og øger konfigurationsfejl.
Sprogvælger — Globusikon i overskriften til skift i realtid
🔄 13. "Jeg har brug for mere end chat — jeg har brug for indlejringer, billeder, lyd"
AI er ikke kun fuldførelse af chat. Udviklere skal generere billeder, transskribere lyd, oprette indlejringer til RAG, omrangere dokumenter og moderere indhold. Hver API har et andet slutpunkt og format.
Sådan løser OmniRoute det:
Indlejringer — /v1/embeddings med 6 udbydere og 9+ modeller
Billedgenerering — /v1/images/generations med 10 udbydere og 20+ modeller (OpenAI, xAI, Together, Fireworks, Nebius, Hyperbolic, NanoBanana, Antigravity, SD WebUI, ComfyUI)
Tekst-til-video — /v1/videos/generations — ComfyUI (AnimateDiff, SVD) og SD WebUI
Omrangering — /v1/rerank — Omrangering af dokumentrelevans
Responses API — Fuld /v1/responses-understøttelse af Codex
🧪 14. "Jeg har ingen måde at teste og sammenligne kvalitet på tværs af modeller"
Udviklere vil gerne vide, hvilken model der er bedst til deres brug - kode, oversættelse, ræsonnement - men manuel sammenligning er langsom. Der findes ingen integrerede evalueringsværktøjer.
Sådan løser OmniRoute det:
LLM-evalueringer — Gyldne sæt-test med 10 forudindlæste cases, der dækker hilsner, matematik, geografi, kodegenerering, JSON-overholdelse, oversættelse, markdown, sikkerhedsafvisning
Translator Playground Test Bench — Batchtest med flere input og forventede output, sammenligning på tværs af udbydere
Chattester — Fuld rundtur med visuel responsgengivelse
Live Monitor — Realtidsstream af alle anmodninger, der flyder gennem proxyen
📈 15. "Jeg har brug for at skalere uden at miste ydeevne"
Efterhånden som forespørgselsvolumen vokser, genererer de samme spørgsmål duplikerede omkostninger uden cache. Uden idempotens, dublerede anmodninger om affaldsbehandling. Takstgrænser pr. udbyder skal overholdes.
Request Idempotency — 5s deduplikeringsvindue for identiske anmodninger
Detektion af hastighedsgrænse — RPM pr. udbyder, min. gap og maks. samtidig sporing
Redigerbare hastighedsgrænser — Konfigurerbare standardindstillinger i Indstillinger → Modstandsdygtighed med vedholdenhed
API Key Validation Cache — 3-lags cache til produktionsydeevne
Health Dashboard med telemetri — p50/p95/p99 latency, cachestatistik, oppetid
🤖 16. "Jeg vil kontrollere modeladfærd globalt" Udviklere, der ønsker alle svar på et bestemt sprog, med en bestemt tone, eller ønsker at begrænse ræsonnementstokens. Det er upraktisk at konfigurere dette i hvert værktøj/anmodning.
Sådan løser OmniRoute det:
System Prompt Injection — Global prompt anvendt på alle anmodninger
Thinking Budget Validation — Reasoning token allocation control pr. anmodning (passthrough, auto, custom, adaptive)
6 Routing Strategies — Globale strategier, der bestemmer, hvordan anmodninger distribueres
Wildcard-router — provider/*-mønstre ruter dynamisk til enhver udbyder
Kombo Aktiver/Deaktiver Til/fra — Skift kombinationer direkte fra dashboardet
Tilskiftning af udbyder — Aktiver/deaktiver alle forbindelser for en udbyder med et enkelt klik
Blokerede udbydere — Ekskluder specifikke udbydere fra /v1/models-fortegnelsen
🧰 17. "Jeg har brug for MCP-værktøjer som førsteklasses produktegenskaber"
Mange AI-gateways afslører kun MCP som en skjult implementeringsdetalje. Teams har brug for et synligt, overskueligt operationslag.
Sådan løser OmniRoute det:
MCP vises på fanen dashboardnavigation og endepunktsprotokol
Dedikeret MCP-administrationsside med proces, værktøjer, omfang og revision
Indbygget hurtigstart til omniroute --mcp og klient onboarding
🧠 18. "Jeg har brug for A2A-orkestrering med synkronisering + streamopgavestier"
Agentarbejdsgange kræver både direkte svar og langvarig streamet udførelse med livscykluskontrol.
Sådan løser OmniRoute det:
A2A JSON-RPC slutpunkt (POST /a2a) med message/send og message/stream
SSE-streaming med udbredelse af terminaltilstand
Task lifecycle API'er til tasks/get og tasks/cancel
🛰️ 19. "Jeg har brug for ægte MCP-processundhed, ikke gættet status"
Operationelle teams skal vide, om MCP faktisk er i live, ikke kun om en API er tilgængelig.
Sådan løser OmniRoute det:
Runtime-hjerteslagsfil med PID, tidsstempler, transport, værktøjstælling og omfangstilstand
MCP status API, der kombinerer hjerteslag + seneste aktivitet
UI-statuskort til proces/oppetid/hjerteslagsfriskhed
📋 20. "Jeg har brug for revisionsbar MCP-værktøjsudførelse"
Når værktøjer muterer konfiguration eller udløser ops-handlinger, har teams brug for retsmedicinsk sporbarhed.
Sådan løser OmniRoute det:
SQLite-støttet revisionslogning for MCP-værktøjsopkald
Filtrerer efter værktøj, succes/fiasko, API-nøgle og paginering
Dashboard revisionstabel + statistik slutpunkter til automatisering
🔐 21. "Jeg har brug for scoped MCP-tilladelser pr. integration"
Forskellige klienter bør have mindst privilegeret adgang til værktøjskategorier.
Sådan løser OmniRoute det:
9 granulære MCP-skoper til kontrolleret værktøjsadgang
Håndhævelse af omfang og synlighed i MCP management UI
Sikker standardstilling for operationelt værktøj
⚙️ 22. "Jeg har brug for operationelle kontroller uden omfordeling"
Teams har brug for hurtige runtime-ændringer under hændelser eller omkostningsbegivenheder.
Sådan løser OmniRoute det:
Skift kombinationsaktivering direkte fra MCP-dashboard
Anvend modstandsdygtighedsprofiler fra foruddefinerede politikpakker
Nulstil strømafbrydertilstand fra det samme betjeningspanel
🔄 23. "Jeg har brug for live A2A opgave livscyklus synlighed og annullering"
Uden livscyklussynlighed bliver opgavehændelser svære at triage.
Sådan løser OmniRoute det:
Opgaveliste/filtrering efter tilstand/færdighed med paginering
Drill-down på opgavemetadata, hændelser og artefakter
Slutpunkt for annullering af opgave og UI-handling med bekræftelse
🌊 24. "Jeg har brug for aktive stream-metrics for A2A-indlæsning"
Streaming-arbejdsgange kræver operationel indsigt i samtidighed og live-forbindelser.
Sådan løser OmniRoute det:
Aktive stream-tællere integreret i A2A-status
Tidsstempel for sidste opgave og tæller pr. stat
A2A dashboard-kort til operationsovervågning i realtid
🪪 25. "Jeg har brug for standardagentopdagelse til klienter"
Eksterne klienter og orkestratorer har brug for maskinlæsbare metadata til onboarding.
Sådan løser OmniRoute det:
Agentkort afsløret på /.well-known/agent.json
Evner og færdigheder vist i ledelsens brugergrænseflade
A2A status API inkluderer opdagelsesmetadata til automatisering
🧭 26. "Jeg har brug for protokolsynlighed i produktets UX"
Hvis brugere ikke kan opdage protokoloverflader, falder kvaliteten af adoption og support.
Sådan løser OmniRoute det:
Sidebar-indgange til MCP og A2A
Endpoint-siden Protokoller-fane med hurtig start og status
Links fra oversigt til dedikerede ledelsesdashboards
🧪 27. "Jeg har brug for end-to-end protokolvalidering med rigtige klienter"
Mock-tests er ikke nok til at validere protokolkompatibilitet før frigivelse.
Sådan løser OmniRoute det:
E2E-pakke, der starter app og bruger ægte MCP SDK-klienttransport
A2A klient tester for opdagelse, send, stream, hent og annuller flows
Krydstjek påstande mod MCP-revision og A2A-opgaver API'er
📡 28. "Jeg har brug for samlet observerbarhed på tværs af alle grænseflader"
Opdeling af observerbarhed efter protokol skaber blinde pletter og længere MTTR.
Sådan løser OmniRoute det:
Samlede dashboards/logfiler/analyse i ét produkt
Health + audit + request telemetri på tværs af OpenAI, MCP og A2A lag
Operationelle API'er til status og automatisering
💼 29. "Jeg har brug for én køretid til proxy + værktøjer + agentorkestrering"
At køre mange separate tjenester øger driftsomkostninger og fejltilstande.
Sådan løser OmniRoute det:- OpenAI-kompatibel proxy, MCP-server og A2A-server i én stak
Delt godkendelse, robusthed, datalager og observerbarhed
Ensartet politikmodel på tværs af alle interaktionsflader
🚀 30. "Jeg har brug for at sende agentiske arbejdsgange uden limkodesprawl"
Hold mister hastighed, når de sammensætter flere ad-hoc-tjenester og scripts.
Sådan løser OmniRoute det:
Ensartet slutpunktsstrategi for kunder og agenter
Indbygget protokolstyring UI'er og røgvalideringsstier
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: Agent ops med MCP + A2A
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
⚡ Hurtig start
1) Installer og kør
npm install -g omniroute
omniroute
Dashboard åbner ved http://localhost:20128, og API-base-URL er http://localhost:20128/v1.
Kommando
Beskrivelse
omniroute
Start server (PORT=20128, API og dashboard på samme port)
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) Valider alt ende-til-ende (anbefales)
npm run test:protocols:e2e
Denne suite validerer rigtige MCP- og A2A-klientstrømme mod en kørende app.
Alternativ: Kør fra kilden
cp .env.example .env
npm install
PORT=20128 DASHBOARD_PORT=20129 NEXT_PUBLIC_BASE_URL=http://localhost:20129 npm run dev
🐳 Docker
OmniRoute er tilgængelig som et offentligt Docker-billede på Docker Hub.
# 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:
# 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
🖥️
Kør OmniRoute som en selvstændig desktop-app - ingen terminal, ingen browser, intet internet påkrævet for lokale modeller. Den elektronbaserede app inkluderer:
🖥️ Native Window — Dedikeret appvindue med systembakkeintegration
🔄 Auto-Start — Start OmniRoute ved systemlogin
🔔 Native notifikationer — Få advarsler om kvoteopbrugt eller udbyderproblemer
🌐 Offline-tilstand — Fungerer fuldt ud offline med medfølgende server
Hurtig start
# 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)
Systembakke
Når den er minimeret, lever OmniRoute i din procesbakke med hurtige handlinger:
Når kvote, sats eller sundhed svigter, flytter OmniRoute automatisk til den næste kandidat uden manuel skift.
Protokolstyring, der er synlig og funktionsdygtig
MCP + A2A kan findes i brugergrænsefladen og dokumenter (ikke skjult)
Protokolstatus API'er afslører live driftsdata (/api/mcp/*, /api/a2a/*)
Dashboards inkluderer handlinger for dag-2 operationer (kombinationsskift, nulstilling af breaker, annullering af opgave)
Oversætter + valideringsarbejdsgang
Oversætterområdet omfatter:
Legeplads: anmod om transformationstjek
Chattester: fuld anmodning/svar tur/retur
Testbænk: flere sager på én gang
Live Monitor: trafikvisning i realtid
Plus protokolvalidering med rigtige klienter via npm run test:protocols:e2e.
📖 MCP Server README — Værktøjsreference, IDE-konfigurationer og klienteksempler
📖 A2A Server README — Færdigheder, JSON-RPC-metoder, streaming og opgavelivscyklus
🧪 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 testcases til:
Hilsen, matematik, geografi, kodegenerering
JSON format compliance, oversættelse, markdown generation
/models
# Select any OmniRoute model from the list
Tip: Tilføj enhver tilgængelig model i dit OmniRoute /v1/models-endepunkt til models-sektionen. Brug formatet provider/model-id fra dit OmniRoute-dashboard.
🐛 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
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/API-porte er forkerte
PORT er den kanoniske basisport (og API-port som standard)
API_PORT tilsidesætter kun OpenAI-kompatibel API-lytter
DASHBOARD_PORT tilsidesætter kun dashboard/Next.js-lytter
Indstil NEXT_PUBLIC_BASE_URL til dit dashboard/offentlige URL (til OAuth-tilbagekald)
Skysynkroniseringsfejl
Bekræft, at BASE_URL peger på din kørende instans
Bekræft CLOUD_URL-punkter 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 indstillet, 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-endepunkt
OmniRoute v1.0.6+ inkluderer fallback-validering via chatafslutninger
Sørg for, at basis-URL inkluderer /v1 suffiks
🔐 OAuth
⚠️ VIGTIGT til brugere af OmniRoute med VPS/Docker/server-fjernbetjening
OAuth
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-tilgængelighed
Você precisa criar um OAuth 2.0 Client ID ingen Google Cloud Console med en URI, der udfører denne service.
Særlig tak til 9router af 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 — den originale Go-implementering, der inspirerede denne JavaScript-port.