What if the harness could teach the model?
Harness-Zero turns an evolved agent harness into training-time guidance, then distils the behaviours it induces into model weights. At deployment, the specialised scaffolding can be removed.
Harness-Zero turns an evolved agent harness into training-time guidance, then distils the behaviours it induces into model weights. At deployment, the specialised scaffolding can be removed.
An optimised harness may know how an agent should inspect state, use tools, verify outputs, or avoid risky moves. Harness-Zero uses a reviewer agent to translate that guidance into corrections the student can execute under its ordinary, minimal harness.
Macro-average task success after fine-tuning Qwen3.5-9B. The distilled student runs with the fixed target harness alone, without the evolved harness, private reference harness, or reviewer.
Specialised harness gains survive a fixed deployment interface.
Procedures can be internalised once, instead of re-routed through many harnesses.
Harness engineering becomes a source of training signal, not only runtime code.
The research question: can we use a specialised harness at training time, then make its useful behaviours available under a single fixed target harness?
First, understand the vocabulary and the response-boundary loop that makes cross-harness supervision possible.
The trick is to separate the student’s visible operating loop from the harnessing agent’s private review context.
Key constraint
Every accepted correction must be a complete response valid in the student’s native action space.
hTarget harness. Fixed, minimal runtime interface used at deployment.
h*Evolved harness. Domain-specific scaffolding optimised on training tasks.
KReference harness. Private adaptation of h* for review, relative to h.
πHHarnessing agent. Reviews proposals and passes or replaces them.
The student produces yₜ under the fixed target harness h.
πH reads the current state, proposal, and reference harness K.
Sound proposals pass; weak ones get the smallest coherent correction.
The accepted response runs through h; its observation returns to the student.
The rejected proposal and private review are not added to the student-visible trajectory. Reviewer-perspective reasoning is masked from the fine-tuning loss.
load_workbook()
inspect headers
edit target range
save outputThe reviewer leaves it intact. The student gets credit for the full behaviour.
Uses K to spot missing procedure, then edits only what is needed.
finish script
return answerThe reviewer inserts a student-native check, such as reloading the saved workbook and comparing pre-filled cells.
Why this matters for distillation: the correction is grounded in what the student can observe and execute, so the resulting trajectory is legal under h.
The experiments compare runtime harnessing, post-training distillation, alternative supervision signals, and fine-grained behavioural recovery.
Real-world spreadsheet manipulation. 300 tasks for evolution and collection, 100 held out.
Interactive tool use across simulated applications. 147 tasks for training, 168 held out.
Single-step precursor prediction. 500 balanced training tasks, 100 disjoint test tasks.
Student: Qwen3.5-9B · LoRA SFT · two epochs
Harnessing agent: GPT-5.6 Sol
Harness evolution: Kimi K3 under Kimi Code
Target harness h
A fixed mini-SWE-agent-style harness with a system prompt and one Bash execution tool.
With the evolved guidance adapted into K, the reviewer averages 81.1% across six benchmark–model settings, compared with 78.1% for the evolved harness mounted as code.
Relative improvement over the fixed target harness in the paper’s six-setting average.
An empty K averages 69.2%, so the review loop alone explains little of the gain. The adapted guidance is doing the work.
| Setting | SpreadsheetBench | AppWorld | USPTO | Average |
|---|---|---|---|---|
| Base model under h | 31.0 | 26.8 | 12.0 | 23.3 |
| Base model under h* | 39.0 | 48.2 | 38.0 | 41.7 |
| Generic DeepAgents | 35.0 | 19.6 | 7.0 | 20.5 |
| Harness-Zero under h | 44.0 | 58.9 | 30.0 | 44.3 |
Absolute macro-average improvement from 23.3% to 44.3%. The distilled model runs under h alone at deployment.
Procedures for state inspection, targeted edits, and verification transfer well.
USPTO’s reaction priors, candidate generation, and executable chemistry validation remain partly external.
The best training signal starts from the student’s own trajectory and repairs it in the student’s action space. Stronger demonstrations alone do not transfer reliably.
Trajectories collected under h* teach the student to call tools it will not have at deployment. Harness-Zero avoids this mismatch by expressing every correction through h.
The authors mined 28 behaviours that appeared under h* but not under h, then measured whether the distilled model recovered them under h alone.
Average recovery across the 28 selected patterns.
Examples: inspect before editing, protect pre-filled cells, reload saved workbooks, avoid fragile coordinates.
Examples: parse with RDKit first, enumerate candidates, validate and canonicalise SMILES.
Examples: retrieve complete pages, read back mutations, avoid repeated failed calls, choose action vs answer.
The base model scores 0% by construction on these selected patterns, because each pattern was chosen to be absent under h.
The method depends on a capable harnessing model. With weaker reviewers, intervention can become harmful.
Reviewing every proposal adds a model call at collection time. The paper reports 2.4× mean USPTO latency.
Some harness mechanisms, especially context management, are not directly expressible as student responses.
The strategic implication: harness development can become a scalable source of training data. Better models build better scaffolds; the scaffolds return reusable behaviour to the weights.
The paper’s method is a training pipeline. Treat it as a disciplined data-generation loop, not as another runtime agent wrapper.
Freeze the deployment interface: tools, context contract, turn limits, and observables.
Use training failures to improve domain-specific tools, middleware, skills, and memory.
Convert runtime interventions into review criteria and student-native action recipes.
At each response boundary, send the proposal and new visible events to πH.
Keep unchanged proposals and minimal corrections; hide private reviewer reasoning.
SFT accepted responses under h, then evaluate the student under h without h* or πH.
Student-facing tool becomes a specification for an action recipe the reviewer can construct using h.
Execution rule becomes review middleware: a private alert that fires when a proposal violates the intent.
Instruction becomes a diagnostic criterion: what evidence should appear before the reviewer passes?
Prior experience becomes failure patterns and intervention guidance, not hidden state injected into the student.
State the review policy explicitly: when to intervene, how much to change, and what the student can observe.
If evidence is missing, propose an h-valid check. Never consult hidden solutions or verifier feedback.
for event in student_rollout: proposal = student.propose(visible_state) decision, replacement = reviewer.review( visible_state, proposal, K, private_history ) accepted = proposal if decision == "PASS" else replacement observation = target_harness.execute(accepted) reviewed.append(accepted, observation) visible_state = visible_state + accepted + observation # SFT on accepted responses only; # mask reviewer-perspective reasoning.
(distilled student, h)
No h* · no K · no πH.
Keep a disjoint test set. If possible, add a held-out harness or model to test portability.
Base under h, base under h*, distilled under h, generic harnesses, and direct teacher distillation.
Detect procedures that appear under h* but not h, then score recovery under h after distillation.
Count unavailable-tool calls, leaked reviewer reasoning, hidden-state access, and turn-limit failures.
Harness-Zero’s ablation shows that high collection success can produce poor distillation. Oracle-answer review reached 98.6% collection success but only 15% test pass@1, while K-guided review reached 59.4% collection success and 30% test pass@1.
Measure whether the student learns reusable procedure, not whether the temporary teacher can finish the training tasks.
Distil reliable inspect → act → verify routines into a smaller deployment model for support, operations, or internal workflows.
Turn domain harness checks into model behaviour while keeping the execution surface minimal and auditable.
Transfer disciplined state management, mutation read-back, and completion criteria without carrying a large generic tool suite.
A sensible first pilot: choose one workflow with clear state transitions, a small action space, and measurable procedural failures. Spreadsheet-like data mutation is a better starting point than open-ended research reasoning.
Harnesses can be more than runtime scaffolds. They can become training infrastructure for the behaviours we want models to carry.
The strongest lesson is not “add a reviewer”. It is: translate specialised guidance into the student’s legal action space, preserve the student’s state, and evaluate what survives when the scaffolding is gone.
Deck prepared from the attached paper. Metrics and claims are attributed to the paper; recommendations labelled as synthesis are design judgements.
Jump to any section. Press Escape to close.