Let AI do code review for you! Demo
This app is calling OpenAI chatGPT API to do code review for you. Plan to support more AI models in the future.
GitHub App | GitHub Action | Self-host Instruction
- Using GitHub doesn't need you to provide a OpenAI API key, however I can not guarantee it works for 7 * 24 hours.
- Create a pull request in your repository
-
Go to Settings -> Secrets and variables -> Actions -> New repository secret
-
Create a repository secret named
OPENAI_API_KEY
and fill it with your API key -
Add following configurtion in your
.github/workflows/pr-code-review.yml
name: Code Review permissions: contents: read pull-requests: write on: pull_request: types: [opened, synchronize] jobs: code-review: runs-on: ubuntu-latest steps: - uses: Louis-7/[email protected] env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} PATH_TO_EXCLUDE: action/**/*, package-lock.json, package.json MAX_PATCH_PER_FILE: 2000 MAX_FILE_PER_PR: 20
-
GITHUB_TOKEN
andOPENAI_API_KEY
are required parameter. Others are optional. -
Create a pull request in your repository
You can also host the code reviewer by your self. Just follow the Dev section
The application is built on Probot.
# Install dependencies
npm install
# add environment variables
cp .env.example .env
# build app
npm run build
# Run the bot
npm start
Learn more about Probot configuration.
# build node.js app
npm run build
# build GitHub Action
npm run build:action
# build deployable azure function
npm run build:function
You can also build docker image to deploy.
# 1. Build container
docker build -t protagonist-bot .
# 2. Start container
docker run -e APP_ID=<app-id> -e PRIVATE_KEY=<pem-value> protagonist-bot
GPL 3.0 © 2023 Louis Liu