Create or update feature specifications from natural language descriptions.

Apache-2.0Auto-check passedDevelopment

Install Speckit Specify

skills CLI
$ npx skills add foryourhealth111-pixel/Vibe-Skills --skill speckit-specify -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install foryourhealth111-pixel/Vibe-Skills speckit-specify --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/foryourhealth111-pixel/Vibe-Skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/bundled/skills/speckit-specify .claude/skills/speckit-specify && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
speckit-specify
GitHub stars
3.6k
Token cost
~3.3k tokens
SKILL.md length
1,496 words
Files
1
Skills in repo
81
Repo updated
First seen
Licence
Apache-2.0

At a glance

Create or update feature specifications from natural language descriptions.

  • Works in 7 steps: Generate a concise short name (2-4… → Check for existing branches before… → Load .specify/templates/spec-template.md… → …
  • Starting new features
  • SKILL.md covers User Input, Outline, General Guidelines and Quick Guidelines
  • Calls git

What it does

Speckit Specify is an agent skill from foryourhealth111-pixel/Vibe-Skills. Create or update feature specifications from natural language descriptions. Use when starting new features or refining requirements. Generates spec.md with user stories, functional requirements, and acceptance criteria following spec-driven development methodology.

Its SKILL.md is about 3.3k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts. Compatibility notes: Requires spec-kit project structure with .specify/ directory

It sits in Development, covering Spec-driven development and User stories. The repository describes itself as: Intelligent Skill routing and workflow orchestration for AI agents — +21.12 pp reward, −29.6% tokens on SkillsBench with DeepSeekV4Flash-VE. The licence is Apache-2.0.

When your agent uses it

  • Starting new features
  • Refining requirements

Example prompts

  • “/speckit-specify”

Requirements

  • Compatibility (from SKILL.md): Requires spec-kit project structure with .specify/ directory

Workflow steps

7 steps, taken from the first numbered list in SKILL.md.

  1. Generate a concise short name (2-4 words) for the branch
  2. Check for existing branches before creating new one
  3. Load .specify/templates/spec-template.md to understand required sections.
  4. Follow this execution flow
  5. Write the specification to SPEC_FILE using the template structure, replacing placeholders with concrete details derived from the feature…
  6. Specification Quality Validation: After writing the initial spec, validate it against quality criteria
  7. Report completion with branch name, spec file path, checklist results, and readiness for the next phase (/speckit.clarify or /speckit.plan).

What it can do on your machine

Read from SKILL.md and the folder at commit ddcaa2a. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • git

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

  • Compatibility

    Requires spec-kit project structure with .specify/ directory

    From compatibility in the SKILL.md frontmatter.

Context cost

Speckit Specify loads about 3.3k tokens when it runs. Until then it costs about 70 tokens; SKILL.md has 1,496 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~70
When it runs · the whole SKILL.md, loaded when a task matches
~3.3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from foryourhealth111-pixel/Vibe-Skills at commit ddcaa2a, republished under its Apache-2.0 licence (© foryourhealth111-pixel). 1,496 words, ~3,265 tokens.

Download SKILL.mdSave it as .claude/skills/speckit-specify/SKILL.md (or your agent's skills folder).
name
speckit-specify
description
Create or update feature specifications from natural language descriptions. Use when starting new features or refining requirements. Generates spec.md with user stories, functional requirements, and acceptance criteria following spec-driven development methodology.
compatibility
Requires spec-kit project structure with .specify/ directory
metadata.author
github-spec-kit
metadata.source
templates/commands/specify.md

Speckit Specify Skill

User Input

text
$ARGUMENTS

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

Outline

The text the user typed after /speckit.specify in the triggering message is the feature description. Assume you always have it available in this conversation even if $ARGUMENTS appears literally below. Do not ask the user to repeat it unless they provided an empty command.

Given that feature description, do this:

  1. Generate a concise short name (2-4 words) for the branch:

    • Analyze the feature description and extract the most meaningful keywords
    • Create a 2-4 word short name that captures the essence of the feature
    • Use action-noun format when possible (e.g., "add-user-auth", "fix-payment-bug")
    • Preserve technical terms and acronyms (OAuth2, API, JWT, etc.)
    • Keep it concise but descriptive enough to understand the feature at a glance
    • Examples:
      • "I want to add user authentication" → "user-auth"
      • "Implement OAuth2 integration for the API" → "oauth2-api-integration"
      • "Create a dashboard for analytics" → "analytics-dashboard"
      • "Fix payment processing timeout bug" → "fix-payment-timeout"
  2. Check for existing branches before creating new one:

    a. First, fetch all remote branches to ensure we have the latest information:

    bash
    git fetch --all --prune

    b. Find the highest feature number across all sources for the short-name:

    • Remote branches: git ls-remote --heads origin | grep -E 'refs/heads/[0-9]+-<short-name>$'
    • Local branches: git branch | grep -E '^[* ]*[0-9]+-<short-name>$'
    • Specs directories: Check for directories matching specs/[0-9]+-<short-name>

    c. Determine the next available number:

    • Extract all numbers from all three sources
    • Find the highest number N
    • Use N+1 for the new branch number

    d. Run the script .specify/scripts/powershell/create-new-feature.ps1 -Json "$ARGUMENTS" with the calculated number and short-name:

    • Pass --number N+1 and --short-name "your-short-name" along with the feature description
    • Bash example: .specify/scripts/powershell/create-new-feature.ps1 -Json "$ARGUMENTS" --json --number 5 --short-name "user-auth" "Add user authentication"
    • PowerShell example: .specify/scripts/powershell/create-new-feature.ps1 -Json "$ARGUMENTS" -Json -Number 5 -ShortName "user-auth" "Add user authentication"

    IMPORTANT:

    • Check all three sources (remote branches, local branches, specs directories) to find the highest number
    • Only match branches/directories with the exact short-name pattern
    • If no existing branches/directories found with this short-name, start with number 1
    • You must only ever run this script once per feature
    • The JSON is provided in the terminal as output - always refer to it to get the actual content you're looking for
    • The JSON output will contain BRANCH_NAME and SPEC_FILE paths
    • 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")
  3. Load .specify/templates/spec-template.md to understand required sections.

  4. Follow this execution flow:

    1. Parse user description from Input If empty: ERROR "No feature description provided"
    2. Extract key concepts from description Identify: actors, actions, data, constraints
    3. For unclear aspects:
      • Make informed guesses based on context and industry standards
      • Only mark with [NEEDS CLARIFICATION: specific question] if:
        • The choice significantly impacts feature scope or user experience
        • Multiple reasonable interpretations exist with different implications
        • No reasonable default exists
      • LIMIT: Maximum 3 [NEEDS CLARIFICATION] markers total
      • Prioritize clarifications by impact: scope > security/privacy > user experience > technical details
    4. Fill User Scenarios & Testing section If no clear user flow: ERROR "Cannot determine user scenarios"
    5. Generate Functional Requirements Each requirement must be testable Use reasonable defaults for unspecified details (document assumptions in Assumptions section)
    6. Define Success Criteria Create measurable, technology-agnostic outcomes Include both quantitative metrics (time, performance, volume) and qualitative measures (user satisfaction, task completion) Each criterion must be verifiable without implementation details
    7. Identify Key Entities (if data involved)
    8. Return: SUCCESS (spec ready for planning)
  5. Write the specification to SPEC_FILE using the template structure, replacing placeholders with concrete details derived from the feature description (arguments) while preserving section order and headings.

  6. Specification Quality Validation: After writing the initial spec, validate it against quality criteria:

    a. Create Spec Quality Checklist: Generate a checklist file at FEATURE_DIR/checklists/requirements.md using the checklist template structure with these validation items:

    markdown
    # Specification Quality Checklist: [FEATURE NAME]
    
    **Purpose**: Validate specification completeness and quality before proceeding to planning
    **Created**: [DATE]
    **Feature**: [Link to spec.md]
    
    ## Content Quality
    
    - [ ] No implementation details (languages, frameworks, APIs)
    - [ ] Focused on user value and business needs
    - [ ] Written for non-technical stakeholders
    - [ ] All mandatory sections completed
    
    ## Requirement Completeness
    
    - [ ] No [NEEDS CLARIFICATION] markers remain
    - [ ] Requirements are testable and unambiguous
    - [ ] Success criteria are measurable
    - [ ] Success criteria are technology-agnostic (no implementation details)
    - [ ] All acceptance scenarios are defined
    - [ ] Edge cases are identified
    - [ ] Scope is clearly bounded
    - [ ] Dependencies and assumptions identified
    
    ## Feature Readiness
    
    - [ ] All functional requirements have clear acceptance criteria
    - [ ] User scenarios cover primary flows
    - [ ] Feature meets measurable outcomes defined in Success Criteria
    - [ ] No implementation details leak into specification
    
    ## Notes
    
    - Items marked incomplete require spec updates before `/speckit.clarify` or `/speckit.plan`

    b. Run Validation Check: Review the spec against each checklist item:

    • For each item, determine if it passes or fails
    • Document specific issues found (quote relevant spec sections)

    c. Handle Validation Results:

    • If all items pass: Mark checklist complete and proceed to step 6

    • If items fail (excluding [NEEDS CLARIFICATION]):

      1. List the failing items and specific issues
      2. Update the spec to address each issue
      3. Re-run validation until all items pass (max 3 iterations)
      4. If still failing after 3 iterations, document remaining issues in checklist notes and warn user
    • If [NEEDS CLARIFICATION] markers remain:

      1. Extract all [NEEDS CLARIFICATION: ...] markers from the spec

      2. LIMIT CHECK: If more than 3 markers exist, keep only the 3 most critical (by scope/security/UX impact) and make informed guesses for the rest

      3. For each clarification needed (max 3), present options to user in this format:

        markdown
        ## Question [N]: [Topic]
        
        **Context**: [Quote relevant spec section]
        
        **What we need to know**: [Specific question from NEEDS CLARIFICATION marker]
        
        **Suggested Answers**:
        
        | Option | Answer | Implications |
        |--------|--------|--------------|
        | A      | [First suggested answer] | [What this means for the feature] |
        | B      | [Second suggested answer] | [What this means for the feature] |
        | C      | [Third suggested answer] | [What this means for the feature] |
        | Custom | Provide your own answer | [Explain how to provide custom input] |
        
        **Your choice**: _[Wait for user response]_
      4. CRITICAL - Table Formatting: Ensure markdown tables are properly formatted:

        • Use consistent spacing with pipes aligned
        • Each cell should have spaces around content: | Content | not |Content|
        • Header separator must have at least 3 dashes: |--------|
        • Test that the table renders correctly in markdown preview
      5. Number questions sequentially (Q1, Q2, Q3 - max 3 total)

      6. Present all questions together before waiting for responses

      7. Wait for user to respond with their choices for all questions (e.g., "Q1: A, Q2: Custom - [details], Q3: B")

      8. Update the spec by replacing each [NEEDS CLARIFICATION] marker with the user's selected or provided answer

      9. Re-run validation after all clarifications are resolved

    d. Update Checklist: After each validation iteration, update the checklist file with current pass/fail status

  7. Report completion with branch name, spec file path, checklist results, and readiness for the next phase (/speckit.clarify or /speckit.plan).

Show full SKILL.md (387 more words)Show less

NOTE: The script creates and checks out the new branch and initializes the spec file before writing.

General Guidelines

Quick Guidelines

  • Focus on WHAT users need and WHY.
  • Avoid HOW to implement (no tech stack, APIs, code structure).
  • Written for business stakeholders, not developers.
  • DO NOT create any checklists that are embedded in the spec. That will be a separate command.
Section Requirements
  • Mandatory sections: Must be completed for every feature
  • Optional sections: Include only when relevant to the feature
  • When a section doesn't apply, remove it entirely (don't leave as "N/A")
For AI Generation

When creating this spec from a user prompt:

  1. Make informed guesses: Use context, industry standards, and common patterns to fill gaps
  2. Document assumptions: Record reasonable defaults in the Assumptions section
  3. Limit clarifications: Maximum 3 [NEEDS CLARIFICATION] markers - use only for critical decisions that:
    • Significantly impact feature scope or user experience
    • Have multiple reasonable interpretations with different implications
    • Lack any reasonable default
  4. Prioritize clarifications: scope > security/privacy > user experience > technical details
  5. Think like a tester: Every vague requirement should fail the "testable and unambiguous" checklist item
  6. Common areas needing clarification (only if no reasonable default exists):
    • Feature scope and boundaries (include/exclude specific use cases)
    • User types and permissions (if multiple conflicting interpretations possible)
    • Security/compliance requirements (when legally/financially significant)

Examples of reasonable defaults (don't ask about these):

  • Data retention: Industry-standard practices for the domain
  • Performance targets: Standard web/mobile app expectations unless specified
  • Error handling: User-friendly messages with appropriate fallbacks
  • Authentication method: Standard session-based or OAuth2 for web apps
  • Integration patterns: Use project-appropriate patterns (REST/GraphQL for web services, function calls for libraries, CLI args for tools, etc.)
Success Criteria Guidelines

Success criteria must be:

  1. Measurable: Include specific metrics (time, percentage, count, rate)
  2. Technology-agnostic: No mention of frameworks, languages, databases, or tools
  3. User-focused: Describe outcomes from user/business perspective, not system internals
  4. Verifiable: Can be tested/validated without knowing implementation details

Good examples:

  • "Users can complete checkout in under 3 minutes"
  • "System supports 10,000 concurrent users"
  • "95% of searches return results in under 1 second"
  • "Task completion rate improves by 40%"

Bad examples (implementation-focused):

  • "API response time is under 200ms" (too technical, use "Users see results instantly")
  • "Database can handle 1000 TPS" (implementation detail, use user-facing metric)
  • "React components render efficiently" (framework-specific)
  • "Redis cache hit rate above 80%" (technology-specific)

© foryourhealth111-pixel, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in bundled/skills/speckit-specify of foryourhealth111-pixel/Vibe-Skills.

Open the folder on GitHubat commit ddcaa2a

Compare with similar skills

Speckit Specify next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Speckit Specify compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Speckit Specify this skillforyourhealth111-pixel/Vibe-Skills3.6k—~3.3kAutomated safety check: PassApache-2.0
Fixgenkovich/sdd171—~2.5kAutomated safety check: PassMIT
Spec Driven Workflowalirezarezvani/claude-skills28k—~3.9kAutomated safety check: PassMIT
Tbdjlevy/strif131—~3.5kAutomated safety check: PassMIT
Extracting Requirementsprime-radiant-inc/iterative-development181—~2.7kAutomated safety check: PassApache-2.0
Spec Workflowhashgraph-online/awesome-codex-plugins1.3k—~2.1kAutomated safety check: PassApache-2.0

Similar skills

  • Fix

    genkovich/sdd

    A skill your agent uses to fix a reported bug spec-first: reproduce it, trace the symptom to the owning feature's acceptance criteria, pin it with a failing (RED) test, apply the minimal GREEN fix…

    171 GitHub stars~2.5k tokensUpdated 1 mo ago
    DevelopmentAuto-check passed
  • Spec Driven Workflow

    alirezarezvani/claude-skills

    A skill your agent uses when the user asks to write specs before code, define acceptance criteria, plan features before implementation, generate tests from specifications, or follow spec-first…

    28k GitHub stars~3.9k tokensUpdated 1 mo ago
    DevelopmentAuto-check passed
  • Tbd

    jlevy/strif

    Git-native issue tracking (beads), coding guidelines, knowledge injection, and spec-driven planning for AI agents.

    131 GitHub stars~3.5k tokensUpdated 4 mo ago
    DevelopmentAuto-check passed
  • Extracting Requirements

    prime-radiant-inc/iterative-development

    Reads human-written spec documents and produces per-epic requirement files with proof obligations plus behavior scenarios with stable IDs, using parallel chunked extraction.

    181 GitHub stars~2.7k tokensUpdated 4 mo ago
    Agent WorkflowsAuto-check passed
  • Spec Workflow

    hashgraph-online/awesome-codex-plugins

    This skill should be used when the user asks to "create a spec", "write requirements", "design a feature", "plan implementation", "use EARS notation", "create user stories", "break down tasks"…

    1.3k GitHub stars~2.1k tokensUpdated yesterday
    Product & Project ManagementAuto-check passed
  • Ss Spec

    Serial-Studio/Serial-Studio

    Phase 1 of Serial Studio's spec-driven workflow: capture WHAT a feature must do and WHY, with no implementation detail.

    7.2k GitHub stars~766 tokensUpdated 2 days ago
    DevelopmentAuto-check passed

More from foryourhealth111-pixel/Vibe-Skills

All 81 skills in this repo
  • Market Research Reports

    foryourhealth111-pixel/Vibe-Skills

    Produces long consulting-style market research and industry reports covering market sizing, competitive landscape, market entry and investment theses.

    3.6k GitHub stars~2.5k tokensUpdated 1 mo ago
    Auto-check: notes
  • Academic Venue Templates

    foryourhealth111-pixel/Vibe-Skills

    Supplies venue-specific LaTeX templates and formatting rules for journals, conferences and posters, and checks a manuscript against page limits and submission requirements.

    3.6k GitHub stars~3.9k tokensUpdated 1 mo ago
    Auto-check: notes
  • Digital Brain

    foryourhealth111-pixel/Vibe-Skills

    This skill should be used when the user asks to "write a post", "check my voice", "look up contact", "prepare for meeting", "weekly review", "track goals", or mentions personal brand, content…

    3.6k GitHub stars~1.7k tokensUpdated 1 mo ago
    Auto-check passed
  • Smart File Writer

    foryourhealth111-pixel/Vibe-Skills

    Diagnoses why a file write failed (permissions, disk space, path length, locks, read-only mounts) before retrying, instead of repeating the same call blindly.

    3.6k GitHub stars~2.6k tokensUpdated 1 mo ago
    Auto-check passed
  • Automated Video Studio

    foryourhealth111-pixel/Vibe-Skills

    Turns footage, audio and a storyboard plan into a finished short video with FFmpeg jump-cuts, subtitle burn-in and a final polish pass.

    3.6k GitHub stars~838 tokensUpdated 1 mo ago
    Auto-check passed
  • Citation Management

    foryourhealth111-pixel/Vibe-Skills

    Turns DOIs, PMIDs and arXiv IDs into clean BibTeX, searches Google Scholar and PubMed, and checks and deduplicates a reference list.

    3.6k GitHub stars~7.6k tokensUpdated 1 mo ago
    Auto-check: notes

Questions about Speckit Specify

What does Speckit Specify do?

Create or update feature specifications from natural language descriptions. Speckit Specify is an agent skill from foryourhealth111-pixel/Vibe-Skills. Create or update feature specifications from natural language descriptions.

When should I use Speckit Specify?

Speckit Specify fits situations like: starting new features; refining requirements.

How do I install Speckit Specify in Claude Code?

Run `npx skills add foryourhealth111-pixel/Vibe-Skills --skill speckit-specify -a claude-code`. Or copy the skill folder (bundled/skills/speckit-specify in foryourhealth111-pixel/Vibe-Skills) into .claude/skills/speckit-specify in your project. Claude Code loads it when a task matches its description.

How do I install Speckit Specify in Codex?

Run `npx skills add foryourhealth111-pixel/Vibe-Skills --skill speckit-specify -a codex`. Or copy the skill folder (bundled/skills/speckit-specify in foryourhealth111-pixel/Vibe-Skills) into .agents/skills/speckit-specify in your project. Codex loads it when a task matches its description.

Can I use Speckit Specify in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add foryourhealth111-pixel/Vibe-Skills --skill speckit-specify -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/speckit-specify, .gemini/skills/speckit-specify, .github/skills/speckit-specify and .opencode/skills/speckit-specify in your project.

What does Speckit Specify need to run?

Going by SKILL.md and its folder, Speckit Specify needs the command-line tools its instructions call (git). Compatibility (from SKILL.md): Requires spec-kit project structure with .specify/ directory.

Does Speckit Specify access the network?

SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Speckit Specify safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Speckit Specify use?

Speckit Specify is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Speckit Specify use?

About 3.3k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Speckit Specify?

Skills that share tags, products or a category with Speckit Specify: Fix (genkovich/sdd, 171 stars), Spec Driven Workflow (alirezarezvani/claude-skills, 28k stars), Tbd (jlevy/strif, 131 stars) and Extracting Requirements (prime-radiant-inc/iterative-development, 181 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Speckit Specify?

foryourhealth111-pixel (a GitHub user) maintains it in foryourhealth111-pixel/Vibe-Skills, which has 3,627 GitHub stars. The repository holds 81 skills in this directory. The repository was last updated on August 31, 2026.

Source: foryourhealth111-pixel/Vibe-Skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.