Claude의 응답을 획기적으로 개선하고 코드 품질을 높인 내 워크플로우의 두 가지 변화
The two changes to my workflow that have drastically improved Claude's responses and resulted in better quality code
핵심 요약
Claude의 응답 품질을 높이기 위해 '살아있는 사양 문서' 작성과 '상호 검증 모델' 도입을 제안하는 워크플로우 개선법.
- 살아있는 사양 문서 — 아키텍처와 의사결정 이유를 기록하여 AI의 기억력 보완함.
- 상호 검증 모델 — 두 개의 모델이 서로의 계획을 비판하고 논쟁하게 하여 사각지대 제거함.
- 시스템 프롬프트 — AI의 맹목적인 동의를 방지하고 비판적 사고를 유도함.
- 명확한 요구사항 — 모호한 부분을 질문하게 하여 구체적인 사양으로 발전시킴.
나도 이런 식으로 꽤 복잡한 앱(실시간 영상 처리, GPU 렌더링, 멀티플레이어)을 만들어 봤는데, 결국 다들 겪는 그 벽에 부딪히더라. 주말 동안은 진짜 좋은데, 나중엔 LLM이 이미 고쳐놓은 실수를 계속 반복해서 코드가 개판이 됨. 그래서 난 두 가지 방법으로 해결했다. 혹시나 나처럼 머리 싸매는 사람 있을까 봐 공유함.
-
AI의 기억 장치로 쓸 '살아있는 명세서(living spec doc)' 만들기. 기능을 건드리기 전에 architecture.md 파일을 하나 유지하는데, 여기엔 앱이 뭔지뿐만 아니라 왜 그런 결정을 내렸는지까지 다 적어둠. 이 '왜(why)'가 핵심임. 새로운 채팅창 열 때마다 AI는 기억이 초기화되지만, 이 문서가 곧 기억이거든. 기능 하나 추가할 때마다 업데이트해라.
-
서로 검증하는 모델 두 개 쓰기. 한 모델한테 아이디어를 검토하게 해서 구현 계획을 짜게 하고, 그 계획을 다른 모델한테 넘겨서 아주 갈기갈기 찢어놓으라고 시킴. 엣지 케이스나 모순점, 더 간단한 방법 같은 걸 찾아내게 하는 거지. 내가 결과물에 만족할 때까지 둘이서 계속 싸우게 함. (난 Claude Opus 4.6이랑 Gemini Pro/Kimi 2.6 조합 쓰는데, 컨텍스트 큰 모델이면 아무거나 상관없음.) LLM 하나만 쓰면 사각지대가 너무 많은데, 둘이 붙여놓으면 서로 실수 기가 막히게 잡아낸다.
또 중요한 게 있는데, AI의 아부 근성을 죽여야 함. 기본 설정된 LLM 인격은 거의 모든 말에 다 동의하거든. 이걸 막으려고 난 이런 시스템 프롬프트를 씀:
Act as my high-level advisor and mirror. Be direct, rational, and unfiltered. Challenge my thinking, question my assumptions, and expose blind spots I'm avoiding. If my reasoning is weak, break it down and show me why. If I'm making excuses, avoiding discomfort, or wasting time, call it out clearly and explain the cost. Stop defaulting to agreement. Only agree when my reasoning is strong and deserves it. Look at my situation with objectivity and strategic depth. Show me where I'm underestimating the effort required or playing small. Then give me a precise, prioritized plan for what I need to change in thought, action, or mindset to level up. Treat me like someone whose growth depends on hearing the truth, not being comforted.
이렇게 하면 네가 하려는 결정마다 LLM이 의문을 제기하게 됨.
그리고 기능 요청할 때마다 마지막에 "먼저, 모호한 부분 있으면 질문부터 해"라고 덧붙임. AI 질문에 답하다 보면 두루뭉술했던 바람이 확실한 명세서로 바뀜.
속도는 좀 느려지긴 하는데, 덕분에 요즘 디버깅하는 시간이 훨씬 줄어들었다.

