
Notes from the Ethereum Basis’s Protocol Safety crew on working coordinated AI brokers in opposition to actual protocol code, together with how we arrange the work, what holds up underneath scrutiny, and what shopper groups and safety researchers can take from it. This put up stands by itself; later posts will go deeper on particular person shoppers.
What we have been working, and what stunned us
On the Ethereum Basis’s Protocol Safety crew, we have been working coordinated AI brokers in opposition to the sorts of programs the community is determined by, like programs software program, cryptographic code, and contracts that must be proper. The brokers discovered actual bugs. One is now public: a remotely-triggerable panic in libp2p’s gossipsub, a core a part of the peer-to-peer layer Ethereum consensus shoppers run on, mounted and disclosed as CVE-2026-34219 with credit score to the crew.
Brokers discovering bugs wasn’t the shock. The shock was how little of the work went into discovering them, and the way a lot went into telling the true bugs from those that simply appeared actual.
This put up is for shopper groups and safety researchers who wish to do the identical factor. It covers how we arrange the brokers, the bar a candidate has to clear earlier than it counts as a discovering, and the habits that maintain the outcomes reliable.
Groups elsewhere are converging on the identical recipe. Anthropic’s Frontier Crimson Workforce constructed an agent that writes property-based exams and located actual bugs throughout the Python ecosystem. Cloudflare ran a frontier mannequin by way of a security-research harness in opposition to their very own programs. Everybody lands on the identical loop: level a succesful mannequin at a codebase, let it search, and triage what comes again. So the true query is how to do that with out drowning in confident-sounding noise.
One caveat up entrance: tooling for agent-driven audits strikes quick, and any particular setup is old-fashioned in just a few weeks. So this put up is intentionally in regards to the strategies, that are persistent, reasonably than the tooling. Disclosure is its personal matter and can most likely be its personal put up.
An agent pointed at a codebase is a search software, rather a lot like a fuzzer. The distinction is what comes again. A fuzzer palms you a crash and a stack hint. An agent palms you much more, together with a write-up (name chain, affect declare, steered severity) and the artifacts to again it, like a proof-of-concept you possibly can run in opposition to the true code.
All of that makes the outcome simple to learn and straightforward to belief, the working proof-of-concept most of all. So do not rely what number of candidates an agent produces. Rely what number of turn into actual.
How the work is organized
We run many brokers in parallel in opposition to one goal. They coordinate by way of the repository itself, with shared state in model management and no central course of handing out work. An agent writes down a declare the place the others can see it, does the work, and commits.
We obtained this method from Anthropic’s writeup on constructing a C compiler with a fleet of brokers, which coordinates the identical means. There is no central coordinator to construct or preserve, and fewer that may go flawed.
The roles are generated by the work that is found:
- Recon turns an assault floor into concrete, testable hypotheses. Not “audit the decoder” however “this discipline is trusted previous this level; this is the property it ought to maintain, the way in which it’d break, and the proof that may settle it.”
- Looking takes one speculation, traces the code path, and tries to construct a reproducer.
- Hole-filling appears to be like at what was accepted and what was rejected, writes the subsequent batch of hypotheses, and tracks protection so the brokers do not maintain going over the identical floor.
- Validation re-checks every candidate independently, removes duplicates, and decides.
We did not invent this pipeline. Cloudflare describes the identical phases, recon, parallel searching, impartial validation, deduplication, reporting, and their writeup helped form ours.
Here is what a candidate appears to be like like earlier than it counts as a discovering:
goal: element and entry level an attacker can truly attain invariant: the property that should maintain mechanism: the precise means it could be made to break success: observable proof: a panic, a stall, an accepted-invalid enter reproducer: a self-contained artifact that runs in opposition to the true code dedup: a key, so two brokers do not chase the identical factor
The schema is there for a motive. It forces a selected, testable declare and a transparent definition of performed. An agent that has to jot down down an observable proof cannot fall again on “this appears to be like dangerous.”
Reproducible or it did not occur
One rule issues greater than another. A candidate is not a discovering till there is a self-contained artifact that reproduces the failure in opposition to the true code, and that runs for somebody who did not write it.
The reproducer would not learn the write-up, and it would not care how assured the mannequin sounded. It both runs or it would not.
Most of its worth is within the false positives it catches. Three of them come up again and again, and every one is the agent getting a cross for the flawed motive:
- A panic that solely occurs in a debug construct. Compile and run it the way in which the software program truly ships, and the worth simply wraps round. Nothing crashes. It appears to be like like a crash, nevertheless it is not one.
- A reproducer that builds some inner worth by hand, one no actual enter might ever produce, as a result of each path an attacker controls rejects it earlier. The bug solely “reproduces” in opposition to a operate that nothing reachable calls that means.
- In formal-verification work, a proof that goes by way of however does not imply what you needed. The assertion is trivially true no matter what the code does, or it is weaker than the property you meant to seize. The verifier is happy, however the theorem would not constrain the conduct you truly cared about.
None of that is new. It is the identical factor as a take a look at that passes as a result of it would not truly verify something. What’s new is the amount. An agent writes the ineffective model as quick as the true one, and simply as confidently. So the verify needs to be computerized. You possibly can’t rely on the agent to catch itself.
Sign-to-noise is a lot of the work
Most candidates are flawed, duplicate, or out of scope. That is not an issue with the strategy; that is the way it works. The objective is to reject the flawed ones quick and again the true ones with proof that is onerous to argue with.
Each candidate that survives will get two impartial checks. Can an actual attacker truly attain it in a traditional configuration? And what does it value the attacker to tug off, in comparison with what it prices the community if it really works? A bug that any single peer can set off could be very completely different from one which wants particular entry or an enormous quantity of assets.
All the things will get checked in opposition to a working checklist of what is already identified, mounted, or rejected. With out that, the brokers maintain rediscovering the identical closed difficulty and reporting it many times.
Acceptance charges range rather a lot from goal to focus on, and that variation is helpful by itself. Run this in opposition to mature, closely audited code and nearly nothing survives, which remains to be price figuring out. “We appeared onerous and located nothing” is an actual outcome. Run it in opposition to less-explored code, or in opposition to formally verified code, the place a machine-checked proof covers a mannequin and the deployed bytecode is just assumed to match it, and extra will get by way of.
We’re not the one ones who discovered that the triage is the onerous half. Cloudflare’s principal takeaway was {that a} slender scope beats broad scanning. Anthropic’s property-based-testing agent generated one thing like a thousand candidate studies, then used rating and skilled assessment to get right down to a high tier that held up about 86 p.c of the time. The era was the simple half. I am not going to publish our personal numbers right here; tied to a selected goal, they’d say extra in regards to the goal than in regards to the technique.
What the brokers are good at, and the place they mislead
There’s hype in each instructions, so this is a plain checklist of what the brokers do properly and the place they mislead.
| Good at | Deceptive at |
|---|---|
| Studying the spec and the code collectively | Name chains that look reachable however aren’t |
| Stating and checking an actual invariant | Gaming the success verify (a cross for the flawed motive). |
| Drafting a reproducer from a one-line thought | Inflating severity to match how dramatic the write-up sounds |
| Suggesting a root trigger earlier than you have appeared | Bugs that span a sequence of legitimate steps |
The cut up is not even regular from one process to the subsequent. Stanislav Fort, testing a spread of fashions on actual vulnerabilities, calls this a jagged frontier, or a mannequin that recovers a full exploit chain on one codebase can fail primary data-flow tracing on one other. You possibly can’t assume one good outcome means the subsequent will maintain up, which is another excuse each candidate will get checked by itself.
The final row is the necessary one. A single agent session is nice at one-shot reasoning and dangerous at bugs that span a sequence of steps, the place every step is legitimate and solely the order is flawed. For these, the agent is not the search software. Its job is to recommend which sequences are price working by way of a stateful take a look at harness. Used that means, it really works properly. Used as a substitute for the harness, it misses the costliest bugs there are, those that solely present up throughout a sequence.
Protecting it trustworthy
A couple of habits do a lot of the work of constructing agent findings reliable, and none of them are sophisticated.
- Provenance on each artifact: what produced it, with what context, in opposition to which revision. A discovering must be one thing you possibly can re-run months later.
- Determinism the place it counts: one surroundings, one solution to construct and run, so “reproduces” means the identical factor on each machine, not simply the one the place it was discovered.
- Norms, not scripts: inform brokers what issues, the invariants and the bar for an actual discovering, as an alternative of a numbered process. Over-scripted brokers break the identical means over-specified exams do, they maintain following the steps after the steps cease making sense. A research of repository context recordsdata discovered the identical factor: the additional necessities lowered process success and raised value by over 20%, and the authors suggest retaining context to the minimal necessities.
- An individual makes the ultimate name: brokers recommend. They do not resolve what’s actual, what’s a replica of a identified difficulty, or what will get disclosed and when.
The bottleneck moved
AI did not substitute the safety researcher. It moved the work. The time that used to enter arising with and chasing down hypotheses now goes into judging them at scale, together with constructing the oracle, working the triage, retaining the checklist of identified points, and dealing with disclosure.
The bottleneck did not go away. It moved from discovering bugs to trusting the outcomes, which is a greater place for it, as a result of that is the place human judgment truly issues. But it surely’s nonetheless a bottleneck, and ignoring that’s how you find yourself transport a flawed “it is advantageous.”
The practices that make this work aren’t new. Reproducible failures, actual oracles, and cautious triage are the identical practices that turned fuzzing from a analysis matter into normal follow during the last fifteen years. The instruments are new. The practices aren’t.
How briskly the instruments maintain altering is an open query. Nicholas Carlini, cautious and as soon as a skeptic himself, argues the exponential case is price taking severely, even whereas he retains huge error bars on it. If the era aspect climbs that quick, the judgment aspect has to climb with it, or the hole between what will get produced and what truly will get verified solely widens.
For the programs Ethereum is determined by, that is the half that issues. Brokers allow us to cowl way more floor than we might by hand. In alternate, they ask for extra cautious judgment, throughout a a lot greater pile of confident-sounding claims. That is a commerce price making, so long as you keep in mind that the judgment is the true product.

