lo2cin4bt Acceptance Review
lo2cin4/lo2cin4bt
Runs a pass, revise or block acceptance review on lo2cin4bt work, checking a deliverable against the request, repo contracts, tests, docs and the public GitHub boundary.
Climbs a focused-to-broad set of verification rungs, from formatting checks to budget scripts CI enforces, so a Codewhale change is called done only with quoted command output behind it.
$ npx skills add codewhale-hq/Codewhale --skill cw-gates -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install codewhale-hq/Codewhale cw-gates --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/codewhale-hq/Codewhale.git skills-src && mkdir -p .claude/skills && cp -r skills-src/docs/skills/cw-gates .claude/skills/cw-gates && 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 "cw-gates" agent skill from https://github.com/codewhale-hq/Codewhale/tree/main/docs/skills/cw-gates into .claude/skills/cw-gates/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cw-gates", 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/codewhale-hq/Codewhale/tree/main/docs/skills/cw-gatesType 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 codewhale-hq/Codewhale --skill cw-gates -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install codewhale-hq/Codewhale cw-gates --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/codewhale-hq/Codewhale.git skills-src && mkdir -p .agents/skills && cp -r skills-src/docs/skills/cw-gates .agents/skills/cw-gates && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "cw-gates" agent skill from https://github.com/codewhale-hq/Codewhale/tree/main/docs/skills/cw-gates into .agents/skills/cw-gates/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cw-gates", 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 codewhale-hq/Codewhale --skill cw-gates -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install codewhale-hq/Codewhale cw-gates --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/codewhale-hq/Codewhale.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/docs/skills/cw-gates .cursor/skills/cw-gates && 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 "cw-gates" agent skill from https://github.com/codewhale-hq/Codewhale/tree/main/docs/skills/cw-gates into .cursor/skills/cw-gates/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cw-gates", 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/codewhale-hq/Codewhale.git --path docs/skills/cw-gates--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 codewhale-hq/Codewhale --skill cw-gates -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install codewhale-hq/Codewhale cw-gates --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/codewhale-hq/Codewhale.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/docs/skills/cw-gates .gemini/skills/cw-gates && 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 "cw-gates" agent skill from https://github.com/codewhale-hq/Codewhale/tree/main/docs/skills/cw-gates into .gemini/skills/cw-gates/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cw-gates", 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 codewhale-hq/Codewhale cw-gatesInstalls 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 codewhale-hq/Codewhale --skill cw-gates -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/codewhale-hq/Codewhale.git skills-src && mkdir -p .github/skills && cp -r skills-src/docs/skills/cw-gates .github/skills/cw-gates && 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 "cw-gates" agent skill from https://github.com/codewhale-hq/Codewhale/tree/main/docs/skills/cw-gates into .github/skills/cw-gates/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cw-gates", 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 codewhale-hq/Codewhale --skill cw-gates -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install codewhale-hq/Codewhale cw-gates --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/codewhale-hq/Codewhale.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/docs/skills/cw-gates .opencode/skills/cw-gates && 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 "cw-gates" agent skill from https://github.com/codewhale-hq/Codewhale/tree/main/docs/skills/cw-gates into .opencode/skills/cw-gates/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cw-gates", 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.
cw-gatesClimbs a focused-to-broad set of verification rungs, from formatting checks to budget scripts CI enforces, so a Codewhale change is called done only with quoted command output behind it.
This skill exists because the repository has twice been burned by an exit code mistaken for a pass and a test harness whose scoring line silently reported unevaluated rows as green; it insists that assertions without command output are not evidence, and it is stage 3 of a six-stage loop running from orient through slice, gates, dogfood, land and handoff. It applies before saying a change is done, green, passing, fixed or ready to land, before any dogfood build, and whenever asked to run the gates or prove a change is safe; release-specific work instead uses a sibling skill that adds a version-drift gate and manual TUI targets on top of this ladder.
The first rung is always cheap: a formatting check and a diff whitespace check. The second rung runs the fastest correct test invocation for the area a change touches, found through a dev-test script that maps a source path or area name to a filter and applies the project's isolated build-dir topology, preferring cargo nextest when it is on PATH and falling back to libtest otherwise; a compile-only test run can answer a compile question without executing unrelated cases.
The third rung runs the specific budget and drift-check scripts CI enforces for the area the change can move, such as a dead-code budget that may shrink freely but needs a reviewer's sign-off to raise, with a dedicated update flag to lock in an improvement. The skill's instruction throughout is to climb only as far as the actual risk requires and to say plainly where the check stopped and what was skipped.
Read from SKILL.md and the folder at commit 64bb073. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
python3cargonpmgitshFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use npm and git, which can reach the network depending on how they are called.
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.
Codewhale Verification Ladder loads about 1.4k tokens when it runs. Until then it costs about 51 tokens; SKILL.md has 584 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 found no risky patterns in SKILL.md.
Automated 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 codewhale-hq/Codewhale at commit 64bb073, republished under its MIT licence (© codewhale-hq). 584 words, ~1,387 tokens.
.claude/skills/cw-gates/SKILL.md (or your agent's skills folder).Pick the smallest evidence that answers the actual risk, then quote the real output. This repo has been burned twice by the alternative: an exit code mistaken for a pass, and a harness whose scoring line silently reported unevaluated rows as green. Assertions without command output are not evidence.
Stage 3 of the loop: cw-orient → cw-slice → gates → cw-dogfood → cw-land → cw-handoff.
For release work specifically, use codew-release-qa-sweep instead — it adds the version-drift gate and the manual TUI QA targets on top of this ladder.
Climb only as far as the risk requires. Say where you stopped and what you skipped.
cargo fmt --all -- --check
git diff --checkscripts/dev-test.sh maps an area or a source path to the fastest correct
invocation, and applies the isolated build-dir topology
(docs/BUILD_PERFORMANCE.md):
scripts/dev-test.sh --list
scripts/dev-test.sh crates/command-contract/src/elapsed.rs # path → area + filter
scripts/dev-test.sh tui tools:: # area + filter
scripts/dev-test.sh configIt uses cargo nextest run when nextest is on PATH (.config/nextest.toml);
CODEWHALE_DEV_NEXTEST=0 forces libtest. For the TUI crate, --lib and
--tests are disjoint — choose the target that owns the behavior rather than
running both by reflex.
cargo test --no-run answers a compile question without executing unrelated
cases. cargo test --doc covers doc examples, and is only worth running when
those examples changed.
Run the ones your change can move. Each fails the build in CI:
python3 scripts/check-dead-code-budget.py # #[allow(dead_code)] ceiling
python3 scripts/check-runtime-contract-budget.py
python3 scripts/check-persistence-backlog-budget.py
python3 scripts/check-provider-registry.py # provider registry drift
python3 scripts/check-command-crate-boundaries.py # command-contract boundary
python3 scripts/check-command-migration-manifest.py
python3 scripts/check-tui-locale-parity.py # touched crates/localization/locales/
sh scripts/check-tui-product-vocabulary.sh
python3 scripts/check-readme-translations.py # touched README*.md
./scripts/release/check-versions.sh # touched a version anywhereThe dead-code budget may go down freely; raising it needs a reviewer to be
told why. Lock in a win with python3 scripts/check-dead-code-budget.py --update.
cargo clippy --workspace --all-targets --all-features --locked -- \
-D warnings \
-A clippy::uninlined_format_args \
-A clippy::too_many_arguments \
-A clippy::unnecessary_map_or
cargo nextest run --workspace --all-features --locked --profile ci
cargo test --workspace --all-features --locked --doc
git diff --exit-code -- Cargo.lock # lockfile drift guard--all-targets matters: without it, clippy never lints test code. (CI runs
the all-targets form since the v0.9.10 gate incident; run the same form
locally so there is no weaker subset.)
web/ changedcd web && npm ci && npm test && npm run checkAGENTS.md ("Claiming a test passed") owns the rules: quote the real count
line with N > 0 for the tests that cover the change, prefer a regression
test that fails without the fix, and audit hand-rolled scorers. Two additions
for gate runs:
A checklist: each command, pass/fail, and the salient line (test counts, budget
numbers, the check-versions.sh verdict). Name explicitly what you did not
run and why. If a step could not run in this environment, say so rather than
implying coverage you do not have.
© codewhale-hq, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in docs/skills/cw-gates of codewhale-hq/Codewhale.
Open the folder on GitHubat commit 64bb073
Codewhale Verification Ladder 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 |
|---|---|---|---|---|---|---|
| Codewhale Verification Ladder this skillcodewhale-hq/Codewhale | 41k | — | ~1.4k | Automated safety check: Pass | MIT | |
| lo2cin4bt Acceptance Reviewlo2cin4/lo2cin4bt | 289 | — | ~1.4k | Automated safety check: Pass | Custom licence | |
| RuView Result Verificationruvnet/RuView | 97k | — | ~395 | Automated safety check: Pass | MIT | |
| TUI Change Verification for Warpwarpdotdev/warp | 65k | 1 repos | ~5.5k | Automated safety check: Notes | AGPL-3.0 | |
| Refactor To Rulesopenfootmanager/openfootmanager | 1.1k | — | ~1.3k | Automated safety check: Notes | GPL-3.0 | |
| TiDB Verification Profilespingcap/tidb | 41k | — | ~496 | Automated safety check: Pass | Apache-2.0 |
lo2cin4/lo2cin4bt
Runs a pass, revise or block acceptance review on lo2cin4bt work, checking a deliverable against the request, repo contracts, tests, docs and the public GitHub boundary.
ruvnet/RuView
Proves a RuView result is real by running a deterministic SHA-256 proof and a witness bundle, and by checking reports for untagged or unreproducible accuracy claims.
warpdotdev/warp
Runs Warp's terminal UI for real, drives it with keystrokes and reads the rendered screen back to confirm that a change looks and behaves as intended.
openfootmanager/openfootmanager
Decompose OpenFoot Manager code by responsibility when a quality gate is red, a reviewer requests a split or a refactor is authorized.
pingcap/tidb
Chooses how much validation a TiDB change needs: scoped checks while iterating, required checks at delivery, and expensive runs only when explicitly needed.
streamband/hydra-srt
Run HydraSRT development workflows: mix q quality gate, Elixir unit/E2E tests, native Rust tests, web Vitest/Playwright, and make dev.
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.
codewhale-hq/Codewhale
Writes a paste-ready handoff for the next agent session, opening with a state-check command block and separating done, suspected and blocked work.
codewhale-hq/Codewhale
Decides how verified work should reach main, directly, in a worktree or on an integration branch, while keeping contributor credit and respecting merge gates.
codewhale-hq/Codewhale
Guides when and how to split multi-step coding, research or verification work into focused sub-agent runs while the parent keeps integration and final checks.
codewhale-hq/Codewhale
Triages and manages Codewhale fleet runs and workers with typed commands, classifying failures and choosing a safe restart, resume or escalation.
codewhale-hq/Codewhale
Moves a list of GitHub issues into a milestone or assigns them to owners with the gh CLI, checking each one before and after the change.
Works with
Categories
Climbs a focused-to-broad set of verification rungs, from formatting checks to budget scripts CI enforces, so a Codewhale change is called done only with quoted command output behind it. This skill exists because the repository has twice been burned by an exit code mistaken for a pass and a test harness whose scoring line silently reported unevaluated rows as green; it insists that assertions without command output are not evidence, and it is stage 3 of a six-stage loop running from orient through slice, gates, dogfood, land and handoff. It applies before saying a change is done, green, passing, fixed or ready to land, before any dogfood build, and whenever asked to run the gates or prove a change is safe; release-specific work instead uses a sibling skill that adds a version-drift gate and manual TUI targets on top of this ladder.
Codewhale Verification Ladder fits situations like: confirming a Codewhale change is actually safe before calling it done; choosing the fastest correct test command for the area a change touches; checking a change against the dead-code or other CI-enforced budget scripts; deciding how far up the verification ladder a given change needs to climb.
Run `npx skills add codewhale-hq/Codewhale --skill cw-gates -a claude-code`. Or copy the skill folder (docs/skills/cw-gates in codewhale-hq/Codewhale) into .claude/skills/cw-gates in your project. Claude Code loads it when a task matches its description.
Run `npx skills add codewhale-hq/Codewhale --skill cw-gates -a codex`. Or copy the skill folder (docs/skills/cw-gates in codewhale-hq/Codewhale) into .agents/skills/cw-gates 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 codewhale-hq/Codewhale --skill cw-gates -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/cw-gates, .gemini/skills/cw-gates, .github/skills/cw-gates and .opencode/skills/cw-gates in your project.
Going by SKILL.md and its folder, Codewhale Verification Ladder needs the command-line tools its instructions call (python3, cargo, npm, git and sh). Our summary lists: A Codewhale checkout with Rust, Cargo and the scripts/dev-test.sh tooling; cargo-nextest, optionally, for the faster test runner.
SKILL.md contains no URLs. Its commands use npm and git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Codewhale Verification Ladder 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.4k tokens (SKILL.md is roughly 5.5k 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 Codewhale Verification Ladder: lo2cin4bt Acceptance Review (lo2cin4/lo2cin4bt, 289 stars), RuView Result Verification (ruvnet/RuView, 97k stars), TUI Change Verification for Warp (warpdotdev/warp, 65k stars) and Refactor To Rules (openfootmanager/openfootmanager, 1.1k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
codewhale-hq (a GitHub organization) maintains it in codewhale-hq/Codewhale, which has 41,076 GitHub stars. The repository holds 63 skills in this directory. The repository was last updated on October 10, 2026.
Source: codewhale-hq/Codewhale on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.