New --bare mode for headless/scripted Claude Code calls: skips hooks, plugins, MCP servers, CLAUDE.md, and auto memory for faster, reproducible CI/script execution — and will become the default for -p in a future release
Channels now support permission relay: two-way channel servers can forward tool approval prompts to you remotely (e.g. on your phone) so you can approve or deny without being at the terminal
Blocking PreToolUse hooks now take precedence over allow rules, clarifying hook vs. permission rule evaluation order
New showClearContextOnPlanAccept setting to restore the "clear context" option on plan accept screens
OAuth support for MCP servers extended to include Client ID Metadata Document (CIMD) discovery in addition to Dynamic Client Registration
Updated description of behavior when Claude hits a permission prompt while away from terminal: channel servers that declare the permission relay capability can now forward prompts for remote approval. [line 299] [Source]
Added security note that the sender allowlist also gates permission relay — only allowlist senders you trust with tool-use approval authority. [line 313] [Source]
Added new capabilities.experimental['claude/channel/permission'] capability field: declaring it opts the channel server in to receiving permission relay requests from Claude Code. [line 222] [Source]
Added troubleshooting tips for when a webhook event doesn't reach Claude: how to diagnose "curl succeeds but nothing arrives" vs "connection refused". [line 186] [Source]
Major new section: Relay permission prompts (requires v2.1.81+). Covers the full relay flow, notifications/claude/channel/permission_request payload fields, three-step implementation guide (declare capability, handle inbound request, intercept verdict in inbound handler), and a complete webhook.ts example with permission relay, reply tool, sender gating, and SSE event stream. [lines 511-872] [Source]
Updated two-way webhook example to use SSE (GET /events) for watching outbound replies live via curl -N. [line 381] [Source]
New --bare flag added: minimal mode that skips auto-discovery of hooks, skills, plugins, MCP servers, auto memory, and CLAUDE.md for faster scripted calls. Sets CLAUDE_CODE_SIMPLE. [line 35] [Source]
Updated CLAUDE_CODE_SIMPLE description to clarify it disables auto-discovery of hooks, skills, plugins, MCP servers, and auto memory (not just MCP tools/hooks), and that --bare sets this variable. [line 67] [Source]
New "Start faster with bare mode" section documenting --bare: explains what it skips, why it's useful for CI/scripts, what tools remain available, how to supply context explicitly via flags, authentication requirements, and that it will become the default for -p in a future release. [lines 41-69] [Source]
Expanded Ctrl+O (toggle verbose output) description: it also expands MCP read and search calls that otherwise collapse to a single summary line (e.g. "Queried slack"). [line 20] [Source]
Clarified OAuth setup: Claude Code now also supports MCP servers that use a Client ID Metadata Document (CIMD) instead of Dynamic Client Registration, and discovers these automatically. [line 1380] [Source]
Clarified that a blocking PreToolUse hook (exit code 2) takes precedence over allow rules — the block applies even when an allow rule would otherwise permit the call. Includes guidance on combining an allow rule with a selective blocking hook. [line 193] [Source]
New showClearContextOnPlanAccept setting: shows the "clear context" option on the plan accept screen. Defaults to false; set to true to restore the option. [line 184] [Source]