What's changed
- Changed auto mode with telemetry or feature flags off, including behind LLM gateways: calls the server can't check are asked about or denied, with no fallback to the built-in classifier; set
CLAUDE_CODE_AUTO_MODE_SERVER=0to keep using it (Bedrock, Vertex and Foundry are unchanged) - Changed auto mode behind an LLM gateway:
CLAUDE_CODE_AUTO_MODE_SERVER=1turns on the server-side check even withCLAUDE_CODE_DISABLE_EXPERIMENTAL_BETASset; if managed settings set the latter, they must set the1too - Added support for MCP tasks in the terminal: when an MCP server runs a tool call as a task, Claude Code moves it to the background right away and tells Claude the result when it finishes
- Added the
CLAUDE_CODE_DISABLE_MCP_TASK_BACKGROUNDenvironment variable to make Claude Code wait for an MCP task inside its tool call instead of moving it to the background right away - Added
permissions.denyInsteadOfPromptingsetting: a tool call that would wait on a permission prompt is denied and the turn continues, in terminal sessions, subagents and teammates - Added
/claude-api latency-optimizeto find where your Claude API code makes people wait and try faster settings against your eval - Added the
CLAUDE_CODE_DISABLE_FEATURE_FLAGSenvironment variable, which stops feature-flag fetching without turning off telemetry; every flag then uses its built-in default - Added spend for today, this week and this month to
/usagefor developers behind a Claude apps gateway who have no spend limit, when the gateway runs this version or later - Added
admin.pooled_conflict_ruleandadmin.pooled_priority_orderto the Claude apps gateway, to set which pooled group budget pays first for a developer in several groups - Added an optional
login_noticesetting to the Claude apps gateway that shows an operator-defined message on the gateway's browser verification page and on Claude Code's sign-in screen - Added
CLAUDE_GATEWAY_LOG_FORMAT=jsonto the Claude apps gateway: operational log lines become JSON withseverity,timeandmessage, for log collectors that read the level from a field - Added a Claude apps gateway boot warning for a case where another policy's
availableModelsalso allows a custom model id that one policy lists by name - Added start-up warnings to the Claude apps gateway for policies with no
desktopHomethat rely oncoworkTabEnabled: falseorchatSessionRetentionDays, ahead of Claude Desktop's November 10 change - Added a warning when your claude.ai login ends and Claude Code continues on the sign-in from
ant auth login, which bills usage to your Claude Console organization - Added a line at startup naming the Claude Console organization that is billed in a case where Claude Code uses the sign-in from
ant auth login - Added an "Earlier in this session" row to
/tasksthat lists finished subagents, so you can reopen one and message it even after it leaves the list or you restart - Added a note to
/loopconfirmations in cloud sessions that a timer stops with its container, with an offer of a loop that survives - Fixed MCP servers on the older handshake failing to connect, or returning empty results, because Claude Code declared an extension that it only uses with newer servers
- Fixed a long-running MCP tool call on a claude.ai connector sometimes never reporting its result after
--resume - Fixed a session's diff failing to load on claude.ai and the mobile apps when the folder Claude Code runs in has a file or folder named
HEAD - Fixed
/diffshowing "Diff unavailable" when a git repository has a file or folder namedHEADat its top level - Fixed the
/diffpane opening blank in sessions where 64 or more turns edited files - Fixed slash commands typed after a leading space, tab or newline being sent to Claude as plain text instead of running
- Fixed a request that kept failing with a 401 refreshing your login on every retry and causing 401s in your other sessions
- Fixed
/contextsending its full visual grid to Claude on every later turn; Claude now reads only the table - Fixed
claude -pexiting 0 in auto mode when its actions were refused because no safety check was available: text and JSON output now exit 1 - Fixed a case where Claude Code listed every project file at start on Linux for projects on a network file system (NFS, SMB, Lustre and similar)
- Fixed a case where auto mode was wrongly refused when a client sent a model change and a request for auto mode back to back
- Fixed
/statusshowing "Auto mode server: Enabled" when the server-side review isn't reaching the session, for example behind an LLM gateway that drops it - Fixed Claude-drafted feedback, surveys and
/feedbackcontinuing to appear after the server refused feedback for your organization - Fixed Claude drafting feedback on third-party gateways, where it can't be sent
- Fixed auto mode refusing actions without saying why when permission rules or
autoModesettings are very large: it now explains and, unlessautoModedeny rules are set, asks you in the terminal - Fixed a case where Bash deny and ask rules missed commands written with quoted words
- Fixed subagent hand-back reports showing an internal marker and provenance note when expanded outside verbose mode
- Fixed
claude -p --resumewith a prompt losing a deferred tool call when its MCP server is missing: the run now exits 1, keeps the call and refuses later input - Fixed a case where text was dropped from informational messages sent to SDK clients
- Fixed a case where Agent SDK hosts got a generic exit-code error instead of a failed run's own error message when the disk was full
- Fixed
CLAUDE_CODE_RESUME_INTERRUPTED_TURNre-running a turn that was interrupted in plan mode when the session resumes in another permission mode - Fixed edits to a settings file being ignored when made within a few seconds of Claude Code writing that file