
verification-stack
by JoshuaOliphant
Claude Code plugin marketplace - productivity and learning plugins
SKILL.md
name: verification-stack description: Use when running verification pipelines, checking test/lint/type status, or ensuring code quality gates pass before completing work version: 1.0.0
Verification Stack
Verification-driven development uses automated checks as gates instead of manual approval. This skill teaches the verification pipeline that enables autonomous development.
Core Principle
Asymmetry of Verification: Many tasks are easier to verify than to solve. Software development is highly verifiable through:
- Tests (unit, integration, e2e)
- Linters and formatters
- Type checkers
- Build systems
- Security scanners
The Verification Pipeline
Run checks in this order (fast-fail):
# 1. Format (auto-fix)
uv run ruff format .
# 2. Lint (auto-fix where possible)
uv run ruff check . --fix
# 3. Type check
uv run mypy src/
# 4. Tests (fast subset first)
uv run pytest tests/ -x --tb=short
# 5. Full test suite
uv run pytest tests/ --cov=src/
# 6. Security (optional)
uv run bandit -r src/ --severity-level high
One-Command Verification
Create a verification script for the project:
#!/bin/bash
# scripts/verify.sh
set -e
echo "=== Formatting ==="
uv run ruff format .
echo "=== Linting ==="
uv run ruff check . --fix
echo "=== Type Checking ==="
uv run mypy src/
echo "=== Tests ==="
uv run pytest tests/ -x --tb=short
echo "=== All checks passed ==="
Run with: bash scripts/verify.sh
Language-Specific Stacks
Python (uv + ruff + mypy + pytest)
uv run ruff format .
uv run ruff check . --fix
uv run mypy src/
uv run pytest tests/ -x
TypeScript (pnpm + eslint + tsc + vitest)
pnpm format
pnpm lint --fix
pnpm typecheck
pnpm test
Go
go fmt ./...
golangci-lint run --fix
go build ./...
go test ./...
Verification as Gate
The key insight: verification replaces permission prompts.
Instead of:
Claude: "Can I proceed with implementing this feature?"
Human: "Yes"
Use:
Claude: [implements feature]
Claude: [runs verification]
Verification: PASS → proceed
Verification: FAIL → fix and retry
Handling Failures
When verification fails:
- Read the error output - Don't guess, analyze the actual failure
- Fix the specific issue - Make targeted changes
- Re-run verification - Confirm the fix works
- Continue - Move to next task only when green
Common Failure Patterns
| Failure | Fix |
|---|---|
| Lint: unused import | Remove the import |
| Type: missing return | Add return type annotation |
| Test: assertion failed | Fix logic or update test |
| Format: style violation | Auto-fix handles this |
Pre-Commit Integration
Add verification as git hook:
# .pre-commit-config.yaml
repos:
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.4.0
hooks:
- id: ruff
args: [--fix]
- id: ruff-format
Continuous Verification
In autonomous workflows:
- Before starting: Check baseline is green
- After each change: Run relevant subset
- Before closing Bead: Run full suite
- Before merge: Run full suite + integration tests
# Quick check during development
uv run pytest tests/test_specific.py -x
# Full verification before closing Bead
uv run ruff format . && uv run ruff check . --fix && uv run mypy src/ && uv run pytest tests/
Score
Total Score
Based on repository quality metrics
SKILL.mdファイルが含まれている
ライセンスが設定されている
100文字以上の説明がある
GitHub Stars 100以上
3ヶ月以内に更新がある
10回以上フォークされている
オープンIssueが50未満
プログラミング言語が設定されている
1つ以上のタグが設定されている
Reviews
Reviews coming soon