Claude가 이미 있는 함수를 또 재작성했네. 이번 달만 벌써 12번째임.
claude just rewrote a function we already had. it's like the 12th time this month.
핵심 요약
Claude가 기존 코드베이스를 제대로 파악하지 못해 중복 함수를 계속 생성하는 문제에 대한 고민.
- 코드 중복 문제 — Claude가 기존 유틸리티 함수를 인식하지 못하고 계속 새로 작성함.
- 컨텍스트 한계 — 전체 리포지토리를 스캔하기엔 컨텍스트 윈도우가 부족해 발생하는 현상임.
- 해결책 모색 — CLAUDE.md 관리나 MCP 도구를 활용해 기존 함수를 조회하는 방식을 시도 중임.
- 관리 전략 — AI를 주니어 개발자처럼 관리하며 문서화와 명확한 가이드를 제공해야 한다는 의견이 많음.
지난 2주 동안 기록을 해봤는데, Claude가 3개의 리포지토리에서 기존 유틸리티를 11번이나 다시 만들었어. 매번 코드는 깔끔하고, 타입도 잘 잡혀있고, 테스트도 통과해. 오늘 아침에 쓴 건 formatCurrency였는데, 이건 이미 utils/formatting.ts에 있고 10월에 배포돼서 14군데에서나 쓰고 있는 거였어.
Claude는 확인을 안 해. 사실 확인할 수도 없지. 내가 작업 중인 파일이랑 임포트 몇 개만 열어보고 바로 작성을 시작하거든. 전체 리포지토리를 스캔하면 컨텍스트 윈도우가 터져버리니까 안 하는 거야.
CLAUDE.md에 '우리가 가진 것' 목록을 유지하면서 반쯤 해결하고 있었는데, 이것도 일주일이면 구식이 돼버려. 진짜 효과가 있었던 건 '이런 기능이 이미 존재하는가'를 조회하는 작은 MCP 도구를 연결한 거였어. 50토큰 정도로 파일 경로랑 줄 번호를 반환해주거든. 이제는 그냥 타이핑하기 전에 80% 정도는 먼저 확인하더라고.
혹시 다른 사람들도 이런 문제 겪고 있어? CLAUDE.md를 함수 레지스트리처럼 쓰는 건 밑 빠진 독에 물 붓기 같아. PR 올리기 전에 중복 코드를 잡아내려고 다들 어떻게 하고 있는지 궁금해.


