New to Claude Skills? Learn how to install them →

affaan-m on GitHub

Verification Loop

Free

Ensure code quality with a structured verification system.

by affaan-m239.3k stars on affaan-m/ecc
1 views
Updated Aug 10, 2026
Get this skill

Free · Opens the source repo

What Verification Loop does

The Verification Loop skill provides a structured approach to verifying code quality during development sessions. It is designed to be invoked after significant code changes, before creating pull requests, or when ensuring that quality gates are met. This skill breaks down the verification process into six distinct phases, each focusing on critical aspects of code integrity, from build verification to security scanning. By following this systematic approach, developers can catch issues early and maintain high standards in their codebase.

The verification process begins with a build check, ensuring that the project compiles successfully. If the build fails, the process halts, prompting immediate attention to the issue. Next, type checking is conducted, with specific commands for TypeScript and Python projects, allowing developers to identify and rectify type errors before proceeding. Linting follows, helping to maintain code style and quality by flagging potential issues in the code.

The skill then runs the test suite to verify that existing functionality remains intact and checks for adequate test coverage. A security scan is performed to identify any hardcoded secrets or console logging that may pose security risks. Finally, a diff review allows developers to inspect changes made, ensuring no unintended modifications have occurred. The output is a comprehensive verification report summarizing the results of each phase, which helps developers quickly assess whether their code is ready for integration.

This skill is particularly useful for teams practicing continuous integration and deployment, as it integrates seamlessly with development workflows and can be run at regular intervals or after major changes. By implementing the Verification Loop, developers can enhance their code quality and reduce the likelihood of introducing bugs or vulnerabilities into their projects.

When to use it

Use this skill after completing significant code changes, before pull requests, or when ensuring quality gates pass.

When not to use it

This skill may not be suitable for quick prototyping or small changes where a full verification process is unnecessary.

What you can build with it

Post-Feature Verification

After implementing a new feature, run the Verification Loop to ensure all quality checks pass before merging.

Pre-PR Quality Check

Before submitting a pull request, use this skill to verify that your code meets all necessary standards and has no critical issues.

Continuous Integration

In a CI/CD environment, set the skill to run every 15 minutes to catch potential issues early and maintain code quality.

How to install Verification Loop

View source

1. Install with the skills CLI

npx skills add affaan-m/ecc/verification-loop --agent claude-code

2. Or install it manually

Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.

Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs

Inside SKILL.md

Written by affaan-m

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

# 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

# TypeScript projects
npx tsc --noEmit 2>&1 | head -30

# Python projects
pyright . 2>&1 | head -30

Report all type errors. Fix critical ones before continuing.

Phase 3: Lint Check

# JavaScript/TypeScript
npm run lint 2>&1 | head -30

# Python
ruff check . 2>&1 | head -30

Phase 4: Test Suite

# 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

# 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

# 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:

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.

Frequently asked questions about Verification Loop

Similar skills