Codewhale Dogfood Install
codewhale-hq/Codewhale
Proves a Codewhale change in the real product: a stamped release build, an atomic local install, fresh-shell verification and manual QA that automated gates cannot cover.
A gate before merge: verify runs the real app against the spec, and review has a different model do a senior code review, without editing code.
$ npx skills add jsmastery-pro/skills --skill check -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install jsmastery-pro/skills check --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/jsmastery-pro/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/check .claude/skills/check && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "check" agent skill from https://github.com/jsmastery-pro/skills/tree/main/skills/check into .claude/skills/check/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "check", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/jsmastery-pro/skills/tree/main/skills/checkType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add jsmastery-pro/skills --skill check -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install jsmastery-pro/skills check --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jsmastery-pro/skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/check .agents/skills/check && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "check" agent skill from https://github.com/jsmastery-pro/skills/tree/main/skills/check into .agents/skills/check/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "check", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add jsmastery-pro/skills --skill check -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install jsmastery-pro/skills check --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jsmastery-pro/skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/check .cursor/skills/check && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "check" agent skill from https://github.com/jsmastery-pro/skills/tree/main/skills/check into .cursor/skills/check/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "check", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/jsmastery-pro/skills.git --path skills/check--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add jsmastery-pro/skills --skill check -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install jsmastery-pro/skills check --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jsmastery-pro/skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/check .gemini/skills/check && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "check" agent skill from https://github.com/jsmastery-pro/skills/tree/main/skills/check into .gemini/skills/check/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "check", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install jsmastery-pro/skills checkInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add jsmastery-pro/skills --skill check -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/jsmastery-pro/skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/check .github/skills/check && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "check" agent skill from https://github.com/jsmastery-pro/skills/tree/main/skills/check into .github/skills/check/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "check", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add jsmastery-pro/skills --skill check -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install jsmastery-pro/skills check --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jsmastery-pro/skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/check .opencode/skills/check && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "check" agent skill from https://github.com/jsmastery-pro/skills/tree/main/skills/check into .opencode/skills/check/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "check", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
checkA gate before merge: verify runs the real app against the spec, and review has a different model do a senior code review, without editing code.
This skill is a gate before merge with two modes that do separate jobs. Verify runs the real application and watches the change behave, to prove it meets the spec: every acceptance criterion and every specified surface, which passing tests alone do not show. Review is a senior code review of the diff by a different model than the one that wrote the code, since a model reviewing its own output shares its blind spots.
Review writes findings ranked by severity into a docs/reviews folder. Neither mode edits code: verify points failures to debug or develop work, and review reports findings to fix. The mode comes from the first word after the command, with steering such as a model name or uncommitted changes passed through, and an ambiguous request makes the agent print the options and wait instead of guessing. Output is written in plain, short sentences without dashes.
Read from SKILL.md and the folder at commit 43b69e4. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
BashReadGrepGlobWriteAgentFrom allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Pre-Merge Check loads about 1.1k tokens when it runs. Until then it costs about 85 tokens; SKILL.md has 543 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
allowed-tools: Bash, Read, Grep, Glob, Write, AgentAutomated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from jsmastery-pro/skills at commit 43b69e4, republished under its MIT licence (© jsmastery-pro). 543 words, ~1,063 tokens.
.claude/skills/check/SKILL.md (or your agent's skills folder). This skill also uses 5 other files; get the full folder from GitHub.<!-- 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 -->
/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.
First step, before reading any mode file or touching the repo. Look at what followed /check:
verify (or run) → read modes/verify.md, follow it fully. Pass remaining arguments (feature name, scope) through.review → read modes/review.md, follow it fully. Pass the steering through unchanged (e.g. /check review with opus, /check review uncommitted)./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 reviewNo 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.
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. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 5 other files in skills/check of jsmastery-pro/skills.
Open the folder on GitHubat commit 43b69e4
Pre-Merge Check next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Pre-Merge Check this skilljsmastery-pro/skills | 1.4k | — | ~1.1k | Automated safety check: Notes | MIT | |
| Codewhale Dogfood Installcodewhale-hq/Codewhale | 41k | — | ~1.3k | Automated safety check: Pass | MIT | |
| Fix The Classjoetawil7/first-pass | 112 | — | ~1.5k | Automated safety check: Pass | MIT | |
| Fix What I Pointed Atreticlehq/reticle | 1.2k | — | ~878 | Automated safety check: Pass | Apache-2.0 | |
| PlotJuggler Live VerificationPlotJuggler/PlotJuggler | 6.2k | — | ~956 | Automated safety check: Pass | MPL-2.0 | |
| Docs GuardamElnagdy/guard-skills | 1.3k | — | ~2.1k | Automated safety check: Pass | MIT |
codewhale-hq/Codewhale
Proves a Codewhale change in the real product: a stamped release build, an atomic local install, fresh-shell verification and manual QA that automated gates cannot cover.
joetawil7/first-pass
Bug-fix routine that fixes the whole class of bug, not just the reported instance.
reticlehq/reticle
Picks up bugs a person flagged by pointing at elements in the running app, each mark carrying the element, their note and the source file and line, then fixes and verifies them.
PlotJuggler/PlotJuggler
Confirms that a change to PlotJuggler 4 really works in the running app by proving the rebuild, launching with real data and measuring the result.
amElnagdy/guard-skills
Checks generated or edited documentation against the source code, flagging invented symbols, outdated samples and unverifiable claims before publishing.
cursor/plugins
Finds what a code change could break outside its diff and proves the single fact that makes it safe by running real code instead of writing an explanation.
jsmastery-pro/skills
Runs a reproduce, localize, hypothesize, test, fix and verify loop to find a bug's root cause, applies the minimal fix and hands off a regression test.
jsmastery-pro/skills
Builds a feature, page, component, API or data layer from an approved spec and AGENTS.md, and sends you back to /architect when a key decision is missing.
jsmastery-pro/skills
Writes PR descriptions, changelog entries, release notes and postmortems from the actual commits and diff, and saves each one in the right place.
jsmastery-pro/skills
Runs as the last step after a completed change to keep AGENTS.md files, the project scope and linked spec status lines current, using only small surgical edits.
jsmastery-pro/skills
Bootstraps a project's tool-agnostic AGENTS.md files for a greenfield project, an undocumented codebase or one area, adding only what is missing and never overwriting curated content.
jsmastery-pro/skills
Turns a product idea into a coarse, ordered scope kept in docs/scope, then keeps it current: plan a product, plan the next slice, enroll one feature or reconcile after shipping.
Categories
A gate before merge: verify runs the real app against the spec, and review has a different model do a senior code review, without editing code. This skill is a gate before merge with two modes that do separate jobs. Verify runs the real application and watches the change behave, to prove it meets the spec: every acceptance criterion and every specified surface, which passing tests alone do not show.
Pre-Merge Check fits situations like: proving a finished feature meets every acceptance criterion in the spec; getting an independent code review before opening a pull request; reviewing only uncommitted changes with a stronger model; deciding which pre-merge check fits the current stage.
Run `npx skills add jsmastery-pro/skills --skill check -a claude-code`. Or copy the skill folder (skills/check in jsmastery-pro/skills) into .claude/skills/check in your project. Claude Code loads it when a task matches its description.
Run `npx skills add jsmastery-pro/skills --skill check -a codex`. Or copy the skill folder (skills/check in jsmastery-pro/skills) into .agents/skills/check in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add jsmastery-pro/skills --skill check -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/check, .gemini/skills/check, .github/skills/check and .opencode/skills/check in your project.
SKILL.md names no scripts, command-line tools or credentials: Pre-Merge Check is instructions for the agent only. Our summary lists: A spec or acceptance criteria for the change; A way to run the app locally, for verify mode. Its frontmatter pre-approves these tools: Bash, Read, Grep, Glob, Write, Agent.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
Pre-Merge Check is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.1k tokens (SKILL.md is roughly 4.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Pre-Merge Check: Codewhale Dogfood Install (codewhale-hq/Codewhale, 41k stars), Fix The Class (joetawil7/first-pass, 112 stars), Fix What I Pointed At (reticlehq/reticle, 1.2k stars) and PlotJuggler Live Verification (PlotJuggler/PlotJuggler, 6.2k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
jsmastery-pro (a GitHub organization) maintains it in jsmastery-pro/skills, which has 1,429 GitHub stars. The repository holds 8 skills in this directory. The repository was last updated on August 9, 2026.
Source: jsmastery-pro/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.