/verify
Load verification skills before GSD verify-work, then capture verification observations
$ npx -y skills add Tibsfox/gsd-skill-creator --agent claude-codeHow it fires
How this command gets triggered: by you, by Claude, or both.
- Fires itselfClaude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/verify
Context preview
What this command does when you run it.
Load verification skills before GSD verify-work, then capture verification observations
Command definition
verify.mdname: wrap:verify
description: Load verification skills before GSD verify-work, then capture verification observations
argument-hint: "[phase-number]"
allowed-tools:
- Read
- Write
- Bash
- Glob
- Task
/wrap:verify -- Skill-enhanced GSD verify-work
<objective> Wrap GSD verify-work with automatic skill loading before verification and observation capture after completion. The user runs `/wrap:verify N` where N is the phase number. This command:
1. Reads integration config to check if wrappers are enabled 2. Loads verification-relevant skills, biased toward testing and validation patterns 3. Delegates to the real GSD verify-work command (never reimplements GSD logic) 4. Captures verification observations to sessions.jsonl including outcome data 5. Displays a transparency summary of what was loaded and captured
If skill loading or observation capture fails at any point, the GSD command still runs normally. The wrapper enhances but never blocks. </objective>
<companion-skills>
- As the **first step in handler dispatch** (before Step 2 skill loading), invoke the `intent-router` skill to classify the request's information-need and pick the retrieval strategy + token budget for verification-relevant loading.
- When `gsd:verify-work` (or a fix step) produces **multiple candidate fixes/outputs**, use the `execution-grounded-selection` skill to disambiguate by running the candidates and clustering by behavioural fingerprint, instead of output-majority voting — execution-based selection dominates output-majority voting (Semantic Voting, arxiv 2605.08680v1).
Both are advisory and best-effort: if a companion skill is unavailable, proceed normally (the wrapper never blocks). </companion-skills>
<process>
Step 0: Parse Arguments
Extract the phase number N from the user's input.
- If the user provided a number (e.g., `/wrap:verify 5`), use that as N.
- If no phase number was provided, read `.planning/STATE.md` using the Read tool and extract the current phase number from the `Phase:` line under `## Current Position`.
- If STATE.md does not exist and no phase number was given, ask the user to specify one: "No phase number provided and STATE.md not found. Please run `/wrap:verify N` with a phase number."
Store N for use in all subsequent steps.
---
Step 1: Read Integration Config (WRAP-05)
Read `.planning/skill-creator.json` using the Read tool.
**If the file does not exist:** Proceed with all features enabled. This follows the opt-out model: everything defaults to `true`.
- `wrapper_commands`: true (default)
- `auto_load_skills`: true (default)
- `observe_sessions`: true (default)
**If the file exists, parse it and extract:**
- `integration.wrapper_commands` -- the master toggle for all wrapper commands
- `integration.auto_load_skills` -- controls whether skills are loaded in Step 2
- `integration.observe_sessions` -- controls whether observations are captured in Step 4
**If `integration.wrapper_commands` is explicitly `false`:** Display the following message and stop:
Wrapper commands are disabled in `.planning/skill-creator.json`.
Run `/gsd:verify-work N` directly, or enable wrappers by setting
`integration.wrapper_commands` to `true` in the config.
Do not proceed to further steps.
**If parsing fails** (malformed JSON, unexpected structure), log the error and proceed with defaults.
---
Step 2: Load Verification-Relevant Skills (WRAP-06 graceful degradation)
**This entire step is wrapped in error handling.** If ANY part of skill loading fails -- file read errors, glob failures, parsing problems -- log the failure and proceed directly to Step 3. Skill loading must never block GSD verification.
**If `integration.auto_load_skills` is `false`**, skip this step and display:
Skill loading disabled in config. Proceeding with base GSD verification.
**If enabled (default):**
2a. Extract phase domain with verification bias
Read `.planning/ROADMAP.md` using the Read tool. Find the entry for Phase N and extract:
- The phase name/title
- The phase goal or description text
- Any requirement IDs or domain keywords
Determine the phase topic/domain from the goal text. Look for domain keywords such as: "auth", "authentication", "UI", "interface", "API", "endpoint", "test", "testing", "config", "configuration", "database", "schema", "security", "monitoring", "deploy", "CI", "hook", "git", "skill", "pattern", "observation", "wrapper", "command", "install", "validate".
**Verification bias:** In addition to the phase domain keywords, also match skills containing any of the following verification-related terms in their name or description: "test", "verify", "check", "validate", "QA", "lint", "audit", "assert", "spec", "coverage". This ensures testing and verification skills are always considered during verify-work.
2b. Scan for matching skills
1. Use the Glob tool to find `*.md` files in `.claude/commands/` 2. Use the Glob tool to find `*/SKILL.md` files in `.claude/skills/` 3. For each skill file found, read its first 10 lines to extract frontmatter (name, description) 4. Match skills whose description or name contains keywords from the phase domain OR verification-related terms 5. Always include skills tagged as always-applicable (e.g., `beautiful-commits`) regardless of domain match
2c. Display loaded skills (WRAP-07 transparency)
Display which skills were loaded:
### Skills Loaded
- beautiful-commits (always-applicable)
- tdd-workflow (matches verification topic: "test")
Loaded 2 skills for Phase N verification.
If no skills match, display:
### Skills Loaded
No phase-specific skills found. Proceeding with base GSD verification.
If skill scanning encounters an error at any point, display:
### Skills Loaded
Skill loading encountered an error. Proceeding without skill enhancement.
---
Step 3: Delegate to GSD verify-work
This is the core step. The wrapper invokes the real GSD command -- it does NOT reimplemen
Read more
name: wrap:verify description: Load verification skills before GSD verify-work, then capture verification observations argument-hint: "[phase-number]" allowed-tools: - Read - Write - Bash - Glob - Task
/wrap:verify -- Skill-enhanced GSD verify-work
<objective> Wrap GSD verify-work with automatic skill loading before verification and observation capture after completion. The user runs `/wrap:verify N` where N is the phase number. This command:
1. Reads integration config to check if wrappers are enabled 2. Loads verification-relevant skills, biased toward testing and validation patterns 3. Delegates to the real GSD verify-work command (never reimplements GSD logic) 4. Captures verification observations to sessions.jsonl including outcome data 5. Displays a transparency summary of what was loaded and captured
If skill loading or observation capture fails at any point, the GSD command still runs normally. The wrapper enhances but never blocks. </objective>
<companion-skills>
- As the **first step in handler dispatch** (before Step 2 skill loading), invoke the `intent-router` skill to classify the request's information-need and pick the retrieval strategy + token budget for verification-relevant loading.
- When `gsd:verify-work` (or a fix step) produces **multiple candidate fixes/outputs**, use the `execution-grounded-selection` skill to disambiguate by running the candidates and clustering by behavioural fingerprint, instead of output-majority voting — execution-based selection dominates output-majority voting (Semantic Voting, arxiv 2605.08680v1).
Both are advisory and best-effort: if a companion skill is unavailable, proceed normally (the wrapper never blocks). </companion-skills>
<process>
Step 0: Parse Arguments
Extract the phase number N from the user's input.
- If the user provided a number (e.g., `/wrap:verify 5`), use that as N.
- If no phase number was provided, read `.planning/STATE.md` using the Read tool and extract the current phase number from the `Phase:` line under `## Current Position`.
- If STATE.md does not exist and no phase number was given, ask the user to specify one: "No phase number provided and STATE.md not found. Please run `/wrap:verify N` with a phase number."
Store N for use in all subsequent steps.
---
Step 1: Read Integration Config (WRAP-05)
Read `.planning/skill-creator.json` using the Read tool.
**If the file does not exist:** Proceed with all features enabled. This follows the opt-out model: everything defaults to `true`.
- `wrapper_commands`: true (default)
- `auto_load_skills`: true (default)
- `observe_sessions`: true (default)
**If the file exists, parse it and extract:**
- `integration.wrapper_commands` -- the master toggle for all wrapper commands
- `integration.auto_load_skills` -- controls whether skills are loaded in Step 2
- `integration.observe_sessions` -- controls whether observations are captured in Step 4
**If `integration.wrapper_commands` is explicitly `false`:** Display the following message and stop:
Wrapper commands are disabled in `.planning/skill-creator.json`. Run `/gsd:verify-work N` directly, or enable wrappers by setting `integration.wrapper_commands` to `true` in the config.
Do not proceed to further steps.
**If parsing fails** (malformed JSON, unexpected structure), log the error and proceed with defaults.
---
Step 2: Load Verification-Relevant Skills (WRAP-06 graceful degradation)
**This entire step is wrapped in error handling.** If ANY part of skill loading fails -- file read errors, glob failures, parsing problems -- log the failure and proceed directly to Step 3. Skill loading must never block GSD verification.
**If `integration.auto_load_skills` is `false`**, skip this step and display:
Skill loading disabled in config. Proceeding with base GSD verification.
**If enabled (default):**
2a. Extract phase domain with verification bias
Read `.planning/ROADMAP.md` using the Read tool. Find the entry for Phase N and extract:
- The phase name/title
- The phase goal or description text
- Any requirement IDs or domain keywords
Determine the phase topic/domain from the goal text. Look for domain keywords such as: "auth", "authentication", "UI", "interface", "API", "endpoint", "test", "testing", "config", "configuration", "database", "schema", "security", "monitoring", "deploy", "CI", "hook", "git", "skill", "pattern", "observation", "wrapper", "command", "install", "validate".
**Verification bias:** In addition to the phase domain keywords, also match skills containing any of the following verification-related terms in their name or description: "test", "verify", "check", "validate", "QA", "lint", "audit", "assert", "spec", "coverage". This ensures testing and verification skills are always considered during verify-work.
2b. Scan for matching skills
1. Use the Glob tool to find `*.md` files in `.claude/commands/` 2. Use the Glob tool to find `*/SKILL.md` files in `.claude/skills/` 3. For each skill file found, read its first 10 lines to extract frontmatter (name, description) 4. Match skills whose description or name contains keywords from the phase domain OR verification-related terms 5. Always include skills tagged as always-applicable (e.g., `beautiful-commits`) regardless of domain match
2c. Display loaded skills (WRAP-07 transparency)
Display which skills were loaded:
### Skills Loaded - beautiful-commits (always-applicable) - tdd-workflow (matches verification topic: "test") Loaded 2 skills for Phase N verification.
If no skills match, display:
### Skills Loaded No phase-specific skills found. Proceeding with base GSD verification.
If skill scanning encounters an error at any point, display:
### Skills Loaded Skill loading encountered an error. Proceeding without skill enhancement.
---
Step 3: Delegate to GSD verify-work
This is the core step. The wrapper invokes the real GSD command -- it does NOT reimplemen
An adaptive learning and coprocessor architecture for Claude Code, built as an extension to GSD (open-gsd)
Repo: Tibsfox/gsd-skill-creator
Other commands on gsd-skill-creator.
- /api-design
REST API design best practices. Use when designing APIs, choosing status codes, or creating endpoints.
Open command - /code-review
Reviews code for bugs, style, and best practices. Use when reviewing PRs or checking code quality.
Open command - /context-handoff
Creates context handoff documents for session continuity. Use when ending sessions, switching tasks, or handing off work.
Open command - /decision-framework
Thinking frameworks for decisions and problem analysis. Use when evaluating options, root causes, or prioritizing.
Open command - /env-setup
Environment configuration and secrets management. Use when setting up .env files, managing secrets, or configuring environments.
Open command - /file-operation-patterns
Safe file operation patterns. Use when performing bulk file operations or writing deployment scripts.
Open command

