Home

Awesome

<div align="center"> <div align="center"> <picture> <source media="(prefers-color-scheme: dark)" srcset="https://codium.ai/images/pr_agent/logo-dark.png" width="330"> <source media="(prefers-color-scheme: light)" srcset="https://codium.ai/images/pr_agent/logo-light.png" width="330"> <img src="https://codium.ai/images/pr_agent/logo-light.png" alt="logo" width="330"> </picture> <br/> Qode Merge PR-Agent aims to help efficiently review and handle pull requests, by providing AI feedback and suggestions </div>

Static Badge Static Badge Static Badge Discord <a href="https://github.com/Codium-ai/pr-agent/commits/main"> <img alt="GitHub" src="https://img.shields.io/github/last-commit/Codium-ai/pr-agent/main?style=for-the-badge" height="20"> </a>

</div>

Documentation

Table of Contents

News and Updates

December 2, 2024

Open-source repositories can now freely use Qodo Merge Pro, and enjoy easy one-click installation using a marketplace app.

<kbd><img src="https://github.com/user-attachments/assets/b0838724-87b9-43b0-ab62-73739a3a855c" width="512"></kbd>

See here for more details about installing Qodo Merge Pro for private repositories.

November 18, 2024

A new mode was enabled by default for code suggestions - --pr_code_suggestions.focus_only_on_problems=true:

Still, if you prefer the previous mode, you can set --pr_code_suggestions.focus_only_on_problems=false in the configuration file.

Example results:

Original mode

<kbd><img src="https://qodo.ai/images/pr_agent/code_suggestions_original_mode.png" width="512"></kbd>

Focused mode

<kbd><img src="https://qodo.ai/images/pr_agent/code_suggestions_focused_mode.png" width="512"></kbd>

November 4, 2024

Qodo Merge PR Agent will now leverage context from Jira or GitHub tickets to enhance the PR Feedback. Read more about this feature here

Overview

<div style="text-align:left;">

Supported commands per platform:

GitHubGitLabBitbucketAzure DevOps
TOOLSReviewโœ…โœ…โœ…โœ…
Describeโœ…โœ…โœ…โœ…
Improveโœ…โœ…โœ…โœ…
Askโœ…โœ…โœ…โœ…
โฎ‘ Ask on code linesโœ…โœ…
Update CHANGELOGโœ…โœ…โœ…โœ…
Ticket Context ๐Ÿ’Žโœ…โœ…โœ…
Utilizing Best Practices ๐Ÿ’Žโœ…โœ…โœ…
PR Chat ๐Ÿ’Žโœ…
Suggestion Tracking ๐Ÿ’Žโœ…โœ…
CI Feedback ๐Ÿ’Žโœ…
PR Documentation ๐Ÿ’Žโœ…โœ…
Custom Labels ๐Ÿ’Žโœ…โœ…
Analyze ๐Ÿ’Žโœ…โœ…
Similar Code ๐Ÿ’Žโœ…
Custom Prompt ๐Ÿ’Žโœ…โœ…โœ…
Test ๐Ÿ’Žโœ…โœ…
USAGECLIโœ…โœ…โœ…โœ…
App / webhookโœ…โœ…โœ…โœ…
Tagging botโœ…
Actionsโœ…โœ…โœ…โœ…
COREPR compressionโœ…โœ…โœ…โœ…
Adaptive and token-aware file patch fittingโœ…โœ…โœ…โœ…
Multiple models supportโœ…โœ…โœ…โœ…
Local and global metadataโœ…โœ…โœ…โœ…
Dynamic contextโœ…โœ…โœ…โœ…
Self reflectionโœ…โœ…โœ…โœ…
Static code analysis ๐Ÿ’Žโœ…โœ…โœ…
Global and wiki configurations ๐Ÿ’Žโœ…โœ…โœ…
PR interactive actions ๐Ÿ’Žโœ…โœ…
Impact Evaluation ๐Ÿ’Žโœ…โœ…

โ€ฃ Auto Description (/describe): Automatically generating PR description - title, type, summary, code walkthrough and labels.
โ€ฃ Auto Review (/review): Adjustable feedback about the PR, possible issues, security concerns, review effort and more.
โ€ฃ Code Suggestions (/improve): Code suggestions for improving the PR.
โ€ฃ Question Answering (/ask ...): Answering free-text questions about the PR.
โ€ฃ Update Changelog (/update_changelog): Automatically updating the CHANGELOG.md file with the PR changes.
โ€ฃ Find Similar Issue (/similar_issue): Automatically retrieves and presents similar issues.
โ€ฃ Add Documentation ๐Ÿ’Ž (/add_docs): Generates documentation to methods/functions/classes that changed in the PR.
โ€ฃ Generate Custom Labels ๐Ÿ’Ž (/generate_labels): Generates custom labels for the PR, based on specific guidelines defined by the user.
โ€ฃ Analyze ๐Ÿ’Ž (/analyze): Identify code components that changed in the PR, and enables to interactively generate tests, docs, and code suggestions for each component.
โ€ฃ Custom Prompt ๐Ÿ’Ž (/custom_prompt): Automatically generates custom suggestions for improving the PR code, based on specific guidelines defined by the user.
โ€ฃ Generate Tests ๐Ÿ’Ž (/test component_name): Generates unit tests for a selected component, based on the PR code changes.
โ€ฃ CI Feedback ๐Ÿ’Ž (/checks ci_job): Automatically generates feedback and analysis for a failed CI job.
โ€ฃ Similar Code ๐Ÿ’Ž (/find_similar_component): Retrieves the most similar code components from inside the organization's codebase, or from open-source code.


Example results

</div> <h4><a href="https://github.com/Codium-ai/pr-agent/pull/530">/describe</a></h4> <div align="center"> <p float="center"> <img src="https://www.codium.ai/images/pr_agent/describe_new_short_main.png" width="512"> </p> </div> <hr> <h4><a href="https://github.com/Codium-ai/pr-agent/pull/732#issuecomment-1975099151">/review</a></h4> <div align="center"> <p float="center"> <kbd> <img src="https://www.codium.ai/images/pr_agent/review_new_short_main.png" width="512"> </kbd> </p> </div> <hr> <h4><a href="https://github.com/Codium-ai/pr-agent/pull/732#issuecomment-1975099159">/improve</a></h4> <div align="center"> <p float="center"> <kbd> <img src="https://www.codium.ai/images/pr_agent/improve_new_short_main.png" width="512"> </kbd> </p> </div> <div align="left"> </div> <hr>

Try it now

Try the GPT-4 powered PR-Agent instantly on your public GitHub repository. Just mention @CodiumAI-Agent and add the desired command in any PR comment. The agent will generate a response based on your command. For example, add a comment to any pull request with the following text:

@CodiumAI-Agent /review

and the agent will respond with a review of your PR.

Note that this is a promotional bot, suitable only for initial experimentation. It does not have 'edit' access to your repo, for example, so it cannot update the PR description or add labels (@CodiumAI-Agent /describe will publish PR description as a comment). In addition, the bot cannot be used on private repositories, as it does not have access to the files there.

Review generation process

To set up your own PR-Agent, see the Installation section below. Note that when you set your own PR-Agent or use CodiumAI hosted PR-Agent, there is no need to mention @CodiumAI-Agent .... Instead, directly start with the command, e.g., /ask ....


PR-Agent Pro ๐Ÿ’Ž

PR-Agent Pro is a hosted version of PR-Agent, provided by CodiumAI. It is available for a monthly fee, and provides the following benefits:

  1. Fully managed - We take care of everything for you - hosting, models, regular updates, and more. Installation is as simple as signing up and adding the PR-Agent app to your GitHub\GitLab\BitBucket repo.
  2. Improved privacy - No data will be stored or used to train models. PR-Agent Pro will employ zero data retention, and will use an OpenAI account with zero data retention.
  3. Improved support - PR-Agent Pro users will receive priority support, and will be able to request new features and capabilities.
  4. Extra features -In addition to the benefits listed above, PR-Agent Pro will emphasize more customization, and the usage of static code analysis, in addition to LLM logic, to improve results. See here for a list of features available in PR-Agent Pro.

How it works

The following diagram illustrates PR-Agent tools and their flow:

PR-Agent Tools

Check out the PR Compression strategy page for more details on how we convert a code diff to a manageable LLM prompt

Why use PR-Agent?

A reasonable question that can be asked is: "Why use PR-Agent? What makes it stand out from existing tools?"

Here are some advantages of PR-Agent:

Data privacy

Self-hosted PR-Agent

CodiumAI-hosted PR-Agent Pro ๐Ÿ’Ž

PR-Agent Chrome extension

Links

Join our Discord community