Codex CLI со сторонним API: руководство по настройке
По состоянию на 2026-10-07 Codex CLI подключают к стороннему или собственному API так: в ~/.codex/config.toml добавляют свою таблицу в разделе model_providers с полями base_url, wire_api и env_key (имя переменной окружения, в которой лежит ключ), а верхнеуровневый model_provider указывает на неё; в официальном справочнике по конфигурации сказано, что единственное поддерживаемое значение wire_api — responses. Для QCode base_url — https://api.qcode.cc/openai, env_key — имя переменной окружения, которую вы сами выбираете для ключа QCode. На этой странице разобраны все параметры, частые ошибки и выбор модели.
Обновлено 2026-10-07
Четыре значения, которые важно не перепутать
Единственное значение wire_api
Официальный справочник пишет, что responses — единственное поддерживаемое значение, и оно же действует по умолчанию, если поле не указано. В документации QCode wire_api тоже равен responses, что соответствует пути /openai/v1/responses.
переменная окружения с ключом
В env_key пишут имя переменной окружения, а не сам ключ; официальная формулировка — переменная окружения, через которую передаётся API-ключ провайдера. Ключи QCode начинаются с cr_. Имя переменной можно выбрать самому; в примере из документации QCode используется CRS_OAI_KEY.
Чем заканчивается base_url у QCode
В документации QCode сказано, что base_url для Codex должен быть именно https://api.qcode.cc/openai; Codex работает по протоколу Responses, поэтому запросы идут на /openai/v1/responses.
Последняя версия CLI в официальном журнале
В официальном журнале изменений Codex CLI 0.160.1 вышел 2026-10-05; начиная с 0.159.1 (2026-09-29) встроенный каталог моделей использует GPT-6.1 Sol как модель по умолчанию.
Как Codex выбирает эндпоинт
По состоянию на 2026-10-07 Codex CLI решает, куда отправлять запросы, по ключу model_provider в config.toml: его значение — id таблицы в разделе model_providers, а если ключ не задан, используется openai. В официальной документации сказано, что провайдер модели определяет, как Codex подключается к модели: базовый URL, wire API, аутентификация и необязательные HTTP-заголовки; собственные провайдеры не могут занимать зарезервированные встроенные id openai, ollama и lmstudio. Пользовательская конфигурация лежит в ~/.codex/config.toml (в Windows — в %USERPROFILE%\.codex\); файл .codex/config.toml внутри проекта загружается только после того, как вы доверите проекту, а model_provider и model_providers на этом уровне игнорируются. В документации QCode провайдер называется crs и работает по протоколу OpenAI Responses; один и тот же ключ подходит для api.qcode.cc, us.qcode.cc и asia.qcode.cc.
Свежие релизы, затрагивающие провайдеров
По официальному журналу изменений: с 2026-09-22 GPT-6 Sol и GPT-6 Luna начали постепенно появляться в Codex, в CLI их выбирают через /model или codex --model gpt-6-sol; 2026-09-29 Codex CLI 0.159.1 сделал GPT-6.1 Sol моделью по умолчанию во встроенном каталоге; версия 0.160.0 от 2026-10-01 уточнила в документации, как env_key указывает на переменную окружения с API-ключом, перестала подмешивать неподдерживаемые встроенные модели в явно заданные каталоги провайдера, а терминальный интерфейс теперь сохраняет серверные настройки провайдера; 2026-10-05 вышла 0.160.1. Кроме того, по официальному объявлению от 2026-09-14, 2026-10-14 GPT-5.5 выводится из ChatGPT, ChatGPT Work и Codex (на OpenAI API это не распространяется), и OpenAI просит обновить сохранённые настройки моделей, собственных агентов и скрипты, где всё ещё выбрана gpt-5.5. Локальную версию проверяйте командой codex --version.
Хронология
GPT-6 Sol и GPT-6 Luna начинают постепенно появляться в Codex; OpenAI советует Sol для сложного программирования и агентных сценариев, а в CLI модель переключают через /model или codex --model gpt-6-sol.
GPT-6.1 Sol появляется в Codex; в тот же день Codex CLI 0.159.1 делает её моделью по умолчанию во встроенном каталоге. В документации QCode gpt-6.1-sol указана как обновлённая GPT-6 Sol.
Выходит Codex CLI 0.160.1 — самая новая версия CLI в официальном журнале на момент проверки 2026-10-07; перед ней, 2026-10-01, версия 0.160.0 уточнила описание env_key.
Подтверждено vs не проверено
Подтверждено (дословно по официальным страницам и документации QCode)
Официальная документация Codex: model_provider по умолчанию — openai; openai, ollama и lmstudio — зарезервированные id, переопределить их нельзя; единственное поддерживаемое значение wire_api — responses, оно же по умолчанию; env_key — переменная окружения с API-ключом; requires_openai_auth по умолчанию false; прямой токен в experimental_bearer_token не рекомендуется; model и model_provider должны стоять до первой TOML-таблицы. Официальный журнал: с 0.159.1 GPT-6.1 Sol — модель по умолчанию во встроенном каталоге, 0.160.1 вышла 2026-10-05. Документация QCode: base_url — https://api.qcode.cc/openai, wire_api — responses, requires_openai_auth — true, env_key — CRS_OAI_KEY, ключи начинаются с cr_, а если заданы и auth.json, и переменная окружения, приоритет у auth.json.
Не проверено или не описано в документации
Четыре пункта не проверены, не стройте на них расчёты: во-первых, в примере QCode есть строка preferred_auth_method, но в официальном справочнике, загруженном для этой страницы 2026-10-07, такого параметра нет, и что он делает в текущих версиях, не проверено; во-вторых, в официальном справочнике есть также таблица auth с получением токена через команду, http_headers, supports_websockets и другое, документация QCode их не описывает, и эта страница не обещает, что они работают с QCode; в-третьих, не проверено, знают ли версии Codex до 0.159.1 имя gpt-6.1-sol, а официальный документ о шлюзах лишь советует без собственного каталога моделей сначала убедиться, что ваша версия Codex распознаёт модель; в-четвёртых, OpenAI заявляет, что GPT-6.1 Sol даёт производительность, близкую к Astra, при меньшей стоимости, чем у Astra, — это заявление самого вендора без сторонних измерений.
Два выбора и как их сделать
Свой провайдер или openai_base_url
Официальная документация даёт два пути: если нужно лишь направить встроенный провайдер openai на прокси или маршрутизатор, достаточно задать openai_base_url, не создавая нового провайдера; если нужны своя переменная для ключа и свои настройки протокола, добавьте таблицу в model_providers. Таблицу с именем openai создать нельзя: встроенные id не переопределяются. Документация QCode использует второй путь (провайдер crs) и не описывает подключение через openai_base_url, поэтому эта страница не рекомендует его для QCode.
auth.json или переменная окружения
Документация QCode предлагает выбрать одно: записать OPENAI_API_KEY в ~/.codex/auth.json или задать переменную окружения CRS_OAI_KEY. Если есть и то и другое, приоритет у auth.json, поэтому при переходе на переменную установите OPENAI_API_KEY в auth.json в null. OpenAI советует не хранить учётные данные в TOML-файлах и репозиториях и предупреждает, что переменная, заданная в терминале, может быть недоступна приложению, запущенному с рабочего стола.
Пять шагов для подключения QCode
По документации QCode: ① создайте каталог настроек ~/.codex (в Windows — %USERPROFILE%\.codex); ② в начале config.toml укажите верхнеуровневые ключи: model_provider со значением crs, model со значением gpt-6-sol или gpt-6.1-sol и при желании model_reasoning_effort; они должны стоять до первого заголовка таблицы, иначе попадут в эту таблицу; ③ добавьте таблицу model_providers.crs: name — crs, base_url — https://api.qcode.cc/openai, wire_api — responses, requires_openai_auth — true, env_key — CRS_OAI_KEY (из Северной Америки и Европы можно заменить хост на us.qcode.cc); ④ передайте ключ: либо export CRS_OAI_KEY с вашим ключом, начинающимся на cr_, либо запишите его в OPENAI_API_KEY в ~/.codex/auth.json, что-то одно; ⑤ запустите codex и командой /status проверьте активные model и provider, а codex doctor поможет проверить конфигурацию.
Codex на QCode
Скопируйте в консоли QCode ключ, начинающийся с cr_, и выполните пять шагов выше; либо воспользуйтесь скриптом настройки в один шаг из документации QCode: он установит CLI, запишет конфигурацию в ~/.codex и проверит соединение. Codex работает по протоколу OpenAI Responses, поэтому через него в QCode работают модели семейства GPT: gpt-6.1-sol, gpt-6-sol, gpt-5.6-sol, gpt-5.6-terra, gpt-6-astra и gpt-6-luna можно вызывать, а переключение — только сменой model; Claude и модели GLM, Kimi, DeepSeek, Qwen этим протоколом не обслуживаются. Тот же ключ подходит и для Claude Code. Оплата за токены, цены по моделям — на /models.
Частые вопросы
Что изменить, чтобы подключить Codex CLI к стороннему API?
Две вещи в ~/.codex/config.toml: верхнеуровневый model_provider должен указывать на id вашего провайдера, а для этого id нужна таблица в model_providers с base_url, wire_api и env_key. Официальный справочник пишет, что единственное поддерживаемое значение wire_api — responses, а env_key — имя переменной окружения с API-ключом; requires_openai_auth означает, что провайдер использует аутентификацию OpenAI, по умолчанию это false, а в документации QCode стоит true.
Что писать в base_url? Добавлять /v1?
Для QCode — https://api.qcode.cc/openai, без /v1 и без завершающего слеша. В документации QCode сказано, что base_url для Codex должен быть именно таким, а Codex обращается к пути /openai/v1/responses. Общее правило из документации по эндпоинтам: без завершающего слеша, иначе получится путь с двойным слешем и ответ 404; 404 обычно означает неверный префикс пути. Резервный адрес для Азии — https://asia.qcode.cc/openai, для Северной Америки и Европы есть us.qcode.cc.
Что делать при 401 или API key not found?
Проверьте три вещи: начинается ли ключ с cr_ и нет ли в ключе в auth.json лишних пробелов или переносов строки; если используете переменную окружения, совпадает ли её имя со значением env_key в config.toml (в документации QCode — CRS_OAI_KEY) и задана ли она в текущей оболочке; наконец, состояние ключа в консоли QCode. Помните: если есть и auth.json, и переменная, приоритет у auth.json, поэтому, если вы опираетесь на переменную, установите OPENAI_API_KEY в auth.json в null.
Я поправил config.toml — почему провайдер не применился?
Чаще всего верхнеуровневый ключ стоит не на месте: официальная документация требует, чтобы model и model_provider шли до первой TOML-таблицы, потому что ключи после заголовка таблицы относятся к ней. Далее, .codex/config.toml в проекте игнорирует model_provider и model_providers, так что провайдер нужно описывать в пользовательском ~/.codex/config.toml, и называть таблицу openai нельзя. Кроме того, по документации QCode, начиная с Codex 0.134.0 старые таблицы profiles в config.toml упразднены, и запуск с --profile при оставленных старых таблицах завершается ошибкой. После запуска команда /status покажет активные model и provider.
Можно ли использовать модели Claude в Codex? Что значит model_not_available_on_endpoint?
В QCode — нет. По документации QCode, Codex работает по протоколу OpenAI Responses, который обслуживает только семейство GPT, а не Claude и не модели GLM, Kimi, DeepSeek, Qwen; модели Claude работают только по протоколу Anthropic. Пример из документации: если отправить модель Claude на /openai/v1/chat/completions, вернётся model_not_available_on_endpoint, а эта проверка выполняется до аутентификации, так что ошибка означает неверный протокол, а не плохой ключ. Для Claude используйте Claude Code с тем же ключом.
Какую модель выбрать для Codex на QCode?
По состоянию на 2026-10-07 документация QCode по умолчанию рекомендует gpt-6-sol (контекст 1.05M, общие и сложные задачи); gpt-6.1-sol — обновление GPT-6 Sol от 2026-09-29, тоже с контекстом 1.05M и, по документации, с более дешёвым чтением кэша, а в официальном Codex начиная с 0.159.1 это модель по умолчанию во встроенном каталоге; gpt-5.6-sol относится к флагманской линейке GPT-5.6, gpt-5.6-terra оптимизирована под код, gpt-6-astra — верхний уровень с высокой ценой, gpt-6-luna OpenAI позиционирует для узких задач с большим объёмом запросов, её цена указана на /models. Все они вызываются в QCode; переключение — сменой model или через codex --model.
Источники
Параметры конфигурации Codex: официальный справочник по конфигурации Codex и документация по расширенной настройке от OpenAI (learn.chatgpt.com, загружено 2026-10-07) — значение model_provider по умолчанию, зарезервированные id, значение wire_api, описание env_key и requires_openai_auth, openai_base_url и ключи, игнорируемые на уровне проекта. Расположение верхнеуровневых ключей, хранение учётных данных и проверка через /status: официальный документ Connect to a gateway, загружен в тот же день. Версии и модели: официальный журнал изменений ChatGPT и Codex, загружен в тот же день (0.159.1, 0.160.0, 0.160.1 анонсы GPT-6 Sol и GPT-6.1 Sol, а также объявление о выводе GPT-5.5). Способ подключения QCode, base_url, имя env_key, префикс ключа и список моделей: три страницы docs.qcode.cc — полное руководство по Codex, быстрый старт Codex и страница о точках подключения и форматах API (загружены 2026-10-07).
Codex на одном ключе
Укажите base_url https://api.qcode.cc/openai и выберите gpt-6.1-sol, gpt-6-sol или gpt-5.6-sol: оплата за токены, запуск сразу после регистрации.
Читайте также
Полное руководство Codex CLI
Установка и настройка OpenAI Codex CLI и сравнение с Claude Code.
GPT-5.6 в Codex CLI
Четыре шага для запуска gpt-5.6-sol и gpt-5.6-terra в Codex CLI через QCode.
Гид по 5-часовому лимиту Codex
Как устроен 5-часовой скользящий лимит, его хронология и что делать при его исчерпании.
Параметры конфигурации и сведения о версиях на этой странице сверены 2026-10-07 с официальной документацией и журналом изменений Codex от OpenAI и с документацией QCode; ориентируйтесь на официальные страницы, изменения у вендора возможны без предупреждения. Совместимость сверх описанной в документации эта страница не обещает; доступность моделей — по /models.