Deliberately exposed and out of scope#
Anything not in the lockdown list (see the threat model) is reachable from inside Claude. This page reproduces the two reference tables: what the sandbox deliberately exposes, and what is out of scope.
Deliberately exposed#
These paths are bound into the sandbox on purpose. Modes are r
(read-only) or rw (read-write).
Path |
Mode |
Why |
|---|---|---|
Workspace |
rw |
The whole point of Claude. Default: |
|
r |
Host-global sandbox config ( |
|
r |
Curated gitconfig: gh/glab credential helpers for |
|
r |
Host’s system gitconfig is reachable read-only but neutralised for |
|
rw |
Claude’s state, settings, skills, hooks. |
|
rw |
Account-level state (OAuth token, recent-projects list, settings). Symlinked alongside |
|
rw |
Tool caches Claude needs across runs (if present) |
|
rw |
|
|
rw |
|
|
rw |
Bulk-bound XDG data dir: host-installed plugins for |
|
r |
The real Claude binary, relocated here by the installer from |
Network (egress-jailed by default, ADR 0015) |
— |
Claude runs in a private network namespace (pasta-bridged) with a routing allowlist: the internet, DNS, and configured |
For the rationale behind the XDG split, the uv bind discipline, the
gitconfig redirect, and the egress jail (and the network-identity
disclosure that remains on the CLAUDE_SANDBOX_EGRESS_JAIL=0 path), see the
threat model and 15. Jail Claude’s egress in a per-process netns with a routing allowlist.
Out of scope#
The sandbox does not defend against the following. Each row names the mitigation expected from you.
Exposure |
Why |
Mitigation expected from you |
|---|---|---|
Workspace contents |
Claude has to read your workspace to do its job |
Keep secrets outside the workspace (e.g. |
Container host kernel |
A bwrap-aware kernel exploit is out of scope; this is a credential-isolation tool, not a sandbox against arbitrary native code |
Keep your kernel patched; treat the devcontainer host as the trust boundary |
Internet exfiltration / domain filtering |
The default egress jail (ADR 0015) blocks lateral movement to internal RFC1918 hosts, not outbound exfil — the internet, DNS, and |
If outbound exfil is in your threat model, run the devcontainer behind your own egress filter, and/or layer Claude Code’s native |
Non-standard credential paths |
The installer scans |
Audit your devcontainer’s |
Non-root devcontainers; rootful Docker w/ default AppArmor |
v1 targets rootless podman + Debian/Ubuntu + |
Tracked for v2 |