Skip to content
Automation
Skill

/speckit-checklist

Generate custom quality checklists for validating requirements completeness

From plugin
vibe-skills
3.8k200 skills7 agents3 commands

Claude Code

$ npx -y skills add foryourhealth111-pixel/Vibe-Skills --skill speckit-checklist --agent claude-code

SKILL.md

speckit-checklist.SKILL.md
name: speckit-checklist
description: Generate custom quality checklists for validating requirements completeness
  and clarity. Use to create unit tests for English that ensure spec quality before
  implementation.
compatibility: Requires spec-kit project structure with .specify/ directory
metadata:
  author: github-spec-kit
  source: templates/commands/checklist.md

Speckit Checklist Skill

Checklist Purpose: "Unit Tests for English"

**CRITICAL CONCEPT**: Checklists are **UNIT TESTS FOR REQUIREMENTS WRITING** - they validate the quality, clarity, and completeness of requirements in a given domain.

**NOT for verification/testing**:

  • ❌ NOT "Verify the button clicks correctly"
  • ❌ NOT "Test error handling works"
  • ❌ NOT "Confirm the API returns 200"
  • ❌ NOT checking if code/implementation matches the spec

**FOR requirements quality validation**:

  • ✅ "Are visual hierarchy requirements defined for all card types?" (completeness)
  • ✅ "Is 'prominent display' quantified with specific sizing/positioning?" (clarity)
  • ✅ "Are hover state requirements consistent across all interactive elements?" (consistency)
  • ✅ "Are accessibility requirements defined for keyboard navigation?" (coverage)
  • ✅ "Does the spec define what happens when logo image fails to load?" (edge cases)

**Metaphor**: If your spec is code written in English, the checklist is its unit test suite. You're testing whether the requirements are well-written, complete, unambiguous, and ready for implementation - NOT whether the implementation works.

User Input

$ARGUMENTS

You **MUST** consider the user input before proceeding (if not empty).

Execution Steps

1. **Setup**: Run `.specify/scripts/powershell/check-prerequisites.ps1 -Json` from repo root and parse JSON for FEATURE_DIR and AVAILABLE_DOCS list.

  • All file paths must be absolute.
  • For single quotes in args like "I'm Groot", use escape syntax: e.g 'I'\''m Groot' (or double-quote if possible: "I'm Groot").

2. **Clarify intent (dynamic)**: Derive up to THREE initial contextual clarifying questions (no pre-baked catalog). They MUST:

  • Be generated from the user's phrasing + extracted signals from spec/plan/tasks
  • Only ask about information that materially changes checklist content
  • Be skipped individually if already unambiguous in `$ARGUMENTS`
  • Prefer precision over breadth

Generation algorithm: 1. Extract signals: feature domain keywords (e.g., auth, latency, UX, API), risk indicators ("critical", "must", "compliance"), stakeholder hints ("QA", "review", "security team"), and explicit deliverables ("a11y", "rollback", "contracts"). 2. Cluster signals into candidate focus areas (max 4) ranked by relevance. 3. Identify probable audience & timing (author, reviewer, QA, release) if not explicit. 4. Detect missing dimensions: scope breadth, depth/rigor, risk emphasis, exclusion boundaries, measurable acceptance criteria. 5. Formulate questions chosen from these archetypes:

  • Scope refinement (e.g., "Should this include integration touchpoints with X and Y or stay limited to local module correctness?")
  • Risk prioritization (e.g., "Which of these potential risk areas should receive mandatory gating checks?")
  • Depth calibration (e.g., "Is this a lightweight pre-commit sanity list or a formal release gate?")
  • Audience framing (e.g., "Will this be used by the author only or peers during PR review?")
  • Boundary exclusion (e.g., "Should we explicitly exclude performance tuning items this round?")
  • Scenario class gap (e.g., "No recovery flows detected—are rollback / partial failure paths in scope?")

Question formatting rules:

  • If presenting options, generate a compact table with columns: Option | Candidate | Why It Matters
  • Limit to A–E options maximum; omit table if a free-form answer is clearer
  • Never ask the user to restate what they already said
  • Avoid speculative categories (no hallucination). If uncertain, ask explicitly: "Confirm whether X belongs in scope."

Defaults when interaction impossible:

  • Depth: Standard
  • Audience: Reviewer (PR) if code-related; Author otherwise
  • Focus: Top 2 relevance clusters

Output the questions (label Q1/Q2/Q3). After answers: if ≥2 scenario classes (Alternate / Exception / Recovery / Non-Functional domain) remain unclear, you MAY ask up to TWO more targeted follow‑ups (Q4/Q5) with a one-line justification each (e.g., "Unresolved recovery path risk"). Do not exceed five total questions. Skip escalation if user explicitly declines more.

3. **Understand user request**: Combine `$ARGUMENTS` + clarifying answers:

  • Derive checklist theme (e.g., security, review, deploy, ux)
  • Consolidate explicit must-have items mentioned by user
  • Map focus selections to category scaffolding
  • Infer any missing context from spec/plan/tasks (do NOT hallucinate)

4. **Load feature context**: Read from FEATURE_DIR:

  • spec.md: Feature requirements and scope
  • plan.md (if exists): Technical details, dependencies
  • tasks.md (if exists): Implementation tasks

**Context Loading Strategy**:

  • Load only necessary portions relevant to active focus areas (avoid full-file dumping)
  • Prefer summarizing long sections into concise scenario/requirement bullets
  • Use progressive disclosure: add follow-on retrieval only if gaps detected
  • If source docs are large, generate interim summary items instead of embedding raw text

5. **Generate checklist** - Create "Unit Tests for Requirements":

  • Create `FEATURE_DIR/checklists/` directory if it doesn't exist
  • Generate unique checklist filename:
  • Use short, descriptive name based on domain (e.g., `ux.md`, `api.md`, `security.md`)
  • Format: `[domain].md`
  • If file exists, append to existing file
  • Number items sequentially starting from CHK001
  • Each `/speckit.checklist` run creates a NEW file (never overwrites existing checklists
Read more
@foryourhealth111-pixel
Ships withvibe-skills

Intelligent Skill routing and workflow orchestration for AI agents — +21.12 pp reward, −29.6% tokens on SkillsBench with DeepSeekV4Flash-VE.

3.8k200 skills7 agents
Get the whole plugin

Stars on GitHub

Momentum

stars in total
3.8k
Star history of foryourhealth111-pixel/Vibe-Skills on GitHub, a chart by star-history.com

Other skills on vibe-skills.

More skills from other plugins.

agent-builder

agent-builder

Load immediately after an Agent intent, before the first agent_builder_* call. Governs how you create, configure, test, and…

n8n11d209k
@n8n-io@n8n-ioInstall Skill
browser-use

browser-use

Direct browser control via CDP for web interaction: automation, scraping, testing, screenshots, and site/app work. Also covers…

@browser-use@browser-useInstall Skill
agent-browser

agent-browser

Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling…

@vercel-labs-2@vercel-labs-2Install Skill
add-anydoc

add-anydoc

Add local office-document-to-Markdown conversion to NanoClaw agent containers with the pinned Firecrawl AnyDoc CLI. Use when…

@nanocoai@nanocoaiInstall Skill

Questions about speckit-checklist.

Which coding agents can use speckit-checklist?
speckit-checklist installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.