Cursor, Claude Code и двадцатистрочный скрипт одинаково умеют смотреть на «один OpenAI-совместимый endpoint» через base URL. Форма клиента совпадает. Счёт и простой — нет. OmniRoute крутится на машине, которую вы контролируете: он агрегирует ключи провайдеров, на которые вы уже зарегистрировались, и через auto или combo выбирает следующий hop. OpenRouter выдаёт один хостинговый ключ: запрос проходит их инфраструктуру и попадает к провайдеру из их списка. В октябре 2026 люди по-прежнему сливают эти две покупки в вопрос «у кого больше моделей в каталоге» и тащат скриншот free tier в продакшен. Длина каталога не отвечает на три проверки, которые реально важны: у кого upstream-ключ, где хранится промпт и кто принимает запрос, когда бесплатный лимит исчерпан.
Гайд для тех, кто подключает coding-агента, внутренний инструмент или прототип. Цифры ниже — по публичной документации, сверенной 28 октября 2026: гайд OmniRoute по бесплатному тарифу и wiki Auto-Combo, а также страница цен и FAQ OpenRouter. Лимиты провайдеров меняются. Перед тем как вписать число в заявку на закупку, снова откройте официальную страницу.
Почему одного API недостаточно для маршрутизации моделей
Старая схема: у каждого инструмента свой ключ. Редактор ходит в OpenAI, скрипт — в Gemini, ночной batch тихо переключается на того, кто на этой неделе дешевле. Ключи оказываются в keychain ноутбука, в секретах CI и в shell-профиле коллеги. Когда вендор отвечает 429, вы правите каждый клиент. Одну политику — нет.
Новая схема вставляет слой посередине. Клиенты знают один base URL и один ключ шлюза. Реальные ключи провайдеров, ретраи и список «кого звать, когда эта квота умерла» живут в этом слое. Спор не в том, какая модель умнее. Спор в том, кто эксплуатирует слой. Self-hosting — вы владеете процессом, логами и порядком fallback, но весь слой исчезает, когда машина засыпает. Хостинг — не нужно смотреть за процессом, но промпты и метаданные usage идут через чужую сеть, а на бесплатном плане переключателей меньше.
OmniRoute против OpenRouter — это не ещё один спор Claude против GPT. Оба могут отправить запрос в более чем одно семейство моделей. Разделение в другом: вы держите upstream-контракты и пишете маршрут сами или платите хосту, который держит маршрут и счёт.
Это видно в первый раз, когда coding-агент работает шесть часов подряд. Локальный шлюз на ноутбуке кажется бесплатным, пока в полночь крышка не закроется и каждый незавершённый tool call не падает с connection reset. Хостинговый шлюз кажется дорогим, пока вы не сложите часы на перезапуск своего процесса, ротацию ключей и объяснение коллеге, почему вчерашний base URL больше не отвечает. Считайте оператора, а не только токены.
Четыре слоя: AI-шлюз, маршрутизация моделей, агрегация API, бесплатная квота
Сложите эти четыре фразы в один слоган — и выбор поедет не туда. Они отвечают на разные вопросы. Отсутствующий ответ трактуйте как отсутствующее требование, а не как деталь «допишем после релиза».
AI-шлюз
Шлюз — это дверь: аутентификация, одна форма chat-completions, логи и таймауты. Дверь OpenAI-совместимого API у OmniRoute по умолчанию — http://localhost:20128/v1 на машине, где он запущен. У OpenRouter дверь на их хостах. Клиент меняет их base URL и выданный ими ключ. Снаружи дверь похожа. Машина за дверью — не ваша.
Маршрутизация моделей
Routing решает, в какой аккаунт и какую модель уйдёт этот вызов и кого пробовать после сбоя. В дашборде OmniRoute на уровне аккаунта обычно доступны стратегии Fill First, Round Robin, P2C, Random, Least Used и Cost Optimized. В combo и с префиксом auto также есть priority, weighted, least-used, cost-optimized, lkgp (держаться последнего успешного провайдера) и context-optimized. Без сохранённого combo можно вызывать auto, auto/coding, auto/fast, auto/cheap или auto/offline. Auto-routing OpenRouter, preferred providers, budgets и prompt caching в документации отнесены к платным планам. В публичной таблице цен в колонке Free у этих пунктов стоит No.
Агрегация API
Агрегация — один клиентский протокол перед множеством провайдеров. OmniRoute агрегирует подключения, которые вы настроили. Официальный гайд по бесплатному тарифу формулирует прямо: проект не выдаёт рекламируемый агрегированный бюджет токенов; регистрация у провайдера, где она нужна, остаётся на вас; на свежей установке может быть ноль подходящих keyless-целей. OpenRouter агрегирует модели из своего списка. В колонке Standard на странице цен указано 500+ моделей и 80+ провайдеров. Отдельный ключ у каждого из них не нужен, пока вы не переключитесь на BYOK.
Бесплатная квота
«Бесплатно» — это две разные книги учёта. Бесплатное ПО — не бесплатный inference. OmniRoute под лицензией MIT: процесс шлюза не биллит вас за токен. Вы платите за машину и за то, что upstream возьмёт после своего allowance. Бесплатный план OpenRouter — потолок аккаунта: 25+ бесплатных моделей, 4 бесплатных провайдера, 50 запросов в день, activity logs включены, auto-routing выключен. В FAQ сказано, что после покупки минимум 10 credits бесплатные модели дают 1 000 запросов в день. Есть также openrouter/free, который выбирает среди бесплатных моделей. Это не то же самое, что auto/cheap у OmniRoute. Одно — хостинговый бесплатный пул. Другое — набор подключений, которые вы прикрутили сами.
Одна таблица: вход, исполнение и контекст
Не длина списка моделей — водораздел. Кто держит ключ, кто гасит сбой и в чьей книге учёта записана бесплатная квота — вот водораздел. В таблице «исполнение» — как запрос форвардится и ретраится. Это не значит, что шлюз правит ваш репозиторий.
| Инструмент | Вход | Исполнение | Контекст | Кому подходит |
|---|---|---|---|---|
| OmniRoute | Процесс, который вы запускаете. Локально по умолчанию localhost:20128/v1 или тот же порт на всегда включённой машине |
Fallback по добавленным подключениям: Fill First, round robin, P2C, lowest cost или auto/coding и auto/cheap |
Ключи провайдеров, состояние маршрута и логи остаются на вашей машине. Промпты по умолчанию не идут через хостинговый шлюз | Тем, кто готов эксплуатировать шлюз и сложить свои free tier или свои платные ключи за одним клиентским URL |
| OpenRouter | Хостинговый base URL и выданный ими ключ. От Free до Enterprise — та же форма «двери» | Auto-routing и preferred providers с платных планов. Free — 50 запросов в день без auto-routing или 1 000 в день на бесплатных моделях после минимум 10 credits | Запросы и метаданные usage проходят через OpenRouter. Standard добавляет prompt caching и budgets. Маршрутизация EU/US in-region — на Business | Командам, которые не хотят смотреть за процессом и принимают platform fee 5,5% на пополнение credits плюс list price провайдера |
У OpenRouter Standard platform fee — 5,5%. У Business — 8%. BYOK снимает platform fee до $25 000 list-price inference в месяц, дальше — 5%. Эта комиссия за «трубу», а не скидка на токены модели. У OmniRoute аналогичной platform fee нет, но остаются машина, бэкапы, сертификаты и время на порядок fallback. Как оценить размер машины — в материале о стоимости облачного размещения OmniRoute. Почему цифра на дашборде — не личный безлимит — в гайде по бесплатной квоте, моделям и лимитам.
Полезно разнести три счёта, которые люди по ошибке складывают в одну строку. Первый — list price провайдера модели, который OpenRouter заявляет как pass-through. Второй — процент платформы при покупке credits; ноль только в рамках BYOK-allowance, описанного выше. Третий — компьютер, который должен быть доступен: электричество и сервер в шкафу или удалённый Mac, за который вы уже платите. OmniRoute убирает второй счёт и оставляет первый и третий. OpenRouter убирает большую часть третьего, пока вам всё равно нужна отдельная машина под Xcode, подпись или репозиторий, который агенту можно менять. Покупка шлюза эту машину не отменяет.
Как выбрать: спросите, в чьей книге лежит free tier
Если вы один и делаете прототип — берите OmniRoute, подключите минимум три upstream, на которые вы лично зарегистрировались, и вызывайте auto/cheap или auto/offline. В собственной заметке по настройке проекта — один бесплатный провайдер, один с низкой задержкой и один платный или trial с более высоким качеством. Установить ПО и ничего не подключить — первый чат может упасть. Гайд по free tier считает это ожидаемым, а не сломанной установкой.
Если нужно, чтобы команда попробовала модели по одной ссылке — OpenRouter Free и примите 50 запросов в день, отсутствие auto-routing и переключателя budget. Этот план — дымовой тест. Плохой кандидат для ночного batch. Когда хост должен выбирать модель и держать budget — Standard или BYOK в пределах allowance.
Если запрос может коснуться данных клиентов — не останавливайте выбор на free plan. В колонке Free у OpenRouter нет data-policy routing; in-region routing — функция Business. OmniRoute может держать payload на хосте под вашим контролем — и тогда регион этого хоста, кто может залогиниться и сколько дней живут логи, становятся вашими вопросами. На обоих путях сначала нужна записанная зона приземления данных, потом имя модели.
Есть четвёртый случай, который выглядит как выбор инструмента, а на деле — календарь. Хакатон на выходных может жить на OpenRouter Free: пятидесяти запросов хватает, чтобы доказать промпт, и никто не ждёт, что демо доживёт до понедельника. Подрядчик, который выставляет клиенту счёт за агента, который открывает pull request, на том же лимите не выедет: один послеобеденный цикл ретраев его съест. Запишите дату рядом с названием плана. «Free» без даты — не план.
| Сценарий | Вход | Исполнение | Контекст | Кому подходит |
|---|---|---|---|---|
| Вечерний соло-прототип | Self-hosted OmniRoute | Когда один free tier опустел — следующее добавленное подключение | Логи на вашем диске | Тот, кто готов смотреть за процессом |
| Общая ссылка «попробуй раз» | OpenRouter Free | 50 запросов в день, без auto-routing | Usage на их странице activity | Группа, которая ещё не выбрала провайдеров |
| Трафик к клиентам | OpenRouter Standard или BYOK, либо OmniRoute только перед платными ключами | Fallback, budget и дежурный | Регион и retention прописаны в договоре | Команда, которая не может считать HTTP 429 фичей |
| Coding-агент на всю ночь | Шлюз на машине без сна; клиенты держат один base URL | Именованная модель на основном пути; auto или платный auto-routing только после сбоя |
Репозиторий и ключи не смешаны с логами шлюза на ноутбуке | Те, у кого уже есть удалённый Mac или CI-узел |
Стеки, которые остаются понятными
Стек один, низкий ежемесячный cash на одного человека: OmniRoute, три upstream-аккаунта, которые вы реально открыли, model id auto/cheap. Перед закрытием крышки ноутбука перенесите процесс на Mac, который не засыпает, и смените base URL на этот хост. Не продолжайте ходить на localhost. Для кода переключайтесь на auto/coding. Дешёвый маршрут — не маршрут качества.
Стек два, один ключ на команду: OpenRouter Standard, все клиенты на их base URL. Free plan оставьте для дымового аккаунта нового коллеги. На продакшен-ключе включите budgets. Если upstream-ключ должен остаться в вашем аккаунте у провайдера — BYOK и помните: platform fee остаётся нулём только до $25 000 list-price inference в месяц.
Стек три, агент правит репозиторий: шлюз решает только «дверь» к модели. Исполнение вынесите на отдельный macOS-узел и запустите что-то вроде удалённой автоматизации OpenClaw, чтобы агент и шлюз не делили один интерактивный компьютер из-за сна и портов. Маршрутизация моделей и CI-узел — два слоя. Не покупайте их одной строкой «AI-сервер».
Стек четыре команды изобретают случайно: OmniRoute на ноутбуке, OpenRouter как тайный fallback в том же клиенте и третий ключ, захардкоженный в скрипте. Разберите такой стек семью шагами ниже. Два автоматических маршрутизатора, вызывающих друг друга, не дают надёжность. Они дают запрос, который падает дважды с двумя разными model id в логе, и никто не скажет, какая политика должна была победить.
Ошибки, которые переживают первое демо
- Считать число провайдеров на дашборде своей квотой. На странице сравнения OmniRoute публикует большое число провайдеров — это заявление каталога проекта. В том же сезоне гайд по free tier говорит, что агрегированный бюджет вам не выдают и что подключение, которое вы не добавили, не ответит.
- Думать, что OpenRouter Free значит «выбери самую дешёвую модель». Auto-routing в колонке Free — No.
openrouter/freeвыбирает только среди бесплатных моделей и всё равно сидит внутри 50 запросов в день или 1 000 после покупки минимум 10 credits. - Гнать весь продакшен-трафик в
auto. Автоматическая маршрутизация — для fallback и экспериментов. Путь, который вы продаёте клиенту, должен закрепить model id и только потом разрешить автоматическую политику после сбоя этого id. - Держать шлюз на засыпающем ноутбуке и винить агента в обрыве в полночь. Процесс «двери» и машина исполнения оба нуждаются в политике перезапуска. Закрытая крышка — это outage.
- Складывать platform fee и pass-through цену в одно число. OpenRouter пропускает list price провайдера и берёт platform fee с покупки credits. Self-hosting убирает эту комиссию и заменяет её вашим on-call временем.
Семь шагов перед стандартизацией
- Напишите одно предложение: кому принадлежит upstream-ключ и какая машина или регион вендора хранит промпт. Если не можете написать — к продукту выбирать рано.
- Оставьте одного клиента. Уберите второй base URL из Cursor, скрипта или Claude Code, чтобы два маршрутизатора не сложились.
- В OmniRoute подключите минимум три аккаунта, которыми вы владеете, а не скриншот каталога. В OpenRouter проверьте, аккаунт ещё Free или уже с credits.
- Отправьте один короткий промпт дважды: в именованную модель и в
auto/cheapилиopenrouter/free. Зафиксируйте model id, код ответа и latency. - Отключите или исчерпайте первого провайдера и убедитесь, что отвечает следующий, а не клиент с «unknown model».
- Ведите семь дней: число запросов, HTTP 429, кто может экспортировать логи и опустошает ли weekend batch бесплатный allowance.
- Только если пик из шага 6 приемлем — сделайте путь командным default и только тогда поставьте процесс на машину без сна.
# OmniRoute: ваша машина base_url = http://<your-host>:20128/v1 model = auto/cheap # OpenRouter: хостинговая дверь, для smoke test — openrouter/free model = openrouter/free
Держите заметку рядом с настройкой. Base URL без владельца через месяц станет tribal knowledge, и следующий человек добавит третий endpoint «только для демо». Семь шагов завершены только когда предложение из шага 1 на седьмой день всё ещё верно.
FAQ
OmniRoute и OpenRouter — продукты одного типа?
Протокол клиента похож. То, что вы покупаете — нет. Одно — MIT-шлюз, который вы запускаете. Другое — хостинговый каталог. Одна колонка «число моделей» прячет эксплуатацию и место, куда ложатся данные.
На чьём аккаунте лежит бесплатная квота?
OmniRoute списывает квоту с каждого подключённого upstream. OpenRouter Free списывает с вашего аккаунта OpenRouter: 50 запросов в день или 1 000 в день на бесплатных моделях после покупки минимум 10 credits. Ни одно из чисел — не безлимитный пул.
Можно ли запускать оба?
Да, с одним основным путём. Частое разделение: продакшен на платном OpenRouter или на своих платных ключах, OmniRoute только для внутренних экспериментов. Не давайте двум автоматическим маршрутизаторам падать друг в друга. Один сбой тогда превращается в два неизвестных model id.
Достаточно ли нового base URL для coding-агента?
Нет. Шлюз не хранит репозиторий и не держит машину бодрой. Когда задаче нужен настоящий Mac — ставьте задачу на удалённый Mac, а не на ноутбук разработчика, который уснёт.
Длиннее каталог — дешевле месяц?
Нет. Длинный список меняет только количество имён, которые можно набрать. Он не меняет лимит 50 бесплатных запросов, комиссию 5,5% на пополнение и тот факт, что у несвязанной установки OmniRoute нечего маршрутизировать. Стоимость следует за книгой учёта из первого раздела, измеренной по недельному логу, а не за высотой маркетинговой таблицы.
Что делать с выбором
Если нужен нулевой subscription на шлюз и вы готовы смотреть за процессом и условиями upstream — выбирайте OmniRoute и трактуйте free quota как «аккаунты, которые вы подключили», а не как сумму каталога. Если нужен один ключ, хостинговый uptime и platform fee, который можно внести в таблицу — OpenRouter, с памятью о том, что free plan не включает auto-routing. На продакшен-пути закрепите model id. Автоматическую политику оставьте для случая сбоя. Поставьте процесс «двери» на машину без сна, прежде чем просить агента работать всю ночь.
Покупайте шлюз и машину исполнения отдельными решениями. Когда смотрите цены на Mac mini, считайте always-on шлюз и build-узел двумя обязанностями, даже если они делят один корпус. Подписка на модель не заменяет машину. Перед заказом пробегите заметки про удалённый стол и SSH в справочном центре, затем решите, нужна ли аренда Mac mini только чтобы этот процесс шлюза оставался доступным.
Держите шлюз на удалённом Mac, который не засыпает
Локальный процесс OmniRoute засыпает вместе с ноутбуком. Always-on Mac может владеть этой OpenAI-совместимой «дверью», пока репозиторий и задачи подписи живут отдельно.
Проверьте регион и цену, прежде чем направить base URL. Посмотреть узлы в аренду