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.
npx skills add 42-evey/hermes-plugins --skill verify-before-donegit clone --depth 1 https://github.com/42-evey/hermes-pluginsWrote 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.
[](https://agentmods.dev/skills/42-evey/hermes-plugins/verify-before-done)<a href="https://agentmods.dev/skills/42-evey/hermes-plugins/verify-before-done"><img src="https://agentmods.dev/badge/skills/42-evey/hermes-plugins/verify-before-done/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.
<a href="https://agentmods.dev/skills/42-evey/hermes-plugins/verify-before-done"><img src="https://agentmods.dev/badge/skills/42-evey/hermes-plugins/verify-before-done.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00017 | $0.01135 |
| Opus 5.5 | $0.00007 | $0.00454 |
| Sonnet 5.5 | $0.00003 | $0.00227 |
| Haiku 4.5 | $0.00002 | $0.00113 |
Grade A, and why
verify-before-done scanned grade A with 1 finding 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 today.
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.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
- Checking a deploy through a cache. Bypass it (cache-busting query string, `curl -H 'Cache-Control: no-cache'`) and confirm the version. How it starts
The opening of the file, as written. The whole thing — 70 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Verify Before Done
A claim of "fixed", "done", "passing" or "deployed" needs evidence from this session: a command you ran, its output, and the resulting state you inspected. Finding the cause of a failure is systematic-debugging; writing the failing test first is test-driven-development.
When to Use
- About to tell the user something works, is fixed, passes, or is live
- About to commit, open a PR, close a task, or mark a todo complete
- A subagent, CI job or script reports success and you are about to relay it
- After a deploy, migration, config change or service restart
Don't use for: exploratory answers that make no claim of completion.
Evidence Table
| Claim | Evidence required | Not enough |
|---|---|---|
| Tests pass | This session's test output: 0 failed, skipped count read | An earlier run, "should pass" |
| Bug fixed | Original symptom reproduced, then shown gone | Code changed, suite green |
| Feature works | User path run end to end, resulting state inspected | Build green, unit tests green |
| Deployed | Live target serves the new version; write path exercised | Deploy command printed success |
| Data written | Row, file or object read back | Write call returned 200 |
| Subagent done | Its verification re-run by you, or end state inspected | Its report |
Procedure
- Name the claim and the path. Write one line: the claim, and the exact path a user takes to hit it (URL and method, CLI invocation, screen and button, job and input). Done when someone else could repeat the path from that line.
- Pick a check that can fail. It must go red if the claim is false. Prefer the user's path over a proxy:
- A green build or passing CI proves it compiles and the existing tests pass. Run the feature itself.
- Test the write path, not only a read. A GET smoke test passes while uploads, saves and form posts are broken.
- Test the value the consumer reads. Two components can each pass their own tests while the integrated output never changes. Check the rendered value, the table row, the bytes in the file.
- For a bug fix, reproduce the original symptom first, then show it gone.
- Build clean for anything shipped. An incremental build can ship stale code. Wipe the build output or build in a fresh checkout before producing the artifact you deploy, then confirm the artifact's version string or timestamp matches this build.
- Run it fresh. Run the full check now with
terminal. Output from before your last edit does not count. Done when you have the command, its exit code and its output from this session. - Inspect the resulting state. "Deployed", "Saved", "0 errors" and exit 0 are the tool's claims. Query the database row,
read_filethe written file, fetch the deployed page and compare its version, list the uploaded object, or take a screenshot with the browser tools and check it withvision_analyze. - Treat a quiet log as no evidence. Crashes can exit before writing a line, and log rate-limiting drops lines. "No errors in the log" counts for nothing until step 5 passes.
- Check delegated claims. A subagent's or CI's "done" is a claim. Re-run its verification command or inspect the end state it describes.
- Report with scope. For each claim state the exact path exercised, the command and result, and a
Not verified:line naming what you left unchecked (other platforms, roles, the email step, production data). If a check failed, say so and show the output.
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.
- today First seen · 70 lines · 17 tokens per session scan A f80be0e62d65
verify-before-done is a skill published in the GitHub repository 42-evey/hermes-plugins (534 stars, last pushed today), licensed MIT. It adds 17 tokens to every session and 1,135 once invoked, about $0.0001 per session on Opus 5.5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-10-25.
Other skills, from other repositories
build-test
Run the project's build / typecheck / lint / test commands and emit the build.passing + tests.passing signals devloop convergence reads.
probe-input-integrity
Take probe identifiers from the system, run a known-good control, extract (never retype) the code under test, make stubs executable. Use when probing an endpoint, id, path or test harness.
chimera-when-two-results-contradict-suspect-the-apparatus
When two of your own measurements disagree by a margin no mechanism could produce, the defect is in the instrument. Audit the harness before building theory on top of it.
empirical-verification
Scientific method for software. Use when debugging, reviewing surprising behavior, or before claiming code works -- always tether assumptions to reality with a small experiment.
comfyui-pack-live-smoke
Live-smoke a ComfyUI pack in a running instance: browser-driven and headless API-driven checks catch frontend/backend bugs unit tests miss. Use when verifying a pack before opening a registry PR.
drive
Launch and operate the project's app, observe it and record evidence, without judging it. Actions: drive a feature, ready (what is reachable), capture one artifact, cleanup. Use when another skill, a scheduled run or a CI job needs the real app run and shown (/verification:confirm, /debugging:debug), or when asked to…