惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

T
Troy Hunt's Blog
Blog — PlanetScale
Blog — PlanetScale
Engineering at Meta
Engineering at Meta
F
Full Disclosure
Recorded Future
Recorded Future
The GitHub Blog
The GitHub Blog
Microsoft Security Blog
Microsoft Security Blog
GbyAI
GbyAI
博客园_首页
博客园 - 叶小钗
MongoDB | Blog
MongoDB | Blog
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
Recent Commits to openclaw:main
Recent Commits to openclaw:main
H
Hacker News: Front Page
人人都是产品经理
人人都是产品经理
The Cloudflare Blog
博客园 - 司徒正美
Webroot Blog
Webroot Blog
Google DeepMind News
Google DeepMind News
Help Net Security
Help Net Security
Cloudbric
Cloudbric
PCI Perspectives
PCI Perspectives
有赞技术团队
有赞技术团队
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
TaoSecurity Blog
TaoSecurity Blog
L
Lohrmann on Cybersecurity
量子位
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
T
Tailwind CSS Blog
Hacker News - Newest:
Hacker News - Newest: "LLM"
B
Blog RSS Feed
Apple Machine Learning Research
Apple Machine Learning Research
大猫的无限游戏
大猫的无限游戏
P
Proofpoint News Feed
N
News and Events Feed by Topic
罗磊的独立博客
T
Threat Research - Cisco Blogs
Schneier on Security
Schneier on Security
T
Tor Project blog
IT之家
IT之家
M
MIT News - Artificial intelligence
S
Security @ Cisco Blogs
O
OpenAI News
AI
AI
S
Securelist
Simon Willison's Weblog
Simon Willison's Weblog
The Last Watchdog
The Last Watchdog
月光博客
月光博客
Security Archives - TechRepublic
Security Archives - TechRepublic
L
LINUX DO - 热门话题

J.D. Hodges

Claude Code Opus 5: Fix the VS Code Picker Still Showing 4.8 RTX 5090 vs 4060 in a Hybrid GPU Render Fleet RDP Slow on LAN? Fix the Remote Desktop 56 Kbps Trap Mac Prices Went Up June 2026: What Changed and What to Buy How to Set Up a SSH Connection in Claude Code Desktop How to Enable Wake-on-LAN on Synology NAS | Quick Guide Is the BCBS Settlement Payment Email Legit? (May 2026) How to Fix the VMware Workstation "mksSandbox" Crash (ISBRendererComm Error) - J.D. Hodges How to Check Codex Usage: CLI Status Line and Web Page How to Check Your Codex Usage on ChatGPT (Plus and Pro) MacBook Neo GPU vs Snapdragon X2, Radeon, Arc, RTX 5060 ThinkPad History: IBM 700C to Lenovo AI Workstations Codex /goal: How It Works, Setup, and What I Tested The BeBox: BeOS Hardware, Photos, and the Apple Deal That Wasn't Unable to Load Usage Limits in Claude? Use /usage Best Laptop for Claude Code (2026) Best Way to Cook Corn on the Cob | Milk and Butter Boil Best Computer for ChatGPT (2026) | Laptops, Desktops, Budget Picks How to Use GPT-5.5 Today via Your Codex Subscription Remove McAfee WebAdvisor on Windows: Stop the Popup Codex Sandbox Error on Ubuntu 24.04: The AppArmor Fix WD19TBS Mouse Lag Fix: Dell Firmware Update Worked Claude Opus 4.6 vs 4.7 Max: WordPress Task Graded Claude Code Opus 4.7: Terminal + VS Code Upgrade Instructions Claude Code Rate exceeded. - J.D. Hodges Chuwi MiniBook X vs MacBook Neo: The $399 Laptop That Refuses to Throttle - J.D. Hodges Meta Muse Spark: The Honest Scorecard (3 Wins Out of 20) Who Reads This Blog? Traffic by OS - J.D. Hodges Can MacBook Neo Run Claude Code? $599 Benchmark Test Minisforum MS-01 Proxmox Review: 2 Months Off-Grid on Solar Claude vs ChatGPT vs Gemini for Coding: Real Benchmark Results Claude Code /buddy: How to Preview, Hatch, and Reroll Your Terminal Pet Claude code source code analysis - J.D. Hodges
Mother-In-Law Method for Claude Code Review (Honest Take)
J.D. H. · 2026-04-30 · via J.D. Hodges

A Reddit post called “The Mother-In-Law Method” is making the rounds in r/ClaudeAI right now. The pitch from u/Ancient_Perception_6: prompt Claude to review your code as if it were written by your mother-in-law, the one who insulted your cooking and your “weird-looking feet.” Find revenge in the diff. Claude obliged, spawned four parallel “hostile reviewers” with distinct beats (money math, tenancy, API contracts, tests), and 31 minutes later returned 27 issues plus nits.

Funny post. Funnier thread. It’s tagged as humor but it’s pointing at something real: out of the box, Claude is too polite to your code. Default review tone is “yes, and, also nice job here.” That’s a problem when you’re shipping production logic.

Someone in the comments suggested making it into a slash command but picking it apart, here’s what I think is actually going on, and what I do instead.

What the MIL method actually does

1. Parallel reviewers with distinct scopes. Claude split its attention four ways instead of doing one diffuse pass over everything. Money math goes to one reviewer. Tenancy goes to another. API contracts and tests get their own. This is the workhorse.

2. License to drop the politeness tax. Hostile framing gives the model permission to escalate marginal observations without “you might consider” hedging.

3. Persona-induced confirmation hunger. Claude now has a stake. Please the hater. Find issues. Whether or not they’re real.

Strip the mother-in-law and keep #1. You get most of the value with none of the false-positive tax. The roleplay is theatre that happens to unlock a structural prompt.

The paradox

Buried in the comments, the OP mentions “a couple were suuuuper nitpick. some were genuinely good.” That admission matters more than the gimmick.

Sycophancy and hostile-prompt-pleasing are the same circuit. A Claude that infers “user wants validation” and a Claude that infers “user wants blood” are both doing audience modeling, not code modeling. The MIL method doesn’t fight sycophancy. It redirects it.

Which means any prompt that telegraphs the desired emotional valence of the output is corrupting the review. “Your annoying mother-in-law wrote this code” telegraphs hostility. “Be skeptical” telegraphs skepticism. “Play devil’s advocate” telegraphs combat. They all push the model toward a vibe instead of toward the truth.

Anthropic’s own work on this (Sharma et al., “Towards Understanding Sycophancy in Language Models,” 2023) shows that preference-trained assistants can learn to favor answers that match user beliefs, even when those beliefs are wrong. What the paper does not show is that hostile framing is the cure. From the model’s perspective, “make the user happy” and “make the user happy by being mean to a third party” are the same training objective, just pointed at a different target.

Or as one commenter on the thread, u/Ok_Boysenberry5849, put it more directly: “This is begging Claude to misrepresent non-issues as catastrophic bugs.”

Simulated independence vs structural independence

Here’s the concept the MIL method gestures at without naming.

When you prompt Claude to play a hostile reviewer, you’re asking the same model to switch sides. Same training data, same RLHF pressure, same blind spots. The hostility is performed. Call this simulated independence.

When you pipe Claude’s draft through a different model entirely (say, GPT-5.5 via Codex, or Gemini through its own CLI), that second model doesn’t share Claude’s weights, serving stack, or exact post-training incentives. It doesn’t have Claude’s defensive instincts about Claude’s own work. The independence is structural. The disagreement, when it comes, is real.

I have both models wired into my Claude Code setup on this machine. Codex relay returns a single-shot review in about 4.5 seconds. Gemini’s CLI is comparable. Cheap enough that cost hasn’t mattered in my workflow. And the feedback is genuinely hostile in the only sense that matters for review: the second model doesn’t share the first one’s bias.

That’s the version of “adversarial review” worth keeping IMHO.

What actually works (no roleplay required)

I ran this question itself through a three-way brainstorm: Codex, Gemini, and a Claude subagent in parallel. All three came back with the same verdict on /mil (don’t build it) but different angles on what to build instead. Three useful techniques survived the comparison, and none of them require valence priming.

Pre-mortem framing. Instead of “review this code,” ask: “This code shipped to production yesterday and caused a SEV-0. Reading the diff now, what was the bug?” Hindsight bias does the work. The model isn’t asked to be hostile. It’s asked to assume failure and reverse-engineer the cause. The same prompt shape works outside code: “this affiliate page got a 3% CTR instead of the 15% I expected. Why did it underperform?” Same trick.

Citation-or-drop gate. Make the schema strict. Every finding must cite specific code (file plus line), specify the failure mode in concrete terms, and propose a minimal fix or test. No citation? Drop it. This kills the bulk of MIL’s false positives without any framing change. Codex specifically proposed this as a strict JSON schema with severity, confidence, file, line, rationale, evidence, next_action, validation fields. Solid spec.

Structured beats with neutral framing. The parallel-reviewers part is good. Just drop the valence. “Review this PR across these four dimensions: money math, multi-tenancy, API contract, test coverage. For each, list concrete failure modes with code citations.” Same parallelism. No theatre.

Why I’m not adding /mil to my Claude Code setup

I run Claude Code with Codex relay and Gemini CLI wired in as second opinions. Both call signatures are documented in this site’s CLAUDE.md and run in single-digit seconds. When I want hostile feedback on Claude’s output, I send Claude’s output to Codex (and in fact it is told to by .md to do that frequently at critical stages). Codex doesn’t share Claude’s RLHF lineage. Disagreement, when it surfaces, isn’t theatre and believe me CODEX finds stuff almost every time. They make a good pair. Gemini is not my fav but can be handy for research or checking for hallucinations etc.

A /mil slash command sitting on top of that stack would be cosmetic at best. At worst it would actively degrade my workflow by introducing fabricated bugs that the structurally-independent second opinion would never have raised in the first place.

If I were going to build anything, it’d be the lightweight version Codex itself proposed during the brainstorm: extend the existing multi-LLM review path with a --beats flag and a strict-JSON output schema enforcing the citation-or-drop gate. Maybe 90 minutes of work. Doesn’t need a name.

What u/Ancient_Perception_6 got right

Credit where it’s due. The method’s real value isn’t the bugs it found in their expense refactor… it’s the demonstration that prompt framing can swing review depth significantly, and that most of us are leaving signal on the table by being polite to our tools.

That’s worth knowing. The fix IMHO isn’t to pick a fight with Claude. It’s to give Claude a 2nd structurally honest reviewer to argue with, and to ask both of them for evidence. And kudos to OP for trying novel approaches, this is just my 2 cents of take on the overall concept and please don’t take any of this as you must do it, rather this is what has worked very well for me.

Lastly, I hope my mother-in-law isn’t reading this. She’s actually lovely. 😉