Для сравнения других подходов к изоляции, таких как dev containers, пользовательские контейнеры и виртуальные машины, см. Sandbox environments. Чтобы уменьшить количество запросов разрешений для инструментов, отличных от Bash, см. permission modes.
Начало работы
Sandbox встроен в Claude Code и работает на macOS, Linux и WSL2. Нативная Windows не поддерживается. На Windows запустите Claude Code внутри дистрибьютива WSL2. На macOS нет необходимости в установке: sandboxing использует встроенную платформу Seatbelt. На Linux и WSL2 sandbox зависит от двух пакетов, описанных в разделе Настройка Linux и WSL2. Даже если вы их ещё не установили, вы можете начать с/sandbox, так как его панель показывает, что-либо отсутствует.
Запустите /sandbox
Начните сеанс Claude Code и выполните команду Это открывает панель sandbox с тремя вкладками:
/sandbox:- Mode: выберите способ одобрения изолированных команд, описанный на следующем шаге
- Overrides: выберите, могут ли команды, которые не работают в sandbox, вернуться к выполнению без изоляции. Это параметр
allowUnsandboxedCommands - Config: просмотрите разрешённые параметры sandbox
/sandbox.Выберите режим
На вкладке Mode выберите автоматическое разрешение или обычные разрешения. Автоматическое разрешение выполняет изолированные команды без запроса, а обычные разрешения сохраняют обычные запросы разрешений даже когда команды изолированы. См. Sandbox modes для информации о том, какие команды всё ещё требуют запроса в режиме автоматического разрешения.
Выполните команду Bash
Попросите Claude выполнить команду, например сборку или набор тестов. По умолчанию команды внутри sandbox могут писать только в рабочий каталог и каталог временных файлов сеанса. Первый раз, когда команде требуется новый сетевой домен, Claude Code запрашивает одобрение.Команды, которые не могут выполняться в sandbox, возвращаются к обычному потоку разрешений. Чтобы расширить или сузить эти границы, см. Настройка sandboxing.
.claude/settings.local.json, которые применяются к текущему проекту и не проверяются в git. Чтобы включить sandbox во всех ваших проектах, установите sandbox.enabled в true в ваших пользовательских параметрах в ~/.claude/settings.json. Чтобы применить sandboxing для каждого разработчика в организации, используйте управляемые параметры.
Настройка Linux и WSL2
На Linux и WSL2 sandbox зависит от двух пакетов:bubblewrap: инструмент непривилегированной изоляции, который применяет изоляцию файловой системыsocat: ретранслятор, используемый для маршрутизации сетевого трафика через прокси sandbox
- Ubuntu/Debian
- Fedora
/sandbox показывает, доступны ли ripgrep, bubblewrap, socat и фильтр seccomp на вашей платформе. Ripgrep поставляется в комплекте с нативным двоичным файлом Claude Code. Фильтр seccomp является опциональным и добавляет блокировку Unix domain socket. Установите его с помощью npm install -g @anthropic-ai/sandbox-runtime, если он отсутствует.
Когда отсутствует требуемая зависимость, вкладка Dependencies является единственной показываемой вкладкой до её установки. Проверка зависимостей выполняется при запуске, поэтому перезагрузите Claude Code после установки пакетов, чтобы /sandbox их обнаружил.
Ubuntu 24.04 и позже: разрешить bubblewrap создавать пользовательские пространства имён
Ubuntu 24.04 и позже: разрешить bubblewrap создавать пользовательские пространства имён
На Ubuntu 24.04 и позже политика AppArmor по умолчанию предотвращает создание bubblewrap пользовательских пространств имён, необходимых для изоляции.Чтобы проверить, применяется ли это ограничение в вашей среде, включая внутри WSL2, выполните Профиль применяется только к самому
sysctl kernel.apparmor_restrict_unprivileged_userns. Если ключ не существует или возвращает 0, пропустите этот шаг. Если он возвращает 1, добавьте профиль AppArmor, который предоставляет bwrap эту возможность:bwrap, а не к командам, которые он выполняет внутри sandbox. Перезагрузите AppArmor, чтобы применить его:Примечания WSL2
Примечания WSL2
Проверьте версию WSL с помощью
wsl -l -v из PowerShell. Если вы видите Sandboxing requires WSL2, ваш дистрибьютив работает на WSL1. Обновите его на WSL2 или запустите Claude Code без sandboxing.На WSL2 изолированные команды не могут запускать двоичные файлы Windows, такие как cmd.exe, powershell.exe или что-либо под /mnt/c/. WSL передаёт их хосту Windows через Unix socket, который sandbox блокирует. Если команде требуется вызвать двоичный файл Windows, добавьте его в excludedCommands, чтобы он выполнялся вне sandbox.Sandbox modes
Claude Code предлагает два режима sandbox: Режим автоматического разрешения: Команды Bash будут пытаться выполняться внутри sandbox и автоматически разрешаются без требования разрешения. Команды, которые не могут быть изолированы, такие как те, которые требуют сетевого доступа к неразрешённым хостам, возвращаются к обычному потоку разрешений, где Claude Code проверяет ваши правила разрешений и запрашивает у вас разрешение для любой команды, которую эти правила не разрешают. Даже в режиме автоматического разрешения применяется следующее:- Явные правила отказа всегда соблюдаются
- Команды
rmилиrmdir, которые нацелены на/, ваш домашний каталог или другие критические пути системы, по-прежнему вызывают запрос разрешения - Правила ask с областью действия контента, такие как
Bash(git push *), по-прежнему требуют запроса даже для изолированных команд - Простое правило
Bashask, или эквивалентная формаBash(*), пропускается для команд, которые выполняются в изолированном режиме; оно по-прежнему применяется к командам, которые возвращаются к обычному потоку разрешений
$TMPDIR в этот каталог для изолированных команд, поэтому инструменты, которые записывают временные файлы, работают без дополнительной конфигурации. Неизолированные команды наследуют $TMPDIR вашей оболочки без изменений, что означает, что изолированные и неизолированные команды разрешают $TMPDIR в разные каталоги. Чтобы передавать временные файлы между ними, записывайте их в рабочий каталог вместо этого.
Некоторые команды вообще не могут выполняться внутри sandbox, такие как инструменты, несовместимые с ним, или те, которые требуют хоста, который вы не разрешили. Вместо того чтобы не выполнить задачу или потребовать отключения sandboxing, Claude Code включает механизм выхода: когда команда не выполняется из-за ограничений sandbox, Claude анализирует сбой и может повторить команду с параметром dangerouslyDisableSandbox. Повторная команда выполняется вне sandbox, поэтому она проходит через обычный поток разрешений и требует вашего одобрения.
Вы можете отключить этот механизм выхода, установив "allowUnsandboxedCommands": false в ваши параметры sandbox. При отключении, что панель Overrides в /sandbox показывает как Strict sandbox mode, параметр dangerouslyDisableSandbox полностью игнорируется и все команды должны выполняться в sandbox или быть явно указаны в excludedCommands.
Режим автоматического разрешения работает независимо от вашего параметра режима разрешений. Даже если вы не находитесь в режиме “принять правки”, изолированные команды Bash будут выполняться автоматически при включении автоматического разрешения. Это означает, что команды Bash, которые изменяют файлы в границах sandbox, будут выполняться без запроса, даже когда инструменты редактирования файлов обычно требуют одобрения.
Настройка sandboxing
Настройте поведение sandbox через ваш файлsettings.json. Полную справку по конфигурации см. в разделе Settings.
По умолчанию изолированные команды могут писать только в текущий рабочий каталог и временный каталог сеанса. Если команды подпроцесса, такие как kubectl, terraform или npm, должны писать вне этих каталогов, используйте sandbox.filesystem.allowWrite для предоставления доступа к определённым путям:
excludedCommands.
Когда один и тот же массив файловой системы определён в нескольких областях параметров, массивы объединяются: пути из каждой области объединяются, а не заменяются.
Префиксы пути контролируют способ разрешения путей:
| Префикс | Значение | Пример |
|---|---|---|
/ | Абсолютный путь от корня файловой системы | /tmp/build остаётся /tmp/build |
~/ | Относительно домашнего каталога | ~/.kube становится $HOME/.kube |
./ или без префикса | Относительно корня проекта для параметров проекта или к ~/.claude для параметров пользователя | ./output в .claude/settings.json разрешается в <project-root>/output |
//path для абсолютных и /path для относительных к проекту. Пути файловой системы sandbox используют стандартные соглашения: /tmp/build — это абсолютный путь.
Вы также можете запретить доступ на запись или чтение, используя sandbox.filesystem.denyWrite и sandbox.filesystem.denyRead, и повторно разрешить определённые пути в запрещённой области, используя sandbox.filesystem.allowRead.
Пример ниже блокирует чтение из всего домашнего каталога, но при этом разрешает чтение из текущего проекта. Поместите его в .claude/settings.json вашего проекта, потому что относительный путь . разрешается в корень проекта только когда конфигурация находится в параметрах проекта:
. в allowRead разрешается в корень проекта, потому что эта конфигурация находится в параметрах проекта. Если вы поместили ту же конфигурацию в ~/.claude/settings.json, . разрешился бы в ~/.claude вместо этого, и файлы проекта остались бы заблокированы правилом denyRead.
Защита учётных данных
Параметрsandbox.credentials объявляет файлы учётных данных и переменные окружения, к которым изолированные команды не должны получать доступ. Перечисленные пути файлов запрещены для чтения внутри sandbox, применяется тот же блок, что и filesystem.denyRead, и перечисленные переменные окружения удаляются перед каждой изолированной командой. Выделенный блок credentials сохраняет правила учётных данных сгруппированными с удалением переменных окружения и отдельно от общих правил файловой системы. Требуется Claude Code v2.1.187 или позже.
Пример ниже блокирует чтение файла учётных данных AWS и каталога SSH и удаляет GITHUB_TOKEN и NPM_TOKEN из окружения изолированных команд:
"mode": "deny", что является единственным поддерживаемым значением. Явное поле mode сохраняет схему совместимой с будущими режимами. Пути файлов следуют тем же правилам префиксов, что и параметры sandbox.filesystem.*, и записи из каждой области параметров объединяются. Поскольку единственный режим — это deny, любая область может добавлять ограничения, но ни одна не может их удалять.
Встроенного списка запрещённых учётных данных нет, поэтому ограничены только файлы и переменные, которые вы указали. Параметр влияет только на изолированные команды Bash. Чтобы удалить учётные данные Anthropic и поставщиков облачных услуг из всех подпроцессов независимо от sandboxing, установите CLAUDE_CODE_SUBPROCESS_ENV_SCRUB.
Как работает sandboxing
Изоляция файловой системы
Изолированный инструмент Bash ограничивает доступ к файловой системе определёнными каталогами:- Поведение записи по умолчанию: доступ на чтение и запись к текущему рабочему каталогу и его подкаталогам, а также к временному каталогу сеанса, на который указывает
$TMPDIR - Поведение чтения по умолчанию: доступ на чтение ко всему компьютеру, кроме определённых запрещённых каталогов. Обратите внимание, что эта политика по умолчанию всё ещё разрешает чтение файлов учётных данных, таких как
~/.aws/credentialsи~/.ssh/. Используйтеsandbox.credentialsдля блокировки чтения этих файлов и отмены установки переменных окружения с секретами, или добавьте пути вdenyRead. - Заблокированный доступ: невозможно изменять файлы вне текущего рабочего каталога и временного каталога сеанса без явного разрешения, включая файлы конфигурации оболочки, такие как
~/.bashrc, и системные двоичные файлы в/bin/ - Git worktrees: когда рабочий каталог является связанным git worktree, sandbox также разрешает запись в общий каталог
.gitосновного репозитория, чтобы команды, такие какgit commit, могли обновлять ссылки и индекс. Запись вhooks/иconfigвнутри этого каталога остаётся запрещённой. - Настраиваемо: определите пользовательские разрешённые и запрещённые пути через параметры
sandbox.filesystem.allowWrite в ваших параметрах. Эти ограничения применяются на уровне ОС, поэтому они применяются ко всем командам подпроцесса, включая инструменты, такие как kubectl, terraform и npm, а не только к инструментам файлов Claude.
Сетевая изоляция
Доступ в сеть контролируется через прокси-сервер, работающий вне sandbox:- Ограничения домена: домены не предварительно разрешены. Первый раз, когда команде требуется новый домен, Claude Code запрашивает одобрение. Начиная с версии 2.1.191, выбор «Да» разрешает хост для остальной части текущего сеанса, поэтому более поздние подключения к тому же хосту больше не запрашивают подтверждение. Предварительно разрешите домены с помощью
allowedDomains, чтобы избежать запроса полностью. - Управляемая блокировка: если
allowManagedDomainsOnlyустановлен в управляемых параметрах, неразрешённые домены автоматически блокируются вместо запроса, и толькоallowedDomainsиз управляемых параметров учитываются. - Поддержка пользовательского прокси: продвинутые пользователи могут реализовать пользовательские правила для исходящего трафика
- Полное покрытие: ограничения применяются ко всем скриптам, программам и подпроцессам, порожденным командами
Встроенный прокси применяет список разрешений на основе запрошенного имени хоста и не завершает и не проверяет трафик TLS. См. Security limitations для понимания последствий этого дизайна и Custom proxy configuration, если ваша модель угроз требует проверки TLS.
Применение на уровне ОС
Изолированный инструмент Bash использует примитивы безопасности операционной системы:- macOS: использует Seatbelt для применения sandbox
- Linux: использует bubblewrap для изоляции
- WSL2: использует bubblewrap, как и Linux
@anthropic-ai/sandbox-runtime, который страница Sandbox environments описывает как отдельный подход для обёртывания всего процесса Claude Code.
Как sandboxing связан с разрешениями и режимами разрешений
Sandboxing, правила разрешений и режимы разрешений являются дополняющими друг друга слоями. Разделы ниже описывают, как sandbox взаимодействует с каждым.Правила разрешений
Правила разрешений и sandboxing контролируют разные вещи:- Правила разрешений контролируют, какие инструменты может использовать Claude Code, и оцениваются перед запуском любого инструмента. Они применяются ко всем инструментам: Bash, Read, Edit, WebFetch, MCP и другим.
- Sandboxing обеспечивает применение на уровне ОС, которое ограничивает, к чему могут получить доступ команды Bash на уровне файловой системы и сети. Это применяется только к командам Bash и их дочерним процессам.
| Параметр или правило | Что оно делает |
|---|---|
sandbox.filesystem.allowWrite | Предоставляет доступ на запись подпроцесса к путям вне рабочего каталога |
sandbox.filesystem.denyWrite и sandbox.filesystem.denyRead | Блокируют доступ подпроцесса к определённым путям |
sandbox.filesystem.allowRead | Повторно разрешают чтение определённых путей в области denyRead |
Правила разрешения Edit | Предоставляют доступ на запись к определённым путям, так же как sandbox.filesystem.allowWrite |
Правила отказа Read и Edit | Блокируют доступ к определённым файлам или каталогам |
Правила разрешения и отказа WebFetch | Контролируют доступ к доменам |
Sandbox allowedDomains | Контролирует, к каким доменам могут получить доступ команды Bash |
Sandbox deniedDomains | Блокирует определённые домены даже когда более широкий подстановочный знак allowedDomains иначе разрешил бы их |
sandbox.filesystem и правил разрешений объединяются в окончательную конфигурацию sandbox.
Репозиторий claude-code, каталог примеров включает начальные конфигурации параметров для распространённых сценариев развёртывания, включая примеры, специфичные для sandbox. Используйте их как отправные точки и адаптируйте их в соответствии с вашими потребностями.
Режимы разрешений
/sandbox не является режимом разрешений. Режимы разрешений решают, выполняется ли вызов инструмента и запрашивается ли вас сначала, в то время как sandbox ограничивает, к чему может получить доступ команда Bash после её запуска. Они отличаются в том, что они контролируют и что заменяет запрос для каждого действия:
| Что контролирует | Что заменяет запрос | |
|---|---|---|
/sandbox | К чему может получить доступ команда Bash после её запуска | Сама граница sandbox в режиме автоматического разрешения |
| Auto mode | Выполняется ли каждый вызов инструмента | Классификатор, который проверяет действия |
--dangerously-skip-permissions | Выполняется ли каждый вызов инструмента | Ничего. Проверки защищённого пути также пропускаются; только удаление / или вашего домашнего каталога по-прежнему запрашивает |
Настройка sandbox для вашей организации
Администраторы могут требовать sandboxing для каждого пользователя, препятствовать разработчикам расширять политику и маршрутизировать трафик sandbox через корпоративный прокси.Применение sandboxing с управляемыми параметрами
Чтобы требовать sandbox для каждого разработчика, доставьте ключиsandbox через управляемые параметры, либо как файл, управляемый вашей MDM, либо через управляемые параметры сервера на Claude.ai.
Следующая конфигурация управляемых параметров включает sandbox, отказывает запустить Claude Code, если sandbox не может инициализироваться, и препятствует модели повторять команды вне sandbox:
enabled контролируют, что происходит, когда sandbox не может выполнить команду:
failIfUnavailable: отсутствующая зависимость, такая как bubblewrap на Linux, блокирует запуск Claude Code вместо показа предупреждения и возврата к выполнению без изоляцииallowUnsandboxedCommands: false: механизм выходаdangerouslyDisableSandboxигнорируется, поэтому команды, которые не выполняются в sandbox, не могут быть повторены вне него
excludedCommands для любых одобренных организацией инструментов, которые должны выполняться без изоляции. Добавьте записи sandbox.credentials для каталогов учётных данных, таких как ~/.aws и ~/.ssh, и для переменных окружения с секретами, поскольку политика чтения по умолчанию всё ещё разрешает их.
Sandbox не работает на нативной Windows, поэтому если ваш парк включает хосты Windows, ограничьте эту конфигурацию macOS и Linux или попросите этих пользователей запустить Claude Code внутри WSL2 или контейнера.
Препятствование разработчикам расширять политику
Для логических ключей, таких какenabled и failIfUnavailable, Claude Code использует управляемое значение и игнорирует всё, что разработчик устанавливает локально. Для ключей массива, таких как excludedCommands и allowRead, Claude Code объединяет записи из каждой области, поэтому разработчик может добавлять записи, которые расширяют политику.
Установите allowManagedReadPathsOnly в true в управляемых параметрах, чтобы только записи allowRead из управляемых параметров учитывались. Записи allowRead пользователя, проекта и локальные игнорируются. Это препятствует разработчикам расширять доступ на чтение за пределы одобренных организацией путей. Чтобы заблокировать сетевые домены таким же образом, установите allowManagedDomainsOnly.
excludedCommands не имеет эквивалентной блокировки только для управляемых, поэтому разработчик всегда может добавлять записи, которые выполняют дополнительные команды вне sandbox. Держите управляемый список узким.
Конфигурация пользовательского прокси
Для организаций, требующих продвинутой сетевой безопасности, вы можете реализовать пользовательский прокси для:- Расшифровки и проверки трафика HTTPS
- Применения пользовательских правил фильтрации
- Логирования всех сетевых запросов
- Интеграции с существующей инфраструктурой безопасности
Troubleshooting
Некоторые команды не выполняются внутри sandbox, хотя они работают вне его. Исправления ниже охватывают наиболее распространённые случаи.- Команды не выполняются с ошибкой host-not-allowed: многие инструменты CLI должны достичь определённых хостов. Предоставление разрешения при запросе добавляет хост в ваш список разрешённых, поэтому инструмент выполняется внутри sandbox в будущем.
jestзависает или не выполняется:watchmanнесовместим с sandbox. Вместо этого запуститеjest --no-watchman.- Go-based CLIs не выполняют проверку TLS на macOS: инструменты, такие как
gh,gcloudиterraform, могут не выполнять проверку TLS под Seatbelt. Перечислите эти инструменты вexcludedCommands, чтобы запустить их вне sandbox. Если вы используетеhttpProxyPortс MITM прокси и пользовательским CA, установитеenableWeakerNetworkIsolationвtrueвместо этого. open,osascriptили потоки аутентификации на основе браузера не выполняются с ошибкой-600на macOS: sandbox по умолчанию блокирует Apple Events. УстановитеallowAppleEventsвtrueв ваших пользовательских, управляемых или CLI параметрах, чтобы разрешить их. Параметры проекта игнорируются для этого ключа. Включение его удаляет изоляцию выполнения кода, так как изолированные команды могут затем запускать другие приложения без изоляции без запроса пользователя и отправлять команды AppleScript запущенным приложениям, подлежащим запросу автоматизации macOS (TCC). Кроме того, добавьте команду вexcludedCommands, чтобы запустить её вне sandbox.- Команды
dockerне выполняются:dockerнесовместим с sandbox. Добавьтеdocker *вexcludedCommands, чтобы запустить его вне sandbox. - Bubblewrap не запускается внутри контейнера: в непривилегированном контейнере bubblewrap не может смонтировать свежую файловую систему
/proc. УстановитеenableWeakerNestedSandboxвtrue, чтобы внутренний sandbox привязал существующий/procконтейнера вместо этого. Используйте этот параметр только когда внешний контейнер уже обеспечивает границу изоляции, которая вам требуется, так как это раскрывает информацию о процессе для изолированных команд, которую свежее монтирование/procскрыло бы. - Фильтр seccomp на Linux: фильтр seccomp требуется для блокировки Unix domain sockets. Вкладка Dependencies в
/sandboxпоказывает, доступен ли он. Если он отсутствует, запуститеnpm install -g @anthropic-ai/sandbox-runtimeдля установки помощника. --dangerously-skip-permissionsне выполняется как root: этот флаг блокируется при запуске как root или через sudo на Linux и macOS, потому что доступ root в сочетании с отсутствием запросов разрешений может изменять любой файл или сервис в системе. Проверка автоматически пропускается внутри признанного sandbox. Чтобы запустить автономно в контейнере, используйте конфигурацию dev container, которая запускает Claude Code как непривилегированного пользователя.
Ограничения
Sandboxing снижает риск, но не является полной границей изоляции. Просмотрите ограничения ниже перед тем, как полагаться на него как на жёсткий контроль безопасности.Ограничения безопасности
- Фильтрация сети: система фильтрации сети работает путём ограничения доменов, к которым процессы могут подключаться. Встроенный прокси не завершает и не выполняет проверку TLS исходящего трафика, поэтому содержимое зашифрованных соединений не проверяется. Вы несёте ответственность за обеспечение того, чтобы в вашей политике разрешались только доверенные домены.
- Повышение привилегий через Unix sockets: конфигурация
allowUnixSocketsможет случайно предоставить доступ к мощным системным сервисам, которые могут привести к обходам sandbox. Например, разрешение доступа к/var/run/docker.sockфактически предоставляет доступ к хост-системе через сокет Docker. Тщательно рассмотрите любые Unix sockets, которые вы разрешаете через sandbox. - Повышение привилегий разрешений файловой системы: чрезмерно широкие разрешения на запись в файловую систему могут включить атаки повышения привилегий. Разрешение записи в каталоги, содержащие исполняемые файлы в
$PATH, каталоги конфигурации системы или файлы конфигурации оболочки пользователя, такие как.bashrcили.zshrc, может привести к выполнению кода в разных контекстах безопасности, когда другие пользователи или системные процессы получают доступ к этим файлам. - Сила Linux sandbox: реализация Linux обеспечивает сильную изоляцию файловой системы и сети, но включает режим
enableWeakerNestedSandbox, который позволяет ему работать внутри окружений Docker без привилегированных пространств имён или на хостах Linux, где непривилегированные пользовательские пространства имён отключены sysctl. Эта опция значительно ослабляет безопасность и должна использоваться только когда дополнительная изоляция иным образом применяется. - Apple Events на macOS: sandbox на macOS по умолчанию блокирует Apple Events. Параметр
allowAppleEventsснимает это ограничение, чтобы инструменты, такие какopenиosascript, работали, но он удаляет изоляцию выполнения кода: изолированные команды могут запускать другие приложения без изоляции без запроса пользователя и могут отправлять команды AppleScript запущенным приложениям, в соответствии с запросом согласия на автоматизацию macOS для каждого приложения (TCC). Это учитывается только из пользовательских, управляемых или CLI параметров. Параметры проекта не могут включить это. - Файлы параметров защищены: sandbox автоматически запрещает доступ на запись к файлам
settings.jsonClaude Code в каждой области и к каталогу управляемых параметров, поэтому изолированная команда не может изменять свою собственную политику.
Совместимость платформ и инструментов
- Поддержка платформ: поддерживает macOS, Linux и WSL2. WSL1 и нативная Windows не поддерживаются.
- Накладные расходы производительности: минимальные, но некоторые операции файловой системы могут быть немного медленнее.
- Совместимость инструментов: некоторые инструменты, требующие определённых шаблонов доступа к системе, могут потребовать корректировки конфигурации или могут потребовать запуска вне sandbox.
Область
Sandbox изолирует подпроцессы Bash. Другие инструменты работают в разных границах:- Встроенные инструменты файлов: Read, Edit и Write используют систему разрешений напрямую, а не работают через sandbox. См. permissions.
- Использование компьютера: когда Claude открывает приложения и управляет вашим экраном, он работает на вашем фактическом рабочем столе, а не в изолированной среде. Запросы разрешений для каждого приложения контролируют каждое приложение. См. computer use in the CLI или computer use in Desktop.
- Переменные окружения: изолированные команды Bash наследуют окружение родительского процесса по умолчанию, включая любые учётные данные, установленные там. Используйте
sandbox.credentialsдля удаления определённых переменных для изолированных команд или установитеCLAUDE_CODE_SUBPROCESS_ENV_SCRUBдля удаления учётных данных Anthropic и поставщика облака из всех подпроцессов. - Subagents: subagents работают в том же процессе, что и родительский сеанс, и используют ту же конфигурацию sandbox. Команды Bash внутри subagent изолированы, когда sandboxing включен в родительском сеансе.
См. также
- Sandbox environments: сравните встроенный sandbox с dev containers, контейнерами и ВМ
- Security: комплексные функции безопасности и лучшие практики
- Permissions: конфигурация разрешений и контроль доступа
- Settings: полная справка по конфигурации
- CLI reference: параметры командной строки