CodeRabbitCodeRabbitKorea User Group
모범 사례 목록으로
설정YAML가이드

.coderabbit.yaml 설정 가이드

CodeRabbit Korea·

.coderabbit.yaml이란?

.coderabbit.yaml은 CodeRabbit의 동작 방식을 설정하는 파일입니다. 리포지토리 최상단(루트)에 이 파일을 추가하면 리뷰 언어, 리뷰 대상 브랜치, 무시할 파일, 리뷰 꼼꼼함 수준 등을 팀 상황에 맞게 조정할 수 있습니다.

설정 파일이 없어도 CodeRabbit은 기본값으로 동작하지만, 팀의 워크플로우에 맞게 설정해 두면 불필요한 리뷰 노이즈를 줄이고 더 유용한 피드백을 받을 수 있습니다.

기본 설정

리포지토리 루트에 .coderabbit.yaml 파일을 만들고 아래 내용을 추가하세요.

# .coderabbit.yaml
language: ko-KR
 
reviews:
  auto_review:
    enabled: true
    drafts: false
    base_branches:
      - main
      - develop

이것만으로도 기본적인 설정은 끝납니다. 각 항목이 무엇을 의미하는지 하나씩 살펴보겠습니다.

language — 리뷰 언어

language: ko-KR

CodeRabbit이 남기는 리뷰 코멘트의 언어를 지정합니다. ko-KR로 설정하면 PR 요약, 코드 리뷰, 워크스루 등 모든 피드백을 한국어로 받을 수 있습니다. 설정하지 않으면 기본값은 영어(en-US)입니다.

auto_review — 자동 리뷰

reviews:
  auto_review:
    enabled: true
    drafts: false
    base_branches:
      - main
      - develop
항목 설명 기본값
enabled PR이 올라오면 자동으로 리뷰를 시작할지 여부 true
drafts Draft 상태인 PR도 리뷰할지 여부. 아직 작업 중인 PR에 리뷰가 달리는 게 부담스럽다면 false로 두세요 true
base_branches 어떤 브랜치로 머지하는 PR을 리뷰할지 지정. 여기 적힌 브랜치가 PR의 base branch일 때만 리뷰가 동작합니다 모든 브랜치

예를 들어 base_branchesmain만 적으면, feature/xxx → develop PR에는 리뷰가 달리지 않고 develop → main PR에만 리뷰가 달립니다. 팀의 브랜치 전략에 맞게 설정하세요.

리뷰 프로필

CodeRabbit이 얼마나 꼼꼼하게 리뷰할지 수준을 조정할 수 있습니다.

reviews:
  profile: assertive  # chill | assertive | strict
프로필 설명
chill 버그나 보안 이슈 같은 중요한 문제만 짚어줍니다. 리뷰 코멘트가 많은 게 부담스러운 팀에 적합합니다
assertive 중요한 이슈와 함께 코드 품질 개선 제안도 포함합니다. 대부분의 팀에 무난한 선택입니다 (기본값)
strict 네이밍, 스타일, 잠재적 엣지 케이스까지 세세하게 짚어줍니다. 코드 품질 기준이 높은 팀에 적합합니다

처음에는 chill부터 시작해서 팀이 적응하면 점차 올려가는 것을 추천합니다. 처음부터 strict로 설정하면 리뷰 코멘트가 너무 많아 오히려 피로감을 느낄 수 있습니다.

파일 필터링

리뷰가 필요 없는 파일은 path_filters로 제외할 수 있습니다. 패턴 앞에 !를 붙이면 해당 파일이 리뷰 대상에서 빠집니다.

reviews:
  path_filters:
    - "!**/*.test.ts"
    - "!**/*.spec.ts"
    - "!**/*.test.tsx"
    - "!**/generated/**"
    - "!**/__snapshots__/**"
    - "!package-lock.json"
    - "!yarn.lock"
    - "!pnpm-lock.yaml"

자동 생성되는 파일(lock 파일, 코드 제너레이터 출력물 등)이나 테스트 파일처럼 AI 리뷰 효과가 적은 파일을 제외하면 리뷰 품질이 높아지고 처리 시간도 줄어듭니다.

반대로 ! 없이 패턴을 적으면 해당 파일 리뷰 대상에 포함됩니다.

reviews:
  path_filters:
    - "src/**"        # src 하위 파일만 리뷰
    - "!src/**/*.test.ts"  # 그중 테스트 파일은 제외

커스텀 리뷰 가이드라인

팀의 코딩 컨벤션을 CodeRabbit에게 직접 알려줄 수 있습니다. 여기에 적은 규칙을 기반으로 코드를 리뷰하기 때문에, 팀 내부의 암묵적인 규칙도 자동으로 체크할 수 있게 됩니다.

reviews:
  tools:
    guidelines:
      - "함수명과 변수명은 camelCase를 사용한다"
      - "React 컴포넌트 파일명은 PascalCase를 사용한다"
      - "에러가 발생할 수 있는 곳에는 반드시 try-catch로 처리한다"
      - "API 응답 데이터는 항상 TypeScript 타입을 정의한다"
      - "매직 넘버는 상수로 분리한다"
      - "console.log는 프로덕션 코드에 남기지 않는다"

가이드라인은 자연어로 작성하면 됩니다. 한국어, 영어 모두 가능하며, CodeRabbit이 코드 리뷰 시 이 규칙들을 참고해서 위반 사항을 알려줍니다.

채팅 설정

PR 코멘트를 통해 CodeRabbit과 대화할 때의 동작을 설정할 수 있습니다.

chat:
  auto_reply: true

auto_replytrue로 설정하면 리뷰 코멘트에 답글을 달았을 때 CodeRabbit이 자동으로 응답합니다. 질문을 하거나 반론을 제기하면 해당 맥락에 맞게 답변해 줍니다.

전체 설정 예시

아래는 한국어 팀을 위한 추천 설정입니다. 이대로 복사해서 사용하고, 팀 상황에 맞게 조금씩 수정해 보세요.

# .coderabbit.yaml — 한국어 팀 추천 설정
language: ko-KR
 
reviews:
  auto_review:
    enabled: true
    drafts: false
    base_branches:
      - main
      - develop
 
  profile: assertive
 
  path_filters:
    - "!**/*.test.ts"
    - "!**/*.test.tsx"
    - "!**/*.spec.ts"
    - "!**/generated/**"
    - "!**/__snapshots__/**"
    - "!package-lock.json"
    - "!yarn.lock"
    - "!pnpm-lock.yaml"
 
  tools:
    guidelines:
      - "함수명과 변수명은 camelCase를 사용한다"
      - "React 컴포넌트 파일명은 PascalCase를 사용한다"
      - "에러 처리 시 반드시 사용자에게 피드백을 제공한다"
      - "API 응답 데이터는 항상 TypeScript 타입을 정의한다"
      - "console.log는 프로덕션 코드에 남기지 않는다"
 
chat:
  auto_reply: true

설정을 바꾼 뒤에는

설정 파일을 수정한 뒤에는 실제로 PR을 올려서 리뷰 결과를 확인해 보는 것이 가장 좋습니다.

git add .coderabbit.yaml
git commit -m "chore: update CodeRabbit configuration"
git push origin main

설정이 main 브랜치에 반영되면, 이후 올라오는 PR부터 새 설정이 적용됩니다.

더 자세한 설정 옵션은 CodeRabbit 공식 문서에서 확인할 수 있습니다.