Update command reference

This commit is contained in:
den (work)
2025-10-06 22:16:48 -07:00
parent cde400f466
commit 15e5572a1d
14 changed files with 83 additions and 83 deletions

View File

@@ -40,7 +40,7 @@ Here are a few things you can do that will increase the likelihood of your pull
When working on spec-kit: When working on spec-kit:
1. Test changes with the `specify` CLI commands (`/specify`, `/plan`, `/tasks`) in your coding agent of choice 1. Test changes with the `specify` CLI commands (`/speckit.specify`, `/speckit.plan`, `/speckit.tasks`) in your coding agent of choice
2. Verify templates are working correctly in `templates/` directory 2. Verify templates are working correctly in `templates/` directory
3. Test script functionality in the `scripts/` directory 3. Test script functionality in the `scripts/` directory
4. Ensure memory files (`memory/constitution.md`) are updated if major process changes are made 4. Ensure memory files (`memory/constitution.md`) are updated if major process changes are made

View File

@@ -73,42 +73,42 @@ uvx --from git+https://github.com/github/spec-kit.git specify init <PROJECT_NAME
### 2. Establish project principles ### 2. Establish project principles
Use the **`/constitution`** command to create your project's governing principles and development guidelines that will guide all subsequent development. Use the **`/speckit.constitution`** command to create your project's governing principles and development guidelines that will guide all subsequent development.
```bash ```bash
/constitution Create principles focused on code quality, testing standards, user experience consistency, and performance requirements /speckit.constitution Create principles focused on code quality, testing standards, user experience consistency, and performance requirements
``` ```
### 3. Create the spec ### 3. Create the spec
Use the **`/specify`** command to describe what you want to build. Focus on the **what** and **why**, not the tech stack. Use the **`/speckit.specify`** command to describe what you want to build. Focus on the **what** and **why**, not the tech stack.
```bash ```bash
/specify Build an application that can help me organize my photos in separate photo albums. Albums are grouped by date and can be re-organized by dragging and dropping on the main page. Albums are never in other nested albums. Within each album, photos are previewed in a tile-like interface. /speckit.specify Build an application that can help me organize my photos in separate photo albums. Albums are grouped by date and can be re-organized by dragging and dropping on the main page. Albums are never in other nested albums. Within each album, photos are previewed in a tile-like interface.
``` ```
### 4. Create a technical implementation plan ### 4. Create a technical implementation plan
Use the **`/plan`** command to provide your tech stack and architecture choices. Use the **`/speckit.plan`** command to provide your tech stack and architecture choices.
```bash ```bash
/plan The application uses Vite with minimal number of libraries. Use vanilla HTML, CSS, and JavaScript as much as possible. Images are not uploaded anywhere and metadata is stored in a local SQLite database. /speckit.plan The application uses Vite with minimal number of libraries. Use vanilla HTML, CSS, and JavaScript as much as possible. Images are not uploaded anywhere and metadata is stored in a local SQLite database.
``` ```
### 5. Break down into tasks ### 5. Break down into tasks
Use **`/tasks`** to create an actionable task list from your implementation plan. Use **`/speckit.tasks`** to create an actionable task list from your implementation plan.
```bash ```bash
/tasks /speckit.tasks
``` ```
### 6. Execute implementation ### 6. Execute implementation
Use **`/implement`** to execute all tasks and build your feature according to the plan. Use **`/speckit.implement`** to execute all tasks and build your feature according to the plan.
```bash ```bash
/implement /speckit.implement
``` ```
For detailed step-by-step instructions, see our [comprehensive guide](./spec-driven.md). For detailed step-by-step instructions, see our [comprehensive guide](./spec-driven.md).
@@ -211,29 +211,29 @@ After running `specify init`, your AI coding agent will have access to these sla
Essential commands for the Spec-Driven Development workflow: Essential commands for the Spec-Driven Development workflow:
| Command | Description | | Command | Description |
|-----------------|-----------------------------------------------------------------------| |--------------------------|-----------------------------------------------------------------------|
| `/constitution` | Create or update project governing principles and development guidelines | | `/speckit.constitution` | Create or update project governing principles and development guidelines |
| `/specify` | Define what you want to build (requirements and user stories) | | `/speckit.specify` | Define what you want to build (requirements and user stories) |
| `/plan` | Create technical implementation plans with your chosen tech stack | | `/speckit.plan` | Create technical implementation plans with your chosen tech stack |
| `/tasks` | Generate actionable task lists for implementation | | `/speckit.tasks` | Generate actionable task lists for implementation |
| `/implement` | Execute all tasks to build the feature according to the plan | | `/speckit.implement` | Execute all tasks to build the feature according to the plan |
#### Optional Commands #### Optional Commands
Additional commands for enhanced quality and validation: Additional commands for enhanced quality and validation:
| Command | Description | | Command | Description |
|-----------------|-----------------------------------------------------------------------| |----------------------|-----------------------------------------------------------------------|
| `/clarify` | Clarify underspecified areas (recommended before `/plan`; formerly `/quizme`) | | `/speckit.clarify` | Clarify underspecified areas (recommended before `/speckit.plan`; formerly `/quizme`) |
| `/analyze` | Cross-artifact consistency & coverage analysis (run after /tasks, before /implement) | | `/speckit.analyze` | Cross-artifact consistency & coverage analysis (run after `/speckit.tasks`, before `/speckit.implement`) |
| `/checklist` | Generate custom quality checklists that validate requirements completeness, clarity, and consistency (like "unit tests for English") | | `/speckit.checklist` | Generate custom quality checklists that validate requirements completeness, clarity, and consistency (like "unit tests for English") |
### Environment Variables ### Environment Variables
| Variable | Description | | Variable | Description |
|------------------|------------------------------------------------------------------------------------------------| |------------------|------------------------------------------------------------------------------------------------|
| `SPECIFY_FEATURE` | Override feature detection for non-Git repositories. Set to the feature directory name (e.g., `001-photo-albums`) to work on a specific feature when not using Git branches.<br/>**Must be set in the context of the agent you're working with prior to using `/plan` or follow-up commands. | | `SPECIFY_FEATURE` | Override feature detection for non-Git repositories. Set to the feature directory name (e.g., `001-photo-albums`) to work on a specific feature when not using Git branches.<br/>**Must be set in the context of the agent you're working with prior to using `/speckit.plan` or follow-up commands. |
## 📚 Core philosophy ## 📚 Core philosophy
@@ -354,19 +354,19 @@ Go to the project folder and run your AI agent. In our example, we're using `cla
![Bootstrapping Claude Code environment](./media/bootstrap-claude-code.gif) ![Bootstrapping Claude Code environment](./media/bootstrap-claude-code.gif)
You will know that things are configured correctly if you see the `/constitution`, `/specify`, `/plan`, `/tasks`, and `/implement` commands available. You will know that things are configured correctly if you see the `/speckit.constitution`, `/speckit.specify`, `/speckit.plan`, `/speckit.tasks`, and `/speckit.implement` commands available.
The first step should be establishing your project's governing principles using the `/constitution` command. This helps ensure consistent decision-making throughout all subsequent development phases: The first step should be establishing your project's governing principles using the `/speckit.constitution` command. This helps ensure consistent decision-making throughout all subsequent development phases:
```text ```text
/constitution Create principles focused on code quality, testing standards, user experience consistency, and performance requirements. Include governance for how these principles should guide technical decisions and implementation choices. /speckit.constitution Create principles focused on code quality, testing standards, user experience consistency, and performance requirements. Include governance for how these principles should guide technical decisions and implementation choices.
``` ```
This step creates or updates the `.specify/memory/constitution.md` file with your project's foundational guidelines that the AI agent will reference during specification, planning, and implementation phases. This step creates or updates the `.specify/memory/constitution.md` file with your project's foundational guidelines that the AI agent will reference during specification, planning, and implementation phases.
### **STEP 2:** Create project specifications ### **STEP 2:** Create project specifications
With your project principles established, you can now create the functional specifications. Use the `/specify` command and then provide the concrete requirements for the project you want to develop. With your project principles established, you can now create the functional specifications. Use the `/speckit.specify` command and then provide the concrete requirements for the project you want to develop.
>[!IMPORTANT] >[!IMPORTANT]
>Be as explicit as possible about _what_ you are trying to build and _why_. **Do not focus on the tech stack at this point**. >Be as explicit as possible about _what_ you are trying to build and _why_. **Do not focus on the tech stack at this point**.
@@ -426,12 +426,12 @@ With the baseline specification created, you can go ahead and clarify any of the
You should run the structured clarification workflow **before** creating a technical plan to reduce rework downstream. You should run the structured clarification workflow **before** creating a technical plan to reduce rework downstream.
Preferred order: Preferred order:
1. Use `/clarify` (structured) sequential, coverage-based questioning that records answers in a Clarifications section. 1. Use `/speckit.clarify` (structured) sequential, coverage-based questioning that records answers in a Clarifications section.
2. Optionally follow up with ad-hoc free-form refinement if something still feels vague. 2. Optionally follow up with ad-hoc free-form refinement if something still feels vague.
If you intentionally want to skip clarification (e.g., spike or exploratory prototype), explicitly state that so the agent doesn't block on missing clarifications. If you intentionally want to skip clarification (e.g., spike or exploratory prototype), explicitly state that so the agent doesn't block on missing clarifications.
Example free-form refinement prompt (after `/clarify` if still needed): Example free-form refinement prompt (after `/speckit.clarify` if still needed):
```text ```text
For each sample project or project that you create there should be a variable number of tasks between 5 and 15 For each sample project or project that you create there should be a variable number of tasks between 5 and 15
@@ -449,7 +449,7 @@ It's important to use the interaction with Claude Code as an opportunity to clar
### **STEP 4:** Generate a plan ### **STEP 4:** Generate a plan
You can now be specific about the tech stack and other technical requirements. You can use the `/plan` command that is built into the project template with a prompt like this: You can now be specific about the tech stack and other technical requirements. You can use the `/speckit.plan` command that is built into the project template with a prompt like this:
```text ```text
We are going to generate this using .NET Aspire, using Postgres as the database. The frontend should use We are going to generate this using .NET Aspire, using Postgres as the database. The frontend should use
@@ -535,13 +535,13 @@ You can also ask Claude Code (if you have the [GitHub CLI](https://docs.github.c
### STEP 6: Implementation ### STEP 6: Implementation
Once ready, use the `/implement` command to execute your implementation plan: Once ready, use the `/speckit.implement` command to execute your implementation plan:
```text ```text
/implement /speckit.implement
``` ```
The `/implement` command will: The `/speckit.implement` command will:
- Validate that all prerequisites are in place (constitution, spec, plan, and tasks) - Validate that all prerequisites are in place (constitution, spec, plan, and tasks)
- Parse the task breakdown from `tasks.md` - Parse the task breakdown from `tasks.md`
- Execute tasks in the correct order, respecting dependencies and parallel execution markers - Execute tasks in the correct order, respecting dependencies and parallel execution markers

View File

@@ -62,9 +62,9 @@ uvx --from git+https://github.com/github/spec-kit.git specify init <project_name
## Verification ## Verification
After initialization, you should see the following commands available in your AI agent: After initialization, you should see the following commands available in your AI agent:
- `/specify` - Create specifications - `/speckit.specify` - Create specifications
- `/plan` - Generate implementation plans - `/speckit.plan` - Generate implementation plans
- `/tasks` - Break down into actionable tasks - `/speckit.tasks` - Break down into actionable tasks
The `.specify/scripts` directory will contain both `.sh` and `.ps1` scripts. The `.specify/scripts` directory will contain both `.sh` and `.ps1` scripts.

View File

@@ -22,29 +22,29 @@ uvx --from git+https://github.com/github/spec-kit.git specify init <PROJECT_NAME
### 2. Create the Spec ### 2. Create the Spec
Use the `/specify` command to describe what you want to build. Focus on the **what** and **why**, not the tech stack. Use the `/speckit.specify` command to describe what you want to build. Focus on the **what** and **why**, not the tech stack.
```bash ```bash
/specify Build an application that can help me organize my photos in separate photo albums. Albums are grouped by date and can be re-organized by dragging and dropping on the main page. Albums are never in other nested albums. Within each album, photos are previewed in a tile-like interface. /speckit.specify Build an application that can help me organize my photos in separate photo albums. Albums are grouped by date and can be re-organized by dragging and dropping on the main page. Albums are never in other nested albums. Within each album, photos are previewed in a tile-like interface.
``` ```
### 3. Create a Technical Implementation Plan ### 3. Create a Technical Implementation Plan
Use the `/plan` command to provide your tech stack and architecture choices. Use the `/speckit.plan` command to provide your tech stack and architecture choices.
```bash ```bash
/plan The application uses Vite with minimal number of libraries. Use vanilla HTML, CSS, and JavaScript as much as possible. Images are not uploaded anywhere and metadata is stored in a local SQLite database. /speckit.plan The application uses Vite with minimal number of libraries. Use vanilla HTML, CSS, and JavaScript as much as possible. Images are not uploaded anywhere and metadata is stored in a local SQLite database.
``` ```
### 4. Break Down and Implement ### 4. Break Down and Implement
Use `/tasks` to create an actionable task list, then ask your agent to implement the feature. Use `/speckit.tasks` to create an actionable task list, then ask your agent to implement the feature.
## Detailed Example: Building Taskify ## Detailed Example: Building Taskify
Here's a complete example of building a team productivity platform: Here's a complete example of building a team productivity platform:
### Step 1: Define Requirements with `/specify` ### Step 1: Define Requirements with `/speckit.specify`
```text ```text
Develop Taskify, a team productivity platform. It should allow users to create projects, add team members, Develop Taskify, a team productivity platform. It should allow users to create projects, add team members,
@@ -81,7 +81,7 @@ Also validate the specification checklist:
Read the review and acceptance checklist, and check off each item in the checklist if the feature spec meets the criteria. Leave it empty if it does not. Read the review and acceptance checklist, and check off each item in the checklist if the feature spec meets the criteria. Leave it empty if it does not.
``` ```
### Step 3: Generate Technical Plan with `/plan` ### Step 3: Generate Technical Plan with `/speckit.plan`
Be specific about your tech stack and technical requirements: Be specific about your tech stack and technical requirements:

View File

@@ -102,20 +102,20 @@ fi
# Validate required directories and files # Validate required directories and files
if [[ ! -d "$FEATURE_DIR" ]]; then if [[ ! -d "$FEATURE_DIR" ]]; then
echo "ERROR: Feature directory not found: $FEATURE_DIR" >&2 echo "ERROR: Feature directory not found: $FEATURE_DIR" >&2
echo "Run /specify first to create the feature structure." >&2 echo "Run /speckit.specify first to create the feature structure." >&2
exit 1 exit 1
fi fi
if [[ ! -f "$IMPL_PLAN" ]]; then if [[ ! -f "$IMPL_PLAN" ]]; then
echo "ERROR: plan.md not found in $FEATURE_DIR" >&2 echo "ERROR: plan.md not found in $FEATURE_DIR" >&2
echo "Run /plan first to create the implementation plan." >&2 echo "Run /speckit.plan first to create the implementation plan." >&2
exit 1 exit 1
fi fi
# Check for tasks.md if required # Check for tasks.md if required
if $REQUIRE_TASKS && [[ ! -f "$TASKS" ]]; then if $REQUIRE_TASKS && [[ ! -f "$TASKS" ]]; then
echo "ERROR: tasks.md not found in $FEATURE_DIR" >&2 echo "ERROR: tasks.md not found in $FEATURE_DIR" >&2
echo "Run /tasks first to create the task list." >&2 echo "Run /speckit.tasks first to create the task list." >&2
exit 1 exit 1
fi fi

View File

@@ -88,20 +88,20 @@ if ($PathsOnly) {
# Validate required directories and files # Validate required directories and files
if (-not (Test-Path $paths.FEATURE_DIR -PathType Container)) { if (-not (Test-Path $paths.FEATURE_DIR -PathType Container)) {
Write-Output "ERROR: Feature directory not found: $($paths.FEATURE_DIR)" Write-Output "ERROR: Feature directory not found: $($paths.FEATURE_DIR)"
Write-Output "Run /specify first to create the feature structure." Write-Output "Run /speckit.specify first to create the feature structure."
exit 1 exit 1
} }
if (-not (Test-Path $paths.IMPL_PLAN -PathType Leaf)) { if (-not (Test-Path $paths.IMPL_PLAN -PathType Leaf)) {
Write-Output "ERROR: plan.md not found in $($paths.FEATURE_DIR)" Write-Output "ERROR: plan.md not found in $($paths.FEATURE_DIR)"
Write-Output "Run /plan first to create the implementation plan." Write-Output "Run /speckit.plan first to create the implementation plan."
exit 1 exit 1
} }
# Check for tasks.md if required # Check for tasks.md if required
if ($RequireTasks -and -not (Test-Path $paths.TASKS -PathType Leaf)) { if ($RequireTasks -and -not (Test-Path $paths.TASKS -PathType Leaf)) {
Write-Output "ERROR: tasks.md not found in $($paths.FEATURE_DIR)" Write-Output "ERROR: tasks.md not found in $($paths.FEATURE_DIR)"
Write-Output "Run /tasks first to create the task list." Write-Output "Run /speckit.tasks first to create the task list."
exit 1 exit 1
} }

View File

@@ -74,7 +74,7 @@ The key is treating specifications as the source of truth, with code as the gene
The SDD methodology is significantly enhanced through three powerful commands that automate the specification → planning → tasking workflow: The SDD methodology is significantly enhanced through three powerful commands that automate the specification → planning → tasking workflow:
### The `/specify` Command ### The `/speckit.specify` Command
This command transforms a simple feature description (the user-prompt) into a complete, structured specification with automatic repository management: This command transforms a simple feature description (the user-prompt) into a complete, structured specification with automatic repository management:
@@ -83,7 +83,7 @@ This command transforms a simple feature description (the user-prompt) into a co
3. **Template-Based Generation**: Copies and customizes the feature specification template with your requirements 3. **Template-Based Generation**: Copies and customizes the feature specification template with your requirements
4. **Directory Structure**: Creates the proper `specs/[branch-name]/` structure for all related documents 4. **Directory Structure**: Creates the proper `specs/[branch-name]/` structure for all related documents
### The `/plan` Command ### The `/speckit.plan` Command
Once a feature specification exists, this command creates a comprehensive implementation plan: Once a feature specification exists, this command creates a comprehensive implementation plan:
@@ -93,7 +93,7 @@ Once a feature specification exists, this command creates a comprehensive implem
4. **Detailed Documentation**: Generates supporting documents for data models, API contracts, and test scenarios 4. **Detailed Documentation**: Generates supporting documents for data models, API contracts, and test scenarios
5. **Quickstart Validation**: Produces a quickstart guide capturing key validation scenarios 5. **Quickstart Validation**: Produces a quickstart guide capturing key validation scenarios
### The `/tasks` Command ### The `/speckit.tasks` Command
After a plan is created, this command analyzes the plan and related design documents to generate an executable task list: After a plan is created, this command analyzes the plan and related design documents to generate an executable task list:
@@ -121,7 +121,7 @@ Total: ~12 hours of documentation work
```bash ```bash
# Step 1: Create the feature specification (5 minutes) # Step 1: Create the feature specification (5 minutes)
/specify Real-time chat system with message history and user presence /speckit.specify Real-time chat system with message history and user presence
# This automatically: # This automatically:
# - Creates branch "003-chat-system" # - Creates branch "003-chat-system"
@@ -129,10 +129,10 @@ Total: ~12 hours of documentation work
# - Populates it with structured requirements # - Populates it with structured requirements
# Step 2: Generate implementation plan (5 minutes) # Step 2: Generate implementation plan (5 minutes)
/plan WebSocket for real-time messaging, PostgreSQL for history, Redis for presence /speckit.plan WebSocket for real-time messaging, PostgreSQL for history, Redis for presence
# Step 3: Generate executable tasks (5 minutes) # Step 3: Generate executable tasks (5 minutes)
/tasks /speckit.tasks
# This automatically creates: # This automatically creates:
# - specs/003-chat-system/plan.md # - specs/003-chat-system/plan.md

View File

@@ -1031,11 +1031,11 @@ def init(
steps_lines.append(f"{step_num}. Start using slash commands with your AI agent:") steps_lines.append(f"{step_num}. Start using slash commands with your AI agent:")
steps_lines.append(" 2.1 [cyan]/constitution[/] - Establish project principles") steps_lines.append(" 2.1 [cyan]/speckit.constitution[/] - Establish project principles")
steps_lines.append(" 2.2 [cyan]/specify[/] - Create baseline specification") steps_lines.append(" 2.2 [cyan]/speckit.specify[/] - Create baseline specification")
steps_lines.append(" 2.3 [cyan]/plan[/] - Create implementation plan") steps_lines.append(" 2.3 [cyan]/speckit.plan[/] - Create implementation plan")
steps_lines.append(" 2.4 [cyan]/tasks[/] - Generate actionable tasks") steps_lines.append(" 2.4 [cyan]/speckit.tasks[/] - Generate actionable tasks")
steps_lines.append(" 2.5 [cyan]/implement[/] - Execute implementation") steps_lines.append(" 2.5 [cyan]/speckit.implement[/] - Execute implementation")
steps_panel = Panel("\n".join(steps_lines), title="Next Steps", border_style="cyan", padding=(1,2)) steps_panel = Panel("\n".join(steps_lines), title="Next Steps", border_style="cyan", padding=(1,2))
console.print() console.print()
@@ -1044,9 +1044,9 @@ def init(
enhancement_lines = [ enhancement_lines = [
"Optional commands that you can use for your specs [bright_black](improve quality & confidence)[/bright_black]", "Optional commands that you can use for your specs [bright_black](improve quality & confidence)[/bright_black]",
"", "",
f"○ [cyan]/clarify[/] [bright_black](optional)[/bright_black] - Ask structured questions to de-risk ambiguous areas before planning (run before [cyan]/plan[/] if used)", f"○ [cyan]/speckit.clarify[/] [bright_black](optional)[/bright_black] - Ask structured questions to de-risk ambiguous areas before planning (run before [cyan]/speckit.plan[/] if used)",
f"○ [cyan]/analyze[/] [bright_black](optional)[/bright_black] - Cross-artifact consistency & alignment report (after [cyan]/tasks[/], before [cyan]/implement[/])", f"○ [cyan]/speckit.analyze[/] [bright_black](optional)[/bright_black] - Cross-artifact consistency & alignment report (after [cyan]/speckit.tasks[/], before [cyan]/speckit.implement[/])",
f"○ [cyan]/checklist[/] [bright_black](optional)[/bright_black] - Generate quality checklists to validate requirements completeness, clarity, and consistency (after [cyan]/plan[/])" f"○ [cyan]/speckit.checklist[/] [bright_black](optional)[/bright_black] - Generate quality checklists to validate requirements completeness, clarity, and consistency (after [cyan]/speckit.plan[/])"
] ]
enhancements_panel = Panel("\n".join(enhancement_lines), title="Enhancement Commands", border_style="cyan", padding=(1,2)) enhancements_panel = Panel("\n".join(enhancement_lines), title="Enhancement Commands", border_style="cyan", padding=(1,2))
console.print() console.print()

View File

@@ -4,13 +4,13 @@
**Created**: [DATE] **Created**: [DATE]
**Feature**: [Link to spec.md or relevant documentation] **Feature**: [Link to spec.md or relevant documentation]
**Note**: This checklist is generated by the `/checklist` command based on feature context and requirements. **Note**: This checklist is generated by the `/speckit.checklist` command based on feature context and requirements.
<!-- <!--
============================================================================ ============================================================================
IMPORTANT: The checklist items below are SAMPLE ITEMS for illustration only. IMPORTANT: The checklist items below are SAMPLE ITEMS for illustration only.
The /checklist command MUST replace these with actual items based on: The /speckit.checklist command MUST replace these with actual items based on:
- User's specific checklist request - User's specific checklist request
- Feature requirements from spec.md - Feature requirements from spec.md
- Technical context from plan.md - Technical context from plan.md

View File

@@ -93,7 +93,7 @@ You **MUST** consider the user input before proceeding (if not empty).
- Format: `[domain].md` - Format: `[domain].md`
- If file exists, append to existing file - If file exists, append to existing file
- Number items sequentially starting from CHK001 - Number items sequentially starting from CHK001
- Each `/checklist` run creates a NEW file (never overwrites existing checklists) - Each `/speckit.checklist` run creates a NEW file (never overwrites existing checklists)
**CORE PRINCIPLE - Test the Requirements, Not the Implementation**: **CORE PRINCIPLE - Test the Requirements, Not the Implementation**:
Every checklist item MUST evaluate the REQUIREMENTS THEMSELVES for: Every checklist item MUST evaluate the REQUIREMENTS THEMSELVES for:
@@ -211,7 +211,7 @@ You **MUST** consider the user input before proceeding (if not empty).
- Actor/timing - Actor/timing
- Any explicit user-specified must-have items incorporated - Any explicit user-specified must-have items incorporated
**Important**: Each `/checklist` command invocation creates a checklist file using short, descriptive names unless file already exists. This allows: **Important**: Each `/speckit.checklist` command invocation creates a checklist file using short, descriptive names unless file already exists. This allows:
- Multiple checklists of different types (e.g., `ux.md`, `test.md`, `security.md`) - Multiple checklists of different types (e.g., `ux.md`, `test.md`, `security.md`)
- Simple, memorable filenames that indicate checklist purpose - Simple, memorable filenames that indicate checklist purpose

View File

@@ -17,7 +17,7 @@ You **MUST** consider the user input before proceeding (if not empty).
Goal: Detect and reduce ambiguity or missing decision points in the active feature specification and record the clarifications directly in the spec file. Goal: Detect and reduce ambiguity or missing decision points in the active feature specification and record the clarifications directly in the spec file.
Note: This clarification workflow is expected to run (and be completed) BEFORE invoking `/plan`. If the user explicitly states they are skipping clarification (e.g., exploratory spike), you may proceed, but must warn that downstream rework risk increases. Note: This clarification workflow is expected to run (and be completed) BEFORE invoking `/speckit.plan`. If the user explicitly states they are skipping clarification (e.g., exploratory spike), you may proceed, but must warn that downstream rework risk increases.
Execution steps: Execution steps:
@@ -25,7 +25,7 @@ Execution steps:
- `FEATURE_DIR` - `FEATURE_DIR`
- `FEATURE_SPEC` - `FEATURE_SPEC`
- (Optionally capture `IMPL_PLAN`, `TASKS` for future chained flows.) - (Optionally capture `IMPL_PLAN`, `TASKS` for future chained flows.)
- If JSON parsing fails, abort and instruct user to re-run `/specify` or verify feature branch environment. - If JSON parsing fails, abort and instruct user to re-run `/speckit.specify` or verify feature branch environment.
2. Load the current spec file. Perform a structured ambiguity & coverage scan using this taxonomy. For each category, mark status: Clear / Partial / Missing. Produce an internal coverage map used for prioritization (do not output raw map unless no questions will be asked). 2. Load the current spec file. Perform a structured ambiguity & coverage scan using this taxonomy. For each category, mark status: Clear / Partial / Missing. Produce an internal coverage map used for prioritization (do not output raw map unless no questions will be asked).
@@ -150,12 +150,12 @@ Execution steps:
- Path to updated spec. - Path to updated spec.
- Sections touched (list names). - Sections touched (list names).
- Coverage summary table listing each taxonomy category with Status: Resolved (was Partial/Missing and addressed), Deferred (exceeds question quota or better suited for planning), Clear (already sufficient), Outstanding (still Partial/Missing but low impact). - Coverage summary table listing each taxonomy category with Status: Resolved (was Partial/Missing and addressed), Deferred (exceeds question quota or better suited for planning), Clear (already sufficient), Outstanding (still Partial/Missing but low impact).
- If any Outstanding or Deferred remain, recommend whether to proceed to `/plan` or run `/clarify` again later post-plan. - If any Outstanding or Deferred remain, recommend whether to proceed to `/speckit.plan` or run `/speckit.clarify` again later post-plan.
- Suggested next command. - Suggested next command.
Behavior rules: Behavior rules:
- If no meaningful ambiguities found (or all potential questions would be low-impact), respond: "No critical ambiguities detected worth formal clarification." and suggest proceeding. - If no meaningful ambiguities found (or all potential questions would be low-impact), respond: "No critical ambiguities detected worth formal clarification." and suggest proceeding.
- If spec file missing, instruct user to run `/specify` first (do not create a new spec here). - If spec file missing, instruct user to run `/speckit.specify` first (do not create a new spec here).
- Never exceed 5 total asked questions (clarification retries for a single question do not count as new questions). - Never exceed 5 total asked questions (clarification retries for a single question do not count as new questions).
- Avoid speculative tech stack questions unless the absence blocks functional clarity. - Avoid speculative tech stack questions unless the absence blocks functional clarity.
- Respect user early termination signals ("stop", "done", "proceed"). - Respect user early termination signals ("stop", "done", "proceed").

View File

@@ -15,7 +15,7 @@ You **MUST** consider the user input before proceeding (if not empty).
## Outline ## Outline
The text the user typed after `/specify` in the triggering message **is** the feature description. Assume you always have it available in this conversation even if `{ARGS}` appears literally below. Do not ask the user to repeat it unless they provided an empty command. 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 `{ARGS}` appears literally below. Do not ask the user to repeat it unless they provided an empty command.
Given that feature description, do this: Given that feature description, do this:
@@ -89,7 +89,7 @@ Given that feature description, do this:
## Notes ## Notes
- Items marked incomplete require spec updates before `/clarify` or `/plan` - Items marked incomplete require spec updates before `/speckit.clarify` or `/speckit.plan`
``` ```
b. **Run Validation Check**: Review the spec against each checklist item: b. **Run Validation Check**: Review the spec against each checklist item:
@@ -143,7 +143,7 @@ Given that feature description, do this:
d. **Update Checklist**: After each validation iteration, update the checklist file with current pass/fail status d. **Update Checklist**: After each validation iteration, update the checklist file with current pass/fail status
6. Report completion with branch name, spec file path, checklist results, and readiness for the next phase (`/clarify` or `/plan`). 6. Report completion with branch name, spec file path, checklist results, and readiness for the next phase (`/speckit.clarify` or `/speckit.plan`).
**NOTE:** The script creates and checks out the new branch and initializes the spec file before writing. **NOTE:** The script creates and checks out the new branch and initializes the spec file before writing.

View File

@@ -3,7 +3,7 @@
**Branch**: `[###-feature-name]` | **Date**: [DATE] | **Spec**: [link] **Branch**: `[###-feature-name]` | **Date**: [DATE] | **Spec**: [link]
**Input**: Feature specification from `/specs/[###-feature-name]/spec.md` **Input**: Feature specification from `/specs/[###-feature-name]/spec.md`
**Note**: This template is filled in by the `/plan` command. See `.specify/templates/commands/plan.md` for the execution workflow. **Note**: This template is filled in by the `/speckit.plan` command. See `.specify/templates/commands/plan.md` for the execution workflow.
## Summary ## Summary
@@ -39,12 +39,12 @@
``` ```
specs/[###-feature]/ specs/[###-feature]/
├── plan.md # This file (/plan command output) ├── plan.md # This file (/speckit.plan command output)
├── research.md # Phase 0 output (/plan command) ├── research.md # Phase 0 output (/speckit.plan command)
├── data-model.md # Phase 1 output (/plan command) ├── data-model.md # Phase 1 output (/speckit.plan command)
├── quickstart.md # Phase 1 output (/plan command) ├── quickstart.md # Phase 1 output (/speckit.plan command)
├── contracts/ # Phase 1 output (/plan command) ├── contracts/ # Phase 1 output (/speckit.plan command)
└── tasks.md # Phase 2 output (/tasks command - NOT created by /plan) └── tasks.md # Phase 2 output (/speckit.tasks command - NOT created by /speckit.plan)
``` ```
### Source Code (repository root) ### Source Code (repository root)

View File

@@ -26,7 +26,7 @@ description: "Task list template for feature implementation"
============================================================================ ============================================================================
IMPORTANT: The tasks below are SAMPLE TASKS for illustration purposes only. IMPORTANT: The tasks below are SAMPLE TASKS for illustration purposes only.
The /tasks command MUST replace these with actual tasks based on: The /speckit.tasks command MUST replace these with actual tasks based on:
- User stories from spec.md (with their priorities P1, P2, P3...) - User stories from spec.md (with their priorities P1, P2, P3...)
- Feature requirements from plan.md - Feature requirements from plan.md
- Entities from data-model.md - Entities from data-model.md