Release notes

FEATURE

Optional real-time spellcheck underlines typos as you type

You can now turn on real-time spelling feedback while entering a terminal prompt. When you enable the optional spellcheck setting, it uses your locally installed aspell, hunspell, or ispell tools to underline misspelled words as you type. To turn it on, add it to your ~/.claude/settings.json:

{"spellcheck": true}

This catches misspellings and prompt typos before you send the message.

BUGFIX

Prompt cache survives language server disconnects and reconnects

When language servers disconnect or reconnect in the middle of a session, your prompt cache will no longer be wiped clean. Previously, any brief hiccup or reconnection with a language server invalidated the entire prompt cache, forcing subsequent turns to re-process tokens and waste credits. The cache is now safely preserved across mid-session language server reconnections.

BUGFIX

Multi-line prompt highlights align accurately, and slash commands stop showing raw HTML entities

Multi-line prompt input highlighting and slash command characters now render cleanly. Previously, syntax highlights for slash commands, keywords, and @ mentions could appear shifted by one or more characters across multi-line inputs. Additionally, running a slash command while Claude was actively streaming a response showed raw HTML entities instead of real characters. Both visual bugs are now resolved.

BUGFIX

Terminal Markdown lists align properly at depth 3+ with hanging indents

When you read deeply nested Markdown lists in the terminal UI, third-level and deeper items now align properly, and wrapped lines use a hanging indent. Previously, lists nested at depth 3 or deeper suffered from misalignment, and list items that wrapped across multiple lines lacked clean indentation.

FEATURE

Permission prompts tighten safety, preventing accidental blanket grants on Shift+Tab

Permission prompts are now much safer and more accurate about what you grant. Previously, pressing Shift+Tab inside the permission comment field accidentally approved the edit and granted session-wide edit permissions instead of just closing the comment box. In addition, permission dialog text and "don't ask again" options now strictly match the true scope of the grant, and the "don't ask again" option is withheld whenever the full contents cannot be displayed.

BUGFIX

Notebook approval dialogs explain why unreadable cell contents could not be shown

Notebook cell delete and replace approval dialogs now state why content is missing when a read fails. Previously, if Claude could not read a notebook file or an individual cell, the approval dialog silently omitted the existing content, making it look as though you were deleting an empty cell. The dialog now explicitly explains why the existing content could not be read so you can make an informed decision before approving the change.

BUGFIX

Rapid dialog navigation selects your actual destination on Enter

Rapidly navigating dialogs with arrow keys and Enter now picks the correct option. Previously, if you tapped an arrow key and immediately pressed Enter in quick succession, the dialog sometimes lagged behind and selected the previously highlighted choice instead of the one you just moved to. Dialog keyboard handling is now properly synchronized to catch fast keystrokes.

BUGFIX

Agent tool lists available subagents when an omitted type lacks a default

When you omit subagent_type while calling the Agent tool in a session without a general-purpose default, you now get a clear error listing the agents available to you. Previously, in sessions where the standard general-purpose agent was not supported, omitting the subagent_type parameter falsely advertised that a default was present.

BUGFIX

SendMessage rejects oversized cross-session payloads up front instead of dropping them

SendMessage now explicitly rejects oversized messages before delivery rather than dropping them into the void. Previously, when sending data across different sessions, messages exceeding the cross-session payload limit were silently discarded without any warning or error, leaving developers wondering where the message went. The system now validates size constraints up front and immediately returns a refusal error so you can trim or chunk the content.

PERF

Background cloud sessions optimize CPU and memory by halting full stream re-renders

Running cloud sessions like /ultrareview or /autofix-pr in the background now uses memory and CPU more efficiently. Previously, whenever a background cloud session updated, its entire event stream was re-scanned and re-rendered from scratch. That no longer happens on every update.

PERF

Embedded grep handles pathological patterns safely and fixes context lines for -m N

The embedded grep tool in native macOS and Linux builds is now much safer and more accurate. When encountering pathological search patterns, grep now fails fast instead of exhausting system memory. Furthermore, combining -m N (maximum match count) with -A (after context) or -C (surrounding context) flags now prints the exact required context lines without dropping or duplicating them.

FEATURE

Context limit error guides users to /config when auto-compact is disabled

The context-limit error message now gives actionable advice when auto-compact is disabled. Previously, when conversations ran out of context window space with auto-compact turned off, the error gave no hint as to why compacting didn't happen. The system now explicitly warns you that auto-compact is off and directs you to run /config to turn it back on.

FEATURE

Vim mode preserves NORMAL mode and cursor position across transcripts and panels

Vim mode now reliably preserves NORMAL mode and your exact cursor position across UI toggles. Previously, pressing ctrl+o to toggle the detailed conversation transcript or closing an open panel would reset your Vim mode state and lose your cursor placement. The editor now remembers your active NORMAL mode state and cursor coordinates throughout these view transitions.

BUGFIX

Expanded task list (ctrl+t) stays open when resuming sessions with unfinished tasks

The expanded task list (ctrl+t) no longer collapses on session restart if you still have active tasks. Previously, whenever you resumed or relaunched a session with unfinished tasks, the task list UI always defaulted to a collapsed state. It now properly starts expanded so you immediately see the status of all pending items upon resumption.

BUGFIX

Prompt footer reliably shows update restart notices after background installs

The prompt footer now reliably shows the "Update installed" restart banner after background auto-updates. Previously, when an update finished installing quietly in the background, the footer notice failed to pop up, leaving you in the dark that a restart was needed to activate the new version. The notification now appears as expected so you know exactly when to restart and enjoy the latest release.

FEATURE

Remote Control claude rc applies enterprise gateway checks consistently at startup

Launching Remote Control via claude rc now performs the exact same enterprise-gateway availability check as interactive startup. In corporate environments, standard interactive sessions verify gateway accessibility right at startup, but claude rc previously skipped this step, leading to inconsistent behavior. The check is now unified across both entry points to ensure reliable connectivity under enterprise policies.

FEATURE

VS Code extension stops erratic tab jumping during window reloads and restores

VS Code users with multiple Claude panels open will no longer experience phantom focus jumping when reloading or restoring windows. Previously, restoring a workspace containing several Claude tabs caused the cursor focus to spontaneously hop between tabs on its own. Focus is now cleanly preserved upon window reloads.

Original changelog

Original changelogOptional real-time spellcheck underlines typos as you type
Added an optional `spellcheck` setting that underlines misspelled words in the prompt input as you type, using your installed `aspell`, `hunspell`, or `ispell`
Original changelogPrompt cache survives language server disconnects and reconnects
Fixed whole-prompt-cache invalidation when a language server disconnected or reconnected mid-session
Original changelogMulti-line prompt highlights align accurately, and slash commands stop showing raw HTML entities
Fixed prompt input highlights (slash commands, keywords, mentions) appearing shifted by one or more characters in some multi-line prompts
Fixed slash commands run while Claude is responding showing HTML entities instead of the actual characters
Original changelogTerminal Markdown lists align properly at depth 3+ with hanging indents
Fixed nested markdown list items misaligning at depth 3+ and added a hanging indent to wrapped list items in the terminal UI
Original changelogPermission prompts tighten safety, preventing accidental blanket grants on Shift+Tab
Fixed Shift+Tab inside the permission prompt's comment field approving the edit and granting session-wide edit permission instead of closing the field
Improved permission dialogs: display text and "don't ask again" options now always match what a grant would cover, and "don't ask again" is withheld when contents cannot be fully displayed
Original changelogNotebook approval dialogs explain why unreadable cell contents could not be shown
Fixed notebook cell delete/replace approval dialogs silently omitting the existing cell content when the notebook or cell could not be read; the dialog now says why
Original changelogRapid dialog navigation selects your actual destination on Enter
Dialogs: arrow keys and Enter pressed in quick succession now select the option you navigated to instead of the previously highlighted one
Original changelogAgent tool lists available subagents when an omitted type lacks a default
Fixed the Agent tool advertising a general-purpose default in sessions where that agent is unavailable: an omitted `subagent_type` there now gets a clear error listing the available agents
Original changelogSendMessage rejects oversized cross-session payloads up front instead of dropping them
`SendMessage` now refuses messages too large for cross-session delivery up front instead of silently dropping them
Original changelogBackground cloud sessions optimize CPU and memory by halting full stream re-renders
Improved memory and CPU usage while cloud sessions such as `/ultrareview` or `/autofix-pr` run in the background — their event streams are no longer re-scanned and re-rendered on every update
Original changelogEmbedded grep handles pathological patterns safely and fixes context lines for -m N
Improved the embedded `grep` in native macOS/Linux builds: pathological patterns now fail fast instead of exhausting memory, and `-m N` with `-A/-C` prints correct context
Original changelogContext limit error guides users to /config when auto-compact is disabled
Improved the context-limit error to say when auto-compact is off and point to `/config` to re-enable it
Original changelogVim mode preserves NORMAL mode and cursor position across transcripts and panels
Vim mode: NORMAL mode and cursor position are now preserved when toggling the detailed transcript (ctrl+o) or closing a panel
Original changelogExpanded task list (ctrl+t) stays open when resuming sessions with unfinished tasks
Fixed the expanded task list (`ctrl+t`) always starting collapsed when resuming or relaunching into a session that still has open tasks
Original changelogPrompt footer reliably shows update restart notices after background installs
Fixed the prompt footer not showing the "Update installed" restart notice after a background auto-update
Original changelogRemote Control claude rc applies enterprise gateway checks consistently at startup
Remote Control: `claude rc` now applies the same enterprise-gateway availability check as interactive startup
Original changelogVS Code extension stops erratic tab jumping during window reloads and restores
[VSCode] Fixed focus jumping between open Claude tabs on its own when a window with several Claude panels is restored or reloaded