Настройки Claude Code
Настройте Claude Code с глобальными настройками уровня проекта и переменными окружения.
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 мы также поддерживаем корпоративные
управляемые настройки политики. Они имеют приоритет над пользовательскими настройками и настройками проекта. Системные администраторы могут развертывать политики в:
- macOS:
/Library/Application Support/ClaudeCode/managed-settings.json
- Linux и WSL:
/etc/claude-code/managed-settings.json
- Windows:
C:\ProgramData\ClaudeCode\managed-settings.json
- macOS:
Доступные настройки
settings.json
поддерживает ряд опций:
Ключ | Описание | Пример |
---|---|---|
apiKeyHelper | Пользовательский скрипт, выполняемый в /bin/sh , для генерации значения аутентификации. Это значение будет отправлено как заголовки X-Api-Key и 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 | См. таблицу ниже для структуры разрешений. | |
hooks | Настройка пользовательских команд для выполнения до или после выполнения инструментов. См. документацию по хукам | {"PreToolUse": {"Bash": "echo 'Running command...'"}} |
disableAllHooks | Отключить все хуки | true |
model | Переопределить модель по умолчанию для использования в Claude Code | "claude-3-5-sonnet-20241022" |
statusLine | Настроить пользовательскую строку состояния для отображения контекста. См. документацию statusLine | {"type": "command", "command": "~/.claude/statusline.sh"} |
outputStyle | Настроить стиль вывода для корректировки системного промпта. См. документацию по стилям вывода | "Explanatory" |
forceLoginMethod | Используйте claudeai для ограничения входа учетными записями Claude.ai, console для ограничения входа учетными записями Anthropic Console (биллинг использования API) | claudeai |
forceLoginOrgUUID | Укажите UUID организации для автоматического выбора во время входа, минуя шаг выбора организации. Требует установки forceLoginMethod | "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" |
enableAllProjectMcpServers | Автоматически одобрять все MCP серверы, определенные в файлах проекта .mcp.json | true |
enabledMcpjsonServers | Список конкретных MCP серверов из файлов .mcp.json для одобрения | ["memory", "github"] |
disabledMcpjsonServers | Список конкретных MCP серверов из файлов .mcp.json для отклонения | ["filesystem"] |
awsAuthRefresh | Пользовательский скрипт, который изменяет директорию .aws (см. расширенная конфигурация учетных данных) | aws sso login --profile myprofile |
awsCredentialExport | Пользовательский скрипт, который выводит JSON с учетными данными AWS (см. расширенная конфигурация учетных данных) | /bin/generate_aws_grant.sh |
Настройки разрешений
Ключи | Описание | Пример |
---|---|---|
allow | Массив правил разрешений для разрешения использования инструментов. Примечание: Правила Bash используют сопоставление префиксов, а не регулярные выражения | [ "Bash(git diff:*)" ] |
ask | Массив правил разрешений для запроса подтверждения при использовании инструмента. | [ "Bash(git push:*)" ] |
deny | Массив правил разрешений для запрета использования инструментов. Используйте это также для исключения чувствительных файлов из доступа Claude Code. Примечание: Шаблоны Bash являются сопоставлениями префиксов и могут быть обойдены (см. ограничения разрешений Bash) | [ "WebFetch", "Bash(curl:*)", "Read(./.env)", "Read(./secrets/**)" ] |
additionalDirectories | Дополнительные рабочие директории, к которым Claude имеет доступ | [ "../docs/" ] |
defaultMode | Режим разрешений по умолчанию при открытии Claude Code | "acceptEdits" |
disableBypassPermissionsMode | Установите в "disable" для предотвращения активации режима bypassPermissions . См. настройки управляемой политики | "disable" |
Приоритет настроек
Настройки применяются в порядке приоритета (от высшего к низшему):
-
Корпоративные управляемые политики (
managed-settings.json
)- Развертываются IT/DevOps
- Не могут быть переопределены
-
Аргументы командной строки
- Временные переопределения для конкретной сессии
-
Локальные настройки проекта (
.claude/settings.local.json
)- Личные настройки конкретного проекта
-
Общие настройки проекта (
.claude/settings.json
)- Настройки проекта, общие для команды в системе контроля версий
-
Пользовательские настройки (
~/.claude/settings.json
)- Личные глобальные настройки
Эта иерархия гарантирует, что корпоративные политики безопасности всегда соблюдаются, при этом позволяя командам и отдельным лицам настраивать свой опыт.
Ключевые моменты о системе конфигурации
- Файлы памяти (CLAUDE.md): Содержат инструкции и контекст, которые Claude загружает при запуске
- Файлы настроек (JSON): Настраивают разрешения, переменные окружения и поведение инструментов
- Слэш-команды: Пользовательские команды, которые могут быть вызваны во время сессии с помощью
/command-name
- MCP серверы: Расширяют Claude Code дополнительными инструментами и интеграциями
- Приоритет: Конфигурации более высокого уровня (Корпоративные) переопределяют конфигурации более низкого уровня (Пользователь/Проект)
- Наследование: Настройки объединяются, при этом более специфичные настройки добавляются к более широким или переопределяют их
Доступность системного промпта
В отличие от claude.ai, мы не публикуем внутренний системный промпт Claude Code на этом веб-сайте. Используйте файлы CLAUDE.md или --append-system-prompt
для добавления пользовательских инструкций к поведению Claude Code.
Исключение чувствительных файлов
Чтобы предотвратить доступ Claude Code к файлам, содержащим чувствительную информацию (например, API ключи, секреты, файлы окружения), используйте настройку permissions.deny
в вашем файле .claude/settings.json
:
Это заменяет устаревшую конфигурацию ignorePatterns
. Файлы, соответствующие этим шаблонам, будут полностью невидимы для Claude Code, предотвращая любое случайное раскрытие чувствительных данных.
Конфигурация субагентов
Claude Code поддерживает пользовательских AI субагентов, которые могут быть настроены как на уровне пользователя, так и на уровне проекта. Эти субагенты хранятся как файлы Markdown с YAML frontmatter:
- Пользовательские субагенты:
~/.claude/agents/
- Доступны во всех ваших проектах - Субагенты проекта:
.claude/agents/
- Специфичны для вашего проекта и могут быть переданы вашей команде
Файлы субагентов определяют специализированных AI помощников с пользовательскими промптами и разрешениями инструментов. Узнайте больше о создании и использовании субагентов в документации по субагентам.
Переменные окружения
Claude Code поддерживает следующие переменные окружения для управления своим поведением:
Все переменные окружения также могут быть настроены в settings.json
. Это полезно как способ автоматической установки переменных окружения для каждой сессии или для развертывания набора переменных окружения для всей вашей команды или организации.
Переменная | Назначение |
---|---|
ANTHROPIC_API_KEY | API ключ, отправляемый как заголовок X-Api-Key , обычно для Claude SDK (для интерактивного использования выполните /login ) |
ANTHROPIC_AUTH_TOKEN | Пользовательское значение для заголовка Authorization (значение, которое вы здесь установите, будет префиксировано Bearer ) |
ANTHROPIC_CUSTOM_HEADERS | Пользовательские заголовки, которые вы хотите добавить к запросу (в формате Name: Value ) |
ANTHROPIC_DEFAULT_HAIKU_MODEL | См. Конфигурация модели |
ANTHROPIC_DEFAULT_OPUS_MODEL | См. Конфигурация модели |
ANTHROPIC_DEFAULT_SONNET_MODEL | См. Конфигурация модели |
ANTHROPIC_MODEL | Название настройки модели для использования (см. Конфигурация модели) |
ANTHROPIC_SMALL_FAST_MODEL | [УСТАРЕЛО] Название модели класса Haiku для фоновых задач |
ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION | Переопределить регион AWS для модели класса Haiku при использовании Bedrock |
AWS_BEARER_TOKEN_BEDROCK | API ключ Bedrock для аутентификации (см. API ключи Bedrock) |
BASH_DEFAULT_TIMEOUT_MS | Таймаут по умолчанию для долго выполняющихся bash команд |
BASH_MAX_OUTPUT_LENGTH | Максимальное количество символов в выводах bash до их усечения посередине |
BASH_MAX_TIMEOUT_MS | Максимальный таймаут, который модель может установить для долго выполняющихся bash команд |
CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR | Возвращаться в исходную рабочую директорию после каждой команды Bash |
CLAUDE_CODE_API_KEY_HELPER_TTL_MS | Интервал в миллисекундах, с которым должны обновляться учетные данные (при использовании apiKeyHelper ) |
CLAUDE_CODE_CLIENT_CERT | Путь к файлу клиентского сертификата для mTLS аутентификации |
CLAUDE_CODE_CLIENT_KEY_PASSPHRASE | Парольная фраза для зашифрованного CLAUDE_CODE_CLIENT_KEY (опционально) |
CLAUDE_CODE_CLIENT_KEY | Путь к файлу приватного ключа клиента для mTLS аутентификации |
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC | Эквивалент установки DISABLE_AUTOUPDATER , DISABLE_BUG_COMMAND , DISABLE_ERROR_REPORTING , и DISABLE_TELEMETRY |
CLAUDE_CODE_DISABLE_TERMINAL_TITLE | Установите в 1 для отключения автоматических обновлений заголовка терминала на основе контекста разговора |
CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL | Пропустить автоматическую установку расширений IDE |
CLAUDE_CODE_MAX_OUTPUT_TOKENS | Установить максимальное количество выходных токенов для большинства запросов |
CLAUDE_CODE_SKIP_BEDROCK_AUTH | Пропустить аутентификацию AWS для Bedrock (например, при использовании LLM шлюза) |
CLAUDE_CODE_SKIP_VERTEX_AUTH | Пропустить аутентификацию Google для Vertex (например, при использовании LLM шлюза) |
CLAUDE_CODE_SUBAGENT_MODEL | См. Конфигурация модели |
CLAUDE_CODE_USE_BEDROCK | Использовать Bedrock |
CLAUDE_CODE_USE_VERTEX | Использовать Vertex |
DISABLE_AUTOUPDATER | Установите в 1 для отключения автоматических обновлений. Это имеет приоритет над настройкой конфигурации autoUpdates . |
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_MCP_OUTPUT_TOKENS | Максимальное количество токенов, разрешенное в ответах инструментов MCP. Claude Code отображает предупреждение, когда вывод превышает 10,000 токенов (по умолчанию: 25000) |
MAX_THINKING_TOKENS | Принудительно установить бюджет размышлений для модели |
MCP_TIMEOUT | Таймаут в миллисекундах для запуска MCP сервера |
MCP_TOOL_TIMEOUT | Таймаут в миллисекундах для выполнения инструмента MCP |
NO_PROXY | Список доменов и IP, к которым запросы будут отправляться напрямую, минуя прокси |
USE_BUILTIN_RIPGREP | Установите в 0 для использования системно установленного rg вместо rg , включенного в Claude Code |
VERTEX_REGION_CLAUDE_3_5_HAIKU | Переопределить регион для Claude 3.5 Haiku при использовании Vertex AI |
VERTEX_REGION_CLAUDE_3_5_SONNET | Переопределить регион для Claude Sonnet 3.5 при использовании Vertex AI |
VERTEX_REGION_CLAUDE_3_7_SONNET | Переопределить регион для Claude 3.7 Sonnet при использовании Vertex AI |
VERTEX_REGION_CLAUDE_4_0_OPUS | Переопределить регион для Claude 4.0 Opus при использовании Vertex AI |
VERTEX_REGION_CLAUDE_4_0_SONNET | Переопределить регион для Claude 4.0 Sonnet при использовании Vertex AI |
VERTEX_REGION_CLAUDE_4_1_OPUS | Переопределить регион для Claude 4.1 Opus при использовании Vertex AI |
Опции конфигурации
Для управления вашими конфигурациями используйте следующие команды:
- Список настроек:
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>
:
Ключ | Описание | Пример |
---|---|---|
autoUpdates | УСТАРЕЛО. Используйте переменную окружения DISABLE_AUTOUPDATER вместо этого. | false |
preferredNotifChannel | Где вы хотите получать уведомления (по умолчанию: iterm2 ) | iterm2 , iterm2_with_bell , terminal_bell , или notifications_disabled |
theme | Цветовая тема | dark , light , light-daltonized , или dark-daltonized |
verbose | Показывать ли полные выводы bash и команд (по умолчанию: false ) | true |
Инструменты, доступные Claude
Claude Code имеет доступ к набору мощных инструментов, которые помогают ему понимать и изменять вашу кодовую базу:
Инструмент | Описание | Требуется разрешение |
---|---|---|
Bash | Выполняет команды оболочки в вашей среде | Да |
Edit | Делает целевые правки в конкретных файлах | Да |
Glob | Находит файлы на основе сопоставления шаблонов | Нет |
Grep | Ищет шаблоны в содержимом файлов | Нет |
MultiEdit | Выполняет множественные правки в одном файле атомарно | Да |
NotebookEdit | Изменяет ячейки Jupyter notebook | Да |
NotebookRead | Читает и отображает содержимое Jupyter notebook | Нет |
Read | Читает содержимое файлов | Нет |
Task | Запускает субагента для обработки сложных, многошаговых задач | Нет |
TodoWrite | Создает и управляет структурированными списками задач | Нет |
WebFetch | Получает содержимое с указанного URL | Да |
WebSearch | Выполняет веб-поиски с фильтрацией доменов | Да |
Write | Создает или перезаписывает файлы | Да |
Правила разрешений могут быть настроены с помощью /allowed-tools
или в настройках разрешений. Также см. Правила разрешений для конкретных инструментов.
Расширение инструментов с помощью хуков
Вы можете запускать пользовательские команды до или после выполнения любого инструмента, используя хуки Claude Code.
Например, вы можете автоматически запускать форматировщик Python после того, как Claude изменит файлы Python, или предотвратить изменения в конфигурационных файлах продакшена, блокируя операции Write для определенных путей.
См. также
- Управление идентификацией и доступом - Узнайте о системе разрешений Claude Code
- IAM и контроль доступа - Управление корпоративными политиками
- Устранение неполадок - Решения для общих проблем конфигурации