mattzcarey / code-review-gpt

Code review powered by LLMs (OpenAI GPT4, Sonnet 3.5) & Embeddings ⚑️ Improve code quality and catch bugs before you break production πŸš€ Lives in your Github/GitLab/Azure DevOps CI
https://oriontools.ai
MIT License
1.55k stars 153 forks source link
azure azure-devops chatgpt ci code-analysis code-quality code-review github gpt-3 gpt-4-turbo gpt4 huggingface langchain langchain-typescript llm llms openai opensource

Code Review GPT

NPM Contributors Pulse License Twitter

We give engineers their weekends back

Code Review GPT uses Large Language Models to review code in your CI/CD pipeline. It helps streamline the code review process by providing feedback on code that may have issues or areas for improvement.

It should pick up on common issues such as:

It can also be run locally in your command line to review staged files.

Code Review GPT is in alpha and should be used for fun only. It may provide useful feedback but please check any suggestions thoroughly.

Demo

https://github.com/mattzcarey/code-review-gpt/assets/77928207/92029baf-f691-465f-8d15-e1363fcb808e

Package Usage

See the package documentation for more information.

Action Usage

See the action documentation for more information.

Getting Started πŸ’«

  1. Clone the repository:

    git clone https://github.com/mattzcarey/code-review-gpt.git
    cd code-review-gpt && cd packages/code-review-gpt
  2. Install dependencies:

    npm install
  3. Set up the API key:

    • Rename the .env.example file to .env.
    • Open the .env file and replace YOUR_API_KEY with your actual OPENAI API key.

When used globally you should run export OPENAI_API_KEY=YOUR_API_KEY (or similar for your operating system) in your terminal to set the API key.

  1. Run the application:

    npm start

See the package.json file for all the npm commands you can run.

  1. Make a PR πŸŽ‰

We use release-please on this project. If you want to create a new release from your PR, please make sure your PR title follows the Conventional Commits format. The release-please bot will automatically create a new release for you when your PR is merged.

Contributors πŸ™

Thanks to our wonderful contributors!

Roadmap (see projects tab) 🌏

The roadmap shifts the focus to a Github app which can be installed on any repo. This will allow for a more seamless UX and better features including a chatbot to discuss the PR and make suggestions.

The code-review-gpt package will continue to be maintained and improved based on the feedback from the Github app.

Sponsors ❀️

quivr logo

aleios logo

Star History ⭐️

Star History Chart