Claude Code v2.1.286
Released Sep 30, 2026 (14 days ago).
187 issues reference this build
157 still open
30 resolved (16%)
"References this build" means the issue body mentions running 2.1.286 (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.286
Ranked by community engagement (reactions and comments).
- [BUG] 2.1.286 idle compaction silently discards working context in long-running sessions; no opt-out, logged as "manual"
- Desktop app draws a mod's AbovePrompt band in only one chat at a time
- Desktop app redraws every mod render site on any state change, which breaks Buttons and restarts SVG animations
- [Bug] Anthropic API Error: Message flagged by Opus 5.5 safeguards on legitimate context export request
- [FEATURE] Voice tap mode: option to insert without sending, and start recording when the prompt already has text
- [FEATURE] Worktree sessions should start in the subdirectory they were opened from (monorepos)
- VS Code extension ignores external @imports in project CLAUDE.md (terminal loads them)
- SendMessage to a cloud session says "one-way for now … do not ask it to reply here", but the cloud session can reply via Remote send_message
- Desktop app: no way to link or jump to another part of the session transcript (reply links, mods `$.ui.scroll`)
- [Bug] Claude Code degraded response quality and instruction following regression
- [BUG] Windows/Git Bash: shell snapshot silently writes the raw Windows PATH when the PATH probe times out, so ls/grep/date are "command not found" for the whole session
- [FEATURE] Mods: a pane element that renders a local web page (WebView), no server needed
- [BUG] Agent can be prompt-injected to send email address in curl request
- [BUG] Windows: the Bash tool halves every backslash pair in a command before Git Bash parses it (heredocs and single quotes included)
- [Auto mode] Allowed 67 times, refused once: the classifier gives the same command different verdicts (227 refusals measured, allow rules in place)
- [BUG] MCP App widgets lose the tool result's _meta when a Code-tab conversation is reloaded
- [BUG] Idle auto-update stops all sessions and Remote Control never comes back after the relaunch
- [BUG] Desktop: cross-session send_message from an SSH-remote session carries no sender mode, so bypass-mode receivers hold it and refuse it after 5 min
- [BUG] VS Code: Ctrl+Shift+Tab (tab switching) also cycles permission mode; Ctrl+Tab sometimes skips a tab
- [BUG] MCP tool call: null inside an object argument has no effect on the server
- [FEATURE] Remote Control should reconnect all sessions automatically when the Desktop app restarts
- [BUG] Desktop split view: plugin AbovePrompt band renders only in the leftmost pane
- [security-guidance] Reviews that fail with API errors (e.g. HTTP 401) are reported as clean and marked reviewed
- [BUG][Windows/Desktop] Code hangs ~7.5 min then ECONNREFUSED; bundled claude.exe works standalone
- [Bug] Windows: Bash tool silently truncates commands over ~8K chars (each ' counts ~5) and collapses \\ to \ in quoted heredocs
- [Desktop] Bash file-change diff (bashEditDiff) is computed but never shown in the Code tab
- [FEATURE] Desktop Code tab: let AskUserQuestion cards open collapsed
- Fullscreen renderer: with a task list on screen, a long prompt hides the line being typed (input cap ignores the rows above the prompt)
- [FEATURE] Desktop: file upload in the in-app Browser (parity with Claude in Chrome's file_upload)
- [BUG] Browser pane treats NAT64 addresses (64:ff9b::/96) as private network, blocking every IPv4-only public site
Changelog
What's changed
- Added a count such as "2 of 5" to the permission prompt when several permission requests stack up
- Added mouse support for the "N more" rows of lists in fullscreen mode: click one to jump to that end of the list, with hover and pressed states
- Fixed several Claude Code processes and IDE extensions each opening a login browser when gcpAuthRefresh or awsAuthRefresh credentials expire
- Fixed
claude --resumeand--continuesometimes losing every turn after a batch of parallel tool calls when the earlier session crashed or was killed - Fixed API 400 errors after a tool or hook returned an object, number or boolean instead of text, including in resumed sessions
- Fixed cloud sessions with very large histories never waking up because the container was stopped while the transcript was still loading
- Fixed the Claude apps gateway's spend meter pricing 1-hour prompt cache writes at the cheaper 5-minute rate, and counting only the first model call's input tokens on streamed turns that run a server-side tool such as web search
- Fixed macOS sessions still showing "Not logged in" or "Login expired" after
/loginsucceeds in another Claude Code window when a leftover~/.claude/.credentials.jsonexists - Fixed every turn failing when the Anthropic API refuses the model your default or a model alias resolves to: Claude Code now retries once on the previous model of the same tier
- Fixed Remote Control sessions (including
claude remote-control) staying connected after your organization's policy turns Remote Control off; they now disconnect with a notice - Fixed refusal and
--fallback-modelretries failing when the fallback model can't run fast; they now run at standard speed, with a one-time notice in interactive sessions - Fixed headless sessions repeating the "MCP servers require authentication" reminder after a successful re-authentication when the MCP discovery cache is enabled
- Fixed
claude auth statusreporting a Console sign-in's stored API key asclaude.ai; it now reportsapi_key, and the VS Code extension treats that session as an API key session - Fixed
/statuslisting an Anthropic profile beside an API key as if both were in effect; the profile is now marked as not in use - Fixed Claude not being told when a file attached to a message sent over Remote Control did not arrive, and a file sometimes getting only 10 seconds for its last download try
- Fixed a Remote Control message that arrived while Claude Code was exiting being marked delivered and then never answered; it now stays queued for the session's next run
- Fixed MCP error messages showing a credential's value when "Bearer" or "Basic" came before its key name
- Fixed percent-encoded Bearer tokens being only partly masked in error messages
- Fixed redacted logs and transcripts showing a secret whose key name has an invisible character inside, such as a zero-width space
- Fixed logs and transcripts showing part of a URL password that contains punctuation such as
), quotes,],&or a second@, or that runs past a/to a bracketed host such as[::1]in an ssh URL - Fixed the session transcript in the zip that
/feedbacksaves to disk containing invalid JSON lines after secret redaction - Fixed MCP connectors listing no tools for up to a day after their server dropped the older MCP handshake
- Fixed a repeat MCP sign-in request from Claude replacing the pending sign-in link, which could stop that link from working
- Fixed
/usagenot crediting an MCP server for a tool call made while that server was still connecting or had only just connected, such as right after a restart - Fixed plugins enabled on claude.ai occasionally going missing from Claude Code for a session after a transient server error
- Fixed a message typed into a running subagent showing twice in its transcript after the subagent read it
- Fixed subagent hand-back messages showing a raw task id instead of the agent's name when the subagent had no registered n