TL;DR
New
sandbox.filesystem.disabledsetting skips filesystem isolation while keeping network egress control. If you've been working around sandbox file-access restrictions in cloud or remote sessions, add this to your settings and drop the workaround.Long sessions no longer stall on every turn. Message normalization cost was growing quadratically with turn count, causing multi-second pauses and slow resumes in extended sessions.
Your answers to AskUserQuestion no longer get overridden with "continue" framing. Free-text responses now reach Claude with neutral wording, so "wait" and "explain first" actually land as instructions.
Worktree subagent git isolation closes another escape path (more below).
git -C,--git-dir, andGIT_DIR/GIT_WORK_TREEcan no longer redirect a worktree agent into the shared checkout.
New in 2.1.216
2.1.216 (July 21, 2026)
- Added
sandbox.filesystem.disabledsetting to skip filesystem isolation while keeping network egress control - Fixed a slowdown in long sessions where message normalization cost grew quadratically with the number of turns, causing multi-second stalls and slow resumes
- Fixed auto mode denying commands with "HTTP 401" classifier errors after the OAuth token expired or rotated mid-session
- Fixed AskUserQuestion telling Claude to continue even when your answer asked it to wait or explain first; free-text answers now get neutral wording
- Fixed Claude Code on the web re-asking the same question and dropping your answer after the session sat idle for a few minutes
- Fixed @-mentions silently attaching nothing after file-modifying hooks, vim dot-repeat of
c-operators and paste, statusline running twice on resume, and resume-picker hangs on failure - Fixed resumed background agent sessions reverting to the default agent: the agent's prompt and tool restrictions are now restored
- Fixed worktree-isolated subagents redirecting git into the shared checkout via
git -C,--git-dir, orGIT_DIR/GIT_WORK_TREE - Fixed worktree sessions landing in another project's leftover worktree when the working directory did not match the selected project
- Fixed background sessions whose worktree has no git repository being undeletable
- Fixed
claude daemon stop --anypotentially terminating an unrelated process via a stale legacy daemon lockfile - Fixed Esc-Esc at an idle prompt not opening the rewind picker in long-running sessions with background tasks
- Fixed Bash command permission checking for compound statements with redirects inside
&&lists or negations - Fixed pressing Ctrl+X twice in the agent list failing to delete a session, and deleted sessions reappearing when their background worker had died
- Fixed background subagents getting cancelled when a high-priority message arrives during their startup window
- Fixed mouse and focus garbage in the terminal while a GUI editor from
/memory,/plan,/keybindings, or Ctrl+G is open;/memoryno longer waits for the editor to close - Fixed Claude-in-Chrome 403-looping on reconnect when the session's OAuth token lacks a required scope
- Fixed workflow saves and scheduled-task writes following a symlink at
.claude, which could redirect writes outside the project - Fixed MCP re-authenticate revoking working credentials before the new sign-in succeeds, and the reconnect needs-auth message in background sessions pointing at an unusable command
- Fixed read-only commands on Windows accessing network paths without a permission prompt
- Fixed Bash command parsing of non-ASCII characters to match real shell word boundaries
- Fixed PowerShell tool permission validation of commands containing invisible Unicode characters
- Fixed dialogs in fullscreen mode stretching past the right-hand edge of their panel
- Fixed the
/configsettings list in fullscreen mode clipping its keyboard-hint footer - Fixed the transcript-mode (Ctrl+O) footer hint wrapping on terminals narrower than 104 columns
- Fixed the Prometheus metrics endpoint (
OTEL_METRICS_EXPORTER=prometheus) emitting invalid# UNITlines - Fixed skills and commands changed during a session not appearing in the slash menu until restart
- Fixed plugin skills with a
namefrontmatter field losing their plugin prefix in slash-command autocomplete - Fixed telemetry misreporting permission denials: failed permission-prompt requests no longer count as user rejections, and user interrupts are now reported as user aborts instead of rejections
- Improved the
/forkconfirmation to one line with the new session's name,claude attachid, and a note when the copy shares your checkout - Improved validation of
gitandghcommand arguments in the PowerShell tool - Improved the
/ultrareviewdiff-too-large error to show configured limits, measured diff size, and largest contributing files - Improved
/code-review ultraempty-diff message to name the exact base ref and suggest passing an explicit base - Improved the spend limit adjustment prompt to show the server's reason when a spend limit change is rejected
/contextnow shows an explicit warning when the conversation exceeds the context window, and a failed/compactdisplays as an error/rewindno longer restores or deletes files through symlinks or hard links at tracked paths and reports how many paths it skipped- Background sessions:
/mcpand/install-github-appnow park a "needs input" request in the agent view when no client is attached - Updated the bundled dataviz skill: reordered the default chart palette and fixed guidance that suggested direct labels for four-series charts
- [VSCode] Fixed right-to-left text (Arabic, Hebrew, Persian) rendering in the wrong order when mixed with English or code
- Fixed cloud sessions dropping the in-flight message when the session's container restarts mid-turn; the interrupted turn now re-runs on resume instead of leaving the session unresponsive
Notes
Worktree git isolation, second pass
2.1.210 fixed worktree subagents running git-mutating commands against the main checkout. 2.1.216 closes the remaining vector: CLI flags and environment variables that override the git directory. Specifically, git -C <path>, --git-dir, and the GIT_DIR/GIT_WORK_TREE environment variables could redirect a worktree-isolated subagent's operations back into the shared checkout, defeating the isolation boundary. If you rely on isolation: 'worktree' for parallel agents that mutate files, the boundary is now meaningfully tighter across both the command path (2.1.210) and the configuration path (2.1.216).
Symlink hardening at .claude continues
2.1.212 fixed worktree creation following a repository-committed symlink at .claude/worktrees. 2.1.216 extends that to workflow saves and scheduled-task writes. A symlink at .claude could redirect writes outside the project directory. Same attack surface, different write paths. Both are now hardened.