Skip to content
LGTM Open source · MIT

AI review that lands on the pull request

open-pr reads the conventions of each repository, then posts one review on the PR itself: an overview, line findings with severity, and a reply once the fix is pushed. Everyone who opens the PR sees the same feedback.

Install with one command

Latest v2.0.4
curl -fsSL https://raw.githubusercontent.com/TOMOSIA-VIETNAM/open-pr/main/install.sh | bash
Reviews on
  • GitHub
  • GitLab
  • Bitbucket

How it works

Three steps to a review on the PR

  1. 01

    Install the plugin

    One command in the agent CLI you already use. There is no open-pr service and no bot account — the review is posted through your own vendor login.

  2. 02

    Run it on a pull request

    The PR is checked out into its own git worktree, so the branch you are working on is never touched. Keep coding while the review runs.

  3. 03

    Read the review on the PR

    One overview, line findings with severity, and suggested changes you can apply. Everyone who opens the PR sees the same feedback.

Two commands, start to finish

Review a pull request

/open-pr:review <PR_URL>

Fix what the review found

/open-pr:fix <PR_URL>
A review posted by open-pr: the overview, a line comment with a suggested change, and the reply after the fix was pushed

Review → fix

Rounds, until the pull request is clean

Run the review again after a fix and it picks up where the last run left off — no repeated findings, no review from scratch.

TOMOSIA-VIETNAM/open-pr #123 open-pr

Review run /open-pr:review <PR_URL> Round 1 · review

[AI REVIEW] Overview

Round 1 · review

Reviewed the whole change at commit d61a577. Two findings to look at.

src/auth/session.ts:42

Round 1 · review

Token expiry is compared with `<`, so a token expiring exactly now still passes.

Fixed — the comparison is now `<=`, with a test covering the boundary. Fix

Confirmed on this thread · resolved Round 2 · re-review

src/api/client.ts:88

Round 1 · review

The retry loop has no ceiling — a failing endpoint keeps it spinning.

Fixed — retries stop after three attempts. Fix

Confirmed on this thread · resolved Round 2 · re-review

Fix pushed /open-pr:fix <PR_URL> 1 commit pushed · no amend, no force-push Fix

Re-review run /open-pr:review <PR_URL> Round 2 · re-review

src/api/client.ts:95

Round 2 · re-review

New in this round: the backoff has no jitter, so retries line up.

LGTM 🌟

Last round

Every thread settled. Nothing new in this diff.

What it does

Built for a review a team can live with

  • Learns your repository

    README, CLAUDE.md, AGENTS.md, docs and wiki are read first. A team rule beats a generic one, and a correction on one PR carries into the next run.

  • Three vendors, one flow

    GitHub, GitLab and Bitbucket behave the same way. Vendor differences live in the runtime script, never in what the review says.

  • Severity with discipline

    Exactly one review per run — an overview plus line findings, each with a severity, instead of a stream of bot comments.

  • The fix command closes the loop

    Reads the findings it left, edits real code, lands exactly one commit — no amend, no force-push — and replies on every thread.

  • Guards against the wrong target

    Wrong branch or wrong pull request and it stops before touching a file. Resolving a thread stays yours.

  • The agent CLI you already use

    Claude Code, Cursor, Codex, Gemini CLI and Antigravity run the same procedure from one source — the shims only delegate.

Token cost

Every release is measured

Context cost per release, one line per command, generated by the plugin repository itself and pulled in when this page is built.

Line chart of context cost per release, one line per command

About 26% cheaper per run since v2.

Install

Pick the agent you already run

One line installs it everywhere. The per-platform commands do the same thing, spelled the way that tool expects.

Same command on every platform

curl -fsSL https://raw.githubusercontent.com/TOMOSIA-VIETNAM/open-pr/main/install.sh | bash

Claude Code

Install

/plugin marketplace add TOMOSIA-VIETNAM/open-pr
/plugin install open-pr@open-pr

Use

/open-pr:review <PR_URL>

Update

/plugin marketplace update open-pr

Codex

Install

codex plugin marketplace add TOMOSIA-VIETNAM/open-pr
codex plugin add open-pr@open-pr

Use

$open-pr-review <PR_URL>

Gemini CLI

Install

gemini extensions install https://github.com/TOMOSIA-VIETNAM/open-pr --auto-update

Use

/open-pr-review <PR_URL>

Cursor

Install

curl -fsSL https://raw.githubusercontent.com/TOMOSIA-VIETNAM/open-pr/main/install.sh | bash -s -- --platform cursor

Use

/open-pr-review <PR_URL>

Antigravity

Install

curl -fsSL https://raw.githubusercontent.com/TOMOSIA-VIETNAM/open-pr/main/install.sh | bash -s -- --platform antigravity

Use

/open-pr-review <PR_URL>

Needs git, jq, and a vendor CLI you are logged into: gh for GitHub, glab for GitLab. Bitbucket reads an API token from the environment.