AI 기반 코드 리뷰 CLI 도구 OpenCodeReview 소개
alibaba/open-code-review
GitHub알리바바 그룹이 개발한 AI 기반 코드 리뷰 CLI 툴입니다. Git diff를 분석하여 라인 단위의 정교하고 구조화된 검토 의견을 제공합니다.
- 일반 에이전트의 한계를 극복하기 위해, 결정론적 엔지니어링(하드 제약)과 에이전트를 결합한 하이브리드 아키텍처를 채택했습니다.
- 대용량 변경사항이나 복잡한 레포지토리 전체도 안정적으로 분석하여 코드 검토의 신뢰성을 높이고, API 토큰 사용량을 획기적으로 줄여줍니다.
- 사용 전 Git 환경과 LLM 제공자 설정이 필수이며, 높은 정확성(Precision)에 초점을 맞춘 만큼 모든 결함을 찾는 능력(Recall)은 일반 에이전트보다 낮다는 점을 인지해야 합니다.
Open Code Review는 AI 기반의 코드 리뷰용 CLI(Command Line Interface) 도구입니다. 이 도구는 Git diff를 읽어 변경된 파일을 설정 가능한 에 전송하며, 라인 단위의 정밀하고 구조화된 검토 의견을 생성합니다. 단순히 diff에 대한 피드백을 넘어, 전체 파일 내용을 읽거나 코드베이스를 검색하여 컨텍스트를 파악하고 깊이 있는 리뷰가 가능합니다. 또한, 의미 있는 diff가 없는 디렉터리나 전체 파일을 감사(auditing)할 때는 `ocr scan` 기능을 사용할 수 있습니다.
Open Code Review는 결정론적 엔지니어링과 에이전트의 동적 의사결정 능력을 결합한 하이브리드 아키텍처를 핵심 철학으로 합니다. 이 구조는 리뷰 과정에서 반드시 지켜져야 할 규칙(Hard Constraints)을 보장하여, 일반 범용 에이전트가 가질 수 있는 불완전한 커버리지나 위치 오차 문제를 해결합니다. 테스트 결과에 따르면, Open Code Review는 동일한 기반 모델 대비 높은 정밀도(Precision)와 F1 점수를 달성하면서도 소비량을 약 1/9로 줄이는 효율성을 보여줍니다.
사용을 위해서는 LLM 제공자 설정이 필수적입니다. 사용자는 `ocr config` 명령어를 통해 빌트인 또는 커스텀 프로바이더를 선택하고 모델을 지정해야 합니다. 다만, '위임 모드(Delegation Mode)'를 사용할 경우 OCR가 파일 선택 및 규칙 해결을 담당하므로 별도의 LLM 구성 없이도 리뷰가 가능합니다. 주요 명령어로는 작업 공간 전체 변경사항 검토(`ocr review`), 특정 범위의 브랜치 비교 검토(`ocr review --from main --to feature-branch`), 또는 전체 파일을 스캔하는 `ocr scan` 등이 있습니다.
용어 풀이
- LLM
- 방대한 글을 학습해 문장을 이해하고 만들어 내는 AI 모델. ChatGPT, Claude, Gemini가 여기에 속해요.
- 에이전트
- 목표를 받으면 스스로 계획을 세우고 도구를 써서 여러 단계의 작업을 해내는 AI.
- 토큰
- AI 모델이 글을 처리하는 단위. 단어보다 작은 조각이며 사용량과 요금을 셀 때 기준이 돼요.