Skip to content

Codex CLI

На этой странице собраны оба варианта для Codex CLI: ручная настройка файлов и готовый скрипт автонастройки.

Codex CLI в этой схеме подключается через два user-level файла: ~/.codex/config.toml и ~/.codex/auth.json.

  • provider id: apikey_center
  • base URL: https://apikey.center/v1
  • wire API: responses
  • websockets: false
  • requires_openai_auth = true
  • ключ хранится в auth.json в поле OPENAI_API_KEY
  • установленный codex
  • API key от apikey.center
  • рабочий model ID, например gpt-5.5
  • 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:

Terminal window
cp ~/.codex/config.toml ~/.codex/config.toml.backup 2>/dev/null || true
cp ~/.codex/auth.json ~/.codex/auth.json.backup 2>/dev/null || true

Windows PowerShell:

Terminal window
Copy-Item "$HOME\.codex\config.toml" "$HOME\.codex\config.toml.backup" -ErrorAction SilentlyContinue
Copy-Item "$HOME\.codex\auth.json" "$HOME\.codex\auth.json.backup" -ErrorAction SilentlyContinue

Если одного из файлов еще нет, это нормально.

В ~/.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 = true
supports_websockets = false

Что здесь важно:

  • model_provider и имя секции должны совпадать
  • используй provider id: apikey_center
  • base_url для Codex здесь берется из основного API-домена https://apikey.center/v1
  • wire_api = "responses" обязателен
  • requires_openai_auth = true нужен, чтобы Codex брал ключ из auth.json
  • supports_websockets = false тоже входит в рабочую конфигурацию
  • если хочешь другую модель, замени только значение model

В ~/.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:

Terminal window
curl https://apikey.center/v1/models \
-H "Authorization: Bearer YOUR_API_KEY"

Windows PowerShell:

Terminal window
Invoke-WebRequest `
-Uri "https://apikey.center/v1/models" `
-Headers @{ Authorization = "Bearer YOUR_API_KEY" }

7. Перезапусти терминал и запусти Codex

Section titled “7. Перезапусти терминал и запусти Codex”

Открой новую terminal session и запусти:

Terminal window
codex

Если модель указана корректно, Codex должен стартовать уже через apikey.center.

Важное ограничение по месту хранения

Section titled “Важное ограничение по месту хранения”

Provider и auth-настройки для этого сценария лучше держать в user-level каталоге ~/.codex/, а не в project-local .codex/ внутри отдельного репозитория.

Для Codex CLI первый рабочий installer уже живет здесь:

macOS / Linux:

Terminal window
curl -fsSL https://docs.apikey.center/i/codex-cli.sh | sh

Windows PowerShell:

Terminal window
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:

Terminal window
curl -fsSL https://docs.apikey.center/i/codex-cli.sh | sh -s -- --model gpt-5.5

Windows PowerShell:

Terminal window
& ([scriptblock]::Create((irm https://docs.apikey.center/i/codex-cli.ps1))) -Model gpt-5.5

Rollback:

macOS / Linux:

Terminal window
curl -fsSL https://docs.apikey.center/i/codex-cli.sh | sh -s -- --rollback

Windows PowerShell:

Terminal window
& ([scriptblock]::Create((irm https://docs.apikey.center/i/codex-cli.ps1))) -Rollback

По умолчанию ключ читается из prompt. Если удобнее, можно заранее выставить APIKEY_CENTER_API_KEY или OPENAI_API_KEY.

Сценарий считается успешным, если:

  • GET https://apikey.center/v1/models отвечает без route-error
  • codex запускается без возврата к дефолтному OpenAI URL
  • при плохом ключе ты видишь auth-error или 401, а не Invalid URL
  • при смене модели Codex использует значение из config.toml
  • installer оставил backup-файлы рядом в ~/.codex/
  • верни 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

Для текущего сценария ключ должен лежать в ~/.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/.

Сначала проверь 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