The Cost Is the Feature
Last week I found that typed combinators capture 70% of real agent work. This week I tested whether a prompt can do the decomposition automatically.
I wrote a decomposer prompt. 11 combinators defined with types, rules, and heuristics. Fed it 3 real engineering plans from a CRM project. Each plan had detailed tasks, file lists, dependency frontmatter, acceptance criteria. I ran 3 decomposer agents in parallel, one per plan, and compared their output against my manual decomposition.
The dependency graphs were correct. Every single one. No leaf agent would be asked to import a file that hasn't been created yet. Schema files ordered by foreign key references. Auth libraries ordered by import chains. UI components correctly identified as parallel when they communicate through state, not imports.
The cost estimates landed within 10% of manual analysis. 53 leaf calls by hand, 58 by the decomposer. Close enough for budget caps.
Here's what surprised me: the decomposer found MORE parallelism than I did. I assumed import UI components had a dependency chain because they participate in a step flow (uploader then mapper then preview). The decomposer correctly identified they don't import each other. The page orchestrates them. They're independent. I was wrong.
And three of the four new combinators I proposed (REVIEW, LOOP, FORWARD) appeared naturally in the decomposer output. I didn't tell it to use them. The plans required them. REVIEW showed up when cross-cutting consistency checks were needed. LOOP showed up for verification cycles. FORWARD showed up when library exports needed to flow into downstream components. The combinators are necessary because the work demands them.
So what's the actual value?
Not quality. Freestyle agents produce the same code. Sometimes better, because they can adapt mid-execution when something doesn't work. The decomposer locks in a plan before seeing any output.
The value is knowing what you're about to spend.
Freestyle agents use 400-600 tool calls per plan with no upper bound. The decomposer says "58 bounded leaf calls" before execution starts. If you're running agents autonomously overnight with a budget cap, that's the difference between "I'll check in the morning" and "I need to watch this constantly."
Cost predictability is the killer feature for autonomous agent execution. Not smarter orchestration. Not better decomposition. Just knowing, before you start, what this is going to cost. The rest is the same.