Claude Code: What's New in April 2026
A summary of all updates, new features, and bug fixes released for Claude Code during April 2026.
1releases7features30fixes14improvements
New Features in April 2026
- Added "defer" permission decision to PreToolUse hooks, allowing headless sessions to pause and resume tool calls for re-evaluation.(v2.1.89)
- Enabled flicker-free alt-screen rendering via the CLAUDE_CODE_NO_FLICKER=1 environment variable for virtualized scrollback.(v2.1.89)
- Introduced PermissionDenied hook that fires after auto mode classifier denials, allowing the model to retry by returning {retry: true}.(v2.1.89)
- Added named subagents to @ mention typeahead suggestions.(v2.1.89)
- Enabled non-blocking MCP connection mode using MCP_CONNECTION_NONBLOCKING=true for -p mode, and bounded server connections to 5s.(v2.1.89)
- Auto mode denied commands now show a notification and are visible in /permissions → Recent tab for retrying.(v2.1.89)
- Introduced /buddy for April 1st, a small creature that watches you code.(v2.1.89)
Bug Fixes in April 2026
- Fixed Edit(//path/**) and Read(//path/**) allow rules to correctly check the resolved symlink target instead of just the requested path.(v2.1.89)
- Fixed voice push-to-talk activation issues with modifier-combo bindings and resolved WebSocket upgrade rejections in voice mode on Windows.(v2.1.89)
- Fixed Edit/Write tools incorrectly doubling CRLF and stripping Markdown hard line breaks (two trailing spaces) on Windows.(v2.1.89)
- Fixed StructuredOutput schema cache bug that caused approximately 50% failure rate when using multiple schemas.(v2.1.89)
- Fixed memory leak where large JSON inputs were retained as LRU cache keys during long-running sessions.(v2.1.89)
- Fixed crash occurring when removing a message from very large session files (over 50MB).(v2.1.89)
- Fixed LSP server zombie state after a crash; the server now restarts on the next request instead of failing until the session restarts.(v2.1.89)
- Fixed prompt history entries containing CJK or emoji being silently dropped when they fell on a 4KB boundary in ~/.claude/history.jsonl.(v2.1.89)
- Fixed /stats undercounting tokens by excluding subagent usage and losing historical data beyond 30 days when the stats cache format changed.(v2.1.89)
- Fixed -p --resume hangs when deferred tool input exceeds 64KB or lacks a deferred marker, and fixed -p --continue not resuming deferred tools.(v2.1.89)
- Fixed claude-cli:// deep links failing to open on macOS.(v2.1.89)
- Fixed MCP tool errors truncating to only the first content block when the server returned multi-element error content.(v2.1.89)
- Fixed skill reminders and other system context being dropped when sending messages with images via the SDK.(v2.1.89)
- Fixed PreToolUse/PostToolUse hooks receiving file_path as a relative path instead of the documented absolute path for Write/Edit/Read tools.(v2.1.89)
- Fixed autocompact thrash loop by detecting when context refills immediately after compacting three times and stopping with an actionable error.(v2.1.89)
- Fixed prompt cache misses in long sessions caused by tool schema bytes changing mid-session.(v2.1.89)
- Fixed nested CLAUDE.md files being re-injected dozens of times in long sessions that read many files.(v2.1.89)
- Fixed --resume crash when the transcript contained a tool result from an older CLI version or an interrupted write.(v2.1.89)
- Fixed misleading "Rate limit reached" message when the API returned an entitlement error; now shows the actual error.(v2.1.89)
- Fixed hooks if condition filtering not matching compound commands (e.g., ls && git push) or commands with env-var prefixes.(v2.1.89)
- Fixed collapsed search/read group badges duplicating in terminal scrollback during heavy parallel tool use.(v2.1.89)
- Fixed notification invalidates not clearing the currently-displayed notification immediately.(v2.1.89)
- Fixed prompt briefly disappearing after submit when background messages arrived during processing.(v2.1.89)
- Fixed truncation of Devanagari and other combining-mark text in assistant output.(v2.1.89)
- Fixed rendering artifacts on main-screen terminals after layout shifts.(v2.1.89)
- Fixed voice mode failing to request microphone permission on macOS Apple Silicon.(v2.1.89)
- Fixed Shift+Enter submitting instead of inserting a newline on Windows Terminal Preview 1.25.(v2.1.89)
- Fixed periodic UI jitter during streaming in iTerm2 when running inside tmux.(v2.1.89)
- Fixed PowerShell tool incorrectly reporting failures when commands like git push wrote progress to stderr on Windows PowerShell 5.1.(v2.1.89)
- Fixed potential out-of-memory crash when the Edit tool was used on very large files (>1 GiB).(v2.1.89)
Improvements in April 2026
- Improved collapsed tool summary to show "Listed N directories" for ls/tree/du instead of "Read N files".(v2.1.89)
- Improved Bash tool to warn when a formatter/linter command modifies files previously read, preventing stale-edit errors.(v2.1.89)
- Improved @-mention typeahead to rank source files above MCP resources with similar names.(v2.1.89)
- Improved PowerShell tool prompt with version-appropriate syntax guidance (5.1 vs 7+).(v2.1.89)
- Changed Edit tool to work on files viewed via Bash with sed -n or cat, without requiring a separate Read call first.(v2.1.89)
- Changed hook output over 50K characters to be saved to disk with a file path + preview instead of being injected directly into context.(v2.1.89)
- Changed cleanupPeriodDays: 0 in settings.json to be rejected with a validation error instead of silently disabling transcript persistence.(v2.1.89)
- Changed thinking summaries to no longer be generated by default in interactive sessions; set showThinkingSummaries: true to restore.(v2.1.89)
- Preserved task notifications when backgrounding a running command with Ctrl+B.(v2.1.89)
- PowerShell tool on Windows now prompts for external-command arguments containing both a double-quote and whitespace due to PS 5.1 hardening.(v2.1.89)
- /env now applies to PowerShell tool commands (previously only affected Bash).(v2.1.89)
- /usage now hides redundant "Current week (Sonnet only)" bar for Pro and Enterprise plans.(v2.1.89)
- Image paste no longer inserts a trailing space.(v2.1.89)
- Pasting !command into an empty prompt now enters bash mode, matching typed ! behavior.(v2.1.89)