Fable is now consistently visible in /model; a broad stability pass also tackles hangs, crashes, resume failures, plugin breakage, and lost input across CLI and VS Code.
/config (not yet on Bedrock, Vertex or Foundry)CLAUDE_GATEWAY_PROXY_IS_EGRESS_BOUNDARY=1 for Claude apps gateways whose only egress is a forward proxy: every outbound request hands the proxy the hostname instead of resolving it locallyheaders: map on Claude apps gateway upstreams, to send static headers to a proxy you run in front of a provider/tasks is open/logout in the typed command menu/tasks that opens it/copy-p) use: the first turn no longer waits on the per-directory CLAUDE.md lookupCLAUDE_GATEWAY_ALLOW_LOOPBACK/plugin Installed: an MCP server listed apart from its plugin now shows which plugin it belongs toclaude plugin install on an already-installed plugin: it now says when the marketplace offers a newer version and names the claude plugin update command/ultrareview when there's nothing to review: messages say which case you're in, offer a command that reviews your latest commit, and a new repository's first commit is reviewed in full${VAR:?} guard, so headless runs can recoverclaude -p and Agent SDK sessions that could hang with no result after an internal error; they now report the error and exit with code 1--resumeANTHROPIC_API_KEY users when ~/.claude.json holds a malformed customApiKeyResponses valueclaude update hanging when a minimum or maximum version is set, if a proxy returns an invalid version; a malformed minimumVersion is now ignoredclaude update on winget- or apk-managed installs reporting "up to date" when the version lookup failedclaude plugin install sometimes failing and breaking the installed copy when reinstalling a plugin version that a session or another program was using; an unchanged copy is now left aloneuXXXX text as a \uXXXX escape, which could make an edit of a non-ASCII character rewrite an escaped backslash sequence instead\u0000 written as an escape sequence; escaped control characters now stay as literal textclaude --bg) exiting when a plugin's LSP server exited or closed its stdin/mcp or /plugin manage with a malformed claudeAiMcpEverConnected value in ~/.claude.json~/.claude.json holds a malformed theme value/clear (restart, --continue, --resume) missing part of their first message when a SessionStart hook printed output, causing a full prompt-cache miss/resume picker and other panels that cover the prompt area$TMPDIR expanding empty in Bash commands that run outside the sandbox while sandboxing is enabledNO_PROXY when a proxy is setstrictKnownMarketplaces or blockedMarketplaces entry silently disabling the whole enterprise marketplace policy~/.cache/claude/staging/plugin not stripping terminal control characters from messages on the Installed tab, such as the error of a failed plugin update/plugin → Installed and /skills crashing when a skill or legacy command is named like a built-in Object property such as constructor or toString/plugin closing with no message when every install in a multi-select failed/plugin Installed, and Remove not clearing such a rowinstalled_plugins.json, and installed_plugins.json keeping the old commit after updating a pinned-commit plugin--plugin-url archive a reload falls back to when its download fails~/.claude.json holds a malformed placeholder record/loginclaude agents dispatch input during key repeat or very fast inputkeybindings.json rebinds Enter in the Chat context, for example to chat:queueSubmitclaude -p --resume, the SDK, a VS Code extension window reload) starting the session's cost and usage totals at zero; headless sessions now save their totals at exit--worktree sessions when .claude/skills is untrackedsandbox.excludedCommands glob exempting an entire compound Bash command from the sandbox when only one part matched; every part must now match/config usage text instead of opening settings, and made typed /mcp, /hooks, /memory, /rewind and similar commands open their dialogs/effort/fast not saving fast mode as the default, so it was lost when the extension relaunched Claude Code/model on the Anthropic API; it is greyed out only when your organization's settings disable it/ultrareview in non-interactive sessions to refuse when the repository has no base branch or shared historyagent() prompts on Bedrock, Vertex and Foundry to reach the subagent framed as script-authored text, so the safety classifier does not read them as the userclaude -p runs launched outside an SDK or IDEtaskOutputMaxChars setting and TASK_MAX_OUTPUT_LENGTH no longer have any effect