AI 뉴스

CodeRabbit 유료 PR 리뷰를 GitHub Actions + Gemma로 무료 대체하기

노동1호 2026. 5. 20. 00:04

GemmaCI — GitHub Actions에서 Gemma 모델로 PR을 리뷰하는 도구


CodeRabbit 유료 PR 리뷰를 GitHub Actions + Gemma로 무료 대체하기

CodeRabbit은 개발자 사이에서 널리 쓰이는 AI PR 리뷰 도구입니다. 하지만 private 저장소에서 본격적인 PR 리뷰 기능을 쓰려면 월 30달러의 Pro 플랜이 필요합니다. 소규모 팀이나 개인 사이드프로젝트에는 부담스러운 가격입니다.

GemmaCI는 이 문제를 해결하는 오픈소스 프로젝트입니다. GitHub Actions 안에서 Ollama와 Gemma 모델을 실행해서 PR diff를 자동으로 리뷰하는 도구입니다. workflow 파일 하나만 추가하면 됩니다.

CodeRabbit의 비용 문제

CodeRabbit 요금제는 크게 세 가지로 나뉩니다.

플랜가격주요 기능
Free무료PR 요약만 제공
Pro월 30달러 (월결제)PR 리뷰, inline 코멘트
Enterprise별도 문의팀 통합, 고급 기능

Free 플랜에서는 정작 개발자에게 유용한 inline review comment 기능이 제공되지 않습니다. 핵심 리뷰 기능을 쓰려면 Pro 이상을 써야 하고, 연간 결제해도 월 24달러가 부과됩니다. 작은 팀이나 학생 프로젝트에는 높습니다.

GemmaCI는 어떻게 동작하나요

GemmaCI는 GitHub Actions의 세 가지 job으로 구성됩니다.

prepare → review → publish

prepare 단계에서는 trusted base branch의 reviewer code만 checkout합니다. PR 작성자가 포함한 workflow나 script는 실행하지 않습니다. binary 파일, lockfile, vendor 디렉터리는 필터링하고, PR diff를 데이터로만 취급합니다.

review 단계에서는 pinned SHA-256으로 Ollama를 설치한 뒤 gemma3:1b 모델을 실행합니다. diff chunk를 입력으로 받아 모델 출력을 schema 검증합니다. 이 과정에서 evidence, confidence, recommendation 기반의 리뷰 결과를 생성합니다.

publish 단계에서는 검증된 리뷰 결과를 GitHub PR에 게시합니다. PR summary comment를 생성하거나 갱신하고, 실제 변경된 라인에 대해서만 inline comment를 작성합니다. critical 또는 high severity finding이 감지되면 GitHub Actions check를 실패시켜 CI 레벨에서 문제를 차단합니다.

보안 모델이 중요한 이유

단순히 LLM에게 diff를 던져서 댓글을 달게 하는 것은 위험합니다. 모델 출력이 잘못되었을 때, 또는 PR 작성자가 악의적으로 리뷰 workflow를 조작했을 때 문제가 생길 수 있습니다.

GemmaCI는 이 문제를 심각하게 받아들입니다. PR에서 온 모든 데이터를 신뢰하지 않는 보안 모델을 채택했습니다.

PR diff → 실행하지 않고 데이터로만 취급모델 출력 → schema 검증 전까지 hostile data로 취급artifact (review-input.json, review-output.json) → hostile input으로 재검증publish job → trusted base branch code만 실행

특히 pull_request_target은 사용하지 않습니다. PR 작성자가 바꾼 workflow나 script가 write 권한으로 실행되는 위험을 원천 차단합니다.

실제 GitHub-hosted runner에서 smoke PR을 열어 테스트한 결과도 확인되었습니다. 테스트 PR에 일부러 unsafeDivide 함수를 넣었더니, GemmaCI가 "0 나눗셈 검증 누락"을 high severity finding으로 감지하고 inline comment를 남겼습니다.

설치 방법

workflow 파일 하나만 추가하면 됩니다. 사용하려는 저장소에 .github/workflows/gemma-review.yml 파일을 만들고 아래 내용을 붙여넣으면 됩니다.

name: Gemma Reviewon:pull_request:types: [opened, reopened, synchronize, ready_for_review]permissions: {}jobs:gemma-review:uses: bssm-oss/gemmaci/.github/workflows/gemma-review.yml@mainwith:model: gemma3:1blanguage: komax-inline-comments: 20min-confidence: '0.6'

이후 PR을 열면 GitHub Actions가 자동으로 실행됩니다. 별도 npm 설치나 서버 준비가 필요 없습니다.

운영 저장소에서는 릴리즈 태그를 만든 뒤 @v1 버전으로 고정하는 것이 좋습니다.

주요 설정 변수

변수기본값설명
GEMMA_REVIEW_MODELgemma3:1bOllama 모델
GEMMA_REVIEW_LANGUAGEko리뷰 출력 언어
GEMMA_REVIEW_MAX_INLINE_COMMENTS20최대 inline comment 수
GEMMA_REVIEW_MIN_CONFIDENCE0.6최소 confidence 임계값
GEMMA_REVIEW_FAIL_ON_SEVERITYcritical,highcheck 실패 조건

초기에는 기본 설정 그대로 쓰는 것을 권장합니다. 더 조용하게 쓰고 싶으면 min-confidence를 0.7 이상으로 올리고, 더 많은 코멘트를 받고 싶으면 max-inline-comments를 늘리면 됩니다.

한계와 현실적인 기대

GemmaCI는 CodeRabbit을 1:1로 완전히 대체하는 수준은 아닙니다. 큰 모델을 쓰는 SaaS 리뷰어만큼의 품질이나 통합 기능을 기대하면 안 됩니다.

현재 검증된 기능은 다음과 같습니다.

• GitHub-hosted runner에서 workflow 실행

• Ollama 설치 및 Gemma 모델 리뷰 job 실행

• PR summary comment 게시

• 변경 라인 inline comment 게시

• high severity finding 감지 시 check 실패 처리

아직 지원하지 않는 기능도 있습니다. CodeRabbit의 전체 UI 통합, 복잡한 코드베이스 분석, 다국어 리뷰 등은 제한적입니다. 목표가 명확합니다. "돈 내기 애매한 작은 repo에서도, workflow 파일 하나로 무료 AI PR 리뷰를 붙일 수 있게 하자."

정리

GemmaCI는 CodeRabbit의 핵심 기능을 무료로 대체할 수 있는 실용적인 솔루션입니다. 보안 모델이 탄탄하고, 설치가 매우 간단하며, GitHub Actions 환경에서 바로 동작합니다.

브라우저에서 수동으로 코드를 확인하던 시절이 있었죠. CodeRabbit Pro 없이도 automated code review를 팀에 적용할 수 있는 시대가 온 것입니다.

핵심 요약:

• CodeRabbit Pro 월 30달러 → GemmaCI 무료

• workflow 파일 하나만 추가하면 끝

• PR summary + inline comment + CI check 실패 처리

• PR에서 온 모든 데이터를 신뢰하지 않는 보안 모델

• GitHub Actions에서 바로 실행

작은 팀이나 개인 프로젝트에서 코드리뷰를해보고 싶다면, GemmaCI를 한번 도입해 보는 것은 어떨까요?


📚 출처

GemmaCI GitHub 저장소

GeekNews: CodeRabbit 유료 PR 리뷰를 GitHub Actions + Gemma로 무료 대체


📚 출처

https://news.hada.io/topic?id=29618