I spent a couple of weeks scanning merged pull requests opened by coding agents Devin, GitHub Copilot's coding agent, Codex, Claude Code, and Cursor across public repositories. 2,204 of them, read-only through the GitHub API, no LLM judgment anywhere, just deterministic checks.
The number that stuck with me: zero of the 2,204 declared, in any machine-checkable form, what they intended to change. Not "most didn't" zero.
Of the 349 that touched CI workflows or package manifests, 12.9% escalated workflow permissions and 17.5% added unpinned actions. 3.9% edited the files that steer every future agent run (AGENTS.md, CLAUDE.md, .mcp.json).
Most of those are probably fine. That is sort of the point: nobody declared them, so nobody can tell the difference without reading every diff by hand.
Hi Product Hunt 👋 I'm Jinhyuk, maker of MergeWarden.
Coding agents (Devin, Copilot, Codex, Claude Code, Cursor) now open and merge pull requests at scale. But when an agent PR lands, a reviewer has exactly what they'd have for a human PR: the diff. The agent knew precisely what task it was given — none of that intent survives into the PR in a form anything can check.
So I scanned 2,204 recently merged agent PRs to see what actually happens. 0 of 2,204 declared a machine-checkable scope. Of the ones that touched CI workflows, ~13% escalated GitHub Actions permissions, and 3.9% edited the files that steer future agents (AGENTS.md, .mcp.json).
MergeWarden is the change-control gate I built for exactly this: a checkout-free GitHub Action + CLI that checks each agent PR against your repo's boundaries — declared scope, agent-control-plane drift, and workflow permission escalation. It never checks out PR code, never calls an LLM, and every finding is deterministic and replayable. MIT-licensed.
See exactly what it reports in one command — no token, no repo, no signup:
npx mergewarden demo
That runs a bundled example PR on the default policy, so what you see is what a zero-config install actually reports. Then point it at a real public PR:
npx mergewarden scan owner/repo#123
Would love your feedback — especially on false positives and which boundaries you'd want checked. Happy to answer anything about the data or the detection rules.