TUI Change Verification for Warp
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.
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.
$ npx skills add codewhale-hq/Codewhale --skill cw-dogfood -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install codewhale-hq/Codewhale cw-dogfood --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-dogfood .claude/skills/cw-dogfood && 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-dogfood" agent skill from https://github.com/codewhale-hq/Codewhale/tree/main/docs/skills/cw-dogfood into .claude/skills/cw-dogfood/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cw-dogfood", 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-dogfoodType 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-dogfood -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install codewhale-hq/Codewhale cw-dogfood --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-dogfood .agents/skills/cw-dogfood && 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-dogfood" agent skill from https://github.com/codewhale-hq/Codewhale/tree/main/docs/skills/cw-dogfood into .agents/skills/cw-dogfood/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cw-dogfood", 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-dogfood -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install codewhale-hq/Codewhale cw-dogfood --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-dogfood .cursor/skills/cw-dogfood && 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-dogfood" agent skill from https://github.com/codewhale-hq/Codewhale/tree/main/docs/skills/cw-dogfood into .cursor/skills/cw-dogfood/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cw-dogfood", 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-dogfood--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-dogfood -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install codewhale-hq/Codewhale cw-dogfood --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-dogfood .gemini/skills/cw-dogfood && 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-dogfood" agent skill from https://github.com/codewhale-hq/Codewhale/tree/main/docs/skills/cw-dogfood into .gemini/skills/cw-dogfood/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cw-dogfood", 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-dogfoodInstalls 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-dogfood -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-dogfood .github/skills/cw-dogfood && 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-dogfood" agent skill from https://github.com/codewhale-hq/Codewhale/tree/main/docs/skills/cw-dogfood into .github/skills/cw-dogfood/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cw-dogfood", 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-dogfood -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-dogfood --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-dogfood .opencode/skills/cw-dogfood && 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-dogfood" agent skill from https://github.com/codewhale-hq/Codewhale/tree/main/docs/skills/cw-dogfood into .opencode/skills/cw-dogfood/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cw-dogfood", 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-dogfoodProves 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.
The skill covers the step where a Codewhale change is proved in the real product rather than only by passing gates, which show that code compiles and asserts but miss freezes, focus theft, streaming cadence and approval-flow regressions. It puts the actual binary on your PATH and has the agent use it. It is stage four of a six-skill loop that runs orient, slice, gates, dogfood, land and handoff.
The workflow starts by running the gates, never installing an ungated build, then builds a release binary stamped with the current commit SHA, since the installer refuses unstamped builds. `scripts/release/install-dogfood.sh` installs `codewhale` and `codew` atomically and refuses a dirty source tree unless overridden, and the agent must never copy over a running binary because that can hang later launches on Apple Silicon. It then verifies from a fresh login shell that the version string contains the short HEAD SHA, and exercises the changed behavior in a real terminal.
7 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 0ea319a. 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:
gitcargoFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use 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 Dogfood Install loads about 1.3k tokens when it runs. Until then it costs about 60 tokens; SKILL.md has 628 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 0ea319a, republished under its MIT licence (© codewhale-hq). 628 words, ~1,322 tokens.
.claude/skills/cw-dogfood/SKILL.md (or your agent's skills folder).Green gates prove the code compiles and asserts. They do not prove the product works. Freezes, route contamination, focus theft, streaming cadence, and approval-flow regressions all live in the runtime, where no unit test looks. This stage puts the actual binary on your PATH and makes you use it.
Stage 4 of the loop: cw-orient → cw-slice → cw-gates → dogfood → cw-land → cw-handoff.
Gate first. Run cw-gates to the rung the change deserves. Never install an ungated build.
Build stamped. Local builds are unstamped ((dev)), and the
installer refuses an unstamped binary on purpose — the stamp is what proves
the thing on your PATH is the thing you just built:
CODEWHALE_BUILD_SHA=$(git rev-parse HEAD) \
cargo build --release --locked -p codewhale-cli --bin codewhaleInstall atomically. Use the script; do not hand-copy:
scripts/release/install-dogfood.sh # defaults to target/releaseIt refuses a dirty source tree (override deliberately with
CODEWHALE_ALLOW_DIRTY_DOGFOOD=1, and then say so wherever you report the
install), verifies the binary embeds current HEAD, installs codewhale and
codew into ~/.cargo/bin and ~/.local/bin (override with
CODEWHALE_INSTALL_DIRS), re-signs ad-hoc on macOS, and verifies resolution
from a fresh login shell.
Never cp over a running binary. On Apple Silicon that poisons the
kernel's code-signature cache for the inode, and later execs hang until
reboot. The installer does tmp-copy plus atomic mv for exactly this reason.
Verify from a fresh shell, not this one. A correct target/release
binary and a stale codew on PATH is the classic false pass:
zsh -lc 'type -a codew codewhale; codew --version'The version string must contain the short HEAD SHA you just built.
Use the product. Run it in a real terminal and exercise what you changed.
crates/tui/AGENTS.md owns sizes, motion evidence, and environment caveats;
judge motion against docs/MOTION_CONTRACT.md.
Scenarios worth exercising when they are in scope:
Headless surfaces, when the change touches them. codewhale exec is the
one-shot worker path; codewhale app-server is the local control/API surface.
They must agree about routing, permissions, and event states — a disagreement
is a runtime bug, not a QA note.
scripts/release/app-server-smoke.sh
codewhale exec --auto --output-format stream-json --model <model> "Reply PONG"Provider calls spend tokens. Ask before running the paid ones.
Record what you saw. Dimensions, inputs, visible state, side effects. A screenshot proves layout and color; only live observation or a recording proves motion and continuity.
cp a binary over a running one. Use install-dogfood.sh.target/dogfood/* bundles if the lane keeps them: they are
release evidence.CODEWHALE_BUILD_SHA stamp.codew --version from a fresh login shell, with the SHA visible.© 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-dogfood of codewhale-hq/Codewhale.
Open the folder on GitHubat commit 0ea319a
Codewhale Dogfood Install 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 Dogfood Install this skillcodewhale-hq/Codewhale | 41k | — | ~1.3k | Automated safety check: Pass | MIT | |
| TUI Change Verification for Warpwarpdotdev/warp | 65k | 1 repos | ~5.5k | Automated safety check: Notes | AGPL-3.0 | |
| Pre-Merge Checkjsmastery-pro/skills | 1.5k | — | ~1.1k | Automated safety check: Notes | MIT | |
| Fix What I Pointed Atreticlehq/reticle | 1.2k | — | ~878 | Automated safety check: Pass | Apache-2.0 | |
| OpenLogi macOS Permissions TriageAprilNEA/OpenLogi | 23k | — | ~2.5k | Automated safety check: Notes | Apache-2.0 | |
| Apple Container Test RunnerRustPython/RustPython | 22k | — | ~467 | Automated safety check: Pass | MIT |
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.
jsmastery-pro/skills
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.
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.
AprilNEA/OpenLogi
Decides whether an OpenLogi device problem on macOS is a privacy-permission (TCC) problem, using agent log lines, and says which identity needs which grant.
RustPython/RustPython
Runs RustPython tests inside a Linux container built with Apple's container CLI, so macOS users can compare Linux results with their local ones.
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.
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.
codewhale-hq/Codewhale
Turns a bug or idea into a single actionable Codewhale GitHub issue with evidence, a gap-naming title, acceptance criteria and related links.
Categories
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. The skill covers the step where a Codewhale change is proved in the real product rather than only by passing gates, which show that code compiles and asserts but miss freezes, focus theft, streaming cadence and approval-flow regressions. It puts the actual binary on your PATH and has the agent use it.
Codewhale Dogfood Install fits situations like: proving a user-visible TUI or approval-flow change in the running product; installing a local build of Codewhale for manual testing; before calling a runtime bug fixed or landing a release candidate.
Run `npx skills add codewhale-hq/Codewhale --skill cw-dogfood -a claude-code`. Or copy the skill folder (docs/skills/cw-dogfood in codewhale-hq/Codewhale) into .claude/skills/cw-dogfood in your project. Claude Code loads it when a task matches its description.
Run `npx skills add codewhale-hq/Codewhale --skill cw-dogfood -a codex`. Or copy the skill folder (docs/skills/cw-dogfood in codewhale-hq/Codewhale) into .agents/skills/cw-dogfood 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-dogfood -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-dogfood, .gemini/skills/cw-dogfood, .github/skills/cw-dogfood and .opencode/skills/cw-dogfood in your project.
Going by SKILL.md and its folder, Codewhale Dogfood Install needs the command-line tools its instructions call (git and cargo). Our summary lists: A Codewhale source checkout with a Rust toolchain (cargo); A real terminal for manual testing.
SKILL.md contains no URLs. Its commands use 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 Dogfood Install 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.3k tokens (SKILL.md is roughly 5.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 Codewhale Dogfood Install: TUI Change Verification for Warp (warpdotdev/warp, 65k stars), Pre-Merge Check (jsmastery-pro/skills, 1.5k stars), Fix What I Pointed At (reticlehq/reticle, 1.2k stars) and OpenLogi macOS Permissions Triage (AprilNEA/OpenLogi, 23k 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,082 GitHub stars. The repository holds 63 skills in this directory. The repository was last updated on October 11, 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.