콘텐츠로 이동

CodeRabbit으로 커밋 전 로컬 코드 리뷰 받기

CodeRabbit은 풀 리퀘스트를 자동으로 리뷰해 주는 서비스다. PR 단계뿐 아니라 로컬에서도 개인의 변경점에 대해 리뷰를 받을 수 있다. AI가 만든 코드도 결국 사람이 검토해야 하는데, 리뷰에 드는 시간을 줄일 수 있는지 직접 써 봤다.

  • VS Code 계열 IDE의 marketplace에서 확장을 설치한다.
  • 현재 체크아웃된 브랜치를 기준으로 비교할 target 브랜치를 고른다.
  • 리뷰 범위를 unstaged / staged / all 중에서 골라 리뷰를 받는다.
  1. Cursor로 간단한 코드 정리를 시켰다.
  2. 커밋 전에 uncommitted changes에 대해 리뷰를 시켰다. 변경 파일은 하나였고 리뷰가 정상적으로 끝났다.
  3. 일부러 복잡한 변경점을 만들고, 불필요하고 질이 나쁜 로직을 섞은 뒤 분석을 시켰다.
  4. 문제 있는 코드는 빨간색으로 강조해 리뷰해 주었다.
  • 시간을 재지 않아 확인하지 못했지만, 리뷰 소요 시간이 변경 파일 개수에 비례한다고 느꼈다.
  • 저장소에 .coderabbit.yaml을 두면 팀 컨벤션을 리뷰에 반영할 수 있다.
  • Cursor Bugbot과는 직접 비교하지 못했다. (Bugbot 문서)
  • 팀 저장소의 MR 리뷰에도 붙여서 도움을 받아 볼 만하다고 판단했다.

직접 사용과 별개로 공개 자료에서 정리한 내용이다.

CodeRabbit

  • 로컬(IDE)에서 1차 리뷰, PR 생성 후 전체 변경 사항에 대한 2차 리뷰를 할 수 있다.
  • PR 변경 사항을 요약하고, 표나 Mermaid 다이어그램으로 시각화한다.
  • 변수명, 에러 처리, 성능 이슈 등을 라인 단위로 지적한다.
  • 리뷰 댓글에 답글을 달면 대화하듯 응답하고, 피드백을 학습해 이후 리뷰에 반영한다.
  • 저장소별로 리뷰 언어와 옵션을 설정할 수 있다.
  • GitHub, GitLab, Azure DevOps, Bitbucket 등 여러 Git 플랫폼과 연동된다.
  • 오픈 소스 프로젝트는 무료이고, 비공개 저장소는 PR을 올리는 개발자 수 기준으로 과금한다(Lite / Pro 요금제, Pro 14일 무료 체험).
  • 한계로는 맥락이 부족해 부정확한 제안을 하는 경우, 피드백이 지나치게 상세해 노이즈가 되는 경우, 웹 UI가 느리다는 평가가 있다.

Cursor Bugbot

  • Cursor 생태계에 통합된 PR 리뷰 기능이다. PR이 업데이트되면 자동으로 diff를 분석해 댓글을 남긴다.
  • 댓글의 “Fix in Cursor” 링크로 문제 맥락을 실은 채 Cursor 편집기로 바로 이동할 수 있다.
  • .cursor/BUGBOT.md로 프로젝트별 규칙과 맥락을 줄 수 있다.
  • 자동 실행 외에 특정 댓글로 수동 트리거할 수 있다.
  • PR이 만들어진 뒤에 동작하는 반응형 도구이고, Cursor에 의존한다는 한계가 있다.
  • 여러 Git 플랫폼과 IDE를 쓰는 팀이 기존 워크플로우를 크게 바꾸지 않고 AI 리뷰를 붙이려면 CodeRabbit이 맞다.
  • Cursor를 주력 편집기로 쓰는 팀이라면 Bugbot의 통합 경험이 장점이다.
  • 어느 쪽이든 사람의 리뷰는 여전히 필요하다. 반복적인 검사는 AI에 맡기고, 사람은 AI 제안을 검증하고 맥락을 보태는 쪽으로 리뷰의 초점을 옮긴다.