
Multiple specialized agents beat one general agent when tasks need different tools, models, or safety boundaries.
In my daily workflow
- I decompose the user goal into subtasks with clear handoff payloads.
- Each agent gets a narrow system prompt and tool allowlist.
- A supervisor or graph edge decides which agent runs next.
- Shared state lives in a store — not duplicated in every prompt.
How it makes me work smarter
A researcher agent can be verbose; an executor agent must be terse and tool-safe. Splitting roles reduces prompt clutter and makes evals targeted per agent. Failures isolate to one node instead of corrupting the whole session.
My setup
- LangGraph StateGraph for copilot workflows
- Role-specific models: fast router, strong writer
- Supervisor pattern for planning vs execution
- Human approval node before destructive tools
On this portfolio
The copilot graph routes between retrieval, experience registry updates, and conversational replies — each node with its own constraints. This is lighter than a full multi-agent swarm but follows the same principle: specialize, then coordinate.


