Перейти к основному содержанию
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
  • Корпоративные развертывания также могут настраивать управляемые серверы MCP, которые переопределяют серверы, настроенные пользователем. См. Конфигурация MCP предприятия:
    • macOS: /Library/Application Support/ClaudeCode/managed-mcp.json
    • Linux и WSL: /etc/claude-code/managed-mcp.json
    • Windows: C:\ProgramData\ClaudeCode\managed-mcp.json
Example settings.json
{
  "permissions": {
    "allow": [
      "Bash(npm run lint)",
      "Bash(npm run test:*)",
      "Read(~/.zshrc)"
    ],
    "deny": [
      "Bash(curl:*)",
      "Read(./.env)",
      "Read(./.env.*)",
      "Read(./secrets/**)"
    ]
  },
  "env": {
    "CLAUDE_CODE_ENABLE_TELEMETRY": "1",
    "OTEL_METRICS_EXPORTER": "otlp"
  },
  "companyAnnouncements": [
    "Welcome to Acme Corp! Review our code guidelines at docs.acme.com",
    "Reminder: Code reviews required for all PRs",
    "New security policy in effect"
  ]
}

Доступные параметры

settings.json поддерживает ряд опций:
КлючОписаниеПример
apiKeyHelperПользовательский скрипт, который будет выполнен в /bin/sh, для генерации значения аутентификации. Это значение будет отправлено как заголовки X-Api-Key и Authorization: Bearer для запросов модели/bin/generate_temp_api_key.sh
cleanupPeriodDaysСессии, неактивные дольше этого периода, удаляются при запуске. При значении 0 немедленно удаляются все сессии. (по умолчанию: 30 дней)20
companyAnnouncementsОбъявление для отображения пользователям при запуске. Если предоставлено несколько объявлений, они будут циклически отображаться случайным образом.["Welcome to Acme Corp! Review our code guidelines at docs.acme.com"]
envПеременные окружения, которые будут применены к каждому сеансу{"FOO": "bar"}
includeCoAuthoredByВключать ли строку co-authored-by Claude в коммиты git и запросы на слияние (по умолчанию: true)false
permissionsСм. таблицу ниже для структуры разрешений.
hooksНастройте пользовательские команды для запуска до или после выполнения инструментов. См. документацию по hooks{"PreToolUse": {"Bash": "echo 'Running command...'"}}
disableAllHooksОтключить все hookstrue
modelПереопределить модель по умолчанию для использования в Claude Code"claude-sonnet-4-5-20250929"
statusLineНастройте пользовательскую строку состояния для отображения контекста. См. документацию statusLine{"type": "command", "command": "~/.claude/statusline.sh"}
outputStyleНастройте стиль вывода для изменения системного приглашения. См. документацию по стилям вывода"Explanatory"
forceLoginMethodИспользуйте claudeai для ограничения входа на учетные записи Claude.ai, console для ограничения входа на учетные записи Claude Console (выставление счетов за использование API)claudeai
forceLoginOrgUUIDУкажите UUID организации для автоматического выбора во время входа, пропуская этап выбора организации. Требует установки forceLoginMethod"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
enableAllProjectMcpServersАвтоматически одобрить все серверы MCP, определенные в файлах проекта .mcp.jsontrue
enabledMcpjsonServersСписок конкретных серверов MCP из файлов .mcp.json для одобрения["memory", "github"]
disabledMcpjsonServersСписок конкретных серверов MCP из файлов .mcp.json для отклонения["filesystem"]
allowedMcpServersЕсли установлено в managed-settings.json, список разрешенных серверов MCP, которые пользователи могут настраивать. Не определено = без ограничений, пустой массив = блокировка. Применяется ко всем областям. Список запрещенных имеет приоритет. См. Конфигурация MCP предприятия[{ "serverName": "github" }]
deniedMcpServersЕсли установлено в managed-settings.json, список запрещенных серверов MCP, которые явно заблокированы. Применяется ко всем областям, включая серверы предприятия. Список запрещенных имеет приоритет над списком разрешенных. См. Конфигурация MCP предприятия[{ "serverName": "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. Это отключает флаг командной строки --dangerously-skip-permissions. См. параметры управляемой политики"disable"

Параметры изоляции

Настройте расширенное поведение изоляции. Изоляция отделяет команды bash от вашей файловой системы и сети. См. Изоляция для получения подробной информации. Ограничения файловой системы и сети настраиваются через правила разрешений Read, Edit и WebFetch, а не через эти параметры изоляции.
КлючиОписаниеПример
enabledВключить изоляцию bash (только macOS/Linux). По умолчанию: falsetrue
autoAllowBashIfSandboxedАвтоматически одобрить команды bash при изоляции. По умолчанию: truetrue
excludedCommandsКоманды, которые должны выполняться вне изоляции["git", "docker"]
allowUnsandboxedCommandsРазрешить командам выполняться вне изоляции через параметр dangerouslyDisableSandbox. Если установлено значение false, люк dangerouslyDisableSandbox полностью отключен и все команды должны выполняться в изоляции (или находиться в excludedCommands). Полезно для корпоративных политик, требующих строгой изоляции. По умолчанию: truefalse
network.allowUnixSocketsПути сокетов Unix, доступные в изоляции (для SSH-агентов и т. д.)["~/.ssh/agent-socket"]
network.allowLocalBindingРазрешить привязку к портам localhost (только MacOS). По умолчанию: falsetrue
network.httpProxyPortПорт HTTP-прокси, используемый, если вы хотите использовать свой собственный прокси. Если не указано, Claude будет запускать свой собственный прокси.8080
network.socksProxyPortПорт прокси SOCKS5, используемый, если вы хотите использовать свой собственный прокси. Если не указано, Claude будет запускать свой собственный прокси.8081
enableWeakerNestedSandboxВключить более слабую изоляцию для непривилегированных сред Docker (только Linux). Снижает безопасность. По умолчанию: falsetrue
Пример конфигурации:
{
  "sandbox": {
    "enabled": true,
    "autoAllowBashIfSandboxed": true,
    "excludedCommands": ["docker"],
    "network": {
      "allowUnixSockets": [
        "/var/run/docker.sock"
      ],
      "allowLocalBinding": true
    }
  },
  "permissions": {
    "deny": [
      "Read(.envrc)",
      "Read(~/.aws/**)"
    ]
  }
}
Доступ к файловой системе контролируется через разрешения Read/Edit:
  • Правила отказа Read блокируют чтение файлов в изоляции
  • Правила разрешения Edit разрешают запись файлов (в дополнение к значениям по умолчанию, например текущему рабочему каталогу)
  • Правила отказа Edit блокируют запись в разрешенные пути
Доступ в сеть контролируется через разрешения WebFetch:
  • Правила разрешения WebFetch разрешают сетевые домены
  • Правила отказа WebFetch блокируют сетевые домены

Приоритет параметров

Параметры применяются в порядке приоритета (от наивысшего к наименьшему):
  1. Управляемые политики предприятия (managed-settings.json)
    • Развернуты IT/DevOps
    • Не могут быть переопределены
  2. Аргументы командной строки
    • Временные переопределения для конкретного сеанса
  3. Локальные параметры проекта (.claude/settings.local.json)
    • Личные параметры, специфичные для проекта
  4. Общие параметры проекта (.claude/settings.json)
    • Параметры проекта, совместно используемые командой в системе управления версиями
  5. Параметры пользователя (~/.claude/settings.json)
    • Личные глобальные параметры
Эта иерархия гарантирует, что политики безопасности предприятия всегда применяются, при этом позволяя командам и отдельным лицам настраивать свой опыт.

Ключевые моменты о системе конфигурации

  • Файлы памяти (CLAUDE.md): Содержат инструкции и контекст, которые Claude загружает при запуске
  • Файлы параметров (JSON): Настройте разрешения, переменные окружения и поведение инструментов
  • Косые команды: Пользовательские команды, которые можно вызвать во время сеанса с помощью /command-name
  • Серверы MCP: Расширьте Claude Code дополнительными инструментами и интеграциями
  • Приоритет: Конфигурации более высокого уровня (Enterprise) переопределяют конфигурации более низкого уровня (User/Project)
  • Наследование: Параметры объединяются, при этом более специфичные параметры добавляют или переопределяют более широкие

Доступность системного приглашения

В отличие от claude.ai, мы не публикуем внутреннее системное приглашение Claude Code на этом веб-сайте. Используйте файлы CLAUDE.md или --append-system-prompt для добавления пользовательских инструкций к поведению Claude Code.

Исключение конфиденциальных файлов

Чтобы предотвратить доступ Claude Code к файлам, содержащим конфиденциальную информацию (например, ключи API, секреты, файлы окружения), используйте параметр permissions.deny в вашем файле .claude/settings.json:
{
  "permissions": {
    "deny": [
      "Read(./.env)",
      "Read(./.env.*)",
      "Read(./secrets/**)",
      "Read(./config/credentials.json)",
      "Read(./build)"
    ]
  }
}
Это заменяет устаревшую конфигурацию ignorePatterns. Файлы, соответствующие этим шаблонам, будут полностью невидимы для Claude Code, предотвращая любое случайное раскрытие конфиденциальных данных.

Конфигурация подагента

Claude Code поддерживает пользовательские подагенты AI, которые можно настраивать на уровне пользователя и проекта. Эти подагенты хранятся как файлы Markdown с фронтматтером YAML:
  • Подагенты пользователя: ~/.claude/agents/ - Доступны во всех ваших проектах
  • Подагенты проекта: .claude/agents/ - Специфичны для вашего проекта и могут быть совместно использованы с вашей командой
Файлы подагентов определяют специализированных помощников AI с пользовательскими приглашениями и разрешениями инструментов. Узнайте больше о создании и использовании подагентов в документации подагентов.

Конфигурация плагинов

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

Параметры плагинов

Параметры, связанные с плагинами, в settings.json:
{
  "enabledPlugins": {
    "formatter@company-tools": true,
    "deployer@company-tools": true,
    "analyzer@security-plugins": false
  },
  "extraKnownMarketplaces": {
    "company-tools": {
      "source": "github",
      "repo": "company/claude-plugins"
    }
  }
}

enabledPlugins

Контролирует, какие плагины включены. Формат: "plugin-name@marketplace-name": true/false Области:
  • Параметры пользователя (~/.claude/settings.json): Личные предпочтения плагинов
  • Параметры проекта (.claude/settings.json): Плагины, специфичные для проекта, совместно используемые с командой
  • Локальные параметры (.claude/settings.local.json): Переопределения для каждой машины (не зафиксированы)
Пример:
{
  "enabledPlugins": {
    "code-formatter@team-tools": true,
    "deployment-tools@team-tools": true,
    "experimental-features@personal": false
  }
}

extraKnownMarketplaces

Определяет дополнительные маркетплейсы, которые должны быть доступны для репозитория. Обычно используется в параметрах уровня репозитория для обеспечения доступа членов команды к требуемым источникам плагинов. Когда репозиторий включает extraKnownMarketplaces:
  1. Членам команды предлагается установить маркетплейс при доверии папке
  2. Затем членам команды предлагается установить плагины из этого маркетплейса
  3. Пользователи могут пропустить нежелательные маркетплейсы или плагины (сохранено в параметрах пользователя)
  4. Установка соблюдает границы доверия и требует явного согласия
Пример:
{
  "extraKnownMarketplaces": {
    "company-tools": {
      "source": {
        "source": "github",
        "repo": "company-org/claude-plugins"
      }
    },
    "security-plugins": {
      "source": {
        "source": "git",
        "url": "https://git.company.com/security/plugins.git"
      }
    }
  }
}
Типы источников маркетплейса:
  • github: Репозиторий GitHub (использует repo)
  • git: Любой URL git (использует url)
  • directory: Путь локальной файловой системы (использует path, только для разработки)

Управление плагинами

Используйте команду /plugin для интерактивного управления плагинами:
  • Просмотрите доступные плагины из маркетплейсов
  • Установите/удалите плагины
  • Включите/отключите плагины
  • Просмотрите детали плагина (предоставляемые команды, агенты, hooks)
  • Добавьте/удалите маркетплейсы
Узнайте больше о системе плагинов в документации плагинов.

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

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_SHELL_PREFIXПрефикс команды для обёртывания всех bash-команд (например, для ведения журнала или аудита). Пример: /path/to/logger.sh выполнит /path/to/logger.sh <команда>
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_PROMPT_CACHINGУстановите значение 1 для отключения кэширования приглашений для всех моделей (имеет приоритет над параметрами для каждой модели)
DISABLE_PROMPT_CACHING_HAIKUУстановите значение 1 для отключения кэширования приглашений для моделей Haiku
DISABLE_PROMPT_CACHING_OPUSУстановите значение 1 для отключения кэширования приглашений для моделей Opus
DISABLE_PROMPT_CACHING_SONNETУстановите значение 1 для отключения кэширования приглашений для моделей Sonnet
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-адресов, к которым запросы будут отправляться напрямую, обходя прокси
SLASH_COMMAND_TOOL_CHAR_BUDGETМаксимальное количество символов для метаданных косой команды, показанных инструменту SlashCommand (по умолчанию: 15000)
USE_BUILTIN_RIPGREPУстановите значение 0 для использования системно установленного rg вместо rg, включенного в Claude Code
VERTEX_REGION_CLAUDE_3_5_HAIKUПереопределить регион для Claude 3.5 Haiku при использовании 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

Claude Code имеет доступ к набору мощных инструментов, которые помогают ему понять и изменить вашу кодовую базу:
ИнструментОписаниеТребуется разрешение
BashВыполняет команды оболочки в вашей средеДа
EditВносит целевые изменения в определенные файлыДа
GlobНаходит файлы на основе сопоставления шаблоновНет
GrepИщет шаблоны в содержимом файловНет
NotebookEditИзменяет ячейки Jupyter notebookДа
NotebookReadЧитает и отображает содержимое Jupyter notebookНет
ReadЧитает содержимое файловНет
SlashCommandЗапускает пользовательскую косую командуДа
TaskЗапускает подагента для обработки сложных многошаговых задачНет
TodoWriteСоздает и управляет структурированными списками задачНет
WebFetchПолучает содержимое с указанного URLДа
WebSearchВыполняет веб-поиск с фильтрацией доменаДа
WriteСоздает или перезаписывает файлыДа
Правила разрешений можно настроить с помощью /allowed-tools или в параметрах разрешений. Также см. Правила разрешений, специфичные для инструментов.

Расширение инструментов с помощью hooks

Вы можете запускать пользовательские команды до или после выполнения любого инструмента, используя Claude Code hooks. Например, вы можете автоматически запустить форматер Python после того, как Claude изменит файлы Python, или предотвратить изменения файлов конфигурации производства, заблокировав операции Write для определенных путей.

См. также