AI Review
요약
AI Review는 AI 기반 코드 리뷰를 개발자 워크플로우에 직접 통합하는 도구입니다. 이 도구는 여러 LLM 제공업체(OpenAI, Claude 등)를 지원하며, GitHub, GitLab 등 주요 VCS와 연동하여 코드 품질 개선과 리뷰 프로세스 가속화에 도움을 줍니다.
핵심 포인트
- 다양한 LLM 공급자 선택 가능 (OpenAI, Claude, Gemini 등)
- GitHub, GitLab 등 주요 VCS에 통합되어 사용 가능
- 코드 품질 향상 및 일관성 강제에 기여하는 개발 도구
AI Review
<p align="center"> <img src="https://raw.githubusercontent.com/Nikita-Filonov/ai-review/HEAD/docs/assets/logo.png" alt="Axiom logo" width="220" /> </p>AI 기반 코드 리뷰 도구.
Made with ❤️ by @NikitaFilonov
❤️ AI Review 지원하기
AI Review가 풀 리퀘스트(pull requests)의 노이즈를 줄이고 코드 리뷰 시간을 절약하는 데 도움이 되었다면, 개발을 후원해 주시길 고려해 주세요.
후원은 다음 활동에 도움이 됩니다:
- 리뷰 정확도 향상 및 오탐지율 감소
- 통합 기능 확장 (GitHub, GitLab, Azure DevOps 등)
- 새로운 기능 개발 및 프로젝트 유지보수
📑 목차
- ✨ About
- 🧪 Live Preview
- 🚀 Quick Start
- ⚙️ CI/CD 통합
- 📘 문서(Documentation)
- ⚠️ 개인 정보 및 책임 고지(Privacy & Responsibility Notice)
✨ About
AI Review는 AI 기반 코드 리뷰를 개발자의 워크플로우에 직접 가져오는 개발자 도구입니다. 이 도구는 팀이 코드 품질을 개선하고, 일관성을 강제하며, 리뷰 프로세스를 가속화하는 데 도움을 줍니다.
✨ 주요 기능:
- 다중 LLM 제공업체 (Multiple LLM providers) — OpenAI, Claude, Gemini, Ollama, Bedrock, OpenRouter 또는 Azure OpenAI 중 선택하고 언제든지 전환할 수 있습니다.
- VCS 통합 (VCS integration) — GitLab, GitHub, Bitbucket Cloud, Bitbucket Server, Azure DevOps 및 Gitea와 기본적으로 작동합니다.
- 사용자 정의 프롬프트 (Customizable prompts) — 팀의 코딩 가이드라인에 맞춰 인라인(inline), 컨텍스트(context), 요약 리뷰를 조정할 수 있습니다.
- 에이전트 모드 (Agent mode) — 모델이 최종 리뷰를 생성하기 전에 셸 명령(
ls,cat,rg,git)을 사용하여 **저장소 탐색(explore the repository)**하는 반복적인 ReAct 스타일 루프입니다. 이는 단일 호출보다 더 깊은 컨텍스트를 제공합니다. - 답변 모드 (Reply modes) — AI가 이제 인라인 및 요약 토론 모두에서 후속 답변을 추가하며 기존 리뷰 스레일에 참여할 수 있습니다.
- 유연한 구성 (Flexible configuration) — CI/CD 파이프라인에서 YAML, JSON, ENV를 지원하며 원활하게 재정의(overrides)됩니다.
- AI Review는 완전히 클라이언트 측에서 실행됨 — 요청을 프록시하거나 검사하지 않습니다.
AI Review는 CI/CD 파이프라인에서 자동으로 실행되어 인라인 댓글, 요약 리뷰, 그리고 이제 AI가 생성한 답변을 병합 요청(merge requests) 내부에 직접 게시합니다. 에이전트 모드가 활성화되면, 모델은 검토하기 전에 코드베이스를 자율적으로 탐색할 수 있어 더욱 정확하고 컨텍스트를 인식하는 피드백을 제공합니다. 이는 리뷰를 더 빠르고, 대화적이며, 여전히 인간의 통제 하에 있게 만듭니다.
🧪 실시간 미리보기 (Live Preview)
AI Review가 실제로 어떻게 작동하는지 궁금하신가요? 여기 도구에 의해 완전히 검토된 세 가지 실제 풀 리퀘스트(Pull Requests)를 모드별로 하나씩 보여드립니다:
| Mode | 설명 | 🐙 GitHub | 🦊 GitLab | 🪣 Bitbucket |
|---|---|---|---|---|
| 🧩 Inline | 라인별 주석을 diff에 직접 추가합니다. 특정 코드 변경 사항에 초점을 맞춥니다. | GitHub에서 보기 | GitLab에서 보기 | Bitbucket에서 보기 |
| ... | ||||
| 👉 각 리뷰는 해당 모드를 사용하여 GitHub Actions를 통해 자동으로 생성되었습니다: |
ai-review run-inline
ai-review run-summary
ai-review run-context
...
🚀 빠른 시작 (Quick Start)
pip로 설치합니다:
pip install xai-review
📦 PyPI에서 이용 가능
또는 Docker를 통해 직접 실행합니다:
docker run --rm -v $(pwd):/app nikitafilonov/ai-review:latest ai-review run-summary
🐳 DockerHub에서 가져오기
👉 실행하기 전에, 프로젝트 루트에 기본적인 설정 파일 .ai-review.yaml을 생성합니다:
llm:
provider: OPENAI
...
👉 이렇게 하면 다음이 수행됩니다:
- 코드베이스에 대해 AI Review를 실행합니다.
- 인라인(inline) 및/또는 요약(summary) 주석을 생성합니다 (선택한 모드에 따라 다름).
- 사용하려는 LLM 제공업체(예시에서는 OpenAI GPT-4o-mini)를 사용합니다.
참고:
ai-review run을 실행하면 전체 검토(인라인 + 요약)가 수행됩니다.
하나의 모드만 실행하려면 전용 하위 명령어를 사용하세요:
- ai-review run-inline
- ai-review run-context
- ai-review run-summary
- ai-review run-inline-reply
- ai-review run-summary-reply
AI Review는 .ai-review.yaml, .ai-review.json, 또는 .env를 통해 구성할 수 있습니다. 완전하고 바로 사용할 수 있는 예시는 ./docs/configs를 참조하세요.
사용자 지정 가능한 주요 항목:
- LLM 제공업체 — OpenAI, Gemini, Claude, Ollama, Bedrock, OpenRouter, 또는 Azure OpenAI
- 모델 설정 — 모델 이름, 온도(temperature), 최대 토큰(max tokens)
- VCS 통합 — GitLab, GitHub, Bitbucket Cloud, Bitbucket Server, Azure DevOps, 및 Gitea와 기본적으로 작동합니다.
- 에이전트 모드 (Agent mode) — 검토 전에 반복적인 저장소 탐색을 활성화합니다.
- 검토 정책 (Review policy) — 포함/제외할 파일, 검토 모드
- 프롬프트 (Prompts) — 인라인/컨텍스트/요약/에이전트 프롬프트 템플릿
👉 시작하기에는 최소한의 구성만으로 충분합니다. 세밀한 제어(시간 초과, 아티팩트, 로깅 등)를 원한다면 전체 참조 설정을 사용하세요.
⚙️ CI/CD 통합
AI Review는 주요 CI 제공업체와 기본적으로 작동합니다. Pull/Merge Request에 대해 AI Review를 자동으로 실행하려면 다음 스니펫을 사용하세요. 각 통합은 LLM 및 VCS 구성을 위해 환경 변수를 사용합니다.
전체 구성 세부 정보(시간 초과, 아티팩트, 로깅, 프롬프트 재정의)는 ./docs/configs를 참조하세요.
🚀 GitHub Actions
다음과 같은 워크플로우를 추가하세요 ( Actions 탭에서 수동 트리거):
name: AI Review
on:
...
🔗 전체 예시: ./docs/ci/github.yaml
🚀 GitLab CI/CD
GitLab 사용자를 위한 내용:
ai-review:
stage: review
image: nikitafilonov/ai-review:latest
...
🔗 전체 예시: ./docs/ci/gitlab.yaml
📘 문서 (Documentation)
참고용 템플릿 및 전체 구성 옵션은 다음 폴더를 참조하세요:
- ./docs/ci — CI/CD 통합 템플릿 (GitHub Actions, GitLab CI, Bitbucket Pipelines, Jenkins)
- ./docs/cli — CLI 명령어 참고 및 사용 예시
- ./docs/hooks — 훅(hook) 참고 및 라이프사이클 이벤트
- ./docs/configs — 전체 구성 예시 (
.yaml,.json,.env) - ./docs/prompts — Python/Go용 프롬프트 템플릿 (light & strict 모드)
- ./docs/troubleshooting.md — 일반적인 환경 및 Git 관련 문제
⚠️ 개인정보 보호 및 책임 고지 (Privacy & Responsibility Notice)
AI Review는 귀하의 소스 코드를 .ai-review.yaml에 명시적으로 구성된 LLM 제공업체를 제외하고 어떠한 외부 서비스에도 저장, 로깅 또는 전송하지 않습니다.
모든 데이터는 CI/CD 환경에서 선택된 LLM API 엔드포인트(예: OpenAI, Gemini, Claude, OpenRouter)로 직접 전송됩니다. 중간 서버나 저장 계층은 관여하지 않습니다.
Ollama를 사용하는 경우, 요청은 귀하의 로컬 또는 셀프 호스팅 Ollama 런타임 (기본값 http://localhost:11434)으로 전송됩니다. 이를 통해 모든 데이터를 인프라 내에 엄격하게 유지하며 검토를 완전히 오프라인으로 실행할 수 있습니다.
⚠️ 적절한 API 토큰을 사용하고 기업 또는 개인 비밀 정보를 노출하는 것을 방지하십시오.
잘못된 구성(예: 엔터프라이즈 키 대신 개인 키 사용)으로 인해 실수로 비공개 코드나 자격 증명을 유출할 경우, 이는 사용자의 책임입니다. 도구 자체는 어떠한 데이터도 보관하거나 공유하지 않습니다.
🧠 AI Review — 오픈 소스 AI 기반 코드 리뷰어
AI 자동 생성 콘텐츠
본 콘텐츠는 GitHub Codex tools의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기