Мастер Claude · Блок 1. Первые шаги

Урок 8 из 93 · ~10 мин чтения

Режимы разрешений: --permission-mode

Урок пока закрыт

Курс проходится последовательно.

К текущему уроку

Обновление, август 2026

Стартовый режим изменился: на тарифах Pro, Max и Team новые сессии начинаются в авторежиме, где действия проверяет модель-классификатор, а не вы. Режим с подтверждением каждого действия называется теперь Manual.

Актуальная версия: Урок 86. Режимы разрешений и авторежим

Почему это важно именно вам

Один из самых частых вопросов от новых пользователей Claude Code: «он же не сотрёт мне что-нибудь важное?». Это правильный вопрос. Claude Code — это инструмент, который может выполнять команды, изменять файлы и запускать скрипты. В неправильных руках или при неверных настройках это может привести к нежелательным последствиям.

Понимание режимов разрешений — это не паранойя. Это профессиональная гигиена. Директор, который понимает, что именно разрешил своему инструменту, работает спокойно и без неприятных сюрпризов.

Хорошая новость: вы всегда управляете тем, что Claude Code делает сам. На тарифах Pro, Max и Team сессия стартует в авторежиме, где действия проверяет классификатор; режим с подтверждением каждого шага (Manual) включается флагом --permission-mode default. Это удобно для начала, но замедляет работу в автоматических сценариях. Параметр --permission-mode позволяет точно настроить баланс между контролем и скоростью.

Что это такое

Claude Code различает несколько типов действий:

--permission-mode управляет тем, как Claude Code запрашивает разрешения на эти действия.

Доступные режимы:

bypassPermissions — с осторожностью

В режиме bypassPermissions Claude Code выполнит почти любую команду без вопросов — включая удаление файлов, изменение конфигураций и запуск скриптов. Узкие исключения остаются даже здесь: удаление по критическим путям и правила deny, которые действуют во всех режимах. Используйте этот режим только в автоматизированных скриптах, где вы точно понимаете, что произойдёт.

Как работает на практике

Manual-режим (--permission-mode default)

claude

Запускает интерактивную сессию. Когда Claude хочет изменить файл или выполнить команду — показывает предложение и ждёт вашего y (да) или n (нет).

Это безопасно и даёт полный контроль. Подходит для работы с незнакомыми файлами или новыми задачами.

AcceptEdits режим

claude --permission-mode acceptEdits

Claude автоматически создаёт и изменяет файлы, но спрашивает перед выполнением команд (bash, python, и т.д.).

Удобен, когда вы работаете над документами и хотите, чтобы правки применялись сразу, но выполнение команд всё ещё под контролем.

claude --permission-mode acceptEdits -p "отформатируй все .txt файлы в папке отчёты под единый шаблон" 

Claude изменит файлы без вопросов, но если попытается запустить скрипт — спросит.

BypassPermissions режим

claude --permission-mode bypassPermissions -p "обработай все файлы в папке и создай сводный отчёт"

Всё выполняется автоматически. Подходит для:
- Скриптов в cron, которые запускаются по расписанию
- Обработки файлов в изолированной папке
- Автоматизаций, где ваше участие физически невозможно

Главное правило bypassPermissions

Перед использованием этого режима в скрипте — проверьте скрипт в default-режиме. Убедитесь, что он делает именно то, что ожидаете. Только потом переключайте на bypassPermissions.

Настройка через settings.json

Если хотите изменить поведение по умолчанию без флага каждый раз — отредактируйте .claude/settings.json в папке проекта или ~/.claude/settings.json глобально:

{
  "permissions": {
    "defaultMode": "acceptEdits"
  }
}

Теперь claude без флага будет работать в режиме acceptEdits.

Список разрешений для конкретных действий

Через settings.json можно разрешить конкретные типы действий, не переключая режим целиком:

{
  "permissions": {
    "allow": [
      "Bash(ls:*)",
      "Bash(cat:*)",
      "Edit(~/Documents/reports/**)"
    ],
    "deny": [
      "Bash(rm:*)"
    ]
  }
}

Этот подход даёт точный контроль: разрешили читать файлы и писать в папку отчётов, запретили удаление.

Формат разрешений

Bash(команда:*) — разрешение или запрет на команду в bash Edit(путь/**) — разрешение или запрет на изменение и создание файлов по пути (правило Write(…) Claude Code принимает, но никогда не проверяет) Read(путь/*) — аналогично для чтения

Частые ошибки

Ошибка 1. Запускать bypassPermissions в домашней папке

Если Claude случайно получит инструкцию удалить ненужные файлы — в bypassPermissions он это выполнит немедленно. Всегда ограничивайте область действия: запускайте из конкретной рабочей папки или явно указывайте пути.

Ошибка 2. Никогда не разрешать ничего «на всякий случай»

Постоянные подтверждения в default-режиме при обработке 50 файлов — это не безопасность, это неудобство. Для повторяющихся безопасных задач настройте allowlist через settings.json.

Ошибка 3. Не проверять, что делает Claude перед bypassPermissions

Запустили сложный запрос сразу в bypassPermissions — и получили неожиданный результат. Всегда тестируйте в default или acceptEdits, убедитесь в корректности, потом переключайте.

Ошибка 4. Одинаковые настройки для разных проектов

settings.json может быть локальным (в папке проекта) и глобальным (в ~/.claude/). Для разных проектов — разные настройки. Для автоматизации на сервере — bypassPermissions. Для работы с важными документами — default.

Когда нужно / когда нет

default (без флага):
- Начало работы с новой задачей
- Работа с важными или необратимыми файлами
- Когда точно не знаете, что Claude будет делать

acceptEdits:
- Регулярная работа с документами
- Хотите, чтобы правки применялись без подтверждения
- Но хотите контроль над запуском команд

bypassPermissions:
- Скрипты по расписанию (cron, launchd)
- Обработка файлов в изолированной папке
- Задача проверена и предсказуема

Связь с другими уроками

Задание на сегодня

Запустите Claude Code в режиме acceptEdits и попросите создать файл:

claude --permission-mode acceptEdits -p "создай файл тест_разрешений.txt с текстом 'режим acceptEdits работает'"

Обратите внимание: файл создался без вопроса о подтверждении. Теперь запустите без флага:

claude -p "создай файл тест_разрешений_2.txt с тем же текстом"

Файл не появится: в -p-режиме спросить некого, поэтому запись просто не выполнится, и Claude скажет об этом в ответе.

Критерий выполнено: поняли разницу в поведении с флагом и без — один файл создался без вопроса, второй потребовал подтверждения.

Резюме

Следующий урок откроется после отметки.