Конфигурация
Обнаружение конфигурационных файлов
Заголовок раздела «Обнаружение конфигурационных файлов»Claudex использует figment для многоуровневой конфигурации. Источники объединяются в следующем порядке (более поздние источники переопределяют более ранние):
- Программные значения по умолчанию (встроенные запасные значения)
- Глобальная конфигурация (
~/.config/claudex/config.tomlилиconfig.yaml) - Конфигурация проекта (
claudex.tomlилиclaudex.yamlв текущем каталоге или родительских каталогах до 10 уровней, либо$CLAUDEX_CONFIG) - Переменные окружения (префикс
CLAUDEX_, разделитель__)
Поддерживаются оба формата: TOML и YAML. Формат файла определяется по расширению (.toml или .yaml/.yml).
# Показать путь к загруженной конфигурации и все места поискаclaudex config show
# Показать только путь к конфигурационному файлуclaudex config path
# Создать новую конфигурацию в текущем каталогеclaudex config init
# Пересоздать конфигурацию из config.example.tomlclaudex config recreate
# Открыть конфигурацию в вашем $EDITORclaudex config edit
# Проверить синтаксис конфигурации и ссылки профилейclaudex config validate
# Получить конкретное значение конфигурацииclaudex config get proxy_port
# Установить конкретное значение конфигурацииclaudex config set proxy_port 8080
# Экспортировать текущую конфигурацию в stdoutclaudex config exportГлобальные настройки
Заголовок раздела «Глобальные настройки»# Путь к бинарному файлу claude (по умолчанию: "claude" из PATH)# claude_binary = "/usr/local/bin/claude"
# Настройки проксиproxy_port = 13456proxy_host = "127.0.0.1"
# Уровень логирования: trace, debug, info, warn, errorlog_level = "info"
# Терминальные гиперссылки (OSC 8): "auto" | true | false# "auto" автоматически определяет поддержку терминала; true/false принудительно включают/выключаютhyperlinks = "auto"
# Алиасы моделей (сокращение → полное имя модели)[model_aliases]grok3 = "grok-3-beta"gpt4o = "gpt-4o"ds3 = "deepseek-chat"Профили
Заголовок раздела «Профили»Каждый профиль представляет подключение к AI-провайдеру. Существует три типа провайдеров:
DirectAnthropic
Заголовок раздела «DirectAnthropic»Для провайдеров, нативно поддерживающих Anthropic Messages API. Запросы пересылаются с минимальными изменениями.
[[profiles]]name = "anthropic"provider_type = "DirectAnthropic"base_url = "https://api.anthropic.com"api_key = "sk-ant-..."default_model = "claude-sonnet-4-20250514"priority = 100enabled = trueСовместимые провайдеры: Anthropic, MiniMax, Google Vertex AI
OpenAICompatible
Заголовок раздела «OpenAICompatible»Для провайдеров, использующих OpenAI Chat Completions API. Claudex автоматически переводит между протоколами Anthropic и OpenAI.
[[profiles]]name = "grok"provider_type = "OpenAICompatible"base_url = "https://api.x.ai/v1"api_key = "xai-..."default_model = "grok-3-beta"backup_providers = ["deepseek"]priority = 100enabled = trueСовместимые провайдеры: Grok (xAI), OpenAI, DeepSeek, Kimi/Moonshot, GLM (Zhipu), OpenRouter, Groq, Mistral, Together AI, Perplexity, Cerebras, Azure OpenAI, GitHub Copilot, GitLab Duo, Ollama, vLLM, LM Studio
OpenAIResponses
Заголовок раздела «OpenAIResponses»Для провайдеров, использующих OpenAI Responses API (например, подписки ChatGPT/Codex). Claudex переводит между Anthropic Messages API и OpenAI Responses API.
[[profiles]]name = "codex-sub"provider_type = "OpenAIResponses"base_url = "https://chatgpt.com/backend-api/codex"default_model = "gpt-5.3-codex"auth_type = "oauth"oauth_provider = "openai"Совместимые провайдеры: подписки ChatGPT/Codex (через Codex CLI)
Поля профиля
Заголовок раздела «Поля профиля»| Поле | По умолчанию | Описание |
|---|---|---|
name | обязательно | Уникальный идентификатор профиля |
provider_type | DirectAnthropic | DirectAnthropic, OpenAICompatible или OpenAIResponses |
base_url | обязательно | Endpoint API провайдера |
api_key | "" | API-ключ (открытый текст) |
api_key_keyring | — | Читать API-ключ из связки ключей ОС |
default_model | обязательно | Модель по умолчанию |
auth_type | "api-key" | "api-key" или "oauth" |
oauth_provider | — | OAuth-провайдер (claude, openai, google, qwen, kimi, github, gitlab). Обязательно при auth_type = "oauth" |
backup_providers | [] | Имена профилей для failover |
custom_headers | {} | Дополнительные HTTP-заголовки |
extra_env | {} | Дополнительные переменные окружения для Claude |
priority | 100 | Приоритет для умной маршрутизации |
enabled | true | Активен ли этот профиль |
max_tokens | — | Ограничить максимальное количество выходных токенов, отправляемых провайдеру (опционально) |
strip_params | "auto" | "auto", "none" или ["temperature", "top_p"]. Автоопределение неподдерживаемых параметров (например, ChatGPT Codex endpoint) |
[profiles.query_params] | {} | URL query-параметры (например, Azure api-version) |
[profiles.models] | — | Таблица маппинга слотов моделей (поля haiku, sonnet, opus) |
Интерактивная настройка
Заголовок раздела «Интерактивная настройка»Самый простой способ добавить профиль:
claudex profile addИнтерактивный мастер проведёт вас через выбор провайдера, ввод API-ключа (с опциональным хранением в связке ключей), выбор модели и тестирование подключения.
Интеграция со связкой ключей
Заголовок раздела «Интеграция со связкой ключей»Храните API-ключи безопасно в связке ключей ОС вместо открытого текста в конфигурации:
[[profiles]]name = "grok"api_key_keyring = "grok-api-key" # читает из связки ключей ОСПоддерживаемые бэкенды:
- macOS: Keychain
- Linux: Secret Service (GNOME Keyring / KDE Wallet)
OAuth-аутентификация по подписке
Заголовок раздела «OAuth-аутентификация по подписке»Вместо API-ключей вы можете аутентифицироваться с помощью существующей подписки провайдера через OAuth. Это полезно при наличии подписки Claude Pro/Team, ChatGPT Plus или другого тарифного плана.
Настройка
Заголовок раздела «Настройка»- Установите
auth_typeпрофиля в"oauth"и укажитеoauth_provider:
[[profiles]]name = "codex-sub"provider_type = "OpenAIResponses"base_url = "https://chatgpt.com/backend-api/codex"default_model = "gpt-5.3-codex"auth_type = "oauth"oauth_provider = "openai"- Войдите с помощью команды
auth:
claudex auth login openai- Проверьте статус аутентификации:
claudex auth statusПоддерживаемые провайдеры
Заголовок раздела «Поддерживаемые провайдеры»| Провайдер | oauth_provider | Источник токена |
|---|---|---|
| Claude | claude | Читает из ~/.claude/.credentials.json (нативная конфигурация Claude Code) |
| ChatGPT | openai | Browser PKCE или Device Code, запасной вариант ~/.codex/auth.json (Codex CLI) |
google | Читает из учётных данных Gemini CLI | |
| Qwen | qwen | Device Code flow |
| Kimi | kimi | Читает из учётных данных Kimi CLI |
| GitHub | github | Device Code flow, запасной вариант ~/.config/github-copilot/ |
| GitLab | gitlab | Переменная окружения GITLAB_TOKEN |
Подробности по OAuth-потоку каждого провайдера см. в OAuth-подписки.
Режим Gateway Auth
Заголовок раздела «Режим Gateway Auth»При использовании OAuth-профилей Claudex устанавливает ANTHROPIC_AUTH_TOKEN (а не ANTHROPIC_API_KEY) при запуске Claude Code. Это предотвращает конфликты с собственным механизмом входа Claude Code по подписке, который внутренне использует ANTHROPIC_API_KEY.
Прокси автоматически обновляет OAuth-токены до их истечения. Вы также можете обновить вручную:
claudex auth refresh openaiQuery-параметры
Заголовок раздела «Query-параметры»Некоторые провайдеры требуют URL query-параметры (например, api-version у Azure OpenAI). Используйте таблицу [profiles.query_params]:
[[profiles]]name = "azure-openai"provider_type = "OpenAICompatible"base_url = "https://YOUR_RESOURCE.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT"api_key = "YOUR_AZURE_KEY"default_model = "gpt-4o"
[profiles.query_params]api-version = "2024-12-01-preview"Claudex добавляет эти параметры к каждому URL запроса для профиля. Azure OpenAI автоматически определяется по base_url, содержащему openai.azure.com, и использует заголовок api-key для аутентификации вместо Authorization: Bearer.
Фильтрация параметров
Заголовок раздела «Фильтрация параметров»Некоторые провайдеры не поддерживают определённые параметры (например, ChatGPT Codex endpoint отклоняет temperature, top_p). Поле strip_params определяет, какие параметры удаляются перед отправкой:
strip_params = "auto" # автоопределение и удаление неподдерживаемых параметров (по умолчанию)strip_params = "none" # отправлять все параметры как естьstrip_params = ["temperature", "top_p", "top_k"] # удалить конкретные параметрыПри значении "auto" Claudex распознаёт известные endpoint-ы (например, chatgpt.com) и удаляет параметры, которые вызвали бы ошибки.
Маппинг слотов моделей
Заголовок раздела «Маппинг слотов моделей»Claude Code имеет встроенный переключатель /model с тремя слотами: haiku, sonnet и opus. См. Маппинг слотов моделей для подробностей.
Совместимость имён инструментов
Заголовок раздела «Совместимость имён инструментов»Некоторые провайдеры (в частности OpenAI) устанавливают лимит в 64 символа для имён инструментов (функций). Claude Code может генерировать имена инструментов, превышающие этот лимит.
Claudex автоматически усекает имена инструментов длиннее 64 символов при отправке запросов OpenAI-совместимым провайдерам и прозрачно восстанавливает оригинальные имена при обработке ответов. Этот цикл полностью прозрачен.
Неинтерактивный режим
Заголовок раздела «Неинтерактивный режим»Claudex поддерживает одиночное (неинтерактивное) выполнение для использования в CI/CD-конвейерах, скриптах и автоматизации:
# Вывести ответ и завершитьclaudex run grok "Explain this codebase" --print
# Пропустить все запросы разрешений (для полностью автоматизированных конвейеров)claudex run grok "Fix lint errors" --print --dangerously-skip-permissionsВ неинтерактивном режиме логи записываются в файлы логов для каждого инстанса по пути ~/Library/Caches/claudex/proxy-{timestamp}-{pid}.log вместо stderr, сохраняя чистый stdout для пайпинга и автоматизации.
Терминальные гиперссылки
Заголовок раздела «Терминальные гиперссылки»Claudex поддерживает кликабельные OSC 8 гиперссылки в терминальном выводе. См. Терминальные гиперссылки для подробностей.
# "auto" определяет поддержку терминала; true/false принудительно включают/выключаютhyperlinks = "auto"Конфигурационные наборы
Заголовок раздела «Конфигурационные наборы»Установка повторно используемых пакетов правил, навыков и MCP-серверов. См. Конфигурационные наборы для подробностей.
claudex sets add ./my-setclaudex sets listПолный пример
Заголовок раздела «Полный пример»См. config.example.toml для полного конфигурационного файла со всеми провайдерами и опциями.
Для пошаговых инструкций по настройке каждого провайдера (включая ссылки на API-ключи и OAuth-потоки) см. Руководство по настройке провайдеров.