Claude Code предлагает множество настроек для конфигурации своего поведения в соответствии с вашими потребностями. Вы можете настроить Claude Code, выполнив команду /config при использовании интерактивного REPL.

Файлы настроек

Файл settings.json является нашим официальным механизмом для настройки Claude Code через иерархические настройки:

  • Пользовательские настройки определяются в ~/.claude/settings.json и применяются ко всем проектам.
  • Настройки проекта сохраняются в директории вашего проекта:
    • .claude/settings.json для настроек, которые включаются в систему контроля версий и делятся с вашей командой
    • .claude/settings.local.json для настроек, которые не включаются в систему контроля версий, полезно для личных предпочтений и экспериментов. Claude Code настроит git игнорировать .claude/settings.local.json при его создании.
  • Для корпоративных развертываний Claude Code мы также поддерживаем корпоративные управляемые настройки политик. Они имеют приоритет над пользовательскими настройками и настройками проекта. Системные администраторы могут развертывать политики в /Library/Application Support/ClaudeCode/policies.json на macOS и /etc/claude-code/policies.json на Linux и Windows через WSL.
Example settings.json
{
  "permissions": {
    "allow": [
      "Bash(npm run lint)",
      "Bash(npm run test:*)",
      "Read(~/.zshrc)"
    ],
    "deny": [
      "Bash(curl:*)"
    ]
  },
  "env": {
    "CLAUDE_CODE_ENABLE_TELEMETRY": "1",
    "OTEL_METRICS_EXPORTER": "otlp"
  }
}

Доступные настройки

settings.json поддерживает ряд опций:

КлючОписаниеПример
apiKeyHelperПользовательский скрипт, который будет выполнен в /bin/sh, для генерации значения аутентификации. Это значение обычно будет отправлено как заголовки X-Api-Key, Authorization: Bearer и Proxy-Authorization: Bearer для запросов к модели/bin/generate_temp_api_key.sh
cleanupPeriodDaysКак долго локально хранить транскрипты чатов (по умолчанию: 30 дней)20
envПеременные окружения, которые будут применяться к каждой сессии{"FOO": "bar"}
includeCoAuthoredByВключать ли строку co-authored-by Claude в git коммиты и pull request’ы (по умолчанию: true)false
permissionsКлючи allow и deny представляют собой список правил разрешений{"allow": [ "Bash(npm run lint)" ]}

Приоритет настроек

Настройки применяются в порядке приоритета:

  1. Корпоративные политики (см. документацию IAM)
  2. Аргументы командной строки
  3. Локальные настройки проекта
  4. Общие настройки проекта
  5. Пользовательские настройки

Переменные окружения

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

Все переменные окружения также могут быть настроены в settings.json. Это полезно как способ автоматически устанавливать переменные окружения для каждой сессии или для развертывания набора переменных окружения для всей вашей команды или организации.

ПеременнаяНазначение
ANTHROPIC_API_KEYAPI ключ, отправляемый как заголовок X-Api-Key, обычно для Claude SDK (для интерактивного использования выполните /login)
ANTHROPIC_AUTH_TOKENПользовательское значение для заголовков Authorization и Proxy-Authorization (значение, которое вы здесь установите, будет дополнено префиксом Bearer )
ANTHROPIC_CUSTOM_HEADERSПользовательские заголовки, которые вы хотите добавить к запросу (в формате Name: Value)
ANTHROPIC_MODELИмя пользовательской модели для использования (см. Конфигурация модели)
ANTHROPIC_SMALL_FAST_MODELИмя модели класса Haiku для фоновых задач
BASH_DEFAULT_TIMEOUT_MSТаймаут по умолчанию для долго выполняющихся bash команд
BASH_MAX_TIMEOUT_MSМаксимальный таймаут, который модель может установить для долго выполняющихся bash команд
BASH_MAX_OUTPUT_LENGTHМаксимальное количество символов в выводе bash перед их обрезкой посередине
CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIRВозвращаться к исходной рабочей директории после каждой Bash команды
CLAUDE_CODE_API_KEY_HELPER_TTL_MSИнтервал в миллисекундах, с которым должны обновляться учетные данные (при использовании apiKeyHelper)
CLAUDE_CODE_MAX_OUTPUT_TOKENSУстановить максимальное количество выходных токенов для большинства запросов
CLAUDE_CODE_USE_BEDROCKИспользовать Bedrock (см. Bedrock & Vertex)
CLAUDE_CODE_USE_VERTEXИспользовать Vertex (см. Bedrock & Vertex)
CLAUDE_CODE_SKIP_BEDROCK_AUTHПропустить аутентификацию AWS для Bedrock (например, при использовании LLM шлюза)
CLAUDE_CODE_SKIP_VERTEX_AUTHПропустить аутентификацию Google для Vertex (например, при использовании LLM шлюза)
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFICЭквивалент установки DISABLE_AUTOUPDATER, DISABLE_BUG_COMMAND, DISABLE_ERROR_REPORTING и DISABLE_TELEMETRY
DISABLE_AUTOUPDATERУстановить в 1 для отключения автоматического обновления
DISABLE_BUG_COMMANDУстановить в 1 для отключения команды /bug
DISABLE_COST_WARNINGSУстановить в 1 для отключения предупреждений о стоимости
DISABLE_ERROR_REPORTINGУстановить в 1 для отказа от отчетов об ошибках Sentry
DISABLE_NON_ESSENTIAL_MODEL_CALLSУстановить в 1 для отключения вызовов модели для некритических путей, таких как вкусовой текст
DISABLE_TELEMETRYУстановить в 1 для отказа от телеметрии Statsig (обратите внимание, что события Statsig не включают пользовательские данные, такие как код, пути к файлам или bash команды)
HTTP_PROXYУказать HTTP прокси-сервер для сетевых соединений
HTTPS_PROXYУказать HTTPS прокси-сервер для сетевых соединений
MAX_THINKING_TOKENSПринудительно установить бюджет размышлений для модели
MCP_TIMEOUTТаймаут в миллисекундах для запуска MCP сервера
MCP_TOOL_TIMEOUTТаймаут в миллисекундах для выполнения MCP инструментов
MAX_MCP_OUTPUT_TOKENSМаксимальное количество токенов, разрешенное в ответах MCP инструментов (по умолчанию: 25000)

Опции конфигурации

Мы находимся в процессе миграции глобальной конфигурации в settings.json.

claude config будет устаревшим в пользу settings.json

Для управления вашими конфигурациями используйте следующие команды:

  • Список настроек: claude config list
  • Посмотреть настройку: claude config get <key>
  • Изменить настройку: claude config set <key> <value>
  • Добавить к настройке (для списков): claude config add <key> <value>
  • Удалить из настройки (для списков): claude config remove <key> <value>

По умолчанию config изменяет конфигурацию вашего проекта. Для управления глобальной конфигурацией используйте флаг --global (или -g).

Глобальная конфигурация

Для установки глобальной конфигурации используйте claude config set -g <key> <value>:

КлючОписаниеПример
autoUpdaterStatusВключить или отключить автообновление (по умолчанию: enabled)disabled
preferredNotifChannelГде вы хотите получать уведомления (по умолчанию: iterm2)iterm2, iterm2_with_bell, terminal_bell или notifications_disabled
themeЦветовая темаdark, light, light-daltonized или dark-daltonized
verboseПоказывать ли полный вывод bash и команд (по умолчанию: false)true

Инструменты, доступные Claude

Claude Code имеет доступ к набору мощных инструментов, которые помогают ему понимать и изменять вашу кодовую базу:

ИнструментОписаниеТребуется разрешение
AgentЗапускает под-агента для обработки сложных, многошаговых задачНет
BashВыполняет команды оболочки в вашей средеДа
EditДелает целевые правки в конкретных файлахДа
GlobНаходит файлы на основе сопоставления шаблоновНет
GrepИщет шаблоны в содержимом файловНет
LSПеречисляет файлы и директорииНет
MultiEditВыполняет множественные правки в одном файле атомарноДа
NotebookEditИзменяет ячейки Jupyter notebookДа
NotebookReadЧитает и отображает содержимое Jupyter notebookНет
ReadЧитает содержимое файловНет
TodoReadЧитает список задач текущей сессииНет
TodoWriteСоздает и управляет структурированными списками задачНет
WebFetchПолучает содержимое с указанного URLДа
WebSearchВыполняет веб-поиск с фильтрацией доменовДа
WriteСоздает или перезаписывает файлыДа

Правила разрешений могут быть настроены с помощью /allowed-tools или в настройках разрешений.

См. также