/verification
Use when marking a task complete, finishing a feature, or claiming a bug fixed -- verifies functional resolution before closing. Do NOT use for lint/quality checks (use sniper AFTER this).
$ npx -y skills add fusengine/agents --skill verification --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/verification
Context preview
The summary Claude sees to decide when to auto-load this skill.
Use when marking a task complete, finishing a feature, or claiming a bug fixed -- verifies functional resolution before closing. Do NOT use for lint/quality checks (use sniper AFTER this).
SKILL.md
verification.SKILL.mdname: verification
description: "Use when marking a task complete, finishing a feature, or claiming a bug fixed -- verifies functional resolution before closing. Do NOT use for lint/quality checks (use sniper AFTER this)."
<objective> Verification confirms the original request is actually fulfilled -- distinct from sniper, which only confirms the code is clean. It runs a 6-step process: re-read the original request word for word, list every acceptance criterion (explicit and implicit), verify each with concrete evidence (test output, logs, screenshots, diffs), run the full test suite to check for regressions, review every modified file for accidental side effects, then route the "functionally resolved" claim through the `challenger` agent before writing it down.
Step 6 always persists `.claude/apex/docs/verify-{task-slug}.md` -- an in-context "it works" declaration doesn't survive a session boundary, and this artifact is what later gates (sniper, elicitation) actually check. It sits between eLicit and eXamine in APEX: a task is only complete when both verification and sniper pass. </objective>
Verification Before Completion
Overview
**Sniper validates CODE QUALITY. Verification validates FUNCTIONAL RESOLUTION.** Both are needed before closing any task.
Sniper catches linter errors, SOLID violations, and code style issues. Verification ensures the **original request is actually fulfilled** -- the right behavior, the right output, the right fix. A task can pass sniper with zero errors and still be functionally wrong.
| Aspect | Sniper | Verification | |--------|--------|-------------| | **Focus** | Code quality | Functional correctness | | **Checks** | Linting, SOLID, style | Acceptance criteria, regressions, side effects | | **Runs** | After any code change | Before marking task as complete | | **Result** | Clean code | Solved problem |
---
Agent Workflow
When invoked, follow the 6-step verification process below **before** marking any task as completed.
6-Step Verification Process
**Step 1: Re-read the original request** Go back to the original issue, task description, or user message. Read it word by word. Do not rely on memory or assumptions.
**Step 2: List ALL acceptance criteria** Extract every explicit and implicit requirement from the original request. Number them. If the request is vague, list what a reasonable user would expect.
**Step 3: Verify each criterion with evidence** For each criterion, provide concrete evidence of resolution:
- Test output showing the expected behavior
- Log output confirming the fix
- Screenshot of the UI change
- Code diff showing the implementation
**Step 4: Check for regressions** Run the full test suite. Compare results before and after. No new failures, no new warnings.
**Step 5: Check for side effects** Review every modified file. Confirm no accidental changes to unrelated code. Verify dependencies and configuration are unchanged unless required.
**Step 6: Confirm functional resolution -- challenge, then write the artifact** Before writing "Original problem is FUNCTIONALLY resolved," ALWAYS route the claim through the `challenger` agent (or `challenge` skill), fresh-context: claim = "functionally resolved" + evidence from Steps 3-5, NEVER the investigation reasoning. This is systematic -- every Verify gate, no exception, exactly like sniper runs at every eXamine. Only write the "FUNCTIONALLY resolved" verdict after a `CONFIRMED` result (or an `UNCERTAIN` explicitly accepted by the owner). A `REFUTED` verdict must be resolved (fix and re-verify) before the claim reaches the owner -- soft-gate, not a hard veto.
Write `.claude/apex/docs/verify-{task-slug}.md` (template: `references/verify-template.md`): every verification step checked, one evidence item per criterion (command output, log excerpt, screenshot path, or diff), plus the challenge verdict from this step. A context-only "it works" declaration does not survive a session boundary; the written artifact is the guardrail gates (sniper, later elicitation passes) actually check. Then state explicitly in your response: "Original problem is FUNCTIONALLY resolved" with a summary of evidence, or list what remains unresolved.
`{task-slug}`: derive per `apex-methodology/references/init-tracking.md` (git branch slug or active `TaskCreate` id) -- same pattern used by the `elicitation` skill's artifact.
---
Reference Guide
| Resource | Path | Content | |----------|------|---------| | Checklist | `references/checklist.md` | Full verification checklist with all categories | | Common Misses | `references/common-misses.md` | Frequently forgotten verification items | | Artifact Template | `references/verify-template.md` | `verify-{task-slug}.md` template + task-slug derivation |
---
Integration with APEX
Verification runs **between eLicit and eXamine** in the APEX workflow:
Analyze -> Plan -> Execute -> eLicit -> [VERIFICATION] -> eXamine (sniper)
This ensures functional correctness is confirmed before code quality validation. A task is only complete when **both** verification and sniper pass.
---
Critical Rules
| Rule | Reason | |------|--------| | Never skip re-reading the original request | Prevents solving the wrong problem | | Evidence required for every criterion | "It works" is not evidence | | Full test suite, not just new tests | Catches regressions | | Review ALL modified files | Catches accidental side effects | | Both verification AND sniper must pass | Quality without correctness is useless | | Step 6 writes `verify-{task-slug}.md` to disk | In-context self-review without persisted state regresses across sessions |
Read more
name: verification description: "Use when marking a task complete, finishing a feature, or claiming a bug fixed -- verifies functional resolution before closing. Do NOT use for lint/quality checks (use sniper AFTER this)."
<objective> Verification confirms the original request is actually fulfilled -- distinct from sniper, which only confirms the code is clean. It runs a 6-step process: re-read the original request word for word, list every acceptance criterion (explicit and implicit), verify each with concrete evidence (test output, logs, screenshots, diffs), run the full test suite to check for regressions, review every modified file for accidental side effects, then route the "functionally resolved" claim through the `challenger` agent before writing it down.
Step 6 always persists `.claude/apex/docs/verify-{task-slug}.md` -- an in-context "it works" declaration doesn't survive a session boundary, and this artifact is what later gates (sniper, elicitation) actually check. It sits between eLicit and eXamine in APEX: a task is only complete when both verification and sniper pass. </objective>
Verification Before Completion
Overview
**Sniper validates CODE QUALITY. Verification validates FUNCTIONAL RESOLUTION.** Both are needed before closing any task.
Sniper catches linter errors, SOLID violations, and code style issues. Verification ensures the **original request is actually fulfilled** -- the right behavior, the right output, the right fix. A task can pass sniper with zero errors and still be functionally wrong.
| Aspect | Sniper | Verification | |--------|--------|-------------| | **Focus** | Code quality | Functional correctness | | **Checks** | Linting, SOLID, style | Acceptance criteria, regressions, side effects | | **Runs** | After any code change | Before marking task as complete | | **Result** | Clean code | Solved problem |
---
Agent Workflow
When invoked, follow the 6-step verification process below **before** marking any task as completed.
6-Step Verification Process
**Step 1: Re-read the original request** Go back to the original issue, task description, or user message. Read it word by word. Do not rely on memory or assumptions.
**Step 2: List ALL acceptance criteria** Extract every explicit and implicit requirement from the original request. Number them. If the request is vague, list what a reasonable user would expect.
**Step 3: Verify each criterion with evidence** For each criterion, provide concrete evidence of resolution:
- Test output showing the expected behavior
- Log output confirming the fix
- Screenshot of the UI change
- Code diff showing the implementation
**Step 4: Check for regressions** Run the full test suite. Compare results before and after. No new failures, no new warnings.
**Step 5: Check for side effects** Review every modified file. Confirm no accidental changes to unrelated code. Verify dependencies and configuration are unchanged unless required.
**Step 6: Confirm functional resolution -- challenge, then write the artifact** Before writing "Original problem is FUNCTIONALLY resolved," ALWAYS route the claim through the `challenger` agent (or `challenge` skill), fresh-context: claim = "functionally resolved" + evidence from Steps 3-5, NEVER the investigation reasoning. This is systematic -- every Verify gate, no exception, exactly like sniper runs at every eXamine. Only write the "FUNCTIONALLY resolved" verdict after a `CONFIRMED` result (or an `UNCERTAIN` explicitly accepted by the owner). A `REFUTED` verdict must be resolved (fix and re-verify) before the claim reaches the owner -- soft-gate, not a hard veto.
Write `.claude/apex/docs/verify-{task-slug}.md` (template: `references/verify-template.md`): every verification step checked, one evidence item per criterion (command output, log excerpt, screenshot path, or diff), plus the challenge verdict from this step. A context-only "it works" declaration does not survive a session boundary; the written artifact is the guardrail gates (sniper, later elicitation passes) actually check. Then state explicitly in your response: "Original problem is FUNCTIONALLY resolved" with a summary of evidence, or list what remains unresolved.
`{task-slug}`: derive per `apex-methodology/references/init-tracking.md` (git branch slug or active `TaskCreate` id) -- same pattern used by the `elicitation` skill's artifact.
---
Reference Guide
| Resource | Path | Content | |----------|------|---------| | Checklist | `references/checklist.md` | Full verification checklist with all categories | | Common Misses | `references/common-misses.md` | Frequently forgotten verification items | | Artifact Template | `references/verify-template.md` | `verify-{task-slug}.md` template + task-slug derivation |
---
Integration with APEX
Verification runs **between eLicit and eXamine** in the APEX workflow:
Analyze -> Plan -> Execute -> eLicit -> [VERIFICATION] -> eXamine (sniper)
This ensures functional correctness is confirmed before code quality validation. A task is only complete when **both** verification and sniper pass.
---
Critical Rules
| Rule | Reason | |------|--------| | Never skip re-reading the original request | Prevents solving the wrong problem | | Evidence required for every criterion | "It works" is not evidence | | Full test suite, not just new tests | Catches regressions | | Review ALL modified files | Catches accidental side effects | | Both verification AND sniper must pass | Quality without correctness is useless | | Step 6 writes `verify-{task-slug}.md` to disk | In-context self-review without persisted state regresses across sessions |
A plugin ecosystem that turns Claude Code into a supervised, multi-agent development environment.
Repo: fusengine/agents
Other skills on fusengine-agents.
- /agent-creator
Use when creating expert agents. Generates agent.md with frontmatter, hooks, required sections, and skill references.
Open skill - /apex-methodology
Use when starting ANY development task -- feature, bug fix, refactor, hotfix (triggers: implement, create, build, fix, add feature, refactor, develop).
Open skill - /brainstorming
Use when creating a feature/component or adding functionality. Fires BEFORE APEX Analyze to refine requirements via structured questioning.
Open skill - /challenge
Use before a root-cause, done/verified claim, irreversible action, or 2nd-time fix reaches the owner (APEX or plain conversation); also fires at every eLicit/Verify gate. Not for code correctness (use sniper).
Open skill - /code-quality
Use when validating code quality after modifications -- SOLID compliance, DRY duplication, linter errors, architecture violations. Do NOT use for functional verification (run verification FIRST, then code-quality).
Open skill - /elicitation
Use when an expert agent self-reviews and self-corrects code after the Execute phase, before sniper validation (BMAD-METHOD elicitation techniques).
Open skill

