Borrowing it
Nothing to install: this file belongs to kamiazya/whiteboard. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/kamiazya/whiteboard/main/.claude/skills/review-gate/SKILL.mdgit clone --depth 1 https://github.com/kamiazya/whiteboardWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/kamiazya/whiteboard/review-gate)<a href="https://agentmods.dev/skills/kamiazya/whiteboard/review-gate"><img src="https://agentmods.dev/badge/skills/kamiazya/whiteboard/review-gate/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/kamiazya/whiteboard/review-gate"><img src="https://agentmods.dev/badge/skills/kamiazya/whiteboard/review-gate.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00073 | $0.02270 |
| Opus 5 | $0.00036 | $0.01135 |
| Sonnet 5 | $0.00015 | $0.00454 |
| Haiku 4.5 | $0.00007 | $0.00227 |
Grade A, and why
review-gate scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 11d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 179 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Review Gate (whiteboard)
review.workflow.mjs is the generic per-diff change-review gate: parallel
multi-dimension review + adversarial verify + QA smoke, returning one
consolidated report. It is the most-invoked workflow in the repo — every
dev-loop composes it as its review phase — but is also runnable standalone
against any git range.
Run it
Workflow({ scriptPath: '.claude/workflows/review.workflow.mjs',
args: { range?, files?, cwd?, dimensions?, qaScenarios?,
dogfood?, appUrl?, dogfoodPersonas?, codex? } })
- range: a git range understood by
git diff/git log. Default'origin/main...HEAD'. - files: optional explicit scope (array of paths). When omitted, each
reviewer agent discovers changed files itself via
git diff --name-only <range>. - cwd: optional worktree path so a composed parent (
dev-loop) can point review at an isolated worktree. When set, agents run git asgit -C <cwd> ...and Read files at that absolute path. - dimensions: defaults to
['correctness', 'contract', 'boundary', 'test-coverage', 'reachability', 'background-work'](dead-code,authandaccessibilityare opt-in extras — pass them explicitly when relevant). The last two are default rather than opt-in for the same single reason: what they catch is CORRECT code. An unwired slice and a worker that runs on every instance both pass their tests and read as finished to every other dimension, so the only reliable catch is a lane that always asks. They answernotApplicablecheaply when the diff has nothing for them.securityalways runs in addition, unconditionally. Each entry is either a legacy plain string (criteria stays embedded inreviewer-dimension.md) or{name, content}wherecontentis authoritative externalized criteria injected into the reviewer prompt (see below). A malformed non-string entry (e.g. missingname) throws instead of silently propagatingundefined. - qaScenarios: defaults to
['smoke', 'error-recovery', 'startup']. - dogfood: optional live persona pass over the touched flow. Default
false— requires a running app (appUrl). - appUrl: the running app URL for the dogfood phase.
- dogfoodPersonas: number of persona passes when
dogfoodis on. Default1. - codex: adds a Codex second-opinion review lane. Default
false. If the Codex runtime is unavailable, the lane returnsnulland is reported viacodexUnavailable— it never counts as a failed partition dimension and never blocks the gate.
What ships with it
10 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- resources/accessibility.md 4.6 KB
- resources/auth.md 1.1 KB
- resources/background-work.md 4.2 KB
- resources/boundary.md 1.3 KB
- resources/contract.md 1.7 KB
- resources/correctness.md 2.8 KB
- resources/dead-code.md 1003 B
- resources/reachability.md 2.4 KB
- resources/test-coverage.md 2.3 KB
- resources/tool-surface.md 3.2 KB
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 11d ago First seen · 179 lines · 73 tokens per session scan A 1385bd3378e5
review-gate is a skill published in the GitHub repository kamiazya/whiteboard (6 stars, last pushed today), licensed Apache-2.0. It adds 73 tokens to every session and 2,270 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
review-implement-phase
Implements triaged review actions, commits focused fixes, and posts Done plus resolves threads. Use when the user wants only the implementation phase of the review-framework workflow.
engram-branch-pr
PR creation workflow for Engram following the issue-first enforcement system. Trigger: When creating a pull request, opening a PR, or preparing changes for review.
verify-behavior
Verify or reproduce visible product behavior by driving the real UI with pi-computer-use's checked tools, requiring verified expect postconditions and durable state evidence for meaningful UI flows. Use when triage needs visual reproduction, implementation needs behavioral proof, review needs interactive confirmation…
github-contributor
End-to-end playbook for shipping high-quality pull requests to open-source projects you don't maintain — discovery, CONTRIBUTING compliance, PR-size check, minimal-diff implementation, PR description with AI-assisted disclosure, conflict resolution, and post-submission maintainer interaction. Use whenever creating…
revdiff
Review diffs, files, and documents with inline annotations in a TUI overlay, or answer questions about revdiff usage, configuration, themes, and keybindings. Opens revdiff in agterm/tmux/zellij/herdr/kitty/wezterm/cmux/ghostty/iterm2/emacs-vterm, captures annotations, and addresses them. Works in git, hg, and jj repos…
write-pr
Reference standards for writing pull request titles and descriptions in the tldraw repository, plus the pre-flight comment sweep over the diff. Use as supporting guidance when another skill or workflow needs PR content standards, not as the user-facing create/update PR workflow.