Gemini 1.5 Flash의 무료 API를 활용하여 GitHub Pull Request에 자동으로 코드 리뷰를 수행하는 토이 프로젝트입니다.
- GitHub Webhook을 통한 실시간 PR 감지
- Gemini 1.5 Flash AI를 활용한 자동 코드 분석
- GitHub API를 통한 자동 리뷰 코멘트 생성
GitHub webhook은 인터넷에서 접근 가능한 도메인이 필요하므로 ngrok를 사용합니다.
- ngrok 공식 사이트에서 가입 후 API 키 발급
- Docker를 이용한 ngrok 실행:
docker run -it -e NGROK_AUTHTOKEN={api-key} -p 4040:4040 --network host ngrok/ngrok:latest http host.docker.internal:8080 --log=stdout- GitHub Settings → Developer settings → Fine-grained tokens → Generate New Token
- Repository permissions에서 Contents, Pull Requests read & write 권한 추가
- Repository settings → Webhooks에서 ngrok URL을 payload URL로 설정
Google AI Studio 에서 Gemini API 키를 발급받습니다.
- 프로젝트를 클론하고 설정 파일에 API 키들을 입력
- MySQL 데이터베이스 실행
- ngrok를 통해 로컬 서버를 외부에 노출
- GitHub 저장소에 Webhook 설정
- Pull Request 생성 시 자동으로 AI 코드 리뷰 수행