Claude Tips mascot
Claude Tips & Tricks
Claude Code advanced

Create Custom Verification Skills

Build a skill that automatically verifies Claude's code changes by running builds, tests, and linters before considering a task done.

Don’t trust Claude’s “I’m done.” Build a verification skill that proves the work is correct.

The Verification Skill

Create .claude/skills/verify/SKILL.md:

---
name: verify
description: "Runs all verification checks against recent changes"
---

## Verification Checklist

After any code change, run these checks in order. Stop at the first failure.

1. **Build:** Run `npm run build`. Must exit 0.
2. **Lint:** Run `npm run lint`. Must exit 0 with no new warnings.
3. **Type check:** Run `npx tsc --noEmit`. Must exit 0.
4. **Tests:** Run `npm test`. All tests must pass.
5. **Coverage:** Check that test coverage didn't drop.

## Reporting

Report results as:
- PASS: all checks green
- FAIL: which check failed and why
- PARTIAL: some checks skipped (explain why)

If FAIL, fix the issue and re-run all checks from the beginning.

Auto-Trigger After Changes

Add to your CLAUDE.md:

After completing any implementation task, run the verify skill
before reporting that you're done.

Project-Specific Checks

Customize per project:

# For a Python project
1. Run `ruff check .`
2. Run `mypy src/`
3. Run `pytest -x`
4. Run `python -m build`

Tip

A failing verification is better than a passing one you wrote yourself. The skill should use the project’s existing CI checks, not custom validation logic.