Overview

review-pro is a tiered AI code-review system: triage → relevant specialist reviewers → synthesis. It reviews code written by AI agents, using AI agents — built to catch the failure modes AI-generated code actually ships with: hallucinated APIs, over-engineering, ignored conventions, needless dependencies.

This CLI installs the review-pro core (12 reviewer skills + subagents + the review-pro orchestrator) into your agent tool, and the stack packs into your repo’s .review-pro/. Supported targets: opencode · Claude Code · Cursor · Codex.

Install

One-time. Interactive — it asks which platforms and which stack packs to install.

npx review-pro init                           # interactive: pick platforms + stacks

Non-interactive (CI)? Use --target <platform|all|auto> and --no-stacks.

Per-platform notes

Then add the stack packs you use (below), restart your tool so the new skills/agents are discovered, and run a review.

Manual install (no Node.js)

review-pro is plain markdown skills and agents — no runtime dependency. If you don’t have Node.js (or prefer not to use the CLI), copy the files by hand:

  1. Core — copy core/skills/<name>/ into your tool’s skills folder, and core/agents/*.md into its agents folder (paths per platform above).
  2. Stack packs — copy stacks/<pack>/ into the reviewed repo’s .review-pro/<pack>/.
# example: opencode core + python stack, by hand
cp -R core/skills/*           ~/.config/opencode/skills/
cp    core/agents/*.md        ~/.config/opencode/agents/
mkdir -p .review-pro && cp -R stacks/python .review-pro/python

The CLI just automates these copies (plus the Codex .md.toml transform and version tracking). Manual and CLI installs are equivalent.

Stack packs

Packs layer language/framework-specific signals onto the reviewers at review time. Install the ones a repo uses into its .review-pro/. Framework/domain packs compose on top of a language pack.

npx review-pro                # interactive multi-select
npx review-pro add python     # one pack, CI-safe
npx review-pro list           # catalog + installed + drift

Catalog (16): python · go · rust · typescript-react · node · php · dotnet · kotlin · swift · flutter · capacitor · nextjs · tanstack-start · react-native · wordpress · ai-ml. Examples: a Next.js repo activates typescript-react + nextjs; an LLM app activates python + ai-ml.

Commands

CommandWhat it does
npx review-proInteractive — select stacks to install into .review-pro/
init [--target <platform>]Install the core plugin into a tool’s home
uninstall [--target <platform>]Remove the core plugin from a tool’s home (agents + skills). Stack packs in .review-pro/ are untouched.
add <stack>Install one stack pack (non-interactive)
remove <stack>Remove an installed pack
update [stack]Refresh installed packs to the catalog version
listShow catalog stacks + installed versions + drift
doctorValidate installed packs (version drift, roster integrity, orphans)

Run a review

After install + restart, in the repo you want to review (on a feature branch):

The agent runs the whole pipeline natively — git diff, reads changed files, Globs .review-pro/ for active stacks, dispatches the relevant reviewer subagents with their stack signals, and synthesizes one verdict: BLOCK / REQUEST CHANGES / APPROVE. No env vars, no scripts to run at review time.

The 12 reviewers

security · correctness · craft · ai-antipatterns · dry · performance · backend · frontend · a11y · db · api-contract · tests. The ai-antipatterns reviewer is first-class: hallucinated APIs/symbols/imports, invented config/env keys, needless dependencies, and ignored existing helpers.

FAQ

Does it need Node.js?

Only the installer CLI does (Node ≥ 18). The plugin itself is plain markdown skills and agents, so manual install works without Node on any platform.

How is this different from a single “review this” prompt?

One prompt hands the whole diff to one agent and asks for everything. review-pro triages first, runs only the relevant specialists in parallel with scoped context, then synthesizes — so small changes stay cheap and large changes go deep, with severity calibrated against over-reporting.

Where do stack packs come from?

The catalog ships inside this package, snapshotted at publish time. New packs appear after a new version is published. See stacks/CONTRIBUTING.md in the repo to add your own.

Is it really cross-platform?

Yes — one canonical source installs into opencode, Claude Code, Cursor, and Codex. Codex agents are auto-transformed to TOML; the others consume the same markdown agents.