# README (Українська) 🌐 **Languages:** 🇺🇸 [English](../../../README.md) · 🇪🇹 [am](../am/README.md) · 🇸🇦 [ar](../ar/README.md) · 🇦🇿 [az](../az/README.md) · 🇧🇬 [bg](../bg/README.md) · 🇧🇩 [bn](../bn/README.md) · 🇧🇦 [bs](../bs/README.md) · 🇨🇿 [cs](../cs/README.md) · 🇩🇰 [da](../da/README.md) · 🇩🇪 [de](../de/README.md) · 🇬🇷 [el](../el/README.md) · 🇪🇸 [es](../es/README.md) · 🇪🇪 [et](../et/README.md) · 🇮🇷 [fa](../fa/README.md) · 🇫🇮 [fi](../fi/README.md) · 🇫🇷 [fr](../fr/README.md) · 🇮🇪 [ga](../ga/README.md) · 🇮🇳 [gu](../gu/README.md) · 🇳🇬 [ha](../ha/README.md) · 🇮🇱 [he](../he/README.md) · 🇮🇳 [hi](../hi/README.md) · 🇭🇷 [hr](../hr/README.md) · 🇭🇺 [hu](../hu/README.md) · 🇦🇲 [hy](../hy/README.md) · 🇮🇩 [id](../id/README.md) · 🇳🇬 [ig](../ig/README.md) · 🇮🇹 [it](../it/README.md) · 🇯🇵 [ja](../ja/README.md) · 🇬🇪 [ka](../ka/README.md) · 🇰🇭 [km](../km/README.md) · 🇮🇳 [kn](../kn/README.md) · 🇰🇷 [ko](../ko/README.md) · 🇱🇹 [lt](../lt/README.md) · 🇱🇻 [lv](../lv/README.md) · 🇮🇳 [ml](../ml/README.md) · 🇮🇳 [mr](../mr/README.md) · 🇲🇾 [ms](../ms/README.md) · 🇲🇹 [mt](../mt/README.md) · 🇲🇲 [my](../my/README.md) · 🇳🇵 [ne](../ne/README.md) · 🇳🇱 [nl](../nl/README.md) · 🇳🇴 [no](../no/README.md) · 🇮🇳 [or](../or/README.md) · 🇮🇳 [pa](../pa/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) · 🇱🇰 [si](../si/README.md) · 🇸🇰 [sk](../sk/README.md) · 🇸🇮 [sl](../sl/README.md) · 🇷🇸 [sr](../sr/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) · 🇵🇰 [ur](../ur/README.md) · 🇺🇿 [uz](../uz/README.md) · 🇻🇳 [vi](../vi/README.md) · 🇳🇬 [yo](../yo/README.md) · 🇨🇳 [zh-CN](../zh-CN/README.md) · 🇹🇼 [zh-TW](../zh-TW/README.md) ---
Панель керування OmniRoute

# 🚀 OmniRoute — Безкоштовний шлюз ШІ **Створено [Diego Souza](https://github.com/diegosouzapw)** OmniRoute — Ніколи не припиняйте програмувати. Кожен інструмент ШІ → 388 провайдер — 150+ безкоштовних — через одну кінцеву точку. Claude Code, Codex, Cursor, Cline, Copilot та Antigravity у БЕЗКОШТОВНІ Claude / GPT / Gemini з автоматичним резервним перемиканням. Послідовне стиснення RTK + Caveman заощаджує 15–95% токенів (~89% у середньому) — ліміти більше не перешкода. 388 провайдер ШІ · 150+ безкоштовних рівнів · ~1.62B безкоштовних токенів/міс. · 20 стратегій маршрутизації · $0 для початку.
## 💰 ~1.62B токенів / місяць у безкоштовних тарифах сторонніх провайдерів
> **Використовуйте власні облікові записи провайдерів.** Це орієнтовний сукупний показник для окремих безкоштовних тарифів сторонніх провайдерів, які відповідають вимогам, а не грант токенів від OmniRoute. Зареєструйтеся, отримайте облікові дані, де це потрібно, і підключіть доступних вам провайдерів; кожен провайдер самостійно визначає свої ліміти, доступність і умови. > > Вручну поєднувати безкоштовні тарифи складно — десятки SDK, десятки обмежень швидкості й жодного розуміння, скільки ресурсів у вас насправді є. OmniRoute каталогізує **465 записів безкоштовних тарифів за 34 ключами періодичних пулів** і обчислює заголовкове значення токенів на основі **17 пулів із опублікованим позитивним місячним бюджетом, а також п’яти обмежень Groq для окремих моделей**, дедуплікованих за спільним пулом. Квоти, які стають доступними лише після регіональної перевірки особи (сьогодні: ModelScope), показуються окремо: +~6M після регіональної перевірки особи, і ніколи не додаються до заголовкового значення. Результат і надалі доступний на інформаційній панелі (`/dashboard/free-tiers`). Картка безкоштовного бюджету OmniRoute: ~1.62B безкоштовних токенів на місяць у стабільному режимі, до ~2.22B у перший місяць із бонусами за реєстрацію, на основі 34 задокументованих ключів періодичних пулів, що охоплюють 465 каталогізованих записів безкоштовних тарифів через одну кінцеву точку. Чесний розрахунок із дедуплікацією пулів — кожен спільний пул враховується один раз, зокрема 17 періодичних пулів із опублікованим позитивним місячним бюджетом токенів, а також п’ять обмежень Groq для окремих моделей; 12 провайдерів позначені як такі, яких слід уникати, у каталозі ризиків умов, тож рішення залишається за вами. На смузі бюджету показано Mistral 1B, Nara 210M, LLM7 150M, xKiro 150M, Groq 30M (п’ять обмежень для окремих моделей) і менші пули, а також бонуси за реєстрацію в перший місяць і провайдерів, які назавжди залишаються безкоштовними без ліміту токенів, але відображаються окремо, щоб ніколи не завищувати заголовкове значення. Поточні використані та доступні залишки на /dashboard/free-tiers. > Анімований огляд поточної сторінки `/dashboard/free-tiers`. Повна методологія (дедуплікація пулів, рівні кредитів, умови провайдерів): **[docs/reference/FREE_TIERS.md](docs/reference/FREE_TIERS.md)**. > > Ці показники повторно перевіряються кожні два тижні за актуальним каталогом і **можуть змінюватися в обидва боки** — провайдер припиняє дію безкоштовного тарифу, і число зменшується; з’являється новий — і воно зростає. Ми публікуємо те, що фактично обчислює каталог, і ніколи не округлюємо значення в більший бік, подаючи найкращий можливий сценарій.

⭐ Поставте зірку репозиторію, якщо OMNIROUTE допоміг вам заощадити кошти й спростити роботу.

[![Зірки](https://img.shields.io/github/stars/diegosouzapw/OmniRoute?style=social)](https://github.com/diegosouzapw/OmniRoute) diegosouzapw%2FOmniRoute | Trendshift [![Рейтинг за історією зірок](https://api.star-history.com/badge?repo=diegosouzapw/OmniRoute&theme=dark)](https://www.star-history.com/diegosouzapw/omniroute) [![olud.ai](https://olud.ai/badge.php?tool=diegosouzapw-omniroute)](https://olud.ai/project/diegosouzapw-omniroute.html) ### 💬 Приєднуйтеся до спільноти **👋 Стежте за розробником — першими дізнавайтеся про нових провайдерів, випуски та поради:** [![Стежити за Diego у LinkedIn](https://img.shields.io/badge/Follow_Diego_on-LinkedIn-0A66C2?style=for-the-badge&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/diegosouzapw/) [![Стежити за @diegosouzapw на GitHub](https://img.shields.io/github/followers/diegosouzapw?style=for-the-badge&logo=github&logoColor=white&label=Follow%20on%20GitHub&color=181717)](https://github.com/diegosouzapw) [![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/FvuCbrpZmQ6I85n2vW5QIC?s=cl&p=a&mlu=4) [![WhatsApp Brasil](https://img.shields.io/badge/WhatsApp_Brasil-25D366?style=for-the-badge&logo=whatsapp&logoColor=white)](https://chat.whatsapp.com/KWgatljAjmbELQory59Oti?s=cl&p=a&mlu=4) [![Вебсайт](https://img.shields.io/badge/Website-omniroute.online-blue?logo=google-chrome&logoColor=white)](https://omniroute.online) **Запитання, поради щодо провайдерів, дорожня карта та підтримка → [Discord](https://discord.gg/U47eFqAXCn) · [Telegram](https://t.me/omnirouteOficial) · WhatsApp [🌍 Глобальна група](https://chat.whatsapp.com/FvuCbrpZmQ6I85n2vW5QIC?s=cl&p=a&mlu=4) / [🇧🇷 Бразилія](https://chat.whatsapp.com/KWgatljAjmbELQory59Oti?s=cl&p=a&mlu=4) / [Портал](https://portal.sthub.com.br/communities/groups/st-hub/channels/Omniroute-World-8kRjmK)**
## 📈 Шлюз продовжує розвиватися
| | v3.8.50 | **v3.8.51** | `v3.8.54+` | | -------------------------------- | :-----------------------: | :---------: | :-------------------: | | 🌐 Провайдери | 352 | **358** | 388 | | 🧠 Унікальні ID чат-моделей | 1320 | **1374** | 1491 | | 🖼️ Міст модальностей | 🆕 vision + audio + video | ✓ | ✓ | | 📡 Безкоштовний каталог Radar | 🆕 opt-in | ✓ | ✓ | | ⚖️ Планування з урахуванням квот | 🆕 Quota-Share | ✓ | ✓ | | 📊 Телеметрія квот | 🆕 live | ✓ | ✓ | | 🧰 Безголовий режим | — | — | 🆕 `serve --headless` | | 🛤️ Інфраструктура LTS-рейки | — | — | 🆕 канали випусків | | 🔎 API виявлення моделей | — | — | 🆕 `/v1/models/query` | **→ [Дорожня карта](ROADMAP.md) — рухаємося рейкою до `v3.9.0 LTS`**

## 🧩 Доступно [![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) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg?style=flat-square)](LICENSE) ![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)
🚀 Початок 🚀 Швидкий старт 📦 Встановлення 🆓 Підключити провайдера
💡 Дізнайтеся більше 💥 Обіцянка 🤔 Чому OmniRoute 🏆 Що вирізняє OmniRoute
⚙️ Функції 🎯 Комбінації 🌐 Провайдери 🔌 CLI та MCP
🗜️ Стиснення 🖥️ Де це працює 🔒 Приватність
👀 Перегляньте 🎬 У дії ✨ Що нового 🤖 Сумісні CLI
💚 Підтримка 💚 Підтримати / Пожертвувати 💬 Спільнота 💖 Спонсори
📦 Проєкт 🛠️ Технологічний стек 📖 Документація 👥 Учасники
🌐 67 мовами

Англійська (en) Португальська — Бразилія (pt-BR) Португальська (pt) Іспанська (es) Французька (fr) Італійська (it) Німецька (de) Нідерландська (nl) Російська (ru) Українська (uk-UA) Польська (pl) Чеська (cs) Словацька (sk) Румунська (ro) Угорська (hu) Болгарська (bg) Данська (da) Фінська (fi) Норвезька (no) Шведська (sv) Китайська — спрощена (zh-CN) Китайська — традиційна (zh-TW) Японська (ja) Корейська (ko) Тайська (th) В'єтнамська (vi) Індонезійська (id) Малайська (ms) Філіппінська (phi) Гінді (hi) Гуджараті (gu) Маратхі (mr) Тамільська (ta) Телугу (te) Бенгальська (bn) Урду (ur) Перська (fa) Арабська (ar) Іврит (he) Турецька (tr) Азербайджанська (az) Суахілі (sw) Грецька (el) Хорватська (hr) Сербська (sr) Литовська (lt) Естонська (et) Латиська (lv) Словенська (sl) Мальтійська (mt) Ірландська (ga) Каннада (kn) Малаялам (ml) Орія (or) Панджабі (pa) Непальська (ne) Сингальська (si) Бірманська (my) Кхмерська (km) Гауса (ha) Йоруба (yo) Ігбо (ig) Амхарська (am) Узбецька (uz) Грузинська (ka) Вірменська (hy) Боснійська (bs)


## 🆓 Установіть, підключіть провайдера, а потім маршрутизуйте через одну кінцеву точку
Три кроки: установіть і запустіть OmniRoute, підключіть відповідного провайдера за допомогою власного облікового запису або ключа API, а потім налаштуйте свій інструмент на localhost:20128/v1, використовуючи ключ API OmniRoute і модель auto. Маршрутизація залежить від доступних відповідних підключень і обмежень провайдера. ```bash # Після підключення провайдера скопіюйте ключ OmniRoute з Dashboard → Endpoints: curl http://localhost:20128/v1/chat/completions \ -H "Authorization: Bearer YOUR_OMNIROUTE_KEY" \ -H "Content-Type: application/json" \ -d '{"model":"auto","messages":[{"role":"user","content":"Hello!"}]}' ``` `auto` потребує відповідного маршруту. У новій інсталяції може не бути доступних цілей без ключа, а провайдер без ключа може відхиляти клієнтів третіх сторін. Провайдери, позначені як `tos: avoid`, зокрема Kiro, за замовчуванням виключені з автоматичної маршрутизації; підключення облікового запису не змінює цього налаштування. Перш ніж обирати провайдера, перегляньте [Посібник із безкоштовних тарифів](docs/getting-started/FREE-TIERS-GUIDE.md). 📦 Скрипти швидкого старту, які можна скопіювати й вставити, для **Python, Node.js, PHP і cURL** → [`examples/quickstart/`](examples/quickstart/)
# 💥 Обіцянка
Обіцянка — одна кінцева точка та 388 провайдер. Автоматичний резервний перехід підтримує маршрутизацію, доки доступна інша справна ціль. Шість основних переваг: відмовостійкий резервний перехід між 388 провайдером · до 95% економії токенів для відповідних робочих навантажень · $0 для початку зі 150+ безкоштовними тарифами та 52 безкоштовними назавжди провайдерами з регулярним або безключовим доступом · 39 інтеграцій CLI/агентів через одну конфігурацію · сумісність з OpenAI, Claude, Gemini та Responses API через /v1 · засоби керування для продуктивного середовища, зокрема автоматичні вимикачі, приховування TLS, MCP зі 110 інструментами, A2A, пам’ять, обмеження безпеки, оцінювання та понад 56 000 статичних тестових декларацій у понад 7 800 відстежуваних тестових файлах.

# 🤔 Чому OmniRoute?
Чому OmniRoute — припиніть перемикатися між 10 панелями керування, непрацюючими ключами API та неочікуваними рахунками. Десять щоденних проблем і способи їх вирішення: невикористана квота завершується → максимальне використання підписок; обмеження швидкості під час написання коду → автоматичний резервний перехід між 4 рівнями (підписка → API → дешевий → безкоштовний); результати роботи інструментів витрачають токени → стиснення RTK + Caveman (15–95%); дорогі API → маршрутизація з оптимізацією вартості; кожен інструмент потребує власного налаштування → одна кінцева точка, одна панель керування; AI заблоковано → проксі з 3 рівнями + приховування TLS; непрацюючі ключі → 3-рівнева відмовостійкість (автоматичні вимикачі, період охолодження ключа, блокування моделі); команда спільно використовує одну підписку → пули ключів зі справедливим розподілом квот; запити проходять через хмару іншого користувача → локальний пріоритет із ключами, зашифрованими за допомогою AES-256-GCM; відсутня видимість витрат → аналітика в реальному часі (використання, квота, заощадження, затримка p95).
Потік запиту OmniRoute: ваше IDE або CLI (Claude Code, Cursor, Cline…) викликає одну локальну кінцеву точку (http://localhost:20128/v1); Smart Router OmniRoute (стиснення RTK + Caveman, 20 стратегій маршрутизації, автоматичні вимикачі, приховування TLS, MCP, A2A, обмеження безпеки) може виконувати резервний перехід між 4 рівнями провайдерів, доки залишається доступною відповідна справна ціль — рівень 1: підписка, рівень 2: ключ API, рівень 3: дешевий і рівень 4: безкоштовний.

## 🤝 За підтримки наших друзів з відкритим кодом

Kimi K3 — Open Frontier Intelligence · 2.8T parameters · 1M-token context

> **Хочете приєднатися як друг відкритого коду?** Це компанії, які підтримують відкритий код і допомагають OmniRoute розвиватися — і ми публічно повідомляємо, куди йде кожен токен, який вони нам надають. Зв'яжіться з нами: [diegosouza.pw@outlook.com](mailto:diegosouza.pw@outlook.com)
Kimi (Moonshot AI)
Kimi
Moonshot AI

Засновник-друг відкритого коду
Дякуємо Kimi (Moonshot AI), нашому засновнику-другу відкритого коду, за підтримку цього проекту! Kimi — це лабораторія ШІ, що стоїть за відкритими моделями K2 та K3 — Kimi K3 забезпечує контекстне вікно на 1 мільйон токенів, нативне бачення та кодування на передовому рівні за частку ціни закритих моделей, і працює "з коробки" з Claude Code, Codex та всіма інструментами кодування, які підтримує OmniRoute.

Що підтримує Kimi: Кредити API Kimi забезпечують конвеєр випуску OmniRoute, перевірений ШІ — етап перевірки злиття за допомогою Kimi K3, який перевіряє кожен запит на злиття перед його відправкою — а також щоденну розробку функцій. Першокласна підтримка Kimi доступна на обох шляхах: прямий Kimi API (kimi-k3) та план кодування Kimi Code (OAuth та ключ API). OmniRoute також є першим бразильським проектом з відкритим кодом у програмі підтримки Kimi. Отримайте ключ API Kimi з 15% додаткових кредитів →
Cheaper Inference
Cheaper Inference
cheaperinference.com

Друг відкритого коду
Дякуємо Cheaper Inference, другу відкритого коду OmniRoute, за підтримку цього проекту! Cheaper Inference — це шлюз з рейтингом вартості, який перепродає 42 передові моделі — Claude, GPT-5.x, Gemini, Kimi K3, GLM, DeepSeek, Grok та MiniMax — за однією сумісною з OpenAI кінцевою точкою, маршрутизуючи кожен запит до найдешевшого відповідного провайдера, ніколи не стягуючи плату вище прейскурантної ціни виробника моделі.

Першокласна підтримка в OmniRoute: Chat Completions, нативна кінцева точка /v1/responses, бачення, виклик інструментів та 3 моделі зображень (grok-imagine, nano-banana-pro, nano-banana-2, доступні як cheaperinference/<model>). Отримайте ключ API →
Посилання, позначені aff=omniroute, є партнерськими. Вони фінансують проект без додаткових витрат для вас.
🎟️ Партнерська акція — безкоштовні купони на реєстрацію від провайдерів, яких ми не спонсоруємо (натисніть, щоб розгорнути) Цей розділ призначений лише для реферальних/купонних кодів. Спонсорські партнерства знаходяться вище в розділі 🤝 За підтримки наших друзів з відкритим кодом. OmniRoute не має спонсорства чи партнерства з провайдерами, переліченими тут — це публічні купони, які може використовувати кожен.
AgentRouter
AgentRouter
agentrouter.org
AgentRouter — партнерська реєстрація · $100 безкоштовних кредитів при реєстрації (безкоштовний сервер, очікуйте вищу затримку — найкраще для тестування, не для виробництва). Першокласна підтримка в OmniRoute з v3.8.50: Chat Completions, сумісний з Anthropic формат дроту та сумісний з OpenAI шлях. Доступні моделі включають claude-opus-4-8, claude-opus-5, gpt-5.6-sol та інші. Отримайте свої $100 →

⚠️ Партнерське посилання — OmniRoute не має спонсорства чи партнерства з цим провайдером.
Знаєте іншого провайдера з щедрим безкоштовним купоном на реєстрацію, який приносить користь користувачам OmniRoute? Відкрийте issue, і ми додамо його сюди.

## 🎯 Комбінації — флагманська функція
Анімовані приклади 18 із 20 стратегій маршрутизації комбінацій — по одній плитці для кожної стратегії: priority, fill-first, weighted, round-robin, p2c, least-used, random, strict-random, cost-optimized, headroom, reset-window, reset-aware, context-relay, context-optimized, lkgp, auto, fusion, pipeline. cache-optimized і quota-weighted не анімовані; у таблиці нижче описано всі 20. > **Комбінація** — це ланцюжок моделей, між якими OmniRoute маршрутизує запити **автоматично**. Якщо квоту вичерпано, постачальник дає збій або витрати різко зростають, комбінація може перейти до наступної доступної справної моделі. 🛡️ ### ⚡ Без налаштування — просто використовуйте `auto` Не потрібно створювати комбінацію. Укажіть `auto` (або один із варіантів) як модель, і OmniRoute побудує віртуальну комбінацію з підключених постачальників, оцінюючи їх у реальному часі:
Ідентифікатор моделіЩо оптимізує
auto🎯 Збалансований варіант за замовчуванням (LKGP — продовжує використовувати останнього справного постачальника)
auto/coding🧑💻 Ваги з пріоритетом якості для генерування коду
auto/fast⚡ Спочатку варіанти з найнижчою затримкою
auto/cheap💰 Спочатку варіанти з найнижчою вартістю токена
auto/subscription🎟️ Лише квота передплати, за яку ви вже платите — закрите завершення в разі збою, без переходу до тарифікованого резервного варіанта (посібник)
auto/thrifty🪜 Спочатку квота тарифного плану, а потім послідовний перехід до найдешевших платних варіантів — повернення до плану після скидання квоти (посібник)
auto/offline🔋 Спочатку варіанти з найбільшим запасом квоти / обмеження частоти запитів
auto/smart🔭 Пріоритет якості + 10% на дослідження для пошуку кращих моделей
auto/lkgp📌 Явне закріплення за останнім відомим справним постачальником
auto/chaos🧪 Паралельне розгалуження запитів на групу моделей (по одній від кожного постачальника, типово 5) із поверненням однієї відповіді; один виклик вищого рівня на кожну модель групи, а не ін’єкція збоїв
## ### 🔀 Або створіть власну комбінацію — 20 стратегій маршрутизації Усі **20** стратегій — комбінуйте їх на кожному кроці комбінації:
# Стратегія Як вона працює
1 priority Упорядкований список із пріоритетом першої цілі — повністю використати кожну, перш ніж перейти до наступної 🥇
2 fill-first Повністю використати квоту кожної цілі, перш ніж переходити далі
3 weighted Зважений випадковий вибір відповідно до ваги кожної цілі
4 round-robin Циклічний послідовний перебір цілей
5 p2c Випадкове балансування навантаження за методом вибору з двох варіантів
6 least-used Вибір цілі з найменшим поточним навантаженням
7 random Рівномірний випадковий вибір (без дублікатів)
8 strict-random Випадковий вибір без усунення повторень 🎲
9 cost-optimized Мінімізація вартості запиту в $ на основі актуальних цін каталогу 💸
10 headroom Вибір цілі з найбільшою залишковою квотою
11 quota-weighted Пропуск облікових записів із вичерпаною квотою, а потім вибір пропорційно до залишкової квоти ÷ поточного навантаження — наявні розмови залишаються закріпленими ⚖️
12 reset-window Перевага цілі, вікно квоти якої буде скинуто найшвидше
13 reset-aware Ранжування за часом скидання квоти — спочатку короткі вікна 📊
14 context-relay Передавання контексту між цілями для довгих розмов 🧠
15 context-optimized Вибір найкращої відповідності поточному розміру контексту
16 cache-optimized Закріплення кожного повторно використовуваного префікса запиту за тим самим обліковим записом — для максимальної кількості влучань у кеш запитів 🎯
17 lkgp Останній відомий справний шлях — закріплення за останнім успішним постачальником із подальшим резервним переходом за правилами
18 auto Оцінювання за 16 чинниками в реальному часі для кожного підключення 🤖
19 fusion Розгалуження запитів на групу моделей + модель-суддя синтезує одну відповідь 🧬
20 pipeline Ланцюжок кроків — вихідні дані кожної цілі передаються наступній 🔗
Рушій Auto-Combo оцінює кожного кандидата за **16 факторами** (стан, квота, вартість, затримка, відповідність завданню, якість, доступність сесії…) — див. [`docs/routing/AUTO-COMBO.md`](docs/routing/AUTO-COMBO.md). ## ### 🧱 Відмовостійкість вбудована (3 незалежні рівні) Відмовостійкість OmniRoute — 3 незалежні рівні самовідновлення, належний рівень для відповідного збою. Рівень 1: автоматичний вимикач постачальника (весь постачальник): спрацьовує лише за кодів 408/5xx, порогові значення — OAuth 8× / API-ключ 12× / локальний 2×, скидається через 60 с/30 с/15 с у режим перевірки HALF-OPEN, відкладене відновлення; у стані OPEN комбінація переспрямовує запити до наступного постачальника. Рівень 2: період очікування з’єднання (один ключ/обліковий запис): базове значення — 5 с для OAuth / 3 с для API-ключа, експоненційна затримка ×2 із захистом від лавиноподібних одночасних запитів, код 429 враховує Retry-After, успішний запит очищає весь стан помилок; ключ у періоді очікування пропускається, тоді як інші ключі продовжують обслуговувати запити. Рівень 3: блокування моделі (одна модель): код 429 для окремої моделі, локальний код 404 або відмови через режим блокують лише цю модель — але ніколи не все з’єднання. Термінальні стани (заблоковано, термін дії минув, кредити вичерпано) потребують втручання оператора, а не періоду очікування. 📖 [Рушій Auto-Combo](docs/routing/AUTO-COMBO.md) · [Посібник із відмовостійкості](docs/architecture/RESILIENCE_GUIDE.md)
## 🏆 Чим вирізняється OmniRoute
Чим вирізняється OmniRoute — актуальний знімок функціональності порівняно з 9router, OpenRouter, CLIProxyAPI та LiteLLM за 13 можливостями. OmniRoute: 388 провайдер, понад 150 вбудованих безкоштовних тарифів, 20 стратегій маршрутизації, стиснення токенів на базі 12 рушіїв, вбудований MCP-сервер зі 110 інструментами, протокол агентів A2A, постійна пам’ять, захисні обмеження, хмарні агенти, приховування TLS-відбитка, Desktop/Termux/PWA та 67 локалей інтерфейсу i18n. OmniRoute ліцензовано за MIT і можна розгортати на власній інфраструктурі. Можливості та кількість функцій конкурентів можуть змінюватися; див. методологію за посиланням. 📊 Повна методологія та деталі за кожною функцією порівняно з 9router, OpenRouter, CLIProxyAPI та LiteLLM → [`docs/comparison/OMNIROUTE_VS_ALTERNATIVES.md`](docs/comparison/OMNIROUTE_VS_ALTERNATIVES.md)
## 💚 Підтримайте OmniRoute OmniRoute розповсюджується за ліцензією MIT і підтримується відкрито. Якщо він заощаджує ваш час або гроші, ось як можна допомогти йому залишатися незалежним — оберіть зручний для вас спосіб. Спонсорство ніколи не впливає на пріоритет маршрутизації; воно дає видимість, а не вищу позицію в рейтингу.
⭐ Поставте зірку репозиторіюБезкоштовно — це справді допомагає підвищити видимістьПоставити зірку OmniRoute
🐙 GitHub SponsorsОдноразово або щомісяця · без комісії платформиgithub.com/sponsors/diegosouzapw
☕ Ko-fiШвидка одноразова пожертва без реєстрації для благодійникаko-fi.com/diegosouzapw
🧋 Buy Me a CoffeeНевеликий неформальний жест підтримкиbuymeacoffee.com/diegosouzapw
🖐 LiberapayРегулярно · некомерційна платформа · відкритий кодliberapay.com/diegosouzapw
🇧🇷 PIX (Бразилія)Миттєво, без комісійключ і QR-код нижче
₿ КриптовалютаBTC · ETH · USDT-TRC20 · USDC-Solanaадреси нижче
**🇧🇷 PIX** — миттєво, без комісій (Бразилія) QR-код PIX для підтримки OmniRoute Ключ (випадковий): `5d865059-bc44-483a-962d-43ceb80126eb` Pix copia-e-cola: ``` 00020101021126580014br.gov.bcb.pix01365d865059-bc44-483a-962d-43ceb80126eb5204000053039865802BR5922OMNIROUTE CONTRIBUICAO6006BRASIL62070503***630475DD ```
₿ Криптовалюта — BTC · ETH · USDT-TRC20 · USDC-Solana (натисніть, щоб розгорнути)
₿ BTCBitcoin (SegWit)bc1qh00smz004sy85wyl28v77tenkt3ckl6eaep7fd
Ξ ETHEthereum (ERC20)0x64Cf6B68A6Ff34288e89172950a2d00102337a84
₮ USDTTron (TRC20)TKAF41JpuQrHbKTnsQa9svJE2T192Hvsc2
$ USDCSolana2emNNZzVVWQc3FQ2wk9M6qXUQmW8AKdjjL174fXR28Tu
⚠️ Надсилайте кожну монету лише через зазначену мережу — надсилання через неправильну мережу може призвести до втрати коштів.
🐛 Знайшли помилку або маєте відгук? Відкрийте [обговорення](https://github.com/diegosouzapw/OmniRoute/discussions).

Примітки для розробників: Під час npm install/postinstall проєкт може створити локальний файл .env для зручності розробників. Цей файл навмисно ігнорується через .gitignore (див. .gitignore), і його в жодному разі не можна додавати до репозиторію — якщо його випадково додано, змініть усі розкриті секрети та видаліть файл з історії. Рекомендації щодо керування локальними файлами середовища та секретами див. у docs/DEVELOPER-ENVIRONMENT.md.

## 📡 OmniRoute Radar Основний показник безкоштовного рівня залишається на рівні **~1,62 млрд токенів/місяць** згідно з наведеним вище задокументованим каталогом із дедуплікацією пулів. Тимчасові кредити за реєстрацію в постачальників можуть окремо збільшити обсяг у першому місяці до **~2,22 млрд**. Radar — це необов’язкове підписане доповнення до каталогу для тих, хто хоче отримувати актуальніші дані про доступність безкоштовних моделей між випусками OmniRoute; каталог спільноти та всі наявні безкоштовні функції залишаються безкоштовними. Прихильники можуть отримувати актуальний каталог і додаткові пропозиції від постачальників. Його окрема змінна верхня межа становить **щонайбільше приблизно 3 млрд токенів/місяць** залежно від доступності постачальників. Ця верхня межа не є гарантією: постачальники можуть будь-коли змінювати квоти, критерії відповідності, моделі або регіони. Radar використовується за бажанням і лише через GET-запити. Клієнт OmniRoute не передає запити, трафік, конфігурацію постачальників, телеметрію використання або локальний стан приховування оголошень. Дізнайтеся про критерії відповідності та поточний каталог на сторінці **[radar.omniroute.online/planos](https://radar.omniroute.online/planos)**.
## ✨ Що нового
> Основні нововведення за період від **v3.8.20 → v3.8.54**. Повна історія — у [`CHANGELOG.md`](CHANGELOG.md). - **⚖️ Маршрутизація `quota-weighted`** — 20-та стратегія-комбінація пропускає вичерпані облікові записи, а потім обирає серед решти пропорційно до залишкової квоти ÷ навантаження запитами в обробці, зберігаючи прив’язку наявних діалогів. → [Автоматичні комбінації](docs/routing/AUTO-COMBO.md) - **🧰 Безголовий режим** — `omniroute serve --headless` (або `OMNIROUTE_HEADLESS=1`) запускає лише проксі-рушій `/v1/*`, вимикаючи панель керування та підсистеми, призначені лише для панелі. → [Безголовий режим](docs/guides/HEADLESS.md) - **🔎 Виявлення моделей** — `/v1/models` фільтрує моделі за можливостями, контекстом, типом і текстом, а `POST /v1/models/query` повертає короткий детермінований список із тією самою видимістю для кожного ключа. → [Довідник API](docs/reference/API_REFERENCE.md) - **🔑 Керування маршрутизацією для кожного ключа** — закріплюйте ключ API за однією моделлю або комбінацією за допомогою `forcedModel`, а також атомарно додавайте чи видаляйте моделі та комбінації ключа (`/api/keys/{id}/access`). → [Довідник API](docs/reference/API_REFERENCE.md) · [OpenAPI](docs/openapi.yaml) - **🛡️ Точніший контроль PII** — вибір за типом, до 20 перевірених власних шаблонів маскування та лічильники виявлення для кожного типу; саме маскування залишається опційним. → [Захисні механізми](docs/security/GUARDRAILS.md) - **🌍 67 мов** — панель керування, дзеркала документації та CLI, причому `npm run i18n:add-locale` додає мову всюди однією командою. → [Посібник з i18n](docs/guides/I18N.md) - **🎛️ OmniConductor** — вхідна делегація A2A до вашого флоту агентів, навички Conductor у картці агента та панель у dashboard із голосовим чатом Faro push-to-talk. → [Сервер A2A](docs/frameworks/A2A-SERVER.md) - **🛂 Адаптивний допуск і захист від перевантаження** — ресурсоємні запити чату стають у чергу замість відповіді 503, з атомарними ковзними орендами RPM для кожного з’єднання. → [Посібник із відмовостійкості](docs/architecture/RESILIENCE_GUIDE.md) - **🗂️ Канонічне впорядкування `/v1/models`** — один суцільний блок моделей, згрупованих за провайдером, для кожного провайдера (комбінації закріплено першими), стабільний у всіх джерелах каталогу. → [Довідник API](docs/reference/API_REFERENCE.md) - **🗜️ Посилене стиснення** — захист від розгортання за замовчуванням, пакети Caveman для DE / FR / JA і китайської (wényán), фільтри RTK для Gradle і .NET. → [Стиснення](docs/compression/COMPRESSION_ENGINES.md) - **💸 Чесна фіксована вартість** — провайдери підписок і планів для програмування відображаються як **$0** в аналітиці витрат; бюджет, квота та маршрутизація продовжують використовувати оцінки. → [Довідник API](docs/reference/API_REFERENCE.md) - **⚖️ Маршрутизація Quota-Share** — справедливо розподіляє квоту спільного облікового запису між ключами пулу, ефективно використовуючи ресурси, щоб невикористані частки позичалися іншим. → [Посібник із відмовостійкості](docs/architecture/RESILIENCE_GUIDE.md) - **🤖 Налаштування CLI/агентів однією командою** — 15 зареєстрованих команд `setup-*`; `omniroute run` запускає 7 CLI (Claude Code, Codex, Aider, Goose, OpenCode, Qwen Code, Gemini CLI); `omniroute configure` підтримує 11 цільових систем з інтерактивним вибором провайдера й моделі та обраними параметрами для кожного контексту. → [Інтеграції CLI](docs/guides/CLI-INTEGRATIONS.md) - **🛰️ Віддалений режим** — керування віддаленим OmniRoute за допомогою токенів із визначеною областю дії (`connect` / `contexts` / `tokens`) і помічника OAuth `antigravity` для встановлень на VPS. → [Віддалений режим](docs/guides/REMOTE-MODE.md) - **🧭 Розумніша автоматична маршрутизація** — комбінації `auto/:`, **Fusion** (панель моделей + суддя), маршрутизація з урахуванням завдань, перевизначення моделі / режиму / бюджету в USD для кожного запиту. → [Автоматичні комбінації](docs/routing/AUTO-COMBO.md) - **🗜️ Підключне стиснення** — 12 комбінованих рушіїв + Compression Studios: LLMLingua-2, дворівневий Ultra, omniglyph, перевірка точності на кожному кроці, GCF v3.2, редактор із перетягуванням для зміни порядку. → [Стиснення](docs/compression/COMPRESSION_ENGINES.md) - **🕵️ Прозоре розшифрування MITM (TPROXY)** — CLI для перехоплення програм, які ігнорують змінні середовища проксі, із засобом встановлення CA для кожного SNI та сховища довіри. → [MITM/TPROXY](docs/security/MITM-TPROXY-DECRYPT.md) - **💸 Телеметрія витрат усюди** — заголовки витрат/використання `X-OmniRoute-*` для кожної кінцевої точки, заголовок економії завдяки влучанню в кеш і квоти витрат у USD для кожного ключа. → [Довідник API](docs/reference/API_REFERENCE.md) - **🧠 Пам’ять під вашим контролем** — за замовчуванням вимкнена, підтримує опційне int8-квантування векторів і типізоване згасання, а також `x-omniroute-no-memory` для кожного запиту. → [Пам’ять](docs/frameworks/MEMORY.md) - **🛡️ Безпека** — захист від ін’єкцій у промпти для кожного маршруту LLM (набір red-team тестів), опційний захист із маскуванням облікових даних (маскує витік API-ключів/секретів в обох напрямках), безкоштовний вебпошук DuckDuckGo як крайній захід і опційний шлюз входу OIDC для dashboard (вхід за паролем завжди доступний). → [Захисні механізми](docs/security/GUARDRAILS.md) - **🖼️ Нові кінцеві точки** — `/v1/ocr` (Mistral OCR) і `/v1/audio/translations` (у стилі Whisper) доповнюють набір медіаможливостей. → [Довідник API](docs/reference/API_REFERENCE.md) - **🎨 Генерація зображень / відео / аудіо** — один API для медіа: xAI Grok Imagine і відео Novita AI, ComfyUI, Magnific, Adobe Firefly, Segmind та провайдери мовлення, як-от ElevenLabs. → [Довідник API](docs/reference/API_REFERENCE.md) - **🌍 Розгортання та експлуатація** — `basePath` для зворотного проксі, автоматичне визначення мови браузера, відстеження пристроїв для кожного ключа, довіра MITM без root, локалізація zh-TW. → [Середовище](docs/reference/ENVIRONMENT.md) - **🤝 Більше провайдерів та агентів** — хмарні агенти (Codex Cloud, Cursor, Devin, Jules), Grok Build (xAI) із входом через браузер і OAuth, повноцінна картка Ollama, Claude Opus 5 і Sonnet 5, офіційне партнерство з Kimi (Code/Web/Moonshot), Zed, Requesty, SenseNova, Yuanbao, Agnes AI… і оновлений **каталог із 388 провайдера**. → [Провайдери](docs/reference/PROVIDER_REFERENCE.md) - **📡 Прозорість маршрутизації** — кожна відповідь містить заголовок `X-OmniRoute-Decision` із назвою стратегії/провайдера/затримки, які її обробили; нова стратегія комбінацій `cache-optimized` і фактор маршруту `cacheAffinity` в Auto-Combo спрямовують повторні запити до з’єднання, що містить кешований префікс; кінцева точка лише для читання `/v1/auto-combo/{channel}/candidates` показує актуальний пул кандидатів каналу `auto/*`. → [Автоматичні комбінації](docs/routing/AUTO-COMBO.md). - **⚡ Локальна продуктивність та інфраструктура** — локальний Redis в один клік, засоби розгортання ретрансляторів Cloudflare Workers / Deno Deploy, Bifrost і Mux як контрольовані вбудовані служби. → [Вбудовані служби](docs/frameworks/EMBEDDED-SERVICES.md) - **🧩 Також у комплекті** — фреймворк плагінів і маркетплейс, фреймворки навичок Omni/Agent/GitHub, інтеграція зі сховищем Obsidian (22 інструменти MCP), сумісні з OpenAI API пакетні API та API файлів, семантичний кеш відповідей, гейміфікація з таблицями лідерів, виявлення агентів ACP (15 вбудованих агентів), запланований експорт журналів до BigQuery, паралельне розгалуження на кілька моделей `auto/chaos`, міст для бота Telegram, менеджер версій у застосунку та рейтинги безкоштовних провайдерів LMArena-ELO. → [Документація](docs/README.md)
## 🤖 Сумісні CLI та агенти для кодування > Одна конфігурація — `http://localhost:20128/v1` — і **кожен** AI IDE або CLI працює на безкоштовних і недорогих моделях.
Claude Code
Claude Code
                           
Codex CLI
Codex CLI
                           
Cline
Cline
                           
Kilo Code
Kilo Code
Zoo Code
Zoo Code
Continue
Continue
                           
Aider
Aider
                           
ForgeCode
ForgeCode
                           
jcode
jcode
                           
DeepSeek TUI
DeepSeek TUI
                           
CodeWhale
CodeWhale
                           
OpenCode
OpenCode
                           
Factory Droid
Factory Droid
                           
GitHub Copilot CLI
Copilot CLI
                           
Cursor CLI
Cursor CLI
                           
Smelt
Smelt
                           
Pi (pi-coding-agent)
Pi
                           
Grok Build (xAI)
Grok Build
                           
Hermes Agent (Nous Research)
Hermes Agent
                           
OpenClaw
OpenClaw
                           
Goose
Goose
                           
Open Interpreter
Open Interpreter
                           
Warp AI
Warp AI
                           
deyin.ai
deyin.ai
                           
+ також працює з · Agent Deck · Kiro · Command Code · Antigravity · Windsurf · AMP · будь-яким інструментом, сумісним з OpenAI
📖 Налаштування для кожного з 39 інструментів (28 CLI Code's + 11 CLI Agents) → [`docs/reference/CLI-TOOLS.md`](docs/reference/CLI-TOOLS.md) · 🧩 Плагін OpenCode → [`@omniroute/opencode-provider`](https://www.npmjs.com/package/@omniroute/opencode-provider)

**Запускайте будь-який підтримуваний CLI через OmniRoute однією командою** — жодних конфігураційних файлів, облікові дані підставляються для кожного процесу, Qwen/Gemini отримують ізольований тимчасовий home: ```bash omniroute run claude --model openai/gpt-5.4 # Claude Code omniroute run codex --model glm/glm-5.2 # OpenAI Codex CLI omniroute run aider --model glm/glm-5.2 -- --message "reply OK" omniroute run goose --model glm/glm-5.2 omniroute run opencode --model glm/glm-5.2 -- run "reply OK" omniroute run qwen --model glm/glm-5.2 -- -p "reply OK" omniroute run gemini --model glm/glm-5.2 -- --skip-trust -p "reply OK" # Або виберіть провайдера+модель інтерактивно та запишіть власний конфіг інструменту: omniroute configure codex # також: claude opencode qwen aider goose gemini cline continue kilo 5dive ``` Кожна команда враховує активний віддалений контекст (`omniroute connect `), `--dry-run` показує точне оточення/аргументи без виконання, а `--api-key-env NAME` не дозволяє секретам потрапити в історію вашої shell. → [Інтеграції CLI](docs/guides/CLI-INTEGRATIONS.md)
## 🌐 388 провайдерів AI — 153 позначені каталогом як безкоштовні
> **388 зареєстрований провайдер** у канонічних колекціях чатів, медіа, пошуку, локальних, хмарних агентів і систем, зокрема **153 провайдери з метаданими виявлення `hasFree: true`**. Реєстр чат-моделей охоплює **239 провайдерів / 3 059 унікальних пар провайдер-модель / 1 475 ідентифікаторів необроблених моделей**; окремий каталог безкоштовних бюджетів містить **471 рядок для окремих моделей**, **34 періодичні пули** та **52 провайдери з регулярним або без ключа безкоштовним доступом назавжди**. Це навмисно різні знаменники; визначення та розрахунки з дедуплікацією пулів наведено в [Довіднику провайдерів](docs/reference/PROVIDER_REFERENCE.md) і [Безкоштовних тарифах](docs/reference/FREE_TIERS.md).
### 🏢 Усі провідні лабораторії — через одну кінцеву точку
OpenAI
OpenAI
                           
Anthropic
Anthropic
                           
Gemini
Gemini
                           
xAI Grok
xAI Grok
                           
DeepSeek
DeepSeek
                           
Mistral
Mistral
                           
Qwen
Qwen
                           
Meta Llama
Meta Llama
                           
Groq
Groq
                           
NVIDIA
NVIDIA
                           
MiniMax
MiniMax
                           
Cohere
Cohere
                           
Perplexity
Perplexity
                           
Hugging Face
HuggingFace
                           
Together
Together
                           
Fireworks
Fireworks
                           
Cloudflare
Cloudflare
                           
Baidu
Baidu
                           
…і ще понад 350 — кожна іконка в реальному часі завантажується з каталогу провайдерів інформаційної панелі. 📖 [Довідник провайдерів](docs/reference/PROVIDER_REFERENCE.md)
### 🆓 Безкоштовно назавжди — $0, без картки
OpenCode Zen
OpenCode Zen
DeepSeek V4, Nemotron 3
Без обмеження кількості токенів
Kilo Code
Kilo Code
Автомаршрутизація, Tencent Hy3
Назавжди безкоштовно
Requesty
Requesty
GPT-OSS 120B, Nemotron
Назавжди безкоштовно
SiliconFlow
SiliconFlow
DeepSeek V3.2 / R1
Безкоштовний рівень
Z.AI GLM
Z.AI GLM
GLM-4.7 / 4.5-Flash
Назавжди безкоштовно
Baidu ERNIE
Baidu ERNIE
ERNIE 4.0
Назавжди безкоштовно
Qoder AI
Qoder AI
Qwen3-Max, Kimi-K2
БЕЗКОШТОВНО без обмежень
Pollinations
Pollinations
GPT, Llama, Claude
Ключ не потрібен
Cloudflare AI
Cloudflare AI
Понад 50 моделей
10 тис. нейронів на день
NVIDIA NIM
NVIDIA NIM
GLM, MiniMax
~40 RPM безкоштовно
Cerebras
Cerebras
GLM 4.7, GPT-OSS
Одноразовий кредит $5; потрібна картка
OpenRouter
OpenRouter
:безкоштовні моделі
+$10 → вищий RPM
📖 Повний машиночитний каталог → [`docs/reference/PROVIDER_REFERENCE.md`](docs/reference/PROVIDER_REFERENCE.md)
## 🖥️ Де працює OmniRoute — будь-де
> Той самий додаток, ваша машина, ваші правила. Від глобальної інсталяції npm до** ваш телефон** через Termux.
Платформа Встановити Основні моменти
📦 npm (глобальний) npm встановити -g omniroute Одна команда, будь-яка OS
⚡ Bun (глобальний) bun add -g omniroute Той самий архів реєстру, швидше встановлення
🐳 Docker docker run … diegosouzapw/omniroute Багатоархівний AMD64 + ARM64
🖥️ Робочий стіл (Electron) npm run electron:build Власне вікно + системний трей — Windows / macOS / Linux
🎩 Панель меню (OmniRouteTray) brew install --cask zoispag/tap/omniroute-tray Контролює & автоматичне оновлення сервера — macOS
💪 ARM рідний arm64 Raspberry Pi, сервери ARM, Apple Silicon
📱 Android (Termux) pkg install nodejs && npx -y omniroute Запускає на вашому телефоні , 24/7, без кореня
📲 PWA"Додати на головний екран" Повний екран, офлайн, можна встановити з браузера
🧩 OpenCode плагін @omniroute/opencode-providerOpenCode інтеграція
🤖 VS Код Copilot Чат інсталяція OmniCopilot розширення OmniRoute модель zqo у нативному інструменті вибору чату Copilot — стабільний & Інсайдери
🛠️ З джерела npm встановити && npm запустити dev Зламати це, зробити внесок
📖 [Docker Guide](docs/guides/DOCKER_GUIDE.md) · [Робочий стіл](electron/README.md) · [Панель меню](https://github.com/zoispag/omniroute-tray) · [Termux](docs/guides/TERMUX_GUIDE.md) · [PWA](docs/guides/PWA_GUIDE.md) · [OpenCode](docs/frameworks/OPENCODE.md)
### 🧩 Нове: OmniRoute у рідному чаті Copilot коду VS
> Ні нової бічної панелі, ні нового чату UI — кожна модель, яку обслуговує OmniRoute відображається прямо в** засіб вибору моделі чату Copilot який ви вже використовуєте** . Починаючи з коду VS 1.122, моделі провайдерів працюють без входу в систему GitHub або підписки на Copilot — режим агента, виклик інструментів і візія безкоштовно. Встановіть** [OmniCopilot](https://github.com/diegosouzapw/OmniCopilot)** розширення, наведіть його на свій сервер OmniRoute (за замовчуванням `localhost:20128`), а потім відкрийте Copilot Chat → вибір моделі →** Керувати моделями…** →**OmniRoute** . < td вирівняти ="ліворуч">VS Код — стабільний & Інсайдери < td вирівняти ="ліворуч">Cursor, Windsurf, VSCodium, Theia, код-сервер, Gitpod, Antigravity, Kiro…
Магазин Посилання Працює з
🧩 VS Code Marketplace Встановити →
🔓 Відкрийте реєстр VSX Встановіть →
Зсередини редактора: відкрийте** Розширення** перегляд, пошук** "OmniRoute"** , натисніть** встановити** — працює однаково в обох магазинах. Джерело, випуски та збірник публікацій доступні на [diegosouzapw/OmniCopilot](https://github.com/diegosouzapw/OmniCopilot). 📖 [VS Код Copilot Посібник із чату](docs/guides/VSCODE-COPILOT.md) — налаштування, що показує засіб вибору, інформаційна панель у вкладці, усунення несправностей
### 🎩 Нове: OmniRouteTray — ваш шлюз, розташований у рядку меню
> `omniroute serve` найщасливіший, коли він завжди ввімкнений.** [OmniRouteTray](https://github.com/zoispag/omniroute-tray)** перетворює це на програму панелі меню «встановити та забути» для macOS: він запускає сервер, підтримує його роботу під час перезавантаження, оновлює його на місці та розміщує ваш живий бюджет маркерів одним клацанням миші —** немає відкритого вікна терміналу, немає `npm install -g omniroute` для няні.** Створений з [Tauri v2](https://v2.tauri.app/) (ядро Rust розміром з помилку округлення), він постачає власне підписане середовище виконання Node 24 і керує встановленням OmniRoute що належить додатку, тому ніколи не бореться з вашим глобальним `node`/`bun`. Це** ділиться наявною конфігурацією та базою даних `~/.omniroute/`** — отже, це той самий OmniRoute, який ви вже бігаєте, тільки в капелюсі. 🎩
Що він робить Як
🟢 Контролює сервер Створює omniroute serve , приймає вже запущений екземпляр замість його дублювання
📊 Короткий огляд використання в реальному часі Смуги квот постачальника, Claude session/weekly обмеження зі зворотним відліком скидання, розподіл витрат за 30 днів
🔄 Автоматичні оновлення на місці Поетапне встановлення, атомарна заміна, відкат у разі помилки — завжди на найновішій версії
🚀 Запуск під час входу Додатковий запуск під час входу; лише трей, без значка док-станції
🩺 Доктор & журнали Діагностика в один клік і доступ до журналу сервера
```sh brew install --cask zoispag/tap/omniroute-tray ``` Бажаєте завантажити? Завантажте останню версію .dmg із Випускає . Джерело, проблеми та збірка документи живуть на zoispag/omniroute-tray.
💛 Проект спільноти @zoispag — не офіційний випуск OmniRoute.

## 🔒 Приватність і локальність за замовчуванням
Приватність і локальність за замовчуванням — шлюз і площина керування OmniRoute працюють на вашому комп’ютері. Запити надсилаються до зовнішнього постачальника, вибраного для кожного запиту; OmniRoute не додає проміжного хмарного вузла для обробки запитів, а телеметрію за замовчуванням вимкнено. Облікові дані шифруються під час зберігання за допомогою AES-256-GCM; засоби захисту включають обмеження областей дії API-ключів, фільтрацію IP-адрес, обмеження частоти запитів, захист від ін’єкцій у запити, очищення заголовків зовнішніх постачальників, опціональне редагування персональних даних, очищені повідомлення про помилки та локальний журнал аудиту SQLite. OmniRoute поширюється за ліцензією MIT і підтримує самостійне розгортання. 📖 [Авторизація](docs/architecture/AUTHZ_GUIDE.md) · [Захисні механізми](docs/security/GUARDRAILS.md) · [Відповідність вимогам](docs/security/COMPLIANCE.md)
## 🔌 Повноцінний CLI + A2A та MCP
> Окрім сервера, OmniRoute — це **повноцінний центр керування з командного рядка** з **понад 80 командами**, а також відкритими агентними протоколами, завдяки яким ШІ-агент може керувати ним **самостійно**. ### ⌨️ Справжній CLI (а не лише `start`) ```bash omniroute # запустити шлюз і панель керування (порт 20128) omniroute chat # інтерактивний чат-клієнт TUI (команди: /model /combo /skill /memory) omniroute setup # покроковий майстер першого запуску omniroute doctor # діагностика провайдерів, портів і нативних залежностей ``` ### 🛰️ Віддалений режим — запускайте CLI тут, а OmniRoute — на VPS OmniRoute працює на сервері? Керуйте ним із ноутбука за допомогою **того самого CLI**. Один раз увійдіть за допомогою токена доступу з визначеною областю дії — після цього кожна команда буде спрямована на віддалений сервер. ```bash omniroute connect 192.168.0.15 # пароль → токен з областю дії, збережений як контекст omniroute models # ← виконується на ВІДДАЛЕНОМУ сервері omniroute configure codex # ← вибирає віддалену модель і записує локальний профіль Codex omniroute tokens create --name ci --scope read # створює токени з вужчими правами для інших машин omniroute contexts use default # ← повернення до локального сервера ``` Токени мають області дії `read` / `write` / `admin`; маршрути, що запускають процеси, залишаються доступними лише через loopback. 📖 [Віддалений режим](docs/guides/REMOTE-MODE.md)
Анімована демонстрація OmniRoute CLI у терміналі — omniroute providers list, omniroute combo list та omniroute health — із циклічним показом 89 команд верхнього рівня: providers · oauth · keys · combo · nodes · models · cache · compression · cost · usage · quota · health · resilience · telemetry · logs · audit · mcp · a2a · cloud · memory · skills · eval · tunnel · backup · sync · webhooks · policy · pricing · translator · simulate …
### 🤝 Підключіть агента — і він сам керуватиме OmniRoute Надайте доступ до OmniRoute через **MCP**, **A2A**, **REST API**, **вебхуки** або **віддалений CLI** — будь-який сумісний агент (або ваш власний код) отримає ключі до всього шлюзу: маршрутизації, провайдерів, комбінацій, кешу, стиснення та пам’яті — і керуватиме ними автономно. Наведені нижче HTTP-ендпойнти доступні за адресою `http://localhost:20128`.
ІнтерфейсЕндпойнт / командаДля чого використовувати
🧰 MCP (stdio)omniroute --mcpПідключення до Claude Desktop, Cursor або будь-якого клієнта MCP
🌊 MCP (HTTP)/api/mcp/streamВіддалений MCP — 110 інструментів, 33 області дії (примусове застосування вмикається окремо), повний журнал аудиту
📡 MCP (SSE)/api/mcp/sseПотоковий транспорт MCP
🤝 A2A/.well-known/agent.jsonВзаємодія між агентами, JSON-RPC 2.0 + SSE, 6 навичок
🌐 REST API/v1/*Сумісний з OpenAI — чат, векторні представлення, зображення, аудіо, OCR
🔔 Вебхуки/api/webhooksНадсилання подій запитів / квот у Slack, Discord, Telegram або на будь-яку URL-адресу
🛰️ Віддалений CLIomniroute connect Керування віддаленим екземпляром за допомогою токенів доступу з визначеними областями дії
```bash # Надайте Claude Code повний набір інструментів OmniRoute через MCP: claude mcp add-server omniroute --type http --url http://localhost:20128/api/mcp/stream ``` 📖 [Сервер MCP](docs/frameworks/MCP-SERVER.md) · [Сервер A2A](docs/frameworks/A2A-SERVER.md) · [Агентні протоколи](docs/frameworks/AGENT_PROTOCOLS_GUIDE.md)
## 🗜️ Автоматично заощаджуйте 15–95% токенів
### 📖 Як це працює — конвеєр, архітектура та розрахунок заощаджень Конвеєр стиснення OmniRoute: ілюстративний запит клієнта на 10 000 токенів проходить через 12 комбінованих рушіїв — Session-Dedup, CCR, Lite, RTK, Responses Tool Output, Headroom, Relevance, Caveman, Aggressive, LLMLingua-2, Ultra та OmniGlyph — і в задокументованому прикладі послідовного застосування може досягти провайдера приблизно у 1 080 токенах. Структурований вміст захищено засобами збереження та перевірками точності на кожному кроці; явні втратні або експериментальні режими можуть перетворювати придатний для цього вміст. Стандартний послідовний набір запускає `RTK → Caveman`. Коли обидва рушії діють на той самий інструментальний/контекстний пакет даних, заощадження сумуються: ```txt combined = 1 − (1 − RTK) × (1 − Caveman_input) average = 1 − (1 − 0.80) × (1 − 0.46) = 89.2% range = 78.4 – 94.6% ``` Блоки коду, URL-адреси, JSON і структуровані дані **завжди захищені** рушієм збереження. > **Навіщо використовувати багато токенів, якщо достатньо кількох?** Кожен запит **прозоро** проходить через конвеєр стиснення OmniRoute — без змін на стороні клієнта. Тепер це **набір із 12 комбінованих рушіїв**, які запускаються послідовно та довільно комбінуються для кожного маршруту — на основі ідей з [RTK](https://github.com/rtk-ai/rtk), [Caveman](https://github.com/JuliusBrussee/caveman) (⭐ понад 90K), [LLMLingua-2](https://github.com/microsoft/LLMLingua) та [Troglodita](https://github.com/leninejunior/troglodita) (PT-BR). ### 🧱 Набір із 12 рушіїв Рушії запускаються в порядку конвеєра; кожен можна незалежно вмикати, вимикати та налаштовувати для кожної комбінації:
#РушійЩо він робить
1Session-DedupВидаляє вміст, що повторюється між ходами (адресація за вмістом, між ходами)
2CCRАрхівує великі блоки за маркерами отримання, які завантажуються на вимогу
3LiteОбрізання пробілів і URL-адрес зображень (базовий режим із низькою затримкою)
4RTKІнтелектуальна фільтрація результатів інструментів, усунення дублікатів і скорочення (з урахуванням команд)
5Responses Tool OutputСтиснення JSON із пріоритетом безвтратності та обмежене діагностичне стиснення результатів shell/patch/search/build (Responses API)
6HeadroomБезвтратне ущільнення табличних даних у масивах JSON (приблизно 30%) за допомогою вбудованого кодека GCF
7RelevanceЕкстрактивне оцінювання речень за останнім запитом користувача
8CavemanСтиснення прозового тексту на основі правил (приблизно 65–75% для результату)
9AggressiveУзагальнення та поступове скорочення давніших ходів
10LLMLingua-2Семантичне ML-скорочення за допомогою MobileBERT ONNX — безпечне для коду, асинхронне
11UltraЕвристичне скорочення токенів із додатковим рівнем малої моделі (SLM)
12OmniGlyphЕкспериментальне кодування контексту як зображення для виміряного Claude Fable 5 у прямому каналі Anthropic; трансформери GPT 5.6 залишаються в режимі безпечної відмови до отримання підтверджень від провайдера. Чотири профілі стиснення (агресивний за замовчуванням, збалансований, безпечний для коду, наскрізний) (найагресивніший; вмикається окремо)
Блоки коду, URL-адреси та структуровані дані **завжди зберігаються побайтно**. **Підготовлені набори в один клік** комбінують рушії:
РежимЗаощадженняНайкраще підходить для
🪶 Lite~15%Безпечний режим за замовчуванням, який завжди активний
🪨 Standard (Caveman)~30%Щоденної роботи з кодом
⚡ Aggressive~50%Тривалих сесій із великою кількістю інструментів
🔥 Ultra~75%Максимального заощадження
🧰 RTK60–90%Виводу shell/test/build/git
🔗 Stacked (RTK → Caveman)78–95%Змішаних запитів і журналів інструментів
**Реальний приклад — режим Standard:** > **До (69 токенів):** _"Ймовірно, причина повторного рендерингу вашого компонента React полягає в тому, що під час кожного циклу рендерингу створюється нове посилання на об’єкт. Коли ви передаєте вбудований об’єкт як prop, поверхневе порівняння React щоразу сприймає його як інший об’єкт, що запускає повторний рендеринг. Рекомендую використовувати useMemo, щоб мемоізувати об’єкт."_ > > **Після (19 токенів):** _"Нове посилання на об’єкт під час кожного рендерингу. Вбудований об’єкт як prop = нове посилання = повторний рендеринг. Обгорніть у useMemo."_ > > **Та сама відповідь. На 72% менше токенів. Жодної втрати точності.** ✅ **Приклад PT-BR — режим [Troglodita](https://github.com/leninejunior/troglodita):** > **До (42 токени):** _"Проблема в тому, що компонент повторно рендериться, оскільки під час кожного циклу рендерингу створюється нове посилання на об’єкт. Я б рекомендував використовувати useMemo."_ > > **Після (12 токенів):** _"Повторний рендер: нове посилання в кожному циклі (вбудований об’єкт створюється заново). Використовувати `useMemo`."_ > > **Та сама відповідь. Приблизно на 70% менше токенів. Технічна точність збережена.** ✅
### 🎚️ Поза межами рушіїв — стилі виводу, адаптивний регулятор і керування для кожного запиту 12 наведених вище рушіїв скорочують те, що **надходить**. Ще три рівні визначають **як**, **коли** та що **виводиться**: - **🪄 Стилі виводу** _(керування віссю виводу)_ — додають детерміновані інструкції для формування відповіді, безпечні для кешування; їх можна комбінувати, кожен має інтенсивність `lite` / `full` / `ultra`. Додавання стилю — це один рядок у реєстрі: - **Лаконічна проза** — прибрати наповнювачі / артиклі / застереження; зберегти технічний зміст без змін. - **Менше коду** — YAGNI у стилі «лінивого senior-розробника»: найменша робоча зміна, без незапитаного каркаса. - **Кінський хвіст (лінивий senior-розробник)** — піднятися драбиною YAGNI, виправити першопричину, внести найменший робочий диф. - **У мене ADHD (спочатку дія)** — спочатку наступна дія, кроки пронумеровані, один конкретний наступний крок, без вступу. - **Лаконічний CJK (文言)** — надзвичайно лаконічний стиль класичної китайської мови (активується лише для локалі `zh`). - **🎯 Адаптивний бюджет контексту** _(регулятор)_ — замість одного порогового значення токенів увімкнено/вимкнено, найдешевші рушії з найменшими втратами посилюються лише настільки, наскільки потрібно, щоб **вміститися у вікно контексту моделі**. Політика: `reserve-output` (типова, з урахуванням моделі) · `percentage` · `absolute`. Режим: `floor` (гарантувати вміщення) · `replace-autotrigger` (ваш явний вибір має перевагу) · `off` (застарілий поріг). - **🎛️ Де визначається стиснення** _(пріоритет, від вищого до нижчого)_ — заголовок запиту `x-omniroute-compression` › перевизначення комбінації маршрутизації › активний іменований профіль › адаптивний режим / автоматичний тригер › типове значення панелі › вимкнено. Застосований план повертається в заголовку відповіді `X-OmniRoute-Compression: ; source=`. Увімкніть автоматичний тригер за порогом токенів, перемикайте адаптивний регулятор, зафіксуйте іменований профіль, задайте одноразове значення для запиту або призначте конвеєр для кожної комбінації маршрутизації — залежно від того, що найкраще відповідає робочому навантаженню. Додатковий офлайн **eval harness** (`npm run eval:compression`) оцінює точність і заощадження на зафіксованому корпусі, перш ніж ви опублікуєте зміну. 📖 [`COMPRESSION_GUIDE.md`](docs/compression/COMPRESSION_GUIDE.md) · [`RTK_COMPRESSION.md`](docs/compression/RTK_COMPRESSION.md) · [`COMPRESSION_ENGINES.md`](docs/compression/COMPRESSION_ENGINES.md)
# ⚡ Швидкий початок
**1) Установіть і запустіть** ```bash npm install -g omniroute omniroute ``` > 💡 Бачите `npm warn ERESOLVE` або попередження про peer-залежності? [Вони нешкідливі](docs/guides/TROUBLESHOOTING.md#npm-install-warnings-eresolve--peer--deprecated). > **Використовуєте npm 11 або новішу версію?** npm може блокувати скрипти життєвого циклу пакунків, якщо їх не дозволено. `postinstall` OmniRoute (`node scripts/build/postinstall.mjs`) потрібен для підготовки власних файлів середовища виконання. Під час глобального встановлення дозвольте пакунки, названі в попередженні npm. Для набору пакунків, повідомленого OmniRoute 3.8.54: > > ```bash > npm install -g --allow-scripts=omniroute,keytar,onnxruntime-node,@parcel/watcher,@swc/core,protobufjs,esbuild omniroute > ``` > > Щоб повторно використовувати цей список дозволених пакунків під час майбутніх глобальних встановлень, налаштуйте його один раз, а потім установлюйте звичайним способом: > > ```bash > npm config set allow-scripts=omniroute,keytar,onnxruntime-node,@parcel/watcher,@swc/core,protobufjs,esbuild --location=user > npm install -g omniroute > ``` > > Список залежностей може змінюватися між випусками; якщо npm повідомить про інший список, використайте назви пакунків із цього попередження. Дозвіл для пакунка дає змогу виконувати його скрипти встановлення. > **Використовуєте Gemini Web або іншого постачальника веб-cookie?** Пакунок npm містить > Playwright, але не його бінарний файл Chromium. Перегляньте примітку > [Налаштування Chromium для Playwright](docs/guides/TROUBLESHOOTING.md#gemini-web-and-playwright-chromium) > перед першим запитом до веб-постачальника. Панель керування: `http://localhost:20128` · API: `http://localhost:20128/v1`. **2) Підключіть відповідного постачальника, використовуючи власний обліковий запис** Панель керування → **Постачальники** → виберіть постачальника, чиї поточні умови та квота відповідають вашому сценарію використання → додайте його API-ключ або пройдіть процедуру підключення облікового запису. Безкоштовні рівні можуть вимагати реєстрації, схвалення або способу оплати. Перегляньте [Посібник із безкоштовних рівнів](docs/getting-started/FREE-TIERS-GUIDE.md); доступність без ключа не гарантується, а постачальники, позначені як `tos: avoid`, типово виключаються з `auto`. **3) Налаштуйте свій інструмент програмування** ```txt Базова URL-адреса: http://localhost:20128/v1 API-ключ: [скопіюйте з Панель керування → Кінцеві точки] Модель: auto (маршрутизує між доступними підключеннями — або виберіть постачальника/модель) ``` **4) Перевірте роботу** ```bash curl http://localhost:20128/v1/models -H "Authorization: Bearer YOUR_KEY" ``` Ви маєте побачити список підключених моделей. 🎉 Ось і все — починайте програмувати, а OmniRoute автоматично маршрутизує запити та перемикається на резервні варіанти. Якщо ваш клієнт не може надсилати власні заголовки, OmniRoute також надає токенізовані псевдоніми сумісності: ```txt Каталог OpenAI: http://localhost:20128/vscode/YOUR_KEY/ Моделі OpenAI: http://localhost:20128/vscode/YOUR_KEY/models Чат OpenAI: http://localhost:20128/vscode/YOUR_KEY/chat/completions Відповіді OpenAI: http://localhost:20128/vscode/YOUR_KEY/responses Чат Ollama: http://localhost:20128/vscode/YOUR_KEY/api/chat Теги Ollama: http://localhost:20128/vscode/YOUR_KEY/api/tags ``` Використовуйте їх лише для клієнтів, які не можуть додавати `Authorization: Bearer ...`. Автентифікація через заголовок залишається рекомендованим режимом.
## 📦 Інші способи встановлення — Docker, вихідний код, 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 ``` `:latest` відповідає найвищій **опублікованій** стабільній версії SemVer. Він не відстежує git `main`. Для GitOps закріпіть `:X.Y.Z`. Див. [Канали випусків Docker](docs/guides/DOCKER_GUIDE.md#release-channels). В образі зафіксовано **`OMNIROUTE_MEMORY_MB=1024`**. Цього достатньо для панелі керування та нескладного чату. **Агентам для програмування** (`POST /v1/responses` від Claude Code, Codex, Grok, …) потрібна значно більша купа V8, інакше процес завершується з `FATAL ERROR` приблизно за 12 ГіБ при двох тривалих контекстах, що перекриваються. Виділяйте контейнеру більше пам’яті, ніж розмір купи (нативні буфери розташовуються поза V8): | Робоче навантаження | Купа (`-e OMNIROUTE_MEMORY_MB`) | Контейнер (`--memory`) | | ------------------------------------- | ------------------------------- | ---------------------- | | Панель керування / нескладний чат | `1024` (типове значення образу) | ≥2 ГБ | | Один агент для програмування | `8192` | ≥10 ГБ | | Два одночасні тривалі `/v1/responses` | `10240`–`12288` | ≥12–16 ГБ | ```bash docker run -d --name omniroute --restart unless-stopped --stop-timeout 40 \ -e OMNIROUTE_MEMORY_MB=8192 --memory=10g \ -p 127.0.0.1:20128:20128 -v omniroute-data:/app/data diegosouzapw/omniroute:latest ``` Повна таблиця: [Посібник із Docker — оперативна пам’ять під час виконання](docs/guides/DOCKER_GUIDE.md#runtime-ram-for-coding-agents). > **Канал попередніх випусків Docker:** `diegosouzapw/omniroute:next` і > `diegosouzapw/omniroute:next-web` відповідають поточній типовій гілці `release/v*`. > Ці змінювані теги призначені лише для тестування ще не випущених виправлень і > **не підтримуються для промислового використання**. Див. > [Канали випусків Docker](docs/guides/DOCKER_GUIDE.md#release-channels). **🥟 Bun** Стандартні `bun install` і глобальне встановлення (`bun install -g omniroute`) підтримуються завдяки виявленню середовища виконання Bun: - **Вбудований `bun:sqlite`**: під час роботи в Bun OmniRoute використовує вбудований драйвер Bun `bun:sqlite`, а в Node.js — `better-sqlite3` або `sql.js` як резервний варіант. - **Автоматичний вибір пакувальника Webpack під час розробки**: режим розробки (`bun run dev`) автоматично виявляє Bun і вимикає Turbopack на користь Webpack, щоб запобігти несумісності нативних прив’язок V8. Виробничі збірки (`bun run build`) використовують `OMNIROUTE_USE_TURBOPACK` так само, як і в Node: типово Turbopack, а `OMNIROUTE_USE_TURBOPACK=0` — для збирання за допомогою Webpack (`Dockerfile.bun` надає його як `--build-arg`). - **Окремий Dockerfile для Bun**: багатоетапний `Dockerfile.bun` для нативних виробничих розгортань Bun (`docker build -f Dockerfile.bun -t omniroute:bun .`). ```bash # Встановлення та запуск за допомогою Bun bun install bun run dev ``` **🛠️ З вихідного коду** ```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 flakes nix develop npm run dev # Або використання devbox devbox run npm run dev ``` 📖 [Посібник із Docker](docs/guides/DOCKER_GUIDE.md) — профілі Compose, Caddy HTTPS, тунелі Cloudflare. **🦭 Podman** ```bash # 1. Підготуйте каталог даних для монтування через bind mount mkdir -p data # 2. Лише Linux + локальний rootless Podman (ніколи не віддалений клієнт Podman Machine): podman unshare chown 1000:1000 ./data # 3. Установіть підказку середовища виконання, зберіть локальний образ Compose і запустіть echo "CONTAINER_HOST=podman" >> .env podman compose --profile base up -d --build ``` У macOS або Windows Podman використовує віддалену Podman Machine: пропустіть `podman unshare` і дотримуйтеся [рекомендацій щодо каталогу даних для відповідної топології](contrib/podman/README.md#data-directory-permissions-by-topology). 📖 [Посібник із Podman](contrib/podman/README.md) — збірки Compose, Podman Machine і налаштування Quadlet для Linux/systemd. **⚡ Швидше / компактніше встановлення (без нативної збірки)** Нативний рушій SQLite (`better-sqlite3`) є **необов’язковою** залежністю, тому глобальне встановлення ніколи не блокується через компіляцію з вихідного коду: воно використовує попередньо зібраний бінарний файл, якщо він відповідає вашій платформі/Node, а в іншому разі прозоро переходить на рушій на чистому JS (`node:sqlite` у Node 22+, інакше — вбудований WASM `sql.js`) — інструменти для збирання не потрібні. Щоб повністю пропустити нативну підготовку після встановлення (для CI, безголових або повільних машин): ```bash OMNIROUTE_SKIP_POSTINSTALL=1 npm install -g omniroute # CI=1 також пропускає її ``` Для найшвидшого встановлення віддавайте перевагу **pnpm** (сховище з адресацією за вмістом + жорсткі посилання — див. вище). Для безголового середовища виконання без панелі керування використовуйте профіль Docker `base` (вище) або [посібник із Termux](docs/guides/TERMUX_GUIDE.md). CLI та вебпанель керування обслуговуються одним процесом на одному порту, тому наразі окремого пакета лише для CLI немає.
# 🎬 OmniRoute у дії
## 📹 Відеопосібники
Знімок панелі станом на 2026-10-18 · Необроблений каталог: YT 1.352 | TT 334 | IG 290 · Актуальність (днів): YT 5 | TT 48 | IG 49
Instagram Reel — nick_saraev
🎬 #1 — Instagram
nick_saraev — 3,042,474 перегляди
Instagram Reel — nnapier7
🎬 #2 — Instagram
nnapier7 — 1,454,535 переглядів
YouTube — Amidia AI & Tech
🎬 #3 — YouTube
Amidia AI & Tech — 794,974 перегляди
Instagram Reel — theopenstack
🎬 #4 — Instagram
theopenstack — 692,419 переглядів
TikTok — migue.baena
🎬 #5 — TikTok
migue.baena — 685,788 переглядів
**Повний рейтинг (дедупліковані канонічні URL-адреси, `v > 0`, найбільше охоплення):** | #1 | #2 | #3 | #4 | #5 | | -------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | | [nick_saraev — Instagram](https://www.instagram.com/reel/Da8ZthUPK98/) — **3,042,474** | [nnapier7 — Instagram](https://www.instagram.com/reel/Dbp7wv_CIO0/) — **1,454,535** | [Amidia AI & Tech — YouTube](https://www.youtube.com/watch?v=NJ0TQ-pyMDY) — **794,974** | [theopenstack — Instagram](https://www.instagram.com/reel/DaSs65mMrHk/) — **692,419** | [migue.baena — TikTok](https://www.tiktok.com/@migue.baena/video/7670919268216622358) — **685,788** | | #6 | #7 | #8 | #9 | #10 | | ------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | | [milesreevesai — TikTok](https://www.tiktok.com/@milesreevesai/video/7667980059189366019) — **620,400** | [nikothetech — TikTok](https://www.tiktok.com/@nikothetech/video/7671890769665477918) — **610,803** | [Vaibhav Sisinty — YouTube](https://www.youtube.com/watch?v=QucgvbO5gsM) — **509,281** | [buildwithai.club — Instagram](https://www.instagram.com/reel/DbIt9AjK7-U/) — **347,652** | [nivedan.ai — Instagram](https://www.instagram.com/reel/DbIrCksJiqq/) — **331,973** | Канонічні метрики станом на 2026-10-18: **1.976 унікальних відео** · **20.220.289 відомих переглядів** (`v > 0`) · **1.210 каналів/профілів у різних мережах**. Необроблена панель містить 1.976 рядків (YouTube 1.352 = 740 довгих відео + 612 Shorts · TikTok 334 · Instagram 290); після нормалізації за канонічною URL-адресою, яка зберігає найбільшу кількість переглядів для кожного відео, дублікатів не залишилося. Збір даних із YouTube призупинено станом на 2026-10-13 (квоту API вичерпано з 14 до 18/10), а з TikTok/Instagram — з 2026-09-02 (відсутні кредити для збору даних); для 76 відео кількість переглядів досі невідома. > 🎬 **Зняли відео про OmniRoute?** Створіть [звернення](https://github.com/diegosouzapw/OmniRoute/issues/new) або [обговорення](https://github.com/diegosouzapw/OmniRoute/discussions), додавши посилання, — і ми розмістимо його тут.
# 📧 Спільнота та допомога > Усе в одному місці — стежте за супровідником проєкту, спілкуйтеся зі спільнотою або створіть звернення. | Канал | Де / як | | ------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------- | | 💼 **LinkedIn** — стежити за супроводжувачем | [linkedin.com/in/diegosouzapw](https://www.linkedin.com/in/diegosouzapw/) | | 🐙 **GitHub** — стежити за випусками й порадами | [@diegosouzapw](https://github.com/diegosouzapw) | | 💬 **Discord** | [discord.gg/U47eFqAXCn](https://discord.gg/U47eFqAXCn) | | ✈️ **Telegram** | [t.me/omnirouteOficial](https://t.me/omnirouteOficial) | | 🟢 **WhatsApp — 🌍 Глобальна група** | [приєднатися до групи](https://chat.whatsapp.com/FvuCbrpZmQ6I85n2vW5QIC?s=cl&p=a&mlu=4) | | 🟢 **WhatsApp — 🇧🇷 Бразилія** | [приєднатися до групи](https://chat.whatsapp.com/KWgatljAjmbELQory59Oti?s=cl&p=a&mlu=4) | | 🌍 **Вебсайт** | [omniroute.online](https://omniroute.online) | | 🌍 **🌍Спільнота StHub OmniRoute (безкоштовно)** | [портал StHub](https://portal.sthub.com.br/communities/groups/st-hub/channels/Omniroute-World-8kRjmK) | | 📦 **Вихідний код** | [github.com/diegosouzapw/OmniRoute](https://github.com/diegosouzapw/OmniRoute) | | 🐛 **Повідомити про помилку** | [створити звернення](https://github.com/diegosouzapw/OmniRoute/issues) — додайте вивід `npm run system-info` | | 🤝 **Зробити внесок** | [CONTRIBUTING.md](CONTRIBUTING.md) · [Модель розгалуження та випусків](docs/ops/BRANCHING_MODEL.md) · виберіть `good first issue` | | 💚 **Підтримати проєкт** | [Способи підтримки ↑](#-support-omniroute) · [GitHub Sponsors](https://github.com/sponsors/diegosouzapw) |
---
## 🛠️ Технологічний стек
РівеньТехнологія
Середовище виконанняNode.js 22.x / 24.x LTS — >=22.22.2 <23 || >=24.0.0 <27
МоваTypeScript 6.0 — 100% TypeScript у src/ і open-sse/ (нуль any у ядрі починаючи з v2.0)
ФреймворкNext.js 16 + React 19 + Tailwind CSS 4
База данихbetter-sqlite3 (SQLite, журналювання WAL) + LowDB (застарілий JSON) — 147 доменних модулів, 233 міграцій
Пам’ятьПовнотекстовий пошук SQLite FTS5 + векторні ембеддинги з квантуванням int8, типізоване згасання
СхемиZod 4 — перевірка введення/виведення інструментів MCP + контракти API
ПротоколиMCP (stdio / HTTP / SSE) + A2A v0.3 (JSON-RPC 2.0 + SSE)
Потокова передачаServer-Sent Events (SSE) + міст WebSocket (/v1/ws)
Стиснення12-двигунний конвеєр — RTK, Caveman, LLMLingua-2 (MobileBERT ONNX), GCF, OmniGlyph
Автентифікація та безпекаOAuth 2.0 (PKCE) + JWT + API Keys + ізольована автентифікація MCP · AES-256-GCM у стані спокою · DOMPurify
Прихованістьwreq-js — імітація TLS-відбитків JA3 / JA4, проксі з 3 рівнями
ВідмовостійкістьАвтоматичний вимикач, експоненційна затримка, захист від ефекту стада, автоматичне комбіноване самовідновлення
Журналюванняpino — структуровані журнали JSON із контекстом запиту
ТестуванняВбудований засіб запуску тестів Node.js + Vitest — понад 60 000 статичних оголошень тестів у понад 8 400 відстежуваних файлах тестів (модульні, інтеграційні, E2E, безпека, екосистема)
ПлатформиНастільні (Electron) · Android (Termux) · PWA (будь-який браузер)
CI/CDGitHub Actions — автоматична публікація в npm + Docker Hub під час випуску
ПосиланняВебсайт · npm · Docker Hub

## 📖 Документація
### 📘 Початок роботи
ДокументОпис
Посібник користувачаПровайдери, комбінації, інтеграція з CLI, розгортання
Посібник із налаштуванняПовний опис способів інсталяції, конфігурації CLI-інструментів, налаштування протоколів, оптимізація тайм-аутів
Посібник із CLI-інструментівНалаштування окремих інструментів для Claude Code, Codex, Cursor, Cline, OpenClaw, Kilo, Copilot
Віддалений режимКерування віддаленим OmniRoute (VPS) із CLI на вашому ноутбуці за допомогою токенів доступу з обмеженою областю дії
Конфігурація Claude CodeПідключення Claude Code до OmniRoute (локального/віддаленого) за допомогою launch і профілів для окремих моделей
Швидкий стартІнсталяція → підключення → налаштування у 3 кроки
### 🔧 Експлуатація та розгортання
ДокументОпис
Посібник із DockerЗапуск Docker, профілі Compose, Caddy HTTPS, тунелі, теги образів
Посібник із PodmanІнтеграція Quadlet із systemd, podman-compose, SELinux
Розгортання на VMПовний посібник: налаштування VM + nginx + Cloudflare
Розгортання у Fly.ioРозгортання у Fly.io зі сталим сховищем
Посібник із TermuxЗапуск OmniRoute на Android через Termux
Посібник із PWAІнсталяція прогресивного вебзастосунку, кешування, архітектура
Посібник із видаленняПовне видалення для всіх способів інсталяції
Конфігурація середовищаПовний перелік змінних .env і довідкові матеріали
### 🧠 Функції та архітектура
ДокументОпис
АрхітектураАрхітектура системи, потоки даних і внутрішня будова
Посібник зі стисненняКонвеєр із 7 варіантами: off / lite / standard / aggressive / ultra / RTK / stacked
Стиснення RTKСтиснення виводу команд, фільтри, довіра, перевірка, відновлення необробленого виводу
Механізми стисненняCaveman, RTK, конвеєри stacked, інтерфейси dashboard/API/MCP
Формат правил стисненняСхеми пакетів правил JSON для фільтрів Caveman і RTK
Мовні пакети стисненняВизначення мови та створення пакетів правил Caveman
Посібник зі стійкостіАвтоматичні вимикачі, періоди охолодження, черга, захист від лавини запитів, підміна TLS
Механізм Auto-ComboОцінювання за 16 факторами, пакети режимів, самовідновлення
Посібник із проксі3-рівнева система проксі, маркетплейс 1proxy, CRUD реєстру
Безкоштовні рівніОб’єднаний каталог: 34 задокументовані регулярні пули / 465 каталогізованих записів безкоштовного рівня
Галерея функційВізуальний огляд dashboard зі знімками екрана
Документація кодової базиОгляд кодової бази для початківців
### 🤖 Протоколи та API
ДокументОпис
Довідник APIУсі кінцеві точки з прикладами
Специфікація OpenAPIСпецифікація OpenAPI 3.0
Сервер MCP110 інструментів MCP, конфігурації IDE, клієнти Python/TS/Go
Посібник із сервера MCPІнсталяція MCP, транспорти та довідник інструментів
Сервер A2AПротокол JSON-RPC 2.0, навички, потокова передача, керування завданнями
Посібник із сервера A2AКартка агента A2A, завдання, навички та потокова передача
### 📋 Проєкт і якість
ДокументОпис
Участь у розробціНалаштування середовища розробки та рекомендації
Модель гілок і випусківКуди спрямовуються PR (release/*), що означають main і теги
Журнал змінПовна історія випусків для кожної версії
Політика безпекиПовідомлення про вразливості та практики безпеки
Посібник з i18nПідтримка 67 мов, процес перекладу, RTL
Контрольний список випускуЕтапи перевірки перед випуском
План покриттяСтратегія покриття тестами для понад 60 000 статичних оголошень тестів у понад 8 400 відстежуваних файлах тестів

# ⭐ Найкращі учасники > OmniRoute розвивається завдяки захопленій спільноті відкритого коду. Ці люди зробили винятковий внесок, який безпосередньо вплинув на якість, стабільність і охоплення проєкту. **Дякуємо.** ### Зовнішні учасники за кількістю об’єднаних запитів на злиття
МісцеУчасникОб’єднані PR~Змінені рядки
1maxmad64bis41825,367,739
2HouMinXi29513,557,796
3pacocartones22281,551
4backryun210270,562
5JxnLexn1983,570,623
6oyi77190411,243
7KooshaPari1515,972,314
8rdself14580,663
9RaviTharuma123500,065
10herjarsa88230,872
11hartmark852,849,623
12jonlwheat2-gif6869,097
13artickc6243,502
14xiaoyaner020159126,220
15chirag127526,661
16xz-dev50245,976
17woodsonl48811,771
18rqzbeh46151,229
19MumuTW4328,166
19QuangBlue4313,112
Перепис учасників проведено 2026-11-03 03:01:19 UTC для актуального стану release/v3.8.53 — 05bc048d6c. Пагінований перепис GitHub GraphQL містить 9,947 об’єднаних PR: 4,130 від власника репозиторію, 240 від Dependabot, 6 від інших ботів/застосунків і 5,571 зовнішній PR від 883 різних учасників. «Змінені рядки» — це сума додавань і вилучень на GitHub; сюди входять згенеровані файли, lock-файли, каталоги, переклади та документація; це показник змін, а не авторські LOC. 53 PR містять у дифах GitHub понад 500 000 рядків (наприклад, #13399, де один доданий провайдер охоплює 2 347 змінених файлів), що збільшує кілька наведених вище підсумків. Однакові результати займають спільне місце. ### Коміти, атрибутовані GitHub
Dizzle
Dizzle

🥇 418 комітів, атрибутованих GitHub
Bob.Hou
Bob.Hou

🥈 294 коміти, атрибутовані GitHub
Paijo
Paijo

🥉 229 комітів, атрибутованих GitHub
Paco Cartones
Paco Cartones

🏅 222 коміти, атрибутовані GitHub
backryun
backryun

🏅 202 коміти, атрибутовані GitHub
Jan Leon
Jan Leon

🏅 134 коміти, атрибутовані GitHub
Ravi Tharuma
Ravi Tharuma

🏅 126 комітів, атрибутованих GitHub
Markus Hartung
Markus Hartung

🏅 115 комітів, атрибутованих GitHub
Randi
Randi

🏅 108 комітів, атрибутованих GitHub
Chris
Chris

🏅 70 комітів, атрибутованих GitHub
WebPerson
WebPerson

🏅 68 комітів, атрибутованих GitHub
Koosha Paridehpour
Koosha Paridehpour

🏅 68 комітів, атрибутованих GitHub
Повторно перевірено 2026-11-03 02:09:16 UTC: коміти, атрибутовані GitHub, про які повідомляє API учасників репозиторію для гілки за замовчуванням release/v3.8.53. API повернув 903 ідентичності (429 користувачів, 2 боти, 472 анонімні); у цій таблиці виключено мейнтейнера, ботів і анонімні ідентичності, а також збережено нічиї в рейтингу. Вона відрізняється як від наведеного вище рейтингу об’єднаних PR, так і від наведеного нижче перепису метаданих Git. > 🙏 Функції, виправлення помилок і вдосконалення інфраструктури цих учасників є **невід’ємною частиною** того, що робить OmniRoute надійним і багатофункціональним. Важливі кожен pull request, кожен тестовий приклад і кожен файл перекладу i18n. Відкриті проєкти створюють такі люди, як вони.
---
## 💖 Спонсори
Щиро дякуємо людям, які фінансують OmniRoute із власної кишені — кожен внесок допомагає проєкту залишатися безкоштовним, незалежним і розвиватися.
Andrew
Andrew

💛 Активний щомісячний спонсор
Vlad I
Vlad I

💛 Активний щомісячний спонсор
小妍儿
小妍儿

💛 Активний щомісячний спонсор
Guilherme Costa
Guilherme Costa

💛 Активний разовий спонсор
Henrique Triches Iurkiv
Henrique Iurkiv

💛 Активний разовий спонсор
Somesh Ghaturle
Somesh Ghaturle

💛 Активний разовий спонсор
Kolonie AI
Kolonie AI

💛 Колишній разовий благодійник
Professor Igor Morais Vasconcelos
Prof. Igor Morais

💛 Колишній разовий благодійник
Pixma
Pixma

💛 Колишній разовий благодійник
Paco Cartones
Paco Cartones

💛 Колишній разовий благодійник
longtao
longtao

💛 Колишній разовий благодійник
… та інші, які воліють зберігати конфіденційність 💛 Публічних спонсорів GitHub повторно перевірено 2026-10-18 через GitHub Sponsors GraphQL API: 11 публічних спонсорств (6 активних, 5 колишніх) із 14 загалом. Статус GitHub isActive визначає наведені вище позначки активності; ми й надалі дякуємо колишнім публічним разовим благодійникам, а приватні спонсори залишаються анонімними. Пожертви через Ko-fi, Buy Me a Coffee, Liberapay, PIX і криптовалюти не вказані, оскільки для них немає публічних записів про спонсорство. 💖 Стати спонсором → — кожен долар допомагає OmniRoute залишатися безкоштовним і незалежним.

## 👥 Понад 1 000 учасників
[![Contributors](https://contrib.rocks/image?repo=diegosouzapw/OmniRoute&max=1074&columns=20&anon=1)](https://github.com/diegosouzapw/OmniRoute/graphs/contributors) Перевірено 2026-11-02 на актуальній вершині release/v3.8.53 1c7135e0fb (7 972 коміти): 1 074 нормалізовані ідентичності людей у Git — 759 з них указані як автори комітів (включно з мейнтейнером), а 315 трапляються лише в явних трейлерах Co-authored-by. Під час підрахунку застосовується .mailmap, адреси електронної пошти порівнюються без урахування регістру, числові та звичайні GitHub-адреси noreply об’єднуються лише тоді, коли вони кодують той самий ідентифікатор, виключаються 29 ідентичностей ботів/агентів/служб/заповнювачів, а звичайні адреси електронної пошти не об’єднуються лише через збіг відображуваних імен. Аудит від 2026-08-24 опублікував число 639; повторний запуск цього методу на його базовому коміті ac02c5b42f дає 619, тому зростання пояснюється новими учасниками, а не послабленням методу. ### Як долучитися 1. Створіть форк репозиторію 2. Створіть гілку від **актуальної вершини** `release/vX.Y.Z` (не від `main`) — див. [Модель гілок і випусків](docs/ops/BRANCHING_MODEL.md) 3. Створіть гілку функції (`git checkout -b feat/amazing-feature`) 4. Зафіксуйте свої зміни (`git commit -m 'feat: add amazing feature'`) 5. Надішліть зміни до гілки (`git push origin feat/amazing-feature`) 6. Відкрийте запит на злиття з **base = цією гілкою** `release/vX.Y.Z` Докладні рекомендації див. у [CONTRIBUTING.md](CONTRIBUTING.md). ### Випуск нової версії ```bash # Створіть реліз — публікація npm відбувається автоматично VERSION=x.y.z gh release create "v${VERSION}" --title "v${VERSION}" --generate-notes ```
## 📊 Зірки Графік історії зірок
## 🌍 StarMapper StarMapper

## 🙏 Подяки
OmniRoute стоїть на плечах велетнів. Проєкт почався як форк **[9router](https://github.com/decolua/9router)** і TypeScript-порт Go-проєкту **[CLIProxyAPI](https://github.com/router-for-me/CLIProxyAPI)** — а відтоді кожна наведена нижче підсистема була натхненна проєктом із відкритим кодом, який першим реалізував відповідний підхід. Кожен із них сформував конкретну частину OmniRoute. Це наша подяка всім їм. 🙏 > ⭐ кількість зірок перевірено через REST API GitHub 3 листопада 2026 року — поставте цим проєктам зірку. Кількість — це точний знімок на вказану дату, і з часом вона природно змінюватиметься. ### 🧬 Походження та шлюз
Проєкт⭐Як він надихнув OmniRoute
9router31,861Оригінальний проєкт, на якому побудовано цей форк — тут його розширено мультимодальними API та повністю переписано на TypeScript.
CLIProxyAPI57,329Реалізація на Go, яка надихнула цей порт на JavaScript / TypeScript.
LiteLLM62,580Шлюз штучного інтелекту, чий загальнодоступний набір даних про ціни забезпечує синхронізацію відстеження витрат, а модель нормалізації постачальників вплинула на нашу маршрутизацію.
codex-chatgpt-web15,435Код під ліцензією MIT, адаптований у вбудований міст ChatGPT Web → Codex Responses, зокрема адаптери браузерної сесії, структурування відповідей, використання та вебпошук.
free-claude-code65,966Підходи, перенесені до відновлення потоків, псевдонімів без міркувань, резервного вебпошуку, обмежень ковзного вікна, редагування журналів і посилених процесів запуску.
composer-api347Підходи Cursor Composer до вибору інструментів, обмежень виводу та фіксації інструментів, адаптовані до нативного виконавця Cursor.
codex-multi-auth561Підходи до нового входу та ротації токенів оновлення, перенесені до повторної автентифікації Codex OAuth.
opencode-anthropic-auth562Типові параметри перетворення, сумісні з Claude Code, і поведінка заголовків білінгу узагальнені у конфігураційно керованому мосту OmniRoute.
grok2api-merged2Його зіставлення моделей Grok, генератор Statsig на основі фальшивої TypeError, типові параметри запитів і пристрою, а також обробник відповідей NDJSON були суттєво адаптовані до виконавця Grok Web в OmniRoute.
TQZHR/grok2api707Основне транзитивне джерело коду для grok2api-merged; його реалізації моделей, заголовків, корисного навантаження, Statsig і обробника збережено в ланцюжку походження Grok Web.
chenyme/grok2api7,874Базове джерело під ліцензією MIT для типових параметрів корисного навантаження та пристрою Grok, генератора Statsig і обробника result.response, успадкованих через TQZHR і grok2api-merged.
grok2api-pro27Транзитивне джерело, якому grok2api-merged завдячує рівнем пулу проксі; OmniRoute зберігає це повідомлення про походження, але не заявляє про перенесення пулу проксі до свого обмеженого виконавця Grok Web.
GrokProxy52Його автентифікований за допомогою cookie проксі Grok і шаблон потокової передачі result.response.token вплинули на транспорт Grok Web в OmniRoute.
GrokBridge5Під час розробки було вивчено дизайн його HTTP/browser upstream для початкової реалізації Grok Web; його прямий HTTP-шлях походить від GrokProxy, тому окреме перенесення коду не заявляється.
### 🗜️ Стиснення контексту й токенів — рушії
Проєкт⭐Як він надихнув OmniRoute
Caveman116,957Вірусний проєкт «навіщо використовувати багато токенів, якщо кілька токенів виконують завдання» — його філософія мовлення печерної людини лежить в основі нашого стандартного режиму стиснення та понад 30 правил видалення заповнювачів/конденсації.
RTK – Rust Token Killer85,350Високопродуктивне стиснення виводу команд — надихнуло наш рушій RTK, DSL фільтрації JSON, відновлення необробленого виводу та послідовний конвеєр RTK → Caveman.
headroom78,672Оборотне стиснення контексту (SmartCrusher) — надихнуло наш рушій headroom і шаблон маркерів отримання ccr.
LLMLingua6,797Дослідження стиснення промптів (LLMLingua / LLMLingua-2) — надихнуло наш асинхронний, безпечний для коду рушій llmlingua із відкритим режимом відмови.
llmlingua-2-js33Порт JS/ONNX (MobileBERT / XLM-RoBERTa), який використовується як бекенд робочого потоку для нашого рушія LLMLingua.
Troglodita50Стиснення токенів PT-BR — забезпечує роботу нашого мовного пакета pt-BR: скорочення плеоназмів і видалення заповнювачів, налаштовані для граматики бразильської португальської.
ponytail182,929Вірусна навичка YAGNI-кодування «лінивого досвідченого розробника» — надихнула наш стиль виводу less-code: керування найменшою працюючою зміною, що скорочує _згенерований_ код (аналог лаконічної прози Caveman на осі виводу).
i-have-adhd59,838Його стиль відповідей, орієнтований на дії та дружній до людей із СДУГ, було адаптовано до лаконічного стилю виводу OmniRoute п’ятьма мовами.
### 🧩 Компактні формати, дослідження токенів та інструменти з урахуванням коду
Проєкт⭐Як він надихнув OmniRoute
TOON25,602Нотація об’єктів, орієнтована на токени — її стовпцеву модель із заголовком і рядками було покладено в основу нашого етапу табличної компактизації.
GCF – Graph Compact Format61Його компактний формат графів і дизайн із загальним профілем вплинули на табличну компактизацію OmniRoute та формат кодека Headroom.
gcf-typescript4Реалізацію MIT на TypeScript безпосередньо вбудовано та розширено як кодек загального профілю Headroom.
token-optimizer-mcp566Кеш Brotli/SQLite + дельта контексту для кожного сеансу — надихнули наш рушій session-dedup.
token-savior1,203Компактизація виводу Bash + профілі MCP — надихнули нашу дисципліну відмови від стиснення та скорочення маніфесту інструментів MCP.
token-saver162Стиснення виводу з урахуванням вмісту для кожного типу файлів із відмовою у разі помилки — підтвердило нашу диспетчеризацію за типами та пропуск за мінімального виграшу.
token-optimizer2,853«Знайди примарні токени» — його шаблон вивантаження та відновлюваного дескриптора вплинув на наш підхід до вивантаження CCR.
TokenMizer34Схема графа сеансу + дедуплікація рядків між ходами, що вплинула на дизайн нашого session-dedup.
OmniCompress3Стовпцевий JSON на Rust + отримання за адресою вмісту + дедуплікація між повідомленнями — підтвердили дизайн наших рушіїв headroom/ccr/session-dedup та стабільний для кешу інваріант «стиснена форма не залежить від позиції».
mcp-compressor140Стиснення схем/описів інструментів MCP — вплинуло на скорочення кількості елементів маніфесту інструментів MCP.
RepoMapper218Ранжування карти репозиторію у стилі Aider — вплинуло на дослідження карти репозиторію / ранжування отримання.
quiet-shell-mcp4Декларативне скорочення виводу оболонки через MCP — підтвердило нашу декларативну компактизацію виводу Bash.
ts-morph6,222Інструментарій API компілятора TypeScript — надихнув наше видалення коментарів на основі парсера зі збереженням рядкових, шаблонних і регулярних літералів.
### 🧠 Пам’ять і RAG
Проєкт⭐Як він надихнув OmniRoute
Mem068,294Універсальний рівень пам’яті — його модель проксі як межі запису/читання сформувала нашу архітектуру пам’яті.
Letta (MemGPT)25,321Агенти зі збереженням стану та багаторівневою пам’яттю — надихнули нашу багаторівневу модель Context Control & Recovery (CCR).
WFGY1,804Таксономія ProblemMap із 16 повторюваних режимів відмови RAG/LLM — спільна термінологія в нашому посібнику з усунення несправностей.
### 🛰️ Перевірка трафіку, MITM і прозорий проксі
Проєкт⭐Як він надихнув OmniRoute
llm-interceptor81Перехоплення й аналіз MITM-трафіку між асистентом для програмування та LLM визначили ранні вимоги до Traffic Inspector. Чотири раніше похідні модулі — об’єднання SSE, нормалізація розмов, маскування секретів і санітизація заголовків — замінено незалежними реалізаціями, створеними методом «чистої кімнати» на основі загальнодоступних стандартів протоколів. Дві поверхні наскрізної передачі хоста (passthrough.ts і _internal/bypass.cjs) залишаються внутрішніми реалізаціями OmniRoute, класифікованими окремо; їх не переписували в межах цієї заміни.
ProxyBridge6,978Прозора маршрутизація проксі для окремих процесів — надихнула безпечне для аварій завершення MITM, тайм-аути простою сокетів, визначення процесів через /proc і перехоплення TPROXY.
### 📚 Дані моделей, спостережуваність та інтерфейс
Проєкт⭐Як він надихнув OmniRoute
models.dev7,486Відкрита база даних специфікацій, цін і можливостей моделей ШІ — нативно синхронізується з нашим каталогом моделей.
React Flow / xyflow38,874Бібліотека графів на основі вузлів, що забезпечує роботу наших Compression Studio і Combo/Routing Studio у реальному часі.
LangGraph44,349Візуалізація графа робочого процесу в реальному часі в LangGraph Studio надихнула каскадне представлення в реальному часі в наших Studio.
Langfuse36,907Його модель спостережуваності trace → span → generation сформувала вигляд водоспаду в нашій Compression Studio.
Kiali3,647Спостережуваність сервісної мережі Istio — надихнула бейджі автоматичного розмикання ланцюга та візуалізацію ребер помилок у Routing/Combo Studio.
lobe-icons2,666Логотипи брендів ШІ/LLM, які відображають піктограми постачальників на всій панелі керування.
flag-icons12,499Надає прапори SVG за ліцензією MIT, що використовуються селектором мов у README.
### 🛡️ Безпека
Проєкт⭐Як він надихнув OmniRoute
awesome-secure-defaults723Добірний список бібліотек із безпечними налаштуваннями за замовчуванням, який визначає наші рішення щодо безпеки (Helmet.js, DOMPurify, ssrf-req-filter, safe-regex, Google Tink).
### 🧭 Додаткові інструменти
Проєкт⭐Як він надихнув OmniRoute
ClawRouter6,649Надихнув дедуплікацію запитів, аварійний безкоштовний резервний варіант, підключувані стратегії Auto-Combo та багатомовну класифікацію намірів.
Antigravity-Manager32,785Його перемапування моделей з урахуванням облікових записів, перевірка шляхів до виконуваних файлів і поведінка міток планів вплинули на середовище виконання Antigravity в OmniRoute.
vscode-antigravity-cockpit4,852Його компактний формат зворотного відліку до скидання квоти надихнув відповідне відображення лімітів постачальника в OmniRoute.
AionUi33,996Його інтеграції ACP надихнули автоматичне виявлення встановлених CLI-агентів в OmniRoute.
CodexBar22,955Виявив поверхню квоти Grok Build; після цього OmniRoute незалежно перевірив і виправив фактичний формат передавання даних.
## 📄 Ліцензія Ліцензія MIT — див. [LICENSE](LICENSE), щоб дізнатися більше. ---
**[⬆ На початок](#-omniroute)** · Створено з ❤️ для спільноти ШІ з відкритим кодом. Автор: Diego Souza · OmniRoute v3.8.54 · Node ≥22.22.2 · Ліцензія MIT · omniroute.online