smart-spec-kit-mcp 2.0.4 β†’ 2.0.5

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.
@@ -0,0 +1,323 @@
1
+ # πŸ“¦ Guide de Packaging et Distribution
2
+
3
+ Ce guide explique comment Spec-Kit est conΓ§u pour Γͺtre utilisΓ© dans n'importe quel projet.
4
+
5
+ ---
6
+
7
+ ## 🎯 Principe: Zero Config + Override Local
8
+
9
+ Spec-Kit fonctionne **immΓ©diatement** avec les workflows par dΓ©faut, mais permet aux Γ©quipes de **personnaliser** pour leur stack.
10
+
11
+ ```text
12
+ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
13
+ β”‚ Votre Projet β”‚
14
+ β”‚ β”œβ”€β”€ .spec-kit/ ← Overrides locaux (optionnel) β”‚
15
+ β”‚ β”‚ β”œβ”€β”€ workflows/ β”‚
16
+ β”‚ β”‚ β”‚ └── react-feature.yaml ← Votre workflow custom β”‚
17
+ β”‚ β”‚ └── templates/ β”‚
18
+ β”‚ β”‚ └── react-spec.md ← Votre template custom β”‚
19
+ β”‚ └── src/ β”‚
20
+ β”‚ └── ... β”‚
21
+ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
22
+ β”‚
23
+ β”‚ utilise
24
+ β–Ό
25
+ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
26
+ β”‚ Package spec-kit-mcp (npm) β”‚
27
+ β”‚ β”œβ”€β”€ workflows/ ← Workflows par dΓ©faut β”‚
28
+ β”‚ β”‚ β”œβ”€β”€ feature-standard.yaml β”‚
29
+ β”‚ β”‚ β”œβ”€β”€ feature-full.yaml β”‚
30
+ β”‚ β”‚ └── bugfix.yaml β”‚
31
+ β”‚ └── templates/ ← Templates par dΓ©faut β”‚
32
+ β”‚ β”œβ”€β”€ functional-spec.md β”‚
33
+ β”‚ └── bugfix-report.md β”‚
34
+ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
35
+ ```
36
+
37
+ ---
38
+
39
+ ## πŸ“₯ Installation pour l'Utilisateur Final
40
+
41
+ ### Option 1: NPX (RecommandΓ©)
42
+
43
+ Aucune installation nΓ©cessaire, toujours Γ  jour:
44
+
45
+ ```json
46
+ {
47
+ "mcp": {
48
+ "servers": {
49
+ "spec-kit": {
50
+ "command": "npx",
51
+ "args": ["-y", "spec-kit-mcp"]
52
+ }
53
+ }
54
+ }
55
+ }
56
+ ```
57
+
58
+ ### Option 2: Installation Globale
59
+
60
+ ```bash
61
+ npm install -g spec-kit-mcp
62
+ ```
63
+
64
+ ```json
65
+ {
66
+ "mcp": {
67
+ "servers": {
68
+ "spec-kit": {
69
+ "command": "spec-kit-mcp"
70
+ }
71
+ }
72
+ }
73
+ }
74
+ ```
75
+
76
+ ---
77
+
78
+ ## πŸ”§ Personnalisation par Projet
79
+
80
+ ### Initialiser la config locale
81
+
82
+ Dans Copilot Chat:
83
+
84
+ ```text
85
+ @spec-kit init
86
+ ```
87
+
88
+ Cela crΓ©e:
89
+
90
+ ```text
91
+ .spec-kit/
92
+ β”œβ”€β”€ workflows/
93
+ β”‚ └── custom-feature.yaml ← Exemple modifiable
94
+ └── templates/
95
+ └── custom-spec.md ← Exemple modifiable
96
+ ```
97
+
98
+ ### Ordre de rΓ©solution
99
+
100
+ Quand vous appelez `start_workflow workflow_name="X"`:
101
+
102
+ 1. **D'abord**: `.spec-kit/workflows/X.yaml` (local)
103
+ 2. **Ensuite**: `workflows/X.yaml` (dans le projet)
104
+ 3. **Enfin**: Package defaults (feature-standard, etc.)
105
+
106
+ > Le **premier trouvΓ© gagne** - vous pouvez override les workflows par dΓ©faut!
107
+
108
+ ---
109
+
110
+ ## πŸ“ CrΓ©er un Workflow pour votre Stack
111
+
112
+ ### Exemple: React + TypeScript
113
+
114
+ `.spec-kit/workflows/react-feature.yaml`:
115
+
116
+ ```yaml
117
+ name: react-feature
118
+ displayName: "React Feature Specification"
119
+ description: "Workflow adaptΓ© pour les features React/TypeScript"
120
+ template: react-spec.md
121
+ defaultAgent: SpecAgent
122
+
123
+ steps:
124
+ - id: fetch-requirements
125
+ name: "Fetch Requirements"
126
+ action: fetch_ado
127
+ description: "Récupère la User Story depuis Azure DevOps"
128
+ outputs:
129
+ - user_story
130
+
131
+ - id: generate-spec
132
+ name: "Generate Specification"
133
+ action: call_agent
134
+ agent: SpecAgent
135
+ description: |
136
+ Génère une spécification React avec:
137
+ - Structure des composants
138
+ - Props/State attendus
139
+ - Hooks nΓ©cessaires
140
+ inputs:
141
+ source: user_story
142
+
143
+ - id: component-plan
144
+ name: "Component Architecture"
145
+ action: call_agent
146
+ agent: PlanAgent
147
+ description: |
148
+ Planifie l'architecture des composants:
149
+ - DΓ©coupage en composants atomiques
150
+ - Shared state (Context/Redux)
151
+ - API calls (React Query)
152
+ inputs:
153
+ source: user_story
154
+
155
+ - id: review
156
+ name: "Technical Review"
157
+ action: review
158
+ agent: GovAgent
159
+ description: |
160
+ Valide les aspects techniques:
161
+ - Performance (memo, useMemo, useCallback)
162
+ - AccessibilitΓ© (ARIA, semantic HTML)
163
+ - Tests (Jest, Testing Library)
164
+
165
+ - id: create-output
166
+ name: "Create Output"
167
+ action: create_file
168
+ description: "CrΓ©e le fichier de spΓ©cification"
169
+ inputs:
170
+ filename: "specs/{contextId}-react-spec.md"
171
+ ```
172
+
173
+ ### Template associΓ©
174
+
175
+ `.spec-kit/templates/react-spec.md`:
176
+
177
+ ```markdown
178
+ # {{title}} - React Specification
179
+
180
+ ## Context
181
+ - **Work Item**: {{contextId}}
182
+ - **Date**: {{date}}
183
+ - **Stack**: React 18 + TypeScript
184
+
185
+ ## User Story
186
+ {{description}}
187
+
188
+ ## Component Architecture
189
+
190
+ ### Components Tree
191
+ <!-- Γ€ remplir par SpecAgent -->
192
+
193
+ ### Props & State
194
+ <!-- Γ€ remplir par SpecAgent -->
195
+
196
+ ## Technical Considerations
197
+
198
+ ### Performance
199
+ - [ ] Lazy loading si nΓ©cessaire
200
+ - [ ] Memoization des composants lourds
201
+ - [ ] Optimistic updates pour l'UX
202
+
203
+ ### Accessibility
204
+ - [ ] ARIA labels
205
+ - [ ] Keyboard navigation
206
+ - [ ] Screen reader support
207
+
208
+ ### Testing
209
+ - [ ] Unit tests (Jest)
210
+ - [ ] Component tests (Testing Library)
211
+ - [ ] E2E si applicable (Playwright)
212
+
213
+ ## Tasks
214
+ <!-- Γ€ remplir par PlanAgent -->
215
+ ```
216
+
217
+ ---
218
+
219
+ ## πŸš€ Publication sur NPM
220
+
221
+ ### PrΓ©requis
222
+
223
+ 1. Compte npm
224
+ 2. `npm login`
225
+
226
+ ### Publish
227
+
228
+ ```bash
229
+ npm run build
230
+ npm publish
231
+ ```
232
+
233
+ ### Le package inclut
234
+
235
+ DΓ©fini dans `package.json`:
236
+
237
+ ```json
238
+ {
239
+ "files": [
240
+ "dist",
241
+ "workflows",
242
+ "templates",
243
+ "README.md"
244
+ ]
245
+ }
246
+ ```
247
+
248
+ ---
249
+
250
+ ## πŸ—οΈ Architecture pour Maintainers
251
+
252
+ ### Structure du package publiΓ©
253
+
254
+ ```text
255
+ spec-kit-mcp/
256
+ β”œβ”€β”€ dist/ ← Code compilΓ©
257
+ β”‚ β”œβ”€β”€ index.js ← Entry point
258
+ β”‚ β”œβ”€β”€ engine/
259
+ β”‚ β”œβ”€β”€ tools/
260
+ β”‚ β”œβ”€β”€ prompts/
261
+ β”‚ β”œβ”€β”€ schemas/
262
+ β”‚ └── utils/
263
+ β”œβ”€β”€ workflows/ ← Workflows par dΓ©faut
264
+ β”‚ β”œβ”€β”€ feature-standard.yaml
265
+ β”‚ β”œβ”€β”€ feature-full.yaml
266
+ β”‚ └── bugfix.yaml
267
+ β”œβ”€β”€ templates/ ← Templates par dΓ©faut
268
+ β”‚ β”œβ”€β”€ functional-spec.md
269
+ β”‚ └── bugfix-report.md
270
+ β”œβ”€β”€ package.json
271
+ └── README.md
272
+ ```
273
+
274
+ ### RΓ©solution des chemins
275
+
276
+ Le `workflowLoader.ts` gère la résolution:
277
+
278
+ ```typescript
279
+ // Ordre de recherche
280
+ const searchPaths = [
281
+ // 1. Local override
282
+ path.join(process.cwd(), ".spec-kit", "workflows"),
283
+ // 2. Project root (pour projets dΓ©diΓ©s)
284
+ path.join(process.cwd(), "workflows"),
285
+ // 3. Package defaults
286
+ path.join(__dirname, "..", "..", "workflows"),
287
+ ];
288
+ ```
289
+
290
+ ---
291
+
292
+ ## πŸ“Š Commandes de Debug
293
+
294
+ ### Voir la configuration actuelle
295
+
296
+ ```text
297
+ @spec-kit config
298
+ ```
299
+
300
+ Affiche:
301
+ - Chemins de recherche
302
+ - Workflows disponibles (local vs package)
303
+ - Projet courant vs package
304
+
305
+ ### Tester un workflow custom
306
+
307
+ ```text
308
+ @spec-kit start_workflow workflow_name="custom-feature" context_id="TEST"
309
+ ```
310
+
311
+ ---
312
+
313
+ ## 🎁 Stacks Pré-configurées (Roadmap)
314
+
315
+ Future versions pourraient inclure des presets:
316
+
317
+ ```bash
318
+ npx spec-kit-mcp init --preset=react
319
+ npx spec-kit-mcp init --preset=dotnet
320
+ npx spec-kit-mcp init --preset=python
321
+ ```
322
+
323
+ Chaque preset crΓ©erait `.spec-kit/` avec des workflows optimisΓ©s pour la stack.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "smart-spec-kit-mcp",
3
- "version": "2.0.4",
3
+ "version": "2.0.5",
4
4
  "description": "AI-driven specification platform using MCP (Model Context Protocol) for VS Code & GitHub Copilot",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",
@@ -10,6 +10,7 @@
10
10
  },
11
11
  "files": [
12
12
  "dist",
13
+ "docs",
13
14
  "workflows",
14
15
  "templates",
15
16
  "starter-kit",
@@ -0,0 +1,96 @@
1
+ # Copilot Instructions for Spec-Kit
2
+
3
+ This project uses **Spec-Kit** for specification-driven development. Spec-Kit provides MCP tools to guide you through a structured workflow from requirements to implementation.
4
+
5
+ ## How to Use Spec-Kit
6
+
7
+ When the user mentions **"speckit:"** followed by a command, or uses these keywords in French/English, call the corresponding MCP tool:
8
+
9
+ | User Says | MCP Tool | Description |
10
+ |-----------|----------|-------------|
11
+ | `speckit: spec`, `speckit: specify`, `crΓ©er une spec` | `speckit_specify` | Create a functional specification |
12
+ | `speckit: plan`, `planifier`, `crΓ©er un plan` | `speckit_plan` | Create an implementation plan |
13
+ | `speckit: tasks`, `gΓ©nΓ©rer les tΓ’ches`, `crΓ©er les tΓ’ches` | `speckit_tasks` | Generate task breakdown |
14
+ | `speckit: implement`, `implΓ©menter`, `coder` | `speckit_implement` | Implement tasks |
15
+ | `speckit: clarify`, `clarifier`, `prΓ©ciser` | `speckit_clarify` | Clarify requirements |
16
+ | `speckit: help`, `aide sur speckit`, questions about spec-kit | `speckit_help` | Get help and documentation |
17
+
18
+ ## Getting Help
19
+
20
+ When the user asks questions about Spec-Kit (how to use it, how to customize, how to create workflows, troubleshooting), call `speckit_help` with the relevant topic:
21
+
22
+ **Examples**:
23
+ - "speckit: help comment crΓ©er un workflow ?" β†’ `speckit_help` with topic: "workflows"
24
+ - "Comment personnaliser les templates spec-kit ?" β†’ `speckit_help` with topic: "templates"
25
+ - "speckit aide" β†’ `speckit_help` without topic (general help)
26
+
27
+ ## Workflow
28
+
29
+ The typical spec-kit workflow is:
30
+
31
+ ```
32
+ speckit_specify β†’ speckit_plan β†’ speckit_tasks β†’ speckit_implement
33
+ ↑
34
+ speckit_clarify (if needed)
35
+ ```
36
+
37
+ 1. **Specify**: Transform requirements into a structured specification
38
+ 2. **Plan**: Create a technical implementation plan from the spec
39
+ 3. **Tasks**: Break down the plan into atomic, actionable tasks
40
+ 4. **Implement**: Execute tasks one by one
41
+ 5. **Clarify**: Resolve ambiguities at any point
42
+
43
+ ## Project Structure
44
+
45
+ ```
46
+ .spec-kit/
47
+ β”œβ”€β”€ prompts/ # Prompt-as-code files (read by MCP tools)
48
+ β”‚ β”œβ”€β”€ specify.md
49
+ β”‚ β”œβ”€β”€ plan.md
50
+ β”‚ β”œβ”€β”€ tasks.md
51
+ β”‚ β”œβ”€β”€ implement.md
52
+ β”‚ └── clarify.md
53
+ β”œβ”€β”€ templates/ # Document templates
54
+ β”‚ β”œβ”€β”€ functional-spec.md
55
+ β”‚ β”œβ”€β”€ plan-template.md
56
+ β”‚ └── tasks-template.md
57
+ β”œβ”€β”€ memory/ # Project context
58
+ β”‚ └── constitution.md
59
+ └── workflows/ # Automated workflows
60
+
61
+ specs/ # Generated specifications (output)
62
+ ```
63
+
64
+ ## Important Conventions
65
+
66
+ When using spec-kit:
67
+
68
+ 1. **Always read the constitution** (`.spec-kit/memory/constitution.md`) for project principles
69
+ 2. **Follow the templates** in `.spec-kit/templates/`
70
+ 3. **Save outputs to `specs/`** directory
71
+ 4. **Suggest the next step** after each tool completes
72
+
73
+ ## Tool Response Format
74
+
75
+ After calling a spec-kit tool, follow the instructions in the tool response. The response will include:
76
+ - Context from prompts and templates
77
+ - User input
78
+ - Specific instructions for what to generate
79
+ - Suggested next step
80
+
81
+ ## Example Interactions
82
+
83
+ **User**: "speckit: créer une spec pour un système de notifications push"
84
+ **Action**: Call `speckit_specify` with `requirements: "système de notifications push"`
85
+
86
+ **User**: "speckit: planifier l'implΓ©mentation"
87
+ **Action**: Call `speckit_plan` (will find the most recent spec automatically)
88
+
89
+ **User**: "speckit: implement task 3"
90
+ **Action**: Call `speckit_implement` with `taskId: "3"`
91
+
92
+ **User**: "speckit: help comment crΓ©er un nouveau workflow ?"
93
+ **Action**: Call `speckit_help` with `topic: "workflows"`
94
+
95
+ **User**: "Comment fonctionne spec-kit ?"
96
+ **Action**: Call `speckit_help` without topic for general help
@@ -0,0 +1,73 @@
1
+ # Clarify Prompt
2
+
3
+ You are clarifying ambiguous requirements in a specification. Follow this structured approach:
4
+
5
+ ## 1. Find Ambiguities
6
+
7
+ Scan the specification for:
8
+ - `[NEEDS CLARIFICATION]` markers
9
+ - Vague terms ("fast", "easy", "simple")
10
+ - Missing details (undefined behaviors)
11
+ - Conflicting requirements
12
+ - Unstated assumptions
13
+
14
+ ## 2. Prioritize Clarifications
15
+
16
+ Focus on ambiguities that:
17
+ - Block implementation
18
+ - Could lead to rework
19
+ - Affect user experience significantly
20
+ - Have security implications
21
+
22
+ ## 3. Ask Targeted Questions
23
+
24
+ For each ambiguity:
25
+
26
+ ```markdown
27
+ ### Clarification Needed: {Topic}
28
+
29
+ **Context**: {Where this appears in the spec}
30
+
31
+ **Ambiguity**: {What's unclear}
32
+
33
+ **Options**:
34
+ 1. {Option A} - {implication}
35
+ 2. {Option B} - {implication}
36
+ 3. {Option C} - {implication}
37
+
38
+ **Recommendation**: {Your suggested choice and why}
39
+
40
+ **Question**: {Specific question for stakeholder}
41
+ ```
42
+
43
+ ## 4. Question Guidelines
44
+
45
+ Good questions are:
46
+ - **Specific**: One topic per question
47
+ - **Bounded**: Offer options when possible
48
+ - **Contextual**: Explain why it matters
49
+ - **Actionable**: Answer leads to decision
50
+
51
+ Avoid:
52
+ - Open-ended questions
53
+ - Technical jargon (unless spec is technical)
54
+ - Compound questions
55
+ - Leading questions
56
+
57
+ ## 5. Update Specification
58
+
59
+ After receiving answers:
60
+ 1. Update the relevant section
61
+ 2. Remove the `[NEEDS CLARIFICATION]` marker
62
+ 3. Add rationale for the decision
63
+ 4. Note any assumptions made
64
+
65
+ ## 6. Output
66
+
67
+ Report:
68
+ - Number of clarifications found
69
+ - Questions asked
70
+ - Answers received (if any)
71
+ - Specification updates made
72
+ - Remaining ambiguities (if any)
73
+ - Next step: `speckit_plan` if all clarified
@@ -0,0 +1,79 @@
1
+ # Implement Prompt
2
+
3
+ You are implementing tasks from the task breakdown. Follow this structured approach:
4
+
5
+ ## 1. Task Selection
6
+
7
+ If no specific task ID provided:
8
+ - Find the first task with status "Not Started"
9
+ - Check dependencies are satisfied (all dependent tasks are "Done")
10
+ - If dependencies not met, suggest which task to do instead
11
+
12
+ ## 2. Before Implementation
13
+
14
+ Read and understand:
15
+ - The task description and acceptance criteria
16
+ - The original specification (for context)
17
+ - The project constitution (for conventions)
18
+ - Related code files
19
+
20
+ ## 3. Implementation Guidelines
21
+
22
+ ### Code Quality
23
+ - Follow project conventions from constitution
24
+ - Write clean, self-documenting code
25
+ - Add comments for complex logic only
26
+ - Follow existing patterns in the codebase
27
+
28
+ ### Testing
29
+ - Write tests alongside implementation
30
+ - Cover happy path and edge cases
31
+ - Follow existing test patterns
32
+
33
+ ### Error Handling
34
+ - Handle errors gracefully
35
+ - Provide meaningful error messages
36
+ - Log appropriately
37
+
38
+ ## 4. Implementation Process
39
+
40
+ For each task:
41
+
42
+ 1. **Read** the task requirements
43
+ 2. **Identify** files to create/modify
44
+ 3. **Implement** the changes
45
+ 4. **Verify** acceptance criteria are met
46
+ 5. **Update** task status in tasks.md
47
+
48
+ ## 5. Status Updates
49
+
50
+ After implementing, update the task in `specs/tasks.md`:
51
+ - Change status from "Not Started" to "Done"
52
+ - Add any notes about implementation decisions
53
+
54
+ ## 6. Commit Guidelines
55
+
56
+ Suggest a commit message following format:
57
+ ```
58
+ feat({scope}): {short description}
59
+
60
+ - {detail 1}
61
+ - {detail 2}
62
+
63
+ Task: {task ID}
64
+ ```
65
+
66
+ ## 7. Output
67
+
68
+ Report:
69
+ - What was implemented
70
+ - Files created/modified
71
+ - Any deviations from plan
72
+ - Next task to implement (if continuing)
73
+
74
+ ## 8. Iteration
75
+
76
+ Ask the user:
77
+ - "Task {ID} completed. Continue with {next task}? (yes/no)"
78
+ - If yes, proceed with next task
79
+ - If no, summarize progress made
@@ -0,0 +1,69 @@
1
+ # Plan Prompt
2
+
3
+ You are creating a technical implementation plan from a specification. Follow this structured approach:
4
+
5
+ ## 1. Understand the Specification
6
+
7
+ Read and analyze:
8
+ - All functional requirements
9
+ - Non-functional requirements
10
+ - Technical constraints
11
+ - Dependencies
12
+
13
+ ## 2. Architecture Analysis
14
+
15
+ Identify:
16
+ - **Components to create or modify**
17
+ - **Integration points**
18
+ - **Data flows**
19
+ - **API contracts** (if applicable)
20
+
21
+ ## 3. Create Implementation Plan
22
+
23
+ Structure the plan with:
24
+
25
+ ### Phases
26
+ Break work into logical phases:
27
+ 1. **Foundation** - Core infrastructure, models, utilities
28
+ 2. **Core Features** - Main functionality
29
+ 3. **Integration** - Connecting components
30
+ 4. **Polish** - Error handling, edge cases, UX
31
+ 5. **Testing** - Unit, integration, E2E tests
32
+
33
+ ### For Each Phase
34
+
35
+ Define:
36
+ - **Objectives**: What this phase accomplishes
37
+ - **Deliverables**: Concrete outputs
38
+ - **Dependencies**: What must be done first
39
+ - **Risks**: Potential blockers
40
+ - **Estimated effort**: T-shirt size (S/M/L/XL)
41
+
42
+ ### Technical Decisions
43
+
44
+ Document key decisions:
45
+ - Patterns to use
46
+ - Libraries to adopt
47
+ - Trade-offs made
48
+
49
+ ## 4. Risk Assessment
50
+
51
+ Identify and mitigate:
52
+ - Technical risks
53
+ - Dependency risks
54
+ - Timeline risks
55
+
56
+ ## 5. Quality Gates
57
+
58
+ Define checkpoints:
59
+ - Code review requirements
60
+ - Test coverage targets
61
+ - Performance benchmarks
62
+
63
+ ## 6. Output
64
+
65
+ Save to `specs/plan.md` and report:
66
+ - Plan summary
67
+ - Total phases count
68
+ - Key risks identified
69
+ - Next step: `speckit_tasks` to generate task breakdown