Skip to content

시나리오: PR 코드 리뷰 자동화 ​

대상 독자: 개발자(PR·Git 워크플로). 문서·보고서만 검토하려면 파일 관리나 심층 리서치 시나리오의 문서 검토 프롬프트를 사용하세요.

에이전트에게 Pull Request 링크를 제공하면 코드를 자동으로 검토하고 피드백을 제공하는 워크플로우입니다. 코드 품질, 보안, 스타일, 논리 오류 등을 자동으로 체크합니다.


🎯 이 시나리오의 목표 ​

  • PR을 올린 후 수동 코드 리뷰 없이도 즉시 피드백 받기
  • 버그, 보안 취약점, 스타일 문제를 조기에 발견
  • 리뷰어에게 전달할 구조화된 리뷰 리포트 생성

📋 단계별 가이드 ​

단계 1: PR 링크 준비 ​

GitHub, GitLab, Bitbucket 등에서 PR 링크를 준비합니다.

예시: https://github.com/your-org/your-repo/pull/42

단계 2: 에이전트에게 리뷰 요청 ​

에이전트에게 PR 링크와 함께 리뷰를 요청합니다. 아래 예시 프롬프트를 참고하세요.

기본 리뷰 요청:

https://github.com/your-org/your-repo/pull/42 이 PR 코드 리뷰해줘.
주요 변경 사항과 잠재적 문제를 확인하고 피드백을 요약해줘.

상세 리뷰 요청:

https://github.com/your-org/your-repo/pull/42 이 PR을 다음 관점에서 리뷰해줘:
1. 버그나 논리 오류가 있는지
2. 보안 취약점이 있는지
3. 코드 스타일과 가독성
4. 성능 문제
5. 테스트 커버리지

특정 언어/프레임워크 강조:

https://github.com/your-org/your-repo/pull/42 이 PR 리뷰해줘.
TypeScript와 React 관련 부분 특히 주의해서 봐줘.

단계 3: 리뷰 결과 확인 ​

에이전트가 PR을 분석하고 구조화된 리뷰 결과를 반환합니다.

에이전트가 반환하는 일반적인 리뷰 형식:

📋 PR 리뷰 결과

📊 요약: 3개의 파일 변경, +120 -45 라인

✅ 통과:
- 코드 스타일 준수
- 기본 테스트 통과

⚠️ 경고 (2개):
1. [중요] 파일 업로드에서 확장자 검증 누락
   → 파일 확장자를 검증하지 않으면 악성 파일 업로드 가능
   → 해결: 파일 확장자 화이트리스트 추가 권장

2. [경고] 상태 업데이트가 비동기적으로 예상되는 곳에 동기 코드 사용
   → useEffect 내에서 setState를 직접 호출하면 무한 루프 가능
   → 해결: useCallback 또는 조건부 렌더링으로 변경

💡 개선 제안:
- 에러 핸들링이 부족함. try-catch로 감싸기 권장
- 주석이 부족한 함수가 2개 있음

단계 4: 피드백 반영 ​

에이전트의 피드백을 바탕으로 코드를 수정합니다.

에이전트에게 수정 요청:

2번 경고를 수정해줘. useEffect 내에서 setState 호출 부분을
useCallback으로 감싸서 해결해봐.

다시 리뷰 요청:

수정 완료했어. https://github.com/your-org/your-repo/pull/43
다시 리뷰해줘.

💡 예시 프롬프트 모음 ​

용도프롬프트
기본 리뷰https://github.com/.../pull/42 코드 리뷰해줘
중점 리뷰이 PR에서 보안과 성능만 집중적으로 리뷰해줘
리뷰 요약이 PR 리뷰 결과를 한글로 요약해줘
수정 요청1번 경고 항목을 수정하는 코드로 제안해줘
비교 리뷰이 PR과 #38 PR의 변경 사항을 비교해줘

⚙️ 설정 팁 ​

에이전트 역할 지정 ​

코드 리뷰에 특화된 에이전트를 만들려면:

  1. 사이드바 Assistants에서 새 에이전트 생성
  2. 시스템 프롬프트에 역할 정의:
    당신은 시니어 소프트웨어 엔지니어입니다.
    코드 리뷰 전문가로서 버그, 보안, 스타일, 성능 문제를 찾아냅니다.
  3. 필요한 도구 활성화: 브라우저(GitHub 접근), 터미널

리뷰 체크리스트 커스터마이징 ​

에이전트에게 프로젝트별 리뷰 기준을 전달하세요:

이 프로젝트의 코드 리뷰 시 다음을 확인해줘:
- ESLint 규칙 준수 여부
- 테스트 파일 병존 여부
- PropTypes 또는 TypeScript 타입 명시
- 에러 핸들링 포함 여부

🔗 관련 문서 ​


다음에 해볼 만한 것 ​

항목설명난이도
리뷰 에이전트 생성코드 리뷰 특화 에이전트 설정⭐⭐
리뷰 플레이북 만들기리뷰 워크플로우를 플레이북으로 저장⭐⭐⭐
자동 리뷰 설정PR 생성 시 자동으로 리뷰 요청하도록 예약⭐⭐⭐
팀 리뷰 기준 공유프로젝트별 리뷰 체크리스트 문서화⭐⭐
PR 비교 분석여러 PR의 변경량을 비교 분석⭐⭐
리팩토링 제안리뷰 후 리팩토링 계획 수립 요청⭐⭐⭐

Released under the MIT License.