LLM-agnostic GitHub AI Code Review Tool with integration to GitHub actions
Project description
🤖 AI Code Review Tool
An AI-powered GitHub code review tool that uses LLMs to detect high-confidence, high-impact issues—such as security vulnerabilities, bugs, and maintainability concerns.
✨ Features
- Automatically reviews pull requests via GitHub Actions
- Focuses on critical issues (e.g., bugs, security risks, design flaws)
- Posts review results as a comment on your PR
- Can be used locally; works with both local and remote Git repositories
- Optional, fun AI-generated code awards 🏆
- Easily configurable via
.ai-code-review.tomlin your repository root - Extremely fast, parallel LLM usage
- Model-agnostic (OpenAI, Anthropic, Google, local PyTorch inference, etc.)
See code review in action: example
🚀 Quickstart
1. Review Pull Requests via GitHub Actions
Create a .github/workflows/ai-code-review.yml file:
name: AI Code Review
on: { pull_request: { types: [opened, synchronize, reopened] } }
jobs:
review:
runs-on: ubuntu-latest
permissions: { contents: read, pull-requests: write } # 'write' for leaving the summary comment
steps:
- uses: actions/checkout@v4
with: { fetch-depth: 0 }
- name: Set up Python
uses: actions/setup-python@v5
with: { python-version: "3.13" }
- name: Install AI Code Review tool
run: pip install ai-code-review==0.4.1
- name: Run AI code review
env:
LLM_API_KEY: ${{ secrets.LLM_API_KEY }}
LLM_API_TYPE: openai
MODEL: "gpt-4.1"
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
ai-code-review
ai-code-review github-comment --token ${{ secrets.GITHUB_TOKEN }}
- uses: actions/upload-artifact@v4
with:
name: ai-code-review-results
path: |
code-review-report.txt
code-review-report.json
⚠️ Make sure to add
LLM_API_KEYto your repository’s GitHub secrets.
💪 Done!
PRs to your repository will now receive AI code reviews automatically. ✨
2. Run Locally
Install and run:
# Prerequisites: Python 3.11+
pip install ai-code-review
# One-time setup using interactive wizard (saves configuration in ~/.env.ai-code-review)
ai-code-review setup
# Run review on committed changes in current branch vs main
ai-code-review
To review a remote repository:
ai-code-review remote --url https://github.com/owner/repo --branch feature-branch
🔧 Configuration
Change behavior via .ai-code-review.toml:
- Prompt templates, filtering and post-processing using Python code snippets
- Tagging, severity, and confidence settings
- Custom AI awards for developer brilliance
- Output customization
You can override the default config by placing .ai-code-review.toml in your repo root.
See default configuration here.
💻 Development Setup
Install dependencies:
make install
Format code and check style:
make black
make cs
Run tests:
pytest
🤝 Contributing
We ❤️ contributions! See CONTRIBUTING.md.
📝 License
Licensed under the MIT License.
© 2025 Vitalii Stepanenko
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ai_cr-0.4.3.tar.gz.
File metadata
- Download URL: ai_cr-0.4.3.tar.gz
- Upload date:
- Size: 14.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
df4b27f9725de6a9057d8d071951407fb7d5eeb081224d20b6a2911398eeb70c
|
|
| MD5 |
78e5bbfcb56328568ff541df06a304c7
|
|
| BLAKE2b-256 |
246502bed8001b880ccb646b713e940f2b004de8fb678c2ad42c9ca502e413e8
|
File details
Details for the file ai_cr-0.4.3-py3-none-any.whl.
File metadata
- Download URL: ai_cr-0.4.3-py3-none-any.whl
- Upload date:
- Size: 17.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
893256c0b998acedc6bd0501bfcef1b05086f03b4e0247d51a2e5e3664b85290
|
|
| MD5 |
051ac72f0a1847576884847900e39433
|
|
| BLAKE2b-256 |
9e42b09025b95a0f4b408287b46fd5d085696996ccbd4e59f8292605289d4bfb
|