Speck Workflow Skill
Purpose: Automatically interpret Speck specification artifacts (spec.md, plan.md, tasks.md) and answer natural language questions about features without requiring explicit slash commands.
Activation: This skill activates when users ask questions about Speck features, mention file types (spec/plan/tasks), or reference Speck concepts (requirements, user stories, architecture, etc.).
Scope: Read-only operations. This skill NEVER modifies files. For creating or updating files, guide users to appropriate slash commands.
Additional Resources:
- •reference.md - Detailed interpretation rules, file states, error formats
- •examples.md - Usage examples showing skill in action
- •workflows.md - Advanced features (multi-repo, worktrees, session handoff)
Core Capabilities
1. Feature Discovery
When users reference features, use three-tier matching to locate the correct feature directory:
Tier 1: Exact Match (Highest Priority)
- •Direct directory name match:
specs/005-speck-skill/
Tier 2: Numeric Prefix Match (High Priority)
- •User provides feature number (e.g., "005", "5", "feature 003")
- •Zero-pad numbers to 3 digits: "5" → "005"
- •Match against pattern:
specs/NNN-*/
Tier 3: Fuzzy/Substring Match (Lower Priority)
- •User provides partial name (e.g., "skill", "auth", "plugin")
- •Filter by case-insensitive substring match
- •If multiple matches, ask for clarification
Disambiguation: When multiple features match, check conversation context first. If ambiguous, ask: "Did you mean: 003-user-auth or 012-auth-tokens?"
Error Handling: List all available features, use Levenshtein distance for typo suggestions, explain matching rules.
Worktree Context: Worktrees share the same specs/ directory as main
repository. Feature discovery works identically in worktrees and main repo.
2. Template References
Speck uses templates in $PLUGIN_ROOT/templates/ to define expected structure
for artifacts:
Template Locations:
- •Spec template:
$PLUGIN_ROOT/templates/spec-template.md - •Plan template:
$PLUGIN_ROOT/templates/plan-template.md - •Tasks template:
$PLUGIN_ROOT/templates/tasks-template.md
When to Reference Templates:
- •User asks "What should go in [section]?" → Extract HTML comments from template
- •User asks "Does my [spec/plan/tasks] follow the template?" → Compare against template (see reference.md for workflow)
Template Structure: Templates use consistent markdown patterns (H1/H2/H3) with HTML comments for section purposes and guidelines.
3. Section Annotation Patterns
Summary: Templates use inline annotations to indicate section requirements.
- •Mandatory sections:
## Section Name *(mandatory)* - •Conditional sections:
## Section Name *(include if...)* - •HTML comments: Provide guidance (ACTION REQUIRED, IMPORTANT, general purpose)
For full details: See reference.md
4. File State Classification
Every artifact file can be in one of five states:
- •MISSING - File doesn't exist → ERROR
- •EMPTY - File exists but has no content → ERROR
- •MALFORMED - Invalid markdown/structure → WARNING (extract partial info)
- •INCOMPLETE - Missing mandatory sections → WARNING (calculate completeness %)
- •VALID - All mandatory sections present → SUCCESS
Graceful Degradation: For MALFORMED and INCOMPLETE states, extract maximum possible information, return completeness score, list warnings, provide recovery guidance.
For full details: See reference.md
5. Error Message Format
Summary: Use structured format with severity, context, and recovery guidance.
Example:
ERROR: Spec Not Found ┌──────────────────────────────────────────────────┐ │ spec.md not found at specs/006-feature/ │ ├──────────────────────────────────────────────────┤ │ Recovery: Run /speck:specify "Feature desc" │ └──────────────────────────────────────────────────┘
Severity Levels: ERROR (blocking), WARNING (non-blocking), INFO (informational)
For full details and examples: See reference.md
6. Conversation Context Tracking
Track:
- •Recently mentioned features (last 5)
- •Current feature context
- •Implicit references ("it", "that", "the spec")
Usage: Resolve implicit references to features discussed earlier in conversation. Reset context when user explicitly mentions different feature or after 10+ turns.
7. Multi-Repo Mode Detection
Summary: Detect if project uses multi-repo mode via .speck/root symlink.
Key Concepts:
- •Detection: Check for
.speck/rootsymlink → multi-repo child repo - •Child repos: Share specs/ directory, have local plan.md/tasks.md
- •Root repo: Contains shared specs/, manages constitution
Query Examples:
- •"Is this a multi-repo setup?" → Check for symlink
- •"What's the parent spec?" → Read metadata from spec.md
For full details: See workflows.md
8. Worktree Mode Detection
Summary: Detect Git worktree integration for isolated parallel development.
Key Concepts:
- •Detection: Check
.speck/config.jsonforworktree.enabled: true - •Metadata:
.speck/worktrees/<branch>.jsontracks worktree associations - •File rules: Configuration files copied, dependencies symlinked
- •IDE auto-launch: VSCode/Cursor/JetBrains launch automatically
Query Examples:
- •"Is this in a worktree?" → Check metadata or git worktree list
- •"What's the worktree config?" → Read config.json
For full details: See workflows.md
9. Session Handoff
Summary: Automatic context transfer when creating new feature worktrees.
Key Concepts:
- •Handoff document:
.speck/handoff.mdwritten to new worktrees - •SessionStart hook: Automatically loads handoff context when Claude session starts
- •Self-cleanup: Hook archives handoff after loading and removes itself from settings
- •Context transfer: Feature context, spec location, and pending tasks transferred to new session
How It Works:
- •When
/speck:specifycreates a new worktree, it writes.speck/handoff.md - •It also configures
.claude/settings.jsonwith a SessionStart hook - •When a new Claude session starts in the worktree, the hook fires
- •The hook reads handoff.md and injects context via
hookSpecificOutput.additionalContext - •After loading, the hook archives the handoff file and removes itself
Query Examples:
- •"What's in the handoff document?" → Read
.speck/handoff.mdin worktree - •"Did the session handoff work?" → Check for
.speck/handoff.done.md(archived) - •"How do I create a feature with handoff?" → Use
/speck:specify "Feature description"
Handoff Document Contents:
- •Feature name and spec location
- •Repository context (single/multi-repo mode)
- •Pending implementation tasks
- •Relevant file paths and references
Artifact Interpretation Quick Reference
For detailed artifact interpretation (metadata blocks, mandatory sections, parsing rules), see reference.md.
spec.md: Requirements, user stories, success criteria plan.md: Implementation approach, technical context, constitution check tasks.md: Task breakdown, dependencies, checkpoints
Limitations
Read-Only Operations: This skill NEVER modifies files. For creating or updating Speck artifacts:
- •Creating specs:
/speck:specify "Feature description" - •Clarifying specs:
/speck:clarify - •Generating plans:
/speck:plan - •Generating tasks:
/speck:tasks - •Creating checklists:
/speck:checklist - •Analyzing consistency:
/speck:analyze
Non-Destructive Constraint:
- •Only reads existing files
- •Never writes, modifies, or deletes files
- •Never runs external commands or tools
- •Provides guidance to appropriate slash commands when modifications needed
Activation Limitations: Skill may not activate if query is too vague, about non-Speck topics, or doesn't establish feature context.
Troubleshooting Activation Issues
Issue: Too Vague ❌ "What's left?" ✅ "What tasks are left for feature 005?"
Issue: No Speck Context ❌ "Show me the plan" ✅ "Show me plan.md for the speck skill"
Issue: Wrong Topic ❌ "How do I implement this in TypeScript?" ✅ "What's the technical approach in the plan for feature 005?"
Best Practices:
- •Mention feature explicitly (number or name)
- •Use Speck terminology (spec, plan, tasks, requirements)
- •Be specific about file types
- •Establish context first
Slash Command Reference
This skill is for reading and understanding existing Speck artifacts. When users need to create or modify files, guide them to these slash commands:
| Command | Purpose | Example Trigger Phrase |
|---|---|---|
/speck:specify | Create or update feature specification (with optional worktree creation) | "Run /speck:specify to create a new spec" |
/speck:clarify | Resolve ambiguities and add missing sections | "Run /speck:clarify to resolve [NEEDS CLARIFICATION] markers" |
/speck:plan | Generate implementation plan from spec | "Run /speck:plan to create the implementation plan" |
/speck:tasks | Generate actionable task breakdown | "Run /speck:tasks to create a task list" |
/speck:analyze | Check cross-artifact consistency and quality | "Run /speck:analyze to validate spec/plan/tasks consistency" |
/speck:implement | Execute tasks from tasks.md | "Run /speck:implement to start implementation" |
/speck:link | Link child repository to multi-repo root | "Run /speck:link ../root to connect this repo to multi-repo root" |
/speck:init | Install Speck CLI globally via symlink | "Run /speck:init to install the speck command" |
/speck:help | Load speck-help skill for natural language questions | "Run /speck:help to ask questions about Speck" |
/speck:env | Check Speck environment and configuration | "Run /speck:env to see current repo mode (single/multi-repo)" |
Worktree Flags for /speck:specify:
- •
--no-worktree: Skip worktree creation - •
--no-ide: Skip IDE auto-launch - •
--no-deps: Skip dependency installation - •
--reuse-worktree: Reuse existing worktree if present
When to Suggest Commands:
- •Missing spec.md → Suggest
/speck:specify "Feature description" - •[NEEDS CLARIFICATION] markers → Suggest
/speck:clarify - •Missing plan.md → Suggest
/speck:plan - •Missing tasks.md → Suggest
/speck:tasks - •Incomplete sections → Suggest
/speck:clarifyor manual editing - •After clarification → Suggest
/speck:analyzeto check consistency - •After task generation → Suggest
/speck:implementto execute tasks
For complete command list: Direct users to type /help in Claude Code.
Plugin Extensibility
Speck follows a modular architecture where specialized capabilities are delivered as optional plugins. This keeps the core Speck plugin focused on specification workflows while enabling extensions for related tasks.
Available Plugins
| Plugin | Command | Purpose |
|---|---|---|
| speck | /speck:* | Core specification workflow (specify, plan, tasks, implement) |
| speck-reviewer | /review | AI-assisted PR review with cluster analysis and Speck-aware context |
Installing Extension Plugins
All Speck plugins are installed through the Claude Code plugin system:
# Install speck-reviewer for PR reviews /plugin install speck-reviewer@speck-market
speck-reviewer Plugin
The speck-reviewer plugin adds structured PR review capabilities:
- •Cluster-Based Review: Groups related files for coherent review sessions
- •Speck-Aware Context: References spec requirements when available
- •Comment Management: Stage, refine, and batch-post review comments
- •Session Persistence: Resume interrupted reviews
When to use: Use /speck-reviewer:review after creating a PR for a Speck
feature. The plugin will automatically load any spec context for your branch.
Learn more: See plugin documentation for full usage guide.
Summary
This skill enables natural language interaction with Speck workflow artifacts:
- •✅ Automatically activates when users ask about features
- •✅ Interprets spec.md (requirements, user stories, success criteria)
- •✅ Interprets plan.md (technical approach, architecture, constitution)
- •✅ Interprets tasks.md (status, dependencies, progress)
- •✅ Compares files against templates
- •✅ Handles incomplete/malformed files gracefully
- •✅ Provides actionable recovery guidance
- •✅ Maintains conversation context for follow-up questions
- •✅ Read-only operations (non-destructive)
Additional Resources:
- •reference.md - Detailed rules, workflows, edge cases
- •examples.md - Usage examples
- •workflows.md - Advanced features (multi-repo, worktrees, session handoff)
Goal: Reduce need for manual file reading and slash command usage by 80%, enabling developers to ask natural questions and get accurate answers about their Speck features.