피드로 돌아가기
Running Claude in CI: A GitHub Actions + Claude Code SDK Auto-PR-Reviewer That Costs $0.03 per Review
Dev.toDev.to
DevOps

Unified Diff 기반 설계로 PR 리뷰 비용을 $0.03까지 절감한 AI 자동화

Running Claude in CI: A GitHub Actions + Claude Code SDK Auto-PR-Reviewer That Costs $0.03 per Review

スシロー2026년 6월 2일10intermediate

Context

전체 리포지토리를 LLM에 전달하는 기존 방식의 높은 Token 소비와 컨텍스트 노이즈로 인한 비용 효율성 저하 발생. 불필요한 코드 분석으로 인한 리뷰 정확도 하락 및 API 비용 급증 문제를 해결할 필요성 대두.

Technical Solution

  • Full File 대신 Unified Diff(3 lines context)를 추출하여 Input Token 크기를 5~15배 감소시킨 최적화 설계
  • tool_choice를 통한 JSON Array 강제 출력 구조로 LLM의 산문형 응답을 배제하고 정밀한 Inline Comment 매핑 구현
  • fetch-depth: 0 설정을 통한 Merge Base 확보로 정확한 Diff 산출 및 얕은 복제(Shallow Clone) 이슈 해결
  • pull-requests: write 권한 부여 및 Bot 계정 필터링 로직을 통한 무한 루프(Infinite Loop) 방지 가드레일 구축
  • claude-haiku-4-5 모델 채택을 통해 성능과 비용의 Trade-off를 최적화하여 리뷰 당 비용 최소화

1. LLM Input 설계 시 Full File 대신 Unified Diff 적용 검토

2. 정규식 파싱 대신 Tool Use/JSON Mode를 통한 스키마 강제

3. CI 환경에서 Merge Base 확보를 위한 fetch-depth 설정 확인

4. 자동화 봇의 Commit이 다시 Workflow를 트리거하는 무한 루프 방지 로직 구현

원문 읽기