claudeSubagentRegistry.ts ×5

Frontier kind: Code frontier

unlabeled · c_2995b7f8da4b

19 tests · 7273 LOC · 26 files · introduces 0 tests · 11 LOC · 1 file

Introduces — evidence that enters the hierarchy at this concept

Code
5 ranges11 lines · 1 files
Tests
0 tests

Contains — complete concept membership

All code (extent)
517 ranges7273 lines · 26 files · Browse complete extent
All tests (intent)
19 testsBrowse complete intent

Neighbourhood graph

The orange circle is the focus. Violet and green circles are every ancestor and descendant, broader and narrower, at any distance; blue squares and pink diamonds are the introduced files and exact introduced tests of every visible concept, not only the focus's. Arrows point from broader to narrower concepts and bridge only concepts omitted from this view. Undirected links show source or test introduction. Concept and file size follows LOC; exact test nodes use test-count units.

Introduced files, introduced tests, and structurally relevant concept specialization

In the embedded map, ordinary wheel input scrolls the page; use the visible controls to zoom and drag to pan. Open the full-screen map for canvas navigation: wheel pans, Ctrl/Command plus wheel zooms, and arrow keys pan when this region is focused. On touch screens, open the full-screen map to pan or pinch. If JavaScript or WebGL is unavailable, use the native relationship evidence on this page.

Introduced files, introduced tests, and structurally relevant concept specializationclaudeAgent.ts ×1 · 6 introduced LOCclaudeAgent.ts ×1claudeAgent.test|title=ClaudeAgent (Phase 7 §3.4 — _handleCanUseTool) Phase 12 step 5 — canUseTool inside a subagent context tags pending_confirmation with parentToolCallId and feeds the resolver cache|occurrence=1 · 0 introduced LOCclaudeAgent.test|title=C…claudeAgent.test|title=ClaudeAgent (Phase 7 §3.4 — _handleCanUseTool) Phase 12 step 5 — AskUserQuestion + ExitPlanMode inside a subagent context tag their emitted signals with parentToolCallId|occurrence=1 · 0 introduced LOCclaudeAgent.test|title=C…claudeCanUseTool.ts ×1 · 5 introduced LOCclaudeCanUseTool.ts ×1claudeSubagentSignals.ts ×2 · 44 introduced LOCclaudeSubagentSignals.ts…claudeSubagentSignals.ts ×2 · 35 introduced LOCclaudeSubagentSignals.ts…claudeSubagentSignals.ts ×2 · 8 introduced LOCclaudeSubagentSignals.ts…claudeSubagentSignals.ts ×2 · 11 introduced LOCclaudeSubagentSignals.ts…claudeSubagentSignals.test|title=claudeSubagentSignals — Phase 12 emission foreground subagent completion: tool_result for a Task spawn emits ChatToolCallComplete AND IAgentSubagentCompletedSignal, then clears the spawn from the registry|occurrence=1 · 0 introduced LOCclaudeSubagentSignals.te…claudeMapSessionEvents.ts ×1 · 7 introduced LOCclaudeMapSessionEvents.t…claudeMapSessionEvents.ts ×1 · 2 introduced LOCclaudeMapSessionEvents.t…claudeSubagentSignals.ts ×1 · 5 introduced LOCclaudeSubagentSignals.ts…claudeSubagentSignals.test|title=claudeSubagentSignals — Phase 12 emission top-level Task tool_use records a spawn; non-subagent tools do not|occurrence=1 · 0 introduced LOCclaudeSubagentSignals.te…claudeSubagentSignals.test|title=claudeSubagentSignals — Phase 12 emission top-level Task ChatToolCallStart carries _meta.toolKind=subagent so the workbench renders the subagent UI|occurrence=1 · 0 introduced LOCclaudeSubagentSignals.te…claudeMapSessionEvents.ts ×1 · 2 introduced LOCclaudeMapSessionEvents.t…agentName when input fields are missing or wrong-typed; still records the spawn|occurrence=1 · 0 introduced LOCagentName when input fie…claudeSubagentSignals.ts ×6 · 34 introduced LOCclaudeSubagentSignals.ts…claudeSubagentSignals.ts ×2 · 4 introduced LOCclaudeSubagentSignals.ts…claudeSubagentSignals.ts ×3 · 8 introduced LOCclaudeSubagentSignals.ts…claudeSubagentResolver.ts ×2 · 5 introduced LOCclaudeSubagentResolver.t…claudeSubagentResolver.ts ×1 · 2 introduced LOCclaudeSubagentResolver.t…claudeSubagentResolver.ts ×4 · 32 introduced LOCclaudeSubagentResolver.t…claudeSubagentRegistry.test|title=SubagentRegistry primeFromTranscript scans Task tool_result text blocks for agentId suffix and records each pair (idempotent against repeat calls)|occurrence=1 · 0 introduced LOCclaudeSubagentRegistry.t…claudeSubagentRegistry.ts ×1 · 2 introduced LOCclaudeSubagentRegistry.t…claudeSubagentRegistry.ts ×2 · 7 introduced LOCclaudeSubagentRegistry.t…claudeSubagentRegistry.test|title=SubagentRegistry removeSpawn deletes the spawn AND evicts inner-tool edges that pointed at it; other parents’ edges are untouched|occurrence=1 · 0 introduced LOCclaudeSubagentRegistry.t…claudeSubagentRegistry.test|title=SubagentRegistry recordSpawn is idempotent; init fields are first-writer-wins; getSpawn returns the same record across calls|occurrence=1 · 0 introduced LOCclaudeSubagentRegistry.t…claudeSubagentRegistry.ts ×1 · 4 introduced LOCclaudeSubagentRegistry.t…claudeSubagentRegistry.ts ×1 · 3 introduced LOCclaudeSubagentRegistry.t…claudeSubagentRegistry.ts ×2 · 2 introduced LOCclaudeSubagentRegistry.t…claudeSubagentRegistry.ts ×2 · 4 introduced LOCclaudeSubagentRegistry.t…claudeSubagentRegistry.test|title=SubagentRegistry dispose clears spawns + inner-edge maps so a stray reference cannot resurrect stale state|occurrence=1 · 0 introduced LOCclaudeSubagentRegistry.t…claudeSubagentRegistry.ts ×1 · 2 introduced LOCclaudeSubagentRegistry.t…claudeSubagentRegistry.ts ×1 · 2 introduced LOCclaudeSubagentRegistry.t…claudeSubagentRegistry.ts ×1 · 3 introduced LOCclaudeSubagentRegistry.t…claudeSubagentRegistry.ts ×2 · 6 introduced LOCclaudeSubagentRegistry.t…claudeSubagentRegistry.test|title=SUBAGENT_ID_SUFFIX_REGEX + scanTranscriptForAgentIds regex matches canonical and drifted formats; rejects unrelated text|occurrence=1 · 0 introduced LOCclaudeSubagentRegistry.t…claudeSubagentRegistry.ts ×16 · 158 introduced LOCclaudeSubagentRegistry.t…state.ts ×1 · 711 introduced LOCstate.ts ×1state.ts ×1 · 1351 introduced LOCstate.ts ×1state.ts ×1 · 73 introduced LOCstate.ts ×1state.ts ×1 · 1557 introduced LOCstate.ts ×1uri.test|title=URI URI#file, win-speciale|occurrence=1, charCode.test|title=CharCode has good values|occurrence=1, +2 · 0 introduced LOCuri.test|title=URI URI#f…utils.ts ×3 · 9 introduced LOCutils.ts ×3lifecycle.ts ×1 · 3 introduced LOClifecycle.ts ×1lifecycle.ts ×1 · 4 introduced LOClifecycle.ts ×1lifecycle.ts ×2 · 4 introduced LOClifecycle.ts ×2lifecycle.ts ×1 · 6 introduced LOClifecycle.ts ×1lifecycle.ts ×1 · 3 introduced LOClifecycle.ts ×1lifecycle.ts ×1 · 2 introduced LOClifecycle.ts ×1lifecycle.ts ×1 · 7 introduced LOClifecycle.ts ×1lifecycle.ts ×4 · 8 introduced LOClifecycle.ts ×4lifecycle.ts ×6 · 16 introduced LOClifecycle.ts ×6lifecycle.ts ×1 · 3 introduced LOClifecycle.ts ×1lifecycle.ts ×1 · 2 introduced LOClifecycle.ts ×1lifecycle.ts ×1 · 2 introduced LOClifecycle.ts ×1lifecycle.ts ×1 · 3 introduced LOClifecycle.ts ×1map.ts ×97 · 3334 introduced LOCmap.ts ×97src/vs/base/common/arrays.ts · 949 LOCcommon/arrays.tssrc/vs/base/common/arraysFind.ts · 226 LOCcommon/arraysFind.tssrc/vs/base/common/assert.ts · 91 LOCcommon/assert.tssrc/vs/base/common/charCode.ts · 450 LOCcommon/charCode.tssrc/vs/base/common/collections.ts · 176 LOCcommon/collections.tssrc/vs/base/common/errors.ts · 357 LOCcommon/errors.tssrc/vs/base/common/functional.ts · 32 LOCcommon/functional.tssrc/vs/base/common/iterator.ts · 194 LOCcommon/iterator.tssrc/vs/base/common/lifecycle.ts · 974 LOCcommon/lifecycle.tssrc/vs/base/common/map.ts · 1016 LOCcommon/map.tssrc/vs/base/common/marshallingIds.ts · 33 LOCcommon/marshallingIds.tssrc/vs/base/common/path.ts · 1589 LOCcommon/path.tssrc/vs/base/common/platform.ts · 281 LOCcommon/platform.tssrc/vs/base/common/process.ts · 76 LOCcommon/process.tssrc/vs/base/common/types.ts · 410 LOCcommon/types.tssrc/vs/base/common/uri.ts · 754 LOCcommon/uri.tssrc/vs/base/test/common/utils.ts · 107 LOCcommon/utils.tssrc/vs/nls.ts · 244 LOCvs/nls.tssrc/vs/platform/agentHost/common/state/protocol/channels-changeset/state.ts · 277 LOCchannels-changeset/state…src/vs/platform/agentHost/common/state/protocol/channels-chat/state.ts · 1557 LOCchannels-chat/state.tssrc/vs/platform/agentHost/common/state/protocol/channels-resource-watch/state.ts · 73 LOCchannels-resource-watch/…src/vs/platform/agentHost/common/state/protocol/channels-root/state.ts · 244 LOCchannels-root/state.tssrc/vs/platform/agentHost/common/state/protocol/channels-session/state.ts · 1351 LOCchannels-session/state.t…src/vs/platform/agentHost/common/state/protocol/channels-terminal/state.ts · 173 LOCchannels-terminal/state.…src/vs/platform/agentHost/common/state/protocol/state.ts · 17 LOCprotocol/state.tssrc/vs/platform/agentHost/node/claude/claudeAgent.ts · 2312 LOCclaude/claudeAgent.tssrc/vs/platform/agentHost/node/claude/claudeAgentSession.ts · 1121 LOCclaude/claudeAgentSessio…src/vs/platform/agentHost/node/claude/claudeCanUseTool.ts · 277 LOCclaude/claudeCanUseTool.…src/vs/platform/agentHost/node/claude/claudeMapSessionEvents.ts · 725 LOCclaude/claudeMapSessionE…src/vs/platform/agentHost/node/claude/claudeSubagentRegistry.ts · 271 LOCclaude/claudeSubagentReg…src/vs/platform/agentHost/node/claude/claudeSubagentResolver.ts · 355 LOCclaude/claudeSubagentRes…src/vs/platform/agentHost/node/claude/claudeSubagentSignals.ts · 311 LOCclaude/claudeSubagentSig…charCode.test|title=CharCode has good values|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/base/test/common/charCode.test|title=CharCode has good values|occurrence=1charCode.test|title=Char…path.test|title=Paths (Node Implementation) path|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/base/test/common/path.test|title=Paths (Node Implementation) path|occurrence=1path.test|title=Paths (N…uri.test|title=URI File paths containing apostrophes break URI parsing and cannot be opened #276075|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/base/test/common/uri.test|title=URI File paths containing apostrophes break URI parsing and cannot be opened #276075|occurrence=1uri.test|title=URI File …uri.test|title=URI URI#file, win-speciale|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/base/test/common/uri.test|title=URI URI#file, win-speciale|occurrence=1uri.test|title=URI URI#f…claudeAgent.test|title=ClaudeAgent (Phase 7 §3.4 — _handleCanUseTool) Phase 12 step 5 — AskUserQuestion + ExitPlanMode inside a subagent context tag their emitted signals with parentToolCallId|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent (Phase 7 §3.4 — _handleCanUseTool) Phase 12 step 5 — AskUserQuestion + ExitPlanMode inside a subagent context tag their emitted signals with parentToolCallId|occurrence=1claudeAgent.test|title=C…claudeAgent.test|title=ClaudeAgent (Phase 7 §3.4 — _handleCanUseTool) Phase 12 step 5 — canUseTool inside a subagent context tags pending_confirmation with parentToolCallId and feeds the resolver cache|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent (Phase 7 §3.4 — _handleCanUseTool) Phase 12 step 5 — canUseTool inside a subagent context tags pending_confirmation with parentToolCallId and feeds the resolver cache|occurrence=1claudeAgent.test|title=C…claudeAgent.test|title=ClaudeAgent D3: subagent spawn mirrors onto onDidSpawnChat while the subagent signals still flow|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent D3: subagent spawn mirrors onto onDidSpawnChat while the subagent signals still flow|occurrence=1claudeAgent.test|title=C…claudeSubagentRegistry.test|title=SUBAGENT_ID_SUFFIX_REGEX + scanTranscriptForAgentIds regex matches canonical and drifted formats; rejects unrelated text|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeSubagentRegistry.test|title=SUBAGENT_ID_SUFFIX_REGEX + scanTranscriptForAgentIds regex matches canonical and drifted formats; rejects unrelated text|occurrence=1claudeSubagentRegistry.t…claudeSubagentRegistry.test|title=SubagentRegistry dispose clears spawns + inner-edge maps so a stray reference cannot resurrect stale state|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeSubagentRegistry.test|title=SubagentRegistry dispose clears spawns + inner-edge maps so a stray reference cannot resurrect stale state|occurrence=1claudeSubagentRegistry.t…claudeSubagentRegistry.test|title=SubagentRegistry drainForegroundSpawns: returns and removes only foreground spawns; background spawns survive; inner-edge entries pointing at drained spawns are evicted|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeSubagentRegistry.test|title=SubagentRegistry drainForegroundSpawns: returns and removes only foreground spawns; background spawns survive; inner-edge entries pointing at drained spawns are evicted|occurrence=1claudeSubagentRegistry.t…claudeSubagentRegistry.test|title=SubagentRegistry primeFromTranscript scans Task tool_result text blocks for agentId suffix and records each pair (idempotent against repeat calls)|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeSubagentRegistry.test|title=SubagentRegistry primeFromTranscript scans Task tool_result text blocks for agentId suffix and records each pair (idempotent against repeat calls)|occurrence=1claudeSubagentRegistry.t…claudeSubagentRegistry.test|title=SubagentRegistry recordSpawn is idempotent; init fields are first-writer-wins; getSpawn returns the same record across calls|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeSubagentRegistry.test|title=SubagentRegistry recordSpawn is idempotent; init fields are first-writer-wins; getSpawn returns the same record across calls|occurrence=1claudeSubagentRegistry.t…claudeSubagentRegistry.test|title=SubagentRegistry removeSpawn deletes the spawn AND evicts inner-tool edges that pointed at it; other parents’ edges are untouched|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeSubagentRegistry.test|title=SubagentRegistry removeSpawn deletes the spawn AND evicts inner-tool edges that pointed at it; other parents’ edges are untouched|occurrence=1claudeSubagentRegistry.t…claudeSubagentResolver.test|title=claudeSubagentResolver — getSubagentTranscript cache hit on registry short-circuits SDK fetch; cache miss runs strategy chain and writes resolved agentId back to the registry; subsequent reads hit the cache|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeSubagentResolver.test|title=claudeSubagentResolver — getSubagentTranscript cache hit on registry short-circuits SDK fetch; cache miss runs strategy chain and writes resolved agentId back to the registry; subsequent reads hit the cache|occurrence=1claudeSubagentResolver.t…claudeSubagentResolver.test|title=claudeSubagentResolver — getSubagentTranscript unresolvable agentId returns [] (no SDK fetch attempted) and SDK fetch failure returns [] with warn-log|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeSubagentResolver.test|title=claudeSubagentResolver — getSubagentTranscript unresolvable agentId returns [] (no SDK fetch attempted) and SDK fetch failure returns [] with warn-log|occurrence=1claudeSubagentResolver.t…claudeSubagentSignals.test|title=claudeSubagentSignals — Phase 12 emission background subagent completion: task_started then tool_result yields NO completion; later task_notification fires it|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeSubagentSignals.test|title=claudeSubagentSignals — Phase 12 emission background subagent completion: task_started then tool_result yields NO completion; later task_notification fires it|occurrence=1claudeSubagentSignals.te…agentName when input fields are missing or wrong-typed; still records the spawn|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeSubagentSignals.test|title=claudeSubagentSignals — Phase 12 emission buildTopLevelSubagentReadyAction omits _meta description/agentName when input fields are missing or wrong-typed; still records the spawn|occurrence=1agentName when input fie…claudeSubagentSignals.test|title=claudeSubagentSignals — Phase 12 emission foreground subagent completion: tool_result for a Task spawn emits ChatToolCallComplete AND IAgentSubagentCompletedSignal, then clears the spawn from the registry|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeSubagentSignals.test|title=claudeSubagentSignals — Phase 12 emission foreground subagent completion: tool_result for a Task spawn emits ChatToolCallComplete AND IAgentSubagentCompletedSignal, then clears the spawn from the registry|occurrence=1claudeSubagentSignals.te…tool_use signals + tags them with parentToolCallId, lets the matching tool_result complete|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeSubagentSignals.test|title=claudeSubagentSignals — Phase 12 emission inner subagent canonical assistant message emits text/thinking/tool_use signals + tags them with parentToolCallId, lets the matching tool_result complete|occurrence=1tool_use signals + tags …claudeSubagentSignals.test|title=claudeSubagentSignals — Phase 12 emission inner subagent message: prepends subagent_started exactly once, tags emitted action with parentToolCallId, records inner-tool→parent edge|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeSubagentSignals.test|title=claudeSubagentSignals — Phase 12 emission inner subagent message: prepends subagent_started exactly once, tags emitted action with parentToolCallId, records inner-tool→parent edge|occurrence=1claudeSubagentSignals.te…claudeSubagentSignals.test|title=claudeSubagentSignals — Phase 12 emission mapSubagentSystemMessage ignores task_notification with non-terminal status, missing tool_use_id, or unknown spawn|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeSubagentSignals.test|title=claudeSubagentSignals — Phase 12 emission mapSubagentSystemMessage ignores task_notification with non-terminal status, missing tool_use_id, or unknown spawn|occurrence=1claudeSubagentSignals.te…claudeSubagentSignals.test|title=claudeSubagentSignals — Phase 12 emission top-level Task ChatToolCallStart carries _meta.toolKind=subagent so the workbench renders the subagent UI|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeSubagentSignals.test|title=claudeSubagentSignals — Phase 12 emission top-level Task ChatToolCallStart carries _meta.toolKind=subagent so the workbench renders the subagent UI|occurrence=1claudeSubagentSignals.te…claudeSubagentSignals.test|title=claudeSubagentSignals — Phase 12 emission top-level Task tool_use records a spawn; non-subagent tools do not|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeSubagentSignals.test|title=claudeSubagentSignals — Phase 12 emission top-level Task tool_use records a spawn; non-subagent tools do not|occurrence=1claudeSubagentSignals.te…AgentName AND records metadata onto the spawn|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeSubagentSignals.test|title=claudeSubagentSignals — Phase 12 emission top-level canonical assistant for Task emits ChatToolCallReady with confirmed:NotNeeded + _meta.subagentDescription/AgentName AND records metadata onto the spawn|occurrence=1AgentName AND records me…Focused concept · claudeSubagentRegistry.ts ×5 · 11 introduced LOCclaudeSubagentRegistry.t…

Graph controls are ready.

Interactive rendering requires JavaScript and WebGL. Use the native relationship evidence on this page while the interactive map is unavailable.

Native relationship evidence

Every exact file and test below is linked only from the concept that introduces it.

Introduced tests

Every collected test enters the hierarchy at exactly one concept.

No tests are introduced at this concept. Its intent tests are introduced by other concepts.

Introduced code

Every collected source range enters the hierarchy at exactly one concept.

1 file ranked by introduced lines: 11 introduced LOC across 5 ranges. Expand a file to inspect source; the > gutter marks introduced lines.

src/vs/platform/agentHost/node/claude/claudeSubagentRegistry.ts 11 introduced LOC · 5 ranges

Open complete file

143 */
144 recordSpawn(toolUseId: string, init?: ISubagentSpawnInit): SubagentSpawn {
145 > let spawn = this._spawns.get(toolUseId); claudeSubagentRegistry.ts
146 > if (!spawn) {
147 > spawn = new SubagentSpawn(toolUseId);
148 > this._spawns.set(toolUseId, spawn);
149 > }
150 > if (init?.agentId !== undefined) {
151 spawn.setAgentId(init.agentId);
152 }
153 > if (init?.subagentType !== undefined && spawn.subagentType === undefined) { claudeSubagentRegistry.ts
154 spawn.subagentType = init.subagentType;
155 }
156 > if (init?.description !== undefined && spawn.description === undefined) { claudeSubagentRegistry.ts
157 spawn.description = init.description;
158 }
159 > if (init?.prompt !== undefined && spawn.prompt === undefined) { claudeSubagentRegistry.ts
160 spawn.prompt = init.prompt;
161 }
162 > return spawn; claudeSubagentRegistry.ts
163 > }
164
165 getSpawn(toolUseId: string): SubagentSpawn | undefined {