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

Fixing OpenClaw Agent Autonomy Issues: Skill Files, Tool Selection, and Cron Setup
A developer shares solutions for OpenClaw agents that stop working autonomously after initial setup. Key fixes include using external skill files instead of chat instructions, replacing browser tools with API-based tools or Puppeteer scripts, and properly configuring cron jobs.

Three-layer memory architecture for persistent OpenClaw agent context
A developer built a 3-layer memory system on top of OpenClaw's infrastructure to prevent agents from starting each session without context. The architecture includes L1 workspace files injected every turn, L2 semantic memory search, and L3 reference documents opened on demand.

Fix OpenClaw Slowdown in Long Sessions: contextInjection continuation-skip for llama.cpp Cache
A real-world fix for OpenClaw sessions that get slower over time: set contextInjection to continuation-skip to preserve llama.cpp prompt cache, cutting prompt eval from 130s to 1.3s.

Claude Code Skills vs. Custom Agents: A Mental Model Based on Task Consistency
A Reddit user clarifies the distinction between Claude Code skills and custom agents: skills execute the same steps every time, while custom agents require reasoning and adaptation. The post also covers parallel subagents, delegation, hooks, and building blocks.