From dev-workflow
This skill is invoked ONLY from kickoff when Story-level work is identified. Should NOT be invoked directly by user or auto-triggered by AI. Creates spec document with requirements and acceptance criteria.
How this skill is triggered — by the user, by Claude, or both
Slash command
/dev-workflow:create-specThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Create a specification document that captures requirements and acceptance criteria for Story-level work.
Create a specification document that captures requirements and acceptance criteria for Story-level work.
git checkout -b, git branch, git status --porcelain). No other use.Create a spec document that captures What and Why for Story-level work.
Spec is NOT an exhaustive specification. It does not aim for:
These are implementation details to be addressed during the implementation phase.
Spec aims to keep focus on task purpose. It captures:
The spec survives /clear as the sole source of truth for the next session.
Problem from experience: When AI generates acceptance criteria, it tends to create many items. This leads to:
Rule: Requirements and Criteria should be as few as possible while still covering User Needs.
This skill receives Why/What context from kickoff interview via session history.
Review the interview results:
If unclear, ask for clarification.
Expand User Needs into specific Requirements:
Keep requirements minimal. Only include what's necessary for User Needs.
Why Gherkin?: Adopting a well-established format eliminates ambiguity about methodology and clarifies expectations.
Write each criterion in Given-When-Then format:
Scenario: {Criterion name}
Given {Preconditions - what exists/is prepared}
When {Action - specific action to perform}
Then {Verifiable result - confirmable in code or files}
Example:
Scenario: Successful login
Given user is on the login page
When user enters valid credentials and clicks login
Then user is redirected to dashboard with username displayed
Each criterion must be:
Explicitly state what this spec does NOT include. This prevents scope creep during implementation.
Create .claude/dev-workflow/story/{name}/spec.md:
Branch name: Determine the prefix from the Why/What content:
| Pattern | Prefix |
|---|---|
| New feature | feat/ |
| Bug fix | fix/ |
| Refactoring | refactor/ |
| Documentation | docs/ |
| Test | test/ |
| Build/CI/tooling | chore/ |
| Performance | perf/ |
Use the Story directory name as the branch name: {prefix}/{story-name}
# Spec: {title}
## Branch
- **Name**: `{prefix}/{story-name}`
- **Base**: `main`
## Related Files
- **Workflow concepts**: `dev-workflow/docs/workflow-concepts.md`
- **Epic**: `.claude/dev-workflow/epic/{parent}/epic.md` (if part of an Epic)
## Why
{Background, motivation, problem being solved - from kickoff interview}
## What
{User Needs to satisfy - from kickoff interview}
## Requirements
{Specific requirements derived from User Needs}
## Acceptance Criteria
### Scenario: {name}
- Given: {preconditions}
- When: {action}
- Then: {verifiable result}
## Out of Scope
{What this spec explicitly does NOT include}
## TBD
{Items that need clarification later, if any}
Present spec to user for approval before proceeding.
After user approves the spec, create the git branch:
git status --porcelain
git branch --list {branch-name}
git checkout -b {branch-name}After spec is approved and branch is created:
Reference: .claude/dev-workflow/story/{name}/spec.md
Branch: {prefix}/{story-name} (checkout if not already on it)
Next phase: create-plan
Read the spec file and invoke create-plan skill to create implementation plan.
npx claudepluginhub choplin/my-claude-marketplace --plugin dev-workflowGuides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.