pimenov.ai
Кейс / Модельные маршруты Codex

Как Codex получил новые модели без второй подписки

Когда задач стало больше, лимиты ChatGPT Pro начали заканчиваться регулярно. Следующим очевидным шагом выглядела вторая подписка за $200 в месяц — или перенос части работы в другие клиенты и потеря единого контекста.

Вместо этого на MacBook и Mac mini появился локальный Codex Router, а подписка OpenCode Go добавила DeepSeek, Kimi, GLM и другие модели прямо в каталог Codex. Проекты, навыки, MCP и основной маршрут OpenAI остались на месте; переключается только модель для конкретной ограниченной задачи.

Стоимость маршрута

$10 / месяц

OpenCode Go стоил $5 в первый месяц и $10 далее вместо второй подписки ChatGPT Pro за $200.

Каталог Codex

20 маршрутов

После настройки в выборе моделей появились DeepSeek, Kimi, GLM, Qwen, MiniMax и другие варианты.

Независимый контур

2 машины

MacBook и Mac mini получили отдельные локальные Router-инстансы без копирования ключей между ними.

Каталог моделей Codex с маршрутами OpenAI, DeepSeek, Kimi, GLM, Qwen и других поставщиков

Архитектура

Router стал локальным переходником, а не новым рабочим местом

Codex продолжает держать проекты, инструкции, MCP, права и историю работы. Запрос уходит на локальный адрес Router, преобразуется под выбранного поставщика и возвращается в тот же интерфейс. На каждой машине работает собственный экземпляр, слушающий только 127.0.0.1.

Контекст остаётся в Codex

Для внешней модели не нужен отдельный клиент: меняется маршрут запроса, а не рабочая среда и структура проекта.

Машины не зависят друг от друга

MacBook продолжает работать при выключенном Mac mini, потому что общего удалённого Router-сервера между ними нет.

Ключи остаются локальными

Каждый поставщик настраивается через защищённый ввод на своей машине; секреты не копируются между компьютерами и не попадают в проект.

Прямой API отделён от подписки

opencode-go/deepseek-v4-flash оплачивается через OpenCode Go, а deepseek/deepseek-v4-flash — через отдельный DeepSeek API. Похожие названия не означают один счёт.

Политика делегирования

Дешёвая модель получает задачу, но не получает весь проект

Автоматическое правило «отдавать всё самой дешёвой модели» не включали. Маршруты закрепили за типами работы, а архитектуру, секреты, production и финальное решение оставили штатным моделям OpenAI и основному Codex.

DeepSeek Flash

Большие документы, извлечение фактов, классификация и черновая суммаризация без внешних действий.

DeepSeek Pro и Kimi

Ограниченное чтение кода, сравнение вариантов и разбор тестов без права записи в рабочую папку.

Штатные модели OpenAI

Архитектура, безопасность, доступы, секреты, боевая среда, внешние изменения и финальная интеграция.

Локальный Qwen

Отдельный следующий этап: сначала подключить адрес и пройти health/read-only smoke, только затем добавлять маршрут в работу.

MacBook и Mac mini с отдельными локальными маршрутизаторами моделей

Установка

Первую машину подключили как контролируемое изменение

Установка началась с одного поставщика и проверки без платного запроса. Обычный вход OpenAI и настройки Codex сохранили, ключ ввели только в скрытое поле Router, а затем проверили doctor, status, список поставщиков и локальный health endpoint.

  1. Проверили Node.js, Python или uv, Git и существующую установку Codex.
  2. Подключили одного поставщика и сохранили ключ только в локальном хранилище Router.
  3. Запустили doctor, status, providers и health без платного inference smoke.
  4. Полностью перезапустили Codex и проверили новый каталог моделей в отдельной задаче.

Обновление

Mac mini стал canary, и только потом обновлялся MacBook

Для двух машин появился последовательный сценарий. Сначала предварительная проверка без изменений подтверждает чистоту checkout, ветку, doctor, health и доступный commit. Затем обновляется Mac mini; если повторная проверка зелёная, тот же шаг разрешается на MacBook.

Проверка до изменения

Режим check-only ничего не применяет и останавливает обновление при несовпадении состояния машин.

Одна пробная машина

Ошибка на Mac mini не затрагивает основной MacBook и не превращается в одновременный отказ двух рабочих мест.

Проверка после обновления

Новый commit принимается только после зелёных doctor и health; иначе запускается штатный rollback Router.

Одинаковый итог

В конце обе машины должны показывать один commit, рабочую службу и доступный локальный маршрут.

Последовательное обновление двух машин с проверкой и возможностью отката

Поломка

Сбой оказался конфликтом владельцев состояния, а не поломкой моделей

При переходе с пробного checkout на стабильный Codex потерял поток к локальному Router. Read-only проверка показала foreign_state_owner: новая служба запускалась раньше, чем установщик успевал передать ей владение состоянием. Защита вернула обычную конфигурацию Codex, сняла автозапуск и закрыла локальные порты.

Данные не пострадали

Проекты, вход, ключи и рабочие файлы сохранились: откат затронул только локальный слой Router.

Причину нашли до повторной установки

Ошибка была в порядке передачи состояния между checkout, а не в LiteLLM, DeepSeek, OpenCode Go или биллинге.

Владельца назначили заранее

Стабильную рабочую копию сделали владельцем состояния до повторного запуска штатной установки.

Результат проверили целиком

На обеих машинах остался Router 0.4.0-beta.2, 20 маршрутов, зелёный doctor и только локальные внешние порты.

Аварийный сценарий

Явный bypass оказался безопаснее тихого переключения поставщика

Если Router мешает открыть Codex, его можно отключить штатной командой, полностью перезапустить приложение и вернуться к прямому маршруту OpenAI. Внешние модели временно исчезают, но проекты, профиль ChatGPT, MCP и ключи поставщиков остаются на месте.

Отключение видно человеку

Рабочий процесс не меняет поставщика и счёт незаметно посреди задачи: возврат к OpenAI выполняется осознанно.

Восстановление тоже проверяется

После enable локальный health endpoint должен снова ответить до того, как внешние модели вернутся в работу.

Команды лежат под рукой

Для Finder сохранены status, emergency-off и restore — аварийный путь не нужно вспоминать в момент сбоя.

Отказ остаётся локальным

Проблема Router на одной машине не блокирует вторую и не лишает доступа к основным моделям Codex.

Результат

Моделей стало больше, а точка контроля осталась одна

На каждой машине остался привычный Codex Desktop с теми же проектами и правилами. Дополнительные модели стали ограниченными исполнителями для подходящих задач, но не получили автоматического права выбирать поставщика, менять рабочие файлы или принимать финальные решения.

Один интерфейс

Не нужно переносить проекты и рабочий контекст между отдельными клиентами ради другой модели.

Разные счета не смешиваются

Прямые API и подписочные маршруты названы и закреплены явно, поэтому случайный двойной биллинг проще заметить.

Обновление обратимо

Canary-порядок, проверки до и после изменения и штатный rollback снижают риск одновременного отказа двух машин.

Основной Codex не исчезает

Даже при недоступном Router можно отключить локальный слой и продолжить работу через штатный маршрут OpenAI.

Источник

Установка, поломка и аварийный маршрут подробно разобраны в статье

В исходном материале есть различие между API и подпиской, команды установки и проверки, схема обновления двух машин, разбор foreign_state_owner, явный bypass и правила безопасного делегирования задач внешним моделям.

Разборы

Близкие разборы про Codex, модели и рабочие контуры

Все разборы