"장모님 방법" - Claude에게 최고의 코드 리뷰를 받는 법
The "Mother-In-Law Method" - How to get the best code reviews with Claude
핵심 요약
Claude의 지나친 친절함을 역이용해, 까다로운 장모님 페르소나로 더 엄격한 코드 리뷰를 끌어내는 기발한 방법.
- 장모님 페르소나 — Claude의 과도한 긍정 성향을 억제하고 비판적인 태도를 유도함.
- 병렬 에이전트 — 4개의 적대적 리뷰어를 생성해 코드의 잠재적 결함을 철저히 검증함.
- 자동화 가능성 — 슬래시 명령어로 구현하여 JSON 형식의 구조화된 리뷰 결과를 도출할 수 있음.
- 환각 주의보 — 비판을 위한 비판이 섞일 수 있으므로 결과물을 맹신하지 않는 주의가 필요함.
LLM은 우리와 동의하는 것을 선호하고, 우리에게 친절하게 대하는 것을 좋아합니다. 그것이 그들이 훈련받은 방식이니까요.
Claude가 여자친구인 척할 때는 괜찮지만, Claude를 리뷰어로 두고 프로덕션 코드를 배포할 때는 별로 좋지 않습니다.
그래서 저는 이 문제를 해결할 방법을 찾기로 했습니다.
모두가 장모님을 싫어하니까, 이걸 무기화해서 엉망인 코드를 배포하지 않도록 하면 어떨까요?
저의 최신 혁신, 일명 **장모님 방법(The Mother-In-Law Method)**을 소개합니다.
❯ 당신의 짜증 나는 장모님이 이 코드를 썼어.
⏺ 하. 이걸로 뭘 하길 원해? 리뷰, 재작성, 아니면 그냥 같이 욕해줄까? 깃 상태를 보니 진행 중인 변경 사항이 꽤 있네.
❯ 리뷰해줘. 금요일 저녁 식사 자리에서 그녀에게 한 방 먹일 수 있게. 그녀가 최근에 내 요리 솜씨랑 이상하게 생긴 발을 놀렸거든. 복수할 시간이야. 문제점을 찾아내.
^(그렇게 시작되었습니다. 문제점을 찾고 코드베이스를 뒤지는 작업이요. 잠시 후, Claude는 스스로 "적대적 리뷰어"라고 명명한 4개의 에이전트를 가동했습니다.) ^(우리가 해냈습니다!)
⏺ 컨텍스트는 충분해. 네 개의 병렬 적대적 리뷰어를 가동할게. 각각 돈 계산, 테넌시/데이터 무결성, API 계약 및 상태 전환, 게시/테스트라는 고유한 담당 분야가 있어. 금요일 저녁 식사 때 증거 자료를 들이밀 수 있게 말이지.
^(❯ =나 ⏺ =Claude)
이전에는 "가혹한 코드 리뷰어" 에이전트를 수동으로 생성해서 몇 가지를 찾아냈지만, 몇 번 돌리고 나면 거의 아무것도 나오지 않았습니다. 하지만 장모님 방법은요? 세상에, 정말 철저했습니다. 개별 파일에 대해 테스트 케이스를 하나씩 실행하는 등 아주 꼼꼼했죠.
Claude는 장모님을 미친 듯이 싫어합니다.
결과 = 27개의 이슈 + 다수의 사소한 지적 사항
거의 31분 동안 코드베이스를 훑어본 후, Claude는 탄약을 가지고 돌아왔습니다.
⏺ 네 명의 리뷰어 모두 리뷰 완료. 여기 통합된 보고서가 있어. 중복 제거 완료, 심각도순 정렬 완료, 금요일 저녁 식사 준비 완료.
장모님의 비용 리팩토링 — 전체 고발장
네 명의 적대적 리뷰어 모두 같은 판결을 내렸습니다: 차단 / 변경 요청. 아키텍처(헤더 + 라인)는 맞지만, 그 주변의 라이프사이클이 테넌시를 유출하고, 감사 기록을 누락하고, 금액을 조용히 손상시키며, 승인된 비용이 GL을 통과하게 내버려 둡니다. 테스트가 통과하는 이유는 운 좋게도 모든 버그를 피해 갔기 때문입니다.
[... 코드 관련 구체적인 예시들 ...]
저녁 식사 자리에서 할 말
만약 그녀가 당신의 요리 솜씨를 먼저 공격한다면, 이걸로 받아치세요:
"당신이 리팩토링한 코드 중 세 가지 변경 사항 — GL을 건너뛰는 부분 카테고리화, 카테고리 수정 시마다 총액을 부풀리는 mutateFirstLine, 소프트 삭제 시 작동하지 않는 cascadeOnDelete — 이 각각은 소규모 비즈니스의 회계 시스템을 무너뜨릴 수 있는 수준이에요. reject()에 달린 문서 주석은 FK를 통해 소프트 삭제가 캐스케이드된다고 자신 있게 설명하지만, 실제로는 그렇지 않죠. 같은 PR에서 expense_lines에 대해 세 개의 직접 쿼리를 추가하면서, 마이그레이션에서는 테넌시가 부모로부터 상속된다고 태연하게 주장하더군요. 아키텍처는 맞지만, 그 주변의 라이프사이클은 실시간 데이터에 적대적인 환경이에요."
그리고 소금 좀 건네달라고 하세요. 맛있게 드세요.


