.claude/skills/verify-spec/SKILL.md
Verify that "Must Have" requirements from SPEC.md are implemented in the codebase.
npx skillsauth add Hoang604/get-thing-done verify-specInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Core responsibilities:
Flow: Load Spec → Extract Requirements → Inspect Code → Verify → Report </objective>
<context> **Input:**./.gtd/<task_name>/SPEC.md — Source of truthAgents used:
research — To find evidence in the code
</context>Get Task Name:
$ARGUMENTS, use it.d-work or similar has set a context, otherwise ask user: "Which task (spec) do you want to verify?"Read Spec:
Read ./.gtd/<task_name>/SPEC.md.
If not found, error: "SPEC.md not found for task <task_name>".
Group related "Must Have" items (e.g., by feature or domain) and spawn a researcher for each group.
Concurrency: As many as needed. Trigger: After grouping requirements.
Fill prompt and spawn:
<objective>
Verify requirement group: {group_name}
</objective>
<requirements>
1. {req_1}
2. {req_2}
</requirements>
<context>
- Task: {task_name}
- Spec File: {spec_path}
</context>
<investigation_checklist>
1. Search codebase for feature implementation (frontend/backend)
2. Trace logic to ensure it meets the requirement
3. Verify edge cases or constraints mentioned
4. Capture file paths and lines as evidence
</investigation_checklist>
<output_format>
Verification Result:
- Status: PASS / FAIL / PARTIAL
- Evidence: (File:Line, Logic description)
- Notes: (Missing edge cases, validation gaps)
</output_format>
Task(
prompt=filled_prompt,
subagent_type="researcher",
description="Verifying requirement: {req_short_desc}"
)
Note: Main agent aggregates results into the report.
Create a verification report (you can output this directly to the user or write to a file if lists are long).
Format:
# Verification Report: {task_name}
**Spec:** ./.gtd/{task_name}/SPEC.md
**Status:** {PASS / FAIL}
## Must Have Requirements
| Requirement | Status | Evidence/Notes |
| :---------- | :--------- | :---------------------------------------------- |
| {Req 1} | ✅ PASS | Found in `file.ts:Method`. Handles X correctly. |
| {Req 2} | ❌ FAIL | No code found for feature Y. |
| {Req 3} | ⚠️ PARTIAL | logic exists in `Z.ts` but missing validation. |
## Summary
- **Implemented:** X/Y
- **Missing:** Z/Y
**Recommendation:**
{Proceed to Verification/Fix Missing Items}
</process>
<offer_next>
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
GTD ► SPEC VERIFICATION COMPLETE
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Task: {task_name}
Status: {PASS/FAIL}
[ ] {Req 1} ...
[ ] {Req 2} ...
─────────────────────────────────────────────────────
</offer_next>
<forced_stop> STOP. The workflow is complete. Do NOT automatically run the next command. Wait for the user. </forced_stop>
testing
manual trigger by user, do not auto invoke
tools
manual trigger by user, do not auto invoke
development
Trace execution paths and document how code actually behaves. Use when you need to understand how features work, walk through code flows, explain component behavior, trace where data comes from, understand relationships between components, or audit for orphaned events and dead code.
testing
Guide users through a structured workflow for co-authoring documentation. Use when user wants to write documentation, proposals, technical specs, decision docs, or similar structured content. This workflow helps users efficiently transfer context, refine content through iteration, and verify the doc works for readers. Trigger when user mentions writing docs, creating proposals, drafting specs, or similar documentation tasks.