agentleFS
excattexcatt/superclaude-plusplus/skills/verify/SKILL.md

verify

Skill14 starsChanged 37 days agoMITView on GitHub

Ensure code quality with systematic 6-phase verification loop. Use after feature completion, before PR creation, after refactoring, or for periodic quality checks. Keywords: verify, verification, check, validate, quality, build, lint, test, security, pr-ready.

  • Reads credentials

188 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use instinct-export, instinct-import and 9 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • TheKREATORSSkill

    instinct-export

    Export instincts from project/global scope to a file

    Also in 3 projects that use this

  • TheKREATORSSkill

    instinct-import

    Import instincts from file or URL into project/global scope

    Also in 3 projects that use this

  • AviadPSkill

    risk-assess

    Assess the risk and blast radius of a proposed code change before implementing it. Evaluates CI impact, framework-wide vs localized scope, rollback path, and identifies blindspots. Use when user says "what's the risk", "is this safe", "assess the impact", "risk assess", "blast radius", or before applying framework-wide or CI-affecting changes. Do NOT use for code quality review (use code-quality) or plan validation (use design-validator).

    Also in 3 projects that use this

  • AaravChadhaSkill

    secure

    Security review with a confidence gate - a finding exists only with a concrete exploit scenario and a high/medium/low confidence rating; everything else goes to a worth-hardening list, never inflated. Sweeps five surfaces: auth gates, secrets hygiene, injection and unsafe sinks, unsafe deserialization/crypto/transport, and LLM tool-use trust boundaries. Reports only, never fixes. Use when the user asks for a security review or to check vulnerabilities, secrets, or auth.

    Also in 3 projects that use this

  • ArvorCoSkill

    specify

    Create feature specification from natural language description. Use when starting a new feature or creating a spec. Triggers on: create spec, specify feature, new feature spec.

    Also in 10 projects that use this

  • Jurel89Skill

    ai-slop-cleaner

    Clean AI-generated code slop with a regression-safe, deletion-first workflow and optional reviewer-only mode

    Also in 4 projects that use this

  • +1 more from TheKREATORS

The file

We split this skill into the rules it gives an agent

7 rules. 0 are common, 4 are distinctive, and 3 are very specific to this project.

  • 0

    Common

    Most of the 167 edited versions we read keep these.

  • 4

    Distinctive

    This author's own choices. Worth a look.

  • 3

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Ensure quality through systematic 6-phase verification after code changes and confirm PR-ready state.

    line 17
  2. Distinctive:

    After feature implementation completion

    line 22
  3. Very specific:

    Before PR creation (--pre-pr)

    line 23
  4. Distinctive:

    Purpose: Verify type safety

    line 52
  5. Distinctive:

    Purpose: Check security vulnerabilities and sensitive information exposure

    line 115
  6. Very specific:

    After function/component completion → /verify quick

    line 248
  7. Very specific:

    After 15 minutes elapsed → /verify

    line 249

“Common” is measured: kept by at least 6 in 10 of the 167 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Dynamic Context

Current working state: !git status --short 2>/dev/null

Recent changes: !git diff --stat 2>/dev/null | tail -5

Verification Loop Skill

Purpose

Ensure quality through systematic 6-phase verification after code changes and confirm PR-ready state.

Core Principle: Build failure → Immediate stop → Fix issue → Re-verify

Activation Triggers

  • After feature implementation completion
  • Before PR creation (--pre-pr)
  • After refactoring work
  • Periodic quality checks (15-min intervals or major component completion)
  • User explicit request: /verify, verify, check

6-Phase Verification Pipeline

Phase 1: Build Verification 🔨

Purpose: Confirm project compilation/build success

# JavaScript/TypeScript
npm run build || pnpm build || yarn build

# Python
python -m py_compile src/**/*.py

# Go
go build ./...

# Rust
cargo build

On Failure: 🚨 Immediate stop - Build error resolution is top priority


Phase 2: Type Checking 📝

Purpose: Verify type safety

# TypeScript
npx tsc --noEmit

# Python (with type hints)
pyright src/ || mypy src/

# Flow
npx flow check

Output: Type error count and locations


Phase 3: Linting 🔍

Purpose: Detect code style and potential issues

# JavaScript/TypeScript
npm run lint || npx eslint src/

# Python
ruff check src/ || flake8 src/

# Go
golangci-lint run

# Rust
cargo clippy

Output: Lint violation count and severity


Phase 4: Testing 🧪

Purpose: Confirm test passing and coverage

# JavaScript/TypeScript
npm test -- --coverage

# Python
pytest --cov=src --cov-report=term-missing

# Go
go test -cover ./...

# Rust
cargo test

Criteria:

  • ✅ All tests pass
  • ✅ Coverage ≥ 80% (business logic)
  • ⚠️ Coverage < 80% → Show warning

Phase 5: Security Scanning 🛡️

Purpose: Check security vulnerabilities and sensitive information exposure

5.1 Secrets Detection:

# Check .env, credentials, API keys
grep -r "PRIVATE_KEY\|SECRET\|PASSWORD\|API_KEY" src/ --include="*.ts" --include="*.js" --include="*.py"

5.2 Debug Statement Detection:

# Check console.log, print, debugger
grep -rn "console\.log\|console\.debug\|debugger" src/ --include="*.ts" --include="*.tsx" --include="*.js"
grep -rn "print(" src/ --include="*.py" | grep -v "# noqa"

5.3 Dependency Vulnerabilities (optional):

npm audit --audit-level=high
pip-audit

Output: List of discovered security issues


Phase 6: Diff Review 📋

Purpose: Final review of changes

git diff --stat
git diff HEAD~1 --name-only

Review Items:

  • No unintended file changes
  • No missing error handling
  • Edge case handling confirmed
  • Unnecessary console.log/print removed
  • No hardcoded values

Verification Modes

Quick Mode (/verify quick)

Fast verification - Execute Build + Type Check only

Phase 1: Build ✅
Phase 2: Types ✅
⏱️ Complete: ~30 seconds

Full Mode (/verify or /verify full)

Complete 6-phase verification

Phase 1: Build ✅
Phase 2: Types ✅
Phase 3: Lint ✅
Phase 4: Tests ✅ (Coverage: 85%)
Phase 5: Security ✅
Phase 6: Diff ✅
⏱️ Complete: ~2-5 minutes

Pre-PR Mode (/verify pre-pr)

Strict verification before PR submission (Enhanced security)

Phase 1-6: Full verification
+ Additional security scan
+ Dependency vulnerability check
+ Commit message review

Pre-Commit Mode (/verify pre-commit)

Quick verification before commit

Phase 1: Build ✅
Phase 2: Types ✅
Phase 3: Lint ✅
Phase 5: Security (secrets only) ✅

Report Format

Success Report

╔══════════════════════════════════════════════════════╗
║              🎯 VERIFICATION REPORT                  ║
╠══════════════════════════════════════════════════════╣
║ Phase 1: Build        ✅ OK                          ║
║ Phase 2: Type Check   ✅ OK                          ║
║ Phase 3: Lint         ✅ OK (0 issues)               ║
║ Phase 4: Tests        ✅ OK (47/47 passed, 85% cov)  ║
║ Phase 5: Security     ✅ OK (0 issues)               ║
║ Phase 6: Diff Review  ✅ OK (3 files changed)        ║
╠══════════════════════════════════════════════════════╣
║ 📊 Total Issues: 0                                   ║
║ 🚀 PR Ready: YES                                     ║
╚══════════════════════════════════════════════════════╝

Failure Report

╔══════════════════════════════════════════════════════╗
║              🎯 VERIFICATION REPORT                  ║
╠══════════════════════════════════════════════════════╣
║ Phase 1: Build        ✅ OK                          ║
║ Phase 2: Type Check   ❌ FAIL (3 errors)             ║
║   → src/api/user.ts:45 - Type 'string' not assignable║
║   → src/utils/format.ts:12 - Missing return type     ║
║   → src/components/Card.tsx:78 - Property missing    ║
║ Phase 3: Lint         ⚠️ WARN (2 warnings)           ║
║ Phase 4: Tests        ⏸️ SKIPPED (blocked by Phase 2)║
║ Phase 5: Security     ⏸️ SKIPPED                     ║
║ Phase 6: Diff Review  ⏸️ SKIPPED                     ║
╠══════════════════════════════════════════════════════╣
║ 📊 Total Issues: 5                                   ║
║ 🚀 PR Ready: NO                                      ║
║                                                      ║
║ 🔧 Suggested Fixes:                                  ║
║ 1. Fix type errors in src/api/user.ts:45            ║
║ 2. Add return type to formatDate function           ║
║ 3. Add missing 'onClick' prop to Card component     ║
╚══════════════════════════════════════════════════════╝

Periodic Verification Strategy

Mental Checkpoints

  • After function/component completion → /verify quick
  • After 15 minutes elapsed → /verify
  • Major milestone completed → /verify full

Session Integration

Start work
    │
    ├─→ Feature implementation
    │       │
    │       └─→ [15min elapsed] → /verify quick
    │
    ├─→ Component completion
    │       │
    │       └─→ /verify
    │
    ├─→ Feature completion
    │       │
    │       └─→ /verify full
    │
    └─→ PR preparation
            │
            └─→ /verify pre-pr

Integration with Other Skills

With /checkpoint

/checkpoint create "before-refactor"
... refactoring work ...
/verify full
/checkpoint verify "before-refactor"  # Compare changes

With /feature-planner

Auto-execute /verify at each Phase Quality Gate


Auto-Fix Suggestions

Suggest automatic fixes on verification failure:

Issue TypeSuggested Fix
Type ErrorAdd/modify type annotation
Lint Errornpm run lint -- --fix or ruff --fix
Missing TestSuggest test case creation
console.logRemove line or replace with logger
Security IssueSuggest moving to environment variables

Configuration

Project-specific configuration (.claude/verify.config.json):

{
  "coverageThreshold": 80,
  "skipPhases": [],
  "customCommands": {
    "build": "pnpm build",
    "test": "pnpm test:ci",
    "lint": "pnpm lint"
  },
  "securityPatterns": [
    "API_KEY",
    "SECRET",
    "PASSWORD",
    "PRIVATE_KEY"
  ],
  "ignoreFiles": [
    "**/*.test.ts",
    "**/*.spec.ts",
    "**/fixtures/**"
  ]
}

Quick Reference

CommandDescription
/verifyFull 6-phase verification
/verify quickVerify Build + Type only
/verify pre-prStrict verification before PR
/verify pre-commitQuick verification before commit
/verify --fixFix auto-fixable issues

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.