Verification before completion: Claude shows evidence before it says done

by obra · MIT license · ★ 289,792 on GitHub · updated Sep 20

Verification before completion cover

Verification before completion is a free Claude skill by obra, part of the Superpowers collection. Before Claude claims work is complete, fixed or passing, it has to name the command that proves it, run it in full, read the output and exit code, and only then report. Words like should and probably are red flags.

---
name: verification-before-completion
description: Use when about to claim work is complete, fixed, or passing, before committing or creating PRs - requires running verification commands and confirming output before making any success claims; evidence before assertions always
---

# Verification Before Completion

## Overview

**Core principle:** Evidence before claims, always.

**Violating the letter of this rule is violating the spirit of this rule.**

## The Iron Law

```
NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCE
```

Overview

Violating the letter of this rule is violating the spirit of this rule.

Manual install (npx, ZIP)
Claude Codenpx skills add obra/superpowers --skill verification-before-completion -g -a claude-code
Claude Code (manual)mkdir -p ~/.claude/skills && curl -sL https://codeload.github.com/obra/superpowers/tar.gz/5bf4e7801107 \ | tar -xz -C ~/.claude/skills --strip-components=2 superpowers-5bf4e7801107/skills/verification-before-completion
Windows (PowerShell)New-Item -ItemType Directory -Force "$HOME\.claude\skills" | Out-Null; Invoke-WebRequest "https://m.agentalley.io/zip/2188bcf042c4149c4bd5/verification-before-completion.zip" -OutFile "$env:TEMP\verification-before-completion.zip"; Expand-Archive "$env:TEMP\verification-before-completion.zip" -DestinationPath "$HOME\.claude\skills" -Force
Claude.ai / desktopDownload the ZIP and upload it under Settings → Capabilities → Skills.
Codex, Cursor, other agentsPoint them at SKILL.md. The other files are plain text.

Connects with Agent Alley MCP · agentalley.io/mcp

Files included

  • SKILL.md3.6 KB
Read the files here
obra/5bf4e781 file
SKILL.md
Show the full text121 lines

Verification Before Completion

Overview

Core principle: Evidence before claims, always.

Violating the letter of this rule is violating the spirit of this rule.

The Iron Law

NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCE

If you haven't run the verification command in this message, you cannot claim it passes.

The Gate Function

BEFORE claiming any status or expressing satisfaction:

1. IDENTIFY: What command proves this claim?
2. RUN: Execute the FULL command (fresh, complete)
3. READ: Full output, check exit code, count failures
4. VERIFY: Does output confirm the claim?
   - If NO: State actual status with evidence
   - If YES: State claim WITH evidence
5. ONLY THEN: Make the claim

Skip any step = lying, not verifying

Common Failures

Claim Requires Not Sufficient
Tests pass Test command output: 0 failures Previous run, "should pass"
Linter clean Linter output: 0 errors Partial check, extrapolation
Build succeeds Build command: exit 0 Linter passing, logs look good
Bug fixed Test original symptom: passes Code changed, assumed fixed
Regression test works Red-green cycle verified Test passes once
Agent completed VCS diff shows changes Agent reports "success"
Requirements met Line-by-line checklist Tests passing

Red Flags - STOP

  • Using "should", "probably", "seems to"
  • Expressing satisfaction before verification ("Great!", "Perfect!", "Done!", etc.)
  • About to commit/push/PR without verification
  • Trusting agent success reports
  • Relying on partial verification
  • Thinking "just this once"
  • Tired and wanting work over
  • ANY wording implying success without having run verification

Rationalization Prevention

Excuse Reality
"Should work now" RUN the verification
"I'm confident" Confidence ≠ evidence
"Just this once" No exceptions
"Linter passed" Linter ≠ compiler
"Agent said success" Verify independently
"I'm tired" Exhaustion ≠ excuse
"Partial check is enough" Partial proves nothing
"Different words so rule doesn't apply" Spirit over letter

Key Patterns

Tests:

✅ [Run test command] [See: 34/34 pass] "All tests pass"
❌ "Should pass now" / "Looks correct"

Regression tests (TDD Red-Green):

✅ Write → Run (pass) → Revert fix → Run (MUST FAIL) → Restore → Run (pass)
❌ "I've written a regression test" (without red-green verification)

Build:

✅ [Run build] [See: exit 0] "Build passes"
❌ "Linter passed" (linter doesn't check compilation)

Requirements:

✅ Re-read plan → Create checklist → Verify each → Report gaps or completion
❌ "Tests pass, phase complete"

Agent delegation:

✅ Agent reports success → Check VCS diff → Verify changes → Report actual state
❌ Trust agent report

When To Apply

ALWAYS before:

  • ANY variation of success/completion claims
  • ANY expression of satisfaction
  • ANY positive statement about work state
  • Committing, PR creation, task completion
  • Moving to next task
  • Delegating to agents

Rule applies to:

  • Exact phrases
  • Paraphrases and synonyms
  • Implications of success
  • ANY communication suggesting completion/correctness
1---
2name: verification-before-completion
3description: Use when about to claim work is complete, fixed, or passing, before committing or creating PRs - requires running verification commands and confirming output before making any success claims; evidence before assertions always
4---
5 
6# Verification Before Completion
7 
8## Overview
9 
10**Core principle:** Evidence before claims, always.
11 
12**Violating the letter of this rule is violating the spirit of this rule.**
13 
14## The Iron Law
15 
16```
17NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCE
18```
19 
20If you haven't run the verification command in this message, you cannot claim it passes.
21 
22## The Gate Function
23 
24```
25BEFORE claiming any status or expressing satisfaction:
26 
271. IDENTIFY: What command proves this claim?
282. RUN: Execute the FULL command (fresh, complete)
293. READ: Full output, check exit code, count failures
304. VERIFY: Does output confirm the claim?
31 - If NO: State actual status with evidence
32 - If YES: State claim WITH evidence
335. ONLY THEN: Make the claim
34 
35Skip any step = lying, not verifying
36```
37 
38## Common Failures
39 
40| Claim | Requires | Not Sufficient |
41|-------|----------|----------------|
42| Tests pass | Test command output: 0 failures | Previous run, "should pass" |
43| Linter clean | Linter output: 0 errors | Partial check, extrapolation |
44| Build succeeds | Build command: exit 0 | Linter passing, logs look good |
45| Bug fixed | Test original symptom: passes | Code changed, assumed fixed |
46| Regression test works | Red-green cycle verified | Test passes once |
47| Agent completed | VCS diff shows changes | Agent reports "success" |
48| Requirements met | Line-by-line checklist | Tests passing |
49 
50## Red Flags - STOP
51 
52- Using "should", "probably", "seems to"
53- Expressing satisfaction before verification ("Great!", "Perfect!", "Done!", etc.)
54- About to commit/push/PR without verification
55- Trusting agent success reports
56- Relying on partial verification
57- Thinking "just this once"
58- Tired and wanting work over
59- **ANY wording implying success without having run verification**
60 
61## Rationalization Prevention
62 
63| Excuse | Reality |
64|--------|---------|
65| "Should work now" | RUN the verification |
66| "I'm confident" | Confidence ≠ evidence |
67| "Just this once" | No exceptions |
68| "Linter passed" | Linter ≠ compiler |
69| "Agent said success" | Verify independently |
70| "I'm tired" | Exhaustion ≠ excuse |
71| "Partial check is enough" | Partial proves nothing |
72| "Different words so rule doesn't apply" | Spirit over letter |
73 
74## Key Patterns
75 
76**Tests:**
77```
78✅ [Run test command] [See: 34/34 pass] "All tests pass"
79❌ "Should pass now" / "Looks correct"
80```
81 
82**Regression tests (TDD Red-Green):**
83```
84✅ Write → Run (pass) → Revert fix → Run (MUST FAIL) → Restore → Run (pass)
85❌ "I've written a regression test" (without red-green verification)
86```
87 
88**Build:**
89```
90✅ [Run build] [See: exit 0] "Build passes"
91❌ "Linter passed" (linter doesn't check compilation)
92```
93 
94**Requirements:**
95```
96✅ Re-read plan → Create checklist → Verify each → Report gaps or completion
97❌ "Tests pass, phase complete"
98```
99 
100**Agent delegation:**
101```
102✅ Agent reports success → Check VCS diff → Verify changes → Report actual state
103❌ Trust agent report
104```
105 
106## When To Apply
107 
108**ALWAYS before:**
109- ANY variation of success/completion claims
110- ANY expression of satisfaction
111- ANY positive statement about work state
112- Committing, PR creation, task completion
113- Moving to next task
114- Delegating to agents
115 
116**Rule applies to:**
117- Exact phrases
118- Paraphrases and synonyms
119- Implications of success
120- ANY communication suggesting completion/correctness
121 
View all files on GitHub →

Details

Updated
Sep 20, 2026
License
MIT
Stars on the repo
★ 289,792
Checked
Source
obra/superpowers ↗
Creator
obra · 14 listings
View creator

Similar skills

See all →
MCPExpert debugging specialist for errors, test failuresDebugger AgentCloudAI-X/claude-workflow-v2 · by CloudAI-XExpert debugging specialist for errors, test failures, crashes, segmentation faults, memory leaks, timeouts, race conditions, deadlocks, and unexpected behavior. Use PROACTIVELY when encountering any error, exception, or failing test. Performs systematic root cause analysis.★ 1.4k GitHub starsSkillEncountering any bug, test failure, or unexpected behaviorSystematic debuggingobra/superpowers · by obraUse when encountering any bug, test failure, or unexpected behavior, before proposing fixes★ 290k GitHub starsSkillGuides systematic root-cause debuggingDebugging and error recoveryaddyosmani/agent-skills · by addyosmaniGuides systematic root-cause debugging. Use when tests fail, builds break, something that worked yesterday broke, behavior doesn't match expectations, or you encounter any unexpected error. Use when you need to figure out what broke and why — a systematic approach to finding and fixing the root cause rather than guessing.★ 98.7k GitHub starsSkillMaster systematic debugging techniques, profiling toolsDebugging strategieswshobson/agents · by wshobsonMaster systematic debugging techniques, profiling tools, and root cause analysis to efficiently track down bugs across any codebase or technology stack. Use when investigating bugs, performance issues, or unexpected behavior.★ 39.9k GitHub starsSkillMaster error handling patterns across languages includingwshobson/agents · by wshobsonMaster error handling patterns across languages including exceptions, Result types, error propagation, and graceful degradation to build resilient applications. Use when implementing error handling, designing APIs, or improving application reliability.★ 39.9k GitHub starsSkillCreate structured incident response runbooksIncident runbook templateswshobson/agents · by wshobsonCreate structured incident response runbooks with step-by-step procedures, escalation paths, and recovery actions. Use this skill when building a service outage runbook for a payment processing system; creating database incident procedures covering connection pool exhaustion, replication lag, and disk space alerts; onboarding new on-call engineers who need step-by-step recovery guides written for a 3 AM brain; or standardizing escalation matrices across multiple engineering teams.★ 39.9k GitHub stars

More from obra

SkillBrainstorms ideas into designs before any creative workBrainstorming Ideas Into Designsobra/superpowers · by obraYou MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation.★ 290k GitHub starsSkillRequires technical rigor and verificationCode Review Receptionobra/superpowers · by obraUse when receiving code review feedback, before implementing suggestions, especially if feedback seems unclear or technically questionable - requires technical rigor and verification, not performative agreement or blind implementation★ 290k GitHub starsSkillDispatches parallel agentsDispatching parallel agentsobra/superpowers · by obraUse when facing 2+ independent tasks that can be worked on without shared state or sequential dependencies★ 290k GitHub starsSkillExecutes plans with review checkpointsExecuting plansobra/superpowers · by obraUse when you have a written implementation plan to execute in a separate session with review checkpoints★ 290k GitHub starsSkillFinishes a development branchFinishing a development branchobra/superpowers · by obraUse when implementation is complete, all tests pass, and you need to decide how to integrate the work★ 290k GitHub starsSkillRequests code review before mergingRequesting code reviewobra/superpowers · by obraUse when completing tasks, implementing major features, or before merging to verify work meets requirements★ 290k GitHub stars