One-Line Summary: Plan-driven harnesses (ruflo, LangGraph) build a structured plan upfront and execute against it; reactive harnesses (Cursor, Codex CLI in default mode) decide each next step based on what just happened — both are valid; the choice is mostly about task horizon and the cost of upfront planning.

Prerequisites: Plan-and-execute, plan graphs vs plan strings

What Is the Distinction?

A plan-driven harness produces an explicit plan (graph or annotated list) before any execution, then runs the plan as a state machine, replanning on divergence. The plan is a first-class artifact; you can inspect, save, and replay it.

A reactive harness produces only one decision at a time — what tool to call next — based on the current state. There is no upfront plan. The agent's "plan" lives in its chain-of-thought, never separately materialized.

The distinction is a spectrum, not a binary. ReAct-style agents are reactive. Plan-and-execute agents are plan-driven. Hybrid agents (most production systems) plan loosely upfront and re-decide reactively turn-to-turn.

How They Differ in Practice

PropertyPlan-drivenReactive
Planning artifactExplicit graph or annotated planImplicit in chain-of-thought
Best atLong-horizon, multi-stage tasksShort-horizon, single-track tasks
Failure modePlan obsolescence — execution diverges, plan no longer appliesWandering — agent forgets the goal mid-task
Cost shapeHigh upfront, low per-stepLow upfront, higher per-step variance
DebuggabilityHigh — plan is inspectableLow — must read transcript
LatencyHigher first-token; lower total for complex tasksLower first-token; can drift on long tasks
User mental model"I told the agent the strategy""I'm watching the agent figure it out"

Why It Matters

For tasks where the right answer is unknown — debugging, exploration, tight feedback loops — reactive is faster and often more pleasant. The agent and user adapt together turn by turn.

For tasks where the strategy is clear but execution is long — multi-file refactor, end-to-end research, complex CI pipeline — plan-driven amortizes the upfront cost across many execution steps and is more reliable.

Key Technical Details

  • Cursor and Codex CLI default modes are reactive; explicit "plan mode" or "agent mode" tilts them toward plan-driven.
  • Ruflo's autopilot is plan-driven: GOAP planner upfront, replan on divergence.
  • LangGraph is structurally plan-driven: the graph is the plan.
  • Hybrid is the dominant practical pattern: a coarse plan upfront, reactive within each plan node.
  • The model's chain-of-thought is itself a plan: just an unstructured one. Plan-driven systems extract that plan into a structured form so it can be inspected.
  • Reactive systems benefit from frequent goal restating: Without an explicit plan, the prompt has to remind the agent of the goal often, or it drifts.

When to Pick Which

  • Pick reactive when: the task is short (≤ 5–10 steps), you want tight user-in-the-loop control, the task is exploratory, latency matters more than total compute.
  • Pick plan-driven when: the task is long, the strategy is clear upfront, you want replay/audit, you'll run autopilot, you want to evaluate plans separately from execution.
  • Pick hybrid when: the task has both phases — a coarse strategy that decomposes into reactive subtasks. This is most production tasks.

How Harnesses & Frameworks Implement This

Harness / FrameworkDefault modeNotes
Claude CodeReactive (chain-of-thought)Plan-driven possible via plugins
Claude Agent SDKEitherProgrammatic
rufloPlan-driven (autopilot)ruflo-goals produces explicit plans
LangGraphPlan-drivenGraph is the plan
AutoGenReactive (group chat)
CrewAIPlan-driven (sequential/hierarchical task list)
OpenAI Agents SDKReactive default; handoffs add coarse plan structure
Codex CLIReactive default; --plan mode opts in
CursorReactive (chat); agent mode is hybrid

Connections to Other Concepts

  • goal-oriented-action-planning.md — The strongest plan-driven pattern.
  • plan-graphs-vs-plan-strings.md — Graphs are plan-driven's substrate.
  • adaptive-replanning.md — Plan-driven systems' counter to plan obsolescence.
  • topology-as-design-decision.md — Topology choice and plan-mode often correlate.

Further Reading

  • ReAct paper (Yao et al., 2022) — The foundational reactive pattern.
  • "Plan-and-Execute" papers (Wang et al., 2023) — Foundational plan-driven pattern.