Skip to main content
skill Claude Code CX Codex Cursor GitHub Copilot

verification-loop — Claude skill: six-phase code check

Runs a session's work through six phases — build, types, lint, tests with coverage, secret grep, diff review — and prints a PASS/FAIL report.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add affaan-m/ECC --skill verification-loop -a claude-code
Open on GitHub

What verification-loop does

The skill walks the phases in order and stops if the build breaks. Then type checking (tsc --noEmit for TypeScript, pyright for Python), lint (npm run lint or ruff check), tests with coverage, and a leak sweep: grep for sk-, api_key and console.log under src/. The last phase runs git diff --stat and lists changed files so you can read through each one.

What you get back is a report: status per phase, error and warning counts, coverage percentage, a READY or NOT READY verdict for the PR, and the issues left to fix. The coverage target baked into the skill is 80%.

Install it if you run Claude on a real project and would rather not discover a broken build inside the pull request. For a one-file tweak, six phases is a detour — a PostToolUse hook covers that.

What it helps with

  • check that the project still builds before opening a PR
  • surface type errors after a refactor
  • run the test suite and read the coverage number
  • find leftover API keys and console.log calls
  • review the list of changed files before committing

Example prompts for the agent

  • run verification-loop on the current session
  • verify before the PR and show me the report
  • do the full check: build, types, lint, tests

How to install verification-loop

1Skills CLI (Vercel)

npx skills add affaan-m/ECC --skill verification-loop -a claude-code

2Manually: put the files in place

~/.claude/skills/verification-loop/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/verification-loop/

From the same set146

The whole set →
video-editing affaan-m AI-assisted workflow for editing, trimming, and enriching real footage. Connects raw recordings with FFmpeg cuts, Remotion overlays, and ElevenLabs voiceovers. Claude Code CX Codex Cursor +1 6,500installs docker-patterns affaan-m A skill with Dockerfile and Docker Compose patterns: local dev stacks, networking, volumes, container hardening. Claude Code CX Codex Cursor +1 6,300installs frontend-patterns affaan-m A skill for React and Next.js work: component patterns, state, data fetching, and render performance. Use it when building or reviewing UI. Claude Code CX Codex Cursor +1 5,900installs backend-patterns affaan-m A skill with backend patterns for Node.js, Express and Next.js API routes: layering, caching, transactions, error handling. Claude Code CX Codex Cursor +1 5,900installs coding-standards affaan-m Baseline cross-project coding conventions for naming, immutability, and clean code principles. Useful for code reviews and refactoring. Claude Code CX Codex Cursor +1 5,600installs api-design affaan-m Provides REST API design standards covering resource naming, status codes, pagination, and error payloads. Use it when creating or auditing API contracts. Claude Code CX Codex Cursor +1 5,500installs rust-testing affaan-m A skill for writing Rust tests: unit, integration, async, property-based, mocks and coverage. Useful when the project runs on TDD. Claude Code CX Codex Cursor +1 5,500installs laravel-security affaan-m This skill reviews Laravel authentication, Eloquent safety, CSRF, XSS, APIs, and production settings. Use it for security reviews or deployment checks. Claude Code CX Codex Cursor +1 5,400installs

Similar

dotnet-best-practices official github Guides reviews and edits of selected .NET/C# code with project rules for structure, DI, tests, logging and security. Use it when changing an existing solution. GitHub Copilot 15,752installs next-partial-prefetching-optimizer vercel Tunes Next.js 16.3+ client link prefetching under Partial Prefetching. Balances instant navigation against deferred data reads before the user clicks. Claude Code CX Codex Cursor +1 2,300installs ai-research-reproduction lllllllama This skill guides a repository-grounded reproduction run from its README to an evidence bundle. Use it to test a documented model run without quietly changing the experiment. Claude Code CX Codex Cursor +1 335,300installs improve-codebase-architecture Matt Pocock This skill scans a codebase for architectural friction, then builds a visual HTML report with refactoring candidates. Use it before a deeper architecture review. Claude Code 1,163,035installs design-taste-frontend Leonxlnx This skill directs the design of public pages and work screens, then checks the result in a browser through screenshots. Use it when an interface feels generic or unfinished. Claude Code CX Codex Cursor +1 673,100installs tdd Matt Pocock Guides the red-green TDD loop: ensures tests are written first, keep them at public interfaces, and avoid coupling to implementation details. Claude Code 1,141,062installs skill-creator official anthropics Creates and refines skills, then tests them with prompts, evaluations, and performance checks. Claude Code Claude.ai 414,180installs agent-browser vercel-labs A CLI skill for browser control: it opens pages, fills forms, clicks buttons, and tests web apps. Use it when an agent needs to act inside a website. Claude Code CX Codex Cursor +1 1,200,000installs

Questions about verification-loop

How do I install verification-loop in Claude?

Run npx skills add affaan-m/ECC --skill verification-loop -a claude-code. The skill lands at ~/.claude/skills/verification-loop/SKILL.md.

What does verification-loop do?

It runs six verification phases — build, types, lint, tests with coverage, secret grep and diff review — and turns the results into a PASS/FAIL report.

How is this different from hooks?

A PostToolUse hook catches a problem right after an edit; the skill gives you a full pass over the project. They work together.

Source text

SKILL.md · MIT
---
name: verification-loop
description: Run a six-phase verification of a Claude Code session's work — build, type check, lint, tests with coverage, security grep, and diff review — then produce a PASS/FAIL verification report. Use when verifying work after completing a feature or refactor, before creating a PR, or when quality gates must pass.
license: MIT
metadata:
  origin: ECC
---

# Verification Loop Skill

A comprehensive verification system for Claude Code sessions.

## When to Use

Invoke this skill:
- After completing a feature or significant code change
- Before creating a PR
- When you want to ensure quality gates pass
- After refactoring

## Verification Phases

### Phase 1: Build Verification
```bash
set -o pipefail  # report the build's exit status, not tail's
# Check if project builds
npm run build 2>&1 | tail -20
# OR
pnpm build 2>&1 | tail -20
```

If build fails, STOP and fix before continuing.

### Phase 2: Type Check
```bash
set -o pipefail
# TypeScript projects
npx --no-install tsc --noEmit 2>&1 | sed -n '1,30p'

# Python projects
pyright . 2>&1 | sed -n '1,30p'
```

Report all type errors. Fix critical ones before continuing.

### Phase 3: Lint Check

Use `sed` to limit displayed output while consuming the whole stream. This keeps a
successful linter from failing on SIGPIPE when `pipefail` is enabled.
```bash
set -o pipefail
# JavaScript/TypeScript
npm run lint 2>&1 | sed -n '1,30p'

# Python
ruff check . 2>&1 | sed -n '1,30p'
```

### Phase 4: Test Suite
```bash
set -o pipefail
# Run tests with coverage
npm run test -- --coverage 2>&1 | tail -50

# Check coverage threshold
# Target: 80% minimum
```

Report:
- Total tests: X
- Passed: X
- Failed: X
- Coverage: X%

### Phase 5: Security Scan
```bash
# Check for secrets
grep -rn "sk-" --include="*.ts" --include="*.js" . 2>/dev/null | head -10
grep -rn "api_key" --include="*.ts" --include="*.js" . 2>/dev/null | head -10

# Check for console.log
grep -rn "console.log" --include="*.ts" --include="*.tsx" src/ 2>/dev/null | head -10
```

### Phase 6: Diff Review
```bash
# Show what changed
git diff --stat
git diff HEAD~1 --name-only
```

Review each changed file for:
- Unintended changes
- Missing error handling
- Potential edge cases

## Output Format

After running all phases, produce a verification report:

```
VERIFICATION REPORT
==================

Build:     [PASS/FAIL]
Types:     [PASS/FAIL] (X errors)
Lint:      [PASS/FAIL] (X warnings)
Tests:     [PASS/FAIL] (X/Y passed, Z% coverage)
Security:  [PASS/FAIL] (X issues)
Diff:      [X files changed]

Overall:   [READY/NOT READY] for PR

Issues to Fix:
1. ...
2. ...
```

## Continuous Mode

For long sessions, run verification every 15 minutes or after major changes:

```markdown
Set a mental checkpoint:
- After completing each function
- After finishing a component
- Before moving to next task

Run: /verify
```

## Integration with Hooks

This skill complements PostToolUse hooks but provides deeper verification.
Hooks catch issues immediately; this skill provides comprehensive review.

© affaan-m · MIT · affaan-m/ECC

See also

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor