A specialist with its own desk
When Claude hands a task to a subagent, that subagent starts with a fresh, separate context window. It gets its own instructions, its own set of tools and a brief from the main agent. It does the work (reading 80 files, running a long search) and returns only a summary. All that heavy reading never enters your main conversation.
Your main context received a tidy three-item summary, not 46 files.
The built-in subagents
| Subagent | What it's for |
|---|---|
| Explore | Read-only codebase search. Claude passes a thoroughness level: quick, medium or very thorough. |
| Plan | Read-only research while you're in plan mode |
| general-purpose | Multi-step tasks that need both research and changes |
Claude delegates to these automatically when it makes sense. You can also ask directly: "use a subagent to…"
What's in a subagent's context
A custom subagent's context includes:
- its own system prompt (the body of its definition file),
CLAUDE.mdand git status (Explore and Plan skip these to stay lean),- the full content of any skills listed in its definition,
- the brief the main agent writes for it.
It does not see your whole conversation, so the brief has to be self-contained.
When delegation helps, and when it doesn't
A subagent uses the same kind of model, so it won't give a better answer. Its value is isolation (protecting context), specialization (focused instructions and tools) and parallelism. It costs extra tokens, so delegate when those benefits are real.
Invoking explicitly
- In plain language: "Use the code-reviewer subagent to check my changes."
- With an @-mention, which guarantees that agent runs:
@agent-code-reviewer - For a whole session:
claude --agent code-reviewer
Check your understanding
What returns to the main conversation when a subagent finishes?
Which built-in subagent does read-only codebase search?
What's a bad reason to use a subagent?
Which @-mention guarantees a specific custom subagent runs?