Verify the sandbox#
From your project on the host:
claude-sandbox verify
The same command works in a container terminal. It runs the installed battery directly through the sandbox wrapper: no model, agent login or prompt is needed. To check another agent’s filesystem profile:
claude-sandbox verify --agent codex
claude-sandbox verify --agent pi
The selected profile uses the normal workspace, configuration, mounts and
network jail. Its agent must be installed, but is not started. Inside an
existing sandbox, claude-sandbox verify checks that current sandbox instead.
Read the result#
Every check should report PASS. A failure names the affected defence.
The command exits with the battery’s failure count; zero means all checks
passed. Namespace setup failures also return nonzero.
Verification checks explains the checks and their limits. Checks 19–20 inspect network routes, but treat a disabled jail as a pass with a note; read those notes as well as the PASS count.
Full adversarial audit#
The shipped verify-sandbox skill adds an expanded adversarial audit in
Claude, Codex and Pi. Ask the agent to use that skill (or invoke
/verify-sandbox in Claude). It runs the installed battery first, then tries
ten adversarial probes only if all checks pass. No source checkout is needed.
The workflow lives in skills/verify-sandbox/SKILL.md.
After updating an existing installation, start a fresh agent session to get
the new skill mount. Remove obsolete personal verify-sandbox commands or
skills so there is only one maintained audit workflow.
Ordinary verification uses the installed battery and needs no source checkout. There are no automatic session or prompt hooks.