Qodx в Codex CLI

Документация Codex

Официальный Codex CLI через Qodx

Codex продолжает работать локально с терминалом, файлами и Git, а модельные запросы и политика доступа проходят через Qodx.

Provider
qodx
Endpoint
https://qodx.qonsole.ru/v1
Credential
QODX_API_KEY

Подключение

  1. 1
    Получите API-токен Qodx

    Для полноценного Agent-режима у пользователя должны быть разрешены tools, а токен должен наследовать это разрешение. Web search включается отдельно и работает в назначенном пользователю режиме. Токен начинается с qodx_ и показывается один раз.

  2. 2
    Установите официальный Codex CLI

    Установите актуальный пакет @openai/codex либо официальный standalone-релиз и проверьте версию командой codex --version.

  3. 3
    Передайте токен через окружение

    Не записывайте токен в config.toml. Используйте переменную QODX_API_KEY или менеджер секретов вашей оболочки.

  4. 4
    Добавьте provider в пользовательский конфиг

    Сохраните TOML ниже в ~/.codex/config.toml. Настройки provider должны быть пользовательскими: Codex игнорирует перенаправление авторизации из project-level .codex/config.toml.

  5. 5
    Запустите smoke-test

    Выполните команду из примера в Git-репозитории. Codex должен получить ответ, а локальные tools должны выполняться обычным механизмом официального клиента.

Готовая конфигурация

Модель можно заменить на любую модель, разрешённую вашему Qodx-токену.

model = "gpt-5.6-sol"
model_provider = "qodx"
model_reasoning_effort = "medium"
model_verbosity = "low"

[model_providers.qodx]
name = "Qodx"
base_url = "https://qodx.qonsole.ru/v1"
env_key = "QODX_API_KEY"
wire_api = "responses"
http_headers = { "x-openai-actor-authorization" = "qodx" }

Токен и проверка

Сначала экспортируйте секрет, затем запускайте Codex из нужного репозитория.

Замените qodx_... фактическим токеном только в своей оболочке или secret store.
export QODX_API_KEY='qodx_...'
codex exec "Inspect this repository and summarize its architecture."

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.