mrkeyoor.com_
Sat 31 Oct 23:48 UTC
AI Toolsevaluationupdated 31 Oct 2026

pr-agent review

PR-Agent is a community-maintained AI code-review tool that can describe pull requests, suggest changes and answer questions about a diff. It is the open-source project formerly maintained by Qodo, separate from Qodo's current product. You choose a model and connect the tool to your code-hosting platform through an action, CLI or service.

Verdict

PR-Agent's test step exited 1 with 200 failures in our sandbox, and pip-audit reported 13 known vulnerabilities, so this run does not support deploying it without further checks. It remains a candidate for teams that want configurable model-backed PR assistance and can own the integration. Investigate the reported async-runner failures and audit findings first, then evaluate generated comments on a controlled repository before giving the agent a routine role in reviews.

We ran it

Lab card: what happened when we ran pr-agentScreenshot of pr-agent (www.pr-agent.ai)
Install✓ · 26s165 packages · 473 MB
Build✓ · 3s
Tests✗ · 115s1973 passed · 200 failed of 2173 (pytest)
Known vulns13(pip-audit)
Repo727 files~207,686 lines of source · 14.7 MB · 9 CI workflows · tests dir

Answers from our run

Does pr-agent build from source?

Dependencies installed in 26 seconds (165 packages), and the build succeeded in 3 seconds. We cloned commit e5615bf into a clean Debian container with 3 CPUs and no project-specific setup.

Do pr-agent's tests pass?

No. The project's own test command finished in 115 seconds and reported 1973 passed, 200 failed (pytest).

Does pr-agent have known vulnerabilities in its dependencies?

pip-audit flagged 13 known advisories in the dependency tree at the time of our run.

Who should not use pr-agent?

Teams requiring a clean reproduced test run before adoption: our command stopped at 200 failures and exited 1.

What are the alternatives to pr-agent?

reviewdog, Danger. PR-Agent's test step exited 1 with 200 failures in our sandbox, and pip-audit reported 13 known vulnerabilities, so this run does not support deploying it without further checks.

SetupN/AInstallation and build completed, but the supported live integration, provider credentials and a successful review were not reproduced.
DocsN/AThe README and GitHub integration guide were inspected, but their deployment instructions were not followed through to a working review.
CommunityN/ACurrent repository and PR activity was checked, without evidence establishing typical support responsiveness or maintainer capacity.
MaturityN/AThe test run failed and the audit found advisories, but live review reliability, affected-package details and production behavior were not assessed.

Who it’s for

Engineering teams prepared to configure model access and code-host permissions, then judge generated comments against their own changes.
Maintainers who want configurable PR descriptions, reviews and questions within an existing code-hosting workflow.
Operators who can investigate the failed lab checks and audit findings before considering a deployment.

Who it’s NOT for

Teams requiring a clean reproduced test run before adoption: our command stopped at 200 failures and exited 1.
Maintainers expecting the default pull_request workflow to receive model secrets on fork PRs: the GitHub guide says those secrets are unavailable by default.
Teams depending on /help_docs: the README says that command is temporarily disabled pending a credential-exposure fix.
Buyers expecting Qodo's current hosted product and its support arrangement: the README identifies PR-Agent as a separate community-maintained legacy project.
Teams assuming that hosting the agent themselves keeps all code local: the documented OpenAI route still makes the relationship with that model provider part of the data decision.

Setup reality

Our October 31, 2026 run at e5615bf installed successfully in 26 seconds, recording 165 dependencies and 473 MB on disk. The build succeeded in 3 seconds. The test step failed with exit 1 after 115 seconds: pytest recorded 1,973 passed and 200 failed out of 2,173, then stopped at 200 failures. Pip-audit reported 13 known vulnerabilities.

The README's GitHub Action example needs an OpenAI key and GitHub token. Other model routes require their own configuration. The CLI uses optional extras for the selected git provider. The GitHub guide also requires you to decide how fork PRs receive access: the default pull_request event does not receive repository secrets for forks.

The visible failing cases say async functions are not natively supported. That identifies a test-runner limitation in those cases, without explaining all 200 failures. The sandbox configuration lists 3 CPUs, 8 GB RAM and image ghcr.io/astral-sh/uv:python3.12-bookworm. That label does not prove the actual Python or operating-system version. We did not verify a live model-backed review.

A short workflow still needs a model and repository access

PR-Agent's GitHub Action example asks for a model-provider key and a GitHub token. Before you add it to routine reviews, decide which code the model may receive and what the integration may write. The appeal is clear: descriptions, review suggestions and questions can live beside the pull request. The short configuration example leaves you responsible for that access decision.

The README identifies PR-Agent as a community-maintained legacy project, separate from Qodo's current offering. That distinction prevents a mistaken purchase decision. Evaluate this repository's documented commands and maintenance, rather than assuming that claims about Qodo's separate product describe the open-source tool or its support.

What happened when we ran it

Our sandbox installed PR-Agent successfully in 26 seconds, recording 165 dependencies and 473 MB on disk, and the build succeeded in 3 seconds. The test step exited 1 after 115 seconds. Pytest recorded 1,973 passed and 200 failed out of 2,173 in the supplied summary, then stopped at its 200-failure limit. This was commit e5615bf on October 31, 2026.

The visible failed cases concern progress-comment edits and check-run updates. Their errors say async functions are not natively supported. That is evidence of a runner limitation for those cases. It doesn't establish why every recorded failure occurred, and we cannot turn it into a diagnosis that one missing package would fix the whole run. We also cannot use those errors to conclude that PR-Agent fails to review code in production.

Pip-audit reported 13 known vulnerabilities. The supplied record doesn't identify the affected packages, severity or exploit conditions. Those findings need examination before deployment, without treating the count as proof of an exploitable service. There is no clean security result here, and no live model-backed review was verified by these repository checks.

The scan recorded 727 files, about 207,686 source lines and a 14.7 MB checkout. It found nine CI workflow files and a tests directory, with no Dockerfile detected. That scan result doesn't contradict the README's published container route. The configured sandbox had 3 CPUs and 8 GB RAM. Its ghcr.io/astral-sh/uv:python3.12-bookworm image label doesn't establish the actual Python or operating-system version.

Fork pull requests need a deliberate event choice

The GitHub integration guide says repository secrets are unavailable by default to the pull_request event for fork PRs. A workflow that works for a colleague's branch can therefore lack model credentials when an outside contributor opens a change. Confirm which event and permission model your repository needs before expecting automatic comments on every submission.

The guide documents a pull_request_target route and says PR-Agent fetches PR data through the GitHub API without needing a local checkout. That route has access to base-repository secrets. Its security instructions say not to execute untrusted PR content in the same job with secrets or elevated token permissions. This is an integration boundary worth understanding before copying a workflow into a public repository.

Start with a controlled repository and an explicitly chosen trigger. Check which events generate comments, how much permission is granted and what happens when a model request fails. These are recommended acceptance checks. They are not additional observations from our sandbox, which never established a working provider-backed review.

Self-hosting leaves the model-provider decision open

The README documents OpenAI, Anthropic and other model routes through LiteLLM, including Ollama. Hosting the agent yourself therefore doesn't settle where inference happens. For its OpenAI route, the README explicitly places the data relationship between the operator and OpenAI. A local model route is a separate configuration to evaluate, without a privacy result from our run.

The commands also have distinct jobs: /describe writes a PR description, /review supplies review feedback, and /ask accepts a question. Choose the operation you actually need before enabling routine automation. A useful first evaluation is whether its comments identify something a reviewer would act on in a known change. We have no measured accuracy, false-positive rate or model cost to supply that answer.

A disabled command is a concrete adoption limit

The README says /help_docs is temporarily disabled pending a fix for a credential-exposure issue. If documentation questions are your main reason to adopt PR-Agent, this is a direct reason to wait or choose another route. The warning doesn't establish that every command has the same defect, or that a fix has shipped.

The repository's last push was October 31, 2026, and its issues-and-PRs feed shows proposals updated that day concerning description parsing and provider behavior. That supports recent maintenance activity even though the README uses the word legacy. It doesn't establish a response-time commitment or remove the failed checks from our run.

Linter findings and review rules may cover your actual need

reviewdog posts lint-tool findings as review comments when they fall in the patch diff. Choose it when you already know which analyzer should flag a problem and need those results beside the changed code. This is a narrower job than requesting a model's interpretation.

Danger runs in CI to automate common code-review chores. Its examples include changelog requirements and ticket links. If those are the comments your reviewers repeat, explicit rules may answer your need. If you still need model-backed interpretation, keep PR-Agent's first trial scoped to a controlled repository until you have resolved the runner and audit questions and inspected the generated comments.

Alternatives

ProjectWhat it isPick it when
reviewdogPosts findings from existing lint tools as code-review comments.Choose it when the job is to surface configured linter findings in changed code, rather than ask a model to interpret the PR.
DangerRuns team-specific review rules during CI.Choose it when recurring review chores can be expressed as rules, such as requiring changelog entries or ticket links.

What people are saying

  1. [github-trending] The-PR-Agent/pr-agent

Sources

  1. PR-Agent README
  2. GitHub integration guide
  3. reviewdog README
  4. Danger README
  5. Repository facts
  6. Issues and PRs activity

More ai tools reviews

agent-sprite-forge · KiroCrew · Orkas · hypit · Paradev · see-through · the whole board →