Recursive Autonomous Science
RAS lets an agent improve its own harness from new experiments, giving small models frontier performance on challenging scientific tasks at 1/30 the cost.
Written by Yibo Wen on
Runs resolved by domain
- Base
- Flat
- RAS
GPT-5.6 Luna · Codex
Sonnet 5.5 · Claude Code
Resolution rate vs. cost per run
Leaderboard and RAS · per run
- Leaderboard frontier
- RAS frontier
A scientific agent is a frozen model wrapped in a harness, the prompts, memory, skills, and scripts that shape how it plans experiments and turns results into a predictive model. RAS keeps the model fixed and lets the agent rewrite its own harness, guided by how its campaigns on Autonomous Science Bench are scored. A campaign passes only if the experiments the agent chose clear a discovery gate and the model it delivered clears a learning gate. The animation below follows one step of that loop.
One step of a RAS recursion on one campaign. The verifier scores every run of the best harness so far on discovery and learning, and the gate with the smaller share of its threshold is the bottleneck. The editors propose branches: a planning branch is screened on two runs, and a modeling branch is replayed on runs already made, at no run cost. The most promising branch is confirmed on two fresh runs, and kept only if its gain in mean score exceeds one standard error and it loses no gate the best harness passes. The kept branch becomes the best harness, and the next step starts from its verdicts.
Start the next step. The kept branch becomes . Learning now clears its threshold, so the next bottleneck is discovery.
Overview
Many of the ways small models fail these campaigns are procedural, in how they spend their budget of experiments and how they turn measurements into a model. Those procedures live in the harness, so a better harness can close the gap to frontier models without a stronger model. RAS finds that harness in three ways.
- Guided by the science
The weaker gate, discovery or learning, decides what each step edits.
- Efficient with evidence
Replay and simulation screen edits without new runs; fresh runs confirm a gain.
- Frontier at 1/30 the cost
With RAS, Luna and Sonnet match or beat Opus 5.5 and GPT-6 Astra.
Method
Each recursion begins by running the base harness H₀ three times. A step then reads the verdict of every run and finds the bottleneck, the gate that falls furthest short of its threshold. The editor for that stage proposes changes to the harness, and RAS screens each one before spending new runs. A modeling change is replayed on runs that already exist; a planning change is simulated or run twice.
The most promising change is confirmed on two fresh runs. It is kept only if its gain in mean score exceeds one standard error, the run-to-run noise, and it loses no gate the current harness passes; otherwise the step rolls back. After the last step, the selected harness is evaluated on six fresh runs.
Discovery gate
Planning editor- Edits
- The instructions, and the scripts, skills, and subagents that plan the campaign.
- Screened by
- A model-guided planner simulated through the campaign’s lab, or two runs.
Learning gate
Modeling editor- Edits
- modeling.md and the modeling procedure in scripts/model/.
- Screened by
- Replay on earlier runs, scored by the campaign’s own verifier, at no run cost.
The editors work only from verdicts, so they can improve how the agent works but cannot hand it the answers. Five safeguards hold that line.
Kept honest
- Verdicts, not answers: editors never see the verifier’s labels, unmeasured outcomes, or the lab’s reference files.
- A closed sandbox: editors reach only the model APIs.
- An answer guard: rejects a harness that names a design, sequence, composition, URL, or prebuilt predictor.
- A procedure audit: rejects a modeling procedure that still ranks the evidence after its targets are shuffled.
- Held-out evaluation: evaluation runs never help choose the harness.
The Harness
A harness is a small tree of files that RAS mounts on a frozen executor, Codex or Claude Code. Some files are read on every call, some only when the agent invokes them, and some run as scripts. One script, the modeling procedure, fits the delivered model after the run, which is why a modeling change can be scored by replaying old runs.
How a harness runs. Its files, scanned by the answer guard, sit in three groups: context the executor reads on every call, skills and subagents it loads when invoked, and scripts it runs from the shell, including the modeling procedure fit.py. They are mounted on a frozen executor, Codex or Claude Code, which orders one batch per round from the lab service and reads the measurements back, with every job in the ledger. After the run, fit.py produces the delivered model, final_model.js. The official verifier scores discovery on the ledger and learning on the model.
Score both gates. The verifier scores discovery on the ledger and learning on the model. A modeling edit changes only fit.py, so replay can score it.
Ten files, one harness
In H₀ every file is a placeholder, so the agent behaves like the stock model. The editors fill these files in over the recursion. Pick one to see it before and after an illustrative edit.
Campaign notes
Notes on this campaign’s rounds, batches, and budget.
campaign_notes.mdcampaign_notes.md# Campaign notes
- Hold back part of the budget until a first peak is measured.
- Search for a second peak before committing the last rounds.Results
On the six campaigns, RAS raises the share of evaluation runs resolved from 19% to 67% for GPT-5.6 Luna and from 19% to 86% for Sonnet 5.5. A non-recursive control with the same number of steps reaches 33% and 64%. Both RAS harnesses match or beat Opus 5.5 (67%) and GPT-6 Astra (72%) while costing $0.26 and $0.32 per run, against $9.61 and $10.57.
Over the recursion
The score S measures how close a campaign comes to passing, taking the weaker of its two gates, so 1 is a pass. Over the recursion, RAS raises the mean score by 0.20 for Luna and 0.36 for Sonnet, against 0.13 and 0.31 for the control, and only RAS lifts Luna’s mean past a pass.
Mean score by step
- Flat
- RAS
- Pass
GPT-5.6 Luna · Codex
Sonnet 5.5 · Claude Code
Per campaign
With RAS, Sonnet 5.5 resolves every evaluation run in four of the six campaigns. Propylene remains the hardest for both models, at one and two runs of six.
| Campaign | GPT-5.6 LunaCodex | Sonnet 5.5Claude Code | ||||
|---|---|---|---|---|---|---|
| Base | Flat | RAS | Base | Flat | RAS | |
| Nuclease | ||||||
| Biosensor | ||||||
| Propylene | ||||||
| Suzuki | ||||||
| OER | ||||||
| Coercivity | ||||||
| Total | 7/36 | 12/36 | 24/36 | 7/36 | 23/36 | 31/36 |
Citation
If you use RAS, please cite it and Autonomous Science Bench.
@misc{wen2026ras,
title={Recursive Autonomous Science through Self-Improving Agent Harnessing},
author={The Autonomous Science Bench Team},
year={2026}
}
@article{wen2026autonomous,
title={Autonomous Science Bench: Evaluating AI Agents for Autonomous Scientific Discovery},
author={Yibo Wen and Han Liu},
journal={arXiv preprint arXiv:2610.18449},
year={2026},
url={https://arxiv.org/abs/2610.18449}
}