Research

What the evidence
shows.

Two questions decide how a harness is set up: is Pi worth running, and is it worth handing work to subagents. Neither has a universal answer. Here is what the published measurements support, and what they do not.

This page summarises public evidence, including the HarnessTax study published on 16 September 2026 by Pan, Yang, Arabzadeh, Chiang, Stoica and Zaharia. SpecPi itself has not been measured against an alternative. Nothing below is a benchmark of this base.

Summary

01

The short version: Pi is a credible efficiency baseline, and delegation is worth it selectively. Both claims are conditional on the workload, and the strength of the evidence differs a lot between them.

Supported
Pi often costs less. Lower spending shows up across several independent comparisons, sometimes by a wide margin.
Not supported
A fixed savings multiplier. Reported ratios run from about 1.2x to 7x. None of them transfers to another workload.
Not supported
A success-rate winner. Pi leads on some benchmarks and trails on others. No study establishes parity either.
Supported
The harness moves cost more than correctness. Across 21 model–harness pairs, success rates stayed within a few points while the same model's bill varied by up to 5x.
Supported
Delegation is task-shaped. Extra agents help bounded research and fresh-context review, and hurt coupled code changes.

The practical consequence: harness and delegation choices are budget decisions, not correctness decisions. A cheaper agent that solves two fewer tasks is the better buy only if those tasks are worth less than the money saved. What they are worth is a number you have to supply.

Reading a cost number

02

Most disagreement about harness cost is really disagreement about arithmetic. Four different quantities all get published as "cost", and they answer different questions.

QuantityHow it is computedWhat it tells you
Mean cost per attempt total ÷ attempts Spending across successes and failures alike.
Cost per success total ÷ successes What each result actually costs, failures included.
Success-conditioned cost cost of wins ÷ successes Flattering: hides everything spent on failures.
Median attempt cost middle attempt A typical run, but says nothing about the total.

Why this matters here. In the FrontierHarness data, failed tasks consume 85.3% of Pi's total spending and 48.7% of Codex's. A success-conditioned metric would throw out most of the Pi bill and make Pi look much better than it is.

Pi's headline advantage also coexists with a slightly higher median attempt cost: $0.2347 against Codex's $0.2305. Both numbers are real; the rest of the two distributions just differ.

When some tasks were never priced, the honest figure is a lower bound, not a measurement. Missing costs do not become zeroes just because they are missing.

Harness choice

03

HarnessTax: seven models across three harnesses

The largest controlled comparison so far, published 16 September 2026, evaluates 21 model–harness pairs, seven models across Claude Code, Codex CLI and Pi, on SWE-bench Lite and Terminal-Bench 2.0. It is the first study at this scale to measure Pi directly.

With thanks to the HarnessTax authors. This section summarises HarnessTax: How Much Does the Harness Matter for Coding Agents? by Melissa Z. Pan, Shuo Yang, Negar Arabzadeh, Wei-Lin Chiang, Ion Stoica and Matei Zaharia (UC Berkeley Sky Lab; Wei-Lin Chiang at Arena). The work is theirs. The summary below leaves things out, so read the study itself.

Read the full study, with its interactive figures and the complete 21-pair grid, at harnesstax.github.io. Please cite the authors rather than this page.

Their main result: the harness changes what you pay far more than what you get. Averaged across shared models, the harness effect on success rate stays within about ±2% on SWE-bench Lite and ±5% on Terminal-Bench 2.0, while the same model's bill varies by as much as 5x. Pi reaches the Pareto frontier on both benchmarks with four tools: read, write, edit and bash.

PiCodex CLIClaude CodeTasks resolved0%25%50%75%100%Mean cost per attempt$0$.40$.80$1.20$1.60Fable 5Claude Fable 5 · Pi: 96.7% of tasksClaude Fable 5 · Pi: $0.666 per attemptClaude Fable 5 · Codex: 96.7% of tasksClaude Fable 5 · Codex: $0.890 per attemptClaude Fable 5 · Claude Code: 97.8% of tasksClaude Fable 5 · Claude Code: $1.329 per attemptOpus 4.8Claude Opus 4.8 · Pi: 82.2% of tasksClaude Opus 4.8 · Pi: $0.473 per attemptClaude Opus 4.8 · Codex: 88.9% of tasksClaude Opus 4.8 · Codex: $0.694 per attemptClaude Opus 4.8 · Claude Code: 86.7% of tasksClaude Opus 4.8 · Claude Code: $0.976 per attemptGPT-5.6 SolGPT-5.6 Sol · Pi: 74.4% of tasksGPT-5.6 Sol · Pi: $0.441 per attemptGPT-5.6 Sol · Codex: 73.3% of tasksGPT-5.6 Sol · Codex: $0.561 per attemptGPT-5.6 Sol · Claude Code: 77.8% of tasksGPT-5.6 Sol · Claude Code: $1.540 per attemptKimi K3Kimi K3 · Pi: 72.2% of tasksKimi K3 · Pi: $0.455 per attemptKimi K3 · Codex: 74.4% of tasksKimi K3 · Codex: $0.845 per attemptKimi K3 · Claude Code: 76.7% of tasksKimi K3 · Claude Code: $0.784 per attemptSonnet 4.6Claude Sonnet 4.6 · Pi: 64.4% of tasksClaude Sonnet 4.6 · Pi: $0.679 per attemptClaude Sonnet 4.6 · Codex: 68.9% of tasksClaude Sonnet 4.6 · Codex: $0.745 per attemptClaude Sonnet 4.6 · Claude Code: 66.7% of tasksClaude Sonnet 4.6 · Claude Code: $0.669 per attemptHaiku 4.5Claude Haiku 4.5 · Pi: 60% of tasksClaude Haiku 4.5 · Pi: $0.374 per attemptClaude Haiku 4.5 · Codex: 57.8% of tasksClaude Haiku 4.5 · Codex: $0.392 per attemptClaude Haiku 4.5 · Claude Code: 52.2% of tasksClaude Haiku 4.5 · Claude Code: $0.426 per attemptGPT-5.6 LunaGPT-5.6 Luna · Pi: 53.3% of tasksGPT-5.6 Luna · Pi: $0.030 per attemptGPT-5.6 Luna · Codex: 55.6% of tasksGPT-5.6 Luna · Codex: $0.035 per attemptGPT-5.6 Luna · Claude Code: 55.6% of tasksGPT-5.6 Luna · Claude Code: $0.152 per attempt
SWE-bench Lite. All 21 model–harness pairs, grouped by model. The three bars in each left-hand group are nearly level; the right-hand ones are not. Pi is the cheapest of the three on six of the seven models; Claude Sonnet 4.6 is the exception. Rows are ordered by mean success here and held in that order in the figure below, so the two can be read against each other. Hover any bar for the exact figure.
PiCodex CLIClaude CodeTasks resolved0%25%50%75%100%Mean cost per attempt$0$.40$.80$1.20$1.60Fable 5Claude Fable 5 · Pi: 71.1% of tasksClaude Fable 5 · Pi: $1.079 per attemptClaude Fable 5 · Codex: 72.2% of tasksClaude Fable 5 · Codex: $0.976 per attemptClaude Fable 5 · Claude Code: 75.6% of tasksClaude Fable 5 · Claude Code: $1.554 per attemptOpus 4.8Claude Opus 4.8 · Pi: 72.2% of tasksClaude Opus 4.8 · Pi: $0.758 per attemptClaude Opus 4.8 · Codex: 72.2% of tasksClaude Opus 4.8 · Codex: $0.848 per attemptClaude Opus 4.8 · Claude Code: 68.9% of tasksClaude Opus 4.8 · Claude Code: $0.899 per attemptGPT-5.6 SolGPT-5.6 Sol · Pi: 83.3% of tasksGPT-5.6 Sol · Pi: $0.421 per attemptGPT-5.6 Sol · Codex: 78.9% of tasksGPT-5.6 Sol · Codex: $0.761 per attemptGPT-5.6 Sol · Claude Code: 71.1% of tasksGPT-5.6 Sol · Claude Code: $1.355 per attemptKimi K3Kimi K3 · Pi: 73.3% of tasksKimi K3 · Pi: $0.383 per attemptKimi K3 · Codex: 70% of tasksKimi K3 · Codex: $0.450 per attemptKimi K3 · Claude Code: 66.7% of tasksKimi K3 · Claude Code: $0.521 per attemptSonnet 4.6Claude Sonnet 4.6 · Pi: 65.6% of tasksClaude Sonnet 4.6 · Pi: $0.614 per attemptClaude Sonnet 4.6 · Codex: 63.3% of tasksClaude Sonnet 4.6 · Codex: $0.552 per attemptClaude Sonnet 4.6 · Claude Code: 62.2% of tasksClaude Sonnet 4.6 · Claude Code: $0.669 per attemptHaiku 4.5Claude Haiku 4.5 · Pi: 47.8% of tasksClaude Haiku 4.5 · Pi: $0.250 per attemptClaude Haiku 4.5 · Codex: 31.1% of tasksClaude Haiku 4.5 · Codex: $0.214 per attemptClaude Haiku 4.5 · Claude Code: 41.1% of tasksClaude Haiku 4.5 · Claude Code: $0.263 per attemptGPT-5.6 LunaGPT-5.6 Luna · Pi: 76.7% of tasksGPT-5.6 Luna · Pi: $0.045 per attemptGPT-5.6 Luna · Codex: 72.2% of tasksGPT-5.6 Luna · Codex: $0.064 per attemptGPT-5.6 Luna · Claude Code: 70% of tasksGPT-5.6 Luna · Claude Code: $0.098 per attempt
Terminal-Bench 2.0. The same 21 pairs in the same row order, on the harder benchmark, where the ranking changes completely. GPT-5.6 Luna on Pi resolves 76.7% at $0.045 an attempt. That beats every Claude model in every harness on both measures at once, including the SWE-bench Lite leader: Claude Fable 5 on Claude Code resolves 75.6% at $1.554. Eight cheaper configurations beat it on both measures, Pi's among them.

Both figures are drawn by SpecPi from the data published with the study; the design is ours and any error in it is ours. Method: 30 randomly sampled tasks per benchmark, three attempts each, each harness in its native configuration at its high effort setting, capped at 100 agent turns, priced from a fixed direct-API list dated 1 September 2026. Confidence intervals in the study come from 10,000 bootstrap resamples and are wide: most pairwise differences here are too small to call.

±2% Average harness effect on success rate, SWE-bench Lite. Cost moved far more.
2.0x Claude Code's cost relative to Pi on SWE-bench Lite, geometric mean across shared models.
10x Claude Code's mean first-call context relative to Pi's, across all seven models.

Two details matter more than the headline. First, the spending gap is not explained by the agent working harder: on SWE-bench Lite, Fable 5 averages 15.4 turns in Pi and 15.3 in Claude Code, yet Claude Code costs about twice as much for a 1.1-point gain. Second, the extra cost starts on the very first model call: longer instructions and larger tool schemas make Claude Code's initial context more than ten times Pi's before any work begins.

Their third finding cuts against provider loyalty: across the six Anthropic and OpenAI models and both benchmarks, an alternative harness achieved the highest observed success rate in nine of twelve comparisons. A model does not necessarily do its best work in its own vendor's harness.

What it does not settle. Thirty sampled tasks per benchmark, on two open-source benchmarks the authors note the models may have seen during training. Turn counts are not comparable across harnesses because each defines a turn differently. The authors state plainly that results may differ on other benchmarks and workloads, and they make no claim about any configured Pi distribution, including this one.

FrontierHarness: task-level results on a single model

The most auditable single-model comparison is FrontierHarness: 30 tasks, every harness on the same Kimi K3 model through the same provider, with task-level results released rather than promised. Pi ran at version 0.84.2.

HarnessSolvedCost / attemptCost / success Cost coverage
Codex20 / 30$2.31$3.4730 / 30
Claude Code19 / 30≥ $11.61≥ $18.34 29 / 30
Pi18 / 30$1.46$2.4330 / 30
Oh My Pi17 / 30$2.69$4.7530 / 30
Exo16 / 30$0.56$1.0530 / 30

Selected rows from twelve configurations, at the benchmark's frozen historical prices. Values marked ≥ are lower bounds because some tasks were never priced. Pi is tied for fourth on accuracy and second-cheapest per success.

29.9% Lower cost per success than Codex, on two fewer solves.
p = 0.69 Exact McNemar on the paired outcomes. The accuracy gap is not resolved either way.
$12.79 Value per extra solved task above which Codex becomes the better buy.

That $12.79 carries the whole argument. Below it, Pi's savings outweigh the two missed tasks; above it, they do not. Real tasks are not worth the same amount, and human review time often dwarfs API cost, so use it to frame the decision, not as a threshold to apply.

The task mixture drives the ranking

Pi solves 16 of 21 terminal tasks and 2 of 9 repository-repair tasks; Codex solves 15 and 5. Pi leads on terminal work and trails badly on repository repair. The aggregate ordering partly reflects the benchmark's 70:30 weighting, and neither subgroup is large enough to settle a domain ranking.

Other comparisons point in different directions

EvaluationAccuracyCost
Databricks · internal codebase, 6 matched model settings −7 to +3 pp for Pi 16.7–51.9% cheaper, every time
Augment · Auggie v2 (a Pi fork), 731 SWE-bench Pro 61.0% vs 61.4% 52.9% below Claude Code
Warden · 86 known vulnerabilities, Sonnet 4.6 25 found vs 24 $19.84 vs $103.59
XBOW · 104 security challenges, GPT-5 50.0% vs Codex 67.3% $0.231 vs $0.396 per success
Composio · 25 SaaS workflows, Kimi K3 72% vs Oh My Pi 88% $0.57 vs $0.52 per success

The counterexamples are the point. On security challenges Pi trails Codex by 17 points, and loses to OpenCode on accuracy and cost per success. On SaaS workflows Oh My Pi (a fork of Pi whose first call is twelve times Pi's, measured in section 05) beats plain Pi by 16 points. A harness that wins on one workload can lose on the next.

Subagents

04

Whether a second agent helps depends almost entirely on whether the work decomposes. Kim et al. ran matched token ceilings across six benchmarks and picked the best multi-agent architecture separately for each. The direction of the result flips.

Single agent Best multi-agent configuration

Finance Agent centralized · 50 instances

0.349
0.631

WorkBench decentralized · 100 instances

0.629
0.664

BrowseComp-Plus decentralized · 100 instances

0.318
0.347

PlanCraft hybrid · 100 instances

0.568
0.346

SWE-bench Verified hybrid · 20 instances

0.488
0.481

Terminal-Bench independent · 20 instances

0.312
0.331

Higher is better on every row; bars share a common 0–0.7 scale. Scores keep their source metric, so read each row on its own and do not average across them. The two software rows have only 20 instances each. Matched token ceilings are not matched spending.

Coupled code changes get worse

CooperBench matters most if you write software. Across 652 deliberately overlapping feature tasks, GPT-5 solved 315 working alone and 183 cooperating. Letting the agents talk to each other reduced merge conflicts without improving success for any model tested.

Solo tasks solved out of 652

315

Cooperative two agents, 100 actions each

183

The action ceiling is per agent, so the cooperative arm was not cost-matched. This is evidence about agents writing interdependent code, not about read-only research workers.

Where delegation does earn its place

The pattern worth keeping is narrow: independent, breadth-first evidence gathering, and review from a context that never saw the implementation. One agent still owns every edit. Anthropic reports a 90.2% relative improvement on an internal research evaluation with that setup, though it also reports multi-agent systems using roughly 15x the tokens of chat.

Pi's own author lands in a similar spot, from practice rather than measurement. Mario Zechner names code review as the useful subagent case and objects to opaque context transfer and parallel feature-writing teams. His normal habit is a separate review session that he then reads himself.

Task shapeStart withOnly add a worker if
Small edit or short lookupParent only Never. Batch the tool calls instead.
Coupled change, unsettled interfacesOne implementation owner Shared decisions are already resolved.
Two substantial evidence questionsOne or two scouts The questions and sources genuinely do not overlap.
Frozen change with review riskOne fresh reviewer It gets requirements and the diff, not the author's verdict.
The same prompt already failedDiagnose first Something changed: new evidence or repaired state.

Parallel is slower than it sounds. Two independent six-minute investigations take twelve minutes in sequence. Run them concurrently with a minute of preparation and two of synthesis and you get nine. That is a 25% saving, not a doubling. The dollar cost usually goes up.

The full bill is parent + workers + tools + retries + integration. Delegation moves work into that last term rather than removing it.

For this base

05

SpecPi 0.29.0 pins seven packages and keeps its own extensions to scope control and the improvement loop. Read against the evidence above, that shape holds up. It also leaves gaps. This section names both.

What the base already does right

  • Delegation is a pinned package, not a core feature. specpi-delegation@0.2.0 is one of the seven pins, so it can be configured, held at a version, or removed without touching the harness. Given how task-dependent the delegation evidence is, that separation is worth keeping.
  • Scope control targets the failure the research keeps coming back to. Context omission, duplicated investigation and stale review are the recurring multi-agent failure modes. A task with an explicit scope is the cheapest defence against all three.
  • The improvement loop needs a human selection. The literature is blunt that agreement between agents is not verification, so a change needs a person to authorize it.

What the first call costs

The finding that cuts against this base. HarnessTax traces a large part of Claude Code's cost premium to its first model call, where longer instructions and larger tool schemas make its initial context more than ten times Pi's. Every package SpecPi pins adds to that same call, so we measured it instead of assuming Pi stays cheap under configuration.

Characters sent on the first model callHorizontal bar chart of characters a harness sends before any work happens. Pi stock 5,521; SpecPi default 15,069; OpenCode 31,043; DeepSeek Harness 31,743; SpecPi enabled 40,203; Codex CLI 41,616; Oh My Pi 65,816; Claude Code 90,460. Each bar is split into tool schemas and instructions. The Pi, SpecPi, OpenCode, DeepSeek Harness and Oh My Pi rows were measured by this repository; the dimmed Codex CLI and Claude Code rows are HarnessTax published figures taken under a different configuration.0k10k20k30k40k50k60k70k80k90k100kCharacters: tool schemas + system/developer instructionsPi stock4 toolsPi stock tool schema: 2,901 charsPi stock instructions: 2,620 chars5,521SpecPi default9 toolsSpecPi default tool schema: 8,435 charsSpecPi default instructions: 6,634 chars15,069OpenCode10 toolsOpenCode tool schema: 21,464 charsOpenCode instructions: 9,579 chars31,043DeepSeek Harness25 toolsDeepSeek Harness tool schema: 27,057 charsDeepSeek Harness instructions: 4,686 chars31,743SpecPi enabled28 toolsSpecPi enabled tool schema: 32,251 charsSpecPi enabled instructions: 7,952 chars40,203Codex CLI7.4 toolsCodex CLI tool schema: 18,114 charsCodex CLI instructions: 23,502 chars41,616Oh My Pi11 toolsOh My Pi tool schema: 47,575 charsOh My Pi instructions: 18,241 chars65,816Claude Code23 toolsClaude Code tool schema: 76,995 charsClaude Code instructions: 13,465 chars90,460tool schemasinstructionsSolid rows measured here: Pi 0.84.4, opencode 1.18.31, dsh 0.1.5-rc.2 and omp 18.2.2.Synthetic provider, all 7 pins.Dimmed rows: HarnessTax figures for Codex CLI and Claude Code, taken onPi 0.85.1 with real providers. Characters, not tokens or cost.
The solid rows are ours, captured from the request each harness actually sends through the same local synthetic provider and the same empty workspace. The dimmed Codex CLI and Claude Code rows are HarnessTax's published figures, taken under the study's configuration. Treat them as a reference, not a matched comparison. Reproduce with node scripts/measure-context.mjs --chart --omp=<path to Oh My Pi's cli.js> --oc=<path to OpenCode's binary> --dsh=<path to the DeepSeek Harness bin> (npm access and a Bun runtime required). Measurement record and exact pins.

How the profiles were measured

Both SpecPi profiles include all seven installed packages, the installed working agreement, and the usual skill discovery. The default leaves browser QA, delegation, and web access off. The enabled profile runs /browser on, /delegate on and /webaccess on first, and measures what that actually sends rather than adding up registered schemas. Neither profile has an active goal, scope, improvement selection, or user configuration.

The script runs in a disposable home and an empty workspace, with no personal credentials, histories, or paid inference. It first checks that all seven pins and all nine production extensions load.

Inside the enabled profile

The gap between the two SpecPi bars comes from several switches, so the enabled profile's tool schema is also published group by group: the same measured schemas, split into groups, with every tool in exactly one group.

What each capability adds to the tool schemaHorizontal bar chart of the characters each capability group adds to the tool schema. Pi built-ins 2,896; Improvement loop 4,214; Goals 1,315; Browser QA 8,046; Delegation 4,453; Web access 11,298. Browser QA, Delegation, Web access are hidden until switched on.0k2k4k6k8k10k12kCharacters of tool-definition JSON in the enabled profilePi built-ins4 tools · in defaultPi built-ins: 2,896 chars2,896Improvement loop3 tools · in defaultImprovement loop: 4,214 chars4,214Goals2 tools · in defaultGoals: 1,315 chars1,315Browser QA14 tools · /browser onBrowser QA: 8,046 chars8,046Delegation1 tool · /delegate onDelegation: 4,453 chars4,453Web access4 tools · /webaccess onWeb access: 11,298 chars11,298offered by defaulthidden until switched onWithholding the opt-in groups keeps 23,797 characters of tool schema out of every request.
Tool-definition JSON only; the instructions segment is excluded because it does not divide along the same lines. Whether a group ships in the default profile is read from the default measurement, so if a package ever changes its default visibility, the chart breaks loudly instead of keeping a stale label.

Web access is the single largest group at 11,298 characters, and web_search alone accounts for 4,858 of them. Browser QA's fourteen tools cost less together than web access's four, which an estimate would get backwards. Leaving all three opt-in groups hidden keeps 23,797 characters of tool schema out of every request.

Counts are compact tool-definition JSON plus system/developer text, in JavaScript UTF-16 code units. The user prompt and transport envelope are excluded; discovered skill metadata counts, and skill bodies count only if loaded into the request. Temporary path text is counted as-is, so totals move with host paths, dates, and versions. These figures are exact for these requests, not universal session sizes or token counts.

The other harnesses, measured the same way

Oh My Pi is not another package set but a Bun-based fork of Pi, measured as installed with its own tools, skills, and prompt. Nothing is added; only local rule and extension discovery is turned off. Its default session sends 65,816 characters across 11 tools: about 11.9x stock Pi and over four times a default SpecPi, putting a configured Pi fork between Codex CLI and Claude Code.

That belongs next to the two other places Oh My Pi appears on this page. It costs 84% more per attempt than Pi on FrontierHarness and solves one task fewer; it beats Pi by 16 points on Composio's SaaS workflows. A first call twelve times the size explains neither the win nor the loss. The overhead is real and measurable, and measuring it says nothing about what it buys.

OpenCode is measured the same way, as installed. It is a compiled binary with its own tools, prompt and skill list, configured only to reach the same synthetic provider. Its default build-agent session sends 31,043 characters across 10 tools: about 5.6x stock Pi and about twice a default SpecPi, landing it between a default SpecPi and the enabled profile. One method detail: opencode run also fires a small parallel call to write a session title, and pinning --title suppresses it, so the recorded request is the conversation call, the first and only model call the turn sends.

DeepSeek Harness is the same kind of measurement on a different stack: a Node application that composes its tools, skills and prompt from plugin bundles. It is measured as installed, with only the provider route declared through its own patch layer and its harness home kept out of the way. Its default session sends 31,743 characters across 25 tools: about 5.7x stock Pi and about twice a default SpecPi, within 700 characters of OpenCode. Its headless run also fires a small auxiliary request to write the session title; that request carries no tool schema, so the measured one is the conversation call.

Correction. The earlier 10,536-character SpecPi figure measured only first-party extensions, without the installed AGENTS guidance or the four third-party packages, so it was not a complete default-install measurement; the earlier “all on” row was not reproduced by enabling those tools either. Both are replaced here by observed requests. A draft of this revision also moved the Oh My Pi bar into the dimmed study group. That was wrong: HarnessTax covers Claude Code, Codex CLI and Pi only, and the Oh My Pi figure has always been ours. It is measured again above, and now reads 65,816 rather than the 65,843 published earlier. The 27-character drift sits in the instructions segment, the kind of variation the method notes warn about.

Less initial context does not establish lower total spending or better task outcomes. The external studies above remain separate evidence; none establishes that these SpecPi profiles improve task success. That part is still yours to measure.

Settings worth choosing deliberately

specpi-delegation handles most of what the evidence warns about in code, and leaves two knobs to you. Both are set from the session with /delegate, and are saved per agent directory.

ControlWhy the evidence bears on it
/delegate budget <1–64> Retries and fan-out are where cost escapes. The session multiplier turns an unbounded bill into a bounded one; 8 is the default.
/delegate timeout <1–60> A stalled child spends without converging. Ten minutes is the default ceiling per job, and lowering it costs less than a long failing run.
Concurrency: fixed at 2 Parallelism pays only when concurrent work exceeds coordination overhead. The package does not expose a higher ceiling, so there is none to raise by accident.
Recursion: not available Recursive delegation multiplies every coordination failure. A child holds three read-only tools and cannot delegate further.
Child context: always fresh A reviewer that inherits the implementer's context is not a fresh reviewer. Children see a frozen source snapshot and the request, never the parent's conversation.

The evidence points to something close to the package's defaults: bounded spending, shallow delegation, fresh context, and children used for review and bounded research while the parent session keeps writing the code. Delegation ships off. Run /delegate on for this session, or /delegate startup on to save that preference.

Not established

06

None of these follow from the evidence above. The page would mislead without them, so here they are.

  • SpecPi task effectiveness has not been established against an alternative. The installed-profile comparison measures initial context only. External task results describe stock Pi or another product; version proximity does not establish transfer.
  • No savings multiplier transfers. Published ratios span roughly 1.2x to 7x and each belongs to its own model, route, task set and pricing basis.
  • A large p-value is not equivalence. The FrontierHarness comparison is underpowered at 30 tasks. It fails to show a difference; it does not show parity.
  • Auggie v2 is not evidence about stock Pi. It changes retrieval, compaction and more at once, so nothing in that result attributes to any single mechanism.
  • Benchmark scores do not pool. Repository repair, SaaS workflows, security challenges and biology workflows have different success events. An average across them would mean nothing.
  • Token counts are not dollars. Cache categories, pricing and counting conventions differ between harnesses; one study found Pi using about 2.4x Codex's runtime tokens.

To settle any of this for your own work, run a matched comparison on your own repositories: the same model and provider, a task set chosen before you see results, held-out verification, and complete cost accounting that includes failed attempts and human review time.

Sources

07

Primary evidence behind this page. Study prices are historical and say nothing about current pricing. Live pages were checked in September 2026.

  • Melissa Z. Pan, Shuo Yang, Negar Arabzadeh, Wei-Lin Chiang, Ion Stoica and Matei Zaharia. HarnessTax: How Much Does the Harness Matter for Coding Agents? UC Berkeley Sky Lab and Arena, 16 September 2026. 21 model–harness pairs across Claude Code, Codex CLI and Pi, on SWE-bench Lite and Terminal-Bench 2.0. The primary source for section 03, with our thanks to the authors. harnesstax.github.io
    @misc{pan2026harnesstax, title={{HarnessTax: How Much Does Harness Matter for Coding Agents?}}, author={Pan, Melissa Z. and Yang, Shuo and Arabzadeh, Negar and Chiang, Wei-Lin and Stoica, Ion and Zaharia, Matei}, year={2026}, url={https://harnesstax.github.io/}}
  • FrontierHarness Eval v1. Frozen 30-task benchmark and task-level results, generated 22 August 2026. github.com/frontier-harness-eval/eval
  • Databricks. Benchmarking coding agents on a multi-million line codebase, 8 July 2026. Six matched model and effort settings.
  • Augment Code. Rebuilding the Auggie CLI harness, August 2026. 731 SWE-bench Pro instances on Opus 4.7.
  • Dhakal, Neupane & Chaudhary. Baselines Before Architecture, arXiv:2607.13085. 104 XBOW penetration-testing challenges.
  • Composio. Best AI agent harnesses, 4 August 2026. 25 SaaS workflows on shared Kimi K3.
  • Sentry / Warden. Known-vulnerability recall across 86 vulnerabilities.
  • Kim et al.. Capable language models can outgrow the benefits of collaboration. Nature Machine Intelligence, 24 July 2026. nature.com/articles/s42256-026-01268-y
  • CooperBench. Why coding agents cannot be your teammates yet, arXiv:2601.13295. 652 paired-feature tasks across 12 repositories.
  • SwarmBench. Can large language models act as agent swarm orchestrators? arXiv:2608.30661. Cost-matched single-agent comparison.
  • Anthropic. How we built our multi-agent research system, 13 June 2025. anthropic.com/engineering/multi-agent-research-system
  • Walden Yan / Cognition. Multi-agents: what's actually working, 22 April 2026. cognition.com/blog/multi-agents-working
  • Mario Zechner. What I learned building an opinionated and minimal coding agent, 30 November 2025. mariozechner.at/posts/2025-11-30-pi-coding-agent
  • Oh My Pi is a Bun-based fork of Pi, by can1357 and contributors. Not a study: the npm package @oh-my-pi/pi-coding-agent 18.2.2, installed and measured here for the first-call figure in section 05. HarnessTax does not publish a figure for it. omp.sh
  • OpenCode is an agent harness by SST. Not a study: opencode-ai 1.18.31, installed and measured here for the first-call figure in section 05. HarnessTax does not publish a figure for it. opencode.ai
  • DeepSeek Harness is an agent harness from DeepSeek. Not a study: @deepseek-ai/dsh 0.1.5-rc.2, installed and measured here for the first-call figure in section 05. HarnessTax does not publish a figure for it. npmjs.com/package/@deepseek-ai/dsh
  • Zhang et al.. Stop comparing LLM agents without disclosing the harness, arXiv:2605.23950. Three-model, three-configuration factorial design.