7 agentic design patterns with decision tree for choosing the right pattern for each agent type
npx skills add https://github.com/nWave-ai/nWave --skill nw-design-patterns
Is the agent doing a single focused task?
YES -> Does it need self-evaluation?
YES -> Reflection
NO -> ReAct (default for most agents)
NO -> Is it coordinating multiple agents?
YES -> Are tasks independent?
YES -> Parallel Orchestration
NO -> Are tasks sequential with dependencies?
YES -> Sequential Orchestration
NO -> Hierarchical (supervisor + workers)
NO -> Is it routing to one of several specialists?
YES -> Router
NO -> Does it need structured task decomposition?
YES -> Planning
NO -> ReAct (default)
General-purpose agents needing tool calling and iterative problem-solving.
Loop: Reason -> Select/execute action -> Observe result -> Repeat until done.
When: Default pattern. Most specialist agents.
Examples: software-crafter, researcher, troubleshooter.
Agent must evaluate and iteratively improve its own output.
Loop: Generate -> Review against criteria -> Identify gaps -> Refine -> Validate threshold met.
When: Quality-critical outputs where first-draft insufficient (code review, architecture review, agent validation).
Examples: agent-builder-reviewer, solution-architect-reviewer, software-crafter-reviewer.
Request classified and delegated to exactly one specialist.
Loop: Analyze request -> Classify -> Select specialist -> Delegate.
When: Task dispatching, single path execution. Low overhead, fast routing.
Examples: workflow-dispatcher, task-router.
Complex tasks requiring structured decomposition before execution.
Loop: Decompose into sub-tasks -> Sequence -> Allocate resources -> Execute with checkpoints.
When: Multi-step implementations, migrations, large refactoring.
Examples: project-planner, migration-coordinator.
Linear workflows with clear dependencies between stages.
Structure: Agent1 -> Output1 -> Agent2 -> Output2 -> Agent3 -> Result
When: Pipeline workflows where each stage transforms previous output.
Example: nWave waves: DISCUSS -> DESIGN -> DEVOPS -> DISTILL -> DELIVER.
Multiple independent analyses needed simultaneously.
Structure: Supervisor -> [Worker1, Worker2, Worker3] (concurrent) -> Aggregate results.
When: Independent analyses, multi-aspect reviews, parallel risk assessment.
Example: Multi-reviewer code review, parallel security + performance + correctness analysis.
Supervisor coordinates multiple worker agents dynamically.
Structure: Supervisor manages workers, routing tasks and aggregating results.
When: Complex coordination where routing depends on intermediate results.
Example: feature-coordinator supervising frontend/backend/database/testing specialists.
| Agent Role | Pattern | Rationale |
|-----------|---------|-----------|
| Specialist (single domain) | ReAct | Tool-using, iterative task completion |
| Reviewer (-reviewer suffix) | Reflection | Must self-evaluate and iterate on critique |
| Wave orchestrator | Sequential | Clear dependency chain between phases |
| Multi-agent coordinator | Hierarchical | Dynamic task routing to specialists |
| Task dispatcher | Router | Classification and single-path delegation |
Guide users through a structured workflow for co-authoring documentation. Use when user wants to write documentation, proposals, technical specs, decision docs, or similar structured content. This workflow helps users efficiently transfer context, refine content through iteration, and verify the doc works for readers. Trigger when user mentions writing docs, creating proposals, drafting specs, or similar documentation tasks.
Intelligently organizes your files and folders across your computer by understanding context, finding duplicates, suggesting better structures, and automating cleanup tasks. Reduces cognitive load and keeps your digital workspace tidy without manual effort.
Generates creative domain name ideas for your project and checks availability across multiple TLDs (.com, .io, .dev, .ai, etc.). Saves hours of brainstorming and manual checking.
You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation.
Implements Manus-style file-based planning for complex tasks. Creates task_plan.md, findings.md, and progress.md. Use when starting complex multi-step tasks, research projects, or any task requiring >5 tool calls.
Creative research ideation and exploration. Use for open-ended brainstorming sessions, exploring interdisciplinary connections, challenging assumptions, or identifying research gaps. Best for early-stage research planning when you do not have specific observations yet. For formulating testable hypotheses from data use hypothesis-generation.
Comprehensive GitHub project management with swarm-coordinated issue tracking, project board automation, and sprint planning
Interview the user relentlessly about a plan or design until reaching shared understanding, resolving each branch of the decision tree. Use when user wants to stress-test a plan, get grilled on their design, or mentions "grill me".
Take nwave-ai/nw-design-patterns from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.