verify-completion

verify-completion is a skill for Claude Code from KhaledSaeed18/dotclaude. It costs 69 tokens per session (772 once invoked), scanned A, original, MIT.

A checking rule that requires fresh command output before saying that work is complete, fixed, or passing. It treats claims about software status as statements that need evidence.

In plain words
What is it for?
Use it before committing, opening a pull request, handing off work, or reporting that tests and fixes succeeded.
Why use it?
It prevents unverified success claims by requiring the actual test or verification command to be run and its full result to be read.

Skill for Claude Code

Written for Claude Code: a Claude Code plugin manifest. Also seen: mentions subagents.

Part of the engineering plugin — 22 skills, 2 commands, 7 agents shipped together

Good fit Use it before committing, opening a pull request, handing off work, or reporting that tests and fixes succeeded.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/khaledsaeed18/dotclaude/verify-completion
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add KhaledSaeed18/dotclaude --skill verify-completion
Clone the repo
git clone --depth 1 https://github.com/KhaledSaeed18/dotclaude

Made for: Claude Code.

Or install engineering, the plugin that ships this one along with the rest of its 22 skills, 2 commands, 7 agents.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for verify-completion

README.md
[![agentmods](https://agentmods.dev/badge/skills/khaledsaeed18/dotclaude/verify-completion/github.svg)](https://agentmods.dev/skills/khaledsaeed18/dotclaude/verify-completion)
Your own site
<a href="https://agentmods.dev/skills/khaledsaeed18/dotclaude/verify-completion"><img src="https://agentmods.dev/badge/skills/khaledsaeed18/dotclaude/verify-completion/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for verify-completion

Your own site · 80×15
<a href="https://agentmods.dev/skills/khaledsaeed18/dotclaude/verify-completion"><img src="https://agentmods.dev/badge/skills/khaledsaeed18/dotclaude/verify-completion.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 69 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 772 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00069 $0.00772
Opus 5.5 $0.00028 $0.00309
Sonnet 5.5 $0.00014 $0.00154
Haiku 4.5 $0.00007 $0.00077

Measured 28d ago against content hash a6ffb838e7b5, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

verify-completion scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 28d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.claude-plugin/plugins/engineering/skills/verify-completion/SKILL.md · 56 lines

How it starts

The opening of the file, as written. The whole thing — 56 lines — stays where its author put it; the contents beside it link to each section on GitHub.

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

Claim What proves it What does not
Tests pass A fresh test run showing 0 failures A previous run; "should pass"
Linter clean Linter output, 0 errors A partial check; extrapolating
Build succeeds Build command, exit 0 Linter passing; logs "looking good"
Bug fixed The original symptom retested and gone The code changed, so it's "probably fixed"
Regression test works Watched it fail before the fix, pass after It passes once now
Requirements met A line-by-line pass over the requirements Tests passing
Subagent finished The actual diff / output inspected The 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.

Read the full file on GitHub · 56 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 28d ago Changed · +4 lines a6ffb838e7b5
  2. 1mo ago First seen · 52 lines · 69 tokens per session scan A 8d13ddee80c3

Subscribe to this mod's changes

verify-completion is a skill published in the GitHub repository KhaledSaeed18/dotclaude (5 stars, last pushed 6d ago), licensed MIT. It adds 69 tokens to every session and 772 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

qa-testing

Run QA testing on a page, feature, or full site at one of three depth tiers (smoke, standard, full). Use this skill whenever the user asks to QA a page or site, run a smoke test after a deploy, verify a page before launch, or run a regression sweep. Triggers on QA, QA sweep, smoke test, regression test, post-deploy…

rampstackco/claude-skills · 170 tokens

visual-qa

Runs rigorous visual QA across web, terminal, and paginated surfaces: an Apple HIG-based checklist, paired light/dark captures at phone and desktop widths, screenshot evidence, and a per-item PASS/FAIL verdict. Use for any UI build or change, or when asked whether a page, component, or TUI looks right or follows the…

code-yeongyu/oh-my-openagent · 78 tokens

remove-ai-slops

Removes AI-generated code smells from branch changes or an explicit file list behind regression tests. Use when the user asks to clean up, deslop, or remove AI-slop patterns from recent changes.

code-yeongyu/oh-my-openagent · 45 tokens

senpi-qa

QA the omo Senpi adapter (packages/omo-senpi, packages/senpi-task) against the REAL senpi binary in strict isolation, and write every artifact to the one canonical evidence path .omo/evidence/omo-senpi-adapter/ /. The live drivers under packages/omo-senpi/scripts/qa/ create their own isolated SENPICODINGAGENTDIR and…

code-yeongyu/oh-my-openagent · 251 tokens

test-coverage-improver

Analyze test coverage gaps and generate tests to improve coverage. Use when improving test coverage, finding untested code, or writing missing tests.

OneWave-AI/claude-skills · 34 tokens

browser-test-loop

Use to actually verify a web change in a real browser instead of assuming it works — click through a flow, catch console errors, check a form submits, confirm a fix on the page. Trigger when a UI change needs proof, a bug only reproduces in the browser, or the user asks to test, check, or screenshot the running app.

OneWave-AI/claude-skills · 74 tokens