Codex с OpenCheese
/ Документация API← Быстрый старт с APIОткрыть как Markdown
Codex работает с OpenAI Responses API, который OpenCheese предоставляет по адресу
https://api.opencheese.dev/v1. Нужен Codex 0.120 или новее: более старые сборки используют
протокол chat, который OpenAI удалила, и их конфигурация не загрузится.
Codex CLI, настольное приложение Codex и расширение Codex для IDE (VS Code, Cursor и другие форки
VS Code) читают один и тот же ~/.codex/config.toml, поэтому одной настройки хватает на все три.
Самый быстрый способ: сгенерированный файл
Войдите в аккаунт, откройте страницу Настройка, перейдите на вкладку Codex, выберите API-ключ и подтвердите пароль, затем объедините сгенерированный файл со своей пользовательской конфигурацией:
| Система | Файл |
|---|---|
| macOS и Linux | ~/.codex/config.toml |
| Windows | %USERPROFILE%\.codex\config.toml |
| Codex внутри WSL | ~/.codex/config.toml в вашем домашнем каталоге WSL |
Ручная настройка
model = "MODEL_ID"
model_provider = "opencheese"
model_reasoning_summary = "auto"
[model_providers.opencheese]
name = "OpenCheese"
base_url = "https://api.opencheese.dev/v1"
wire_api = "responses"
env_key = "OPENCHEESE_API_KEY"
request_max_retries = 4
stream_max_retries = 5
stream_idle_timeout_ms = 300000
Затем экспортируйте ключ в той оболочке, из которой запускается Codex, причём в одинарных кавычках
(в ключе есть символы $, которые в двойных кавычках оболочка раскрыла бы):
export OPENCHEESE_API_KEY='YOUR_OPENCHEESE_API_KEY'
base_urlдолжен заканчиваться на/v1: Codex сам добавляет/responses.wire_apiдолжен быть равен"responses"; текущие версии Codex отклоняют"chat".- Все корневые ключи (
model,model_provider, ...) должны стоять до первого заголовка[table], иначе файл не удастся разобрать. - Сгенерированный файл хранит ключ в
experimental_bearer_token.env_key, напротив, держит его вне файла. Используйте что-то одно, но не оба сразу: Codex отклоняет такую комбинацию. - Держите эти настройки в пользовательской конфигурации. В
.codex/config.tomlвнутри проекта Codex игнорируетmodel_providerи выводит предупреждение при запуске.
Модели и уровень рассуждений
/model в Codex показывает встроенные в Codex модели OpenAI, а не каталог OpenCheese; модель из
этого списка работает, только если у вашего ключа есть модель с таким же ID. Чтобы
использовать любую другую модель, задайте model в config.toml или запустите Codex с нужной
моделью на эту сессию:
codex -m MODEL_ID
model_reasoning_effort задаёт начальный уровень рассуждений (например, "high"); сгенерированный
файл начинает с max, если модель его поддерживает, иначе с high или medium. Если модель не
поддерживает выбранный уровень, запрос отклоняется с сообщением, в котором перечислены доступные
ей уровни. Codex читает config.toml только при запуске, поэтому перезапускайте его после каждой
правки.
В режиме Fast Codex переключается на Fast-версию модели, если она есть: ответы приходят быстрее и стоят дороже. Если у модели нет Fast-версии, отвечает обычная.
Расход и стоимость
Каждый запрос отображается в панели на странице Транзакции с расходом токенов и стоимостью; запросы одного разговора объединены в одну сессию.
Решение проблем
- Конфигурация не загружается: обновите Codex до версии 0.120 или новее и проверьте, что ни
один корневой ключ не стоит после заголовка
[table]. - «Invalid or disabled OpenCheese API key»: проверьте ключ на странице API-ключи, а также
что переменная
OPENCHEESE_API_KEYзадана в оболочке, из которой запускается Codex. - Вместо API отвечает сайт: в
base_urlдолжен быть указанapi.opencheese.dev. /modelне показывает мои модели OpenCheese: так и должно быть: эта команда показывает встроенный каталог Codex. Задайтеmodelвconfig.tomlили используйтеcodex -m MODEL_ID.