Skip to main content

logo
The Original Open-Source PR Reviewer

GitHub

This repository contains the open-source PR Agent Project. It is not the Qodo offering for open-source projects.

PR-Agent is an open-source, AI-powered code review agent and a community-maintained legacy project of Qodo. It is distinct from Qodo's primary AI code review offering, which provides a feature-rich, context-aware experience. Qodo offers a free version for open-source projects and integrates seamlessly with GitHub, GitLab, Bitbucket, and Azure DevOps for high-quality automated reviews.

Sponsors

PR-Agent is a community-maintained open-source project, with its ongoing development supported by our sponsors. If you'd like to support the project, consider becoming a sponsor.

🥇 Gold Sponsor

Qodo — Gold sponsor

Free version of Qodo for open-source projects

Table of Contents

Getting Started

🚀 Quick Start for PR-Agent

Add automated PR reviews to your repository with a simple workflow file:

# .github/workflows/pr-agent.yml
name: PR Agent
on:
  pull_request:
    types: [opened, synchronize]
jobs:
  pr_agent_job:
    runs-on: ubuntu-latest
    steps:
    - name: PR Agent action step
      uses: the-pr-agent/pr-agent@main
      env:
        OPENAI_KEY: ${{ secrets.OPENAI_KEY }}
        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

Full GitHub Action setup guide

2. CLI Usage (Local Development)

Run PR-Agent locally on your repository:

pip install pr-agent
export OPENAI_KEY=your_key_here
pr-agent --pr_url https://github.com/owner/repo/pull/123 review

Complete CLI setup guide

3. Other Platforms

News and Updates

Full notes for every release are on the Releases page.

Why Use PR-Agent?

🎯 Built for Real Development Teams

Fast & Affordable: Each tool (/review, /improve, /ask) uses a single LLM call (~30 seconds, low cost)

Handles Any PR Size: Our PR Compression strategy effectively processes both small and large PRs

Highly Customizable: JSON-based prompting allows easy customization of review categories and behavior via configuration files

Platform Agnostic:

  • Git Providers: GitHub, GitLab, BitBucket, Azure DevOps, Gitea
  • Deployment: CLI, GitHub Actions, Docker, self-hosted, webhooks
  • AI Models: OpenAI GPT, Anthropic Claude, Google Gemini, DeepSeek, Mistral, and any other model reachable through LiteLLM (Azure OpenAI, AWS Bedrock, Vertex AI, Databricks, OpenRouter, Ollama, and more) — see Changing a model

Open Source Benefits:

  • Full control over your data and infrastructure
  • Customize prompts and behavior for your team's needs
  • No vendor lock-in
  • Community-driven development

Features

See the current feature and git provider support matrix in the PR-Agent documentation.

⚠️ /help_docs is temporarily disabled since v0.36.1 pending a fix for a credential-exposure issue (#2445).


See It in Action

/describe


/review


/improve


Usage Examples

PR-Agent tools run as a comment on a PR or from the CLI. A few common ones:

# Comment on a PR (GitHub/GitLab/Bitbucket/…):
/describe
/review
/improve
/ask "What does this PR change?" # free-text Q&A about the PR

# Issue-scoped commands run on an issue instead of a PR:
/similar_issue # find similar issues in the repository

# Or locally via the CLI:
pr-agent --pr_url <PR_URL> review
pr-agent --issue_url <ISSUE_URL> similar_issue

See the Tools docs for the full list of tools with example commands, and each tool's page for screenshots and options.


How It Works

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

PR-Agent Tools

Data Privacy

Self-hosted PR-Agent

Contributing

To contribute to the project, get started by reading our Contributing Guide.

For local verification, run PYTHONPATH=. uv run pytest from the repository root; it discovers the unit-test suite under tests/unittest by default. End-to-end tests under tests/e2e_tests require provider credentials and should be invoked explicitly, for example PYTHONPATH=. uv run pytest tests/e2e_tests/test_github_app.py.

Big News for PR-Agent

PR-Agent has a new home!

After years of building this tool alongside the community, Qodo has donated PR-Agent to the open-source community - and we couldn't be more excited about what comes next.

The project now lives in the PR-Agent org on GitHub, is fully community-owned, and is open for contributions and additional maintainers.

What else changed:

  • Docs moved to - docs.pr-agent.ai
  • Qodo Merge (Qodo 1.0), the hosted URL, which was the enterprise version of PR-Agent, has been rebranded and evolved into Qodo (Qodo 2.0), a full AI code review platform.

❤️ Community

This open-source release remains here as a community contribution from Qodo — the origin of modern AI-powered code collaboration. We’re proud to share it and inspire developers worldwide.

The project now has its first external maintainer, Naor (@naorpeled), and is currently in the process of being donated to an open-source foundation.

Release files for pr-agent 0.46.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pr-agent 0.46.0
File Size Uploaded
pr_agent-0.46.0.tar.gz 640.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pr-agent 0.46.0
File Interpreter ABI Platform
pr_agent-0.46.0-py3-none-any.whl Python 3 none any Details

Total release size: 1.4 MB

Release files / pr_agent-0.46.0.tar.gz

Download URL pr_agent-0.46.0.tar.gz
Size 640.9 kB
Tags Source
SHA-256 checksum
How to use checksums
e437ce14c18d3aa0f4fff5cf6ff41d77fff77767d05dd314bd577b78d4a3511f
BLAKE2b-256 checksum
How to use checksums
0841eadeb7fd6f928dc56c498f86f1d373531b3716b57c5c48d85c6648c50aa1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pr_agent-0.46.0-py3-none-any.whl

Download URL pr_agent-0.46.0-py3-none-any.whl
Size 733.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6a37f507cc3bf0cb00be79b8b96e7885bf35b27a905adb1926965af839f247f5
BLAKE2b-256 checksum
How to use checksums
90c78e6b23a9f5b258f46ab53b6d6eba38f5fe2b68787ea3f561aa62ab5dddac
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

This release

0.46.0 This release

2 release files

0.44.0

2 release files

0.43.0

2 release files

0.42.0

2 release files

0.41.0

2 release files

0.40.0

2 release files

0.38.0

2 release files

0.37.0

2 release files

0.36.1

2 release files

0.35.0

2 release files

0.3.0

2 release files

0.2.7

2 release files

0.2.4

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page