cmd-speckit-specify
/speckit.specify
Agent skill wrapper for the Claude command /speckit.specify.
When the original command text references {{INPUT}}, $1, or named arguments, map them from the user's current request.
Command Instructions
Create a structured feature specification from the description. Focus strictly on WHAT and WHY — never HOW.
Steps
-
Validate input: If no description was provided, ask: "What feature would you like to specify?" and wait for the response.
-
Determine feature location:
- If
.specify/specs/exists: derive a 2-4 word kebab-case name from the description (action-noun format, e.g.oauth-api-integration). Write to.specify/specs/<feature-name>/spec.md. - If
.specify/does not exist: write tospec.mdin the project root and remind the user that/speckit.inithas not been run.
- If
-
Load context: If
.specify/memory/constitution.mdexists, read it for governing principles and project constraints. -
Write the spec to the determined path. Omit any section that does not apply:
# Feature Specification: <Feature Name> **Status**: Draft **Created**: <YYYY-MM-DD> ## Overview One paragraph: what this feature is and why it exists. Written for business stakeholders. ## User Scenarios 1. As a [role], I want to [action] so that [outcome]. ## Functional Requirements Numbered list. Each requirement must be testable, technology-agnostic, and behavior-focused. ## Success Criteria Measurable outcomes with specific metrics or verifiable conditions. ## Key Entities (Include only if the feature involves persistent data) Name and description of core domain objects. ## Out of Scope Explicit list of what this feature does NOT include. ## Open Questions <!-- [NEEDS CLARIFICATION] items — max 3 --> -
Self-validate: Check — no implementation details, measurable success criteria, at most 3
[NEEDS CLARIFICATION]markers, scope is bounded. -
Resolve open questions interactively: Present each
[NEEDS CLARIFICATION]item as a multiple-choice question (2-5 options, recommended answer marked). Update the spec based on user selections. -
Report: State the file path and confirm readiness for the next step.
Next step: Run /speckit.clarify if ambiguities remain, or /speckit.plan when the spec is complete.
{{INPUT}}
More from gsmlg-dev/code-agent
elixir-architect
Use when designing or architecting Elixir/Phoenix applications, creating comprehensive project documentation, planning OTP supervision trees, defining domain models with Ash Framework, structuring multi-app projects with path-based dependencies, or preparing handoff documentation for Director/Implementor AI collaboration
17flutter-reducing-app-size
Measures and optimizes the size of Flutter application bundles for deployment. Use when minimizing download size or meeting app store package constraints.
17flutter-handling-concurrency
Executes long-running tasks in background isolates to keep the UI responsive. Use when performing heavy computations or parsing large datasets.
16flutter-building-forms
Builds Flutter forms with validation and user input handling. Use when creating login screens, data entry forms, or any multi-field user input.
16flutter-building-plugins
Builds Flutter plugins that provide native interop for other apps to use. Use when creating reusable packages that bridge Flutter with platform-specific functionality.
16elixir-phoenix
>-
16