Code Review Graph
변경 영향(blast radius)을 추적해 리뷰 컨텍스트를 좁히는 로컬 코드 그래프
pipx install code-review-graph && code-review-graph install코드베이스를 tree-sitter로 파싱해 함수·클래스·호출·테스트를 노드와 엣지로 묶은 그래프를 만들고, MCP로 AI 도구에 넘기는 로컬 우선 도구입니다. 파일이 바뀌면 영향받는 호출·의존·테스트만 골라 읽혀, 전체를 훑지 않게 합니다.
판단
이럴 때 씁니다
- 코드 리뷰에서 변경이 어디까지 영향을 주는지(호출자·의존·테스트)를 자동으로 좁혀 보고 싶을 때.
- 큰 저장소에서 AI가 전체를 훑지 않고 바뀐 부분의 영향 범위만 읽게 하고 싶을 때.
- API 호출 없이 완전 로컬로 코드 그래프를 돌리고 싶을 때.
- 30개 MCP 도구로 영향 반경·리뷰 컨텍스트를 질의하고 싶을 때.
이럴 땐 쓰지 마세요
- 작은 단일 파일 변경은 그래프 오버헤드가 단순 읽기보다 커, 이득이 작습니다.
- 검색·흐름 탐지 정확도에 아직 한계가 있습니다(MRR 0.35, 흐름 재현율 33%). 파이썬 외 언어는 상대적으로 약합니다.
- 문서·이미지까지 묶는 멀티모달이 필요하면 Graphify가 결에 더 맞습니다. 이쪽은 코드 리뷰 영향분석에 특화돼 있습니다.
차별점
- 파일이 바뀌면 그 변경의 영향 범위(blast radius)—호출자·의존·테스트—를 추적해, AI가 전체가 아니라 그만큼만 읽게 합니다.
- get_impact_radius_tool·get_review_context_tool 등 30개 MCP 도구를 노출합니다. 설치 명령이 도구를 자동 감지해 MCP 설정을 써 줍니다.
- 질문당 토큰을 38~528배(6개 저장소 중앙값 약 82배) 줄이고, 영향 분석은 재현율 100%를 보고합니다.
- 완전 로컬입니다. tree-sitter AST를 디스크 그래프로 저장하고 watch로 자동 갱신하며, API 호출이 없습니다.
워크플로
- 01pipx install code-review-graph로 설치한 뒤 code-review-graph install로 MCP를 자동 설정합니다.
- 02code-review-graph build로 코드베이스를 그래프로 만듭니다.
- 03code-review-graph watch로 변경을 자동 반영합니다.
- 04리뷰 때 detect-changes --brief나 MCP 도구로 변경 영향 범위를 좁혀 읽힙니다.
주요 명령
| 명령 | 설명 |
|---|---|
code-review-graph install | AI 도구를 자동 감지해 MCP를 설정합니다 |
code-review-graph build | 코드베이스 전체를 파싱해 그래프를 만듭니다 |
code-review-graph detect-changes --brief | 변경 위험과 토큰 절감을 보여줍니다(읽기 전용) |
code-review-graph watch | 파일 변경 시 그래프를 자동 갱신합니다 |
함정
설치 전에 확인하세요
- Python 3.10 이상이 필요하고, MCP 설정이 uvx를 우선 쓰므로 uv 설치가 권장됩니다.
- 작은 단일 파일 변경은 그래프 오버헤드가 단순 읽기보다 클 수 있습니다.
- 검색 품질(MRR 0.35)과 흐름 탐지(재현율 33%)는 아직 한계가 있고, 파이썬 저장소에서 더 강합니다.
직접 써본 메모
리뷰에서 '이 변경이 어디까지 번지나'를 자동으로 좁혀 주는 게 핵심 값입니다. 파일 하나를 고치면 그 호출자·의존·테스트만 추려 AI에 넘기니, 큰 저장소일수록 전체를 훑는 낭비가 줄어듭니다. API 호출 없이 완전 로컬로 돈다는 점은 회사 코드를 다루는 환경에서 특히 무게가 있습니다.
Graphify·Serena와 결이 겹쳐 보이지만 초점이 다릅니다. 멀티모달이 필요하면 Graphify, 심볼 실시간 탐색이면 Serena, 리뷰의 변경 영향 분석이면 이쪽입니다. 세 도구를 다 깔 이유는 적고, 목적에 맞춰 하나를 고르는 편이 낫습니다.
숫자는 정직하게 봐야 합니다. 토큰 절감(중앙값 약 82배)과 영향 재현율 100%는 인상적이지만, 검색 품질(MRR 0.35)과 흐름 탐지(재현율 33%)는 아직 낮고 파이썬 저장소에서 더 잘 듭니다. 작은 단일 파일 변경엔 그래프 오버헤드가 단순 읽기보다 커질 수 있어, 큰 변경·큰 저장소에 어울립니다.
비교
코드를 그래프로 다룬다는 점은 Graphify·Serena와 같지만 초점이 다릅니다. Graphify가 문서·이미지까지 묶는 멀티모달이라면, 이쪽은 코드 리뷰의 변경 영향 분석에 특화돼 '이 변경이 어디까지 번지는가'를 계산합니다. Serena가 심볼을 실시간으로 따라간다면, 이쪽은 미리 그래프를 구워 두고 영향 범위를 질의합니다. API 호출 없이 완전 로컬로 도는 점도 차별점입니다.
최근 변경
v2.3.7에서 CLI 중심 흐름과 언어 지원을 확대하고 MCP 수명주기·Windows·동시성을 강화했으며 높은 심각도의 CodeQL 문제 3건을 해결했다.