Claude Code, 코드 리뷰 기능 공개

2 weeks ago 9

  • PR마다 멀티 에이전트 팀을 투입해 사람이 놓치기 쉬운 버그를 심층적으로 잡아내는 Code Review 기능이 리서치 프리뷰로 출시
  • Anthropic 엔지니어의 코드 생산량이 지난 1년간 200% 증가하면서 코드 리뷰가 병목이 되었고, 많은 PR이 깊은 리뷰 대신 훑어보기에 그치는 문제 발생
  • 도입 전 PR의 16%만 실질적 리뷰 코멘트를 받았으나, 도입 후 54%로 상승했으며 PR 승인 자체는 여전히 사람이 담당
  • 대규모 PR(1,000줄 이상)에서는 84%가 발견 사항을 포함하고 평균 7.5개 이슈를 보고하며, 오탐율은 1% 미만
  • 리뷰 비용은 토큰 사용량 기준으로 PR당 평균 $15~25 수준이며, 월간 조직 한도 및 레포지토리별 제어 등 비용 관리 기능 제공

코드 리뷰 병목 문제

  • Anthropic 엔지니어 1인당 코드 생산량이 지난 1년간 200% 증가하면서, 코드 리뷰가 개발 프로세스의 병목으로 부상
  • 고객사에서도 매주 같은 문제를 호소하며, 개발자들이 과부하 상태에서 많은 PR이 깊은 리뷰 대신 훑어보기에 그침
  • 기존 오픈소스 Claude Code GitHub Action보다 더 철저하고 비용이 높은 옵션으로, 모든 PR에 신뢰할 수 있는 리뷰어를 붙이기 위해 개발
  • 도입 전 PR의 16%만 실질적 리뷰 코멘트를 받았으나, 도입 후 54% 로 상승
  • PR 승인은 여전히 사람이 담당하며, 리뷰어가 실제 출하되는 코드를 충분히 커버할 수 있도록 격차를 줄이는 역할

동작 방식

  • PR이 열리면 에이전트 팀을 디스패치하여 병렬로 버그 탐색
  • 각 에이전트가 버그를 검증해 오탐을 필터링하고, 심각도 기준으로 순위 매김
  • 결과는 PR에 단일 고신호 개요 코멘트와 특정 버그에 대한 인라인 코멘트로 전달
  • PR 크기에 따라 리뷰 규모가 자동 조절되어, 크고 복잡한 변경에는 더 많은 에이전트와 깊은 분석, 사소한 변경에는 경량 패스 적용
  • 테스트 기준 평균 리뷰 소요 시간은 약 20분

실제 적용 사례

  • 수개월간 내부 운용 결과, 대규모 PR(1,000줄 이상)에서 84%가 발견 사항을 포함하고 평균 7.5개 이슈 보고
  • 소규모 PR(50줄 미만)에서는 31%가 발견 사항을 포함하고 평균 0.5개 이슈 보고
  • 엔지니어들이 발견 사항에 대체로 동의하며, 오탐으로 표시된 비율은 1% 미만
  • 한 사례에서 프로덕션 서비스의 한 줄 변경이 통상적으로 빠른 승인을 받을 수 있는 diff였으나, Code Review가 크리티컬로 플래그
    • 해당 변경은 서비스의 인증을 깨뜨릴 수 있는 실패 모드였으며, diff에서는 읽고 지나치기 쉽지만 지적받으면 명백한 문제
    • 머지 전에 수정되었고, 해당 엔지니어는 혼자서는 잡지 못했을 것이라고 공유
  • TrueNAS의 오픈소스 미들웨어에서 ZFS 암호화 리팩토링 PR에 대해, Code Review가 인접 코드의 기존 버그를 발견
    • 매 동기화 시 암호화 키 캐시를 조용히 지우는 타입 불일치 문제
    • PR이 건드린 코드에 잠재해 있던 이슈로, 변경 세트를 스캔하는 사람 리뷰어가 즉시 찾아보지 않을 유형

비용 및 제어

  • 깊이 최적화되어 Claude Code GitHub Action 같은 경량 솔루션보다 비용이 높음
  • 리뷰는 토큰 사용량 기준 과금이며, PR 크기와 복잡도에 따라 평균 $15~25
  • 관리자용 비용 및 사용량 제어 옵션:
    • 월간 조직 한도: 전체 리뷰에 걸친 월간 지출 총액 설정
    • 레포지토리별 제어: 선택한 레포지토리에서만 리뷰 활성화
    • 분석 대시보드: 리뷰된 PR 수, 수용률, 총 리뷰 비용 추적

시작 방법

  • Team 및 Enterprise 플랜 대상으로 리서치 프리뷰(베타) 형태로 제공
  • 관리자는 Claude Code 설정에서 Code Review를 활성화하고, GitHub App을 설치한 뒤 리뷰를 실행할 레포지토리 선택
  • 개발자는 활성화 후 새 PR에 대해 자동으로 리뷰가 실행되며, 별도 설정 불필요

Read Entire Article