review-skills

Two skills: a pull request review where two models argue, and a helper that works through review comments round by round

  • 166 ★ on the repository
  • Last commit
  • MIT
Skill

Extended access

Why this level

  • Posts reviews and thread replies from your own gh, glab or az account
  • PR code goes to two model vendors through delegate-skills, and babysit-pr edits the code itself to address findings
All reasons and checks

amelnagdy/review-skills

Install

In your terminal, with SkillFoxx CLI

npx skillfoxx add skills/review-skills

Detects the agents on your machine, shows the access level and pins the version.

Other ways to install

Access and checks

How we review

Extended accessThe tool runs code or makes network calls and only reads external data.

  • Posts reviews and thread replies from your own gh, glab or az account
  • PR code goes to two model vendors through delegate-skills, and babysit-pr edits the code itself to address findings

This is third-party code. Review the repository files before installing.

What it does

The debate-review skill hands a pull request to a main reviewer and then to a second model. The second model tries to knock down the findings and may add its own, and the main reviewer makes the final call. One review with inline comments and a summary lands on the PR from your own gh, glab or az account. The skill cannot approve a PR or request changes. The babysit-pr skill works the review rounds. It collects threads from debate-review, Codex, Greptile and other bots, checks each finding against the code, fixes the real ones, replies in the thread with evidence, resolves it and starts the next round. It cannot merge a PR and leaves threads it did not answer open. Findings come in levels: P0 blocks on security, P1 blocks for any other reason, P2 does not block. The `--local` mode reviews the working tree before a PR exists.

Who it is for. Developers with subscriptions to two different models, for example Claude and Codex, who want a machine review of a pull request before people see it.

Good fit when

  • You opened a PR on GitHub and want the bugs, graded P0 to P2, before your colleagues look
  • There is no PR yet and the changes sit in the working tree: `--local` compares them with the base branch
  • A PR has piled up comments from Codex and bots, and they need sorting and resolving round by round
  • The repository is on GitLab, including self-hosted, and the review has to come back to the MR
  • One model misses bugs, and a second one should challenge its conclusions

Not a fit when

  • You need an automatic approval or a request for changes: the skill only comments
  • You need babysit-pr on Azure DevOps: thread harvesting and replies are not implemented there yet
  • You have a subscription to one model only: without a second opinion the debate loses its point

Example request

Review https://github.com/owner/repo/pull/123 with debate-review, but show me the result before posting anything

Limitations

  • Needs Node 18+, a logged-in `gh`, `glab` or `az`, and the delegate-skills package with two lanes, `review-main` and `review-debate`, created by `$delegate-setup`.
  • Replying and resolving threads is verified on GitHub; on GitLab it is implemented but not yet verified on a live instance.
  • One review per head commit: a second run exits with code 3 unless `--force` is set.
  • Each reviewer runs up to 30 minutes by default; `--timeout` changes the limit.

How to disable. Delete the debate-review and babysit-pr folders from the agent's skills directory. The run cache with prompts and model output sits in `~/.cache/debate-review` and can be erased separately. The `review-main` and `review-debate` lanes stay in delegate-skills.

FAQ

How do I run a review of a live PR without posting it?

Add `--dry-run` to the `review-pr.mjs` command with the PR URL or number, and the review prints to the terminal. For a working tree without a PR use `--local`, which never talks to GitHub or GitLab. The two flags do not combine.

What do the P0, P1 and P2 levels mean in comments?

P0 blocks the merge on security, P1 blocks for any other reason, P2 does not block. On GitHub they render as CAUTION, WARNING and NOTE alerts, so the colour reads before the text.

What is a contested finding in a review?

A finding the second reviewer refuted and the main reviewer kept. The comment shows both sides' reasoning. `--contested drop` removes such findings from the post and `--contested post` keeps them.

Which agents work with debate-review?

The skill runs through whatever agent you already use: the README names Claude Code, Codex, Cursor, OpenCode and Grok. delegate-skills starts the reviewers, and only implementers whose relay has `--read-only` qualify, so they cannot touch your file tree.

How much does one review cost?

There is no separate fee: the skill uses model subscriptions you already pay for. Each reviewer runs up to 30 minutes, `--timeout` sets the limit and `--min-confidence` drops weak findings.

Discussion

No questions or reviews yet.

Skills

A code review skill with four independent probes, evidence-backed findings and a merge gate derived from JSON

SkillExtended access247Repository stars

A code review skill across many languages and frameworks: architecture, performance, security, anti-patterns and common bugs

SkillMinimal access2.2KRepository stars

A CLI and three skills that work through review-bot comments on a PR: assess findings, fix code, reply and wait for checks

SkillBroad access314Repository stars

A skill that draws every pull request as an architecture and data-flow diagram right in the PR description, to speed up review

SkillExtended access2.4KRepository stars
Official

Three skills work through Greptile review comments on a pull request, fix them and re-run the review until none are left open

SkillBroad access432Repository stars

cross-review sends plans and code to a second model for review: Codex, Claude Code or Antigravity checks your agent's work.

SkillBroad access167Repository stars

Comparison with similar tools

Cards that share the main search query, and how they differ.

ToolOfficialRepository starsMain difference
review-skills (this card)no166
Claude-Codex Review Skillno5Claude Code and Codex trade rounds through files, and the review is not posted to the PR
agent-reviewsno314works through review-bot comments but does not run its own model debate review

README in short

The README opens with a tagline about two models arguing and the install command, then covers both skills in a table with the environment requirements. After that come the comment format with levels, a GitHub, GitLab and Azure DevOps comparison, the `--local` mode and a manual run for CI with the flag list.

README badge

Original SKILL.md

---
name: debate-review
description: Two-model debate review of a GitHub PR, GitLab MR, Azure DevOps PR, or local working tree, posted as inline comments or printed. Use for any PR/MR review request, or a local review before a PR exists.
license: MIT
compatibility: Requires Node 18+, Git 2.31+ for Azure DevOps, `gh` (GitHub), `glab` (GitLab) or `az` (Azure DevOps) authenticated, and delegate-skills installed for the main/debate lanes.
metadata:
  version: 0.2.0
---

# debate-review

Two models argue before anything is posted. A main reviewer finds issues. A debate reviewer tries to
knock them down and may add its own. The main reviewer then makes the final call, and one review with
inline comments lands on the PR or MR. It posts from the user's own `gh`, `glab` or `az` account as a
non-approval review or comment. It never approves and never requests changes.

You are the orchestrator. You run one command and relay the result. You do not review the diff
yourself, and you do not touch the PR.

## Run it

```bash
node "<skill-dir>/scripts/review-pr.mjs" --local [--base <ref>]
node "<skill-dir>/scripts/review-pr.mjs" <pr-url | number> [--dry-run]
```

- If the user wants a review and there is no PR/MR URL, run `--local` from the repo (or `--repo-dir`). Do not invent a URL. Relay stdout. `--local` never talks to a forge and rejects non-UTF-8 Git paths rather than decoding them lossily.
- `<pr-url>` is a GitHub `/pull/N`, GitLab `/-/merge_requests/N`, or Azure DevOps
  `/_git/<repo>/pullrequest/N` URL (`dev.azure.com` or the legacy `*.visualstudio.com`). A bare number
  resolves against the cwd's `origin`, including Azure DevOps https and `ssh.dev.azure.com:v3/` remotes.
- `--dry-run` prints a live PR review instead of posting it. It does not combine with `--local`.
- Azure DevOps needs `az` logged in (`az login`) with access to the project. No extension is required,
  the script talks to the REST API through `az rest`. A review there is N inline comment threads plus
  one closed summary thread, since Azure DevOps has no single review object; the alert blockquotes
  render as plain quotes, which still read.
- The reviewers are two delegate-skills lanes, `review-main` and `review-debate`. If either is missing
  the script says so. Add them with `delegate-setup`. Pick two different implementers, since the debate
  is only worth something when the second model doesn't share the first one's blind spots (main
  `claude` or `grok`, debate `codex` at high effort is a good pair). For a one-off, pass
  `--main <implementer>` or `--debate <implementer>`. Only implementers whose relay has `--read-only`
  are accepted. These two lanes belong to the reviewer. Don't point them at a lane you use for other
  work, such as a plan-debate lane.
- `--check` starts each reviewer on a one-line read-only brief and prints `ok` or `FAIL` with the reason per role, exit `1` on any failure. Run it once on every machine after setting up the lanes; it catches a reviewer that is not installed, not signed in, out of quota, or refused by its sandbox before a PR waits on it.
- Exit code `3` means this head sha already has a debate-review. Re-run with `--force` to post again.
- A run takes minutes, since it is two or three implementer sessions back to back. Run it in the
  background and report the printed URL when it finishes. Don't poll tightly.

All flags: `--help`. Contracts: [references/schema.md](references/schema.md). What gets posted:
[references/comment-format.md](references/comment-format.md). The reviewer briefs live in `assets/prompts/`
and the script fills them in; you don't need to read them.

Report a problem

Foxx AIreview-skills
Foxx AI

I am Foxx AI and I have already vetted this tool. Ask about install, setup or anything else, and I will keep it simple.