Глава 24

Claude Code: настройте permissions, sandbox, hooks и automation

Permission rules, OS sandbox и hooks имеют разные границы. Для scripts Claude Code предоставляет non-interactive режим, но безопасная автоматизация требует явного allowlist tools, ограниченной среды и независимой проверки результата.

Три слоя и их важные границы стоит держать перед глазами.

Слой · Что контролирует · Важная граница

  • Permissions - Разрешить, спросить или запретить tool call; Применяются к tool surface
  • Sandbox - Filesystem и network для Bash subprocess tree; MCP servers и hooks не становятся его детьми автоматически
  • Hooks - Детерминированная реакция на lifecycle event; Hook сам является исполняемым кодом

Встроенный sandbox использует Seatbelt на macOS и bubblewrap на Linux/WSL2, а команда /sandbox управляет конфигурацией; чтобы изолировать также MCP и hooks, документация рекомендует sandbox или контейнер вокруг всего процесса. Custom subagents в .claude/agents/ имеют собственный контекст и tool restrictions - они полезны для exploration и independent verification, но добавляют cost и не наследуют историю разговора, поэтому parent должен передать им контракт.

Для automation есть print mode - и у него свои границы.

Bash
# Print mode
claude -p "Review the current diff and return findings"

# Limit tools with the documented flag
claude -p --allowedTools "Read,Grep" "Audit the repository without edits"

# --bare skips CLAUDE.md, hooks, skills, plugins, MCP and auto memory
# Use it only when that deterministic reduction is intentional.

Флаг --bare предназначен для минимального predictable context: он отключает CLAUDE.md, hooks, skills, plugins, MCP и auto memory. Это не "более умный" режим, а осознанное сокращение.

Не отключайте permissions на host с секретами. Флаг bypass permissions документирован как рискованный. Если unattended run действительно нужен, сначала создайте отдельный контейнер или VM, минимальный credential set и server-side authorization. Checkpoints отслеживают только edits самого Claude - изменения через Bash могут в них не попасть, поэтому держите Git clean.

Claude Code разобран. Третий продукт наиболее editor-ориентирован - это Cursor.

Ссылки