specpulse 1.0.6__py3-none-any.whl → 1.1.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. specpulse/__init__.py +1 -1
  2. specpulse/cli/main.py +598 -617
  3. specpulse/core/specpulse.py +1110 -1105
  4. specpulse/resources/commands/claude/sp-continue.md +203 -0
  5. specpulse/resources/commands/claude/{plan.md → sp-plan.md} +53 -38
  6. specpulse/resources/commands/claude/sp-pulse.md +142 -0
  7. specpulse/resources/commands/claude/{spec.md → sp-spec.md} +36 -23
  8. specpulse/resources/commands/claude/sp-status.md +170 -0
  9. specpulse/resources/commands/claude/{task.md → sp-task.md} +68 -48
  10. specpulse/resources/commands/gemini/sp-continue.toml +56 -0
  11. specpulse/resources/commands/gemini/sp-plan.toml +68 -0
  12. specpulse/resources/commands/gemini/{pulse.toml → sp-pulse.toml} +12 -6
  13. specpulse/resources/commands/gemini/sp-spec.toml +54 -0
  14. specpulse/resources/commands/gemini/sp-status.toml +61 -0
  15. specpulse/resources/commands/gemini/sp-task.toml +79 -0
  16. specpulse/resources/memory/constitution.md +5 -5
  17. specpulse/resources/memory/context.md +12 -1
  18. specpulse/resources/scripts/{pulse-init.py → sp-pulse-init.py} +6 -6
  19. specpulse/resources/scripts/{pulse-init.sh → sp-pulse-init.sh} +95 -95
  20. specpulse/resources/scripts/{pulse-plan.py → sp-pulse-plan.py} +32 -7
  21. specpulse/resources/scripts/{pulse-plan.sh → sp-pulse-plan.sh} +136 -126
  22. specpulse/resources/scripts/{pulse-spec.py → sp-pulse-spec.py} +26 -6
  23. specpulse/resources/scripts/{pulse-spec.sh → sp-pulse-spec.sh} +126 -103
  24. specpulse/resources/scripts/{pulse-task.py → sp-pulse-task.py} +42 -6
  25. specpulse/resources/scripts/{pulse-task.sh → sp-pulse-task.sh} +32 -16
  26. specpulse/resources/templates/plan.md +206 -206
  27. specpulse/resources/templates/spec.md +125 -125
  28. specpulse/resources/templates/task.md +164 -163
  29. {specpulse-1.0.6.dist-info → specpulse-1.1.0.dist-info}/METADATA +35 -35
  30. specpulse-1.1.0.dist-info/RECORD +41 -0
  31. specpulse/resources/commands/claude/pulse.md +0 -91
  32. specpulse/resources/commands/gemini/plan.toml +0 -59
  33. specpulse/resources/commands/gemini/spec.toml +0 -45
  34. specpulse/resources/commands/gemini/task.toml +0 -69
  35. specpulse/resources/scripts/pulse-init.ps1 +0 -186
  36. specpulse/resources/scripts/pulse-plan.ps1 +0 -251
  37. specpulse/resources/scripts/pulse-spec.ps1 +0 -185
  38. specpulse/resources/scripts/pulse-task.ps1 +0 -263
  39. specpulse-1.0.6.dist-info/RECORD +0 -41
  40. {specpulse-1.0.6.dist-info → specpulse-1.1.0.dist-info}/WHEEL +0 -0
  41. {specpulse-1.0.6.dist-info → specpulse-1.1.0.dist-info}/entry_points.txt +0 -0
  42. {specpulse-1.0.6.dist-info → specpulse-1.1.0.dist-info}/licenses/LICENSE +0 -0
  43. {specpulse-1.0.6.dist-info → specpulse-1.1.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,170 @@
1
+ ---
2
+ name: sp-status
3
+ description: Track progress across all features and specific feature details
4
+ allowed_tools:
5
+ - Read
6
+ - Write
7
+ - Edit
8
+ - Bash
9
+ - TodoWrite
10
+ ---
11
+
12
+ # /sp-status Command
13
+
14
+ Track progress across all features or get detailed status of a specific feature.
15
+
16
+ ## Usage
17
+ ```
18
+ /sp-status [feature-name]
19
+ ```
20
+
21
+ ## Implementation
22
+
23
+ When called with `/sp-status $ARGUMENTS`, I will:
24
+
25
+ 1. **Parse arguments** to determine scope:
26
+ - If feature name provided: Show detailed status for that feature
27
+ - Otherwise: Show overview of all features
28
+
29
+ 2. **Read feature context** from `memory/context.md`
30
+
31
+ 3. **For `/sp-status` (all features overview):**
32
+ - Scan all feature directories (specs/*, plans/*, tasks/*)
33
+ - Count features by status: active, completed, in_progress, paused
34
+ - Calculate overall project progress
35
+ - Show summary statistics:
36
+ ```
37
+ TOTAL_FEATURES=5
38
+ ACTIVE_FEATURES=2
39
+ COMPLETED_FEATURES=1
40
+ IN_PROGRESS_FEATURES=1
41
+ PAUSED_FEATURES=1
42
+ OVERALL_PROGRESS=42%
43
+ ```
44
+ - List all features with their status and progress percentage
45
+ - Highlight current active feature from context
46
+
47
+ 4. **For `/sp-status [feature-name]` (detailed feature status):**
48
+ - Detect feature directory (using context detection logic)
49
+ - Read all task files in the feature's tasks directory
50
+ - Calculate completion percentage based on task status
51
+ - Show detailed breakdown:
52
+ ```
53
+ FEATURE: 001-user-authentication
54
+ STATUS: active
55
+ PROGRESS: 65%
56
+ SPECS: 2 files
57
+ PLANS: 1 file
58
+ TASKS: 1 file (25 total tasks)
59
+ COMPLETED_TASKS: 16
60
+ IN_PROGRESS_TASKS: 5
61
+ BLOCKED_TASKS: 1
62
+ LAST_UPDATED: 2025-01-09
63
+ ```
64
+ - Show phase-by-phase progress
65
+ - List any blockers or issues
66
+ - Provide recommendations for next steps
67
+
68
+ 5. **Progress calculation logic:**
69
+ - Scan task files for completion status: `[x]` for completed, `[ ]` for pending, `[-]` for in progress, `[!]` for blocked
70
+ - Calculate percentages: completed / total * 100
71
+ - Track trends over time if historical data available
72
+
73
+ ## Feature Status Indicators
74
+
75
+ - **Active**: Currently being worked on (in context.md)
76
+ - **Completed**: All tasks marked as complete
77
+ - **In Progress**: Has task files with some completed tasks
78
+ - **Paused**: No recent activity, not all tasks complete
79
+ - **Blocked**: Has blocked tasks preventing progress
80
+
81
+ ## Examples
82
+
83
+ ### All features overview
84
+ ```
85
+ User: /sp-status
86
+ ```
87
+
88
+ I will display:
89
+ ```
90
+ ## Feature Status Overview
91
+
92
+ **Total Features**: 5
93
+ **Overall Progress**: 42%
94
+
95
+ ### Active Features
96
+ - [🔄] 001-user-authentication (65%)
97
+ - [🔄] 002-payment-processing (23%)
98
+
99
+ ### Completed Features
100
+ - [✅] 000-project-setup (100%)
101
+
102
+ ### In Progress Features
103
+ - [⏳] 003-user-profile (45%)
104
+
105
+ ### Paused Features
106
+ - [⏸️] 004-notifications (78%)
107
+
108
+ ### Current Context
109
+ **Active Feature**: 001-user-authentication
110
+ **Last Updated**: 2025-01-09
111
+ ```
112
+
113
+ ### Specific feature status
114
+ ```
115
+ User: /sp-status user-authentication
116
+ ```
117
+
118
+ I will display:
119
+ ```
120
+ ## Feature Status: 001-user-authentication
121
+
122
+ **Overall Progress**: 65%
123
+ **Status**: Active
124
+ **Created**: 2025-01-09
125
+ **Last Updated**: 2025-01-09
126
+
127
+ ### Files
128
+ - **Specifications**: spec-001.md, spec-002.md (2 files)
129
+ - **Plans**: plan-001.md (1 file)
130
+ - **Tasks**: task-001.md (1 file, 25 total tasks)
131
+
132
+ ### Task Progress
133
+ - **Completed**: 16 tasks (64%)
134
+ - **In Progress**: 5 tasks (20%)
135
+ - **Blocked**: 1 task (4%)
136
+ - **Pending**: 3 tasks (12%)
137
+
138
+ ### Phase Progress
139
+ - **Phase 0 (Critical Path)**: 80% complete
140
+ - **Phase 1 (Foundation)**: 70% complete
141
+ - **Phase 2 (Core Features)**: 50% complete
142
+ - **Phase 3 (Polish)**: 20% complete
143
+ - **Phase 4 (Testing)**: 0% complete
144
+
145
+ ### Blockers
146
+ - T015: Database schema approval pending
147
+
148
+ ### Recommendations
149
+ 1. Resolve database schema blocker (T015)
150
+ 2. Continue with Phase 2 core features
151
+ 3. Consider starting Phase 4 testing in parallel
152
+ ```
153
+
154
+ ## Integration Features
155
+
156
+ - **Multi-feature tracking** across entire project
157
+ - **Progress percentage calculation** from task completion
158
+ - **Status categorization** with visual indicators
159
+ - **Blocker identification** and resolution tracking
160
+ - **Context-aware operation** using memory/context.md
161
+ - **Cross-platform compatibility** with proper path handling
162
+ - **Historical trend tracking** for progress over time
163
+
164
+ ## Error Handling
165
+
166
+ - Feature directory validation
167
+ - Task file parsing with error recovery
168
+ - Progress calculation validation
169
+ - Context file fallback handling
170
+ - Permission and access error handling
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: task
2
+ name: sp-task
3
3
  description: Generate and manage task breakdowns using AI-optimized templates
4
4
  allowed_tools:
5
5
  - Read
@@ -9,50 +9,60 @@ allowed_tools:
9
9
  - TodoWrite
10
10
  ---
11
11
 
12
- # /task Command
12
+ # /sp-task Command
13
13
 
14
14
  Generate task breakdowns from implementation plans using SpecPulse methodology with AI-optimized templates and enhanced validation.
15
15
 
16
16
  ## Usage
17
17
  ```
18
- /task [action] [feature-directory]
18
+ /sp-task [action] [feature-directory]
19
19
  ```
20
20
 
21
21
  Actions: `breakdown`, `update`, `status`, `execute` (defaults to `breakdown`)
22
22
 
23
23
  ## Implementation
24
24
 
25
- When called with `/task $ARGUMENTS`, I will:
25
+ When called with `/sp-task $ARGUMENTS`, I will:
26
26
 
27
- 1. **Parse arguments** to determine action:
27
+ 1. **Detect current feature context**:
28
+ - Read `memory/context.md` for current feature metadata
29
+ - Use git branch name if available (e.g., `001-user-authentication`)
30
+ - Fall back to most recently created feature directory
31
+ - If no context found, ask user to specify feature or run `/sp-pulse` first
32
+
33
+ 2. **Parse arguments** to determine action:
28
34
  - If `update`: Update task status and dependencies
29
35
  - If `status`: Show comprehensive progress with metrics
30
36
  - If `execute`: Execute task with script integration
31
37
  - Otherwise: Generate task breakdown
32
38
 
33
- 2. **For `/task breakdown` or `/task`:**
39
+ 3. **For `/sp-task breakdown` or `/sp-task`:**
34
40
 
35
- a. **Enhanced validation** using cross-platform script:
41
+ a. **Show existing plan files**: List all plan-XXX.md files in current feature directory
42
+ b. **Ask user to select**: Which plan file to base tasks on
43
+ c. **Enhanced validation** using cross-platform script:
36
44
  ```bash
37
45
  # Cross-platform detection
38
46
  if [[ "$OSTYPE" == "msys" || "$OSTYPE" == "win32" ]]; then
39
- powershell scripts/pulse-task.ps1 "$FEATURE_DIR"
47
+ python scripts/sp-pulse-task.py "$FEATURE_DIR"
40
48
  else
41
- bash scripts/pulse-task.sh "$FEATURE_DIR" || python scripts/pulse-task.py "$FEATURE_DIR"
49
+ bash scripts/sp-pulse-task.sh "$FEATURE_DIR" || python scripts/sp-pulse-task.py "$FEATURE_DIR"
42
50
  fi
43
51
  ```
44
52
 
45
- b. **Read implementation plan** from `plans/XXX-feature/plan.md`
53
+ d. **Read implementation plan** from selected plan file
46
54
 
47
- c. **Generate AI-optimized tasks** using template variables:
55
+ e. **Generate AI-optimized tasks** using template variables:
48
56
  ```markdown
49
57
  # Task List: {{ feature_name }}
50
58
  ## Metadata
51
59
  - **Total Tasks**: {{ task_count }}
52
60
  - **Estimated Duration**: {{ total_duration }}
61
+ - **Plan Reference**: plan-{{ plan_version }}.md
62
+ - **Task Version**: {{ task_version }}
53
63
  ```
54
64
 
55
- d. **Generate structured task categories**:
65
+ f. **Generate structured task categories**:
56
66
  - **Constitutional Gates Compliance**: Pre-implementation validation
57
67
  - **Critical Path (Phase 0)**: Tasks that impact timeline
58
68
  - **Parallel Groups**: Tasks that can execute simultaneously
@@ -60,7 +70,7 @@ When called with `/task $ARGUMENTS`, I will:
60
70
  - **Execution Schedule**: Time-based task organization
61
71
  - **Progress Tracking**: YAML configuration for monitoring
62
72
 
63
- e. **For each task**, generate comprehensive metadata:
73
+ g. **For each task**, generate comprehensive metadata:
64
74
  - **ID**: T[XXX] format (T001, T002)
65
75
  - **Type**: setup, development, testing, documentation
66
76
  - **Priority**: HIGH, MEDIUM, LOW
@@ -72,63 +82,73 @@ When called with `/task $ARGUMENTS`, I will:
72
82
  - **Assignable**: Role/skill required
73
83
  - **Parallel**: Whether can run in parallel [P]
74
84
 
75
- f. **Generate execution commands** with script integration:
76
- ```bash
77
- # Execute parallel tasks
78
- parallel_tasks="T001 T002 T003"
79
- for task in $parallel_tasks; do
80
- ./scripts/execute-task.sh "$task" &
81
- done
82
- wait
85
+ h. **Generate AI execution guidelines** with workflow integration:
86
+ ```markdown
87
+ ## AI Execution Strategy
88
+ ### Parallel Tasks (can be worked on simultaneously):
89
+ - T001, T002, T003: Independent tasks, no dependencies
90
+ ### Sequential Tasks (must be completed in order):
91
+ - T004 → T005 → T006: Dependency chain
83
92
  ```
84
93
 
85
- g. **Write comprehensive task breakdown** to `tasks/XXX-feature/tasks.md`
94
+ i. **Version management**: Check existing task files and create next version (task-001.md, task-002.md, etc.)
95
+ j. **Write comprehensive task breakdown** to `tasks/XXX-feature/task-XXX.md`
86
96
 
87
- 3. **For `/task update`:**
88
- - **Enhanced analysis** using cross-platform script:
97
+ 4. **For `/sp-task update`:**
98
+ a. **Show existing task files**: List all task-XXX.md files in current feature directory
99
+ b. **Ask user to select**: Which task file to update
100
+ c. **Enhanced analysis** using cross-platform script:
89
101
  ```bash
90
102
  # Cross-platform detection
91
103
  if [[ "$OSTYPE" == "msys" || "$OSTYPE" == "win32" ]]; then
92
- powershell scripts/pulse-task.ps1 "$FEATURE_DIR"
104
+ python scripts/sp-pulse-task.py "$FEATURE_DIR"
93
105
  else
94
- bash scripts/pulse-task.sh "$FEATURE_DIR" || python scripts/pulse-task.py "$FEATURE_DIR"
106
+ bash scripts/sp-pulse-task.sh "$FEATURE_DIR" || python scripts/sp-pulse-task.py "$FEATURE_DIR"
95
107
  fi
96
108
  ```
97
- - **Parse current tasks** with comprehensive status:
109
+ d. **Parse current tasks** from selected file with comprehensive status:
98
110
  - Total tasks, completed, pending, blocked
99
111
  - Parallel tasks identification
100
112
  - Constitutional gates status
101
113
  - Completion percentage calculation
102
- - **Interactive task updates**:
114
+ e. **Interactive task updates**:
103
115
  - Mark tasks as completed/in-progress/blocked
104
116
  - Update dependencies and blockers
105
117
  - Add newly discovered tasks with proper metadata
106
118
  - Adjust estimates based on actual progress
107
- - **Generate updated progress tracking** YAML
119
+ f. **Generate updated progress tracking** YAML
108
120
 
109
- 4. **For `/task status`:**
110
- - **Enhanced reporting** from script output:
121
+ 5. **For `/sp-task status`:**
122
+ a. **Show existing task files**: List all task-XXX.md files in current feature directory
123
+ b. **Ask user to select**: Which task file to show status for
124
+ c. **Enhanced reporting** from script output:
111
125
  ```bash
112
126
  TOTAL_TASKS=25
113
127
  COMPLETED_TASKS=10
114
128
  COMPLETION_PERCENTAGE=40%
115
129
  CONSTITUTIONAL_GATES_PENDING=2
116
130
  ```
117
- - **Display comprehensive progress**:
131
+ d. **Display comprehensive progress**:
118
132
  - Overall completion percentage
119
133
  - Phase-by-phase progress
120
134
  - Blocker identification and resolution
121
135
  - Velocity metrics and estimates
122
136
  - Constitutional gates compliance status
123
137
 
124
- 5. **For `/task execute`:**
125
- - **Validate task readiness** using constitutional gates
126
- - **Execute task** with enhanced error handling:
127
- ```bash
128
- ./scripts/execute-task.sh "$TASK_ID"
138
+ 6. **For `/sp-task execute`:**
139
+ a. **Show existing task files**: List all task-XXX.md files in current feature directory
140
+ b. **Ask user to select**: Which task file to execute from
141
+ c. **Ask user to specify**: Which specific task ID to execute
142
+ d. **Validate task readiness** using constitutional gates
143
+ e. **Execute task** using AI assistant capabilities:
144
+ ```markdown
145
+ ## Task Execution: {{ TASK_ID }}
146
+ **AI Assistant**: Claude/Gemini
147
+ **Method**: Direct implementation within AI session
148
+ **Status**: [ ] Pending → [-] In Progress → [x] Completed
129
149
  ```
130
- - **Track execution results** and update status
131
- - **Update progress tracking** automatically
150
+ f. **Track execution results** and update status
151
+ g. **Update progress tracking** automatically
132
152
 
133
153
  ## Enhanced Task Format
134
154
  ```markdown
@@ -170,16 +190,16 @@ Each task breakdown includes constitutional compliance validation:
170
190
 
171
191
  ### Generate task breakdown
172
192
  ```
173
- User: /task breakdown
193
+ User: /sp-task breakdown
174
194
  ```
175
195
  I will:
176
196
  - Run: Cross-platform detection and execution
177
197
  ```bash
178
198
  # Cross-platform detection
179
199
  if [[ "$OSTYPE" == "msys" || "$OSTYPE" == "win32" ]]; then
180
- powershell scripts/pulse-task.ps1 "$FEATURE_DIR"
200
+ python scripts/sp-pulse-task.py "$FEATURE_DIR"
181
201
  else
182
- bash scripts/pulse-task.sh "$FEATURE_DIR" || python scripts/pulse-task.py "$FEATURE_DIR"
202
+ bash scripts/sp-pulse-task.sh "$FEATURE_DIR" || python scripts/sp-pulse-task.py "$FEATURE_DIR"
183
203
  fi
184
204
  ```
185
205
  - Create: AI-optimized task structure with template variables
@@ -187,19 +207,19 @@ I will:
187
207
 
188
208
  ### Update task status
189
209
  ```
190
- User: /task update mark T001-T005 as completed
210
+ User: /sp-task update mark T001-T005 as completed
191
211
  ```
192
212
  I will update task status and recalculate progress metrics.
193
213
 
194
214
  ### Show comprehensive status
195
215
  ```
196
- User: /task status
216
+ User: /sp-task status
197
217
  ```
198
218
  I will display detailed progress with constitutional gates compliance.
199
219
 
200
220
  ### Execute specific task
201
221
  ```
202
- User: /task execute T001
222
+ User: /sp-task execute T001
203
223
  ```
204
224
  I will:
205
225
  - Validate: Constitutional gates compliance and task readiness
@@ -207,16 +227,16 @@ I will:
207
227
  ```bash
208
228
  # Cross-platform task execution
209
229
  if [[ "$OSTYPE" == "msys" || "$OSTYPE" == "win32" ]]; then
210
- powershell scripts/pulse-task.ps1 "$FEATURE_DIR" "execute:$TASK_ID"
230
+ python scripts/sp-pulse-task.py "$FEATURE_DIR" "execute:$TASK_ID"
211
231
  else
212
- bash scripts/pulse-task.sh "$FEATURE_DIR" "execute:$TASK_ID" || python scripts/pulse-task.py "$FEATURE_DIR" "execute:$TASK_ID"
232
+ bash scripts/sp-pulse-task.sh "$FEATURE_DIR" "execute:$TASK_ID" || python scripts/sp-pulse-task.py "$FEATURE_DIR" "execute:$TASK_ID"
213
233
  fi
214
234
  ```
215
235
  - Track: Results and update progress automatically
216
236
 
217
237
  ## Enhanced Features
218
238
 
219
- - **Cross-platform script execution** with automatic detection (PowerShell/Bash/Python)
239
+ - **Cross-platform script execution** with automatic detection (Bash/Python)
220
240
  - **AI-optimized templates** with Jinja2-style variables
221
241
  - **Enhanced script integration** for validation and execution
222
242
  - **Constitutional gates compliance** tracking
@@ -0,0 +1,56 @@
1
+ description = "Switch context and continue work on a specific feature"
2
+ prompt = """
3
+ Handle the /sp-continue command with arguments: {{args}}
4
+
5
+ Parse arguments to extract feature name or ID
6
+
7
+ ## Feature Detection:
8
+ 1. Find feature directory using context detection:
9
+ - Search for matching feature directory (specs/*, plans/*, tasks/*)
10
+ - Support partial matching (e.g., "auth" matches "001-user-authentication")
11
+ - Support ID matching (e.g., "001" matches "001-user-authentication")
12
+
13
+ 2. Validate feature exists:
14
+ - Check if feature directory has any files
15
+ - Verify feature structure is intact
16
+ - Report if feature not found
17
+
18
+ 3. Update context in memory/context.md:
19
+ - Switch current feature to selected feature
20
+ - Update timestamp and switch reason
21
+ - Preserve previous context data
22
+
23
+ 4. Switch git branch if in git repository:
24
+ - Checkout feature branch if it exists
25
+ - Report if branch doesn't exist
26
+ - Handle branch switching errors gracefully
27
+
28
+ 5. Display feature status:
29
+ - Show current progress percentage
30
+ - List next available actions
31
+ - Highlight any blockers or issues
32
+ - Show recent activity
33
+
34
+ 6. Suggest next steps based on feature state:
35
+ - If no spec files: /sp-spec <description>
36
+ - If spec but no plan: /sp-plan
37
+ - If plan but no tasks: /sp-task
38
+ - If tasks exist: Show task completion status and suggest next task
39
+
40
+ ## Supported Feature Identification:
41
+ - By name: /sp-continue user-authentication
42
+ - By ID: /sp-continue 001
43
+ - By partial match: /sp-continue auth
44
+
45
+ ## Context Switching:
46
+ 1. Save previous context state
47
+ 2. Load new feature context
48
+ 3. Update memory/context.md
49
+ 4. Switch git branch if available
50
+ 5. Display feature status and next steps
51
+
52
+ Examples:
53
+ - /sp-continue user-authentication
54
+ - /sp-continue 001
55
+ - /sp-continue auth
56
+ """
@@ -0,0 +1,68 @@
1
+ description = "Generate or validate implementation plans with versioning"
2
+ prompt = """
3
+ Handle the /sp-plan command with arguments: {{args}}
4
+
5
+ First, detect current feature context:
6
+ - Read memory/context.md for current feature metadata
7
+ - Use git branch name if available (e.g., 001-user-authentication)
8
+ - Fall back to most recently created feature directory
9
+ - If no context found, ask user to specify feature or run /sp-pulse first
10
+
11
+ Parse arguments to determine action:
12
+ - If "validate": Check plan against constitution
13
+ - Otherwise: Generate new plan
14
+
15
+ ## For /sp-plan generate or /sp-plan:
16
+ 1. Show list of existing spec files in current feature directory
17
+ 2. Ask user which spec file to base plan on
18
+ 3. Read selected specification from @{specs/*/spec-XXX.md}
19
+
20
+ 4. Run Phase Gates checks:
21
+ - Constitutional compliance
22
+ - Simplicity check (≤3 modules)
23
+ - Test-first strategy defined
24
+ - Framework selection complete
25
+ - Research completed
26
+
27
+ 5. Generate plan sections:
28
+ - Technology stack
29
+ - Architecture overview
30
+ - Implementation phases
31
+ - API contracts
32
+ - Data models
33
+ - Testing strategy
34
+
35
+ 6. Track complexity:
36
+ - If >3 modules, document justification
37
+ - Create simplification roadmap
38
+
39
+ 7. Check existing plan files and create next version (plan-001.md, plan-002.md, etc.)
40
+ 8. Write plan to plans/XXX-feature/plan-XXX.md
41
+ 9. Run cross-platform validation:
42
+ - Linux/macOS: !{bash scripts/sp-pulse-plan.sh "XXX-feature"}
43
+ - Fallback: !{python scripts/sp-pulse-plan.py "XXX-feature"}
44
+
45
+ ## For /sp-plan validate:
46
+ 1. Show list of existing plan files in current feature directory
47
+ 2. Ask user which plan file to validate
48
+ 3. Read selected plan from @{plans/*/plan-XXX.md}
49
+ 4. Run cross-platform validation:
50
+ - Linux/macOS: !{bash scripts/sp-pulse-plan.sh "XXX-feature"}
51
+ - Fallback: !{python scripts/sp-pulse-plan.py "XXX-feature"}
52
+ 5. Verify Phase Gates compliance
53
+ 6. Check complexity tracking
54
+ 7. Ensure test-first approach
55
+ 8. Validate framework choices
56
+ 9. Report validation results
57
+
58
+ Phase Gates (Phase -1) must pass before implementation:
59
+ - ✅ Using ≤3 projects/modules
60
+ - ✅ Tests defined before code
61
+ - ✅ Using framework features directly
62
+ - ✅ No premature abstractions
63
+ - ✅ Research completed
64
+
65
+ Examples:
66
+ - /sp-plan generate
67
+ - /sp-plan validate
68
+ """
@@ -6,9 +6,8 @@ Please follow these steps:
6
6
 
7
7
  1. Extract the feature name from the provided arguments
8
8
  2. Run the initialization script with cross-platform detection:
9
- - Windows: !{powershell scripts/pulse-init.ps1 "{{args}}"}
10
- - Linux/macOS: !{bash scripts/pulse-init.sh "{{args}}"}
11
- - Fallback: !{python scripts/pulse-init.py "{{args}"}
9
+ - Linux/macOS: !{bash scripts/sp-pulse-init.sh "{{args}}"}
10
+ - Fallback: !{python scripts/sp-pulse-init.py "{{args}}"}
12
11
  3. Create the feature structure:
13
12
  - Generate feature ID (001, 002, etc.)
14
13
  - Create directories: specs/XXX-feature/, plans/XXX-feature/, tasks/XXX-feature/
@@ -16,12 +15,19 @@ Please follow these steps:
16
15
  - Update memory/context.md with current feature
17
16
  - Create git branch if in git repository
18
17
 
19
- 4. Report the results showing:
18
+ 4. Suggest specification options:
19
+ - Generate 2-3 different specification suggestions based on the feature name
20
+ - Present options to user as numbered choices
21
+ - Ask user to choose one or provide their own specification description
22
+ - Guide user to use /sp-spec command after making selection
23
+
24
+ 5. Report the results showing:
20
25
  - Created structure paths
21
26
  - Feature ID and branch name
22
- - Next steps for the user
27
+ - Specification suggestions for user to choose from
28
+ - Next steps guidance
23
29
 
24
30
  If no feature name is provided, ask the user for the feature name first.
25
31
 
26
- Example usage: /pulse user-authentication
32
+ Example usage: /sp-pulse user-authentication
27
33
  """
@@ -0,0 +1,54 @@
1
+ description = "Create or manage feature specifications with versioning"
2
+ prompt = """
3
+ Handle the /sp-spec command with arguments: {{args}}
4
+
5
+ First, detect current feature context:
6
+ - Read memory/context.md for current feature metadata
7
+ - Use git branch name if available (e.g., 001-user-authentication)
8
+ - Fall back to most recently created feature directory
9
+ - If no context found, ask user to specify feature or run /sp-pulse first
10
+
11
+ Parse the arguments to determine the action:
12
+ - If starts with "create": Generate new specification
13
+ - If starts with "update": Modify existing specification
14
+ - If starts with "validate": Check specification completeness
15
+ - If no action specified: Default to "create" with full arguments as description
16
+
17
+ ## For /sp-spec create [description] or /sp-spec [description]:
18
+ 1. Read template from @{templates/spec.md}
19
+ 2. Parse the description to identify:
20
+ - Functional requirements (Must/Should/Could have)
21
+ - User stories and acceptance criteria
22
+ - Technical requirements
23
+ 3. Mark any uncertainties with [NEEDS CLARIFICATION: detail]
24
+ 4. Find current feature directory from detected context
25
+ 5. Check existing spec files and create next version (spec-001.md, spec-002.md, etc.)
26
+ 6. Write specification to specs/XXX-feature/spec-XXX.md
27
+ 7. Run cross-platform validation:
28
+ - Linux/macOS: !{bash scripts/sp-pulse-spec.sh "XXX-feature"}
29
+ - Fallback: !{python scripts/sp-pulse-spec.py "XXX-feature"}
30
+
31
+ ## For /sp-spec update:
32
+ 1. Show list of existing spec files in current feature directory
33
+ 2. Ask user which spec file to update
34
+ 3. Read selected specification file
35
+ 4. Ask user for clarifications or changes
36
+ 5. Update content while preserving structure
37
+ 6. Remove resolved [NEEDS CLARIFICATION] markers
38
+
39
+ ## For /sp-spec validate:
40
+ 1. Show list of existing spec files in current feature directory
41
+ 2. Ask user which spec file to validate
42
+ 3. Run cross-platform validation:
43
+ - Linux/macOS: !{bash scripts/sp-pulse-spec.sh "XXX-feature"}
44
+ - Fallback: !{python scripts/sp-pulse-spec.py "XXX-feature"}
45
+ 4. Check all required sections are filled
46
+ 5. Count [NEEDS CLARIFICATION] markers
47
+ 6. Verify acceptance criteria are testable
48
+ 7. Report validation results
49
+
50
+ Examples:
51
+ - /sp-spec user authentication with OAuth2 and email/password
52
+ - /sp-spec update
53
+ - /sp-spec validate
54
+ """