Claude Code v2.1.246
Released Aug 25, 2026 (4 days ago).
177 issues reference this build
174 still open
3 resolved (2%)
"References this build" means the issue body mentions running 2.1.246 (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.246
Ranked by community engagement (reactions and comments).
- [FEATURE] Accept a link format in hook `systemMessage`: OSC 8 or markdown, as statusline and assistant output do
- [BUG] Code tab writes UI render metadata (start_timestamp/stop_timestamp/flags) into transcript JSONL, causing unrecoverable API 400 that recurs after full sanitization
- fullscreen sticky prompt header stopped rendering in 2.1.247 (regression: memoized isSticky() never re-evaluates)
- [BUG] Eight Defects Related to Stealth Restart of Desktop App: Hidden Relaunch for Updates Silently Destroys Running Sessions (Symptom: "Can’t reach your computer" and "Remote Control host unreachable (computer_unreachable)")
- [MODEL] Trailing unsolicited blocks ("Two things worth knowing...") survive CLAUDE.md rules, a Concise output style, and per-turn hook injection
- [BUG] totalTokensReminder causes repeatable prompt-cache floor in tool loops; off restores incremental hits
- [Bug] Mouse scroll scrolls prompt input instead of command history
- [FEATURE] Compress API request bodies with gzip by default
- [BUG] Desktop sidebar: "Show N more" is one-way — no "Show less" and the reveal count never decreases
- [Bug] Unclear UX for bug report review prompt with numbered options
- [BUG] browser pane causing GPU crash
- [BUG] /fork starts the forked session in auto mode when the parent session's permission mode was not recorded in respawnFlags
- Root AGENTS.md not auto-loaded at session start when no CLAUDE.md exists
- [Bug] Long-lived sessions crash after 8-10 hours with excessive safety filtering
- Bash tool unescapes backslashes inside a quoted heredoc
- Model emits cwd-relative file links for files it edited OUTSIDE cwd (git worktree sessions). In full worktrees these resolve silently to a stale copy at a different commit.
- [BUG] [Claude Desktop / Linux] Cowork & Dispatch hang on infinite spinner — app opens its own storage directories with O_DIRECT, ext4 returns EINVAL
- Desktop app SIGKILLs its own Claude Code workers on a healthy Mac, then blames endpoint security (gates on raw free pages, not memory pressure)
- Windows: CCD session host repeatedly exits killing live background tasks ('torn down with N live background task(s)') — Desktop 1.37937.3 / runtime 2.1.246, filesystem MCP relay flapping
- "API Error: The response stopped arriving" — 33 times in one day, zero on any prior day; error provides no attribution to diagnose it
- [Bug] MSIX stealth update relaunch fails with 0x80070020, app becomes unlaunchable
- [BUG] Claude Desktop linux-arm64: no local Claude Code session is ever persisted — bundled Electron 42.10.0 has wrong fcntl constants, every private-dir write fails with EINVAL
- Linux: hook blocked reading stdin (pipe kept open, no EOF) wedges the session for hours; declared hook timeout not enforced (2.1.246)
- [BUG] macOS: Local Network permission is lost on every auto-update (versioned claude.app bundle path); 20+ stale permission rows accumulate
- [BUG] macOS: Desktop-hosted Claude Code is spawned via Helpers/disclaimer, so all TCC-protected folders return EPERM — unfixable by Full Disk Access, and no FDA was ever granted
- Windows Smart App Control blocks signed Claude components on Windows 11 ARM64 (service killed, app crashes)
- [FEATURE] Desktop app should keep Remote Control connected automatically across app updates (Codex-style always-on)
- [FEATURE] See sessions across the Claude accounts I own on one machine
- [BUG] Windows: MSIX auto-update leaves Claude Desktop unlaunchable (Modified/NeedsRemediation) — surviving chrome-native-host.exe blocks package-data cleanup (0x80073D05 → 0x80073CF6); winget repair falsely reports success
- Remote Control: model switch from mobile composer does not propagate to host session
Changelog
What's changed
- Added a startup warning for Bash allow rules with a wildcard before the subcommand (e.g.
Bash(git * main)), since they also match options inserted before the subcommand - Added an Auto mode tab to
/permissionsfor viewing and editing auto mode classifier rules - Added the turn's completion time to the end-of-turn duration line, e.g.
✻ Sautéed for 23s · done 6:05 PM - Fixed fullscreen mode showing a blank transcript after resizing the terminal and jumping to the bottom until the next keypress
- Fixed a severe transcript slowdown when a diff contained a very long single line (e.g. a base64 string); such lines now render truncated with a marker
- Fixed erratic fullscreen scrolling when positioned at an earlier message, including jump-to-bottom getting stuck mid-transcript
- Fixed background sessions failing to open after 45 seconds when Claude Code's starting directory had been deleted, the machine had slept, or the host is slow to start processes
- Fixed background sessions failing to open with "Couldn't start the background service … EACCES" when another Claude Code process was re-installing the npm package at that moment
- Fixed markdown rendering being disabled for a whole message when its first 500 characters contained no markdown, and for
+/N)lists and setext headings - Fixed MCP tool calls interrupted by an incoming message in headless/remote sessions being reported to the model as "completed with no output" instead of an explicit interrupted error
- Fixed MCP tool arguments being sent as JSON strings when the parameter's schema is empty (
{}), instead of their real type - Fixed a command interrupted mid-run showing as "Ran 1 shell command" with no sign it was cut
- Fixed pressing ← or running
/backgroundduring a dynamic workflow restarting its finished subagents; it now asks first and says how many subagents would restart - Fixed opening a just-started session in
claude agentswhile its worker was still booting (common on Windows) stopping it with "was stopped while the respawn was in flight" - Fixed
claude agentslisting a backgrounded named session twice; backgrounding the same conversation again now numbers the new row (e.g.my-session (2)) - Fixed the background retention sweep removing git worktrees under
.claude/worktrees/that you created yourself when an old background-session record pointed at them - Fixed auto mode tool calls being denied as "temporarily unavailable" on very large sessions by scaling the safety-check deadline with prompt size
- Fixed the plugin cache creating duplicate SHA-named directories for the same plugin
- Fixed plugin skills whose frontmatter
namealready includes the<plugin>:prefix showing it doubled in the slash menu (e.g./plugin:plugin:skill) - Fixed
claude plugin updatefailing for an installed plugin given its bare name (only the fully-qualified name worked) - Fixed plugin installation failing when
plugin.jsonwas saved with a UTF-8 byte-order mark (BOM) - Fixed
/reload-pluginsreporting 0 skills for plugins that define skills underskills/*/SKILL.md - Fixed hook error messages showing a literal
${CLAUDE_PLUGIN_ROOT}instead of the resolved plugin path - Fixed
/renamereplacing the theme's prompt border color (including a custom theme'spromptBorder) with the default cyan; the border now keeps your theme's color unless you pick one with/color - Fixed custom theme diff colors (
diffAdded/diffRemovedand their dimmed variants) being ignored in diffs and the/themepreview - Fixed a
keybindings.jsonbinding with an unknown action name silently deadening that key; it is now skipped so the default binding keeps working, and a warning is logged under--debug - Fixed
/statsactivity heatmap showing each day's activity one cell off (Sunday's count under Monday) in timezones east of UTC - Fixed
/forkfrom an already-forked or backgrounded session starting the new session with an empty conversation - Fixed promp