AI coding agent admin guide·verified October 21, 2026

hooks vs sandbox vs managed settings

Device MDM, harness managed settings, sandboxes, IAM and SCPs, and hook-level policy each stop different things. A side-by-side to decide what you need.

the short answer

A sandbox limits what an agent’s process can touch: files, network, system calls. A hook-level policy decides whether a specific action should happen: this terraform destroy, this DNS delete. IAM and SCPs decide what the credentials can do at all. Harness managed settings lock one tool’s configuration, and device MDM delivers all of it. You need several; none replaces the others.

Sandbox
Process boundary: files, network
Hook-level policy
Per-action decision with context, before the call runs
IAM / SCP
What credentials can do, regardless of who or what uses them
Managed settings
One harness’s configuration, locked
Device MDM
Delivery and drift correction for all of the above

Side by Side

LayerStopsDoes not stopCross-harness
Device MDM (Jamf, Intune, Kandji)Missing or tampered config files, uninstalled clientsAny specific agent actionDelivers to all
Harness managed settingsBypass mode, unmanaged permission rules, obvious command stringsOther spellings, scripts and wrappers; other harnessesNo
Sandbox (for example Claude Code Seatbelt or bubblewrap)Writes outside the workspace, unapproved network egressDestructive API calls over allowed network; reads of most of the disk by defaultPer harness
IAM, permission sets, SCPsAnything the credentials are not allowed to doAllowed-but-wrong actionsYes (credential-level)
Hook-level policy (Failproof)Specific actions by effect and context, across supported harnesses; records each decisionActions on harnesses or events without a blocking hookYes

What the Claude Code Sandbox Does and Does Not Cover

  • It is an OS-enforced boundary around Bash commands and their child processes: Seatbelt on macOS, bubblewrap on Linux and WSL2. Native Windows runs unsandboxed.
  • It is off by default; enable it with /sandbox or sandbox.enabled.
  • Writes are limited to the working directory and temp. Reads cover most of the machine, including ~/.ssh and ~/.aws/credentials, unless you add denyRead paths.
  • Network goes through a proxy with an allowlist that starts empty. If your allowlist includes AWS endpoints, a sandboxed aws route53 delete still succeeds.
  • File tools, MCP servers and hooks run outside it.

IAM and SCPs: The Floor

Service control policies set the maximum permissions in member accounts of an AWS Organization, including for root, but do not apply to the management account. They are ideal for “nobody deletes hosted zones in prod outside break-glass”. They cannot express “the agent should not, but the engineer may”, because both use the same role session. That distinction is what the hook layer adds.

Which Do You Need?

If your concern is...Start with
Agents exfiltrating data to arbitrary hostsSandbox network allowlist, plus an egress policy
Agents destroying infrastructureHook-level deny on destroy, plus scoped profiles and SCPs
Agents disabling their own controlsA policy client agents cannot disable (block-failproofai-commands), plus Cloud-managed policies that a local pause does not affect
Developers bypassing settingsDevice MDM redeploying managed files
No idea what agents are doingAgent telemetry across the fleet
Several harnesses in useA cross-harness policy engine

FAQ

Is a devcontainer enough?

A container limits the filesystem and processes, much like a sandbox. If credentials are mounted into it, the agent can still use them for any allowed API call.

Can a sandbox and Failproof run together?

Yes. The sandbox constrains the process; Failproof gates each tool call at PreToolUse, before it runs.

Which layer gives an audit trail of agent actions?

The agent layer: a hook-level tool like Failproof, or the harness’s own telemetry (such as Claude Code OpenTelemetry), records the prompt and tool call. Cloud audit logs record the API call and the human’s role session.

Sources

Checked against the sources below on October 21, 2026. Harness settings, hook capabilities and cloud features change between versions.

  1. Claude Code docs: Configure the sandboxed Bash tool
  2. Claude Code docs: Deploy managed settings
  3. AWS docs: Service control policies (SCPs)
  4. Failproof AI docs: Agent harnesses and enforcement capability
  5. Failproof AI docs: failproofai CLI reference
  6. Failproof AI docs: Deploy a policy
  7. OWASP: LLM06:2025 Excessive Agency