How One Word 'Workflow' Spins Up Hundreds of Claude Code Agents
I run a few dozen automation jobs. They've always been independent jobs, each spinning up on its own. Then Claude Code shipped Dynamic Workflows, where a single session orchestrates hundreds of agents in the background by itself. It looked close enough to what I've been doing that I spent a few days digging into it firsthand.
One word, "workflow," and Claude writes the script itself
Dynamic Workflows dropped as a research preview on May 28. It kicks in when I drop the word "workflow" into a prompt, or type /effort ultracode. It shows up on Claude Code v2.1.154 and above.
The behavior was a little unusual. Claude takes my task and, right there on the spot, writes a JavaScript orchestration script itself. That script fans out dozens to hundreds of subagents in the background at once, and checks the results itself once before handing them back to me.
Up to 1,000 agents per run, with concurrency capped at 16 at a time. The key part was that I didn't have to spawn each job by hand.
The real story was how it differs from my automation
At first I thought, "Isn't this just what I've been doing for a year?" But after a few days, the grain was completely different.
My few dozen automation jobs are all independent jobs scheduled by launchd. Publishing jobs separately, market monitoring separately, English study separately. They don't share the same reasoning context — each one wakes up at a set time, does its own work, and goes back to sleep.
Dynamic Workflows was the opposite. It splits one task into hundreds of branches inside a single session. It's not a schedule — it's a fan-out that unfolds all at once. For one big task like "audit this whole repo, file by file, in parallel," this fit way better than my cron approach.
I ran one small workflow myself
I didn't get greedy — I started with something small. A task that scanned the files in one directory in parallel.
$ claude
> review and summarize each .py file in this directory in parallel as a workflow
# Claude writes a JS script on the spot
# one subagent per file, fanned out in the background (up to 16 concurrent)
# checks each result itself, then replies all at once
# meanwhile my session stays responsive (watch progress with /workflows)
What struck me was that the session doesn't block. While it ran in the background, I could keep asking other things in the same session. Type /workflows and you get a one-liner showing how many are running and how many are done. It feels like firing it off, doing something else, and just collecting the results.
Still, I didn't tear down my cron jobs
Honestly, I didn't replace my automation jobs with this. It's still a research preview, but on paid plans it's open from Pro on up. (On Pro you have to flip it on once in the settings.)
And the whole point of my jobs is that they "wake up on their own at a fixed time," so they were never the same use case as Dynamic Workflows, which fans out inside a single session. So I decided to split the labor like this: recurring work on a fixed schedule stays a launchd scheduled job, and one-off work I want to slice up big at once goes to a workflow. They're not competing — they're tools in different seats.
If something like a full-repo migration or a large-scale audit comes up — something I need to spread wide in one shot — I'll call workflow without hesitation. For now I'm going to keep the labor split like this and run with it some more.
Sources: Claude Code Docs — Orchestrate subagents at scale with dynamic workflows · Anthropic — Introducing dynamic workflows in Claude Code
This is a first-person write-up from a few days of hands-on use. It's a research-preview feature, so plans and behavior may change. I received no sponsorship of any kind from Anthropic.
Original with full infographics and visual structure: https://jessinvestment.com/how-one-word-workflow-spins-up-hundreds-of-claude-code-agents/
Top comments (0)