An action is a step that touches the world or fetches new information. A thought is internal reasoning. In ReAct, the model alternates them so the runtime can execute actions and let thoughts pass through.
Imagine writing a recipe out loud. 'I think the dough needs more flour' is a thought. 'I add half a cup of flour' is an action. The first one is talking about what to do. The second one is actually doing it. An LLM agent works the same way. When the model writes 'I should search the database for recent orders,' that is a thought: it has not searched anything yet. When the model emits a structured tool call to the database, that is an action: the runtime sees it and actually runs the query. Thoughts help the model plan and explain itself. Actions are what change something or bring back fresh information.
Concept explanation~2 min read
Everything you need to truly understand this topic: intuition, mechanics, step by step explanation, code, formulas, and worked example. Click to expand.
Concept explanation~2 min read
Everything you need to truly understand this topic: intuition, mechanics, step by step explanation, code, formulas, and worked example. Click to expand.
Action and thought sound like terms from cognitive science, and in a sense they are. The agent literature borrowed the terms because they map cleanly onto a structural distinction every LLM agent has to make. The runtime must know which parts of the model's output are reasoning to let pass, and which parts are requests to execute.
The core distinction
An action is a step that affects the world or fetches new information from outside the model. Examples are calling a search tool, querying a database, running a script in a sandbox, sending a Slack message, or clicking a button in a browser. Each of these touches something the model could not affect by writing more text.
A thought is text the model writes for itself. It reasons about the task, plans the next step, and describes what it has learned so far. Thoughts contribute to the model's own next decision because they become part of the context window. But they do not cause anything external to happen. A thought is a working note the agent writes for itself.
This distinction matters because the two have completely different operational properties. Actions have latency (the time to call the tool) and cost (any computation or API charges incurred). They also have side effects (state changes that may not be reversible) and safety implications (the model can now influence anything the tool can affect). Thoughts have none of those. They cost tokens, but compared to actions, tokens are cheap and reversible.
The model's job on each turn is to produce both: some reasoning text (thoughts) and either a tool call (an action) or a final answer. The runtime's job is to forward the thoughts to the conversation history and execute the actions for real.
Situations where this technique stops working.
2–4 min · Everything important, quickly.
Real products, models, and research that use this idea.
- Anthropic's API distinguishes content blocks structurally: type=text blocks are thoughts, type=tool_use blocks are actions. The runtime only executes tool_use blocks.
- The 2022 ReAct paper is the pattern that made the alternation explicit. Every modern function-calling API encodes its split structurally.
What an interviewer would ask next. Try answering before peeking at the approach.
QWhy did ReAct interleaving improve agent performance over a model that emits tool calls without explicit reasoning?
Explicit thoughts give the model a structured scratchpad to plan before committing to an action. Empirically, this reduces wasted or wrong tool calls. The model commits to a plan in text before executing, and that text steers the next action.
Red flags & common mistakes
The phrases that signal junior thinking. Click to expand.
Red flags & common mistakes
The phrases that signal junior thinking. Click to expand.
Treating the model's reasoning text as an action. Reasoning is a thought. Nothing has happened until the model emits a tool call the runtime executes.
60 second bullets to scan on the way to the call.
Define an action versus a thought in the agent loop.
Explain the ReAct pattern and the alternation structure it makes explicit.
Primary sources. Browse if you want the original framing.
Same topic, related formats. Practice these next.