DarwinX evolves the harness instead of the model, and WebArena goes 43.5 to 93
Salesforce AI Research just published DarwinX, and it takes the idea everyone has been circling and makes it a population. Model weights stay frozen. What evolves is the harness: the prompts, the tools, the skills, the control flow. Natural selection on the scaffolding.
The result that will get quoted is WebArena-Infinity going from 43.5 to 93.0 percent, audit-clean. Terminal-Bench 2.1 reaches 83.2 with a matched base model and 84.7 with a stronger one. TerminalWorld hits 68.3 on a held-out split. And the transfer claim is the one that matters: a harness evolved on Terminal-Bench moved unchanged to SWE-bench Verified and still worked. The authors are explicit that what evolves is general agent competence rather than benchmark-specific patches, and the held-out and transfer results are the evidence for that rather than a hope.
Two design choices carry the whole thing. First, they keep a population rather than a single self-improving lineage, with an archive that preserves alternative branches so good ideas from dead lines can be recombined later. Anyone who has run a self-improvement loop knows the failure mode: the system finds a local optimum in round three and spends the next forty rounds polishing it. A population with an archive is the standard cure, and it is strange that agent self-improvement work took this long to borrow it. Second, a preserve-and-extend contract stops new edits from regressing tasks that already pass, which is the other classic way these loops eat themselves.
Fitness comes from benchmark-specific verifiers, not gold solutions, and the edits are fed by failure evidence, teacher evidence and self-derived evidence through one unified editing interface. That combination is what makes it a search rather than a prompt-tuning script.
Put this next to yesterday's DeepSeek Harness, which made the harness an explicit plugin graph you can edit in config, and AI4AI, which showed a strong model authoring a harness that nearly doubled a weak model's score. Three independent groups in two days converged on the same claim: the model is a fixed asset and the harness is the variable you optimize. DarwinX is arXiv 2608.07545.
← Back to all articles
The result that will get quoted is WebArena-Infinity going from 43.5 to 93.0 percent, audit-clean. Terminal-Bench 2.1 reaches 83.2 with a matched base model and 84.7 with a stronger one. TerminalWorld hits 68.3 on a held-out split. And the transfer claim is the one that matters: a harness evolved on Terminal-Bench moved unchanged to SWE-bench Verified and still worked. The authors are explicit that what evolves is general agent competence rather than benchmark-specific patches, and the held-out and transfer results are the evidence for that rather than a hope.
Two design choices carry the whole thing. First, they keep a population rather than a single self-improving lineage, with an archive that preserves alternative branches so good ideas from dead lines can be recombined later. Anyone who has run a self-improvement loop knows the failure mode: the system finds a local optimum in round three and spends the next forty rounds polishing it. A population with an archive is the standard cure, and it is strange that agent self-improvement work took this long to borrow it. Second, a preserve-and-extend contract stops new edits from regressing tasks that already pass, which is the other classic way these loops eat themselves.
Fitness comes from benchmark-specific verifiers, not gold solutions, and the edits are fed by failure evidence, teacher evidence and self-derived evidence through one unified editing interface. That combination is what makes it a search rather than a prompt-tuning script.
Put this next to yesterday's DeepSeek Harness, which made the harness an explicit plugin graph you can edit in config, and AI4AI, which showed a strong model authoring a harness that nearly doubled a weak model's score. Three independent groups in two days converged on the same claim: the model is a fixed asset and the harness is the variable you optimize. DarwinX is arXiv 2608.07545.
Comments