When you give Claude a task with multiple independent parts, something interesting happens. Instead of working through each part one at a time, Claude can spawn sub-agents β parallel instances that tackle different pieces of the work simultaneously.
This is one of Cowork's most powerful features, and it's what makes complex tasks feel fast. Today you'll learn what sub-agents are, when Claude uses them, and how to think about tasks in a way that takes full advantage of parallel execution.
Think of sub-agents as temporary specialists that Claude creates to handle specific parts of a larger task. Each sub-agent operates independently, focused on its own piece of the work. When all the sub-agents finish, Claude combines their results into the final output.
Here's a concrete example. You ask Claude: "Research our 5 main competitors and create a comparison report."
Without sub-agents (sequential):
1. Research Competitor A... (2 minutes)
2. Research Competitor B... (2 minutes)
3. Research Competitor C... (2 minutes)
4. Research Competitor D... (2 minutes)
5. Research Competitor E... (2 minutes)
6. Compile report... (1 minute)
Total: ~11 minutes
With sub-agents (parallel):
1. Sub-agent 1 researches Competitor A
2. Sub-agent 2 researches Competitor B
3. Sub-agent 3 researches Competitor C (All happening simultaneously β ~2 minutes)
4. Sub-agent 4 researches Competitor D
5. Sub-agent 5 researches Competitor E
6. Claude compiles report... (1 minute)
Total: ~3 minutes
Same result, fraction of the time. The key insight is that researching Competitor A doesn't depend on researching Competitor B β they're independent tasks, so they can run in parallel.
Claude doesn't use sub-agents for every task. It makes an intelligent decision based on the structure of the work. The key question is: can parts of this task be done independently?
Good candidates for parallelization:
- Researching multiple topics, companies, or competitors
- Analyzing several files that don't depend on each other
- Creating multiple documents from a template (e.g., personalized letters)
- Processing a batch of files (renaming, converting, categorizing)
- Gathering data from multiple web sources
Tasks that stay sequential:
- Multi-step analysis where each step depends on the previous one
- Writing a single document that needs to flow logically from start to finish
- Tasks where the output of step 1 determines what step 2 should be
- File operations where order matters (e.g., create folder, then move files into it)
You don't need to tell Claude when to parallelize β it figures this out from the task structure. But understanding the concept helps you frame tasks in ways that enable parallelism.
Once you understand sub-agents, you can start framing your tasks to take advantage of them. The trick is to think about what can happen independently.
Instead of: "Analyze this data, then write a report, then create a presentation."
Try: "I need three deliverables from this data: (1) an analysis spreadsheet, (2) a written report, and (3) a 10-slide presentation. The analysis should be the source data for the other two."
In the second framing, Claude can create the analysis first, then spawn sub-agents to build the report and presentation in parallel β both drawing from the same analysis.
Instead of: "Research these topics one by one."
Try: "Research these 8 topics and compile a briefing document on each."
By naming all topics upfront, you signal that they're independent research tasks β perfect for parallelization.
Instead of: "Process these files."
Try: "Process each of these 20 CSV files independently: clean the data, standardize the column names, and flag any anomalies. Then combine the results into a summary."
The per-file processing happens in parallel. The combination step happens after.
When Claude spawns sub-agents, the Cowork interface shows you the parallel execution in progress. You can see:
- How many sub-agents are active
- What each one is working on
- When individual sub-agents complete
- The overall progress toward the finished task
This transparency means you're never wondering what's happening. If one sub-agent encounters an issue β say, a file it can't read or a website that's down β you'll see it immediately and can intervene.
You can also stop individual sub-agents without killing the whole task. If you realize you don't need the analysis on one particular competitor, you can tell Claude to skip it while the others continue.
The result is a workflow that feels collaborative rather than black-box. Claude is doing the heavy lifting, but you're informed and in control throughout.