Based on 40,000 game runs, the ScaleX team argues that humans approve roughly one in three malicious agent commands, with accuracy degrading sharply after ~50 prompts. They frame this as classic alert fatigue applied to a new surface area, undermining the core safety assumption of every current agent product.
The editorial argues that Claude Code, Cursor, Devin, Copilot Workspace, and similar products all ship on the premise that a human will meaningfully review risky proposals before clicking Allow. If controlled-study reviewers only catch 67% of known-bad commands, real-world production performance is almost certainly worse, exposing a compliance and security gap vendors have been papering over.
The editorial flags that game-run participants are not senior SREs approving production deploys, and that synthetic malicious commands differ from real-world attack contexts. This caveat suggests the headline number should be treated as directional evidence of a real problem rather than a precise measure of production risk.
By submitting the piece with its 'humans missed 1 in 3 threats' framing to HN, the submitter surfaces the study's core insight: the failure mode is not novel but is the same alert fatigue security engineers have documented for decades, now applied to agent approval prompts. The 272 points and 197 comments suggest the developer community recognizes this pattern from their own SIEM and code-review experience.
A team at ScaleX ran what may be the largest empirical study to date on human-in-the-loop AI agent approvals: 40,000 game runs in which participants were shown proposed commands from an AI agent and asked to approve or deny them. Some commands were legitimate task progress. Others were engineered to be harmful — data exfiltration, destructive shell calls, permission escalations dressed up in plausible context.
Across the full dataset, humans approved roughly one in three malicious commands. The failure wasn't concentrated in obviously ambiguous edge cases. Reviewers waved through commands that, shown in isolation on a code review, most engineers would immediately flag. The context of an ongoing agent session — where every previous approval had been fine — was the compromising factor.
The degradation curve is the more interesting artifact. Early in a session, humans caught most bad commands. By roughly the 50th prompt, approval accuracy had fallen sharply, and by the end of a long run it was closer to a coin flip than a review. The authors frame this in the language security engineers already use: alert fatigue. The mechanism is old. The surface area is new.
The entire current wave of agent products — Claude Code, Cursor's agent mode, Devin, Copilot Workspace, every YC batch's autonomous-SWE demo — rests on a load-bearing assumption: that when the agent proposes something risky, a human will meaningfully review the proposal before clicking 'Allow.' That assumption is how these products ship without being a compliance nightmare. It's how vendors answer the 'what if it `rm -rf`'s prod' question in sales calls. If the human review is only ~67% effective at catching known-bad commands in a controlled study, the real-world number under production load is almost certainly worse.
The study's design deserves scrutiny. Game-run participants aren't senior SREs approving prod deploys, and there's a real gap between synthetic threat commands and the ones a compromised or misaligned agent would actually generate. Motivated attention matters. But two things push against the 'this doesn't generalize' response. First, professional reviewers are not immune to fatigue — a decade of SOC research says the opposite. Second, the whole point of an agent is that it takes actions faster than a human would take them alone; the reviewer's cognitive budget per prompt is smaller than in a code review, not larger.
Community reaction on the HN thread split along predictable lines. One camp argues the finding just confirms what UX researchers have said about consent dialogs since the browser cookie era: any UI that trains users to click 'Allow' hundreds of times will eventually get 'Allow' clicked on things it shouldn't. The other camp argues this is a problem of prompt design and interstitials — that a well-designed approval UI (diff view, explicit blast radius, cooldown before dangerous actions) could shift the numbers. Both are right, and neither rescues the current default UX, which is a modal that says 'run this command? [y/N]' and calls it a day.
There's also a policy layer here. Regulators writing AI safety frameworks — the EU AI Act's high-risk category, NIST's AI RMF, the various state-level bills — lean heavily on 'human oversight' as a mitigation. This study is the sort of empirical rug-pull that turns 'human oversight' from a check-box into a design problem. A regime that treats a reviewer's approval as evidence of due diligence is, per the data, endorsing a 33% miss rate.
If you're building or deploying agents, the practical implications sort into three buckets.
Stop treating approval as a security control. Human approval is a UX affordance, not a guardrail. Real guardrails are non-negotiable, machine-enforced constraints: allowlists of shell commands, sandboxed filesystems, read-only credentials by default, network egress denied unless explicitly enumerated. If your threat model requires that a human catch a bad command, your threat model is broken. Use policy engines (OPA, Cedar) or containerized execution with capability restrictions to make the dangerous commands literally unavailable, rather than gated by a click.
Design approval UIs for the 50th prompt, not the first. Assume fatigue. Group similar low-risk actions and auto-approve them under a session policy. Escalate high-blast-radius actions with genuinely different UI — full-screen interstitials, a mandatory diff review, a forced 5-second delay before the button becomes clickable. The insight from banking fraud UX applies directly: you don't prevent bad transactions by asking about all transactions equally; you prevent them by making the review cost proportional to the risk. Give users a `--dangerous` explicit flag for the destructive stuff.
Instrument your own approval telemetry. Log every approve/deny decision your users make, along with what they approved. Run periodic audits: sample a random 5% of approved commands and have a second reviewer classify them. If your approval-to-actual-harm rate diverges from your users' self-reported confidence, you have a fatigue problem and you need to redesign the surface. Most agent products today don't collect this data at all.
The next 18 months of agent product design will be defined by whether teams treat this study as a UX warning or a security finding. The vendors who take the security framing seriously — who invest in policy-as-code guardrails, sandboxed execution environments, and approval UIs calibrated to human attention rather than developer convenience — will be the ones still standing after the first high-profile 'agent wiped a production database because someone clicked Allow' incident. The vendors still shipping `[y/N]` modals will be writing blameless post-mortems.
A couple of months ago I shared the AI agent permission game here on HN. After adding in stats it got a little over 40k plays and 409k decisions since then.It's just a game, but I found the stats still interesting that I wanted to share back. Even with the warning up front, 1 in 3 threats were
The “click yes the proceed” was never a serious security mechanism.It’s simply a CYA click-thru by the model vendors so their lawyers can say “well you approved it this is on you” when AI does something stupid.
This game, like just about every game, has zero consequences for failure. This is like saying "Humans were involved in fatal accidents 50% of the time when playing my custom F1 racing simulator". There were no stakes and there was an artificial time constraint. Deriving any sort of takeawa
Yeah, that data is junk. I know because I'm in it a whole bunch, and I'm just not a web/devops person. Half the commands made no sense to me. I normally wouldn't have approved them, but you also get penalized for false denials, so…and I have no reason to believe I would somehow b
Top 10 dev stories every morning at 8am UTC. AI-curated. Retro terminal HTML email.
I remember when this game was posted here, and there was a lot of discussion at the time that some of the prompts were misleading about whether or not they were risky, some people were debating about how some of the prompts flagged as bad weren’t bad, and others flagged as not bad were. This is a fu