Claude Corner
Claude Committed Code That Never Ran. Name a Skill verify and It Checks First.
12 Oct 2026

At a glance
- Since v2.1.286, a skill named
verifyin your project or home folder makes Claude run it right before each code commit. - You can write the skill yourself, or let the bundled
/verifyrecord one for your repo. - At 7:00 AM ET on Monday 12 October, every npm channel had it,
stableincluded at v2.1.287.
You ask Claude Code to fix a bug and commit. Tests pass, the commit lands, and the app won't start, because nobody ran it. Since v2.1.286, Claude Code has a built-in way to close that gap: if a session starts with a skill named verify in place, Claude is told to run it right before every commit that touches code.
Why it matters
Tests and type checks don't prove the server boots. The bundled /verify skill checks the running app, but it runs only when you type it, so it is easy to forget. A skill of your own named verify changes that, because Claude Code's built-in commit instructions then tell Claude to run it before each commit, skipping commits that only change docs or tests. No setting is needed; the skill being there is the switch.
How to make Claude check before each commit
At 7:00 AM ET on Monday 12 October 2026, npm stable was v2.1.287 and latest and next were v2.1.296, so every npm channel has this.
- Run
claude --versionand confirm v2.1.286 or later. In the Claude Desktop Code tab, type/statusin a local session and read the Claude Code row, since Desktop runs its own copy that can differ from your terminal. - Get a
verifyskill into a place that counts. The quickest route is running/verifyonce on a real change. When it works out how to build and drive your app, it records the result at.claude/skills/verify/SKILL.mdin the repo root, which counts as a project skill. In a monorepo it may record in the touched package instead, so check where the file landed. - Or write the skill yourself at
.claude/skills/verify/SKILL.mdfor the repo, or at~/.claude/skills/verify/SKILL.mdfor every project on your machine. Give it anameand adescriptionin its frontmatter, and keep it short and fast, since it runs before every code commit. - Leave Claude able to invoke it. Don't add
disable-model-invocation: trueto its frontmatter, or Claude never gets the before-commit instruction. - Leave
includeGitInstructionsunset ortrue. Setting it tofalseremoves this instruction along with the rest of Claude Code's commit and pull request guidance, and theCLAUDE_CODE_DISABLE_GIT_INSTRUCTIONSenvironment variable overrides the key for a session. - Start a new session, because Claude Code checks for the skill when a session starts. Commit the skill so teammates get the same check.
Here is an example recipe of ours for a Node app. Only the name and description fields come from the skills doc; swap in your real commands.
---
name: verify
description: Build and run the app to confirm a code change works. Use before committing source changes.
---
From the repository root, stop at the first failure:
1. Run npm ci, then npm run build.
2. Run npm test.
3. Start the server with npm start, request http://localhost:3000/health, and confirm it returns 200. Then stop the server.
Report each command and its result. If a step fails, fix it or tell me why before any commit.
To check it, make a small code change in a fresh session and ask Claude to commit. Claude should run the verify skill before git commit. A README-only commit should skip it.
Our inference, not a documented promise: a local Desktop Code tab session on v2.1.286 or later should apply the same rule, since it runs Claude Code and loads project skills from your codebase and personal skills from ~/.claude/skills/. The Desktop docs don't say so, so test one commit there.
Gotchas
- What doesn't count: the bundled
/verifyand/simplify, plugin skills, and skills synced from your claude.ai account. If you rely on synced skills from Claude Corner: Terminal Missing Skills to Sync From claude.ai, put a copy ofverifyin the repo or in~/.claude/skills/. - The other name: a skill of your own named
simplifygets the same before-commit treatment, so expect a cleanup pass on each commit if one exists. - Recorded recipes:
/run-skill-generatorsaves its recipe under arun-name, which/runand/verifyfollow. Our reading is that it won't trigger the before-commit step on its own, because the rule names onlyverifyandsimplify. - Older format: a
.claude/commands/verify.mdfile counts the same as a skill folder.
Recommended AI prompt
Copy this paragraph into ChatGPT, Claude, Gemini, Grok, or whatever AI you use.
I use Claude Code v2.1.286 or later, and I want Claude to check my app before every commit by giving my repository a project skill named verify, which Claude Code's commit instructions tell Claude to run before each commit that changes code. Ask me what my project is, how I build it, how I start it, and how I can tell it is healthy, then write a short SKILL.md for .claude/skills/verify/ with a name and description in its frontmatter and a fast, numbered list of real commands that stops at the first failure. Keep it under two minutes, never deploy or push, and tell me how to confirm in a new session that Claude runs it before committing.