The dominant mental model for AI-assisted coding is speed: generate multi-hundred-line PRs, merge fast, iterate faster. Vibe coding as a velocity play.
Nolan Lawson's post this week pushes back on that β not by rejecting LLMs, but by using them differently.
"You can use them just as effectively to write high-quality code more slowly."
The hook is simple: LLMs are excellent at finding bugs. Anthropic's Mythos research showed agents can surface flaws in a codebase at scale. Lawson extended that insight into a practical PR review workflow β and the results are the opposite of slop.
Lawson runs a multi-agent review skill that throws Claude, Codex, and Cursor Bugbot at every PR independently, then consolidates findings ranked by severity: critical, high, medium, low.
The key design choice is the ensemble. Multiple models reviewing the same code self-correct each other β the false positive rate drops to near zero, while bug coverage stays high. A single model hallucinates; three models debating converge on real issues.
His triage loop once the report lands:
That last point is important. This workflow will sometimes tell you to throw away your work. That's a feature.
Velocity hasn't gone up. If anything, it's slower. The review process regularly surfaces pre-existing bugs, sending Lawson on side-quests to write unit tests and fix subtle flaws that predate the PR.
That's the point. Pre-LLM, understanding a codebase deeply meant exploring its failure modes β where the assumptions break down, where the edge cases bite. That's still the most valuable form of code knowledge. This workflow automates the discovery without removing the depth.
Lawson also suggests pairing this with understanding tools: have the agent explain how the PR works and where it might fail, generate Mermaid diagrams, or use Matt Pocock's /grill-me
skill until you can explain the entire changeset from memory.
The tools didn't change. The mental model did.
βοΈ Drafted with KewBot (AI), edited and approved by Drew.