← 总导航 / Harness Engineering / 2026-04-30 #1
2026 年 4 月 30 日 · Harness Engineering · Multi-Agent DSL · 漏洞挖掘

AgentFlow:一个用类型化图 DSL 合成多 Agent Harness,挖出 10 个 Chrome 0-day 的系统

Synthesizing Multi-Agent Harnesses for Vulnerability Discovery
综合 94 分 相关度 10.0 来源质量 9.0 近期影响力 9.8 新颖性 9.5 开源复现 8.5
今日 Harness 方向候选评分对比(共 5 篇)
标题(简)方向细分来源综合分
AgentFlow: Synthesizing Multi-Agent Harnesses for Vulnerability Discovery今日选定 Multi-Agent Harness DSL arXiv 2026-04-22 94
The Last Harness You'll Ever Build Meta-Evolution Harness arXiv 2026-04-22 (v2 04-28) 90
HARBOR: Automated Harness Optimization BO-based Harness Tuning arXiv 2026-04-22 85
Harness as an Asset: CAAF Enterprise Harness arXiv 2026-04-25 (v2) 83
Architectural Design Decisions in AI Agent Harnesses Empirical Survey arXiv 2026-04-20 82
论文基本信息
Hanzhi Liu, Chaofan Shou, Xiaonan Liu, Hongbo Wen, Yanju Chen, Ryan Jingyang Fang, Yu Feng
cs.CR / cs.AI — 安全漏洞挖掘 × Harness 合成
arXiv 预印本,v1
2026 年 4 月 22 日
CVE-2026-5280(Critical)/ CVE-2026-6297(Critical)
一句话核心贡献
用一套类型化图 DSL + 运行时反馈驱动的外循环,自动合成多 Agent Harness,在 Chrome 中挖出 10 个 0-day 并登顶 TerminalBench-2(84.3%)。
摘要(中文翻译)

LLM Agent 已经展现出能挖掘出人类审计员和自动 Fuzzer 多年未发现的真实漏洞。但实际部署时,需要通过一个叫做 harness 的程序来协调多个 Agent,这个 harness 定义了每个 Agent 的角色、信息流、可用工具、以及失败重试协议。

一个已被多次观察到的痛点是:仅仅改动 harness,就能让 Agent 在公开 benchmark 上的成功率相差数倍。然而今天绝大多数 harness 都是手写的。现有的"harness 优化器"只能在非常窄的设计空间里搜索,并且只能用粗粒度的 pass/fail 反馈——这几乎无法诊断"究竟是 harness 哪部分出问题了"。

本文提出 AgentFlow:一个用 类型化图 DSL 联合描述 Agent 角色、Prompt、工具、通信拓扑、协调协议的 harness 表达语言;并配一个 反馈驱动的外循环,能读取目标程序的运行时信号来诊断失败、并据此改写 harness。AgentFlow 在 TerminalBench-2 上取得公开榜 84.3%(评估快照时的最高分),并在 Google Chrome 中挖出 10 个此前未知的 0-day 漏洞,其中 2 个为 Critical 级别沙箱逃逸(CVE-2026-5280 / CVE-2026-6297)。

核心内容解读

解决了什么问题:Harness 是 Agent 系统的"总装图",但工业界和学术界的 harness 都是人工搭的。这样做有两个硬伤——(1)设计空间巨大(角色、Prompt、工具、topology、协议……彼此耦合),人无法穷举;(2)运行失败时只能看 pass/fail 这一个 bit,完全不知道是哪条边、哪个 Agent、哪个 Prompt 段出错了。AgentFlow 把"手工 harness + 盲目搜索"这一代做法直接升级到"形式化 DSL + 反馈驱动合成"。

核心方法——两件事抬升了 harness 合成的上限:

组件做法相对前人的关键区别
类型化图 DSL用类型化节点描述 Agent/Tool,用类型化边描述消息通道、重试协议;整个 harness 是可序列化的图替代了"一堆 Python class + 硬编码 if-else"的 ad-hoc 做法,使搜索空间有了代数结构
反馈驱动外循环从目标程序(被攻击的 Chrome / 被执行的 Terminal 任务)收集运行时信号(crash 位置、tool 调用失败栈、Prompt 截断等),定位到图上最可能出错的节点/边,再做局部改写不再是黑盒 pass/fail;诊断信号和编辑点之间是可解释映射
可迁移优化器目标类无关:只要任务能写成"一个 bounded 的 harness 搜索空间 + 可复现任务套件"同一个优化器既跑 coding agent(TerminalBench-2)也跑安全 Agent(Chrome 漏洞挖掘)

与现有工作的关键区别:同期的 HARBOR(贝叶斯优化)把 harness 调优形式化为"混变量 + 多保真度",Last Harness You'll Ever Build 则把它抽象为两层 meta-learning;AgentFlow 的差异点在于——它把 harness 本身放进了一个可类型检查、可局部改写的图结构里,因此诊断信号可以准确定位到某个节点/边、而不是只回归到一个超参上。

为什么这篇值得读:Agent 安全社区长期有一个不舒服的事实——"同一个模型、同一个任务,换 harness 就能刷榜";AgentFlow 直接把这件事做成了方法:让 harness 的合成进入被形式化、可优化、可归档的阶段。而它的"副产物"是两个真实的 Chrome Critical CVE——这对 Harness Engineering 研究而言是非常硬的外部信号。

本文引用的关键文献(附链接)
Yang et al. (2024) — SWE-agent: Agent-Computer Interfaces Enable Automated Software Engineering
https://arxiv.org/abs/2405.15793
Jimenez et al. (2024) — SWE-bench: Can Language Models Resolve Real-World GitHub Issues?
https://arxiv.org/abs/2310.06770
Laboratories for AI (2024) — TerminalBench 2: A Benchmark for Agents Using a Terminal
https://www.tbench.ai/
Shinn et al. (2023) — Reflexion: Language Agents with Verbal Reinforcement Learning
https://arxiv.org/abs/2303.11366
Google Project Zero (2020) — A Year in Review of 0-days Exploited In-the-Wild (背景参考)
https://googleprojectzero.blogspot.com/
Klieber et al. (2024) — OSS-Fuzz-Gen: Automated Fuzzing Harness Generation with LLMs
https://github.com/google/oss-fuzz-gen
Hu Wei (2026) — Architectural Design Decisions in AI Agent Harnesses (同月实证综述,可对照)
https://arxiv.org/abs/2604.18071
核心数据亮点
对你三个研究方向的启发
Harness Engineering

这篇是 2026-04 月 Harness 方向最硬的一篇——它给出了一个完整闭环:类型化图 DSL → 运行时诊断信号 → 局部改写。你做 Harness 研究时,可以直接继承它的 DSL 视角:把 harness 当"可类型检查、可局部改写的图",而不是"一个大 Python 脚本"。AHE(2604.25850)处理的是编辑候选怎么生成,HARBOR(2604.20938)处理的是超参空间怎么搜,AgentFlow 处理的是图结构自身的可合成性——三者互补且可叠加。

Agent Skills Safety

论文展示的另一面,是 harness 合成系统的攻击性:同样的能力可被用于"合成一个能挖出 Chrome 0-day 的攻击 Agent"。这意味着 Agent Skills Safety 必须考虑"Agent 生态本身被用于漏洞发现"的对偶风险——谁能写出最好的攻击 harness,谁就能在每一轮 patch 前领先一步。未来的 agent safety policy 应包含对"harness 合成能力"的分级监管。

Safety Benchmark

论文把"harness 决定成功率"从口头认知变成了可量化的观察。对 Safety Benchmark 研究而言,这直接反驳了"同一 benchmark 的分数是模型能力直读"的常见假设——榜单 entry 背后其实是(模型 × harness)联合样本。安全 benchmark 必须要求 harness 的完整可复现声明(DSL 序列化 + runtime 配置),否则分数不可比。这件事和你上周读过的 Judge Sensitivity(2604.24074)是同一哲学:benchmark 必须公开其"暗参数"。

相关延伸阅读
资源链接