ReAct (Reason + Act) was the foundational agent pattern: model reasons about what to do, takes one action, observes result, repeats. Newer patterns (tree-of-thought, reflection, hierarchical agents) added on top. ReAct is still the workhorse.
Why it works
Forces the model to externalize reasoning in tokens. Tool calls happen one at a time so each can be observed. Easy to trace and debug. Models trained on ReAct traces excel at this pattern.
Where it falls down
Parallel actions: ReAct does them serially. Long horizons: thought-action-observation loops accumulate context fast. Coordination: single agent can't easily delegate.
Modern variants
Parallel function calling: emit multiple tool calls in one step. Hierarchical: planner agent emits tasks, worker agents execute. Reflection: agent reviews its own trace at the end and revises. Each addresses a ReAct limitation.