Claude Code v2.1.221
Released Aug 4, 2026 (26 days ago).
246 issues reference this build
194 still open
52 resolved (21%)
"References this build" means the issue body mentions running 2.1.221 (from the
bug-report template). It reflects report volume, not a proven defect count — an issue may mention a
version without being caused by it. First-party data from the anthropics/claude-code tracker.
Top issues reported on v2.1.221
Ranked by community engagement (reactions and comments).
- [BUG] Claude in Chrome file_upload: eligible files fail with -32602 "paths received undefined" in interactive Cowork sessions (Windows) — related to #84880 / #85107 / #63334
- [BUG] Allow "cancelled" agents to be resumed anyway
- [BUG] LSP tool is pruned from all subagent tool sets in interactive sessions (present in the parent, and in subagents under -p)
- Claude Desktop (macOS): auto-update relaunches the app and silently kills live session hosts — no way to disable it
- [BUG] Same-day 17x variance in tokens charged per weekly quota point (Max 20x, 2.1.221)
- Background tasks SIGTERMed on an exact 30-minute internal timer (macOS CLI, long-lived session) — undocumented kill path, exit 144
- [BUG] Cross-session send_message: receiving session hangs indefinitely on message-initiated turns (regression 2.1.221 to 2.1.227, persists in 2.1.231)
- [BUG] Desktop: unrequested background `git fetch` to origin on diff/commit refresh — untraceable by design, and no setting disables it
- Background subagents intermittently stall with no final text, harness still reports status:completed (fresh subagent types only, not fork)
- [BUG] Regression 2.1.220 → 2.1.221 (Windows native): direct API connections die with ECONNRESET after first chunk when a Winsock LSP (Proxifier v3) is registered
- Opus 5 safeguards false-positive: authorized security work silently downgraded to Opus 4.8
- MessageDisplay hook returns valid displayContent but Claude Code renders the original text (terminal CLI, 2.1.221)
- Ctrl+B does not background the running command until the next keypress arrives (2.1.221)
- frequesnt and invalid Fable 5's safeguards flag
- [BUG] `claude-in-chrome` `file_upload` regressed in Claude Code 2.1.221 — two distinct failure modes in Cowork scheduled-task sessions (Windows)
- [BUG] TUI resize duplicates bands of already-emitted lines into scrollback
- [Bug] AskUserQuestion dialog obscures preceding assistant output in same turn
- [Bug] Notion MCP Integration fails with "Invalid authorization request" error
- Session rename does not propagate to a connected Remote Control session
- Sandbox blocks inbound SSO/OAuth loopback callback from Bash-tool CLI commands (Linux/WSL2)
- [BUG] Claude Desktop (Windows/MSIX 1.25927.0): main process OOM-crashes at ~4.4 GB during session restore — ~3 min uptime, every launch
- [Feature Request] Reimplement Claude Code in pure Rust to eliminate CPU spikes and terminal flickering
- [BUG] Context-compaction thrashing
- [BUG] Windows/MSIX: auto-update never stops the old package — CoworkVMService orphans, locks WindowsApps, app cannot relaunch (Event 658/7034 evidence)
- v2.1.221: OAuth login always fails with 'Login expired' - credentials.json expiresAt written as 0
- Sessions launched from the in-terminal session switcher run as background jobs; backgrounding should be an explicit toggle
- I'm Claude, an AI assistant made by Anthropic. I'm here to help you with Claude Code issues. If you have a genuine bug report or feature request for Claude Code, I'd be happy to help format it as a GitHub issue title. Please share the technical details of
- [BUG] `CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH` override silently fails via both cloud config paths (Environment Variables panel and repo `settings.json`)
- [Bug] False positive safety flag on cybersecurity website design tasks
- [BUG] Regression: Claude in Chrome file_upload rejects ALL paths after Claude Desktop update — "can't accept pre-read files" (worked on previous build, before/after captured in one session)
Changelog
What's changed
- [VSCode] Added Focus view: a chat-menu toggle that hides tool activity behind an expandable per-turn summary with a live running-tool indicator, toggled with
Ctrl+Alt+For the "Claude Code: Toggle Focus view" command - Added
mode: "mask"for sandbox credential files on Linux and WSL — sandboxed commands read a sentinel copy (the whole file, or just the spans captured by anextractregex) while the sandbox proxy substitutes the real value on egress; on macOS file masking falls back todeny - Added warnings to
claude plugin validatewhen a marketplace or plugin name would be rejected by Claude Desktop's managed marketplace sync - Added a
prompt-auditsubcommand to theclaude-apiskill for auditing prompts and tool descriptions for patterns written for older models - Fixed a Bash tool permission-check bypass where zsh could execute hidden commands in
[[ ]]regex conditionals; affected commands now prompt for permission - Fixed PowerShell permission checks mishandling paths containing quote characters on Windows; such paths now prompt for approval
- Fixed the thinking toggle having no effect for the rest of a session that started with thinking off; disabling an MCP server mid-connect no longer silently reverts
- Fixed MCP servers from
--mcp-confignot being connected before the first turn in print mode (-p), which made the model emit tool calls as literal text - Fixed @-mentioned files being silently dropped when pressing Esc to retract a prompt and resubmitting it
- Fixed a crash when preparing API requests for SDK MCP tools named after built-in object properties such as
constructor - Fixed WebSearch failing with a 400 error at effort
xhigh/maxwhen thinking is disabled - Fixed sandboxed large uploads failing with TLS errors through the sandbox proxy
- Fixed Team and Enterprise spend-limit message incorrectly blaming the org's monthly limit instead of your individual spend limit
- Fixed Bedrock authentication with AWS SSO named profiles failing in desktop-managed sessions on Windows machines that set a stray
HOMEenvironment variable - Fixed
CLAUDE_CODE_RESUME_INTERRUPTED_TURN=0not disabling interrupted-turn auto-resume; falsy values are now honored - Fixed a rare wake-from-sleep race where two Claude Code processes could both refresh the same MCP connector or WIF OAuth token at once, forcing re-authentication
- Fixed renaming a session from Claude Code Desktop or claude.ai not updating the CLI's session name; session names from every rename surface are now sanitized
- Fixed plugin- and org-delivered skills named after terminal-only built-ins (e.g.
/help,/feedback) being un-invocable in non-interactive sessions - Fixed the "Plugins changed" notification lingering after plugins were reloaded instead of clearing
- Fixed Vim mode: the yank register now survives dialogs, history search, and the transcript view instead of being silently emptied
- Fixed Vim mode: undoing back to an empty prompt now arms the "press ← again" confirm before returning to the agent view
- Improved tool search on Google Vertex AI: re-enabled for Claude 4.5-generation and newer models
- Improved auto mode: permission checks for parallel tool calls are now cache-efficient, and switching modes while a check is pending reliably prompts instead of applying the stale result
- Reduced prompt-cache costs for auto-mode permission checks by reusing the cached conversation prefix across decisions
- Improved Stats panel to count cache tokens in its token totals, with a breakdown by input, output, cache read, and cache write
- Improved
/ultrareviewerror messages when a repo shares no history with its base: a checkout with no branches is now refused up front with advice to create one, and refusal hints no longer suggestgit fetch --unshallowon clones that are already complete - Improved Windows startup: process creation times are now read via a native kernel32 call instead of spawning PowerShell, so endpoint s