Как настроить ANTHROPIC_BASE_URL и API-ключ в Claude Code

Где задать ANTHROPIC_BASE_URL и ANTHROPIC_AUTH_TOKEN, как избежать конфликта настроек и проверить подключение без утечки ключа.

Как настроить ANTHROPIC_BASE_URL и API-ключ в Claude Code

Для Claude Code с BetterToken задайте ANTHROPIC_BASE_URL=https://bettertoken.ai без /v1 и передайте свой API Key через ANTHROPIC_AUTH_TOKEN. Удобнее хранить эти значения в пользовательском ~/.claude/settings.json: они будут действовать во всех проектах, а ключ не придётся добавлять в каждый репозиторий.

Готовый поддерживаемый пример и варианты для VS Code собраны в актуальной инструкции BetterToken для Claude Code. BetterToken в этой схеме предоставляет отдельный API-доступ с оплатой по мере использования; он не превращает API Key в подписку Claude и не меняет правила аккаунта Anthropic.

Если ключа ещё нет, сначала войдите в BetterToken Workspace, создайте собственный API Key и в текущей инструкции проверьте требуемую группу или mapping для выбранной модели. Не используйте общий командный ключ или старую группу из чужого примера: настройки ниже предполагают, что у вас уже есть свой подходящий ключ.

Какие два значения нужны

ПолеЗначение для BetterTokenЧастая ошибка
ANTHROPIC_BASE_URLhttps://bettertoken.aiДобавить /v1, предназначенный для OpenAI-compatible клиентов
ANTHROPIC_AUTH_TOKENYOUR_API_KEYВставить ключ с пробелом, кавычками из менеджера паролей или в публичный файл

Claude Code использует Anthropic-протокол. Поэтому его адрес отличается от Codex и других OpenAI-compatible клиентов, которым обычно нужен `https://www.bettertoken.ai/v1%60.?utm_source=blog&utm_medium=organic_content&utm_campaign=SEO-015&utm_content=anthropic-base-url-api-key-nastroyka

Шаг 1. Уберите конфликтующие переменные

Перед настройкой посмотрите, не остались ли старые значения:

printenv ANTHROPIC_BASE_URL test -n "$ANTHROPIC_AUTH_TOKEN" && echo "ANTHROPIC_AUTH_TOKEN is set"

Не выводите сам токен. Если переменные заданы в текущем shell и должны уступить конфигурационному файлу, очистите их:

unset ANTHROPIC_BASE_URL unset ANTHROPIC_AUTH_TOKEN

Затем проверьте ~/.zshrc, ~/.bashrc, .env, настройки IDE и менеджер провайдеров. Переменная, унаследованная уже запущенным процессом, может продолжать действовать даже после изменения файла.

Шаг 2. Добавьте пользовательскую конфигурацию

Согласно официальному справочнику Claude Code, пользовательские настройки находятся в ~/.claude/settings.json, проектные — в .claude/settings.json, а локальные проектные — в .claude/settings.local.json.

Для BetterToken добавьте:

{ "env": { "ANTHROPIC_BASE_URL": "https://bettertoken.ai/?utm_source=blog&utm_medium=organic_content&utm_campaign=SEO-015&utm_content=anthropic-base-url-api-key-nastroyka", "ANTHROPIC_AUTH_TOKEN": "YOUR_API_KEY", "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1", "API_TIMEOUT_MS": "3000000" } }

Замените только YOUR_API_KEY. Если файл уже содержит permissions, hooks, plugins или другие поля, не перезаписывайте его целиком — добавьте или объедините объект env, сохранив валидный JSON.

Ограничьте доступ к файлу, а затем убедитесь, что права применились:

chmod 600 ~/.claude/settings.json ls -l ~/.claude/settings.json

В выводе не должно быть прав чтения или записи для группы и остальных пользователей. Не прикладывайте файл целиком к issue. Для командной настройки не публикуйте общий рабочий токен: каждый пользователь должен использовать собственный ключ.

Шаг 3. Перезапустите Claude Code

Полностью завершите текущий процесс и запустите claude снова. Новая вкладка терминала без перезапуска уже работающего Claude Code недостаточна: процесс сохраняет окружение, которое получил при старте.

Если вы используете расширение VS Code, у него отдельная точка настройки — claudeCode.environmentVariables в VS Code settings.json. Не рассчитывайте, что терминальный shell и Extension всегда читают один и тот же набор переменных.

Шаг 4. Проверьте подключение маленькой задачей

Запустите Claude Code в тестовой папке и дайте безопасный запрос:

Ответь одной строкой: CLAUDE_PROVIDER_OK. Не изменяй файлы и не запускай команды.

Перед запросом запомните текущее время. Настройка работает, если:

  • ответ пришёл без 401, 403, ConnectionRefused и model not found;
  • в BetterToken Workspace появилась новая запись с временем после запуска теста;
  • в этой записи видны ожидаемые модель, статус и расход;
  • Claude Code не вернулся к старому provider после перезапуска.

Сам по себе успешный ответ ещё не доказывает маршрут: при конфликте Claude Code мог использовать другой provider. Подтверждением служит новая запись тестового запроса в Workspace с временем после теста. Только после этой проверки открывайте рабочий репозиторий.

Как найти конфликт настроек

Не полагайтесь на универсальный порядок приоритета: эффективная конфигурация зависит от способа запуска, managed policy и уже унаследованного окружения процесса. Сначала найдите все источники, где вообще заданы нужные имена:

printenv ANTHROPIC_BASE_URL test -n "$ANTHROPIC_AUTH_TOKEN" && echo "ANTHROPIC_AUTH_TOKEN is set" grep -lE '"ANTHROPIC_(BASE_URL|AUTH_TOKEN)"' \ ~/.claude/settings.json \ .claude/settings.json \ .claude/settings.local.json 2>/dev/null

Команда показывает только имена файлов, а не значение токена. Проверьте также managed settings организации, VS Code Extension и внешний менеджер provider, если они участвуют в запуске. Затем меняйте один источник за раз, полностью перезапускайте клиент и повторяйте маленький запрос с проверкой новой записи в Workspace.

Частые ошибки

ConnectionRefused или соединение с неверным endpoint

Проверьте адрес буквально: https://bettertoken.ai, без /v1, без /messages и без завершающего пробела. Клиент сам добавляет нужный путь.

401 или authentication failure

Создайте новый ключ при подозрении на утечку, скопируйте его без пробелов и убедитесь, что используется ANTHROPIC_AUTH_TOKEN, а не переменная для другого клиента. Не отправляйте токен в службу поддержки открытым текстом.

Изменения не применились

Закройте все процессы Claude Code, проверьте старые значения через printenv, затем снова запустите клиент. В VS Code выполните Reload Window или перезапустите Extension.

model not found

Не добавляйте случайный model ID из старой статьи. Для ключей и моделей, которым нужна явная mapping-конфигурация, скопируйте текущий ID из Setup или актуального варианта инструкции.

Короткий чек-лист

  • Claude Code Base URL не содержит /v1.
  • Реальный ключ не лежит в Git или скриншоте.
  • Все старые источники настроек найдены и проверены по одному.
  • Клиент полностью перезапущен.
  • Маленький read-only запрос виден в Workspace.

Если все пять пунктов выполнены, переходите к рабочей задаче. Если нет — откройте пошаговую настройку Claude Code, выберите свой клиент и сверяйте поля по одному, а не заменяйте конфигурацию целиком.

Готовы оптимизировать LLM workflow?

Подключите единый API, управляйте ключами и контролируйте расходы на AI-модели в BetterToken.