Codex × NormaHub
Codex CLI с моделями из России
Codex CLI умеет ходить через кастомный провайдер — достаточно описать NormaHub в config.toml. Получаете терминального кодинг-агента из России: один ключ, оплата рублями, model ID из каталога — без VPN и зарубежной карты.
Для кого: разработчики, использующие Codex CLI и желающие гонять его на моделях из России
Создать API keyБыстрый старт
От ключа до первого ответа
- 01
Создайте отдельный ключ в личном кабинете NormaHub, пополните баланс рублями и задайте ключу лимит трат.
- 02
Опишите провайдера normahub в config.toml с base_url https://api.normahub.cc/v1 и укажите MODEL_ID из каталога.
- 03
Перезапустите Codex, выберите провайдера NormaHub и отправьте тестовый запрос — списание сверьте в истории кабинета.
Рабочий шаблон
Скопируйте основу и замените модель
Используйте только идентификатор из актуального каталога. Ключ храните в переменной окружения.
model_provider = "normahub"
[model_providers.normahub]
name = "NormaHub"
base_url = "https://api.normahub.cc/v1"
wire_api = "responses"
experimental_bearer_token = "ваш_api_ключ"Детали решения
Как это устроено
Зачем Codex свой провайдер
Codex CLI из коробки привязан к экосистеме своего вендора с зарубежной оплатой, что из России превращается в квест с картами и регионом. Кастомный провайдер решает вопрос в лоб: секция model_providers в config.toml перенаправляет запросы на NormaHub, где один рублёвый баланс открывает GPT-линейку и другие модели каталога /models. Полный конфиг с каталогом моделей и скрипт автоустановки разобраны в гайде /guides/codex — от голого терминала до рабочего агента за один вечер.
Сколько стоит сессия агента
Кодинг-агент в Codex работает итерациями: читает файлы, правит, перезапускает — и каждая итерация несёт контекст проекта в запрос, поэтому длинные сессии стоят заметно. Держите сильную модель для архитектуры и сложного рефакторинга, а мелкие правки отдавайте дешёвой быстрой из каталога /models. Месячный бюджет под вашу интенсивность считайте по методике /guides/token-cost, а лимит трат на ключе защитит от ушедшего в цикл ночного агента.
Нюансы: каталог, токен и ошибки
Рядом с провайдером Codex ждёт каталог моделей model_catalog_json — сверяйте slug в нём с точным model ID из каталога /models, иначе получите ошибку модели. Токен храните в переменной окружения, а не текстом в config.toml: конфиг часто лежит в синхронизируемой домашней директории. Типовые коды: 401 — неверный токен, 402 — пуст баланс или исчерпан лимит, 403 — модель недоступна ключу. Полная таблица — в /guides/errors.
Оплата и контроль расходов
Запросы оплачиваются с предварительно пополненного баланса по актуальным ставкам выбранной модели. Минимум и комиссия показываются перед оплатой в кабинете; лимит расходов задаётся для API-ключа.
Ограничения доступности
Возможности зависят от модели и внешнего маршрута. При недоступности provider запрос может завершиться ошибкой; проверяйте каталог, статус и документацию перед production.
Частые вопросы
Как добавить провайдера NormaHub в Codex?
Опишите секцию model_providers.normahub в config.toml с base_url https://api.normahub.cc/v1 и wire_api responses, укажите model_provider и MODEL_ID из каталога /models. Полный пример с каталогом — в гайде /guides/codex.
Где хранить ключ: в config.toml или в env?
Только в переменной окружения: подставляйте её вместо текстового токена. Config.toml часто синхронизируется между машинами, вписанный туда ключ утекает вместе с дотфайлами.
Сколько стоит сессия в Codex?
Зависит от модели и длины контекста: агент тащит файлы и историю итераций, сложные задачи стоят заметно. Ставки — в каталоге /models, методика подсчёта — в /guides/token-cost, страховка — лимит трат на ключе.
Почему модель не отвечает или ошибка 403?
403 — модель недоступна вашему ключу, сверьте slug с каталогом /models побуквенно. Молчаливый отказ часто означает рассинхрон model_catalog_json и провайдера — сверьтесь с гайдом /guides/codex, остальные коды — в /guides/errors.
Нужны ли VPN и зарубежная карта?
Нет. Endpoint доступен из России напрямую, пополнение — рублями с баланса кабинета, ключ заводится бесплатно. Платите только за фактические запросы агента.