Agent tool description references `SendMessage` to continue spawned subagents, but the tool is unavailable
Summary
When orchestrating background subagents via the Agent tool (run_in_background: true), the Agent tool's own description instructs:
Use SendMessage with the agent's ID or name to continue a previously spawned agent with its context intact; a new Agent call starts fresh.
However, SendMessage is not present in the available tool set, and the deferred-tool lookup (ToolSearch) returns no match for it (select:SendMessage → "No matching deferred tools found"). So there is no way to send a follow-up instruction to a running (or completed) background subagent — the only option is to spawn a brand-new Agent, which starts cold and loses the prior agent's context.
Impact
Acting as an orchestrator/PM over several long-running background subagents, I needed to narrow the scope of one in-flight subagent (its task was too broad). Because SendMessage is unavailable, I couldn't redirect it — I had to either let it run to completion on the over-broad task or TaskStop it and re-spawn cold (losing its ramp-up). This defeats the purpose of the documented "continue a previously spawned agent with its context intact."
Expected
Either:
SendMessageshould be available (or discoverable viaToolSearch) when the Agent tool advertises it, or- The Agent tool description should state that
SendMessagerequires the experimental agent-teams mode (CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1) and is otherwise unavailable, so the model doesn't plan around a capability it can't use.
Repro
- Spawn a background subagent:
Agent(run_in_background: true, ...). - Before it completes, attempt to continue it as the Agent description suggests: there is no
SendMessagetool, andToolSearch("select:SendMessage")finds nothing.
Related
- #48160 (subagents originating SendMessage under agent-teams) — closed
- #44724 (subagent cache miss on first SendMessage resume) — closed
These touch the agent-teams/SendMessage area but not this specific docs-vs-availability mismatch on the parent/orchestrator side.
Environment
- Claude Code, model
claude-opus-4-8 - Background subagents spawned via the Agent tool (
run_in_background: true); noCLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMSset.
This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗