К содержимому
Разделы документации

Codex CLI через Konductor

Как подключить Codex CLI к Konductor: провайдер в config.toml, base_url с /v1, ключ из переменной окружения и ограничения Responses.

Codex CLI умеет работать с любым провайдером, который принимает формат OpenAI Responses. Konductor принимает его на /v1/responses, так что Codex подключается описанием провайдера в config.toml.

Настройка

Открой ~/.codex/config.toml и добавь провайдера Konductor. Идентификатор модели возьми из каталога на странице Цены:

model = "<идентификатор модели>"
model_provider = "konductor"

[model_providers.konductor]
name = "Konductor"
base_url = "https://llm.kodzavod.ru/v1"
env_key = "KONDUCTOR_KEY"
wire_api = "responses"

Что значат поля:

  • base_url — https://llm.kodzavod.ru/v1, с /v1 на конце. Codex дописывает к нему /responses.
  • env_key — имя переменной окружения, из которой Codex возьмёт ключ компании. Сам ключ в файл не пиши.
  • wire_api — responses. Другого значения Codex не принимает.

Первый запрос

Задай переменную с ключом и запусти Codex:

bash
export KONDUCTOR_KEY="<ключ>"
codex exec "Привет!"

В интерактивном режиме запускай просто codex: провайдер подхватится из config.toml.

Что Konductor не принимает

Konductor не хранит ответы, поэтому всю историю нужно присылать в каждом запросе. Запрос с previous_response_id, conversation, background: true или store: true вернёт 400 с param поля, на которое он ответил. Серверные инструменты, например web_search, тоже вернут 400. Обычные функции (function) и custom-инструменты работают. Полный перечень — в описании /v1/responses в справочнике API.

Konductor передаёт модели только поля input, instructions, tools, tool_choice, parallel_tool_calls, temperature, top_p, top_logprobs, frequency_penalty, presence_penalty и text. Остальные поля, включая reasoning, include и prompt_cache_key, он отбрасывает без ошибки: запрос проходит, но настройка не действует. Если Codex присылает эти поля, до модели они не доходят.

Сколько стоил запрос

В ответе /v1/responses рубли лежат в usage.cost_rub. Подробнее — на странице Цены в ответе.

Если запрос не прошёл

Смотри страницу Ошибки 402, 403 и 429. Остаток баланса и лимит ключа покажет запрос к /v1/key из быстрого старта.

Эта страница в Markdown для ИИ-ассистентов — codex.md. Для генераторов SDK — openapi.json. Изменения API — в журнале изменений.