Zenaique

Flashcard: why break a complex goal into subtasks before acting?

Flashcard·Easy·4.0 · 0·~30s·Asked atCharacter AiHclHumanloop·Relevant atAnthropic
Attempt it
TL;DR

Task decomposition breaks a complex goal into smaller sub-tasks. It reduces per-step reasoning load, makes failures localizable, enables specialization, and creates natural gates for evaluation and human review.

Memory aid
Sign in to see the mnemonic that makes this stick.
Easy to grasp

Imagine being asked to plan a wedding in one shot: pick venue, send invites, book caterer, plan music, everything. That is overwhelming and easy to mess up. Now imagine breaking it into a list of small tasks: pick venue first, then send invites once the date is set, then book the caterer once the count is known. Each step is easier on its own, and if something goes wrong you know exactly which step failed. You can also assign different people to different steps. Agents work the same way. Breaking a complex goal into smaller sub-tasks makes each step easier, makes failures easier to find, lets the agent use different tools for different sub-tasks, and lets a human review the work between steps if it matters.

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.

Task decomposition is the most common structural choice in multi-step agent design: break a complex goal into smaller sub-tasks and handle them as separate units rather than as one monolithic prompt. It is so ubiquitous that it often goes unnamed, but it underpins nearly every multi-step agent pattern and is the underlying primitive for multi-agent systems.

The pattern can be explicit (a planner writes a numbered list of sub-tasks up front) or implicit (each step of a ReAct loop picks the next sub-task on the fly). Either way, the work is partitioned. This explanation walks through what decomposition looks like in practice, the four structural benefits that make it the default choice, the over-decomposition anti-pattern, and how multi-agent frameworks build on decomposition as their underlying primitive.

What decomposition looks like in practice

A concrete example helps anchor the abstraction. Imagine a user asks an agent: 'Summarise the security advisories filed this year for the dependencies of project X, and tell me which ones still need patches.'

A monolithic prompt would ask the model to do all of that in one task: identify the dependencies, find the advisories, classify their status, and write the summary. The model would have to hold all that complexity in one reasoning pass, which is exactly where compound errors emerge.

A decomposed agent breaks the work into smaller pieces. Sub-task 1: identify the dependencies of project X. Sub-task 2: for each dependency, fetch the advisories filed this year. Sub-task 3: for each advisory, check whether a patch has been released. Sub-task 4: summarise the unpatched advisories.

Each sub-task is well-scoped. The model knows exactly what it needs to do at each step, and the output of each sub-task feeds into the next. Failures localize: if sub-task 3 gets the patch status wrong for one library, the failure is visible at that sub-task, not buried in a tangled monolithic answer.

The decomposition can be authored explicitly (a planner LLM writes the four sub-tasks at the start of the run) or emerge implicitly (a ReAct agent picks 'identify dependencies' as the first Thought, then 'fetch advisories for X' as the second, and so on, without ever writing a global plan). The structural property is the same in both cases: the work is partitioned.

Benefit one: lower per-step reasoning load
Benefit two: localizable failures
Benefit three: specialization across tools and models
Benefit four: evaluation and human-review gates
Sign in to unlock the full deep dive.

Situations where this technique stops working.

Sign in to see when this approach fails.

2–4 min · Everything important, quickly.

Sign in to see the quick scan of the deep dive.

Real products, models, and research that use this idea.

  • OpenAI Deep Research decomposes a research goal into outline, then section, then claim sub-tasks, with each section's retrieval and synthesis happening independently before recomposition.
  • Anthropic claude-code decomposes a refactor into per-file edits, each with its own retrieval and edit sub-tasks, so a failed test on one file localizes the failure without invalidating the others.
Sign in to see more production examples.

What an interviewer would ask next. Try answering before peeking at the approach.

QHow is task decomposition different from Plan-and-Execute, given that they sound similar?
A

Task decomposition is the structural choice to partition the work. Plan-and-Execute is one specific way to implement it: explicit decomposition up front by a planner, then sequential execution. ReAct is another implementation: implicit decomposition turn by turn, with each Thought picking the next sub-task. Decomposition is the general primitive; Plan-and-Execute is one consumer of it.

2 more follow-ups an interviewer would ask next. Sign in to reveal them.

Red flags & common mistakes

The phrases that signal junior thinking. Click to expand.

Most common mistake

Treating task decomposition as one specific pattern like Plan and Execute. Decomposition is a structural choice that appears in nearly every multi-step agent pattern: ReAct decomposes implicitly per turn, Plan and Execute decomposes up front.

Sign in to see all red flags and common mistakes.

60 second bullets to scan on the way to the call.

  • Define task decomposition as partitioning a complex goal into smaller sub-tasks.

  • Distinguish explicit decomposition (Plan and Execute) from implicit decomposition (ReAct per turn).

Sign in to unlock the revision sheet.

Primary sources. Browse if you want the original framing.

Similar questions

Same topic, related formats. Practice these next.

4 curated
Next question
What is the Model Context Protocol (MCP) and what problem does it solve?
MCQ·Easy