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

Для 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 для выбранной модели. Не используйте общий командный ключ или старую группу из чужого примера: настройки ниже предполагают, что у вас уже есть свой подходящий ключ.
Какие два значения нужны
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. Уберите конфликтующие переменные
Перед настройкой посмотрите, не остались ли старые значения:
Не выводите сам токен. Если переменные заданы в текущем shell и должны уступить конфигурационному файлу, очистите их:
Затем проверьте ~/.zshrc, ~/.bashrc, .env, настройки IDE и менеджер провайдеров. Переменная, унаследованная уже запущенным процессом, может продолжать действовать даже после изменения файла.
Шаг 2. Добавьте пользовательскую конфигурацию
Согласно официальному справочнику Claude Code, пользовательские настройки находятся в ~/.claude/settings.json, проектные — в .claude/settings.json, а локальные проектные — в .claude/settings.local.json.
Для BetterToken добавьте:
Замените только YOUR_API_KEY. Если файл уже содержит permissions, hooks, plugins или другие поля, не перезаписывайте его целиком — добавьте или объедините объект env, сохранив валидный JSON.
Ограничьте доступ к файлу, а затем убедитесь, что права применились:
В выводе не должно быть прав чтения или записи для группы и остальных пользователей. Не прикладывайте файл целиком к issue. Для командной настройки не публикуйте общий рабочий токен: каждый пользователь должен использовать собственный ключ.
Шаг 3. Перезапустите Claude Code
Полностью завершите текущий процесс и запустите claude снова. Новая вкладка терминала без перезапуска уже работающего Claude Code недостаточна: процесс сохраняет окружение, которое получил при старте.
Если вы используете расширение VS Code, у него отдельная точка настройки — claudeCode.environmentVariables в VS Code settings.json. Не рассчитывайте, что терминальный shell и Extension всегда читают один и тот же набор переменных.
Шаг 4. Проверьте подключение маленькой задачей
Запустите Claude Code в тестовой папке и дайте безопасный запрос:
Перед запросом запомните текущее время. Настройка работает, если:
- ответ пришёл без
401,403,ConnectionRefusedиmodel not found; - в BetterToken Workspace появилась новая запись с временем после запуска теста;
- в этой записи видны ожидаемые модель, статус и расход;
- Claude Code не вернулся к старому provider после перезапуска.
Сам по себе успешный ответ ещё не доказывает маршрут: при конфликте Claude Code мог использовать другой provider. Подтверждением служит новая запись тестового запроса в Workspace с временем после теста. Только после этой проверки открывайте рабочий репозиторий.
Как найти конфликт настроек
Не полагайтесь на универсальный порядок приоритета: эффективная конфигурация зависит от способа запуска, managed policy и уже унаследованного окружения процесса. Сначала найдите все источники, где вообще заданы нужные имена:
Команда показывает только имена файлов, а не значение токена. Проверьте также 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, выберите свой клиент и сверяйте поля по одному, а не заменяйте конфигурацию целиком.