diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index bf65fa77..b5488c80 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -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: -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 3. Test script functionality in the `scripts/` directory 4. Ensure memory files (`memory/constitution.md`) are updated if major process changes are made diff --git a/README.md b/README.md index c649e618..2d648155 100644 --- a/README.md +++ b/README.md @@ -73,42 +73,42 @@ uvx --from git+https://github.com/github/spec-kit.git specify init **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.
**Must be set in the context of the agent you're working with prior to using `/speckit.plan` or follow-up commands. | ## 📚 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) -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 -/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. ### **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] >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. 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. 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 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 -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 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 -Once ready, use the `/implement` command to execute your implementation plan: +Once ready, use the `/speckit.implement` command to execute your implementation plan: ```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) - Parse the task breakdown from `tasks.md` - Execute tasks in the correct order, respecting dependencies and parallel execution markers diff --git a/docs/installation.md b/docs/installation.md index b30b0948..ec3c2896 100644 --- a/docs/installation.md +++ b/docs/installation.md @@ -62,9 +62,9 @@ uvx --from git+https://github.com/github/spec-kit.git specify init &2 - echo "Run /specify first to create the feature structure." >&2 + echo "Run /speckit.specify first to create the feature structure." >&2 exit 1 fi if [[ ! -f "$IMPL_PLAN" ]]; then 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 fi # Check for tasks.md if required if $REQUIRE_TASKS && [[ ! -f "$TASKS" ]]; then 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 fi diff --git a/scripts/powershell/check-prerequisites.ps1 b/scripts/powershell/check-prerequisites.ps1 index d61c3b99..d8ccd1d5 100644 --- a/scripts/powershell/check-prerequisites.ps1 +++ b/scripts/powershell/check-prerequisites.ps1 @@ -88,20 +88,20 @@ if ($PathsOnly) { # Validate required directories and files if (-not (Test-Path $paths.FEATURE_DIR -PathType Container)) { 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 } if (-not (Test-Path $paths.IMPL_PLAN -PathType Leaf)) { 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 } # Check for tasks.md if required if ($RequireTasks -and -not (Test-Path $paths.TASKS -PathType Leaf)) { 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 } diff --git a/spec-driven.md b/spec-driven.md index a932c2eb..0e546ff3 100644 --- a/spec-driven.md +++ b/spec-driven.md @@ -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 `/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: @@ -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 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: @@ -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 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: @@ -121,7 +121,7 @@ Total: ~12 hours of documentation work ```bash # 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: # - Creates branch "003-chat-system" @@ -129,10 +129,10 @@ Total: ~12 hours of documentation work # - Populates it with structured requirements # 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) -/tasks +/speckit.tasks # This automatically creates: # - specs/003-chat-system/plan.md diff --git a/src/specify_cli/__init__.py b/src/specify_cli/__init__.py index 58977938..a0652539 100644 --- a/src/specify_cli/__init__.py +++ b/src/specify_cli/__init__.py @@ -1031,11 +1031,11 @@ def init( 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.2 [cyan]/specify[/] - Create baseline specification") - steps_lines.append(" 2.3 [cyan]/plan[/] - Create implementation plan") - steps_lines.append(" 2.4 [cyan]/tasks[/] - Generate actionable tasks") - steps_lines.append(" 2.5 [cyan]/implement[/] - Execute implementation") + steps_lines.append(" 2.1 [cyan]/speckit.constitution[/] - Establish project principles") + steps_lines.append(" 2.2 [cyan]/speckit.specify[/] - Create baseline specification") + steps_lines.append(" 2.3 [cyan]/speckit.plan[/] - Create implementation plan") + steps_lines.append(" 2.4 [cyan]/speckit.tasks[/] - Generate actionable tasks") + 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)) console.print() @@ -1044,9 +1044,9 @@ def init( enhancement_lines = [ "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]/analyze[/] [bright_black](optional)[/bright_black] - Cross-artifact consistency & alignment report (after [cyan]/tasks[/], before [cyan]/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.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]/speckit.analyze[/] [bright_black](optional)[/bright_black] - Cross-artifact consistency & alignment report (after [cyan]/speckit.tasks[/], before [cyan]/speckit.implement[/])", + 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)) console.print() diff --git a/templates/checklist-template.md b/templates/checklist-template.md index f0c23b20..806657da 100644 --- a/templates/checklist-template.md +++ b/templates/checklist-template.md @@ -4,13 +4,13 @@ **Created**: [DATE] **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.