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.

