AIDE2 rewrites its own research harness in 8 days, matching a two-year human agent

Recursive self-improvement of AI research agents

Dhruv Srikanth, Bingchen Zhao, Dixing Xu, Yuxiang Wu, Zhengyao Jiang

cs.AI, cs.LG, cs.SE

2026-09-22

AIDE2 rewrites its own search and context code. Eight days, seven accepted edits: private grade 0.703 to 0.778, matching a two-year human agent on four held-out tests.

What problem this solves

AI research agents already rewrite training scripts, kernels, and experiment code. What they do not rewrite is the harness: the code around the model that governs search, context, and verification. That layer is still the product of years of human R&D, and conventional research hits diminishing returns as each extra increment of human effort buys less.

Recursive self-improvement has a concrete meaning here. The object of optimization is the agent's own code, and each accepted rewrite becomes the agent that the next round edits. The claim worth testing is whether that loop raises research efficiency under a fixed evaluation budget, and whether the edits travel off the tasks used to select them.

Method

AIDE2, from Weco AI, is a bi-level search. An inner-loop agent edits a codebase against a measurable metric until a per-task dollar budget, covering tokens plus execution, is spent. An outer-loop agent edits that inner research process. The grade g(a) averages private held-out scores the inner agent never sees. Public feedback drives inner search; private feedback drives outer selection. The two signals are kept apart on purpose.

The inner starting point, AIDE0, is a stripped AIDE: tree search with draft, debug, and improve operators, greedy selection, no ML-specific machinery. The outer loop is driven by AIDEhuman, Weco's production research agent after two years of human R&D, which ranks among the strongest independent agents on FML-Bench. The outer model is Claude Opus 4.7; every inner evaluation uses Gemini 3 Flash.

The selection benchmark mixes three families, ML engineering, heuristic algorithm engineering, and harness engineering, so that pressure favors general mechanisms over task tricks.

Results

One 8-day, 100-node run accepted rewrites at steps 2, 6, 28, 39, 47, 63, and 85. The incumbent grade rose from 0.703 to 0.778, above AIDEhuman at 0.749. Two further full runs accepted two and four rewrites.

On four held-out benchmarks that never touched selection, the strongest discovered agent AIDE85 matches or beats AIDEhuman. AIDE47 is higher on MLE-Bench and WeatherBench 2, so the aggregate grade need not rank checkpoints the same way on every external suite.

AgentALE-BenchMLE-Bench percentileWeatherBench 2FML-Bench
AIDE01536±330.678±0.0060.262±0.20515.0±0.9%
AIDE471713±260.730±0.0050.798±0.00319.7±1.2%
AIDE851790±90.722±0.0110.793±0.00519.9±1.1%
AIDEhuman1511±350.708±0.0070.404±0.19319.6±1.0%

WeatherBench 2 is out of distribution. Evolved checkpoints converge on the same family of numerics changes almost every seed; AIDE0 and AIDEhuman reach a comparable solution on at most one seed.

Reward hacking on a KernelBench subset, isolated kernel speedup that does not survive inside GPT-2, ViT, or CNN training, falls from 55% for AIDE0 to 32% for AIDE85, under AIDEhuman at 39%. That behavior was never in the objective.

AIDE85 changes three pieces. A UCB1 bandit over five draft strategies, with a fork of the global best every five steps. Bounded prompts plus a failure memory that injects up to three error signatures only when the bug rate is at least 15%, cutting per-call prompt size about 50× on ALE-Bench and FML-Bench. Robustness guards, including a reminder that scoring is private, a retry on near-empty code, and a patch so one failed test case no longer kills the whole scorer.

An ignition test puts AIDE47 in the outer loop against AIDEhuman, three seeds, 50 steps. Endpoints 0.780 versus 0.782 do not separate the two. Noise compounds across both loops, and extra seeds are expensive, so the paper does not claim accelerating returns.

Why it matters

This is RSI as a measurable harness search: fixed budgets, split public/private signals, held-out transfer, and a drop in proxy-gaming the loop never asked for. For people who build agent scaffolds, the portable pieces are strategy-level exploration, gated failure memory, and bounded context. The bottleneck moves from expert engineering time toward compute.

Limitations

A single noisy private grade can lock in a false incumbent and steer the rest of the tree. The ignition test is underpowered. Discovered agents are hard to read: which modules matter and which are leftover from earlier steps is unclear, which raises production-friction around compatibility and infrastructure. Several AIDE0 runs hit context-window limits and were scored at the best candidate on termination. Harness gains transfer across models at a higher budget; on MLE-Bench with the strongest model the lift sits inside the error bar.

Terms

Source

Related papers

All paper explainers