Agent Reasoning

Reasoning strategies for LLM agents are a crowded space: CoT, ToT, Reflexion, ReAct, Reason+Act, self-consistency, debate. Most are incremental over a well-prompted single call, and a 2026 frontier model with its built-in extended-reasoning mode often flattens the whole landscape.

Here's what actually earns its cost.

Chain-of-thought: the baseline

The "show your work" prompt, "Let's think step by step" or equivalent. For any non-trivial reasoning task, CoT improves accuracy — often by 10–30 points on math or logic benchmarks, less on factual tasks.

Guidelines:

For agents specifically, CoT between tool calls is helpful for deciding which tool to call but costs tokens. Reserve full CoT for decision points (tool choice, termination) and suppress it for executing straightforward steps.

Extended reasoning modes (o1, Claude extended thinking)

2026 frontier models ship with a separate reasoning mode that takes longer, spends more tokens, and arrives at better answers on complex problems. OpenAI's o1 series, Anthropic's extended thinking, DeepSeek R1, and open-weights models trained on similar traces.

Pattern: spend 2–20× more tokens on reasoning than on the final answer. The answer is often one line; the reasoning chain is many pages.

When to use:

When not to use:

A pragmatic agent design: default to regular mode, promote to reasoning mode on demand ("think harder") when the agent detects it's stuck or when a specific tool annotates that this step is hard.

Reflection: sometimes worth it

The "Reflexion" pattern: after an attempt, the model critiques its own output, then retries with the critique as context. Published ablations show +5–20 points on agent benchmarks.

Reality check: reflection is a cost multiplier (2–3× tokens per task) for a modest quality bump that isn't always present. Before adding it:

  1. Measure without reflection.
  2. Add reflection on a sampled subset.
  3. Confirm the quality delta is real and justifies the cost.

When reflection pays:

When reflection doesn't help:

Tree-of-Thought: occasional win, often overkill

ToT generates N candidate reasoning paths, evaluates each, keeps the best, iterates. Works when one-shot reasoning often lands on a local minimum.

If you need ToT-like exploration, consider:

Self-consistency is underrated. On arithmetic and closed-set reasoning, N=5 with majority vote often matches more sophisticated schemes.

ReAct and Reason+Act: the working default

ReAct interleaves reasoning and action:

Thought: I need to find the user's subscription
Action: lookup_user(id=42)
Observation: {active_subscriptions: 1, last_payment: ...}
Thought: OK, I have the subscription. Now I need to cancel it.
Action: cancel_subscription(user_id=42, sub_id=...)
Observation: ok
Thought: Done. I should also refund the last payment.
...

This is the baseline pattern for nearly every production agent. Modern frameworks (LangGraph, CrewAI, OpenAI Assistants) implement it almost identically under the hood.

Tuning hints:

Anti-patterns

Measurement

The only honest question is whether your reasoning strategy improves your task's outcome per dollar. Fixed rollout eval (see AgentTesting) with cost tracked:

Which wins depends on what a success is worth to you. Know that number.

Further reading