Claude docs changes for July 28th, 2026 [diff]
Executive Summary
- Claude Desktop can now connect to a Cloud gateway deployment: point its managed
bootstrapUrlat/user/bootstrapand opt a policy in with adesktopkey to serve it model access, tool restrictions, and feature gates (requires gateway server v2.1.203+). - Sandboxing gains a
strictAllowlistsetting that denies sandboxed commands access to any host outside the domain allowlist instead of prompting for approval (v2.1.219+). - Hooks documentation now spells out that settings-file, managed-policy, and plugin hooks all run inside subagents, with
agent_id/agent_typeidentifying the subagent, and that hook entries merge across settings levels rather than overriding each other. - The Agent SDK Python
ResultMessagegains aterminal_reasonfield describing why the query loop ended, andmodel_usageentries can now includecanonicalModelandprovider. - Remote Control's "only available via api.anthropic.com" error now names the specific variable (e.g.
CLAUDE_CODE_USE_BEDROCKor a customANTHROPIC_BASE_URL) that routed the session away from the Anthropic API (v2.1.219+).
Claude Code changes
Changed documents
agent-sdk/python [Source]
ResultMessagegained aterminal_reasonfield explaining why the query loop terminated ("completed","max_turns","aborted_streaming", etc.);Noneon older CLI versions. [lines 1597-1607] [Source]model_usagevalues are now typed as aModelUsageTypedDict (importable fromclaude_agent_sdk.types), which can include a newcanonicalModelkey (the pricing-lookup model ID) and aproviderkey (e.g.firstParty,bedrock,vertex,foundry,mantle,gateway). [line 1630] [Source]
claude-apps-gateway [Source]
- New "Connect Claude Desktop" section: Claude Desktop can sign in to the same gateway via its own
bootstrapUrlmanaged-configuration key, using a separate sign-in flow from the CLI and its own per-user session. Requires gateway server v2.1.203+. [lines 325-328] [Source] - Feature-availability table now lists "Claude Desktop" support as "Available with opt-in", served at
/user/bootstraponce a policy opts in with adesktopkey. [line 361] [Source]
claude-apps-gateway-config [Source]
- New "Claude Desktop overlay" section documenting the
/user/bootstrapendpoint: it derives the model list, disabled tools, and egress allowlist from a policy'scliblock, plus a newdesktopblock (modelDiscoveryEnabled,coworkTabEnabled,isLocalDevMcpEnabled,disableAutoUpdates,banner, etc.) for Desktop-only feature gates. Requires gateway server v2.1.203+ and an explicitdesktopopt-in on the matching policy. [lines 475-497] [Source] - Notes that embedding hosts able to supply policy via the SDK
managedSettingsoption now explicitly include Claude Desktop as an example. [line 761] [Source]
claude-apps-gateway-deploy [Source]
- New audit events
desktop_bootstrap.serveanddesktop_bootstrap.deniedare emitted for Claude Desktop bootstrap requests; denial reasons includenot_configured,policy_not_opted_in, andno_policy_matched. [lines 96-100] [Source] - New troubleshooting row for when Claude Desktop can't fetch its bootstrap configuration (404 from
/user/bootstrap). [line 210] [Source]
fullscreen [Source]
- Clipboard copying now also works for long selections inside GNU screen; before v2.1.219, selections longer than roughly 570 characters printed base64 text into the window instead of copying. [line 150] [Source]
hooks [Source]
- Clarifies that hooks from settings files, managed policy settings, and plugins all run inside subagents; tool-event hooks fire the same as in the main conversation and carry
agent_id/agent_typein their input. [line 176] [Source] - Documents that hook entries merge across settings levels instead of replacing each other, and that
disableAllHookscan't disable managed hooks from outside managed settings. [line 178] [Source] - Documents that the
allowedHttpHookUrlsandhttpHookAllowedEnvVarsHTTP hook allowlists apply to hooks from every source, including managed policy settings. [line 179] [Source]
remote-control [Source]
- The "Remote Control is only available via api.anthropic.com" error message now names the specific variable that routed the session away, such as
CLAUDE_CODE_USE_BEDROCKor a customANTHROPIC_BASE_URL; before v2.1.219 the message gave no such detail. [lines 268-269] [Source]
sandboxing [Source]
- New
strictAllowlistsetting: when set totruein user, managed, or CLI--settingssettings, sandboxed commands are denied access to hosts outside the allowlist instead of being prompted for approval. Doesn't affect in-process tools likeWebFetch, and has no effect if set in repo-level.claude/settings.json. Requires v2.1.219+. [line 279] [Source]
settings [Source]
- Documents the new
network.strictAllowlistsetting (defaultfalse), covered in more detail in sandboxing. [line 398] [Source]
sub-agents [Source]
- Clarifies that session-wide hooks in
settings.jsonalso fire inside subagents: tool-event hooks fire for the subagent's own tool calls, andSubagentStart/SubagentStopfire when a subagent starts or finishes. [lines 531-533] [Source]
API changes
No significant documentation changes today — the only diffs in docs-md/api were Cloudflare email-obfuscation hash rotations in files.md and thinking.md, with no visible content changes.