Releases: TOMOSIA-VIETNAM/open-pr
Release list
v1.4.3 - Cross-file assumptions checked before a review concludes
Update, if the plugin is already installed:
/plugin marketplace update open-pr
/plugin update open-pr@open-prthen /reload-plugins. Cursor, Codex, Gemini CLI, Antigravity:
curl -fsSL https://raw.githubusercontent.com/TOMOSIA-VIETNAM/open-pr/main/install.sh | bash -s -- --updateExisting repos need no config migration — schema_version is unchanged.
New
- A review checks the code around the diff before it concludes: when raising a finding — or staying silent on one — turns on how a caller or a capability outside the diff behaves, it takes one targeted
Grepfirst, max 3 per PR, and what that grep cannot settle arrives as a 🔵 naming the symbol and the assumption. Costs +104 tokens per review run (+0.7% to +1.3%).
v1.4.2 - Model-invocable commands + branch-pinned installs
Update
/plugin marketplace update open-pr
/plugin update open-pr@open-prthen /reload-plugins. Cursor, Codex, Gemini CLI, Antigravity:
curl -fsSL https://raw.githubusercontent.com/TOMOSIA-VIETNAM/open-pr/main/install.sh | bash -s -- --updateExisting repos need no config migration — schema_version is unchanged.
New
review,fix,clean,feedback,upgradecan now be invoked straight from conversation, not only via/open-pr:<cmd>.--ref <branch-or-tag>on install pins to a specific branch or tag instead of the release channel;--updatethen stays on it.--ref latestgoes back to the release channel.
Improved
--updateno longer asks which platform twice, and no longer runs the update twice throughinstall.sh.
v1.4.1 - Reviews verified against the PR's real code
Update, if the plugin is already installed:
/plugin marketplace update open-pr
/plugin update open-pr@open-prthen /reload-plugins. Cursor, Codex, Gemini CLI, Antigravity:
curl -fsSL https://raw.githubusercontent.com/TOMOSIA-VIETNAM/open-pr/main/install.sh | bash -s -- --updateExisting repos need no config migration — schema_version is unchanged.
Improved
- Every review is verified to be looking at the PR's real code: the worktree — and a submodule's checkout on a bump — must match the PR's head commit before any finding is written, and a failed checkout stops the run instead of reviewing the wrong tree.
- Reviewing a PR whose branch is checked out in your own clone now works — the checkout fetches the PR ref directly instead of
gh pr checkout, which exited 128 there. - Line comments land on the line they describe: a LINE finding must sit inside a diff hunk, and its line number is confirmed against the real file (the merge-base blob for the old side) before posting.
- A push landing mid-review no longer wastes the run: the review posts anchored to the commit that was read, with a note that a newer commit is unreviewed.
- Submodule reviews read the submodule's own tree for line checks, old-finding comparison and merge base — not the parent repo's file at the same path — and anchor their post to the commit they reviewed.
- The overview's assessment is capped at three sentences, one conclusion each.
/open-pr:feedbackwrites the tracker's real form headings, so the issue body matches the forms exactly.- A post failure on your own PR is no longer declared unworkaroundable, and a rejected
commit_idis explained as a force-push with the fix (call the review again). - Context cost: mean +4.4% (+403 tokens per run), all of it spent on the verification gates above;
fix,upgradeandcleanare unchanged.
v1.4.0 - any language, and commands that run only when you type them
/plugin marketplace update open-pr
/plugin update open-pr@open-prthen /reload-plugins.
Cursor, Codex, Gemini CLI, Antigravity:
curl -fsSL https://raw.githubusercontent.com/TOMOSIA-VIETNAM/open-pr/main/install.sh | bash -s -- --updateExisting repos need no config migration — schema_version is unchanged.
New
- Any language, for the review it posts and the chat it holds. Setup's language question drops the fixed menu: it pre-marks a language detected from your own Claude Code memory as well as the project's, falls back to English, and takes free text for anything else. A multi-script language pins its script — Chinese is
zh-Hansorzh-Hant, never barezh. - Simplified Chinese README and docs — 6 pages, alongside English, Vietnamese and Japanese.
Improved
- A command now runs only when you type it.
/open-pr:review,:fix,:clean,:upgradeand:feedbackare no longer started by Claude Code reading your chat, so nothing posts a review, commits, pushes, removes a worktree or opens an issue off its own reading. Asking for a review in words no longer starts one — type the command. - 2.3% less context per run, up to 3.9%, measured against v1.3.0 across all 16 scenarios.
- A review collects PR info, files, diff, commits, old comments and CI in 2 batched rounds instead of 7 sequential ones, and
/open-pr:fixin 1 instead of 7. - A repo whose chat language is already stored gets that language recommended, instead of English.
v1.3.0 - Bitbucket Cloud, and a way to report the plugin
claude plugin update open-pr@open-prCursor, Codex, Gemini CLI, Antigravity:
curl -fsSL https://raw.githubusercontent.com/TOMOSIA-VIETNAM/open-pr/main/install.sh | bash -s -- --updateExisting repos need no config migration — schema_version is unchanged.
New
- Bitbucket Cloud reviews like GitHub and GitLab —
/open-pr:review <...>/pull-requests/<n>, over Bitbucket's REST API. Atlassian ships no CLI, so there is nothing extra to install; getting a token. - Bitbucket has no draft, so
auto_submit_review: falseholds the review in the session and publishes it finding by finding on your word — an interrupted publish resumes from what the PR already shows. /open-pr:feedback— reports a problem with the plugin as one issue on its tracker, built from the session, stripped of anything naming your repo, company or people, and shown to you before it is sent.
Improved
- A finding stays in one language: the
Fixlabel now follows the repo's output language, and the optional-reason line no longer reaches the page as*(optional)* because …. - Setup's "publish the review automatically?" question states where an unpublished review actually waits, instead of promising a draft on a vendor that has none.
v1.2.1 - Code names stay verbatim, failed searches stop reporting nothing found
Update
/plugin marketplace add TOMOSIA-VIETNAM/open-pr
/plugin install open-pr@open-prCursor, Codex, Gemini CLI, Antigravity:
curl -fsSL https://raw.githubusercontent.com/TOMOSIA-VIETNAM/open-pr/main/install.sh | bash -s -- --updateYour repo's settings.json needs no migration for this release.
Improved
- Code names survive a non-English review: identifiers, quoted error/log text and domain terms the project defines only as an identifier are reproduced character for character in backticks, so a finding still names something you can grep for.
- A search that fails is reported as a failure instead of an empty result:
reviewandfixno longer declare the PR's repo missing while it sits one level below your working directory, andcleanandupgradeno longer report an empty machine.
v1.2.0 - the same review from Cursor, Codex, Gemini CLI and Antigravity
Update
/plugin update open-pr@open-pr
/reload-pluginsInstall on Cursor, Codex, Gemini CLI or Antigravity:
curl -fsSL https://raw.githubusercontent.com/TOMOSIA-VIETNAM/open-pr/main/install.sh | bashNo config migration this release.
New
- The same review runs from Cursor, Codex, Gemini CLI and Antigravity — one install command per platform, then
/open-pr-review <PR URL>on Cursor and Antigravity,$open-pr-reviewon Codex,/reviewon Gemini CLI. - Install, update and uninstall per platform on one page, in all three languages, each platform labelled
testedoruntested— only Claude Code has had a review run through it so far. - An install path with no pipe: clone the repo, read
scripts/install-local.sh, then run it.
Improved
- Claude Code runs cost the same as before: +0 tokens on every scenario, the platform layer sitting outside what a run reads.
v1.1.2 - the skipped-files heading follows the review's language
Update
/plugin marketplace update open-pr
/plugin update open-pr@open-pr
/reload-pluginsNo config migration this release.
Improved
- A
jaorvireview writes the heading above its skipped-files list in that language, like the body it sits over. - A submodule-bump report writes its per-PR headings in the chat language.
v1.1.1 - fix runs in review's worktree, thanks in the review's language
Update
/plugin marketplace update open-pr
/plugin update open-pr@open-pr
/reload-pluginsNo config migration this release.
New
/open-pr:fixtakes no PR URL when the session already names one — the review that just ran, the PR you named, or the worktree you are standing in.
Improved
/open-pr:fixruns inside the worktree/open-pr:reviewchecked the PR out into, so reviewing and fixing in one session works.- A
jaorvireview opens with the thanks written in that language, instead of an English "Thank you!" above a translated body. /open-pr:clean's "Remove all" leaves out a worktree holding commits that were never pushed.
v1.1.0 - /open-pr:clean, and submodules checked out only when bumped
Already installed? Update with:
/plugin marketplace update open-pr
/plugin update open-pr@open-pr
/reload-plugins
Your per-repo config needs no migration — nothing in this release changes its shape.
New
/open-pr:clean — removes the worktrees review checks PR code out into. Each one is a full
checkout on disk, so it lists every path with its size and the total, asks once, then git worktree remove + worktree prune so the repo stops registering a checkout that is gone. memory.md,
memories/, templates/, ALWAYS_RULE.md and settings.json are never touched, and naming a repo
narrows it to that one. Costs 1,165 tokens on its own path.
Improved
A submodule is checked out only when the PR bumps it. review no longer initialises every
submodule on every run, so a repo with submodules stops paying disk for checkouts the PR never
touched — the bumped path alone is initialised, by name.
Every review ends by naming the worktree it left behind, and the command that removes it. It never
deletes one for you: the code is often read hours after the review is posted.
See what a review looks like before installing — the overview, a comment on the exact line with
the corrected code, and the reply left once the fix is pushed, in one screenshot per language in the
README.