Практика
Полные права — и машина цела
Запросы на подтверждение делают агента бесполезным, когда вас нет рядом, а их отключение на ноутбуке — верный способ потерять полдня. Решение не в смелости. Оно в том, чтобы поместить агента туда, где вам не жалко будет всё пересобрать.
Короткий ответ
--dangerously-skip-permissions выполняет каждый вызов инструмента, ничего не спрашивая. Anthropic советует использовать его только в изолированных контейнерах или ВМ, а от root Claude Code его не принимает. Запускайте его от пользователя без root на одноразовом сервере или в контейнере без production-секретов. Или используйте режим auto, где безопасные действия одобряет классификатор. Мобильное приложение Anthropic не может переключить сессию в bypass.
Claude Code спрашивает, прежде чем сделать что-то существенное. За столом это нормально: взглянули, подтвердили, работаете дальше. Вдали от стола это тормозит работу. Агент останавливается на третьем шаге двадцатиминутной задачи и ждёт касания, которое случится через сорок минут, — хотя весь смысл передачи задачи был в том, что вы не следите.
Поэтому люди тянутся к --dangerously-skip-permissions. Этот флаг опасен на неподходящей машине и разумен на подходящей, и разница не в том, насколько вы осторожны. Она в том, до чего агент может дотянуться, когда сделает то, чего вы не хотели. На этой странице — что на самом деле делает флаг, почему он не работает от root, какая схема делает его оправданным и какие аналоги есть в Codex, OpenCode, Grok Build и Antigravity.
Что на самом деле позволяет bypass
У Claude Code шесть режимов разрешений. Страница о режимах разрешений Anthropic описывает их так. Таблица повторяет порядок из документации: default — это имя режима Manual в конфигурации, а не режим, в котором стартует сессия.
| Режим | Выполняется без вопросов | «Лучше всего для» по версии Anthropic |
|---|---|---|
default (Manual) | Только чтение | Чувствительная работа |
acceptEdits | Чтение, правки файлов, распространённые команды файловой системы | Итерации над кодом, который вы проверяете |
plan | Чтение плюс одобренные классификатором команды, если доступен режим auto | Исследование перед изменениями |
auto | Всё, с фоновыми проверками безопасности | Долгие задачи, меньше запросов |
dontAsk | Чтение и заранее одобренные инструменты; всё остальное запрещено | Закрытый CI |
bypassPermissions | Всё | Только изолированные контейнеры и ВМ |
Bypass выполняет каждый вызов инструмента сразу, включая запись в защищённые пути вроде .git и собственной конфигурации Claude. Кое-что всё же продолжает действовать:
- Запрещающие правила в настройках блокируют в любом режиме, включая bypass. Разрешающие правила в нём ни на что не влияют.
- Явные правила ask по-прежнему вызывают запрос.
rmиrmdir, нацеленные на критичные пути, по-прежнему вызывают запрос: корень файловой системы, каталоги верхнего уровня, ваш домашний каталог, рабочий каталог и его родители.
Чего bypass не даёт — так это никакой защиты от prompt injection или уверенно ошибочной команды. Документация Anthropic говорит прямо: используйте его только в изолированных окружениях, где Claude Code не может навредить хосту.
Начиная с Claude Code v2.1.283 режим auto — встроенный стартовый режим для интерактивных сессий в терминале и VS Code. Вторая модель проверяет каждое действие и блокирует рискованные, например массовое удаление в облачном хранилище, force push или запуск ещё одного цикла агента с отключёнными подтверждениями и песочницей. Он убирает большинство запросов, не убирая всех проверок. Ему нужна поддерживаемая модель, а организация может его отключить. Если для вашей задачи режима auto достаточно, bypass вам, возможно, вообще не нужен.
Два похожих флага
--dangerously-skip-permissionsзапускает сессию сразу в bypass. Это эквивалент--permission-mode bypassPermissions.--allow-dangerously-skip-permissionsлишь добавляет bypass в цикл Shift+Tab. Сессия стартует в обычном режиме, а в bypass вы переключаетесь, когда сами решите.
Второй важен потому, что войти в bypass из сессии, запущенной без его разрешения, нельзя. Если он может понадобиться позже, решать нужно при запуске. Форма --allow- — аккуратный способ это сделать: сессия ведёт себя как обычно, пока вы сознательно не переключитесь.
При первом интерактивном запуске с включённым bypass показывается диалог с предупреждением. Если его принять, в ~/.claude/settings.json записывается skipDangerousModePermissionPrompt: true; если отказаться, Claude Code завершается. Неинтерактивные запуски с -p пропускают диалог. Администраторы могут запретить этот режим для всех через permissions.disableBypassPermissionsMode: "disable" в управляемых настройках.
Почему он не работает от root
На Linux и macOS Claude Code отказывается запускаться в режиме bypass от root или через sudo:
--dangerously-skip-permissions cannot be used with root/sudo privileges for security reasons
Проверка пропускается внутри песочницы, которую Claude Code распознаёт, и поэтому dev-контейнер Anthropic запускает его от пользователя без root. На обычном VPS, куда вы входите как root, сначала создайте обычного пользователя. В нашем руководстве по настройке VPS для этого есть три команды.
Запуская Claude Code под демоном Maude на множестве разных серверов, мы выяснили три практические вещи:
- От root форма
--allow-тоже не работала. В наших тестах с Claude Code 2.1.x процесс завершался при запуске, а не просто не включал bypass в цикл. Любая обёртка, добавляющая этот флаг, должна сначала проверять ID пользователя, иначе на сервере с root умирает каждая сессия. - Старые версии флаг вообще не принимают. CLI, который не знает флага, завершается точно так же. Проверьте, что он есть в
claude --help, прежде чем его передавать. - Тестируйте на чистой машине. В вашем собственном
~/.claude/settings.json, скорее всего, уже естьskipDangerousModePermissionPromptс того дня, когда вы прощёлкали предупреждение. На свежем сервере этот диалог появляется раньше приглашения, и сессия без присмотра так и висит на нём. Тестируйте в чистом контейнере, а не на ноутбуке.
Схема с одноразовым сервером
Прежде чем где-либо ослаблять разрешения, задайте один вопрос: если бы этот процесс прямо сейчас выполнил произвольную разрушительную команду, что бы я потерял?
На типичном ноутбуке честный ответ неприятен: ваши SSH-ключи, облачные учётные данные в ~/.aws и ~/.config, профили браузера с активными сессиями, .env с production-адресами и все остальные склонированные репозитории. На одноразовом VPS с одним проектом ответ — этот проект, который и так запушен, плюс час на пересборку. Такой риск можно принять. Вот три места, куда можно поместить агента:
Контейнер на вашей собственной машине
Самый дешёвый и близкий вариант. Запустите Linux-контейнер в Docker или OrbStack, установите внутри Claude Code от пользователя без root и смонтируйте только тот проект, который ему можно трогать. Не монтируйте домашний каталог, не передавайте внутрь учётные данные хоста и не используйте --privileged и не монтируйте сокет Docker — и то и другое возвращает доступ к хосту.
Выделенный VPS
Вариант, на котором останавливается большинство: небольшая машина с одним-двумя проектами и больше ничем. Она всегда включена, так что работа продолжается, пока ваши машины выключены. Если её когда-нибудь скомпрометируют, вы её уничтожаете и создаёте новую. Пусть её пересборка будет скучной — короткий скрипт настройки, а не машина, которую вы год подкручивали вручную. О выборе размера — в руководстве покупателя VPS.
Эфемерная облачная песочница
Облачные сессии Anthropic выполняют каждую задачу в изолированной ВМ, учётные данные git хранятся вне песочницы, а доступ к сети по умолчанию ограничен. Это сильная изоляция без всякого обслуживания. Но bypass там недоступен. Облачные сессии предлагают Accept edits, Plan и Auto и игнорируют bypassPermissions, заданный в настройках репозитория.
Какие секреты не держать на машине
- Production-учётные данные. Направьте агента на staging или локальную копию. Вы защищаетесь не от злого умысла, а от уверенной ошибки со строкой подключения, которая случайно оказалась под рукой.
- Ваш личный SSH-ключ. Дайте серверу собственный deploy-ключ или токен с узкими правами только к нужным репозиториям. Не используйте и проброс SSH-агента на эту машину: так вы одалживаете ей свои ключи на всё время подключения.
- Широкие облачные токены. Никаких админских ключей AWS и токенов GitHub на всю организацию. Если задаче такой нужен, ограничьте его и дайте ему истечь.
- Всё, что существует только там. Пушьте почаще, чтобы потеря сервера не стоила вам ничего, чего нельзя воссоздать.
Одни учётные данные на машине жить должны: собственный вход агента. Claude Code хранит его в ~/.claude/.credentials.json, так что любой, у кого есть оболочка от этого пользователя, может пользоваться вашим тарифом. Это ещё одна причина дать агенту собственного пользователя.
Аналоги в Codex и других агентах
У каждого агента для кода есть своя версия этого переключателя, и означают они не одно и то же:
| Агент | Пропуск всех запросов | Более безопасная середина |
|---|---|---|
| Claude Code | --dangerously-skip-permissions (не принимается от root) | Режим auto; acceptEdits; запрещающие правила |
| Codex | --dangerously-bypass-approvals-and-sandbox, псевдоним --yolo: «Используйте только внутри окружения, защищённого извне» | --sandbox workspace-write с подтверждениями по запросу (сеть по умолчанию выключена). --full-auto теперь устаревший псевдоним этого режима |
| OpenCode | opencode --auto (запрещающие правила продолжают действовать) | allow / ask / deny для каждого инструмента в opencode.json. Учтите, что у большинства инструментов по умолчанию allow |
| Grok Build | grok --always-approve (запрещающие правила и хуки PreToolUse продолжают действовать) | Режим auto (классификатор одобряет безопасные инструменты); отдельная песочница ограничивает одобренные вызовы |
| Antigravity CLI | agy --dangerously-skip-permissions | Списки allow, ask и deny (deny важнее); пресет по умолчанию запускает команды терминала в песочнице без сети на macOS и Linux |
Источники: справочник Codex CLI и подтверждения и безопасность, разрешения OpenCode, разрешения Grok Build, разрешения Antigravity и codelab Google по Antigravity CLI, проверено в октябре 2026 года. И Codex, и Antigravity по умолчанию используют песочницу, так что отключение запросов и отключение песочницы — отдельные решения. Именно отключение песочницы требует одноразовой машины.
Можно ли включить bypass с телефона?
Из приложения Claude — нет. В мобильной документации Anthropic сказано, что Bypass permissions из приложения выбрать нельзя ни для облачных сессий, ни для Remote Control, а Remote Control из приложения не предлагает и Auto. Для клиента общего назначения это разумное значение по умолчанию.
Maude создана для другого случая — сервера, который принадлежит вам и который можно пересобрать, поэтому она предлагает режим полного доступа каждого агента под названием «yolo» рядом с остальными его режимами. Для Claude он срабатывает, только если демон работает от пользователя без root и установленный Claude Code поддерживает флаг. Иначе сессия остаётся в обычном режиме. Maude запускает сессию в обычном режиме и переключает её в bypass после запуска, а не при старте. На сервере, где есть только root, кнопка в приложении создаст пользователя без root за вас. Режим по умолчанию можно задать для каждого агента или менять в каждой сессии.
Полные права — это решение о том, где работает агент, а не настройка уровня риска. Поместите Claude Code под пользователя без root на машину, где нечего красть и нет ничего, что нельзя пересобрать, — и можно спокойно оставлять его работать без присмотра. Оставите его на машине с вашими ключами и клиентскими проектами — и никакая осторожность не сделает эту сделку выгодной.
Управление с телефона
Если одноразовый сервер готов, статья Claude Code на телефоне показывает, как Maude запускает его там. Статья о подтверждении разрешений агентов с телефона описывает противоположный подход: оставить запросы включёнными и отвечать на них из уведомления.
Часто задаваемые вопросы
Безопасен ли --dangerously-skip-permissions?
Почему он не работает от root?
--allow-dangerously-skip-permissions от root тоже приводила к завершению процесса при запуске.Какой аналог в Codex?
codex --dangerously-bypass-approvals-and-sandbox, он же --yolo, который отключает и подтверждения, и песочницу. OpenAI советует использовать его только внутри окружения, защищённого извне. Режим по умолчанию с минимумом трения — --sandbox workspace-write с подтверждениями по запросу. Старый --full-auto устарел и выводит предупреждение.Можно ли включить bypass с телефона?
Чем отличаются два флага skip-permissions?
--dangerously-skip-permissions запускает сессию в режиме bypass. --allow-dangerously-skip-permissions запускает её в обычном режиме и лишь добавляет bypass в цикл Shift+Tab, чтобы вы могли переключиться позже. В сессии, запущенной без одного из них, переключиться в bypass нельзя вообще.Что изменилось
- — Переписано: ограничение для root, --allow-dangerously-skip-permissions и --dangerously-skip-permissions, режим auto как золотая середина по умолчанию, что bypass всё же блокирует, аналоги в Codex/OpenCode/Grok Build/Antigravity и что позволяют мобильное приложение Anthropic и Maude.
- — Первая публикация.