Разделы базы знаний ▾

Навигация

▸ Начните здесь По ролям

Категории

Инструменты 37
Глоссарий 12

Инструменты

Codex CLI: свой ключ вместо подписки

Codex CLI — агентный помощник OpenAI, живущий прямо в терминале: он читает файлы проекта, запускает команды в песочнице, правит код и объясняет, что сделал. Штатно он ходит в модели OpenAI по подписке ChatGPT, но провайдера в нём можно заменить своим — и тогда те же самые сценарии считает сеть Gonka.

Один нюанс делает Codex особенным среди агентных инструментов: он говорит не на привычном Chat Completions, а на Responses API — новом протоколе OpenAI. Именно поэтому раньше подключить его к стороннему шлюзу было нельзя. JoinGonka Gateway принимает Responses с 22 августа 2026, и всё описанное ниже проверено живым прогоном, а не пересказом документации.

Что такое Codex CLI и чем он отличается от чата

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

Два режима работы. Интерактивный — codex без аргументов, диалог в терминале с показом каждого шага. Неинтерактивный — codex exec «задача», разовый прогон до результата: удобно в скриптах и CI.

Безопасность встроена: по умолчанию агент работает в песочнице и спрашивает подтверждение перед изменениями. Уровень контроля задаётся в конфигурации — от «спрашивать всё» до полностью автономного прогона с правом записи в рабочий каталог.

Ещё одна особенность — состояние диалога. Codex не просит сервер ничего запоминать: он держит всю ленту у себя и отправляет её целиком с каждым ходом. Для вас это значит, что переписка не оседает на стороне провайдера модели, а смена endpoint не ломает начатую сессию.

Отличие от Claude Code и других терминальных агентов — именно протокол. Codex общается с моделью через Responses API, где переписка описывается не плоским списком сообщений, а лентой элементов: текст, вызов инструмента, результат вызова, блок рассуждений. Инструменту это даёт более строгую модель диалога, а вам — необходимость иметь endpoint, который этот протокол понимает.

Подключение: одна правка config.toml

Codex хранит настройки в ~/.codex/config.toml. Свой провайдер описывается блоком [model_providers.*], и ключевое поле здесь — wire_api: без него Codex попробует говорить на Chat Completions и не соберёт агентный цикл.

# ~/.codex/config.toml
model_provider = "joingonka"
model = "deepseek-ai/DeepSeek-V4-Flash-0731"

[model_providers.joingonka]
name = "JoinGonka Gateway"
base_url = "https://gate.joingonka.ai/v1"
env_key = "JOINGONKA_API_KEY"
wire_api = "responses"

Ключ в файл не пишется: env_key называет переменную окружения, из которой Codex его возьмёт. Имя переменной своё, не OPENAI_API_KEY — так настройка не перехватывает ваши другие инструменты, работающие с OpenAI.

export JOINGONKA_API_KEY=jg-ваш-ключ

Поле model задаёт модель по умолчанию, а model_provider — какой из описанных блоков использовать. Оба переопределяются в момент запуска, так что один конфиг спокойно обслуживает несколько провайдеров: рабочий, экспериментальный и запасной.

Ключ выдаётся в личном кабинете после регистрации, там же видно баланс и расход. Если предпочитаете не трогать общий конфиг, тот же блок можно передать разово через -c: codex -c model_provider=joingonka …. А чтобы держать несколько независимых конфигураций, укажите каталог настроек переменной CODEX_HOME.

Проверка: что должно произойти

Самый быстрый способ убедиться, что связка работает, — разовый прогон:

codex exec "Ответь одной строкой: сколько будет 17*3?"

В шапке ответа Codex печатает, с кем он работает: model, provider: joingonka, режим песочницы и идентификатор сессии. Если там ваш провайдер и внизу пришёл ответ — соединение живое.

Дальше стоит проверить главное, ради чего Codex и ставят, — работу с файлами. Положите в каталог небольшой файл с очевидной ошибкой и попросите её найти:

codex exec "Прочитай calc.py и скажи одной фразой, есть ли ошибка."

Агент должен сам вызвать инструмент чтения, открыть файл и ответить по существу — с указанием строки. Если это произошло, полный агентный цикл (запрос → вызов инструмента → результат → ответ) через шлюз собирается корректно.

Если что-то пошло не так, диагноз обычно читается прямо из сообщения:

Что видноЧто это значитЧто сделать
401 Unauthorized: Invalid API keyCodex не нашёл ключ или взял не тотПроверьте, что переменная из env_key действительно экспортирована в текущей оболочке и её имя совпадает с конфигом
404 на /responsesВ base_url потерялся суффиксАдрес должен заканчиваться на /v1 — Codex сам дописывает /responses
Модель отвечает, но инструменты не вызываютсяНе задан wire_api, диалог идёт по старому протоколуДобавьте wire_api = \"responses\" в блок провайдера
Reconnecting… 1/5Codex повторяет запрос самШтатное поведение при разовой сетевой ошибке; если повторы исчерпались, смотрите текст ошибки под ними
Предупреждение про bubblewrapВ системе нет пакета изоляцииНе мешает работе: Codex возьмёт встроенную копию. Для аккуратности поставьте bubblewrap менеджером пакетов

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

Какую модель выбрать

Все модели сети доступны по одной цене, поэтому выбор — про поведение, а не про бюджет. Ниже результат живого прогона одной и той же задачи (чтение файла и поиск ошибки в нём) через Codex на каждой из моделей.

МодельИдентификаторКонтекстКак ведёт себя в Codex
DeepSeek V4 Flashdeepseek-ai/DeepSeek-V4-Flash-0731380KОтвет чистый и по делу, с указанием файла и строки. Самый длинный контекст в сети и потолок ответа 32768 токенов — запас для больших репозиториев
Kimi K2.6moonshotai/Kimi-K2.6200KСамая лаконичная формулировка из трёх, инструменты вызывает уверенно
MiniMax M2.7MiniMaxAI/MiniMax-M2.7200KЗадачу решает верно, но иногда показывает вслух ход рассуждений — в терминале это выглядит многословно

Рекомендация по умолчанию — DeepSeek V4 Flash: агентная работа быстро упирается в объём контекста, а 380K токенов дают возможность держать в голове много файлов сразу. Если хочется предельно коротких ответов — берите Kimi K2.6. Модель меняется одной строкой model в конфиге или флагом -c model=… без правки файла.

Актуальный список моделей сети всегда отдаёт GET https://gate.joingonka.ai/v1/models.

Сколько это стоит

Агентные инструменты расходуют токены иначе, чем чат: к каждой вашей фразе Codex добавляет системный промпт и описание всех инструментов, а затем ведёт многоходовый диалог с моделью. В живом прогоне простая задача «прочитай файл и найди ошибку» обошлась примерно в 18-20 тысяч токенов. Это нормальная плата за автономность, и именно поэтому цена за токен решает.

Через JoinGonka Gateway токены стоят $0.0047 за миллион на входе и $0.014 за миллион на выходе — цена одинакова для всех моделей сети и подставляется на этой странице из живого источника.

СценарийРасходЧерез Gateway
Разовая задача (прочитать файл, найти ошибку)~20K токеновдоли цента
День активной работы3-7M токеновоколо цента
Месяц активной разработки~150M токеновединицы центов

Для сравнения — как устроены платные варианты у самого Codex и у соседей по нише:

СпособМодель оплатыЧто ограничивает
Подписка ChatGPTфиксированная сумма в месяцквоты на число обращений и окна их обновления
Ключ OpenAI напрямуюза токены по прайсу вендорацена за миллион токенов на три порядка выше
JoinGonka Gatewayза токены, балансрасход виден в кабинете, квот на число запросов нет

Оплата идёт за фактический расход, без месячной подписки и без квот на число запросов: нет пятичасовых окон, лимита «промптов» и множителей в пиковые часы. Баланс пополняется криптовалютой, остаток и расход по дням видны в личном кабинете. Подробный разбор экономики — в статье про самый дешёвый API.

Что учесть в работе

Историю диалога держит сам Codex. Он отправляет её целиком с каждым запросом и не просит сервер ничего запоминать — а мы переписки и не храним. Ваш код и промпты не остаются на шлюзе после ответа.

Веб-поиск работает. Codex объявляет инструмент поиска в каждом запросе, и шлюз его принимает: поиск выполняется на нашей стороне, результаты подмешиваются в ответ модели.

Инструменты — свои, не облачные. Codex исполняет команды и читает файлы локально, у вас на машине, поэтому доступ к проекту не зависит от провайдера модели.

Песочница. На Linux Codex использует bubblewrap для изоляции запускаемых команд. Если его нет в системе, Codex предупредит и возьмёт встроенную копию — на работу это не влияет, но пакет удобнее поставить штатным менеджером.

Если нужна работа с картинками — скриншот интерфейса, схема на фото — используйте для таких задач инструмент с моделью, умеющей зрение: в сети Gonka модели текстовые. Для кода, команд и файлов это ограничением не является.

Другие терминальные агенты, если Codex не подошёл: быстрый старт по API показывает, как подключить любой совместимый инструмент за пару минут.

Codex CLI — единственный из массовых агентов, который говорит на Responses API, и именно поэтому он долго оставался привязан к подписке OpenAI. Замена провайдера занимает пять строк в config.toml: адрес шлюза, имя переменной с ключом и wire_api = "responses". После этого те же автономные прогоны по вашему коду считает сеть Gonka по цене за фактические токены, без квот и пятичасовых окон. Живой прогон подтвердил полный агентный цикл на всех трёх моделях сети; по умолчанию стоит брать DeepSeek V4 Flash — у него самый длинный контекст.

Хотите узнать больше?

Изучите другие разделы или начните зарабатывать GNK прямо сейчас.

Получить ключ и бесплатные токены →