Перейти к основному содержимому

Разрешения и режимы разрешений

Средний
What you'll learn
  • Что означают три вердикта разрешений (allow / ask / deny)
  • Как правила разрешений сопоставляют инструмент с шаблоном
  • Шесть режимов разрешений и когда использовать каждый
  • Почему режим auto теперь стартовый для интерактивных сессий — и как от него отказаться
  • Как режим auto заменяет запросы подтверждения классификатором безопасности
  • Как составить разумный стартовый allowlist, который сокращает запросы, не жертвуя безопасностью
  • Где хранить правила разрешений проекта и личные правила

Разрешения определяют, что Claude Code может делать, не останавливаясь, чтобы спросить вас. Настроите хорошо — получите рабочий поток без потери контроля; настроите плохо — будете либо подтверждать всё не глядя, либо тонуть в запросах.

Три вердикта​

Любое возможное действие получает один из вердиктов:

Нажмите Enter или пробел, чтобы перевернуть карточку. Используйте стрелки влево и вправо для перехода между карточками.Показан термин.
1 / 3

Правила обычно сопоставляют инструмент с шаблоном, например allow Bash(npm run test:*) или deny Read(./.env).

Разрешить инструмент + шаблон

Bash(npm run test:*)

Запретить инструмент + шаблон

Read(./.env)

Режимы разрешений​

Режим задаёт общую политику сессии. Их шесть. Распространённые режимы переключаются через Shift+Tab, либо задайте permissions.defaultMode в настройках.

РежимВыполняется без запросаКогда использовать
default (отображается как Manual)Только чтениеПовседневная работа, чувствительные изменения
acceptEditsЧтение, правка файлов, типовые команды файловой системыДоверенная, чётко ограниченная сессия правок
planЧтение, а также команды, одобренные классификатором, если доступен режим auto; никогда не правит ваш исходный кодКрупные или рискованные задачи — см. Plan Mode
auto (стартовый режим интерактивных сессий с v2.1.283)Всё, с проверкой классификатором безопасностиДлинные задачи, где настоящий риск — усталость от запросов
dontAskЧтение файлов в ваших рабочих каталогах и заранее одобренные инструменты; всё, что вызвало бы запрос, отклоняетсяЖёстко ограниченные CI и скрипты
bypassPermissionsВсё, без проверокТолько песочницы/контейнеры — никогда на машине с секретами

Режим auto теперь по умолчанию в Claude Code​

Начиная с Claude Code v2.1.283, auto — встроенный стартовый режим интерактивных сессий в терминале и VS Code на всех тарифах и у всех провайдеров. В более ранних версиях он был режимом по умолчанию для новых сессий только на тарифах Pro, Max и Team, начиная с 14 августа 2026 года. Обоснование Anthropic (по результатам собственных тестов с участием более 1000 платных пользователей): классификатор поймал 89 % вредных действий против 13,6 % при ручной проверке — потому что привыкшие пользователи подтверждали около 97 % ручных запросов, не читая их.

Два исключения сохраняют ваш замысел:

  • Если вы задали permissions.defaultMode в пользовательских настройках, он остаётся как есть, пока вы не примете однократное предложение переключиться в приложении.
  • Если значение по умолчанию задаёт ваша организация (управляемые настройки Team/Enterprise), ничего автоматически не меняется.

Режимы можно переключать посреди сессии через Shift+Tab. Связанное изменение, уже действующее на этих тарифах: вызовы классификатора в режиме auto больше не учитываются в ваших лимитах использования.

Включить заранее (до 14 авг.) — сделать auto режимом по умолчанию

~/.claude/settings.json
{
"permissions": {
  "defaultMode": "auto"
}
}

Сохранить прежнее поведение с запросами после 14 авг.

~/.claude/settings.json
{
"permissions": {
  "defaultMode": "default"
}
}

Как на самом деле работает режим auto​

auto — золотая середина между подтверждением каждого шага и отключением безопасности. Вместо того чтобы спрашивать вас, отдельная модель-классификатор проверяет каждое действие перед выполнением и блокирует всё, что выходит за рамки вашего запроса, затрагивает незнакомую ей инфраструктуру или похоже на действие, продиктованное враждебным контентом, который Claude только что прочитал. Явные правила ask по-прежнему останавливаются и спрашивают вас.

Блокируются, например, curl | bash, force push, деплой и миграции в продакшене, rm -rf по неразрешённым переменным, подмена транскрипта, разрушительные git-команды, отбрасывающие незакоммиченную работу, и отправка секретов на внешние адреса — а рутинная работа (локальные правки, установка заявленных зависимостей, HTTP только для чтения, push в вашу собственную ветку) проходит без остановок. Если одно и то же действие блокируется снова и снова, режим auto приостанавливается и возвращает запросы вам.

Режим auto не гарантирует безопасность — он сокращает число запросов, но не отменяет необходимости проверять чувствительные операции. Доступность зависит от тарифа, модели и (на Team/Enterprise) переключателя администратора. Если вы действительно запускаете задачи без присмотра (cron, облачные сессии, CI), сочетайте его с Hardening Autonomous Runs — auto всё равно не то же самое, что bypassPermissions.

Watch out
  • bypassPermissions место в песочнице. Работа на вашей настоящей машине с отключёнными запросами — именно так агент и оказывается там, куда ему не следовало лезть. Оставьте его для одноразовых окружений — если на самом деле вам нужно меньше запросов, используйте вместо него режим auto. См. Hardening Autonomous Runs по адресу /docs/security/hardening-autonomous-runs.

Разумный стартовый allowlist​

Цель: заранее разрешить безопасное и повторяющееся; разрушительное оставить на ask или deny.

Guided walkthrough1 of 3
  1. Чтение файлов, запуск ваших команд тестов/lint/сборки, git status/diff.

Храните правила проекта в settings.json (общий файл), а личные переопределения — в settings.local.json.

Pro tip
  • Пусть система учится на ваших подтверждениях: несколько раз одобрите одну и ту же безопасную команду — и вы точно будете знать, что добавить в allowlist, превратив повторяющиеся запросы в одно правило.
Key takeaways
  • Три вердикта: allow (без запроса), ask (по умолчанию — пауза и подтверждение), deny (никогда).
  • Правила сопоставляют инструмент с шаблоном, например Bash(npm run test:*) или Read(./.env).
  • Шесть режимов задают политику сессии: default (Manual), acceptEdits, plan, auto, dontAsk, bypassPermissions.
  • С v2.1.283 auto — стартовый режим интерактивных сессий в терминале и VS Code на всех тарифах; заданный вами defaultMode остаётся на месте, а значения по умолчанию, управляемые организацией, не затрагиваются.
  • Режим auto проверяет каждое действие классификатором безопасности вместо запросов к вам — это средство от усталости от запросов, а не bypassPermissions.
  • Составьте allowlist: безопасное и повторяющееся — allow, средний риск — ask, разрушительное — deny.
  • Общие правила хранятся в settings.json; личные переопределения — в settings.local.json.

Проверьте себя

0/6
  1. Что делает вердикт по умолчанию 'ask' для действия, которое явно не разрешено и не запрещено?
  2. Какой режим разрешений безопасен ТОЛЬКО в песочницах или контейнерах и никогда — на машине с секретами?
  3. Вы хотите заметно меньше запросов разрешений в длинной задаче, но с подстраховкой. Какой режим выбрать?
  4. Где хранить общие правила разрешений проекта и где — личные переопределения?
  5. Что из перечисленного должно попасть в список 'deny' разумного стартового allowlist?
  6. Что произойдёт 14 августа 2026 года на тарифе Pro, если вы уже задали permissions.defaultMode равным 'default' в пользовательских настройках?

Далее​