Перейти к основному содержимому

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

Ручная настройка

toml
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, причём в одинарных кавычках (в ключе есть символы $, которые в двойных кавычках оболочка раскрыла бы):

bash
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 с нужной моделью на эту сессию:

bash
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.
В сыре есть дырки. В вашей инфраструктуре их быть не должно.