Review gate
Use before an agent-produced diff is committed, pushed, opened as a PR, merged, landed, or applied to user files when explicit implementation approval is missing. Trigger for review gate, review pack, approve before landing, diff first then land, human approval, merge gate, commit gate, push gate, or PR readiness. Produces a concise review pack, records risks and verification, and blocks landing until a human explicitly approves or approves with required fixes.From its SKILL.md
npx -y skills add majiayu000/spellbook --skill review-gateAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
SKILL.md
4.3 KB, 868 tokens by cl100k_base, as published. Nobody here has run it
Review Gate
Use this skill as the last-mile safety checkpoint for agent-generated changes. It complements PR review tools; it does not replace code review, CI, or human approval.
Use assets/review-pack-template.md when the user needs a reusable review pack
shape.
When To Run
Run before any of these actions when an agent-generated diff is involved:
- commit
- push
- open or update a PR
- merge or land
- apply a generated patch to user files when the user has not already approved that exact implementation path
Read-only review, planning, issue triage, and local exploration do not require this gate unless the next step would land or publish changes.
Operating Contract
- Direct actions: inspect diffs, collect verification evidence, and draft the review pack.
- Escalate before: commit, push, PR creation, merge, branch deletion, or applying a generated patch when the user has not approved that exact action.
- Evidence-backed pushback: block landing when verification is stale, sensitive surfaces lack review, or approval is ambiguous.
- Feedback loop: convert repeated review findings into new checklist items, verification commands, or Review Pack risk prompts.
Gate States
| State | Meaning | Allowed next action |
|---|---|---|
draft_pack | Review pack is being assembled. | Inspect diff and verification only. |
needs_fixes | Blocking risks or missing evidence exist. | Patch and rerun the gate. |
awaiting_human | Pack is complete but no human approval exists. | Stop before commit, push, PR, merge, or apply. |
approved | Human explicitly approved the pack in the current thread. | Proceed with the named action only. |
approved_with_fixes | Human approved after specific fixes. | Apply fixes, verify, and record evidence before landing. |
Agents must not self-approve. Prior CI success, a reviewer lane, or a green local test is evidence for the pack, not approval.
Gotchas
- Approval is action-specific. "Commit it" does not mean "merge it."
- A reviewer lane is independent evidence, not human approval.
- If a fix changes the diff after approval, refresh verification and update the pack before landing.
Review Pack
Produce this compact pack:
review_gate:
- intent:
- diff_summary:
- files_changed:
- driving_skill_or_issue:
- risks:
- missing_tests_or_verification:
- commands_run:
- evidence:
- open_questions:
- approval_needed_for:
- decision:
Keep findings ranked by severity. Include exact file paths, PR numbers, issue numbers, command names, and current head SHA when available.
Decision Rules
- If verification is stale, missing, or tied to a different head SHA, set
needs_fixes. - If the diff touches auth, payments, secrets, permissions,
innerHTML,eval, shell execution, generated registry, hooks, or high-context files, call that out explicitly. - If user approval is ambiguous, set
awaiting_humanand ask for the named action only. - If the user approves, do exactly the approved action. A commit approval is not automatically a merge approval.
- If a required fix changes the diff, rerun the relevant verification and update the pack before landing.
Integration Points
flowguard should call this gate at landing checkpoints. Queue skills may use a
reviewer lane for independent findings, but the Review Gate still records the
human-facing pack and approval state.
For GitHub PRs, combine this gate with current remote truth:
- PR head SHA
- check rollup
- merge state
- GraphQL reviewThreads
- linked issue intent
Verification
For Spellbook changes, the pack usually cites:
git diff --check
python3 ./scripts/validate_skills.py --check
python3 ./scripts/audit_skill_quality.py skill-name
Use project-specific tests for code changes. If a command cannot run, report the
precondition and keep the decision out of approved.
What ships with it: 1 file
459 B alongside SKILL.md