Skip to content
Back to skills

Grip Review

ASecurity

Check that a reviewer actually understands a pull request before approving it, or produce five review questions for its author. Use for /grip-review, "quiz me on this PR", "review questions for this branch", "do I understand this PR".

  • 11 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 22, 2026
ai-agentsgobashgit

Security analysis

A100/100

Scanned October 22, 2026

npx -y skills add guilyx/grip --skill grip-review --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Grip Review?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Grip Review
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/guilyx-grip-review/badge)](https://www.skillsdirectory.com/skills/guilyx-grip-review)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: grip-review
description: Check that a reviewer actually understands a pull request before approving it, or produce five review questions for its author. Use for /grip-review, "quiz me on this PR", "review questions for this branch", "do I understand this PR".
disable-model-invocation: true
allowed-tools: Bash(grip *), Bash(git fetch *), Bash(git rev-parse *), Bash(git merge-base *)
---

# grip-review

Same quiz, other side of the table. grip writes five questions about a range of commits;
either the reviewer answers them before approving, or the questions go to the author with
the review. You relay, you never answer.

Arguments: `$ARGUMENTS` is a range `BASE..HEAD` (for example `origin/main..origin/feat-x`),
a single branch (then the base is `origin/main`, or `main`), or empty (then ask which
branch). Add `--questions-only` to skip the grading and just print the questions.

## Steps

1. Work out the range. For a branch name `X`, fetch it if needed (`git fetch origin X`)
   and use `$(git merge-base origin/main X)..X`. Tell the developer the exact range you
   will quiz.
2. Run `grip ask --range BASE..HEAD` and read the JSON.
   - `"status": "nothing-to-quiz"`: say the range is empty and stop.
   - `"status": "already-passed"`: say this range already passed recently; offer
     `grip forget` if they want a fresh quiz anyway.
3. Show the `summary` and the five questions verbatim, numbered, each with its `focus`.
4. With `--questions-only`: stop here, formatted so the text can be pasted into the pull
   request as review questions for the author. Mention that the rubrics stay local in
   `.git/grip/pending.json` and that `grip grade` can score the author's replies later.
5. Otherwise the reviewer answers all five in one reply. Do not answer, hint or open the
   code for them. Grade:

   ```bash
   grip grade --answers - <<'EOF'
   ["answer 1", "answer 2", "answer 3", "answer 4", "answer 5"]
   EOF
   ```

   Copy each answer exactly, line breaks included: write them as `\n` inside the JSON
   string. Never join paragraphs or drop the breaks between them.

6. Show the per-question scores and feedback, then the Grip Score. Below the pass mark,
   suggest which parts of the diff to read before approving, taken from the feedback.

## Notes

- The pass mark comes from the repository's `.grip.toml` (`passing_score`, default 70).
- A reviewer's pass is remembered for the range like any other quiz; it does not affect
  the author's own hook.
- To quiz the author's local, unpushed work instead, use `/grip --unpushed`.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.