Skip to content

Latest commit

 

History

History
1216 lines (876 loc) · 62.1 KB

File metadata and controls

1216 lines (876 loc) · 62.1 KB
OmniRoute Dashboard

🚀 OmniRoute — Бесплатный AI Gateway

Никогда не прекращайте программировать. Умная маршрутизация к БЕСПЛАТНЫМ и дешёвым AI-моделям с автоматическим fallback.

Ваш универсальный API-прокси — одна точка доступа, 36+ провайдеров, нулевой простой.

Chat Completions • Embeddings • Генерация изображений • Аудио • Reranking • 100% TypeScript


🤖 Бесплатный AI-провайдер для ваших любимых агентов программирования

Подключайте любую IDE или CLI-инструмент с AI через OmniRoute — бесплатный API gateway для неограниченного программирования.

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

📡 Все агенты подключаются через http://localhost:20128/v1 или http://cloud.omniroute.online/v1 — одна конфигурация, неограниченные модели и квота


npm version Docker Hub License Website WhatsApp

🌐 Сайт🚀 Быстрый старт💡 Функции📖 Документация💰 Цены

🌐 Available in: 🇺🇸 English | 🇧🇷 Português (Brasil) | 🇪🇸 Español | 🇫🇷 Français | 🇮🇹 Italiano | 🇷🇺 Русский | 🇨🇳 中文 (简体) | 🇩🇪 Deutsch | 🇮🇳 हिन्दी | 🇹🇭 ไทย | 🇺🇦 Українська | 🇸🇦 العربية | 🇯🇵 日本語 | 🇻🇳 Tiếng Việt | 🇧🇬 Български | 🇩🇰 Dansk | 🇫🇮 Suomi | 🇮🇱 עברית | 🇭🇺 Magyar | 🇮🇩 Bahasa Indonesia | 🇰🇷 한국어 | 🇲🇾 Bahasa Melayu | 🇳🇱 Nederlands | 🇳🇴 Norsk | 🇵🇹 Português (Portugal) | 🇷🇴 Română | 🇵🇱 Polski | 🇸🇰 Slovenčina | 🇸🇪 Svenska | 🇵🇭 Filipino


🤔 Почему OmniRoute?

Перестаньте тратить деньги и упираться в лимиты:

  • Квота подписки истекает неиспользованной каждый месяц
  • Лимиты скорости останавливают вас посреди программирования
  • Дорогие API ($20-50/месяц за провайдера)
  • Ручное переключение между провайдерами

OmniRoute решает это:

  • Максимизируйте подписки — Отслеживайте квоты, используйте всё до сброса
  • Автоматический fallback — Подписка → API Key → Дешёвый → Бесплатный, нулевой простой
  • Мульти-аккаунт — Round-robin между аккаунтами каждого провайдера
  • Универсальный — Работает с Claude Code, Codex, Gemini CLI, Cursor, Cline, OpenClaw, любым CLI-инструментом

🔄 Как это работает

┌─────────────┐
  Ваш CLI      (Claude Code, Codex, Gemini CLI, OpenClaw, Cursor, Cline...)
   Tool      
└──────┬──────┘
        http://localhost:20128/v1
       
┌─────────────────────────────────────────┐
        OmniRoute (Умный маршрутизатор)   
   Трансляция формата (OpenAI  Claude) 
   Отслеживание квот + Embeddings + Изображения 
   Автообновление токенов               
└──────┬──────────────────────────────────┘
       
       ├─→ [Tier 1: ПОДПИСКА] Claude Code, Codex, Gemini CLI
           квота исчерпана
       ├─→ [Tier 2: API KEY] DeepSeek, Groq, xAI, Mistral, NVIDIA NIM и др.
           лимит бюджета
       ├─→ [Tier 3: ДЕШЁВЫЙ] GLM ($0.6/1M), MiniMax ($0.2/1M)
           лимит бюджета
       └─→ [Tier 4: БЕСПЛАТНЫЙ] iFlow, Qwen, Kiro (неограниченно)

Результат: Никогда не прекращайте программировать, минимальные затраты

🎯 What OmniRoute Solves — 16 Real Pain Points

Every developer using AI tools faces these problems daily. OmniRoute was built to solve them all — from cost overruns to regional blocks, from broken OAuth flows to zero observability.

💸 1. "I pay for an expensive subscription but still get interrupted by limits"

Developers pay $20–200/month for Claude Pro, Codex Pro, or GitHub Copilot. Even paying, quota has a ceiling — 5h of usage, weekly limits, or per-minute rate limits. Mid-coding session, the provider stops responding and the developer loses flow and productivity.

How OmniRoute solves it:

  • Smart 4-Tier Fallback — If subscription quota runs out, automatically redirects to API Key → Cheap → Free with zero manual intervention
  • Real-Time Quota Tracking — Shows token consumption in real-time with reset countdown (5h, daily, weekly)
  • Multi-Account Support — Multiple accounts per provider with auto round-robin — when one runs out, switches to the next
  • Custom Combos — Customizable fallback chains with 6 balancing strategies (fill-first, round-robin, P2C, random, least-used, cost-optimized)
  • Codex Business Quotas — Business/Team workspace quota monitoring directly in the dashboard
🔌 2. "I need to use multiple providers but each has a different API"

OpenAI uses one format, Claude (Anthropic) uses another, Gemini yet another. If a dev wants to test models from different providers or fallback between them, they need to reconfigure SDKs, change endpoints, deal with incompatible formats. Custom providers (FriendLI, NIM) have non-standard model endpoints.

How OmniRoute solves it:

  • Unified Endpoint — A single http://localhost:20128/v1 serves as proxy for all 36+ providers
  • Format Translation — Automatic and transparent: OpenAI ↔ Claude ↔ Gemini ↔ Responses API
  • Response Sanitization — Strips non-standard fields (x_groq, usage_breakdown, service_tier) that break OpenAI SDK v1.83+
  • Role Normalization — Converts developersystem for non-OpenAI providers; systemuser for GLM/ERNIE
  • Think Tag Extraction — Extracts <think> blocks from models like DeepSeek R1 into standardized reasoning_content
  • Structured Output for Geminijson_schemaresponseMimeType/responseSchema automatic conversion
  • stream defaults to false — Aligns with OpenAI spec, avoiding unexpected SSE in Python/Rust/Go SDKs
🌐 3. "My AI provider blocks my region/country"

Providers like OpenAI/Codex block access from certain geographic regions. Users get errors like unsupported_country_region_territory during OAuth and API connections. This is especially frustrating for developers from developing countries.

How OmniRoute solves it:

  • 3-Level Proxy Config — Configurable proxy at 3 levels: global (all traffic), per-provider (one provider only), and per-connection/key
  • Color-Coded Proxy Badges — Visual indicators: 🟢 global proxy, 🟡 provider proxy, 🔵 connection proxy, always showing the IP
  • OAuth Token Exchange Through Proxy — OAuth flow also goes through the proxy, solving unsupported_country_region_territory
  • Connection Tests via Proxy — Connection tests use the configured proxy (no more direct bypass)
  • SOCKS5 Support — Full SOCKS5 proxy support for outbound routing
  • TLS Fingerprint Spoofing — Browser-like TLS fingerprint via wreq-js to bypass bot detection
🆓 4. "I want to use AI for coding but I have no money"

Not everyone can pay $20–200/month for AI subscriptions. Students, devs from emerging countries, hobbyists, and freelancers need access to quality models at zero cost.

How OmniRoute solves it:

  • Free Tier Providers Built-in — Native support for 100% free providers: iFlow (8 unlimited models), Qwen (3 unlimited models), Kiro (Claude for free), Gemini CLI (180K/month free)
  • Free-Only Combos — Chain gc/gemini-3-flash → if/kimi-k2-thinking → qw/qwen3-coder-plus = $0/month with zero downtime
  • NVIDIA NIM Free Credits — 1000 free credits integrated
  • Cost Optimized Strategy — Routing strategy that automatically chooses the cheapest available provider
🔒 5. "I need to protect my AI gateway from unauthorized access"

When exposing an AI gateway to the network (LAN, VPS, Docker), anyone with the address can consume the developer's tokens/quota. Without protection, APIs are vulnerable to misuse, prompt injection, and abuse.

How OmniRoute solves it:

  • API Key Management — Generation, rotation, and scoping per provider with a dedicated /dashboard/api-manager page
  • Model-Level Permissions — Restrict API keys to specific models (openai/*, wildcard patterns), with Allow All/Restrict toggle
  • API Endpoint Protection — Require a key for /v1/models and block specific providers from the listing
  • Auth Guard + CSRF Protection — All dashboard routes protected with withAuth middleware + CSRF tokens
  • Rate Limiter — Per-IP rate limiting with configurable windows
  • IP Filtering — Allowlist/blocklist for access control
  • Prompt Injection Guard — Sanitization against malicious prompt patterns
  • AES-256-GCM Encryption — Credentials encrypted at rest
🛑 6. "My provider went down and I lost my coding flow"

AI providers can become unstable, return 5xx errors, or hit temporary rate limits. If a dev depends on a single provider, they're interrupted. Without circuit breakers, repeated retries can crash the application.

How OmniRoute solves it:

  • Circuit Breaker per-provider — Auto-open/close with configurable thresholds and cooldown (Closed/Open/Half-Open)
  • Exponential Backoff — Progressive retry delays
  • Anti-Thundering Herd — Mutex + semaphore protection against concurrent retry storms
  • Combo Fallback Chains — If the primary provider fails, automatically falls through the chain with no intervention
  • Combo Circuit Breaker — Auto-disables failing providers within a combo chain
  • Health Dashboard — Uptime monitoring, circuit breaker states, lockouts, cache stats, p50/p95/p99 latency
🔧 7. "Configuring each AI tool is tedious and repetitive"

Developers use Cursor, Claude Code, Codex CLI, OpenClaw, Gemini CLI, Kilo Code... Each tool needs a different config (API endpoint, key, model). Reconfiguring when switching providers or models is a waste of time.

How OmniRoute solves it:

  • CLI Tools Dashboard — Dedicated page with one-click setup for Claude Code, Codex CLI, OpenClaw, Kilo Code, Antigravity, Cline
  • GitHub Copilot Config Generator — Generates chatLanguageModels.json for VS Code with bulk model selection
  • Onboarding Wizard — Guided 4-step setup for first-time users
  • One endpoint, all models — Configure http://localhost:20128/v1 once, access 36+ providers
🔑 8. "Managing OAuth tokens from multiple providers is hell"

Claude Code, Codex, Gemini CLI, Copilot — all use OAuth 2.0 with expiring tokens. Developers need to re-authenticate constantly, deal with client_secret is missing, redirect_uri_mismatch, and failures on remote servers. OAuth on LAN/VPS is particularly problematic.

How OmniRoute solves it:

  • Auto Token Refresh — OAuth tokens refresh in background before expiration
  • OAuth 2.0 (PKCE) Built-in — Automatic flow for Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, iFlow
  • Multi-Account OAuth — Multiple accounts per provider via JWT/ID token extraction
  • OAuth LAN/Remote Fix — Private IP detection for redirect_uri + manual URL mode for remote servers
  • OAuth Behind Nginx — Uses window.location.origin for reverse proxy compatibility
  • Remote OAuth Guide — Step-by-step guide for Google Cloud credentials on VPS/Docker
📊 9. "I don't know how much I'm spending or where"

Developers use multiple paid providers but have no unified view of spending. Each provider has its own billing dashboard, but there's no consolidated view. Unexpected costs can pile up.

How OmniRoute solves it:

  • Cost Analytics Dashboard — Per-token cost tracking and budget management per provider
  • Budget Limits per Tier — Spending ceiling per tier that triggers automatic fallback
  • Per-Model Pricing Configuration — Configurable prices per model
  • Usage Statistics Per API Key — Request count and last-used timestamp per key
  • Analytics Dashboard — Stat cards, model usage chart, provider table with success rates and latency
🐛 10. "I can't diagnose errors and problems in AI calls"

When a call fails, the dev doesn't know if it was a rate limit, expired token, wrong format, or provider error. Fragmented logs across different terminals. Without observability, debugging is trial-and-error.

How OmniRoute solves it:

  • Unified Logs Dashboard — 4 tabs: Request Logs, Proxy Logs, Audit Logs, Console
  • Console Log Viewer — Real-time terminal-style viewer with color-coded levels, auto-scroll, search, filter
  • SQLite Proxy Logs — Persistent logs that survive server restarts
  • Translator Playground — 4 debugging modes: Playground (format translation), Chat Tester (round-trip), Test Bench (batch), Live Monitor (real-time)
  • Request Telemetry — p50/p95/p99 latency + X-Request-Id tracing
  • File-Based Logging with Rotation — Console interceptor captures everything to JSON log with size-based rotation
🏗️ 11. "Deploying and maintaining the gateway is complex"

Installing, configuring, and maintaining an AI proxy across different environments (local, VPS, Docker, cloud) is labor-intensive. Problems like hardcoded paths, EACCES on directories, port conflicts, and cross-platform builds add friction.

How OmniRoute solves it:

  • npm global installnpm install -g omniroute && omniroute — done
  • Docker Multi-Platform — AMD64 + ARM64 native (Apple Silicon, AWS Graviton, Raspberry Pi)
  • Docker Compose Profilesbase (no CLI tools) and cli (with Claude Code, Codex, OpenClaw)
  • Electron Desktop App — Native app for Windows/macOS/Linux with system tray, auto-start, offline mode
  • Split-Port Mode — API and Dashboard on separate ports for advanced scenarios (reverse proxy, container networking)
  • Cloud Sync — Config synchronization across devices via Cloudflare Workers
  • DB Backups — Automatic backup, restore, export and import of all settings
🌍 12. "The interface is English-only and my team doesn't speak English"

Teams in non-English-speaking countries, especially in Latin America, Asia, and Europe, struggle with English-only interfaces. Language barriers reduce adoption and increase configuration errors.

How OmniRoute solves it:

  • Dashboard i18n — 30 Languages — All 500+ keys translated including Arabic, Bulgarian, Danish, German, Spanish, Finnish, French, Hebrew, Hindi, Hungarian, Indonesian, Italian, Japanese, Korean, Malay, Dutch, Norwegian, Polish, Portuguese (PT/BR), Romanian, Russian, Slovak, Swedish, Thai, Ukrainian, Vietnamese, Chinese, Filipino, English
  • RTL Support — Right-to-left support for Arabic and Hebrew
  • Multi-Language READMEs — 30 complete documentation translations
  • Language Selector — Globe icon in header for real-time switching
🔄 13. "I need more than chat — I need embeddings, images, audio"

AI isn't just chat completion. Devs need to generate images, transcribe audio, create embeddings for RAG, rerank documents, and moderate content. Each API has a different endpoint and format.

How OmniRoute solves it:

  • Embeddings/v1/embeddings with 6 providers and 9+ models
  • Image Generation/v1/images/generations with 4 providers and 9+ models
  • Audio Transcription/v1/audio/transcriptions — Whisper-compatible
  • Text-to-Speech/v1/audio/speech — Multi-provider audio synthesis
  • Moderations/v1/moderations — Content safety checks
  • Reranking/v1/rerank — Document relevance reranking
  • Responses API — Full /v1/responses support for Codex
🧪 14. "I have no way to test and compare quality across models"

Developers want to know which model is best for their use case — code, translation, reasoning — but comparing manually is slow. No integrated eval tools exist.

How OmniRoute solves it:

  • LLM Evaluations — Golden set testing with 10 pre-loaded cases covering greetings, math, geography, code generation, JSON compliance, translation, markdown, safety refusal
  • 4 Match Strategiesexact, contains, regex, custom (JS function)
  • Translator Playground Test Bench — Batch testing with multiple inputs and expected outputs, cross-provider comparison
  • Chat Tester — Full round-trip with visual response rendering
  • Live Monitor — Real-time stream of all requests flowing through the proxy
📈 15. "I need to scale without losing performance"

As request volume grows, without caching the same questions generate duplicate costs. Without idempotency, duplicate requests waste processing. Per-provider rate limits must be respected.

How OmniRoute solves it:

  • Semantic Cache — Two-tier cache (signature + semantic) reduces cost and latency
  • Request Idempotency — 5s deduplication window for identical requests
  • Rate Limit Detection — Per-provider RPM, min gap, and max concurrent tracking
  • Editable Rate Limits — Configurable defaults in Settings → Resilience with persistence
  • API Key Validation Cache — 3-tier cache for production performance
  • Health Dashboard with Telemetry — p50/p95/p99 latency, cache stats, uptime
🤖 16. "I want to control model behavior globally"

Developers who want all responses in a specific language, with a specific tone, or want to limit reasoning tokens. Configuring this in every tool/request is impractical.

How OmniRoute solves it:

  • System Prompt Injection — Global prompt applied to all requests
  • Thinking Budget Validation — Reasoning token allocation control per request (passthrough, auto, custom, adaptive)
  • 6 Routing Strategies — Global strategies that determine how requests are distributed
  • Wildcard Routerprovider/* patterns route dynamically to any provider
  • Combo Enable/Disable Toggle — Toggle combos directly from the dashboard
  • Provider Toggle — Enable/disable all connections for a provider with one click
  • Blocked Providers — Exclude specific providers from /v1/models listing

⚡ Быстрый старт

1. Установите глобально:

npm install -g omniroute
omniroute

🎉 Dashboard открывается на http://localhost:20128

Команда Описание
omniroute Запустить сервер (порт по умолчанию 20128)
omniroute --port 3000 Использовать другой порт
omniroute --no-open Не открывать браузер автоматически
omniroute --help Показать справку

2. Подключите БЕСПЛАТНОГО провайдера:

Dashboard → Провайдеры → Подключить Claude Code или Antigravity → OAuth вход → Готово!

3. Используйте в CLI-инструменте:

Claude Code/Codex/Gemini CLI/OpenClaw/Cursor/Cline Настройки:
  Endpoint: http://localhost:20128/v1
  API Key: [скопируйте из dashboard]
  Model: if/kimi-k2-thinking

Готово! Начните программировать с БЕСПЛАТНЫМИ AI-моделями.

Альтернатива — запуск из исходного кода:

cp .env.example .env
npm install
PORT=20128 NEXT_PUBLIC_BASE_URL=http://localhost:20128 npm run dev

🐳 Docker

OmniRoute доступен как публичный Docker-образ на Docker Hub.

Быстрый запуск:

docker run -d \
  --name omniroute \
  --restart unless-stopped \
  -p 20128:20128 \
  -v omniroute-data:/app/data \
  diegosouzapw/omniroute:latest

С файлом окружения:

# Скопируйте и отредактируйте .env
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

Используя Docker Compose:

# Базовый профиль (без CLI-инструментов)
docker compose --profile base up -d

# CLI-профиль (Claude Code, Codex, OpenClaw встроены)
docker compose --profile cli up -d
Образ Тег Размер Описание
diegosouzapw/omniroute latest ~250MB Последний стабильный релиз
diegosouzapw/omniroute 1.0.6 ~250MB Текущая версия


🖥️ Настольное Приложение — Оффлайн и Всегда Активно

🆕 НОВИНКА! OmniRoute теперь доступен как нативное настольное приложение для Windows, macOS и Linux.

  • 🖥️ Нативное Окно — Выделенное окно с интеграцией в системный трей
  • 🔄 Автозапуск — Запуск OmniRoute при входе в систему
  • 🔔 Нативные Уведомления — Оповещения об исчерпании квоты
  • Установка в Один Клик — NSIS (Windows), DMG (macOS), AppImage (Linux)
  • 🌐 Оффлайн Режим — Полностью работает без интернета
npm run electron:dev           # Режим разработки
npm run electron:build         # Текущая платформа
npm run electron:build:win     # Windows (.exe)
npm run electron:build:mac     # macOS (.dmg)
npm run electron:build:linux   # Linux (.AppImage)

📖 Полная документация: electron/README.md


💰 Обзор цен

Tier Провайдер Стоимость Сброс квоты Лучше всего для
💳 ПОДПИСКА Claude Code (Pro) $20/мес 5ч + еженедельно Уже подписан
Codex (Plus/Pro) $20-200/мес 5ч + еженедельно Пользователи OpenAI
Gemini CLI БЕСПЛАТНО 180K/мес + 1K/день Все!
GitHub Copilot $10-19/мес Ежемесячно Пользователи GitHub
🔑 API KEY NVIDIA NIM БЕСПЛАТНО (1000 кредитов) Одноразово Бесплатное тестирование
DeepSeek По использованию Нет Лучшее соотношение цена/качество
Groq Беспл. уровень + платный Ограничено Сверхбыстрый вывод
xAI (Grok) По использованию Нет Модели Grok
Mistral Беспл. уровень + платный Ограничено Европейский AI
OpenRouter По использованию Нет 100+ моделей
💰 ДЕШЁВЫЙ GLM-4.7 $0.6/1M Ежедневно 10ч Бюджетный бэкап
MiniMax M2.1 $0.2/1M 5ч ротация Самый дешёвый вариант
Kimi K2 $9/мес фикс 10M токенов/мес Предсказуемая цена
🆓 БЕСПЛАТНЫЙ iFlow $0 Неограниченно 8 бесплатных моделей
Qwen $0 Неограниченно 3 бесплатные модели
Kiro $0 Неограниченно Claude бесплатно

💡 Совет: Начните с Gemini CLI (180K бесплатно/мес) + iFlow (неограниченно бесплатно) = $0!


💡 Основные функции

🧠 Маршрутизация и интеллект

Функция Что делает
🎯 Умный 4-уровневый Fallback Авто-маршрутизация: Подписка → API Key → Дешёвый → Бесплатный
📊 Отслеживание квот в реальном времени Счётчик токенов в реальном времени + обратный отсчёт до сброса
🔄 Трансляция формата OpenAI ↔ Claude ↔ Gemini ↔ Cursor ↔ Kiro бесшовно
👥 Мульти-аккаунт Несколько аккаунтов на провайдера с интеллектуальным выбором
🔄 Автообновление токенов OAuth-токены обновляются автоматически с повторами
🎨 Пользовательские комбо 6 стратегий: fill-first, round-robin, p2c, random, least-used, cost-optimized
🧩 Пользовательские модели Добавьте любой ID модели к любому провайдеру
🌐 Wildcard-маршрутизатор Маршрутизируйте паттерны provider/* к любому провайдеру динамически
🧠 Бюджет рассуждений Режимы passthrough, auto, custom и adaptive для моделей рассуждений
🔀 Model Aliases Auto-forward deprecated model IDs to current replacements (built-in + custom)
Background Degradation Auto-route background tasks (titles, summaries) to cheaper models
💬 Инъекция System Prompt Глобальный system prompt для всех запросов
📄 API Responses Полная поддержка OpenAI Responses API (/v1/responses) для Codex

🎵 Мультимодальные API

Функция Что делает
🖼️ Генерация изображений /v1/images/generations — 4 провайдера, 9+ моделей
📐 Embeddings /v1/embeddings — 6 провайдеров, 9+ моделей
🎤 Транскрипция аудио /v1/audio/transcriptions — Совместимо с Whisper
🔊 Текст в речь /v1/audio/speech — Мульти-провайдерный синтез
🛡️ Модерация /v1/moderations — Проверки безопасности контента
🔀 Reranking /v1/rerank — Переранжирование релевантности

🛡️ Устойчивость и безопасность

Функция Что делает
🔌 Circuit Breaker Авто-открытие/закрытие по провайдеру с настраиваемыми порогами
🛡️ Anti-Thundering Herd Mutex + семафор для API key провайдеров
🧠 Семантический кеш Двухуровневый кеш (сигнатура + семантика) снижает стоимость
Идемпотентность запросов 5с окно дедупликации для дублирующихся запросов
🔒 Спуфинг TLS Fingerprint Обход обнаружения ботов через wreq-js
🌐 Фильтрация IP Allowlist/blocklist для контроля доступа к API
📊 Настраиваемые Rate Limits Настраиваемые RPM, минимальный интервал, макс. конкуррентность
💾 Rate Limit Persistence Learned limits survive restarts via SQLite with 60s debounce + 24h staleness
🔄 Token Refresh Resilience Per-provider circuit breaker (5 fails→30min) + 30s timeout per attempt

📊 Наблюдаемость и аналитика

Функция Что делает
📝 Логи запросов Режим debug с полными логами запросов/ответов
💾 Логи SQLite Постоянные proxy-логи переживают перезапуски
📊 Dashboard аналитики Recharts: карточки статистики, график использования, таблица провайдеров
📈 Отслеживание прогресса Opt-in SSE-события прогресса для стриминга
🧪 Оценки LLM Тестирование с golden set и 4 стратегиями сравнения
🔍 Телеметрия запросов Агрегация латентности p50/p95/p99 + трекинг X-Request-Id
📋 Логи + Квоты Отдельные страницы для просмотра логов и отслеживания квот
🏥 Dashboard здоровья Uptime, состояния circuit breaker, блокировки, статистика кеша
💰 Отслеживание стоимости Управление бюджетом + настройка цен по моделям

☁️ Деплой и синхронизация

Функция Что делает
💾 Cloud Sync Синхронизация настроек между устройствами через Cloudflare Workers
🌐 Деплой куда угодно Localhost, VPS, Docker, Cloudflare Workers
🔑 Управление API Keys Генерация, ротация и настройка scope API keys по провайдерам
🧙 Мастер настройки 4-шаговая настройка для новых пользователей
🔧 Dashboard CLI Tools Настройка в один клик для Claude, Codex, Cline, OpenClaw, Kilo, Antigravity
🔄 Бэкапы БД Автоматическое резервное копирование и восстановление всех настроек
📖 Подробности функций

🎯 Умный 4-уровневый Fallback

Создавайте комбо с автоматическим fallback:

Combo: "my-coding-stack"
  1. cc/claude-opus-4-6        (ваша подписка)
  2. nvidia/llama-3.3-70b      (бесплатный NVIDIA API)
  3. glm/glm-4.7               (дешёвый бэкап, $0.6/1M)
  4. if/kimi-k2-thinking       (бесплатный fallback)

 Автоматически переключается при исчерпании квоты или ошибках

📊 Отслеживание квот в реальном времени

  • Потребление токенов по провайдерам
  • Обратный отсчёт до сброса (5 часов, ежедневно, еженедельно)
  • Оценка стоимости для платных уровней
  • Ежемесячные отчёты о расходах

🔄 Трансляция формата

Бесшовная трансляция между форматами:

  • OpenAIClaudeGeminiOpenAI Responses
  • Ваш CLI отправляет формат OpenAI → OmniRoute транслирует → Провайдер получает нативный формат
  • Работает с любым инструментом, поддерживающим пользовательские OpenAI endpoints

👥 Мульти-аккаунт

  • Добавляйте несколько аккаунтов на провайдера
  • Автоматический round-robin или маршрутизация по приоритету
  • Fallback на следующий аккаунт при исчерпании квоты

🔄 Автообновление токенов

  • OAuth-токены обновляются автоматически до истечения
  • Без необходимости ручной повторной аутентификации
  • Бесшовный опыт по всем провайдерам

🎨 Пользовательские комбо

  • Создавайте неограниченные комбинации моделей
  • 6 стратегий: fill-first, round-robin, power-of-two-choices, random, least-used, cost-optimized
  • Делитесь комбо между устройствами с Cloud Sync

🏥 Dashboard здоровья

  • Статус системы (uptime, версия, использование памяти)
  • Состояния circuit breaker по провайдерам (Closed/Open/Half-Open)
  • Статус rate limit и активные блокировки
  • Статистика кеша сигнатур
  • Телеметрия латентности (p50/p95/p99) + кеш промптов
  • Сброс состояния здоровья одним кликом

🔧 Playground транслятора

  • Отладка, тестирование и визуализация трансляции форматов API
  • Отправляйте запросы и смотрите, как OmniRoute транслирует между форматами провайдеров
  • Бесценно для устранения проблем интеграции

💾 Cloud Sync

  • Синхронизация провайдеров, комбо и настроек между устройствами
  • Автоматическая фоновая синхронизация
  • Безопасное шифрованное хранилище

🎯 Сценарии использования

Сценарий 1: «У меня подписка Claude Pro»

Проблема: Квота истекает неиспользованной, лимиты скорости во время интенсивного программирования

Combo: "maximize-claude"
  1. cc/claude-opus-4-6        (используйте подписку полностью)
  2. glm/glm-4.7               (дешёвый бэкап при исчерпании квоты)
  3. if/kimi-k2-thinking       (бесплатный аварийный fallback)

Месячная стоимость: $20 (подписка) + ~$5 (бэкап) = $25 итого
vs. $20 + упирание в лимиты = разочарование

Сценарий 2: «Хочу нулевую стоимость»

Проблема: Не может позволить подписки, нужен надёжный AI для программирования

Combo: "free-forever"
  1. gc/gemini-3-flash         (180K бесплатно/мес)
  2. if/kimi-k2-thinking       (неограниченно бесплатно)
  3. qw/qwen3-coder-plus       (неограниченно бесплатно)

Месячная стоимость: $0
Качество: Модели готовые к продакшену

Сценарий 3: «Мне нужно программировать 24/7, без перерывов»

Проблема: Дедлайны, не может позволить простой

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ч)
  5. if/kimi-k2-thinking       (бесплатно неограниченно)

Результат: 5 уровней fallback = нулевой простой

Сценарий 4: «Хочу БЕСПЛАТНЫЙ AI в OpenClaw»

Проблема: Нужен AI-ассистент в мессенджерах, полностью бесплатно

Combo: "openclaw-free"
  1. if/glm-4.7                (неограниченно бесплатно)
  2. if/minimax-m2.1           (неограниченно бесплатно)
  3. if/kimi-k2-thinking       (неограниченно бесплатно)

Месячная стоимость: $0
Доступ через: WhatsApp, Telegram, Slack, Discord, iMessage, Signal...

📖 Руководство по настройке

💳 Провайдеры по подписке

Claude Code (Pro/Max)

Dashboard → Провайдеры → Подключить Claude Code
→ OAuth вход → Автообновление токенов
→ Отслеживание квоты 5ч + еженедельно

Модели:
  cc/claude-opus-4-6
  cc/claude-sonnet-4-5-20250929
  cc/claude-haiku-4-5-20251001

Совет: Используйте Opus для сложных задач, Sonnet для скорости. OmniRoute отслеживает квоту по моделям!

OpenAI Codex (Plus/Pro)

Dashboard → Провайдеры → Подключить Codex
→ OAuth вход (порт 1455)
→ Сброс 5ч + еженедельно

Модели:
  cx/gpt-5.2-codex
  cx/gpt-5.1-codex-max

Gemini CLI (БЕСПЛАТНО 180K/мес!)

Dashboard → Провайдеры → Подключить Gemini CLI
→ Google OAuth
→ 180K completions/мес + 1K/день

Модели:
  gc/gemini-3-flash-preview
  gc/gemini-2.5-pro

Лучшая ценность: Огромный бесплатный уровень! Используйте перед платными.

GitHub Copilot

Dashboard → Провайдеры → Подключить GitHub
→ OAuth через GitHub
→ Ежемесячный сброс (1-е число)

Модели:
  gh/gpt-5
  gh/claude-4.5-sonnet
  gh/gemini-3-pro
🔑 Провайдеры по API Key

NVIDIA NIM (БЕСПЛАТНО 1000 кредитов!)

  1. Регистрация: build.nvidia.com
  2. Получите бесплатный API key (1000 кредитов включены)
  3. Dashboard → Добавить провайдера → NVIDIA NIM:
    • API Key: nvapi-your-key

Модели: nvidia/llama-3.3-70b-instruct, nvidia/mistral-7b-instruct и 50+ других

Совет: OpenAI-совместимый API — работает идеально с трансляцией форматов OmniRoute!

DeepSeek

  1. Регистрация: platform.deepseek.com
  2. Получите API key
  3. Dashboard → Добавить провайдера → DeepSeek

Модели: deepseek/deepseek-chat, deepseek/deepseek-coder

Groq (Бесплатный уровень доступен!)

  1. Регистрация: console.groq.com
  2. Получите API key (бесплатный уровень включён)
  3. Dashboard → Добавить провайдера → Groq

Модели: groq/llama-3.3-70b, groq/mixtral-8x7b

Совет: Сверхбыстрый вывод — лучший для программирования в реальном времени!

OpenRouter (100+ моделей)

  1. Регистрация: openrouter.ai
  2. Получите API key
  3. Dashboard → Добавить провайдера → OpenRouter

Модели: Доступ к 100+ моделям от всех основных провайдеров через один API key.

💰 Дешёвые провайдеры (Бэкап)

GLM-4.7 (Ежедневный сброс, $0.6/1M)

  1. Регистрация: Zhipu AI
  2. Получите API key из Coding Plan
  3. Dashboard → Добавить API Key:
    • Провайдер: glm
    • API Key: your-key

Используйте: glm/glm-4.7

Совет: Coding Plan предлагает 3× квоту по цене 1/7! Ежедневный сброс в 10:00.

MiniMax M2.1 (Сброс 5ч, $0.20/1M)

  1. Регистрация: MiniMax
  2. Получите API key
  3. Dashboard → Добавить API Key

Используйте: minimax/MiniMax-M2.1

Совет: Самый дешёвый вариант для длинного контекста (1M токенов)!

Kimi K2 ($9/мес фикс)

  1. Подпишитесь: Moonshot AI
  2. Получите API key
  3. Dashboard → Добавить API Key

Используйте: kimi/kimi-latest

Совет: Фикс $9/мес за 10M токенов = $0.90/1M эффективная стоимость!

🆓 БЕСПЛАТНЫЕ провайдеры (Аварийный бэкап)

iFlow (8 БЕСПЛАТНЫХ моделей)

Dashboard → Подключить iFlow
→ OAuth вход iFlow
→ Неограниченное использование

Модели:
  if/kimi-k2-thinking
  if/qwen3-coder-plus
  if/glm-4.7
  if/minimax-m2
  if/deepseek-r1

Qwen (3 БЕСПЛАТНЫЕ модели)

Dashboard → Подключить Qwen
→ Авторизация по коду устройства
→ Неограниченное использование

Модели:
  qw/qwen3-coder-plus
  qw/qwen3-coder-flash

Kiro (Claude БЕСПЛАТНО)

Dashboard → Подключить Kiro
→ AWS Builder ID или Google/GitHub
→ Неограниченное использование

Модели:
  kr/claude-sonnet-4.5
  kr/claude-haiku-4.5
🎨 Создание комбо

Пример 1: Максимизация подписки → Дешёвый бэкап

Dashboard  Комбо  Создать новое

Название: premium-coding
Модели:
  1. cc/claude-opus-4-6 (Основная подписка)
  2. glm/glm-4.7 (Дешёвый бэкап, $0.6/1M)
  3. minimax/MiniMax-M2.1 (Самый дешёвый fallback, $0.20/1M)

Используйте в CLI: premium-coding

Пример 2: Только бесплатные (Нулевая стоимость)

Название: free-combo
Модели:
  1. gc/gemini-3-flash-preview (180K бесплатно/мес)
  2. if/kimi-k2-thinking (неограниченно)
  3. qw/qwen3-coder-plus (неограниченно)

Стоимость: $0 навсегда!
🔧 Интеграция с CLI

Cursor IDE

Настройки  Модели  Расширенные:
  OpenAI API Base URL: http://localhost:20128/v1
  OpenAI API Key: [из dashboard OmniRoute]
  Model: cc/claude-opus-4-6

Claude Code

Используйте страницу CLI Tools в dashboard для настройки в один клик, или редактируйте ~/.claude/settings.json вручную.

Codex CLI

export OPENAI_BASE_URL="http://localhost:20128"
export OPENAI_API_KEY="your-omniroute-api-key"

codex "your prompt"

OpenClaw

Вариант 1 — Dashboard (рекомендуется):

Dashboard  CLI Tools  OpenClaw  Выбрать модель  Применить

Вариант 2 — Вручную: Редактируйте ~/.openclaw/openclaw.json:

{
  "models": {
    "providers": {
      "omniroute": {
        "baseUrl": "http://127.0.0.1:20128/v1",
        "apiKey": "sk_omniroute",
        "api": "openai-completions"
      }
    }
  }
}

Примечание: OpenClaw работает только с локальным OmniRoute. Используйте 127.0.0.1 вместо localhost для избежания проблем с IPv6.

Cline / Continue / RooCode

Настройки  Конфигурация API:
  Провайдер: OpenAI Compatible
  Base URL: http://localhost:20128/v1
  API Key: [из dashboard OmniRoute]
  Model: if/kimi-k2-thinking

🧪 Оценки (Evals)

OmniRoute включает встроенный фреймворк оценки для тестирования качества ответов LLM по golden set. Доступ через Analytics → Evals в dashboard.

Встроенный Golden Set

Предзагруженный «OmniRoute Golden Set» содержит 10 тестов:

  • Приветствия, математика, география, генерация кода
  • Соответствие формату JSON, перевод, markdown
  • Отказ от небезопасного контента, подсчёт, булева логика

Стратегии оценки

Стратегия Описание Пример
exact Вывод должен совпадать точно "4"
contains Вывод должен содержать подстроку (без учёта регистра) "Paris"
regex Вывод должен соответствовать regex-паттерну "1.*2.*3"
custom Пользовательская JS-функция возвращает true/false (output) => output.length > 10

🐛 Устранение неполадок

Нажмите для раскрытия руководства

«Language model did not provide messages»

  • Квота провайдера исчерпана → Проверьте трекер квот в dashboard
  • Решение: Используйте комбо с fallback или переключитесь на более дешёвый уровень

Rate limiting

  • Квота подписки исчерпана → Fallback на GLM/MiniMax
  • Добавьте комбо: cc/claude-opus-4-6 → glm/glm-4.7 → if/kimi-k2-thinking

OAuth-токен истёк

  • Обновляется автоматически OmniRoute
  • Если проблема сохраняется: Dashboard → Провайдер → Переподключить

Высокие расходы

  • Проверьте статистику в Dashboard → Расходы
  • Переключите основную модель на GLM/MiniMax
  • Используйте бесплатный уровень (Gemini CLI, iFlow) для некритичных задач

Dashboard открывается на неправильном порту

  • Установите PORT=20128 и NEXT_PUBLIC_BASE_URL=http://localhost:20128

Ошибки cloud sync

  • Проверьте что BASE_URL указывает на ваш запущенный экземпляр
  • Проверьте что CLOUD_URL указывает на правильный облачный endpoint
  • Держите значения NEXT_PUBLIC_* синхронизированными с серверными значениями

Первый вход не работает

  • Проверьте INITIAL_PASSWORD в .env
  • Если не задан, пароль по умолчанию 123456

Нет логов запросов

  • Установите ENABLE_REQUEST_LOGS=true в .env

Тест подключения показывает «Invalid» для OpenAI-совместимых провайдеров

  • Многие провайдеры не предоставляют endpoint /models
  • OmniRoute v1.0.6+ включает fallback-валидацию через chat completions
  • Убедитесь что base URL содержит суффикс /v1

🛠️ Технологический стек

  • Runtime: Node.js 20+
  • Язык: TypeScript 5.9 — 100% TypeScript в src/ и open-sse/ (v1.0.6)
  • Framework: Next.js 16 + React 19 + Tailwind CSS 4
  • База данных: LowDB (JSON) + SQLite (состояние домена + proxy-логи)
  • Стриминг: Server-Sent Events (SSE)
  • Аутентификация: OAuth 2.0 (PKCE) + JWT + API Keys
  • Тестирование: Node.js test runner (368+ юнит-тестов)
  • CI/CD: GitHub Actions (авто-публикация npm + Docker Hub при релизе)
  • Сайт: omniroute.online
  • Пакет: npmjs.com/package/omniroute
  • Docker: hub.docker.com/r/diegosouzapw/omniroute
  • Устойчивость: Circuit breaker, экспоненциальный backoff, anti-thundering herd, TLS-спуфинг

📖 Документация

Документ Описание
Руководство пользователя Провайдеры, комбо, интеграция CLI, деплой
Справка API Все endpoints с примерами
Устранение неполадок Частые проблемы и решения
Архитектура Архитектура системы и внутреннее устройство
Как внести вклад Настройка разработки и руководящие принципы
Спецификация OpenAPI Спецификация OpenAPI 3.0
Политика безопасности Сообщение об уязвимостях и практики безопасности

📧 Поддержка

💬 Присоединяйтесь к сообществу! Группа WhatsApp — Получайте помощь, делитесь советами и оставайтесь в курсе.


👥 Участники

Contributors

Как внести вклад

  1. Сделайте fork репозитория
  2. Создайте ветку функции (git checkout -b feature/amazing-feature)
  3. Зафиксируйте изменения (git commit -m 'Add amazing feature')
  4. Отправьте в ветку (git push origin feature/amazing-feature)
  5. Откройте Pull Request

См. CONTRIBUTING.md для подробных рекомендаций.

Выпуск новой версии

# Создайте релиз — публикация в npm происходит автоматически
gh release create v1.0.6 --title "v1.0.6" --generate-notes

📊 История звёзд

Star History Chart

🙏 Благодарности

Особая благодарность 9router от decolua — оригинальному проекту, вдохновившему этот форк. OmniRoute строится на этом невероятном фундаменте с дополнительными функциями, мультимодальными API и полной переписью на TypeScript.

Особая благодарность CLIProxyAPI — оригинальной реализации на Go, вдохновившей этот порт на JavaScript.


📄 Лицензия

Лицензия MIT — см. LICENSE для подробностей.


Сделано с ❤️ для разработчиков, которые программируют 24/7
omniroute.online