Claude docs changes for May 15th, 2026 [diff]
Executive Summary
- New
terminalSequencehook output field lets hooks safely emit desktop notifications, window titles, and bells without/dev/ttyaccess — works on all platforms including Windows and inside tmux/screen - Task tool types (
TaskCreate,TaskGet,TaskList,TaskUpdate) are now fully exported from the TypeScript SDK, eliminating the need to define them locally - New "Summarize up to here" rewind option lets you compress early conversation context while keeping recent messages fully intact
- Fast mode now defaults to Opus 4.7 (was Opus 4.6); pin to Opus 4.6 with
CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE=1 claude agentsgains a--cwd <path>flag to scope the session list to a single project, and--namefor naming background sessions at dispatch time
New Claude Code versions
2.1.142
New features
- Added new
claude agentsflags:--add-dir,--settings,--mcp-config,--plugin-dir,--permission-mode,--model,--effort, and--dangerously-skip-permissionsto configure dispatched background sessions - Fast mode now uses Opus 4.7 by default (previously Opus 4.6); set
CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE=1to pin fast mode to Opus 4.6 - Plugins with a root-level
SKILL.mdand noskills/subdirectory are now surfaced as a skill - The
/plugindetails pane andclaude plugin detailsnow show LSP servers a plugin provides /web-setupwarns before replacing an existing GitHub App connection
Existing feature improvements
- Improved reactive compaction: the first summarize attempt now seeds from the original request's overflow size, avoiding a wasted near-full-context retry
- Improved hook configuration error: configuring a prompt- or agent-type hook for
SessionStart/Setup/SubagentStartnow shows a clear "use a command-type hook instead" error - Removed stale
/model claude-sonnet-4-20250514suggestion from Usage Policy refusal messages
Major bug fixes
- Fixed
MCP_TOOL_TIMEOUTnot raising the per-request fetch timeout for remote HTTP and SSE MCP servers, which capped tool calls at 60 seconds regardless of the configured value - Fixed background sessions not recognizing pre-existing git worktrees, blocking Edit while EnterWorktree refused to create a duplicate
- Fixed background sessions disappearing and daemon reconnect failing after macOS sleep/wake — the daemon now detects clock jumps instead of treating them as elapsed idle time
- Fixed daemon not exiting cleanly after binary upgrade (e.g.
brew upgrade), causing dispatched agents to crash-loop on the deleted path - Fixed background agents crash-looping when the Claude-in-Chrome extension is connected without a shared tab
- Fixed
claude agents"v to open in editor" using the daemon's default editor instead of$EDITOR/$VISUAL - Fixed
claude agentsdeadlocking on Windows with network-drive working directories; Ctrl+C now works during startup - Fixed
claude --bg --dangerously-skip-permissionsnot persisting across retire/wake - Fixed session titles being derived from the URL when the first message is a link
- Fixed plugins using
skills: ["./"]showing a false "path escapes plugin directory" error - Fixed plugin cache cleanup deleting the active plugin version directory when no installation metadata is present
Claude Code changes
New Documents
Desktop changelog [Source]
New file tracking Claude Code Desktop app-specific changes (separate from the CLI changelog). Covers versions 1.5186.0 through 1.7196.0 (April 28 – May 12, 2026). Notable entries include: multi-tab terminal pane, OS notifications when a Code session finishes, list_sessions/search_session_transcripts/archive_session MCP tools, update_scheduled_task MCP tool for self-rescheduling tasks, per-plugin auto-install for org-provisioned plugins, and an organization banner for 3P managed deployments.
Changed documents
Agent SDK - Hooks [Source]
- Clarified that
systemMessageshows a message to the user, not to the model; to pass context to the model, useadditionalContextinstead. [line 185] [Source] - Updated the "block a tool" example to use
permissionDecisionReason(tells the model why) alongsidesystemMessage(tells the user). [lines 248-264] [Source] - Fixed troubleshooting section:
systemMessageis not visible by default; setincludeHookEvents(include_hook_eventsin Python) to surface it in the stream. [line 545] [Source]
Agent SDK - Python [Source]
- Updated
systemMessagedescription inHookJSONOutputfrom "system message to add to the transcript" to "warning message shown to the user". [line 1827] [Source]
Agent SDK - TypeScript [Source]
- Added
includeHookEventsoption toquery()config — whentrue, includes hook lifecycle events (SDKHookStartedMessage,SDKHookProgressMessage,SDKHookResponseMessage) in the message stream. [line 386] [Source] TaskCreate,TaskGet,TaskList, andTaskUpdateinput/output types are now exported from the SDK — the "not yet exported from the SDK; define locally" comments have been removed. [lines 1582-1395] [Source]
Agent view [Source]
- Added
--cwd <path>flag toclaude agentsto scope the view to sessions started under a specific directory. [line 72] [Source] - Added
--nameflag forclaude --bgto set the session's display name in agent view instead of the auto-generated one. [lines 248-252] [Source] - Clarified permission mode inheritance: backgrounding an existing session preserves its current mode; dispatching from agent view uses
defaultModefrom settings. [lines 282-295] [Source] - Added note that
--permission-mode,--model, and--effortonclaude agentsrequire v2.1.142 or later. [line 293] [Source]
Amazon Bedrock [Source]
- Clarified distinct trigger conditions:
awsAuthRefreshonly runs when credentials are expired;awsCredentialExportruns at session start and on every credential reload, even when credentials are still valid — use it for cross-account Bedrock credentials. [lines 106-109] [Source]
Best practices [Source]
- Added mention of the new "Summarize up to here" rewind option alongside "Summarize from here", with a link to the checkpointing docs. [line 367] [Source]
- Clarified checkpoint semantics: a checkpoint is created per prompt sent, and Claude snapshots files before each edit. [lines 391-394] [Source]
Checkpointing [Source]
- Added new "Summarize up to here" rewind option: compresses messages before the selected point while keeping later messages intact, leaving you at the end of the conversation. [lines 31-40] [Source]
- Expanded "Restore vs. summarize" section to document both summarize modes side-by-side with use case guidance. [lines 44-50] [Source]
CLI reference [Source]
Commands [Source]
- Updated
/rewinddescription to mention that it can also summarize part of the conversation, not only restore it. [line 21] [Source]
Desktop scheduled tasks [Source]
- Delete dialog now includes an "Also delete files on disk" checkbox that removes the task's
SKILL.mdfile and data from~/.claude/scheduled-tasks/. [line 83] [Source] - A scheduled task can now modify its own schedule or prompt during a run using the
update_scheduled_taskMCP tool. [line 86] [Source]
Desktop [Source]
- Documented multi-tab terminal pane: click + in the terminal header or right-click a folder to open a second tab. [line 131] [Source]
- Added that the Desktop app sends an OS notification when a Code session finishes and you aren't viewing it. [line 268] [Source]
- Added
managedMcpServersto the managed settings table: allows pushing MCP server configs to all users in 3P Desktop deployments, with per-tool policy restrictions. [line 549] [Source]
Environment variables [Source]
- Added
ANTHROPIC_WORKSPACE_ID: workspace ID for workload identity federation when a rule is scoped to more than one workspace. [line 48] [Source] - Added
CLAUDE_CODE_PLUGIN_PREFER_HTTPS: set to1to clone GitHub plugins over HTTPS instead of SSH — useful in CI/containers without SSH keys. [line 141] [Source] - Updated
CLAUDE_CODE_SIMPLE_SYSTEM_PROMPTto apply to any model (not only Opus 4.7) and document the opt-out values (0,false,no,off). [line 157] [Source] - Added
DEBUGenv var: set to1to enable debug mode (equivalent to--debug); namespace patterns likeDEBUG=express:*do not trigger it. [line 187] [Source]
GitHub Actions [Source]
- Added
plugin_marketplacesandpluginsaction inputs for installing plugins before execution. [lines 593-594] [Source] - Added documentation and example for invoking skills via the
promptinput, including both repo skills and plugin-namespaced skills. [lines 143-168] [Source]
Glossary [Source]
- Updated "Checkpoint" definition: checkpoints are created per prompt sent (not per edit), and now also cover the summarize-from-checkpoint capability. [line 64] [Source]
Goal [Source]
- Added version requirement:
/goalrequires Claude Code v2.1.139 or later. [line 8] [Source] - Added Desktop app to the list of supported non-interactive environments for
/goal. [line 104] [Source]
Hooks guide [Source]
- Updated hook timeout documentation with per-type defaults:
command/http/mcp_tooldefault to 10 minutes (30 seconds forUserPromptSubmit);promptdefaults to 30 seconds;agentdefaults to 60 seconds. [lines 821-824] [Source]
Hooks [Source]
- Added new
terminalSequenceJSON output field: hooks can now return terminal escape sequences (OSC notifications, window titles, BEL) for Claude Code to emit on their behalf — replaces writing directly to/dev/tty, which is unavailable to hooks as of v2.1.139. Restricted to an allowlist of safe sequences that cannot move the cursor or alter colors. [lines 659-700] [Source] - Documented that command hooks on macOS and Linux now run without a controlling terminal (as of v2.1.139). [line 528] [Source]
UserPromptSubmithooks have a 30-second default timeout forcommand/http/mcp_tooltypes (shorter than the 600-second default for other events). [line 964] [Source]- Documented
PostToolUseresponse fields for completed Agent calls:status,agentId,content,totalTokens,totalDurationMs,totalToolUseCount, andusage— enabling per-subagent cost tracking from a hook. [lines 1162-1177] [Source] - Clarified that in async hooks,
systemMessageis shown to the user (not Claude); useadditionalContextto pass context to the model. Updated the async example accordingly. [lines 2535-2570] [Source]
MCP [Source]
- MCP OAuth authentication now triggers on both
401 Unauthorizedand403 Forbiddenresponses (previously only401). [line 420] [Source]
Remote control [Source]
- Added Desktop app Settings toggle for enabling remote control by default: Settings → Claude Code → Enable remote control by default. [line 115] [Source]
Settings [Source]
- Improved
/statusdescription: the Status tab now shows aSetting sourcesline listing each loaded layer; a layer only appears when it has at least one key; the Config tab is a toggle editor, not a view ofsettings.json. [line 511] [Source]
Sub-agents [Source]
.claude/agents/and~/.claude/agents/are now scanned recursively, allowing subfolders likeagents/review/; identity still comes from thenamefrontmatter field only. [lines 177-179] [Source]- Plugin
agents/directories are also scanned recursively; a subfolder inside a plugin'sagents/directory becomes part of the scoped identifier (e.g.my-plugin:review:security). [line 180] [Source] - Updated
@-mention typeahead and--agentflag documentation to reflect the new subfolder-based scoped identifiers for plugin agents. [lines 612-624] [Source]
Voice dictation [Source]
- Clarified WSLg availability: WSLg is included with WSL2 when installed from the Microsoft Store on Windows 10 or 11 (not only Windows 11). [line 16] [Source]
- Added troubleshooting entry for
Voice mode could not find a working audio recorder in WSL: WSLg routes through PulseAudio, so you needsudo apt install sox libsox-fmt-pulserather than justsox. [line 144] [Source]
API changes
Changed documents
No significant documentation changes today (only internal email obfuscation URL updates).