Sandboxed shell commands that reference TMPDIR but don't have it set now get a computed fallback value exported automatically
What
When Claude Code builds a sandboxed shell command, if sandboxing is enabled and the command text references the literal string TMPDIR but no explicit sandbox tmp-dir override exists, it now computes a fallback tmp-dir value (called tmpDirBackstop) and passes it through when building the command.
That value is then used in the generated shell preamble: if tmpDirBackstop is set, the shell setup exports TMPDIR from it, but only if TMPDIR isn't already set in the environment.
Why
This prevents commands that rely on TMPDIR from breaking inside a sandbox where that variable might otherwise be unset, without overriding a TMPDIR the environment already provides.
The entry above is what we published on the day. These lines were added later, as Anthropic's own pages caught up, and they sit beside the original rather than replacing it.
| `image-cache/<session>/` | Attached images saved by Claude Code v2.1.274 and earlier. Later versions save pasted and attached images outside `~/.claude`, in an `images/` directory for each session under the temp directory that [`CLAUDE_C…claude-directory see the edit
Anthropic's documentation has since written up TMPDIR, on Explore the .claude directory.
Fixed $TMPDIR expanding empty in Bash commands that run outside the sandbox while sandboxing is enabled