EnterWorktreenow prompts before entering worktrees outside.claude/worktrees/. If your workflow uses worktrees in custom locations, expect a new confirmation dialog that was not there before.MCP per-server
request_timeout_mswas silently ignored in fresh sessions. Custom timeouts via--mcp-configor.mcp.jsononly took effect after a reconnection, so long-running MCP tool calls were hitting the 60s default until now (more below).CLAUDE_CODE_EXTRA_BODYwas silently dropped by background agents andclaude agents. The shell-exported override now follows the dispatching session, so background workers will actually use your custom API parameters./doctoris now a comprehensive setup checkup (/checkupis its alias). It can also propose trimming checked-inCLAUDE.mdfiles by cutting content Claude could derive from the codebase.
New in 2.1.206, 2.1.205
2.1.206 (July 10, 2026)
- Added directory path suggestions to
/cd, matching/add-dirbehavior - Added a
/doctorcheck that proposes trimming checked-inCLAUDE.mdfiles by cutting content Claude could derive from the codebase /commit-push-prnow auto-allowsgit pushto the repo's configured push remote (remote.pushDefault, or the sole remote when only one is configured) in addition toorigin- Gateway:
/loginnow supports Anthropic-operated public gateway endpoints EnterWorktreenow asks for confirmation before entering a git worktree outside the project's.claude/worktrees/directory- Background agents now upgrade to a new version in the background right after a Claude Code update, instead of paying a slow stale-session upgrade when you attach
- Fixed an expired login failing every model with a misleading "There's an issue with the selected model" error instead of prompting to run
/login - Fixed
claude --resumeand--continuenot responding to keyboard input on startup - Fixed MCP servers configured via
--mcp-configor.mcp.jsonignoring a per-serverrequest_timeout_ms, which caused long-running MCP tool calls to time out at the 60s default in fresh sessions - Fixed
CLAUDE_CODE_EXTRA_BODYbeing silently ignored byclaude agents/--bgbackground workers; the shell-exported override now follows the dispatching session - Fixed OAuth MCP servers requiring manual re-authentication after a single failed token refresh
- Fixed
--permission-prompt-toolpointing at an MCP server crashing with "MCP tool not found" on cold start before the server finishes connecting - Fixed
/modelpicker rows printing a price for a different model than the row named, and stopped quoting first-party list prices on providers that don't bill them - Fixed server-provided model rows being misplaced in the
/modelpicker when an entitlement or allowlist restriction drops the row they were positioned against - Fixed desktop sessions getting stuck showing "running" after a slash command was sent mid-turn
- Fixed keyboard input being ignored in the agents view when a setup prompt appeared before a bare
claude --resumeon Windows - Fixed
claude rmleaving the removed job in the daemon roster, causing the row to reappear inclaude agents - Fixed
/remote-controlshowing "Unknown command" when logged out, it now explains how to sign in - Fixed left arrow not stepping back out of a phase or agent in the workflow detail view
- Fixed
/statuslisting the same broken-install warning twice - Fixed false "disused plugin" tips and skewed disuse telemetry for LSP plugins
- Fixed
/doctor's update check to compare Homebrew installs against their cask's channel instead of the settings channel - Fixed the fullscreen jump-to-bottom pill suggesting Ctrl+End on macOS, not showing rebound chords, and wrapping over the transcript
- Bedrock: fixed a multi-minute startup hang when using an
awsCredentialExporthelper on networks with restricted egress - Improved
/code-reviewfindings quality on claude-opus-4-8 across all effort levels - Improved agents view: status column now uses full terminal width instead of truncating at 64 characters
- Changed agents view: Ctrl+X now permanently removes a completed session, and sessions no longer render twice; deleted background jobs stay deleted
2.1.205 (July 10, 2026)
- Added an auto mode rule that blocks tampering with session transcript files
- Fixed
--json-schemasilently producing unstructured output when the schema was invalid, and schemas using theformatkeyword being rejected - Fixed a message sent while Claude was working being silently lost when the turn ended at the
--max-turnslimit - Fixed Windows worktree removal deleting files outside the worktree when an NTFS junction or directory symlink existed inside it
- Fixed background agents staying shown as "failed" or "completed" in the agent list after being resumed with
SendMessage - Fixed background jobs flipping from "needs input" back to "working" in the agent list when the agent's turn contained no readable text
- Fixed
claude attacherroring when a background agent was mid-upgrade restart instead of waiting for it to come back - Fixed session-to-PR linking missing a PR created in a Bash call whose output exceeded the 30K inline limit
- Fixed
claude mcp add-from-claude-desktopgetting stuck when a server name contains unsupported characters; invalid names are now reported and remaining servers still import - Fixed a plugin LSP server that fails to initialize preventing a valid LSP server from another plugin handling the same file extension
- Fixed a Windows crash when the directory Claude was launched from is deleted, locked, or unmounted while a command is running
- Fixed a crash when a file watcher was closed while a directory scan was still in flight
- Fixed project verify skills being rewritten on every session instead of only when a documented command changed
- Fixed the agent view rendering one line too high and clipping its header when the job list slightly overflowed the screen
- Fixed background tasks in the web and mobile Remote Control panels showing stale "Running" status by forwarding full task state on every membership change
- Improved auto mode to ask before running
rm -rfon a variable it can't resolve from context - Auto-update binary downloads now stream to disk instead of buffering in memory, cutting the updater's peak memory usage by roughly 400 MB
- Background task notifications now explicitly state that no human input has occurred, preventing fabricated in-transcript approvals from being acted on
- Improved agent view: sessions that edit, merge, comment on, or push to an existing PR now link it in
claude agents - Improved agent view: rows now show a colored state word and a classifier-written headline instead of raw tool call text, and the peek opens with full status including the exact ask for blocked sessions
/doctoris now a full setup checkup that can diagnose and fix issues;/checkupis its alias- Reserved the "Claude Browser" MCP server name (alongside "Claude Preview") ahead of the Claude Desktop pane rename; user-configured MCP servers can no longer register under either name
- Fixed Cowork VM-mode local-agent sessions failing to start with "Not logged in, Please run /login" on CLI 2.1.203+
Notes
MCP timeout handling across versions
The per-server request_timeout_ms fix in 2.1.206 closes a gap that opened differently at different layers. In 2.1.187, CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT was added as a global safety net for calls that hang indefinitely (5-minute default). But the per-server config path, which lets you set a shorter or longer timeout for a specific server, was broken in fresh sessions. If you were relying on the global env var as a workaround, you can now move to per-server config for finer control.
Background agent reliability arc
These two releases continue a sustained push on background agent stability that has run through nearly every version since 2.1.196. The headline additions: background upgrades now happen proactively instead of stalling when you attach (2.1.206), CLAUDE_CODE_EXTRA_BODY actually propagates (2.1.206), claude attach waits during upgrade restarts (2.1.205), and stale status indicators in Remote Control panels are fixed (2.1.205). If you had been avoiding --bg because of reliability concerns, the surface is materially better now than it was two weeks ago.
Auto mode tightening
2.1.205 adds a rule blocking tampering with session transcript files, and auto mode now prompts before running rm -rf on a variable it cannot resolve. This follows the pattern from 2.1.183, which blocked destructive git commands and terraform destroy unless explicitly asked. The direction is clear: auto mode is becoming stricter about irreversible operations, which is the right trade.