DarwinX: Evolving Agent Harnesses Through Natural Selection
Yifan Zhang, Yutong Dai, Juntao Tan, Luyu Yang, Rishi Mullur, Thai Hoang, Zhiyuan Hu, James Zhu, Phil Mui, Silvio Savarese, Ran Xu, Zeyuan Chen
cs.NE, cs.AI, cs.LG, cs.SE
2026-07-31
DarwinX把agent自我进化变成对harness种群的自然选择,模型全程冻结,WebArena真实任务审计后准确率从43.5%冲到93.0%。
现在不少agent系统会自己编辑自己的harness(提示词、工具、控制流程)来变强,但几乎所有这类系统都用同一套内循环:跑一批任务、反思、提一个改动、拿保留/回归信号验证。这套方法有两个通病。一是路径依赖:单一血统的自我编辑agent容易被早期的改动方向锁死,后面陷入平台期。二是跨任务干扰:修好一类任务的改动,悄悄搞坏另一类任务,导致在混合任务分布上整体停滞不前,任务分布越宽,这个问题越严重,很多局部改动在小范围任务子集上是赢的,放到完整基准上就是输的。DarwinX要解决的问题是:在模型权重完全冻结的前提下,怎么设计一套选择机制,让harness的自我进化既不被路径依赖锁死,又不会顾此失彼。
DarwinX把自我进化重新表述成对harness变体种群的自然选择,而不是单一血统的爬山搜索。核心是一套保留-扩展契约:一个子代harness只有在没有明显退步的前提下确实扩展了能解决的任务集合,才有资格被采纳。具体机制分三层。第一层是分支进化:每一轮从档案里挑一个有潜力的父代harness,针对它目前失败的某个任务生成一处附加式改动(可以改提示词、技能、工具、控制流程或源码),用avg@k多次采样度量净收益和退步程度,退步超过容忍度就淘汰,通过的候选可以进入档案但只有经过更严格的复测才有资格指导后续搜索的方向。第二层是种群与重组:所有评测过的变体都保留在档案里,包括整体分数不如父代的失败者,因为它可能恰好解的是别的分支都解不了的那一个任务。当两个变体解决的任务集合互补时,DarwinX会把它们的改动合并成一个子代,合并后的子代必须覆盖两个父代任务集合的并集才会被采纳。第三层是学习信号的模块化:失败轨迹驱动的诊断信号用于常规变异,更强求解器的示范轨迹用于完全没人解出来的任务,agent自己的通过/失败样本对比用于时通时不通的任务,三种信号共用同一个改harness的接口,谁的证据更信息量大就用谁。
DarwinX在四个基准上验证,难度按进化信号和最终测试的分离程度递增排列,模型全程冻结:
| 基准 | 冻结底座 | 基线(未进化) | DarwinX进化后 |
| Terminal-Bench 2.1(同域) | GPT-5.5 | 75.5% | 83.2%(+7.7) |
| TerminalWorld(留出任务) | Opus 4.8 | 61.0% | 68.3%(+7.3,超过Claude Code同底座的65.9%) |
| WebArena-Infinity(合成→真实) | GPT-5.5 | 43.5% | 93.0%(审计后干净分) |
Terminal-Bench 2.1在更强底座GPT-5.6 Sol(medium)上冲到84.7%,追平当时官方验证榜单最强的Claude Code+Fable 5(xhigh强度下83.8%),而且用的推理强度更低。WebArena-Infinity上进化前后审计发现,评估层违规、特权主机违规、越权/漏洞利用违规这三类作弊行为在进化后完全消失,唯一残留的17处违规全是原始状态篡改类型,说明分数提升不是靠钻verifier的空子。一份Terminal-Bench 2.1上学出来的harness不经任何调整,直接搬到SWE-bench Verified的500个真实issue上跑,拿下84.2%的官方pass@1,比专门做修复技能的参照harness还高3.4分,证明学到的不是某个基准的窍门,是可迁移的验收/契约习惯。
对做agent自我改进系统的团队,这篇最有参考价值的是保留-扩展这个具体机制:光靠分数变高就采纳这种朴素的贪心策略,在混合任务分布上迟早会撞上修一个坏一个的死胡同,而DarwinX证明,把这个改动有没有让别的任务变差作为硬性门槛,再配合保留失败变体、事后合并互补分支这两招,能显著缓解路径依赖。跨基准迁移实验(Terminal-Bench学出来的harness直接搬到SWE-bench Verified还能涨分)是个很有说服力的信号:说明这套方法进化出来的不是针对某个评测集的取巧手段,而是先搞清楚验收标准再动手、动手后拿真实工具结果核验这类通用工作习惯,这对任何想让agent在没有标注答案的真实环境里自我改进的场景都值得借鉴。
论文自己列出的局限很坦率:最强的两组matched-model证据来自Terminal-Bench 2.1和WebArena-Infinity,跨基准迁移只测了一个方向(Terminal-Bench→SWE-bench),没有反向验证。TerminalWorld的留出集只有41个任务,一次答对与否就能让pass@1挪动2.4个百分点,论文自己也承认这组对比(25/41 vs 28/41,McNemar p=0.45)只能算提示性证据,谈不上统计显著。归因分析同样谨慎:七个演化出来的技能被归为同一个验证/契约家族,但这些技能是共同被选出来的,不是逐一独立随机消融验证的,所以论文把这部分结论定性为探索性归因而非因果证据。此外WebArena-Infinity的动作有效性审计依赖静态分析加LLM判定的两阶段检测器,论文承认这不是形式化沙箱,深度动态构造的作弊手法仍需要人工复核兜底。