{"version":"2.1.290","anchor":"new-sdkstream-json-initialize-capabilities-forwardnestedsu","canonical_anchor":"new-sdkstream-json-initialize-capabilities-forwardnestedsu","heading":"SDK clients can ask for nested subagent tool calls and a Chrome setup card","tier":"use","area":"SDK","scope":"individual","heads_up":false,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.290\/e\/new-sdkstream-json-initialize-capabilities-forwardnestedsu","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.290","markdown":"### SDK clients can ask for nested subagent tool calls and a Chrome setup card\n\nPrograms connecting to Claude Code can opt in to tool calls from nested subagents and to showing a Claude in Chrome setup card\n\n**Unclear.** Which experiment flag controls the Chrome setup offer, and whether any shipped client declares either entry, is not known.\n\n**What**\n\nWhen a program connects to Claude Code, for example through the Agent SDK or the stream-json mode, it first sends an initialize message listing what it can handle. Two optional entries can now go in that list:\n\n- `forwardNestedSubagentToolCalls`: Claude Code also sends the tool calls and tool results of subagents (helper agents) that other subagents start, and of skills a subagent forks. Each one carries `parent_tool_use_id`, so the client can tell where it belongs.\n\n- `rendersChromeSetupOffer`: the client can show an offer to set up Claude in Chrome as a setup card. That offer only appears after a Claude in Chrome call reports the extension is not connected, and only when an experiment flag for the session is on.\n\nA client that sends neither entry behaves as before.\n\n**Why**\n\nExisting clients see no change. Clients that opt in can show the full tree of nested subagent work and offer Chrome setup inside their own interface.\n\n- Area: SDK\n- Tier: Use it now\n- Useful: 4\/5\n- Signal: 4\/5\n- Scope: individual\n- Heads-up: no"}