LLMs are trained to be agreeable. They're optimized to give responses that feel helpful and positive, which works fine for most tasks. For code review, it creates a real problem: you get feedback that softens bugs instead of flagging them.
A developer posted a straightforward fix: frame Claude as your mother-in-law. The approach, dubbed the Mother-In-Law Method, works by shifting Claude away from its default agreeable mode into a more combative, critical one. Instead of asking Claude to "review this code," you instruct it to behave like someone who will personally be embarrassed if bugs ship - someone who notices every flaw and doesn't pull punches.
The underlying mechanism is real. Claude and other large language models respond to persona cues. "Find what's wrong" produces different results than "review this," and framing the reviewer as a harsh critic changes both the tone and depth of feedback. The specific mother-in-law framing is mostly a memorable device - what actually matters is explicitly granting permission to be harsh, and defining what harsh means in context.
This is a genuine limitation worth working around. LLMs are useful for catching logic errors, missing edge cases, and overlooked patterns in code - but only when they're not softening every observation. A review that says "this looks mostly good, maybe consider X" when there's a real bug isn't useful.
For Claude Code users who rely on Claude for regular code review, building this persona framing into a reusable system prompt - rather than typing it fresh each session - is the practical way to apply this consistently.