Using AI to Write Better Code More Slowly: A Bug-Finding Workflow

Developers tired of AI slop cannons might appreciate Nolan Lawson's alternative: using LLMs to write better code more slowly. The key insight: throw multiple agents at a PR review to find bugs ranked by severity, then methodically fix them.
How It Works
Lawson describes a Claude skill adapted from another article's core insight: the more different models you throw at a PR review, the fewer hallucinations or bogus bugs you get. The skill runs three agents — Claude sub-agent, Codex, and Cursor Bugbot — to find bugs in a PR, ranked by critical/high/medium/low. After they finish, you review their findings, rule out false positives, and write a final report.
Define "bug" in your own terms: Lawson's includes KISS/DRY principles, accessible HTML/JSX, proper SQL indexes, etc. Claims false positive rate near zero, and the skill always finds tons of bugs — from critical security issues to misleading comments.
Typical Workflow
- Have an agent fix all criticals and highs (with your guidance on proper solution), then repeat until none remain.
- Skip highs/mediums where the fix effort (e.g., 100 lines for a narrow edge case) isn't worth it.
- Abandon the PR if it has so many criticals that the whole approach is misguided.
The review process often finds pre-existing bugs, leading to tangential side-quests writing unit tests and fixing subtle flaws. This is the opposite of 10x productivity slop-cannon development, but improves overall codebase health and deepens your understanding of failure modes.
If you're skeptical of AI coding, this won't persuade you. But if you're churning out multi-hundred-line PRs you barely understand, Lawson invites you to slow down: ask an agent how your PR works and how it might fail, have it write Markdown docs with Mermaid charts, or use Matt Pocock's /grill-me skill until you understand the entire PR front-to-back.
Related discussions on Hacker News: HN thread (748 points, 288 comments).
📖 Read the full source: HN AI Agents
👀 See Also

What Breaks When Running Coding Agents on Small Local Models
Real-world failure points from testing multi-file tasks on sub-7B models: markdown fences, structured output reliability, file editing errors, and classification of read vs. write actions.

Getting Started with OpenCode for Local AI Coding Agent Setup
A beginner's guide walks through setting up OpenCode as a fully local AI coding agent using ByteShape's optimized models with LM Studio, llama.cpp, or Ollama across Mac, Linux, and Windows (WSL2).

Fix for Claude VS Code Extension Error: 'command claude-vscode.editor.openLast not found'
The Claude VS Code extension version 2.1.51 contains a breaking bug that causes the error 'command claude-vscode.editor.openLast not found'. The workaround is to downgrade to version 2.1.49.

Fixing Claude Code's KV Cache Invalidation with Local Backends
Claude Code versions 2.1.36+ inject dynamic telemetry headers and git status updates into every request, breaking prefix matching and forcing full 20K+ token system prompt reprocessing on local backends like llama.cpp. A configuration fix in ~/.claude/settings.json can reduce processing from 60+ seconds to ~4 seconds.