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

Claude Code и Codex

Plexxum принимает три протокола: OpenAI Chat Completions (/v1/chat/completions), OpenAI Responses (/v1/responses) и Anthropic Messages (/anthropic/v1/messages). Claude Code работает по протоколу Anthropic, Codex — по Responses. Ключ один и тот же, баланс общий.

Claude Code читает адрес и ключ из переменных окружения:

Окно терминала
export ANTHROPIC_BASE_URL="https://api.plexxum.ru/anthropic"
export ANTHROPIC_AUTH_TOKEN="$PLEXXUM_API_KEY"
export ANTHROPIC_MODEL="claude-sonnet-5-5"
export ANTHROPIC_DEFAULT_SONNET_MODEL="claude-sonnet-5-5"
export ANTHROPIC_DEFAULT_OPUS_MODEL="claude-sonnet-5-5"
export ANTHROPIC_DEFAULT_HAIKU_MODEL="gemini-3.8-flash"
claude
  • Адрес — без /v1 на конце: Claude Code добавляет /v1/messages сам.
  • Ключ можно передать и как ANTHROPIC_API_KEY: Plexxum принимает и Authorization: Bearer, и x-api-key.
  • Модель — id из каталога. Если Claude Code просит модель, которой нет в каталоге, запрос получит 404 model_not_found: задайте имена моделей явно.
  • Claude Code переключается между тремя классами моделей: основная (SONNET), сильная для планирования (OPUS) и быстрая для фоновых задач (HAIKU). Задайте все три на модели из каталога — иначе он попросит имя, которого в каталоге нет.
  • Подсчёт токенов (/anthropic/v1/messages/count_tokens) Plexxum не поддерживает — такие запросы получат 404.

Тот же адрес подходит для Anthropic SDK: base_url="https://api.plexxum.ru/anthropic".

Codex CLI подключается к своему провайдеру через ~/.codex/config.toml:

model = "claude-sonnet-5-5"
model_provider = "plexxum"
[model_providers.plexxum]
name = "Plexxum"
base_url = "https://api.plexxum.ru/v1"
env_key = "PLEXXUM_API_KEY"
wire_api = "responses"

Ключ Codex берёт из переменной PLEXXUM_API_KEY.

  • В Responses API — параметры previous_response_id, conversation, background, prompt и container: запрос с ними получит ошибку 400. Историю диалога клиент должен присылать целиком.
  • Инструменты, которые исполняет сам поставщик (поиск в интернете, поиск по файлам, исполнение кода, mcp_servers), и service_tier, кроме auto и default, — ошибка 400. Поэтому в Claude Code не работает WebSearch, в Codex — web_search и local_shell. Инструменты, которые исполняет клиент (функции, bash, редактор текста), работают.
  • Файлы и документы по ссылке или id — ошибка 400: присылайте содержимое в запросе.
  • Имя поставщика в модели (anthropic/claude-sonnet-5-5) — ошибка 400. Поставщика выбирает Plexxum, указывайте только id модели.

Агенты делают много запросов подряд и держат несколько запросов одновременно. Заведите для агента отдельный ключ с лимитом трат — так расход не выйдет за план. Как это сделать — в статье Ключи, лимиты и расходы.