My harness has been doing a lot of work recently. Some of that is a busy stretch at work. The rest is that I am getting trusty-mpm ready to release, which means running the harness hard enough to find out where it breaks.
At the top of every session sits one agent I call the PM. It is the coordinator, and the PM in trusty-mpm. It does not do the work itself. It reads the request, decides what to break off, and hands the pieces to other agents, which may run other models. The model I put in that top seat is the driver. Everything below it is delegated.
Along the way I formed opinions about which models make good drivers. I wanted to know whether the logs backed them up.
So I got the receipts.
TL;DR
Opus 5 led every quality measure I could observe: lowest correction rate, lowest tool-error rate, shortest active and wall-clock spans. None of the differences reached statistical significance (Fisher exact p = 0.826, 0.771, 0.263).
Opus 5 launched July 24. My data covers July 24–30, the model’s entire public life so far. Complete, but only seven days of it.
A faster driver can cost more. Opus 5 had the shortest median active span, 116 minutes. Its median full run cost $70.34, 32% above Opus 4.8.
Pricing the driver alone understates the bill badly. Opus 5’s median driver transcript cost $18.58. The median full run, delegated agents included, cost $70.34. Fable: $66.31 against $211.50.
Priced on one fixed token workload, with Opus as the index: Sonnet 60%, Opus 100%, GPT-5.6 Sol 102%, Fable 200%. Sol lands beside Opus, not between Sonnet and Opus where its headline rates put it.
The Receipts
Driver First observed Last observed Qualifying sessions Opus 4.8 2026-06-15 2026-07-28 288 Opus 5 2026-07-24 2026-07-30 59 Sonnet 5 2026-07-01 2026-07-30 54 Fable 5 2026-07-02 2026-07-30 47
Opus 5 launched on July 24. My first session on it starts at 17:47 UTC the same day. The cohort runs July 24 through 30, the model’s entire public life so far, and holds 59 qualifying sessions. Per day, that is a slightly higher rate than Opus 4.8 sustained over five continuous weeks.
Opus 5 Leads Everything
Metric Opus 4.8 Opus 5 Sonnet 5 Fable 5 Qualifying sessions 288 59 54 47 Median driver rack cost $17.24 $18.58 $9.98 $66.31 Median full-run rack cost $53.47 $70.34 $47.60 $211.50 Median full-run cost / active hour $24.26 $40.24 $24.14 $63.80 Median estimated active time 134 min 116 min 129 min 186 min Median wall-clock span 796 min 401 min 642 min 461 min Median top-level delegations 7 11 12.5 16 Sessions with correction signal 12.2% 10.2% 13.0% 19.1% Tool-result error rate 3.4% 2.9% 4.8% 3.1% Literal git revert calls 7 0 0 1
Opus 5 leads every quality row: corrections, tool errors, active time, wall clock. It leads none of the cost rows. On quality alone it is the strongest candidate I measured.
(Though without instructions written to fight its worst communication habits, it is obtuse and frustrating to work with. More on that in a future article.)
Then the significance tests. Correction rate against Opus 4.8, p = 0.826. Against Sonnet 5, p = 0.771. Against Fable 5, p = 0.263. Nothing separates. With cohorts this small, nothing was going to. Opus 5’s 10.2% is six sessions out of 59, so one session either way moves the rate by nearly two points. The table does not show that Opus 5 causes fewer defects. It shows that Opus 5 held up across a heavily used first seven days.
The revert row is the easiest one to misread. Opus 5 issued zero literal git revert calls, but so did Sonnet 5. The seven belong to Opus 4.8, spread across 288 sessions and five weeks of continuous use. One belongs to Fable. And a revert is not automatically a regression the model caused. It can be a product decision, or cleanup of work that predates the session.
Throughput and Efficiency Are Different Metrics
Speed and cost per unit of work are separate axes, and Opus 5 sits at opposite ends of them.
It is the fastest driver in the set. Its median active span, 116 minutes, is the shortest of the four, and its 401-minute wall-clock span is roughly half Opus 4.8’s 796. Inside that shorter window it made more top-level delegations, 11 against 7.
Cost per unit of that time runs the other way. Opus 5 costs $40.24 per estimated active hour, against $24.26 for Opus 4.8 and $24.14 for Sonnet. Only Fable costs more per hour of work. And Opus 5’s median full run, $70.34, sits 32% above Opus 4.8’s $53.47 even though the two price identically at the driver layer. Almost all of that gap comes from below the driver.
High burn, then. More parallel model work, less wall time, and a bill that tracks the parallelism. That is a good trade when calendar time is what you are short of, and a bad one when money is. I keep having to remind myself of the second half, because a session that finishes early feels efficient no matter what it cost. Half the wall clock for 32% more money is a trade. It reads as a win only because the clock is the part you sit through.
Driver-Only Pricing Hides Most of the Bill
Opus 5’s median driver transcript costs $18.58. Count every delegated agent underneath it and the median full run is $70.34. The model I picked accounts for about a quarter of the bill. Fable splits the same way, $66.31 against $211.50, even though it runs 16 top-level delegations to Opus 5’s 11.
Most of what a session spends never touches the driver. It goes to delegated workers, and those workers often run other models. Opus 5’s subagents here ran Sonnet, Opus, Fable, and Haiku. That is the orchestration strategy working, not an accounting quirk. Price only the model you chose in the picker and you have priced a corner of the invoice.
Do not subtract those two numbers from each other. Median driver cost and median full-run cost come from the same sessions, but they are separate medians, and the session sitting at the median on one is not the session sitting at the median on the other. Subtracting $18.58 from $70.34 gives you the delegated share of nothing. The two figures, and the size of the gap between them, are all you get.
Session medians also partly measure task size rather than price. So I repriced a single fixed workload across models: the 59 Opus 5 driver transcripts, with their recorded token volumes held constant and each model’s future rack rates applied.
Counterfactual driver Median cost on the same token workload Index Sonnet 5 $11.15 60% Opus 5 / Opus 4.8 $18.58 100% GPT-5.6 Sol $18.97 102% Fable 5 $37.16 200%
On identical token volume, Sonnet is roughly 40% cheaper than Opus, and Fable is roughly double. GPT-5.6 Sol lands at 102% of Opus. From the headline rates I would have put it between Sonnet and Opus.
Sol’s position comes from its long-context rule. Above 272,000 input tokens, it charges 2x input and 1.5x output on the entire request. In this workload, 38.5% of Opus 5 driver requests crossed that line. Claude’s models, by contrast, include the 1M window at standard rates. Sol’s cache-write multiplier offsets part of the surcharge: 1.25x, cheaper than Claude’s 2x one-hour cache write, though identical to its five-minute one.
This is a price-per-token comparison, not a prediction that Sol would consume the same tokens. Tokenizers differ, and so do reasoning-token use and cache behavior. Until trusty-code is ready and can drive subagents on independent models, I cannot measure the full cost.
Two caveats on the rates themselves. They are future rack rates: Sonnet 5’s introductory $2/$10 runs through August 31, 2026, and I have priced the $3/$15 standard throughout. They are also API-equivalent estimates, not the marginal charge on a subscription plan.
Four Models, Four Operating Styles
The aggregate numbers barely separate. The operating styles separate cleanly, and in practice those are what I schedule around.
Opus 5 is fast, parallel, and evidence-seeking. It kept explicit records as it went: decisions made, commit state, open questions, detailed pause snapshots. Its resume handoffs were the most usable I reviewed. At its best it kept facts, inferences, and undecided questions in separate piles.
Its failures came from doing too much. It solved a larger problem than the one I asked about, or called a job finished before the part I had to touch worked. In one product-design session it turned a one-time image-generation request into a system capability, and I had to pull it back. In another it produced an artifact I could not see or write to until I asked for the link and the access. That is a completion failure, not a reasoning failure.
Opus 4.8 stays local. It made seven top-level delegations to Opus 5’s eleven, and ran 796 minutes of wall clock against 401. It costs $53.47 a run against $70.34. It is the slow one.
I asked it once why trusty-search was holding 12 GB when it was supposed to be non-resident. It declined to dig in itself, split the question into measurement and architecture, and ran both in parallel. What came back was not the answer I asked for. I had asked a capacity question and got back a broken instrument: the daemon was self-reporting 66 MB of memory use, so the 32 GB safety limit configured to catch exactly this condition could never fire.
Sonnet 5 is the price leader at future rack rates. It did not look faster at the session level, but its sessions carried more interactive design and iteration, so I doubt those medians are measuring the model at all. Its tool-error rate was the highest of the four, 4.8%. Small difference, confounded task mix, and I would not act on it.
It also refused to call six merged PRs done on green CI alone. It sent an agent to restart the daemon and watch them run for real. Ten minutes later I interrupted to ask why it kept hijacking my working sessions. Its own delegation prompt was the cause: it had told the agent to spawn sessions, without limiting it to sessions the agent had created itself. Nothing was damaged. It named what it had done wrong, refused to send a second agent in to clean up on the grounds that this was the same failure again, and handed verification back to me.
Fable 5 behaves like a program manager. Broad mandate in, many agents out, with review gates and deployment state tracked along the way. It reconstructs complex work after a resume better than anything else in the set. It also costs $211.50 a run, roughly 3x Opus 5 as observed and 2x once you normalize for the driver layer. I asked it how the attribution footer kept getting reverted. Six minutes later it came back with an answer: the footer was not being reverted at all, it was being bypassed.
Nothing in the logs tells me what that buys. Fable produced the broadest orchestration in the set at triple the cost, and I have no measure of accepted value to set against it. Counting agents and artifacts tells you how much happened, not whether any of it shipped.
What the Harness Amplifies
Inside a harness, a model that tends to broaden a task does not just write you a longer answer. It launches more agents and opens more workstreams, and the spend rises with the output. Whatever habit the model brought, the harness scales it. With Opus 5 that looked like one broad prompt turning into parallel streams for research, implementation, review, security scan, commit, push, and documentation.
So the harness is where the caps have to live: on how many agents can run, on how far scope can grow, on what counts as finished. A prompt tweak asks the model to behave. A delegation cap removes the option.
The same logic probably extends to how tightly the prompt itself is written, but my logs cannot show it. The harness does not record what kind of prompt started a session, so that one stays a hunch. It is on the list of things to instrument.
Where the Proxies Run Out
The correction signal counts my own prompts containing corrective phrasing: “still wrong,” “doesn’t work,” “you missed,” “fix it,” “undo,” “revert.” Its whole value is that it fires the same way every time. That is also its limit. A “fix it” counts identically whether the model shipped a bug, misread the requirement, hit a permissions wall, or did exactly what I asked before I saw the output and changed my mind.
It cannot tell who caused the problem, either. In several implementation sessions a short “fix it” followed a defect that had just surfaced, and nothing in the logs separates a defect the driver created from one it inherited. The revert count has the same blind spot from the other direction. Neither proxy can answer the question I started with.
GPT-5.6 Sol sits outside all of this, because I don’t use it for coding yet. Zero local Sol runs, so it appears in one table here and none of the others. I am making no claim about its effectiveness, correction rate, or speed. It is a rack-rate comparator and nothing more.
The Policy I Am Running
Opus 5 is my default, and I am still watching it rather than treating the decision as settled. Under that sit two hard caps, one on concurrent delegated agents and one on scope expansion, with driver cost and delegated cost reported separately. Those caps are my judgment call. Nothing in the data set them.
Everything else routes by the operating styles above. Bounded, technically risky changes go to Opus 4.8. Cost-sensitive work that is interactive or cheap to verify goes to Sonnet 5. Fable gets the program-level mandates, the ones where broad coordination is worth roughly 3x the observed Opus 5 full-run cost.
One piece is missing, and it is the one that would make the rest auditable: measuring accepted outcomes instead of completed tasks. Session-to-commit attribution. Technical acceptance and user-journey acceptance recorded separately. Later reversions tracked, human corrections filed with a structured reason, cost per accepted deliverable. Everything in this piece is downstream of conversation text and token counts. That list is what would fix it.
What I Take From It
Harness effectiveness is a joint property of the model, how it orchestrates, and the control policy you give it: the caps, the scope limits, and the completion rules the harness enforces on its own.
That is less satisfying than naming a winner, but it is what the data supports. Four models, one of them ahead on every quality measure I could observe, and not one difference that clears significance. (I should probably repeat this in a year, though I suspect all four will be irrelevant by then.) What separated cleanly was cost. And cost came down mostly to how far each model expands a task and how many agents it spawns to do it. A harness can constrain both of those directly.
How you configure the harness and the workflow matters as much as which model you pick. Run the same task with different instructions and different delegation rules, and the time and the cost come out far apart.
Bob Matsuoka is CTO of Duetto.
Related reading:
AI Power Ranking — Tool comparisons and benchmarks for AI practitioners
LinkedIn Newsletter — Strategic AI insights for CTOs and engineering leaders
Appendix: Method
Qualifying session. At least 80% of top-level target-model messages from one driver; at least two unique assistant API message IDs; at least one human prompt; use of an implementation or orchestration tool; working directory inside one of three project roots; not a private harness probe, scratchpad, dependency directory, or a delegated agent’s own worktree. API messages deduplicate by message.id. Duplicate session copies deduplicate by session ID, working directory, and exact start time, keeping the more complete copy. All task types are included, not only coding.
Cost. API-equivalent future rack-rate estimates, from Claude platform pricing and the GPT-5.6 Sol model docs. Sonnet 5 $3/$15 (standard from 2026-09-01, replacing the $2/$10 introductory rate that runs through 2026-08-31); Opus 4.8 and Opus 5 $5/$25; GPT-5.6 Sol $5/$30; Fable 5 $10/$50. Cache reads and five-minute and one-hour cache writes priced separately per model. Full-run cost includes recognized delegated usage across models.
Time. No retained field gives clean server latency or time-to-first-token. “Estimated active time” sums gaps between human prompts and unique top-level model messages, capping each gap at five minutes. Wall-clock span is first-to-last event and includes idle periods. Both are directional.
Statistics. Two-sided Fisher exact on correction-session rates.
Sources. Both Claude transcript stores, project-local .trusty-mpm/sessions/ including pause snapshots and scrollback, repositories under three project roots, and Git histories for corroboration.




