5 Agentic AI Design Patterns
~20 min read
The five foundational patterns for how agents refine and improve their behavior — Reflection, Tool Use, ReAct, Planning, and Multi-Agent — and how they combine.
Agentic behaviors allow LLMs to refine their output by incorporating self-evaluation, planning, and collaboration. Five named patterns cover most of what 'agentic' means in practice:
-
Reflection — the agent reviews and self-critiques its own output, then iterates to improve it, rather than accepting its first attempt as final. This is the conceptual seed behind the Loop multi-agent pattern (see 7 Patterns in Multi-Agent Systems) and behind automated prompt/output optimizers like Opik's MetaPromptOptimizer (see Automated Agent/Prompt Optimization with Opik) — both are, at their core, systematized reflection.
-
Tool Use — giving the agent access to external functions/APIs it can call to extend its capabilities beyond pure text generation. This is covered in depth in this topic's own architecture/workflow content above, and in a full hands-on build (native CrewAI tool + MCP server) in Building Custom Tools for Agents.
-
ReAct (Reason + Act) — explicitly combines Reflection-adjacent reasoning ('Thought') with Tool Use ('Action'), interleaving the two in a loop until enough information is gathered to answer. Covered in full hands-on depth, including a framework-free implementation, in ReAct Implementation From Scratch.
-
Planning — decomposing a larger task into a sequence of smaller steps before execution begins, rather than trying to solve everything in one shot. Framework grounding: CrewAI supports this via a planning=True flag on a Crew, which has an LLM generate a step-by-step plan before any agent starts executing tasks.
-
Multi-Agent — delegating parts of a task to multiple specialized agents that collaborate, rather than relying on one agent to do everything. Covered in full depth, including 7 distinct orchestration topologies, in 7 Patterns in Multi-Agent Systems.
In practice, these patterns compose: a production agentic system commonly combines Planning (decompose the task) with Multi-Agent (delegate the pieces) with ReAct (each sub-agent reasons and acts) with Reflection (each sub-agent or a review-agent critiques and iterates on outputs) with Tool Use (sub-agents call real APIs).
💻 Code example
# CrewAI's planning=True flag — a concrete example of the Planning pattern
from crewai import Crew, Process
crew = Crew(
agents=[researcher, writer, reviewer],
tasks=[research_task, writing_task, review_task],
process=Process.sequential,
planning=True, # an LLM generates a step-by-step plan before execution begins
)
result = crew.kickoff()
💬 Deep Dive with AI
Key points
- •The 5 patterns are: Reflection, Tool Use, ReAct, Planning, and Multi-Agent
- •Reflection is an agent self-reviewing and iterating on its own output — the conceptual seed for the Loop multi-agent pattern and for automated optimizers like Opik
- •Planning means decomposing a task into a sequence of steps before execution — e.g. CrewAI's planning=True flag
- •ReAct explicitly combines reasoning (thought) with tool use (action) — covered in full hands-on depth in the ReAct Implementation From Scratch topic
- •Tool Use and Multi-Agent are each covered in their own dedicated deep-dive topics elsewhere in this category