Skip to main content

GitHub PR 리뷰 요약

요약: GitHub MCP 에 연결된 에이전트가 저장소의 PR 을 조회하고 LLM 리뷰·요약·이슈 트리아지·일일 보고를 자동 생성합니다. 단순 PR 요약뿐 아니라 코드 품질 점검·보안 스캔·릴리스 노트·이슈 우선순위까지 광범위하게 활용 가능.

구성 개요

GitHub Repository
   PRs · Issues · Commits · Releases · Code


   GitHub MCP (26 tools)


   Agent (LLM + Tool Call)
   ├─ 변경 diff 분석
   ├─ 영향 범위 추정
   ├─ 코드 품질·보안 점검
   ├─ 인라인 코멘트 작성
   └─ 일일/주간 보고 생성


   Slack / Confluence / 인보이스 / 릴리스 노트

활용 시나리오

시나리오트리거출력
PR 자동 1차 리뷰PR 오픈 시변경 요약 + 잠재 이슈 코멘트
일일 리뷰 보고매일 18:00오늘 머지/오픈된 PR 요약 → Slack
주간 코드 활동 보고매주 월 09:00기여자별 PR/리뷰 통계 + 핫스팟 파일
보안 스캔PR 오픈 시시크릿·취약 패턴(SQL injection 등) 탐지
릴리스 노트 자동 생성태그 push 시마지막 릴리스 이후 PR/커밋 → CHANGELOG.md
이슈 트리아지신규 이슈 등록 시라벨 자동 추천·중복 이슈 검색·담당자 제안
Stale PR 알림매일1주 이상 리뷰 정체된 PR 리뷰어 멘션
장애 회고사후장애 시점 ±N일 머지 PR 자동 추출 → 원인 후보
신규 기여자 온보딩첫 PR 시컨벤션 안내·관련 문서 링크 자동 코멘트
의존성 변경 감지PR 의 lockfile 변경신규/업그레이드 패키지 + CVE 조회

요구 사항

항목설정
GitHub MCPTool Management → GitHub 템플릿 — PAT 입력
PAT 권한최소: repo:read, pull_request:read/write(코멘트 시), issues:read/write
에이전트GitHub MCP + 적절한 LLM 연결
모델코드 이해 강한 모델: claude-opus-4.5 권장 (Billing)
(선택) Slack MCP보고 발행용
(선택) Scheduler정기 보고용

GitHub MCP 주요 도구 (26 tools)

카테고리대표 도구용도
PRlist_pull_requests, get_pull_request, get_pull_request_diff, add_pr_commentPR 조회·diff·코멘트
이슈list_issues, create_issue, add_issue_comment, update_issue이슈 관리
커밋list_commits, get_commit커밋 이력
코드 검색search_code, get_file_contents저장소 검색·파일 조회
릴리스list_releases, create_release릴리스 노트
Workflowlist_workflow_runs, get_workflow_runCI/CD 결과
상세 도구 목록: GitHub 템플릿

단계

1

GitHub PAT 발급

GitHub → Settings → Developer settings → Personal access tokens → Fine-grained token 권장.
  • Repository access: 대상 리포만 선택
  • Permissions:
    • Contents: Read
    • Pull requests: Read (또는 코멘트 시 Read & Write)
    • Issues: Read (또는 R/W)
    • Metadata: Read
  • 만료일 설정 + 캘린더 등록 (만료 시 도구 침묵 실패)
2

GitHub MCP 등록

Tool Management → GitHub 템플릿:
  • GITHUB_PERSONAL_ACCESS_TOKEN 환경변수에 PAT 입력
  • 접근 권한: 보통 Private 으로 등록 (특정 에이전트만 사용)
3

에이전트 구성

  • Endpoints: claude-opus-4.5 또는 gpt-5.2 (코드 이해)
  • Tools: GitHub + (옵션) Slack
  • System Prompt: 코드 리뷰 톤·관점·금칙 명시
4

단발 리뷰 (대화 모드)

owner/repo 의 PR #123 을 리뷰해줘. 변경된 파일별로 요약하고, 잠재 버그·보안 이슈·테스트 누락이 있는지 점검한 뒤 마크다운으로 정리해줘.
에이전트가:
  1. get_pull_request(123) 으로 메타 조회
  2. get_pull_request_diff(123) 으로 diff 가져오기
  3. LLM 분석 → 요약 + 이슈 목록
  4. 필요 시 add_pr_comment 로 PR 에 직접 코멘트
5

Flow + Scheduler 로 정기 보고

Flow Studio 에 저장:
  • 노드 1: list_pull_requests(state=open|merged, since=yesterday)
  • 노드 2: 각 PR get_pull_request_diff 병렬 조회
  • 노드 3: LLM 요약 (PR 별 1단락)
  • 노드 4: Slack 채널 #dev-daily 로 마크다운 전송
Scheduler 에서 0 18 * * MON-FRI (평일 18:00).
6

Webhook 트리거 (선택)

GitHub Webhook → 사내 Webhook 수신 → 에이전트 호출:
  • pull_request.opened → 즉시 1차 리뷰 코멘트
  • release.published → 릴리스 노트 자동 생성
  • issues.opened → 라벨 추천·중복 검색

프롬프트 템플릿

단일 PR 리뷰

{owner}/{repo} 의 PR #{번호} 를 다음 관점에서 리뷰해줘:

1. 변경 요약 (3문장)
2. 영향 범위 (어떤 모듈·기능)
3. 잠재 버그 (null 처리·경계값·동시성)
4. 보안 (시크릿 노출·SQL/XSS·권한)
5. 테스트 (신규/수정 테스트 충분성)
6. 가독성·네이밍·중복

각 항목은 **🟢/🟡/🔴 등급**과 함께,
근거를 파일:라인 형태로 인용해줘.

마지막에 PR 코멘트로 등록할 마크다운 1개를 제안해줘
(코드 전체 재작성 금지, 핵심 수정 제안만).

일일 보고

오늘({날짜}) {owner}/{repo} 에서:
- 머지된 PR 목록과 각 PR 한 줄 요약
- 새로 오픈된 PR + 리뷰 대기 시간
- Stale PR (3일 이상 정체) + 리뷰어 멘션

Slack 마크다운으로 정리해줘. 각 PR 은 링크 포함.

릴리스 노트

{owner}/{repo} 의 마지막 릴리스 v{prev} 이후 머지된 PR 을 분석하고,
다음 형식의 CHANGELOG 를 만들어줘:

## v{new} - {date}

### ✨ 새 기능
### 🐛 버그 수정
### ⚠️ 변경 사항 (Breaking)
### 📝 문서·기타

각 항목은 PR 번호·제목·기여자 포함.

보안 스캔

PR #{번호} 의 변경 코드에서 다음을 점검해줘:
1. 하드코딩된 시크릿(API 키·비밀번호·토큰) — regex + entropy
2. SQL injection 취약 패턴 (raw SQL + 사용자 입력)
3. XSS (innerHTML · dangerouslySetInnerHTML)
4. 권한 우회 (관리자 체크 누락)
5. 의존성 추가 시 라이선스·CVE

발견 사항은 심각도(Critical/High/Medium/Low) 와
파일:라인, 수정 제안 코드 스니펫 포함.

이슈 트리아지

신규 이슈 #{번호} 를 분석해서:
1. 라벨 추천 (bug/feature/docs/...)
2. 우선순위 추정 (P0~P3)
3. 유사 기존 이슈 3개 검색 (중복 가능성)
4. 담당 가능한 팀/사람 제안 (CODEOWNERS 기준)

결과는 issue 코멘트로 게시 가능한 마크다운으로.

변형·응용

  • CODEOWNERS 자동 멘션 — 변경 파일별 담당자 자동 호출
  • 다국어 PR 요약 — 한/영 동시 요약 → 글로벌 팀
  • CI 실패 분석get_workflow_run + 로그 → 실패 원인 추정
  • 장애 회고용 PR 추출 — 장애 시점 기준 ±2일 머지 PR + 영향 모듈 목록
  • Confluence 자동 발행 — 주간 보고를 Confluence 페이지로 자동 게시 (Atlassian MCP)
  • PR 통계 대시보드 — 결과를 PostgreSQL 적재 후 BI (PostgreSQL 자동화)

주의 사항

  • PAT 최소 권한repo: write 같은 광범위 권한 금지. 코멘트만 필요하면 pull_request: write 로 제한.
  • 자동 머지 금지 — 에이전트가 PR 을 자동 머지·승인하도록 두면 코드 사고 위험. 항상 사람 검수 단계 필수.
  • 할루시네이션 — LLM 이 존재하지 않는 함수·파일을 인용할 수 있음. 중요한 코멘트 전 사람 확인.
  • 시크릿 노출 — diff 에 포함된 시크릿이 LLM 프롬프트에 들어감. 시크릿 마스킹 전처리 또는 시크릿 발견 시 즉시 GitHub 에 알림 + 키 회전.
  • Rate Limit — GitHub API 시간당 한도. 대규모 저장소 일일 보고 시 ETag 캐시·페이지네이션 활용.
  • 비용 — 큰 diff (수천 줄) 를 분석하면 토큰 비용 급증. 파일 단위 분리·중요 변경 우선 분석. 한도·요금은 Billing 참고.
Tool 호출 실패 시 — PAT 만료, 권한 부족, Rate Limit 가 가장 흔한 원인. Tool 상세 에서 호출 로그 확인.

관련 레시피