agentleFS
KhaledSaeed18KhaledSaeed18/dotclaude/skills/engineering/verify-completion/SKILL.md

verify-completion

Skill5 starsChanged 4 months agoMITView on GitHub

Gate every "it works / it's fixed / tests pass / done" claim behind fresh evidence. Run the actual verifying command, read its output, and only then state the result. Use before committing, opening a PR, marking a task complete, handing off to or trusting a subagent, or otherwise asserting that work succeeded.

3 other projects use a version of this.

Adopted by

Most recently taken up by

The file

We split this skill into the rules it gives an agent

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

  • 0

    Common

    Most of the 3 edited versions we read keep these.

  • 3

    Distinctive

    This author's own choices. Worth a look.

  • 0

    Very specific

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

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    No completion claim without fresh verification: If you haven't run the verifying command in this turn, you can't say it passes.

    line 10
  2. Distinctive:

    Before stating any status, or even expressing satisfaction ("great", "perfect", "done"):

    line 14
  3. Distinctive:

    Run the command. Read the output.

    line 51

“Common” is measured: kept by at least 6 in 10 of the 3 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

Don't claim work is done, fixed, or passing unless you've just run the thing that proves it and read the output. Saying it's complete when you haven't checked isn't optimism; it's reporting something you don't know to be true, and it breaks trust the moment it turns out wrong.

The one rule

No completion claim without fresh verification. If you haven't run the verifying command in this turn, you can't say it passes. "Should pass now", "I'm confident", "the logs looked fine" are not evidence; they're the feelings that precede unverified claims.

The gate

Before stating any status, or even expressing satisfaction ("great", "perfect", "done"):

  1. Identify the command that would prove the claim.
  2. Run it: the full command, fresh, start to finish. Not a partial check, not a remembered result from earlier.
  3. Read the whole output: exit code, failure count, warnings.
  4. Decide. Does the output actually confirm the claim? If not, state the real status with the evidence. If so, state the claim with the evidence.

Skipping any of these steps turns a verification into a guess.

What each claim actually requires

ClaimWhat proves itWhat does not
Tests passA fresh test run showing 0 failuresA previous run; "should pass"
Linter cleanLinter output, 0 errorsA partial check; extrapolating
Build succeedsBuild command, exit 0Linter passing; logs "looking good"
Bug fixedThe original symptom retested and goneThe code changed, so it's "probably fixed"
Regression test worksWatched it fail before the fix, pass afterIt passes once now
Requirements metA line-by-line pass over the requirementsTests passing
Subagent finishedThe actual diff / output inspectedThe subagent reporting "success"

A linter passing doesn't mean it compiles. A subagent saying "done" doesn't mean it did the work, check the diff. A regression test that's only ever passed hasn't been shown to catch anything; verify it fails without the fix, then passes with it.

Red flags: stop before you claim

  • Reaching for "should", "probably", "seems to."
  • About to say "great" / "perfect" / "done" before running anything.
  • About to commit, push, or open a PR without a fresh check.
  • Taking a subagent's success report at face value.
  • Leaning on a partial or earlier run.
  • "Just this once" / "I'm tired, close enough."
  • Any wording that implies success when you haven't run the proof.

Different phrasing doesn't exempt you: a paraphrase that implies the work is done is still a completion claim.

The bottom line

Run the command. Read the output. Then make the claim. There's no shortcut that preserves the honesty of the statement.

Attribution

Adapted from the verification-before-completion entry of superpowers by Jesse Vincent (MIT). The structure and the core rules are theirs; the wording, the examples, and the integration with this registry's other items are this repository's.

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.