# 🚀 OmniRoute — Бесплатный AI-шлюз (Русский)

🌐 **Языки:** 🇺🇸 [English](../../../README.md) · 🇸🇦 [ar](../ar/README.md) · 🇧🇬 [bg](../bg/README.md) · 🇧🇩 [bn](../bn/README.md) · 🇨🇿 [cs](../cs/README.md) · 🇩🇰 [da](../da/README.md) · 🇩🇪 [de](../de/README.md) · 🇪🇸 [es](../es/README.md) · 🇮🇷 [fa](../fa/README.md) · 🇫🇮 [fi](../fi/README.md) · 🇫🇷 [fr](../fr/README.md) · 🇮🇳 [gu](../gu/README.md) · 🇮🇱 [he](../he/README.md) · 🇮🇳 [hi](../hi/README.md) · 🇭🇺 [hu](../hu/README.md) · 🇮🇩 [id](../id/README.md) · 🇮🇹 [it](../it/README.md) · 🇯🇵 [ja](../ja/README.md) · 🇰🇷 [ko](../ko/README.md) · 🇮🇳 [mr](../mr/README.md) · 🇲🇾 [ms](../ms/README.md) · 🇳🇱 [nl](../nl/README.md) · 🇳🇴 [no](../no/README.md) · 🇵🇭 [phi](../phi/README.md) · 🇵🇱 [pl](../pl/README.md) · 🇵🇹 [pt](../pt/README.md) · 🇧🇷 [pt-BR](../pt-BR/README.md) · 🇷🇴 [ro](../ro/README.md) · 🇷🇺 [ru](../ru/README.md) · 🇸🇰 [sk](../sk/README.md) · 🇸🇪 [sv](../sv/README.md) · 🇰🇪 [sw](../sw/README.md) · 🇮🇳 [ta](../ta/README.md) · 🇮🇳 [te](../te/README.md) · 🇹🇭 [th](../th/README.md) · 🇹🇷 [tr](../tr/README.md) · 🇺🇦 [uk-UA](../uk-UA/README.md) · 🇵🇰 [ur](../ur/README.md) · 🇻🇳 [vi](../vi/README.md) · 🇨🇳 [zh-CN](../zh-CN/README.md) · 🇹🇼 [zh-TW](../zh-TW/README.md)

---

<div align="center">

<img src="../../screenshots/MainOmniRoute.png" alt="Панель OmniRoute" width="820"/>

<br/>

# 🚀 OmniRoute — Бесплатный AI-шлюз

### Код без остановок. Один endpoint — **329 провайдеров**, **155 free/no-auth**.

**Claude Code, Codex, Cursor, Cline, Copilot и Antigravity → бесплатные Claude / GPT / Gemini с автопереключением.**

<br/>

**RTK + Caveman: экономия 15–95% токенов. Лимиты больше не мешают.**

<br/>

**~1.53B учитываемых бесплатных токенов / месяц** — в первый месяц до **~2.15B** с регистрационными бонусами. Живой учёт на `/dashboard/free-tiers`. ([методика →](../../reference/FREE_TIERS.md))

<br/>

[![329 AI Providers](https://img.shields.io/badge/329-AI_Providers-6C5CE7?style=for-the-badge)](#-329-ai-провайдеров--155-free-no-auth)
[![155 Free/No-Auth](https://img.shields.io/badge/155-Free%2FNo--Auth-00B894?style=for-the-badge)](#-329-ai-провайдеров--155-free-no-auth)
[![1.53B Free Tokens/mo](https://img.shields.io/badge/1.53B-Free_Tokens%2Fmo-00B894?style=for-the-badge)](../../reference/FREE_TIERS.md)
[![Token Savings](https://img.shields.io/badge/up_to_95%25-Token_Savings-E17055?style=for-the-badge)](#️-экономьте-1595-токенов--автоматически)
[![19 Strategies](https://img.shields.io/badge/19-Routing_Strategies-0984E3?style=for-the-badge)](#-комбо--главная-фича)
[![$0 to start](https://img.shields.io/badge/%240-To_Start-FDCB6E?style=for-the-badge&logoColor=black)](#-быстрый-старт)

<br/>

### 💬 Сообщество

[![Discord](https://img.shields.io/badge/Discord-5865F2?style=for-the-badge&logo=discord&logoColor=white)](https://discord.gg/U47eFqAXCn)
[![Telegram](https://img.shields.io/badge/Telegram-26A5E4?style=for-the-badge&logo=telegram&logoColor=white)](https://t.me/omnirouteOficial)
[![WhatsApp Global](https://img.shields.io/badge/WhatsApp_Global-25D366?style=for-the-badge&logo=whatsapp&logoColor=white)](https://chat.whatsapp.com/JI7cDQ1GyaiDHhVBpLxf8b?mode=gi_t)
[![WhatsApp Brasil](https://img.shields.io/badge/WhatsApp_Brasil-25D366?style=for-the-badge&logo=whatsapp&logoColor=white)](https://chat.whatsapp.com/LTSpdFhXTxjH4R6CCNiKWz)

**Вопросы, советы по провайдерам, roadmap и поддержка → [Discord](https://discord.gg/U47eFqAXCn) · [Telegram](https://t.me/omnirouteOficial) · WhatsApp [🌍 Global](https://chat.whatsapp.com/JI7cDQ1GyaiDHhVBpLxf8b?mode=gi_t) / [🇧🇷 Brasil](https://chat.whatsapp.com/LTSpdFhXTxjH4R6CCNiKWz)**

<br/>

<a href="https://trendshift.io/repositories/23589" target="_blank"><img src="https://trendshift.io/api/badge/repositories/23589" alt="diegosouzapw%2FOmniRoute | Trendshift" style="width: 250px; height: 55px;" width="250" height="55"/></a>

[![npm](https://img.shields.io/npm/v/omniroute?logo=npm&style=flat-square)](https://www.npmjs.com/package/omniroute)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg?style=flat-square)](../../../LICENSE)
[![Stars](https://img.shields.io/github/stars/diegosouzapw/OmniRoute?style=social)](https://github.com/diegosouzapw/OmniRoute)

[![npm version](https://img.shields.io/npm/v/omniroute?color=cb3837&logo=npm)](https://www.npmjs.com/package/omniroute)
![NPM Monthly](https://img.shields.io/npm/dm/omniroute?label=npm/month&color=cb3837&logo=npm)
[![Docker Hub](https://img.shields.io/docker/v/diegosouzapw/omniroute?label=Docker%20Hub&logo=docker&color=2496ED)](https://hub.docker.com/r/diegosouzapw/omniroute)
![Docker Pulls](https://img.shields.io/docker/pulls/diegosouzapw/omniroute?label=docker%20pulls&logo=docker&color=2496ED)
![Electron Downloads](https://img.shields.io/github/downloads/diegosouzapw/omniroute/total?style=flat&label=electron%20downloads&logo=electron&color=47848F)
[![Website](https://img.shields.io/badge/Website-omniroute.online-blue?logo=google-chrome&logoColor=white)](https://omniroute.online)

<br/>

[**🚀 Быстрый старт**](#-быстрый-старт) • [**🎯 Комбо**](#-комбо--главная-фича) • [**🌐 Провайдеры**](#-329-ai-провайдеров--155-free-no-auth) • [**🔌 CLI и MCP**](#-полный-cli--a2a-и-mcp) • [**🗜️ Сжатие**](#️-экономьте-1595-токенов--автоматически) • [**🌍 Сайт**](https://omniroute.online)

[💥 Обещание](#-обещание) • [🤔 Зачем](#-зачем-omniroute) • [🏆 Чем отличается](#-чем-omniroute-отличается) • [🤖 Совместимые CLI](#-совместимые-cli-и-агенты) • [🖥️ Где запускать](#️-где-запускается-omniroute--везде) • [🔒 Приватность](#-приватно-и-local-first) • [🎬 В деле](#-omniroute-в-деле) • [📚 Дальше](#-узнать-больше) • [📧 Поддержка](#-поддержка-и-сообщество)

</div>

<br/>

<div align="center">

# 💰 ~1.53B бесплатных токенов / месяц

</div>

> Собирать free-tier вручную — боль: десятки SDK, лимиты и непонятный остаток. OmniRoute показывает **155 записи каталога с меткой free/no-auth**; строго рассчитанный бюджет охватывает **43 пула / 522 бюджетные записи моделей** и отображается live на `/dashboard/free-tiers`.
>
> - **~1.53B free tokens / мес** (steady) — в первый месяц до **~2.15B** с signup-кредитами.
> - **Честная математика** — каждый shared pool считается **один раз**. «Если крутить rate limit 24/7» выйдет ~10B — такие цифры мы **не** публикуем.
> - **Отдельно** — провайдеры без опубликованного token cap, но с rate/concurrency/account-ограничениями (SiliconFlow, Z.AI GLM-Flash, Kilo, OpenCode Zen…), и разовый top-up OpenRouter на $10 → **+24M/мес** (не раздувают headline).
> - **По моделям**, used/remaining и пометки ToS — прямо в дашборде.

> Методика (дедуп пулов, кредиты, ToS): **[docs/reference/FREE_TIERS.md](../../reference/FREE_TIERS.md)**. Цифры пересматривают примерно раз в две недели — могут и **упасть**, и **вырасти**. CI (`check:docs-counts`) падает, если headline расходится с каталогом.

<br/>

<div align="center">

# 💥 Обещание

</div>

> Один endpoint. **329 провайдеров.** Код не останавливается — OmniRoute сам выбирает самый дешёвый рабочий вариант.

<table>
  <tr>
    <td width="33%" valign="top"><b>🛡️ Устойчивый fallback</b><br/><sub>При сбое upstream или исчерпании квоты OmniRoute пробует следующий допустимый маршрут; доступность зависит от провайдеров.</sub></td>
    <td width="33%" valign="top"><b>💸 До 95% токенов</b><br/><sub>RTK + Caveman stacked: 15–95% на сжимаемом (в tool-heavy сессиях в среднем ~89%).</sub></td>
    <td width="33%" valign="top"><b>🆓 Старт с $0</b><br/><sub>155 записей каталога помечены free/no-auth; условия и лимиты зависят от провайдера.</sub></td>
  </tr>
  <tr>
    <td width="33%" valign="top"><b>🔌 Все инструменты</b><br/><sub>26+ coding agents — Claude Code, Codex, Cursor, Cline, Copilot, Antigravity — один конфиг.</sub></td>
    <td width="33%" valign="top"><b>🧩 Один endpoint</b><br/><sub>OpenAI ↔ Claude ↔ Gemini ↔ Responses API. Укажите <code>/v1</code> — и готово.</sub></td>
    <td width="33%" valign="top"><b>🛡️ Production-grade</b><br/><sub>Circuit breakers, TLS stealth, MCP (107 tools), A2A, memory, guardrails, evals. 25 000+ тестов.</sub></td>
  </tr>
</table>

<br/>

<div align="center">

# 🤔 Зачем OmniRoute?

</div>

> Хватит прыгать между десятью кабинетами, мёртвыми ключами и неожиданными счетами.

| ❌ Боль каждый день                           | ✅ Как решает OmniRoute                                      |
| --------------------------------------------- | ------------------------------------------------------------ |
| 📉 Подписка сгорает неиспользованной          | **Выжимаем подписку** — трекинг квоты, тратим до reset       |
| 🛑 Rate limit посреди кода                    | **4-tier auto-fallback** — Subscription → API → Cheap → Free |
| 🔥 Tool-output (`git diff`, логи) жжёт токены | **RTK + Caveman** — 15–95% на сжимаемом                      |
| 💸 Дорогие API ($20–50/мес за провайдера)     | **Cost-optimized routing** — самый выгодный живой вариант    |
| 🧰 У каждого IDE свой сетап                   | **Один endpoint, один дашборд**                              |
| 🌍 AI заблокирован в регионе                  | **3-level proxy** + TLS fingerprint stealth                  |

<div align="center">

```
┌──────────────────────────────────────────────────────────┐
│     Ваш IDE / CLI  (Claude Code, Cursor, Cline…)          │
└─────────────────────────┬────────────────────────────────┘
                          │ http://localhost:20128/v1
                          ▼
┌──────────────────────────────────────────────────────────┐
│              OmniRoute — умный роутер                      │
│  RTK + Caveman · 19 стратегий · circuit breakers          │
│  TLS stealth · MCP · A2A · guardrails                     │
└─────────────────────────┬────────────────────────────────┘
        ┌─────────────┬────┴────────┬─────────────┐
        ▼ Tier 1      ▼ Tier 2      ▼ Tier 3      ▼ Tier 4
     Подписка        API Key       Cheap         Free
   Claude Code,     DeepSeek,     GLM $0.5,     Kiro, Qoder,
   Codex, Copilot   Groq, xAI     MiniMax $0.2  Pollinations
   квота? ───────▶  бюджет? ───▶  бюджет? ───▶  лимиты upstream
```

</div>

<br/>

<div align="center">

# 🎯 Комбо — главная фича

</div>

> **Combo** — цепочка моделей, по которой OmniRoute ходит **сам**. Квота кончилась, провайдер упал, цена взлетела — комбо пробует следующий допустимый шаг. Это расширяет покрытие fallback, но не гарантирует доступность upstream. 🛡️

### ⚡ Без настройки — просто `auto`

Комбо создавать не обязательно. Поставьте модель `auto` (или вариант) — OmniRoute соберёт виртуальное комбо из подключённых провайдеров:

| Model ID       | На что оптимизирует                                        |
| -------------- | ---------------------------------------------------------- |
| `auto`         | 🎯 Баланс (LKGP — держится за последний удачный провайдер) |
| `auto/coding`  | 🧑‍💻 Качество кода                                           |
| `auto/fast`    | ⚡ Минимальная latency                                     |
| `auto/cheap`   | 💰 Минимальная цена за токен                               |
| `auto/offline` | 🔋 Максимум headroom по квоте / rate limit                 |
| `auto/smart`   | 🔭 Качество + 10% exploration                              |

### 🔀 Или соберите своё — 19 стратегий

| #   | Стратегия           | Что делает                                                         |
| --- | ------------------- | ------------------------------------------------------------------ |
| 1   | `priority`          | Идёт по списку по порядку — выжимает каждый target 🥇              |
| 2   | `fill-first`        | Сначала полностью заполняет квоту target                           |
| 3   | `weighted`          | Взвешенный random                                                  |
| 4   | `round-robin`       | Цикл по targets                                                    |
| 5   | `p2c`               | Power-of-two-choices load balancing                                |
| 6   | `least-used`        | Наименьшая текущая нагрузка                                        |
| 7   | `random`            | Uniform random (с dedupe)                                          |
| 8   | `strict-random`     | Random без dedupe 🎲                                               |
| 9   | `cost-optimized`    | Минимум $ за запрос из live pricing 💸                             |
| 10  | `headroom`          | Больше всего оставшейся квоты                                      |
| 11  | `reset-window`      | Чья квота reset ближе                                              |
| 12  | `reset-aware`       | Ранг по reset — короткие окна первыми 📊                           |
| 13  | `context-relay`     | Передача контекста между targets 🧠                                |
| 14  | `context-optimized` | Лучший fit под размер контекста                                    |
| 15  | `cache-optimized`   | Закрепляет повторно используемый prefix prompt за тем же аккаунтом |
| 16  | `lkgp`              | Last-Known-Good Path — sticky к успеху                             |
| 17  | `auto`              | Live scoring по 13 факторам 🤖                                     |
| 18  | `fusion`            | Панель моделей + judge → один ответ 🧬                             |
| 19  | `pipeline`          | Цепочка: output шага N → input N+1 🔗                              |

<sub>Auto-Combo scoring: **13 факторов** (health, quota, cost, latency, success rate, freshness, cache affinity…). Подробнее: [`docs/routing/AUTO-COMBO.md`](../../routing/AUTO-COMBO.md).</sub>

### ⚖️ Quota-Share — одна подписка на команду ✨

Несколько ключей на **один** upstream-аккаунт? Burst на одном ключе может сжечь 5h/hourly quota на всех. **Quota-Share** честно делит time-based quota между ключами пула (work-conserving: idle-доля отдаётся другим).

| Параметр          | Управление                                                  |
| ----------------- | ----------------------------------------------------------- |
| ⚖️ **Weight**     | Доля ключа, напр. `50 / 30 / 20`                            |
| 📐 **Dimensions** | `%` · requests · tokens · `$`, окна **5h / 7d / per-model** |
| 🚦 **Policy**     | `hard` · `soft` · `burst`                                   |
| 🧱 **Cap**        | Жёсткий потолок на ключ                                     |

<sub>📖 [Quota Sharing Engine](../../routing/QUOTA_SHARE.md)</sub>

### 🧱 Три слоя устойчивости

| Слой                       | Область             | Механизм                                                      |
| -------------------------- | ------------------- | ------------------------------------------------------------- |
| 🔌 **Circuit breaker**     | Весь провайдер      | Перестаёт слать запросы в «падающий» upstream; probe recovery |
| 💤 **Connection cooldown** | Один ключ / аккаунт | Пропускает «горячий» ключ, siblings продолжают                |
| 🎯 **Model lockout**       | Одна модель         | Блокирует только исчерпанную модель, не всю connection        |

```
Combo: "always-on"                         strategy: priority
  1. cc/claude-opus-4-7   ← подписка (сначала)
  2. cx/gpt-5.2-codex     ← вторая подписка
  3. glm/glm-4.7          ← cheap ($0.5–0.6/1M)
  4. if/kimi-k2-thinking  ← listed free access; rate limits may apply
Итог: 4 уровня расширяют fallback; доступность upstream не гарантируется
```

<sub>📖 [Auto-Combo](../../routing/AUTO-COMBO.md) · [Resilience Guide](../../architecture/RESILIENCE_GUIDE.md)</sub>

<br/>

<div align="center">

# 🏆 Чем OmniRoute отличается

</div>

| Фича                      | OmniRoute                              | Другие роутеры |
| ------------------------- | -------------------------------------- | -------------- |
| 🌐 Провайдеры             | **329**                                | 20–100         |
| 🆓 Free/no-auth           | **155 записей каталога**               | 1–5            |
| 🔀 Стратегии              | **19**                                 | 1–3            |
| 🗜️ Сжатие токенов         | **RTK + Caveman (15–95%)**             | Нет / 20–40%   |
| 🧰 MCP server             | **107 tools, 3 transports, 32 scopes** | Редко          |
| 🤝 A2A                    | **6 skills, JSON-RPC 2.0**             | Нет            |
| 🧠 Memory (FTS5 + vector) | **Да**                                 | Редко          |
| 🛡️ Guardrails             | **Да**                                 | Редко          |
| ☁️ Cloud agents           | **Codex, Cursor, Devin, Jules**        | Нет            |
| 🥷 TLS stealth            | **JA3/JA4 via wreq-js**                | Нет            |
| 🖥️ Платформы              | **Web · Desktop · Termux · PWA**       | Только web     |
| 🌍 i18n                   | **43 локали**                          | 0–4            |

<sub>📊 Сравнение с LiteLLM, OpenRouter, Portkey → [`docs/comparison/OMNIROUTE_VS_ALTERNATIVES.md`](../../comparison/OMNIROUTE_VS_ALTERNATIVES.md)</sub>

<br/>

<div align="center">

# ✨ Что нового

</div>

> Highlights **v3.8.20 → v3.8.49**. Полная история: [`CHANGELOG.md`](../../../CHANGELOG.md).

- **🗜️ Compression hardening** — inflation guard по умолчанию, Caveman packs DE/FR/JA + Chinese (文言), RTK filters для Gradle & .NET.
- **💸 Honest flat-rate cost** — subscription/coding-plan в analytics = **$0**; budget/quota/routing по-прежнему оценивают.
- **⚖️ Quota-Share routing** — DRR, concurrency, multi-window buckets, session stickiness.
- **🤖 One-command CLI setup** — `setup-*` для 12+ tools; `omniroute launch` / `launch-codex`.
- **🛰️ Remote mode** — `connect` / `contexts` / `tokens` + OAuth helper для VPS.
- **🧭 Smarter auto** — `auto/<category>:<tier>`, Fusion, task-aware routing, per-request overrides.
- **🗜️ Pluggable compression** — 11 engines + Studios, LLMLingua-2, Ultra, fidelity gate, GCF v3.2.
- **🕵️ MITM decrypt (TPROXY)** — CLI, игнорирующие proxy env; per-SNI CA.
- **💸 Cost telemetry** — `X-OmniRoute-*` headers, cache-HIT savings, per-key USD quotas.
- **🧠 Memory** — opt-in, int8 quantization, `x-omniroute-no-memory`.
- **🛡️ Security** — prompt-injection guard + DuckDuckGo last-resort search.
- **🖼️ Endpoints** — `/v1/ocr`, `/v1/audio/translations`.
- **🤝 Providers & agents** — Cursor Cloud Agent, Grok Build (xAI), Ollama card, Claude Sonnet 5, Zed, Requesty…

<br/>

<div align="center">

# 🤖 Совместимые CLI и агенты

</div>

> Один конфиг — `http://localhost:20128/v1` — и **любой** AI IDE/CLI едет на free & low-cost моделях.

|                                                              |                                                  |                |                                                       |                |              |
| ------------------------------------------------------------ | ------------------------------------------------ | -------------- | ----------------------------------------------------- | -------------- | ------------ |
| [**Claude Code**](https://github.com/anthropics/claude-code) | [**Codex CLI**](https://github.com/openai/codex) | **Cline**      | [**Kilo Code**](https://github.com/Kilo-Org/kilocode) | **Roo Code**   | **Continue** |
| [**OpenCode**](https://github.com/anomalyco/opencode)        | **Copilot CLI**                                  | **Cursor CLI** | **Factory Droid**                                     | **Grok Build** | **OpenClaw** |

<div align="center">
<b>＋ также</b> · Aider · Goose · Hermes · Kiro · Antigravity · Windsurf · AMP · <b>любой OpenAI-compatible tool</b>
</div>

<sub>📖 Setup 34 tools → [`docs/reference/CLI-TOOLS.md`](../../reference/CLI-TOOLS.md) · OpenCode plugin → [`@omniroute/opencode-provider`](https://www.npmjs.com/package/@omniroute/opencode-provider)</sub>

<br/>

<div align="center">

# 🌐 329 AI-провайдеров — 155 free/no-auth

</div>

> Самый полный каталог среди open-source роутеров: **329 провайдеров**, включая **155 записи free/no-auth**.

### 🆓 Documented free access — $0 where listed, без карты

| Провайдер         | Что даёт                                                        |
| ----------------- | --------------------------------------------------------------- |
| **AgentRouter**   | GPT-5, Claude, Gemini — $100 free credits                       |
| **Qoder AI**      | Kimi-K2, DeepSeek-R1 — free access; daily/rate limits may apply |
| **Pollinations**  | GPT-5, Claude, Llama 4 — без ключа                              |
| **LongCat**       | LongCat-2.0 — 10M one-time (KYC)                                |
| **Cloudflare AI** | 50+ models — 10K neurons/day                                    |
| **NVIDIA NIM**    | 129 models — ~40 RPM free                                       |
| **Cerebras**      | Qwen3 235B — 1M tokens/day                                      |
| **Kiro**          | Claude Sonnet/Haiku — ~50 credits/mo                            |

📖 Machine-readable catalog → [`docs/reference/PROVIDER_REFERENCE.md`](../../reference/PROVIDER_REFERENCE.md)

<br/>

<div align="center">

# 🖥️ Где запускается OmniRoute — везде

</div>

| Платформа                 | Установка                                | Плюсы                          |
| ------------------------- | ---------------------------------------- | ------------------------------ |
| 📦 **npm (global)**       | `npm install -g omniroute`               | Одна команда, любая ОС         |
| 🐳 **Docker**             | `docker run … diegosouzapw/omniroute`    | **AMD64 + ARM64**              |
| 🖥️ **Desktop (Electron)** | `npm run electron:build`                 | Окно + tray — Win/macOS/Linux  |
| 💪 **ARM**                | native `arm64`                           | Pi, ARM servers, Apple Silicon |
| 📱 **Android (Termux)**   | `pkg install nodejs && npx -y omniroute` | На телефоне 24/7, без root     |
| 📲 **PWA**                | «Add to Home Screen»                     | Fullscreen, offline            |
| 🧩 **OpenCode plugin**    | `@omniroute/opencode-provider`           | Нативная интеграция            |
| 🛠️ **Из исходников**      | `npm install && npm run dev`             | Хакинг и контрибьют            |

<sub>📖 [Docker](../../guides/DOCKER_GUIDE.md) · [Desktop](../../../electron/README.md) · [Termux](../../guides/TERMUX_GUIDE.md) · [PWA](../../guides/PWA_GUIDE.md) · [OpenCode](../../frameworks/OPENCODE.md)</sub>

<br/>

<div align="center">

# 🔒 Приватно и local-first

</div>

> Ваши ключи, ваша машина, ваши данные. OmniRoute — **локальный прокси**, без «звонков домой».

- 🏠 **100% на вашем железе** — npm, Docker, desktop или телефон. Нет cloud-hop OmniRoute.
- 🔐 **Credentials at rest** — API keys и OAuth в **AES-256-GCM**.
- 🚫 **Zero telemetry по умолчанию** — промпты уходят только выбранным провайдерам.
- 🛡️ **Жёсткий gateway** — scoping ключей, IP filter, rate limits, prompt-injection guard, loopback-only process routes.
- 📜 **MIT, fully open-source** — аудируйте построчно, self-host навсегда.

<sub>📖 [Authorization](../../architecture/AUTHZ_GUIDE.md) · [Guardrails](../../security/GUARDRAILS.md) · [Compliance](../../security/COMPLIANCE.md)</sub>

<br/>

<div align="center">

# 🔌 Полный CLI + A2A и MCP

</div>

> Это не «просто сервер» — **CLI-кокит** с **80+ командами** и открытыми agent-протоколами, чтобы AI управлял OmniRoute **сам**.

### ⌨️ Настоящий CLI

```bash
omniroute               # gateway + dashboard (порт 20128)
omniroute chat          # TUI-чат (/model /combo /skill /memory)
omniroute setup         # мастер первого запуска
omniroute doctor        # диагностика провайдеров, портов, native deps
```

### 🛰️ Remote mode — CLI здесь, OmniRoute на VPS

```bash
omniroute connect 192.168.0.15            # пароль → scoped token
omniroute models list                     # ← на REMOTE
omniroute configure codex                 # remote model → local Codex profile
omniroute tokens create --name ci --scope read
omniroute contexts use default            # ← обратно на local
```

Scopes: `read` / `write` / `admin`. Process-spawning routes — только loopback.
<sub>📖 [Remote Mode](../../guides/REMOTE-MODE.md)</sub>

### 🤝 Подключите агента — он управляет шлюзом

| Протокол           | Endpoint                                        | Зачем                                    |
| ------------------ | ----------------------------------------------- | ---------------------------------------- |
| 🧰 **MCP (stdio)** | `omniroute --mcp`                               | Claude Desktop, Cursor, любой MCP client |
| 🌊 **MCP (HTTP)**  | `http://localhost:20128/api/mcp/stream`         | Remote MCP — **107 tools**, 32 scopes    |
| 📡 **MCP (SSE)**   | `http://localhost:20128/api/mcp/sse`            | Streaming MCP                            |
| 🤝 **A2A**         | `http://localhost:20128/.well-known/agent.json` | Agent-to-agent, JSON-RPC 2.0 + SSE       |

```bash
claude mcp add-server omniroute --type http --url http://localhost:20128/api/mcp/stream
```

<sub>📖 [MCP](../../frameworks/MCP-SERVER.md) · [A2A](../../frameworks/A2A-SERVER.md) · [Agent Protocols](../../frameworks/AGENT_PROTOCOLS_GUIDE.md)</sub>

<br/>

<div align="center">

# 🗜️ Экономьте 15–95% токенов — автоматически

</div>

> **Зачем тратить много токенов, если хватает меньшего?** Каждый запрос идёт через compression pipeline **прозрачно** — клиент не меняется. Стек из **11 composable engines** (идеи [RTK](https://github.com/rtk-ai/rtk), [Caveman](https://github.com/JuliusBrussee/caveman), [LLMLingua-2](https://github.com/microsoft/LLMLingua), [Troglodita](https://github.com/leninejunior/troglodita)).

### 🧱 11-engine stack

| #   | Engine            | Что делает                                               |
| --- | ----------------- | -------------------------------------------------------- |
| 1   | **Session-Dedup** | Убирает повторённый cross-turn контент                   |
| 2   | **CCR**           | Крупные блоки за retrieve-markers, fetch on demand       |
| 3   | **RTK**           | Умная фильтрация tool-result, dedup, truncation          |
| 4   | **Headroom**      | Lossless tabular compaction JSON arrays (~30%), GCF v3.2 |
| 5   | **Relevance**     | Extractive scoring относительно last user query          |
| 6   | **Caveman**       | Rule-based prose (~65–75% на output)                     |
| 7   | **LLMLingua-2**   | ML semantic pruning (MobileBERT ONNX), code-safe         |
| 8   | **Lite**          | Whitespace + image-URL trimming                          |
| 9   | **Aggressive**    | Summarization + progressive aging старых turns           |
| 10  | **Ultra**         | Heuristic pruning + optional SLM tier                    |

Код, URL и structured data **всегда** сохраняются byte-perfect.

| Режим                          | Экономия   | Когда                             |
| ------------------------------ | ---------- | --------------------------------- |
| 🪶 **Lite**                    | ~15%       | Безопасный always-on default      |
| 🪨 **Standard (Caveman)**      | ~30%       | Ежедневный coding                 |
| ⚡ **Aggressive**              | ~50%       | Длинные tool-heavy сессии         |
| 🔥 **Ultra**                   | ~75%       | Максимум экономии                 |
| 🧰 **RTK**                     | 60–90%     | Shell / test / build / git output |
| 🔗 **Stacked (RTK → Caveman)** | **78–95%** | Промпты + tool logs               |

**Пример — Standard:**

> **До (69 tokens):** _"The reason your React component is re-rendering is likely because you're creating a new object reference on each render cycle…"_
>
> **После (19 tokens):** _"New object ref each render. Inline object prop = new ref = re-render. Wrap in useMemo."_
>
> **Тот же смысл. −72% tokens. Без потери точности.** ✅

Default stack: `RTK → Caveman`. Combined:

```txt
combined = 1 − (1 − RTK) × (1 − Caveman_input)
average  = 1 − (1 − 0.80) × (1 − 0.46) = 89.2%
range    = 78.4 – 94.6%
```

Precedence (high → low): header `x-omniroute-compression` › combo override › named profile › adaptive › panel default › off.

📖 [`COMPRESSION_GUIDE.md`](../../compression/COMPRESSION_GUIDE.md) · [`RTK_COMPRESSION.md`](../../compression/RTK_COMPRESSION.md) · [`COMPRESSION_ENGINES.md`](../../compression/COMPRESSION_ENGINES.md)

<br/>

<div align="center">

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

</div>

**1) Установка и запуск**

```bash
npm install -g omniroute
omniroute
```

> 💡 Видите `npm warn ERESOLVE` / peer-dep? [Это безвредно](../../getting-started/TROUBLESHOOTING.md#npm-install-warnings-eresolve--peer--deprecated).

Dashboard: `http://localhost:20128` · API: `http://localhost:20128/v1`.

**2) Подключите FREE-провайдера (без signup)**

Dashboard → **Providers** → **Kiro AI** (free Claude, ~50 credits/mo) или **OpenCode Free** (без auth) → готово.

**3) Направьте coding tool**

```txt
Base URL: http://localhost:20128/v1
API Key:  [Dashboard → Endpoints]
Model:    auto            (zero-config smart routing — или любой provider/model)
```

**4) Проверка**

```bash
curl http://localhost:20128/v1/models -H "Authorization: Bearer YOUR_KEY"
```

Должны появиться подключённые модели. 🎉 Дальше пишите код — OmniRoute сам роутит и делает fallback.

Если клиент **не умеет** custom headers — tokenized aliases:

```txt
OpenAI catalog:   http://localhost:20128/vscode/YOUR_KEY/
OpenAI models:    http://localhost:20128/vscode/YOUR_KEY/models
OpenAI chat:      http://localhost:20128/vscode/YOUR_KEY/chat/completions
OpenAI responses: http://localhost:20128/vscode/YOUR_KEY/responses
Ollama chat:      http://localhost:20128/vscode/YOUR_KEY/api/chat
Ollama tags:      http://localhost:20128/vscode/YOUR_KEY/api/tags
```

Предпочтительно: `Authorization: Bearer ...`.

<br/>

## 📦 Другие способы — Docker, source, pnpm, Arch

**🐳 Docker**

```bash
docker run -d --name omniroute --restart unless-stopped --stop-timeout 40 \
  -p 127.0.0.1:20128:20128 -v omniroute-data:/app/data diegosouzapw/omniroute:latest
```

**🛠️ Из исходников**

```bash
cp .env.example .env && npm install
PORT=20128 npm run dev
```

**📦 pnpm**

```bash
pnpm add -g omniroute@latest --allow-build=better-sqlite3 --allow-build=@swc/core && omniroute
```

**🐧 Arch Linux (AUR)**

```bash
yay -S omniroute-bin && systemctl --user enable --now omniroute.service
```

**🔧 Nix (Flake)**

```bash
nix develop
npm run dev
# или: devbox run npm run dev
```

📖 [Docker Guide](../../guides/DOCKER_GUIDE.md) — Compose, Caddy HTTPS, Cloudflare tunnels.

### Полезные флаги CLI

| Команда                 | Описание                               |
| ----------------------- | -------------------------------------- |
| `omniroute`             | Сервер (`PORT=20128`, API + dashboard) |
| `omniroute --port 3000` | Порт 3000                              |
| `omniroute --mcp`       | MCP server (stdio)                     |
| `omniroute --no-open`   | Не открывать браузер                   |
| `omniroute --help`      | Справка                                |

Split-port:

```bash
PORT=20128 DASHBOARD_PORT=20129 omniroute
# API:       http://localhost:20128/v1
# Dashboard: http://localhost:20129
```

### Удаление

| Команда                      | Действие                                  |
| ---------------------------- | ----------------------------------------- |
| `npm run uninstall`          | Убирает app, **сохраняет** `~/.omniroute` |
| `npm run uninstall:full`     | Удаляет app **и** все ключи/БД            |
| `npm uninstall -g omniroute` | Глобальный npm uninstall                  |

### Старт с $0 — Free Stack

| Шаг | Действие                                         | Что открывается                     |
| --- | ------------------------------------------------ | ----------------------------------- |
| 1   | Подключить **Kiro** (AWS Builder ID OAuth)       | Claude Sonnet / Haiku               |
| 2   | Подключить **Qoder** (Google OAuth)              | kimi-k2-thinking, qwen3-coder-plus… |
| 3   | Подключить **Qwen** (Device Code)                | qwen3-coder-plus/flash…             |
| 4   | `/dashboard/combos` → шаблон **Free Stack ($0)** | Round-robin free-провайдеров        |

IDE/CLI: `http://localhost:20128/v1` · API Key: любая строка (если `REQUIRE_API_KEY=false`).

> **Дополнительно free:** Groq (30 RPM), NVIDIA NIM (~40 RPM), Cerebras (1M tok/day), LongCat, Cloudflare Workers AI (10K Neurons/day).

<br/>

<div align="center">

# 🎬 OmniRoute в деле

</div>

<div align="center">
<table>
  <tr>
    <td align="center" width="280">
      <a href="https://www.youtube.com/watch?v=Rxdc36yUyOQ"><img src="https://img.youtube.com/vi/Rxdc36yUyOQ/maxresdefault.jpg" alt="Guia em Português" width="260"/></a><br/>
      <b>🇧🇷 Português</b><br/><sub>Полный гайд</sub>
    </td>
    <td align="center" width="280">
      <a href="https://www.youtube.com/watch?v=CMzyOiUyEVc"><img src="https://img.youtube.com/vi/CMzyOiUyEVc/maxresdefault.jpg" alt="English Guide" width="260"/></a><br/>
      <b>🇺🇸 English</b><br/><sub>Complete walkthrough</sub>
    </td>
    <td align="center" width="280">
      <a href="https://www.youtube.com/watch?v=il_5Ii6v4-Y"><img src="https://img.youtube.com/vi/il_5Ii6v4-Y/maxresdefault.jpg" alt="Руководство на русском" width="260"/></a><br/>
      <b>🇷🇺 Русский</b><br/><sub>Полное руководство</sub>
    </td>
  </tr>
</table>
</div>

> 🎬 **Сняли видео про OmniRoute?** Откройте [issue](https://github.com/diegosouzapw/OmniRoute/issues/new) или [discussion](https://github.com/diegosouzapw/OmniRoute/discussions) — добавим в этот раздел.

<br/>

<div align="center">

# 📚 Узнать больше

</div>

<details>
<summary><b>💰 Цены и zero-cost stack</b></summary>

<br/>

| Tier                          | Примеры                                  | Стоимость           |
| ----------------------------- | ---------------------------------------- | ------------------- |
| 💳 **Subscription**           | Claude Code Pro / Codex / Copilot        | $10–200/мес         |
| 🔑 **API Key (free tiers)**   | NVIDIA NIM, Cerebras, Groq               | **Free**            |
| 💰 **Cheap**                  | GLM ~$0.5/1M · MiniMax ~$0.2–0.3/1M      | Копейки             |
| 🆓 **Documented free access** | Kiro, Qoder, Qwen, Pollinations, LongCat | **$0 where listed** |

**Playbook A — выжать подписку + cheap backup:**

```txt
Combo: "maximize-claude"
  1. cc/claude-opus-4-7
  2. glm/glm-4.7
  3. if/kimi-k2-thinking
```

**Playbook B — zero-cost coding:**

```txt
Combo: "free-tier-fallback"
  1. if/kimi-k2-thinking
  2. qw/qwen3-coder-plus
```

> 💡 «Cost» в дашборде — **tracker экономии**, не счёт OmniRoute. OmniRoute вам **не** выставляет счета.

📖 Free catalog → [`docs/reference/FREE_TIERS.md`](../../reference/FREE_TIERS.md)

</details>

<details>
<summary><b>🌍 Геоблоки — 3-level proxy + stealth</b></summary>

<br/>

🇷🇺 🇨🇳 🇮🇷 и другие restricted regions? **Proxy на 3 уровнях** (global / per-provider / per-connection): API, OAuth, connection tests, token refresh, model sync.

- **Protocols:** HTTP/HTTPS, SOCKS5, auth proxies
- **TLS fingerprint spoofing** (`wreq-js`), CLI fingerprint matching
- OAuth через proxy — лечит `unsupported_country_region_territory`

📖 [`docs/ops/PROXY_GUIDE.md`](../../ops/PROXY_GUIDE.md)

</details>

<details>
<summary><b>✨ Возможности (кратко)</b></summary>

<br/>

**Routing:** 19 стратегий · task-aware · thinking budget · wildcards · system prompt injection.
**Compatibility:** OpenAI ↔ Claude ↔ Gemini ↔ Responses · OAuth PKCE auto-refresh · multi-account · Batch + Files API.  
**Protocols:** MCP (107 tools) · A2A · ACP · cloud agents.
**Quality/ops:** Evals · guardrails (PII, injection) · health · p50/p95/p99 · webhooks · audit.  
**Media:** embeddings, images, video, music, STT/TTS, OCR, moderations, rerank.

</details>

<details>
<summary><b>📖 Env, FAQ</b></summary>

<br/>

| Variable                 | Default        | Назначение                 |
| ------------------------ | -------------- | -------------------------- |
| `PORT`                   | `20128`        | API + dashboard            |
| `REQUIRE_API_KEY`        | `false`        | Требовать API key на `/v1` |
| `DATA_DIR`               | `~/.omniroute` | БД и конфиги               |
| `REQUEST_TIMEOUT_MS`     | `600000`       | Базовый timeout            |
| `STREAM_IDLE_TIMEOUT_MS` | inherits       | Idle gap SSE               |

**OmniRoute берёт деньги?** Нет — open-source на вашей машине. Платите только платным провайдерам.  
**Free правда unlimited?** Нет гарантии: даже без опубликованного token cap действуют rate/concurrency/account/region limits и условия провайдера. Комбо из нескольких free/no-auth записей повышает устойчивость, но не отменяет эти ограничения.
**Сжатие портит качество?** Сжимается **input**; code/URL/JSON protected.  
**Регион заблокирован?** Proxy + stealth.

📖 [User Guide](../../guides/USER_GUIDE.md) · [API](../../reference/API_REFERENCE.md) · [Environment](../../reference/ENVIRONMENT.md)

</details>

<details>
<summary><b>🐛 Troubleshooting</b></summary>

<br/>

| Проблема                                  | Быстрый фикс                                             |
| ----------------------------------------- | -------------------------------------------------------- |
| "Language model did not provide messages" | Квота провайдера → combo fallback                        |
| 429 rate limit                            | Цепочка: `cc/claude → glm/glm-4.7 → if/kimi-k2-thinking` |
| OAuth expired                             | Auto-refresh; иначе Providers → re-auth                  |
| `unsupported_country_region_territory`    | Settings → Proxy                                         |
| Docker SQLite lock                        | `--stop-timeout 40`                                      |
| Node runtime                              | Node `>=22.0.0 <23` или `>=24.0.0 <27`                   |

🐛 **Баг?** `npm run system-info` → приложите `system-info.txt` к issue.  
📖 [`TROUBLESHOOTING.md`](../../guides/TROUBLESHOOTING.md)

</details>

<details>
<summary><b>📸 Скриншоты дашборда</b></summary>

<br/>

| Page       | Screenshot                                         | Page       | Screenshot                                     |
| ---------- | -------------------------------------------------- | ---------- | ---------------------------------------------- |
| Providers  | ![Providers](../../screenshots/01-providers.png)   | Combos     | ![Combos](../../screenshots/02-combos.png)     |
| Analytics  | ![Analytics](../../screenshots/03-analytics.png)   | Health     | ![Health](../../screenshots/04-health.png)     |
| Translator | ![Translator](../../screenshots/05-translator.png) | Settings   | ![Settings](../../screenshots/06-settings.png) |
| CLI Tools  | ![CLI Tools](../../screenshots/07-cli-tools.png)   | Usage Logs | ![Usage](../../screenshots/08-usage.png)       |

</details>

<br/>

<div align="center">

# 📧 Поддержка и сообщество

> 💬 Ссылки Discord / Telegram / WhatsApp — [в шапке README](#-сообщество).

- 🌍 **Сайт:** [omniroute.online](https://omniroute.online)
- 🐙 **GitHub:** [github.com/diegosouzapw/OmniRoute](https://github.com/diegosouzapw/OmniRoute)
- 🐛 **Issues:** [сообщить о баге](https://github.com/diegosouzapw/OmniRoute/issues) (с `npm run system-info`)
- 🤝 **Contributing:** [CONTRIBUTING.md](../../../CONTRIBUTING.md) или label `good first issue`

</div>

---

<div align="center">

## 🛠️ Стек

</div>

- **Runtime:** Node.js 22.x или 24.x LTS — `>=22.0.0 <23 || >=24.0.0 <27`
- **Language:** TypeScript (src/ + open-sse/)
- **Framework:** Next.js 16 + React 19 + Tailwind CSS 4
- **DB:** better-sqlite3 + LowDB
- **Validation:** Zod
- **Protocols:** MCP (stdio/HTTP/SSE) + A2A (JSON-RPC 2.0 + SSE)
- **Auth:** OAuth 2.0 (PKCE) + JWT + API keys + MCP scopes
- **Platforms:** Electron desktop, Termux, PWA
- **CI/CD:** GitHub Actions → npm + Docker Hub
- **Resilience:** circuit breakers, backoff, anti-thundering-herd, TLS stealth, auto-combo

---

<div align="center">

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

</div>

### 📘 Старт

| Документ                                       | О чём                                     |
| ---------------------------------------------- | ----------------------------------------- |
| [User Guide](../../guides/USER_GUIDE.md)       | Провайдеры, комбо, CLI, deploy            |
| [Setup Guide](../../guides/SETUP_GUIDE.md)     | Установка, CLI tools, protocols, timeouts |
| [CLI Tools](../../reference/CLI-TOOLS.md)      | Claude Code, Codex, Cursor, Cline…        |
| [Remote Mode](../../guides/REMOTE-MODE.md)     | CLI с ноутбука → OmniRoute на VPS         |
| [Quick Start](../../../README.md#-quick-start) | EN root: install → connect → point        |

### 🔧 Ops

| Документ                                          | О чём                        |
| ------------------------------------------------- | ---------------------------- |
| [Docker Guide](../../guides/DOCKER_GUIDE.md)      | Run, Compose, Caddy, tunnels |
| [Podman](../../../contrib/podman/README.md)       | Quadlet, SELinux             |
| [VM Deployment](../../ops/VM_DEPLOYMENT_GUIDE.md) | VM + nginx + Cloudflare      |
| [Termux](../../guides/TERMUX_GUIDE.md)            | Android                      |
| [Environment](../../reference/ENVIRONMENT.md)     | Полный `.env` reference      |

### 🧠 Архитектура и фичи

| Документ                                                    | О чём                     |
| ----------------------------------------------------------- | ------------------------- |
| [Architecture](../../architecture/ARCHITECTURE.md)          | Система и data flow       |
| [Compression Guide](../../compression/COMPRESSION_GUIDE.md) | Pipeline сжатия           |
| [Resilience Guide](../../architecture/RESILIENCE_GUIDE.md)  | Breakers, cooldown, queue |
| [Auto-Combo](../../routing/AUTO-COMBO.md)                   | Scoring и self-heal       |
| [Proxy Guide](../../ops/PROXY_GUIDE.md)                     | 3-level proxy             |
| [Free Tiers](../../reference/FREE_TIERS.md)                 | Free catalog              |

### 🤖 Протоколы и API

| Документ                                          | О чём             |
| ------------------------------------------------- | ----------------- |
| [API Reference](../../reference/API_REFERENCE.md) | Все endpoints     |
| [MCP Server](../../frameworks/MCP-SERVER.md)      | Tools, transports |
| [A2A Server](../../frameworks/A2A-SERVER.md)      | Skills, streaming |

### 📋 Проект

| Документ                                 | О чём                        |
| ---------------------------------------- | ---------------------------- |
| [CONTRIBUTING](../../../CONTRIBUTING.md) | Dev setup                    |
| [CHANGELOG](../../../CHANGELOG.md)       | История релизов              |
| [SECURITY](../../../SECURITY.md)         | Vulnerability reporting      |
| [I18N](../../guides/I18N.md)             | 43 языка, pipeline переводов |

---

<div align="center">

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

</div>

1. Fork репозитория
2. Ветка: `git checkout -b docs/ru-readme-full-translation`
3. Commit: `git commit -m "docs(i18n): full Russian README rewrite"`
4. Push и **Pull Request** в upstream

Полный гайд: [CONTRIBUTING.md](../../../CONTRIBUTING.md).

[![Contributors](https://contrib.rocks/image?repo=diegosouzapw/OmniRoute&max=100&columns=20&anon=1)](https://github.com/diegosouzapw/OmniRoute/graphs/contributors)

---

<div align="center">

## 📊 Star History

<a href="https://www.star-history.com/?repos=diegosouzapw%2Fomniroute&type=date&legend=top-left">
 <picture>
   <source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/chart?repos=diegosouzapw/omniroute&type=date&theme=dark&legend=top-left" />
   <source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/chart?repos=diegosouzapw/omniroute&type=date&legend=top-left" />
   <img alt="Star History Chart" src="https://api.star-history.com/chart?repos=diegosouzapw/omniroute&type=date&legend=top-left" />
 </picture>
</a>

<br/><br/>

**Сделано с ❤️ open-source сообществом · MIT License · [omniroute.online](https://omniroute.online)**

⭐ Если OmniRoute помог сэкономить — поставьте star репозиторию.

</div>
