Codex CLI
На этой странице собраны оба варианта для
Codex CLI: ручная настройка файлов и готовый скрипт автонастройки.
Codex CLI в этой схеме подключается через два user-level файла: ~/.codex/config.toml и ~/.codex/auth.json.
Что важно заранее
Section titled “Что важно заранее”- provider id:
apikey_center - base URL:
https://apikey.center/v1 - wire API:
responses - websockets:
false requires_openai_auth = true- ключ хранится в
auth.jsonв полеOPENAI_API_KEY
Что понадобится
Section titled “Что понадобится”- установленный
codex - API key от
apikey.center - рабочий model ID, например
gpt-5.5
Ручная настройка
Section titled “Ручная настройка”1. Открой каталог Codex
Section titled “1. Открой каталог Codex”- macOS / Linux:
~/.codex/ - Windows:
%USERPROFILE%\.codex\
Если на macOS папка .codex не видна в Finder:
- нажми
Command + Shift + ., чтобы показать скрытые файлы - или нажми
Command + Shift + Gи сразу открой~/.codex
На Windows проще всего вставить %USERPROFILE%\.codex\ прямо в адресную строку Проводника.
Если каталога еще нет, создай его.
2. Сделай backup перед правкой
Section titled “2. Сделай backup перед правкой”Если config.toml или auth.json уже существуют, сохрани копии рядом перед изменениями.
Минимум нужно проверить два файла:
~/.codex/config.toml~/.codex/auth.json
Самый простой вариант:
macOS / Linux:
cp ~/.codex/config.toml ~/.codex/config.toml.backup 2>/dev/null || truecp ~/.codex/auth.json ~/.codex/auth.json.backup 2>/dev/null || trueWindows PowerShell:
Copy-Item "$HOME\.codex\config.toml" "$HOME\.codex\config.toml.backup" -ErrorAction SilentlyContinueCopy-Item "$HOME\.codex\auth.json" "$HOME\.codex\auth.json.backup" -ErrorAction SilentlyContinueЕсли одного из файлов еще нет, это нормально.
3. Заполни config.toml
Section titled “3. Заполни config.toml”В ~/.codex/config.toml используй такой блок:
model_provider = "apikey_center"model = "gpt-5.5"
[model_providers.apikey_center]name = "apikey_center"base_url = "https://apikey.center/v1"wire_api = "responses"requires_openai_auth = truesupports_websockets = falseЧто здесь важно:
model_providerи имя секции должны совпадать- используй provider id:
apikey_center base_urlдля Codex здесь берется из основного API-доменаhttps://apikey.center/v1wire_api = "responses"обязателенrequires_openai_auth = trueнужен, чтобы Codex брал ключ изauth.jsonsupports_websockets = falseтоже входит в рабочую конфигурацию- если хочешь другую модель, замени только значение
model
4. Заполни auth.json
Section titled “4. Заполни auth.json”В ~/.codex/auth.json положи ключ в таком виде:
{ "OPENAI_API_KEY": "sk-REPLACE_WITH_YOUR_KEY"}Если auth.json уже существует, для этого сценария лучше полностью заменить его содержимое этим JSON. Старую версию сначала сохрани в backup.
Если ты вручную переключаешься между разными профилями Codex, меняй парой оба файла:
~/.codex/config.toml~/.codex/auth.json
Одна строка model = "..." не делает профиль рабочим сама по себе. Для выбора моделей нужен полный provider block и совместимый auth.json.
5. Не клади ключ в config.toml
Section titled “5. Не клади ключ в config.toml”Для этого сценария рабочая схема такая:
- настройки провайдера лежат в
config.toml - ключ лежит в
auth.json
6. При желании проверь каталог моделей напрямую
Section titled “6. При желании проверь каталог моделей напрямую”До запуска codex можно сделать простой HTTP-check.
macOS / Linux:
curl https://apikey.center/v1/models \ -H "Authorization: Bearer YOUR_API_KEY"Windows PowerShell:
Invoke-WebRequest ` -Uri "https://apikey.center/v1/models" ` -Headers @{ Authorization = "Bearer YOUR_API_KEY" }7. Перезапусти терминал и запусти Codex
Section titled “7. Перезапусти терминал и запусти Codex”Открой новую terminal session и запусти:
codexЕсли модель указана корректно, Codex должен стартовать уже через apikey.center.
Важное ограничение по месту хранения
Section titled “Важное ограничение по месту хранения”Provider и auth-настройки для этого сценария лучше держать в user-level каталоге ~/.codex/, а не в project-local .codex/ внутри отдельного репозитория.
Скрипт автонастройки
Section titled “Скрипт автонастройки”Для Codex CLI первый рабочий installer уже живет здесь:
macOS / Linux:
curl -fsSL https://docs.apikey.center/i/codex-cli.sh | shWindows PowerShell:
irm https://docs.apikey.center/i/codex-cli.ps1 | iexЧто делает installer:
- работает только с user-level каталогом
~/.codex/ - создает backup
config.tomlиauth.jsonдо любых изменений - записывает provider block
apikey_centerв~/.codex/config.toml - перезаписывает
~/.codex/auth.jsonцеликом и оставляет в нем толькоOPENAI_API_KEY - по умолчанию ставит
model = "gpt-5.5" - делает live-check через
GET https://apikey.center/v1/models - печатает понятный rollback command
Backup-файлы вида config.toml.apikey-center.codex-cli.bak и auth.json.apikey-center.codex-cli.bak нужны именно для rollback. Это не отдельный готовый профиль для ручного переключения между провайдерами.
Опционально можно передать модель явно:
macOS / Linux:
curl -fsSL https://docs.apikey.center/i/codex-cli.sh | sh -s -- --model gpt-5.5Windows PowerShell:
& ([scriptblock]::Create((irm https://docs.apikey.center/i/codex-cli.ps1))) -Model gpt-5.5Rollback:
macOS / Linux:
curl -fsSL https://docs.apikey.center/i/codex-cli.sh | sh -s -- --rollbackWindows PowerShell:
& ([scriptblock]::Create((irm https://docs.apikey.center/i/codex-cli.ps1))) -RollbackПо умолчанию ключ читается из prompt. Если удобнее, можно заранее выставить APIKEY_CENTER_API_KEY или OPENAI_API_KEY.
Verification
Section titled “Verification”Сценарий считается успешным, если:
GET https://apikey.center/v1/modelsотвечает без route-errorcodexзапускается без возврата к дефолтному OpenAI URL- при плохом ключе ты видишь auth-error или
401, а неInvalid URL - при смене модели Codex использует значение из
config.toml - installer оставил backup-файлы рядом в
~/.codex/
Rollback
Section titled “Rollback”- верни backup
~/.codex/config.toml - верни backup
~/.codex/auth.json - или убери
model_provider = "apikey_center"и блок[model_providers.apikey_center] - если менял только модель, верни прошлое значение
model = "..."
Если использовал скрипт автонастройки, у него есть отдельный режим rollback:
- Unix shell:
curl -fsSL https://docs.apikey.center/i/codex-cli.sh | sh -s -- --rollback - PowerShell:
& ([scriptblock]::Create((irm https://docs.apikey.center/i/codex-cli.ps1))) -Rollback
Частые ошибки
Section titled “Частые ошибки”Ключ положили не туда
Section titled “Ключ положили не туда”Для текущего сценария ключ должен лежать в ~/.codex/auth.json, а не в config.toml.
Имя провайдера не совпадает
Section titled “Имя провайдера не совпадает”Если написать model_provider = "apikey_center", но секцию назвать по-другому, Codex не подхватит провайдера.
Использован не тот base URL
Section titled “Использован не тот base URL”Для Codex в этих документах зафиксирован основной OpenAI-compatible URL https://apikey.center/v1.
Изменили .codex/config.toml внутри проекта
Section titled “Изменили .codex/config.toml внутри проекта”Для provider/auth настроек ориентируйся на user-level каталог ~/.codex/.
Модель не находится
Section titled “Модель не находится”Сначала проверь GET https://apikey.center/v1/models, затем сверяй значение model = "..." в config.toml.
Переименовали .bak обратно в config.toml, а модели пропали
Section titled “Переименовали .bak обратно в config.toml, а модели пропали”Такое обычно происходит, если backup-файл был снимком старого состояния, а не полноценным рабочим профилем для apikey.center.
Проверь:
- есть ли
model_provider = "apikey_center"или другой ожидаемый provider id - есть ли полный блок
[model_providers....] - указан ли
wire_api = "responses" - указан ли
requires_openai_auth = true - совпадает ли текущий
auth.jsonименно с этимconfig.toml