autoMode, чтобы сообщить этому классификатору, какие репозитории, бакеты и домены доверяет ваша организация, чтобы он перестал блокировать обычные внутренние операции.
Auto mode доступен всем пользователям на Anthropic API. На Amazon Bedrock, Google Cloud Vertex AI и Microsoft Foundry вы должны сначала установить
CLAUDE_CODE_ENABLE_AUTO_MODE. Если Claude Code сообщает, что auto mode недоступен для вашей учетной записи, проверьте полные требования, которые также охватывают поддерживаемые модели и включение администратором на планах Team и Enterprise.autoMode.environment.
Информацию о том, как включить режим auto и что он блокирует по умолчанию, см. в разделе Permission modes. Эта страница является справочником по конфигурации.
На этой странице рассматривается, как:
- Выбрать, где устанавливать правила в CLAUDE.md, пользовательских настройках и управляемых настройках
- Определить доверенную инфраструктуру с помощью
autoMode.environment - Переопределить правила блокировки и разрешения, когда значения по умолчанию не подходят для вашего конвейера
- Проверить вашу эффективную конфигурацию с помощью подкоманд
claude auto-mode - Просмотреть отказы, чтобы знать, что добавить дальше
Where the classifier reads configuration
Классификатор читает то же содержимое CLAUDE.md, что загружает сам Claude, поэтому инструкция вроде “никогда не делай force push” в CLAUDE.md вашего проекта управляет как Claude, так и классификатором одновременно. Начните с этого для соглашений проекта и правил поведения. Для правил, которые применяются ко всем проектам, таких как доверенная инфраструктура или организационные правила отказа, используйте блок настроекautoMode. Классификатор читает autoMode из следующих областей:
| Область | Файл | Используется для |
|---|---|---|
| Один разработчик | ~/.claude/settings.json | Личная доверенная инфраструктура |
| Один проект, один разработчик | .claude/settings.local.json | Доверенные бакеты или сервисы для каждого проекта, в gitignore |
| Организация | Managed settings | Доверенная инфраструктура, распределенная всем разработчикам |
Флаг --settings или Agent SDK | Встроенный JSON | Переопределения для каждого вызова для автоматизации |
autoMode из общих настроек проекта в .claude/settings.json, поэтому проверенный репо не может внедрить свои собственные правила разрешения.
Записи из каждой области объединяются. Разработчик может расширить environment, allow, soft_deny и hard_deny личными записями, но не может удалить записи, которые предоставляют управляемые настройки. Поскольку правила разрешения действуют как исключения из правил блокировки внутри классификатора, запись allow, добавленная разработчиком, может переопределить запись организационного soft_deny: комбинация является аддитивной, а не жесткой границей политики.
Классификатор — это второй шлюз, который работает после системы разрешений. Для действий, которые никогда не должны выполняться независимо от намерения пользователя или конфигурации классификатора, используйте
permissions.deny в управляемых настройках, который блокирует действие до того, как классификатор будет проверен, и не может быть переопределен.Определение доверенной инфраструктуры
Для большинства организацийautoMode.environment — это единственное поле, которое вам нужно установить. Оно сообщает классификатору, какие репозитории, бакеты и домены являются доверенными: классификатор использует его для определения того, что означает “внешний”, поэтому любой пункт назначения, не указанный в списке, является потенциальной целью утечки данных.
Список окружения по умолчанию доверяет рабочему репо и его настроенным удаленным репозиториям. Чтобы добавить свои собственные записи наряду с этим значением по умолчанию, включите буквальную строку "$defaults" в массив. Записи по умолчанию вставляются в эту позицию, поэтому ваши пользовательские записи могут идти до или после них.
- Организация: название вашей компании и для чего в основном используется Claude Code, например разработка программного обеспечения, автоматизация инфраструктуры или инженерия данных
- Исходный контроль: каждая организация GitHub, GitLab или Bitbucket, в которую ваши разработчики отправляют код
- Облачные провайдеры и доверенные бакеты: имена бакетов или префиксы, из которых Claude должен иметь возможность читать и писать
- Доверенные внутренние домены: имена хостов для API, панелей управления и сервисов внутри вашей сети, например
*.internal.example.com - Ключевые внутренние сервисы: CI, реестры артефактов, внутренние индексы пакетов, инструменты для инцидентов
- Дополнительный контекст: ограничения регулируемой отрасли, многопользовательская инфраструктура или требования соответствия, которые влияют на то, что классификатор должен рассматривать как рискованное
Переопределение правил блокировки и разрешения
Три дополнительных поля позволяют вам заменить встроенные списки правил классификатора:autoMode.hard_deny для безусловных границ безопасности, autoMode.soft_deny для деструктивных действий, которые намерение пользователя может отменить, и autoMode.allow для исключений. Каждое из них — это массив описаний на прозе, читаемых как правила на естественном языке. Для инструментов на основе паттернов с жесткими блокировками, которые работают перед классификатором, используйте permissions.deny.
Внутри классификатора приоритет работает в четыре уровня:
- Правила
hard_denyблокируют безусловно. Намерение пользователя и исключенияallowне применяются. - Правила
soft_denyблокируют далее. Намерение пользователя и исключенияallowмогут переопределить эти правила. - Правила
allowзатем переопределяют совпадающие правилаsoft_denyкак исключения. - Явное намерение пользователя переопределяет оставшиеся мягкие блокировки: если сообщение пользователя прямо и конкретно описывает точное действие, которое Claude собирается выполнить, классификатор разрешает его даже когда совпадает правило
soft_deny.
allow, когда классификатор повторно помечает обычный паттерн, который исключения по умолчанию не охватывают. Чтобы усилить, добавьте в soft_deny для деструктивных рисков, специфичных для вашего окружения, которые пропускают значения по умолчанию, или в hard_deny для границ безопасности, которые никогда не должны быть пересечены.
Чтобы сохранить встроенные правила при добавлении своих собственных, включите буквальную строку "$defaults" в массив. Правила по умолчанию вставляются в эту позицию, поэтому ваши пользовательские правила могут идти до или после них, и вы продолжаете наследовать обновления по мере изменения встроенного списка в разных версиях.
Установка любого из
environment, allow, soft_deny или hard_deny без "$defaults" заменяет весь список по умолчанию для этого раздела. Массив soft_deny без "$defaults" отбрасывает каждое встроенное правило мягкой блокировки, включая force push, curl | bash и развертывание в production. Массив hard_deny без "$defaults" отбрасывает встроенные правила утечки данных и обхода проверок безопасности.environment оставляет списки allow, soft_deny и hard_deny по умолчанию нетронутыми. Опускайте "$defaults" только когда вы намерены взять полную ответственность за список. Чтобы сделать это безопасно, запустите claude auto-mode defaults, чтобы вывести встроенные правила, скопируйте их в файл настроек, затем просмотрите каждое правило в соответствии с вашим конвейером и допустимостью риска.
Проверьте значения по умолчанию и вашу эффективную конфигурацию
Три подкоманды CLI помогают вам проверить и подтвердить вашу конфигурацию. Выведите встроенные правилаenvironment, allow, soft_deny и hard_deny как JSON:
allow, soft_deny и hard_deny:
claude auto-mode config после сохранения ваших настроек, чтобы подтвердить, что эффективные правила — это то, что вы ожидаете, с развёрнутым "$defaults" на месте. Если вы написали пользовательские правила, claude auto-mode critique просматривает их и помечает записи, которые неоднозначны, избыточны или могут вызвать ложные срабатывания. Если вам нужно удалить или переписать встроенное правило вместо того, чтобы добавить его рядом, сохраните вывод claude auto-mode defaults в файл, отредактируйте списки и вставьте результат в файл настроек вместо "$defaults".
Review denials
Когда режим auto отказывает в вызове инструмента, отказ записывается в/permissions на вкладке Recently denied. Нажмите r на отклоненном действии, чтобы отметить его для повтора: когда вы выйдете из диалога, Claude Code отправит сообщение, сообщающее модели, что она может повторить этот вызов инструмента и возобновить разговор.
Повторные отказы для одного и того же пункта назначения обычно означают, что классификатору не хватает контекста. Добавьте этот пункт назначения в autoMode.environment, затем запустите claude auto-mode config, чтобы подтвердить, что это вступило в силу.
Чтобы реагировать на отказы программно, используйте hook PermissionDenied.
See also
- Permission modes: что такое режим auto, что он блокирует по умолчанию и как его включить
- Managed settings: развертывание конфигурации
autoModeпо всей организации - Permissions: правила разрешения, запроса и отказа, которые применяются перед запуском классификатора
- Settings: полный справочник настроек, включая ключ
autoMode