code-review-graph
code-review-graph: 무엇인지, 어떤 문제를 해결하는지 & 왜 인기를 얻고 있는지
해결하는 문제
AI 코딩 어시스턴트는 리뷰 작업 중에 코드베이스의 큰 부분을 다시 읽음으로써 토큰을 낭비하고 정밀도를 떨어뜨리는 경우가 많습니다. code-review-graph는 AI 도구에 코드의 정밀한 구조적 지도를 제공하여, 어시스턴트가 특정 변경 사항과 실제로 관련된 파일과 함수만 읽도록 보장함으로써 이러한 토큰 낭비를 줄입니다.
작동 방식
이 도구는 Tree-sitter를 사용하여 저장소를 추상 구문 트리(AST)로 파싱하며, 이는 SQLite 데이터베이스에 노드(함수, 클래스, 임포트)와 엣지(호출, 상속, 테스트 커버리지)의 그래프로 저장됩니다.
주요 메커니즘은 다음과 같습니다:
- Blast-radius analysis: 파일이 변경되면 그래프는 해당 변경의 영향을 받는 모든 호출자, 의존성 및 테스트를 추적하여 AI를 위한 "minimal review set"을 생성합니다.
- Incremental updates: 시스템은 변경된 파일을 diff 처리하고 필요한 부분만 다시 파싱하여, 대규모 프로젝트도 2초 이내에 재인덱싱할 수 있습니다.
- MCP Integration: Model Context Protocol (MCP)를 사용하여 이 그래프 데이터를 AI 어시스턴트(Cursor, Claude Code, 또는 Zed 등)에 제공하며, 이를 통해 어시스턴트가 전체 코퍼스를 스캔하는 대신 그래프를 쿼리할 수 있게 합니다.
- CI Integration: GitHub Action을 사용하여 CI 러너에서 그래프를 빌드하고, 소스 코드를 외부 서비스로 전송하지 않고도 위험 점수가 매겨진 PR 리뷰를 게시하거나 테스트 공백을 식별할 수 있습니다.
대상 사용자
- Developers AI 코딩 도구를 사용하면서 토큰 비용을 줄이고 리뷰 정확도를 높이고 싶은 개발자.
- Maintainers of large monorepos 전체 컨텍스트 윈도우가 불충분하거나 너무 비싼 경우.
- DevOps/CI engineers 위험 점수가 매겨진 풀 리퀘스트 리뷰를 자동화하려는 엔지니어.
주요 특징
- Massive Token Reduction: 벤치마크 결과 질문당 중간 토큰 감소율이 약 82배에 달합니다.
- Broad Language Support: Python, JS/TS, Go, Rust, Java, C++, 그리고 Jupyter/Databricks 노트북을 포함한 방대한 언어를 지원합니다.
- Extensible: 프로젝트를 포크할 필요 없이 간단한
.toml설정을 통해 새로운 언어를 추가할 수 있습니다. - Local-First: 지식 그래프는 SQLite에 로컬로 저장되어 개인정보 보호와 보안을 보장합니다.
- Advanced Analysis: 커뮤니티 탐지(Leiden algorithm), 허브/브릿지 탐지, 실행 흐름 추적을 포함합니다.
Sources
- undefinedtirth8205/code-review-graph