Skills and subagents: the agent reuse pattern
More about this article
Quick summary
- A skill is a self-contained package with instructions, tools, and examples; the agent loads only those relevant to the task.
- A subagent is a fresh agent that executes a bounded task in isolation and returns a synthesised result.
- The full pattern combines orchestrator + skills (capabilities) + subagents (isolated execution).
- Skills must be compact; subagents must return synthesis, not transcript.
Key concepts
- Skills: self-contained packages of instructions and tools that the orchestrator loads per task, keeping context small and behaviour predictable.
- Subagents: fresh agents that receive a bounded task, work in isolation, and return a compressed result to the orchestrator.
- Composition: the orchestrator manages global context while skills supply capabilities and subagents execute isolated work without polluting that context.
Useful links
Keep reading
Actualizado: 2026-05-16
Two agent design patterns consolidated in 2025-2026: skills and subagents. Together they form the most effective recipe for building complex agents without the orchestrator’s context becoming an uncontrollable monster.
Key takeaways
- A skill is a self-contained package with instructions, tools, and examples; the agent loads only those relevant to the task.
- A subagent is a fresh agent that receives a bounded task, executes in isolation, and returns a synthesised result.
- The full pattern: orchestrator + skills (capabilities) + subagents (isolated execution).
- A skill must fit in your head; if it needs more than a paragraph of documentation, it’s probably two skills.
- Subagents must return synthesis, not transcript; if the orchestrator reads everything, the isolation is lost.
Skills: reusable capabilities
A skill is a self-contained package with:
- Specific instructions.
- Associated tools.
- Usage examples.
Example skills:
- “Draft an incident communication”.
- “Review TypeScript code per our conventions”.
- “Prepare release notes from commits”.
The agent loads only skills relevant to the task, keeping its context small and behaviour predictable.
The operational benefit is huge: a well-made skill is reused across projects, versioned, tested. The antipattern is a single giant prompt trying to cover every capability, inflated context, unpredictable behaviour, unmaintainable.
Subagents: context isolation
A subagent is a fresh agent that:
- Receives a bounded task.
- Executes in its own context.
- Returns a compressed result.
The orchestrator delegates; the subagent works in isolation; the result comes back synthesised.
Typical cases:
- Code exploration: “find every use of this function and report”.
- Review: “validate these changes against X criteria”.
- Generation: “produce a first version of this document”.
The orchestrator doesn’t need to read the whole exploration, just the subagent’s summary.
Composition: orchestrator + skills + subagents
The full pattern:
- Orchestrator: coordinates work and maintains the task’s global context.
- Skills: define reusable capabilities the orchestrator can load.
- Subagents: execute isolated work without polluting the orchestrator’s context.
Typical 2026 stack:
- Claude Code[1] with its native skills and subagents system.
- Homegrown implementations using MCP + custom coordination logic.
- Frameworks like LangGraph or AutoGen formalising the pattern.
Best practices
Three rules that recur in successful implementations:
- A skill must fit in your head: if it needs more than a paragraph of documentation, it’s probably two skills.
- Subagents must return synthesis, not transcript: if the orchestrator reads everything the subagent did, you lose the isolation that justifies the pattern.
- Subagent results are versioned by hash: same input, reuse output instead of repeating work.
Conclusion
Skills and subagents are the shape complex-agent composition takes in 2026. Teams internalising the pattern build maintainable, reusable systems; those continuing with monolithic prompts accumulate debt that slows all future work. Adopting the pattern is one of the few levers separating amateur from professional implementations in agentic engineering.