check · jsmastery-pro — Claude Code skill: verify and review before merge
Two modes to gate a PR: verify runs the real app and proves it meets the spec, review runs a senior code review with a fresh model. Both are read-only and never edit code.
npx skills add jsmastery-pro/skills --skill check -a claude-codeWhat check does
check stops merges at the gate. The verify mode runs the real app and watches the change behave: every acceptance criterion met, every specced surface built. This catches what green tests never reveal. The review mode is a senior code review on a different model—one that did not write the code—so it skips the blind spots the author carries. Findings land in docs/reviews/, ranked by severity.
Both modes read only: verify points failures at /debug or /develop, review reports findings to fix. The usual flow is verify right after /develop, then review before a PR. Run both in one call, and verify goes first.
Runs on macOS, Linux, or Windows. Needs only git. Portability flows through portable shell snippets and your agent's own file, process, and browser tools.
What it helps with
- run the app and prove it works against the spec
- get a code review from a fresh model before a PR
- catch problems tests miss
- rank issues by severity after development
- confirm every acceptance criterion is met
Example prompts for the agent
- /check verify auth — runs the app and checks if auth works
- /check review — fresh model reviews the diff, findings go to docs/reviews/
- /check both — verify first, then review
How to install check
1Skills CLI (Vercel)
npx skills add jsmastery-pro/skills --skill check -a claude-code2Manually: put the files in place
~/.claude/skills/check/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/check/
1Skills CLI (Vercel)
npx skills add jsmastery-pro/skills --skill check -a codex2Manually: put the files in place
.agents/skills/check/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add jsmastery-pro/skills --skill check -a cursor2Manually: put the files in place
.cursor/skills/check/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install jsmastery-pro/skills check2Manually: put the files in place
.github/skills/check/SKILL.md1Skills CLI (Vercel)
npx skills add jsmastery-pro/skills --skill check -a gemini-cli2Platform CLI
gemini skills install https://github.com/jsmastery-pro/skills --path skills/checkManually: put the files in place
.devin/skills/check/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add jsmastery-pro/skills --skill check -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about check
How do I install check in Claude Code?
Run npx skills add jsmastery-pro/skills --skill check -a claude-code, then find the skill at ~/.claude/skills/check/SKILL.md. Other platforms have their own command: npx skills add jsmastery-pro/skills --skill check -a codex (Codex), npx skills add jsmastery-pro/skills --skill check -a cursor (Cursor), gh skill install jsmastery-pro/skills check (GitHub Copilot).
What is the difference between verify and review?
verify runs the real app and checks it matches the spec. review is a senior code review on a different model, one that did not write the code, so it sees problems the author missed. Usually verify right after /develop, review before a PR.
Does check ever edit code?
No. Both modes are read-only. verify points failures at /debug or /develop. review writes findings to docs/reviews/ but never touches the code.
Source text
SKILL.md · MIT
--- name: check allowed-tools: Bash, Read, Grep, Glob, Write, Agent argument-hint: [verify | review] description: "Confirm a change before merge. `/check verify` drives the real app to prove behavior against the spec (every acceptance criterion met, every surface built). `/check review` runs a senior code review on a fresh model, one that did not write the code. Verify after /develop, review before a PR. Writes to docs/reviews/, never edits code." --- ## Output style (plain words, no dashes, no hyphens) <!-- OUTPUT-STYLE:START --> Write everything this skill produces, files and messages alike, in plain simple language. Talk to the reader as `you`, warm and direct like a colleague, and present every step as a recommendation they may run or skip, never an order. Keep technical terms that carry real meaning; explain each in plain words. Never use a dash or a hyphen as punctuation: no em dash, no en dash, and no hyphenated compounds. Write `read only`, not `read-only`. Say it in simple words, or reword the sentence. Code, file paths, command flags, and values other skills match on keep their hyphens. Use short sentences, commas, or parentheses. Clear beats clever. <!-- OUTPUT-STYLE:END --> ## What this skill does `/check` is the gate before merge. Two modes, separate jobs, usually both, verify first: - **`verify`** (runtime proof): run the real app and watch the change behave. Proves it works and conforms to the spec (every acceptance criterion met, every specced surface built), which green tests never reveal. Read only on code, no durable files, main thread. Typically after `/develop`. - **`review`** (fresh model code review): a senior read of the diff on a **different model than wrote the code** (a model reviewing its own output shares its blind spots). Writes findings ranked by severity to `docs/reviews/`. Read only. Typically before a PR. Neither mode edits code. `verify` points failures at `/debug` or `/develop`; `review` reports findings to fix. ## Pick the mode (route before doing anything else) First step, before reading any mode file or touching the repo. Look at what followed `/check`: - **Starts with `verify` (or `run`)** → read `modes/verify.md`, follow it fully. Pass remaining arguments (feature name, scope) through. - **Starts with `review`** → read `modes/review.md`, follow it fully. Pass the steering through unchanged (e.g. `/check review with opus`, `/check review uncommitted`). - **No mode word, or ambiguous** (bare `/check`, or a feature name with no mode like `/check auth`) → do NOT guess, do NOT default. Show the two options as a plain text panel and **stop and wait** for the engineer's choice. **How to present the choice (plain text, works on every agent, no interactive modal):** Print exactly this, then stop and wait. Do not assume `verify` until they answer. Route on their typed word (`verify` / `review` / `both`). ``` Which check do you want to run? Type one: • verify run the real app and prove the change works against its spec (usually right after /develop) • review a fresh model senior read of the diff, ranked findings (usually right before a PR) • both verify first, then review ``` No interactive picker or modal: a typed choice shown inline behaves the same in every AI tool. (The `argument-hint` frontmatter also surfaces `verify | review` in Claude Code autocomplete; other tools ignore it, which is why this inline panel is the portable path.) If a feature name came with no mode (`/check auth`), carry it as the target once they pick; still ask the mode. Do not mix modes in one run. On **both**, do `verify` first, then offer `review` next. ## Portability (any OS, any agent) Any Agent Skills client on macOS, Linux, or Windows. `git` is the only required CLI. Other shell snippets are POSIX reference, not literal scripts: use your agent's own cross platform file, process, and browser tools. Each mode file adds its own portability notes. No subagent support falls back to inline, noted per mode. Bundled files: `modes/verify.md`, `modes/review.md`, plus `review-agent-prompt.md` and `review-guide.md` for review. Read only the mode file you routed to; resolve the review bundled files to absolute paths when spawning the reviewer.
© jsmastery-pro · MIT · jsmastery-pro/skills
Similar skills
Everything for Code review and refactoring →check by other authors comes first.