smart-spec-kit-mcp 2.1.1 → 2.1.3
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.
- package/README.md +21 -12
- package/dist/cli.js +6 -0
- package/dist/cli.js.map +1 -1
- package/dist/tools/promptTools.d.ts +1 -1
- package/dist/tools/promptTools.d.ts.map +1 -1
- package/dist/tools/promptTools.js +205 -3
- package/dist/tools/promptTools.js.map +1 -1
- package/dist/utils/starterKitInstaller.d.ts.map +1 -1
- package/dist/utils/starterKitInstaller.js +50 -7
- package/dist/utils/starterKitInstaller.js.map +1 -1
- package/docs/DOCUMENTATION.md +181 -10
- package/package.json +1 -1
- package/starter-kit/copilot-instructions.md +20 -2
- package/starter-kit/prompts/implement.md +42 -1
- package/starter-kit/prompts/validate.md +89 -0
- package/starter-kit/rules/rgpd-rules.md +187 -0
- package/starter-kit/rules/security-rules.md +138 -0
- package/starter-kit/workflows/bugfix.yaml +99 -0
- package/starter-kit/workflows/feature-full.yaml +344 -0
- package/starter-kit/workflows/feature-quick.yaml +69 -0
- package/starter-kit/workflows/feature-standard.yaml +92 -0
- package/workflows/feature-quick.yaml +69 -0
|
@@ -13,6 +13,7 @@ const SPEC_KIT_DIR = ".spec-kit";
|
|
|
13
13
|
const PROMPTS_DIR = "prompts";
|
|
14
14
|
const TEMPLATES_DIR = "templates";
|
|
15
15
|
const MEMORY_DIR = "memory";
|
|
16
|
+
const RULES_DIR = "rules";
|
|
16
17
|
const SPECS_DIR = "specs";
|
|
17
18
|
/**
|
|
18
19
|
* Get the package root directory (where the npm package is installed)
|
|
@@ -166,7 +167,26 @@ export async function installStarterKit(projectPath, options = {}) {
|
|
|
166
167
|
}
|
|
167
168
|
}
|
|
168
169
|
}
|
|
169
|
-
// 4.
|
|
170
|
+
// 4. Install rules to .spec-kit/rules/
|
|
171
|
+
const rulesSrc = path.join(starterKitPath, "rules");
|
|
172
|
+
const rulesDest = path.join(projectPath, SPEC_KIT_DIR, RULES_DIR);
|
|
173
|
+
if (await exists(rulesSrc)) {
|
|
174
|
+
const rulesExist = await exists(rulesDest);
|
|
175
|
+
if (rulesExist && !options.force) {
|
|
176
|
+
result.skipped.push(`${SPEC_KIT_DIR}/${RULES_DIR}`);
|
|
177
|
+
}
|
|
178
|
+
else {
|
|
179
|
+
try {
|
|
180
|
+
await copyDir(rulesSrc, rulesDest);
|
|
181
|
+
result.created.push(`${SPEC_KIT_DIR}/${RULES_DIR}`);
|
|
182
|
+
}
|
|
183
|
+
catch (error) {
|
|
184
|
+
result.errors.push(`Failed to copy rules: ${error}`);
|
|
185
|
+
result.success = false;
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
// 5. Create specs/ directory
|
|
170
190
|
const specsDir = path.join(projectPath, SPECS_DIR);
|
|
171
191
|
if (!(await exists(specsDir))) {
|
|
172
192
|
try {
|
|
@@ -179,7 +199,19 @@ export async function installStarterKit(projectPath, options = {}) {
|
|
|
179
199
|
result.errors.push(`Failed to create specs directory: ${error}`);
|
|
180
200
|
}
|
|
181
201
|
}
|
|
182
|
-
//
|
|
202
|
+
// Create specs/validations/ directory for validation reports
|
|
203
|
+
const validationsDir = path.join(specsDir, "validations");
|
|
204
|
+
if (!(await exists(validationsDir))) {
|
|
205
|
+
try {
|
|
206
|
+
await fs.mkdir(validationsDir, { recursive: true });
|
|
207
|
+
await fs.writeFile(path.join(validationsDir, ".gitkeep"), "");
|
|
208
|
+
result.created.push(`${SPECS_DIR}/validations`);
|
|
209
|
+
}
|
|
210
|
+
catch (error) {
|
|
211
|
+
// Non-blocking error
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
// 6. Generate VS Code MCP configuration
|
|
183
215
|
if (!options.skipVsCode) {
|
|
184
216
|
result.vsCodeConfig = generateVsCodeConfig();
|
|
185
217
|
}
|
|
@@ -238,16 +270,21 @@ export function formatInstallReport(result, projectPath) {
|
|
|
238
270
|
report += "├── .github/\n";
|
|
239
271
|
report += "│ └── copilot-instructions.md # Instructions for Copilot\n";
|
|
240
272
|
report += "├── .spec-kit/\n";
|
|
241
|
-
report += "│ ├── prompts/ #
|
|
273
|
+
report += "│ ├── prompts/ # Customizable prompts (read by MCP)\n";
|
|
242
274
|
report += "│ │ ├── specify.md\n";
|
|
243
275
|
report += "│ │ ├── plan.md\n";
|
|
244
276
|
report += "│ │ ├── tasks.md\n";
|
|
245
277
|
report += "│ │ ├── implement.md\n";
|
|
246
|
-
report += "│ │
|
|
278
|
+
report += "│ │ ├── clarify.md\n";
|
|
279
|
+
report += "│ │ └── validate.md\n";
|
|
247
280
|
report += "│ ├── templates/ # Specification templates\n";
|
|
281
|
+
report += "│ ├── rules/ # Validation rules (security, RGPD)\n";
|
|
282
|
+
report += "│ │ ├── security-rules.md\n";
|
|
283
|
+
report += "│ │ └── rgpd-rules.md\n";
|
|
248
284
|
report += "│ └── memory/ # Project context\n";
|
|
249
285
|
report += "│ └── constitution.md # Project principles\n";
|
|
250
|
-
report += "
|
|
286
|
+
report += "├── specs/ # Generated specifications\n";
|
|
287
|
+
report += "│ └── validations/ # Validation reports\n";
|
|
251
288
|
report += "```\n\n";
|
|
252
289
|
report += "## VS Code Configuration\n\n";
|
|
253
290
|
report += "Add this to your `.vscode/settings.json` to enable MCP tools:\n\n";
|
|
@@ -256,11 +293,14 @@ export function formatInstallReport(result, projectPath) {
|
|
|
256
293
|
report += "\n```\n\n";
|
|
257
294
|
report += "## Next Steps\n\n";
|
|
258
295
|
report += "1. **Edit your constitution**: `.spec-kit/memory/constitution.md`\n";
|
|
259
|
-
report += "2. **
|
|
296
|
+
report += "2. **Customize validation rules**: `.spec-kit/rules/`\n";
|
|
297
|
+
report += "3. **Use spec-kit commands** in Copilot Chat:\n";
|
|
260
298
|
report += " - `speckit: spec` - Create a specification\n";
|
|
261
299
|
report += " - `speckit: plan` - Create implementation plan\n";
|
|
262
300
|
report += " - `speckit: tasks` - Generate task breakdown\n";
|
|
263
|
-
report += " - `speckit: implement` - Start implementation\n
|
|
301
|
+
report += " - `speckit: implement` - Start implementation\n";
|
|
302
|
+
report += " - `speckit: validate security` - Validate against security rules\n";
|
|
303
|
+
report += " - `speckit: validate rgpd` - Validate against RGPD rules\n\n";
|
|
264
304
|
report += "## Available Commands\n\n";
|
|
265
305
|
report += "| Command | Description |\n";
|
|
266
306
|
report += "|---------|-------------|\n";
|
|
@@ -269,6 +309,9 @@ export function formatInstallReport(result, projectPath) {
|
|
|
269
309
|
report += "| `speckit: plan` | Create technical implementation plan |\n";
|
|
270
310
|
report += "| `speckit: tasks` | Generate task breakdown |\n";
|
|
271
311
|
report += "| `speckit: implement` | Execute implementation tasks |\n";
|
|
312
|
+
report += "| `speckit: validate` | Validate against customizable rules |\n";
|
|
313
|
+
report += "| `speckit: memory` | Manage project memory and context |\n";
|
|
314
|
+
report += "| `speckit: help` | Get help and documentation |\n";
|
|
272
315
|
return report;
|
|
273
316
|
}
|
|
274
317
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"starterKitInstaller.js","sourceRoot":"","sources":["../../src/utils/starterKitInstaller.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"starterKitInstaller.js","sourceRoot":"","sources":["../../src/utils/starterKitInstaller.ts"],"names":[],"mappings":"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"}
|
package/docs/DOCUMENTATION.md
CHANGED
|
@@ -4,7 +4,7 @@ This is the comprehensive documentation for Spec-Kit. Copilot can read this file
|
|
|
4
4
|
|
|
5
5
|
## Overview
|
|
6
6
|
|
|
7
|
-
Spec-Kit is an MCP (Model Context Protocol) server that provides **
|
|
7
|
+
Spec-Kit is an MCP (Model Context Protocol) server that provides **customizable prompts** and workflow orchestration for specification-driven development. It integrates with GitHub Copilot in VS Code to guide developers through creating specifications, plans, tasks, and implementation.
|
|
8
8
|
|
|
9
9
|
## Architecture
|
|
10
10
|
|
|
@@ -20,9 +20,9 @@ Spec-Kit is an MCP (Model Context Protocol) server that provides **Prompt-as-Cod
|
|
|
20
20
|
- Defines command keywords and aliases
|
|
21
21
|
|
|
22
22
|
3. **Prompts** (`.spec-kit/prompts/`)
|
|
23
|
-
-
|
|
23
|
+
- Customizable prompt files read by MCP tools
|
|
24
24
|
- Define behavior for each command
|
|
25
|
-
-
|
|
25
|
+
- Versioned and maintainable in your project
|
|
26
26
|
|
|
27
27
|
4. **Templates** (`.spec-kit/templates/`)
|
|
28
28
|
- Document templates for specs, plans, tasks
|
|
@@ -50,6 +50,7 @@ Spec-Kit is an MCP (Model Context Protocol) server that provides **Prompt-as-Cod
|
|
|
50
50
|
**Triggers**: `speckit: spec`, `speckit: specify`, `créer une spec`
|
|
51
51
|
|
|
52
52
|
**Parameters** (all optional):
|
|
53
|
+
|
|
53
54
|
- `requirements`: What you want to build. Can be:
|
|
54
55
|
- A feature description: "user authentication with email/password"
|
|
55
56
|
- A user story: "As a user, I want to..."
|
|
@@ -57,13 +58,15 @@ Spec-Kit is an MCP (Model Context Protocol) server that provides **Prompt-as-Cod
|
|
|
57
58
|
- `contextId`: ID for the specification filename
|
|
58
59
|
|
|
59
60
|
**Examples**:
|
|
60
|
-
|
|
61
|
+
|
|
62
|
+
```text
|
|
61
63
|
speckit: spec
|
|
62
64
|
speckit: spec pour un système de notifications push
|
|
63
65
|
speckit: spec user authentication with OAuth
|
|
64
66
|
```
|
|
65
67
|
|
|
66
68
|
**Behavior**:
|
|
69
|
+
|
|
67
70
|
1. Loads prompt from `.spec-kit/prompts/specify.md`
|
|
68
71
|
2. Loads constitution from `.spec-kit/memory/constitution.md`
|
|
69
72
|
3. Loads template from `.spec-kit/templates/functional-spec.md`
|
|
@@ -77,15 +80,18 @@ speckit: spec user authentication with OAuth
|
|
|
77
80
|
**Triggers**: `speckit: plan`, `planifier`, `créer un plan`
|
|
78
81
|
|
|
79
82
|
**Parameters** (all optional):
|
|
83
|
+
|
|
80
84
|
- `specPath`: Path to specification file (auto-detects most recent if not provided)
|
|
81
85
|
|
|
82
86
|
**Examples**:
|
|
83
|
-
|
|
87
|
+
|
|
88
|
+
```text
|
|
84
89
|
speckit: plan
|
|
85
90
|
speckit: plan pour la spec specs/auth-spec.md
|
|
86
91
|
```
|
|
87
92
|
|
|
88
93
|
**Behavior**:
|
|
94
|
+
|
|
89
95
|
1. Finds the most recent specification in `specs/`
|
|
90
96
|
2. Loads prompt from `.spec-kit/prompts/plan.md`
|
|
91
97
|
3. Returns context for generating the plan
|
|
@@ -98,15 +104,18 @@ speckit: plan pour la spec specs/auth-spec.md
|
|
|
98
104
|
**Triggers**: `speckit: tasks`, `générer les tâches`, `créer les tâches`
|
|
99
105
|
|
|
100
106
|
**Parameters** (all optional):
|
|
107
|
+
|
|
101
108
|
- `planPath`: Path to plan file (auto-detects most recent if not provided)
|
|
102
109
|
|
|
103
110
|
**Examples**:
|
|
104
|
-
|
|
111
|
+
|
|
112
|
+
```text
|
|
105
113
|
speckit: tasks
|
|
106
114
|
speckit: générer les tâches
|
|
107
115
|
```
|
|
108
116
|
|
|
109
117
|
**Behavior**:
|
|
118
|
+
|
|
110
119
|
1. Finds the most recent plan in `specs/`
|
|
111
120
|
2. Loads prompt from `.spec-kit/prompts/tasks.md`
|
|
112
121
|
3. Returns context for generating tasks
|
|
@@ -119,16 +128,19 @@ speckit: générer les tâches
|
|
|
119
128
|
**Triggers**: `speckit: implement`, `implémenter`, `coder`
|
|
120
129
|
|
|
121
130
|
**Parameters** (all optional):
|
|
131
|
+
|
|
122
132
|
- `taskId`: Specific task ID to implement (picks next pending if not provided)
|
|
123
133
|
|
|
124
134
|
**Examples**:
|
|
125
|
-
|
|
135
|
+
|
|
136
|
+
```text
|
|
126
137
|
speckit: implement
|
|
127
138
|
speckit: implement task 3
|
|
128
139
|
speckit: implémenter la tâche 5
|
|
129
140
|
```
|
|
130
141
|
|
|
131
142
|
**Behavior**:
|
|
143
|
+
|
|
132
144
|
1. Loads tasks from `specs/tasks.md`
|
|
133
145
|
2. Finds next pending task (or specified task)
|
|
134
146
|
3. Loads prompt from `.spec-kit/prompts/implement.md`
|
|
@@ -142,16 +154,19 @@ speckit: implémenter la tâche 5
|
|
|
142
154
|
**Triggers**: `speckit: clarify`, `clarifier`, `préciser`
|
|
143
155
|
|
|
144
156
|
**Parameters** (all optional):
|
|
157
|
+
|
|
145
158
|
- `specPath`: Path to specification (auto-detects if not provided)
|
|
146
159
|
- `questions`: Specific questions to clarify
|
|
147
160
|
|
|
148
161
|
**Examples**:
|
|
149
|
-
|
|
162
|
+
|
|
163
|
+
```text
|
|
150
164
|
speckit: clarify
|
|
151
165
|
speckit: clarifier les critères d'acceptation
|
|
152
166
|
```
|
|
153
167
|
|
|
154
168
|
**Behavior**:
|
|
169
|
+
|
|
155
170
|
1. Finds `[NEEDS CLARIFICATION]` markers
|
|
156
171
|
2. Loads prompt from `.spec-kit/prompts/clarify.md`
|
|
157
172
|
3. Returns targeted questions for stakeholders
|
|
@@ -163,16 +178,19 @@ speckit: clarifier les critères d'acceptation
|
|
|
163
178
|
**Triggers**: `speckit: help`, `aide sur speckit`
|
|
164
179
|
|
|
165
180
|
**Parameters** (all optional):
|
|
181
|
+
|
|
166
182
|
- `topic`: Specific topic to get help on
|
|
167
183
|
|
|
168
184
|
**Examples**:
|
|
169
|
-
|
|
185
|
+
|
|
186
|
+
```text
|
|
170
187
|
speckit: help
|
|
171
188
|
speckit: help workflows
|
|
172
189
|
speckit: help comment créer un template ?
|
|
173
190
|
```
|
|
174
191
|
|
|
175
192
|
**Topics covered**:
|
|
193
|
+
|
|
176
194
|
- Commands and usage
|
|
177
195
|
- Customization (prompts, templates, workflows)
|
|
178
196
|
- Troubleshooting
|
|
@@ -185,6 +203,7 @@ speckit: help comment créer un template ?
|
|
|
185
203
|
**Triggers**: `speckit: memory`, `enrichir la mémoire`, `ajouter au contexte`
|
|
186
204
|
|
|
187
205
|
**Parameters** (all optional):
|
|
206
|
+
|
|
188
207
|
- `action`: Action to perform
|
|
189
208
|
- `add` - Add new memory file (default)
|
|
190
209
|
- `update` - Update existing memory file
|
|
@@ -195,7 +214,8 @@ speckit: help comment créer un template ?
|
|
|
195
214
|
- `category`: Category for organizing (`decisions`, `conventions`, `architecture`, `learnings`, `context`)
|
|
196
215
|
|
|
197
216
|
**Examples**:
|
|
198
|
-
|
|
217
|
+
|
|
218
|
+
```text
|
|
199
219
|
speckit: memory list
|
|
200
220
|
speckit: memory add decisions
|
|
201
221
|
speckit: memory auto
|
|
@@ -204,6 +224,7 @@ speckit: memory ajouter une décision technique
|
|
|
204
224
|
```
|
|
205
225
|
|
|
206
226
|
**Memory Categories**:
|
|
227
|
+
|
|
207
228
|
- **decisions** - Technical and architectural decisions
|
|
208
229
|
- **conventions** - Coding standards and patterns
|
|
209
230
|
- **architecture** - System design and structure
|
|
@@ -212,10 +233,94 @@ speckit: memory ajouter une décision technique
|
|
|
212
233
|
- **glossary** - Domain terms and definitions
|
|
213
234
|
|
|
214
235
|
**Behavior**:
|
|
236
|
+
|
|
215
237
|
1. Lists, creates, or updates files in `.spec-kit/memory/`
|
|
216
238
|
2. Structures content with dates and context
|
|
217
239
|
3. Auto mode analyzes conversation to extract insights
|
|
218
240
|
|
|
241
|
+
### speckit_validate
|
|
242
|
+
|
|
243
|
+
**Purpose**: Validate compliance against customizable rules (security, RGPD, architecture, etc.).
|
|
244
|
+
|
|
245
|
+
**Triggers**: `speckit: validate`, `valider`, `vérifier`
|
|
246
|
+
|
|
247
|
+
**Parameters** (all optional):
|
|
248
|
+
|
|
249
|
+
- `ruleType`: Type of validation to perform
|
|
250
|
+
- `security` - Validate against security rules (OWASP, encryption, auth...)
|
|
251
|
+
- `rgpd` - Validate GDPR compliance
|
|
252
|
+
- Custom rule file name (e.g., `architecture-rules`)
|
|
253
|
+
- `phase`: Phase being validated
|
|
254
|
+
- `spec` - Validating a specification
|
|
255
|
+
- `plan` - Validating a plan
|
|
256
|
+
- `implementation` - Validating code
|
|
257
|
+
- `targetPath`: Path to the file/folder to validate
|
|
258
|
+
|
|
259
|
+
**Examples**:
|
|
260
|
+
|
|
261
|
+
```text
|
|
262
|
+
speckit: validate security
|
|
263
|
+
speckit: validate rgpd phase=spec
|
|
264
|
+
speckit: valider la sécurité du code
|
|
265
|
+
speckit: vérifier conformité RGPD
|
|
266
|
+
speckit: validate architecture-rules
|
|
267
|
+
```
|
|
268
|
+
|
|
269
|
+
**Behavior**:
|
|
270
|
+
|
|
271
|
+
1. Loads rules from `.spec-kit/rules/{ruleType}-rules.md`
|
|
272
|
+
2. Loads validation prompt from `.spec-kit/prompts/validate.md`
|
|
273
|
+
3. Analyzes target against each rule
|
|
274
|
+
4. Generates validation report with checklist
|
|
275
|
+
5. Output saved to `specs/validations/{ruleType}-validation-{date}.md`
|
|
276
|
+
|
|
277
|
+
**Available Rules** (default):
|
|
278
|
+
|
|
279
|
+
| Rule Type | File | Description |
|
|
280
|
+
|-----------|------|-------------|
|
|
281
|
+
| `security` | `security-rules.md` | OWASP Top 10, authentication, encryption, API security |
|
|
282
|
+
| `rgpd` | `rgpd-rules.md` | GDPR Articles 6, 12-22, 28, 30, 32, 35 compliance |
|
|
283
|
+
|
|
284
|
+
**Creating Custom Rules**:
|
|
285
|
+
|
|
286
|
+
Create a new file in `.spec-kit/rules/`:
|
|
287
|
+
|
|
288
|
+
```markdown
|
|
289
|
+
# .spec-kit/rules/my-custom-rules.md
|
|
290
|
+
|
|
291
|
+
# My Custom Rules
|
|
292
|
+
|
|
293
|
+
## Category 1
|
|
294
|
+
|
|
295
|
+
- [ ] **RULE-001**: Rule description
|
|
296
|
+
- Details about the rule
|
|
297
|
+
- How to check compliance
|
|
298
|
+
|
|
299
|
+
- [ ] **RULE-002**: Another rule
|
|
300
|
+
- Details
|
|
301
|
+
```
|
|
302
|
+
|
|
303
|
+
Then use: `speckit: validate my-custom`
|
|
304
|
+
|
|
305
|
+
**Validation Report Format**:
|
|
306
|
+
|
|
307
|
+
```markdown
|
|
308
|
+
# Validation Report: Security
|
|
309
|
+
|
|
310
|
+
**Date**: 2024-01-15
|
|
311
|
+
**Phase**: implementation
|
|
312
|
+
**Target**: src/auth/
|
|
313
|
+
|
|
314
|
+
## Summary
|
|
315
|
+
- ✅ Compliant: 8
|
|
316
|
+
- ⚠️ Partial: 2
|
|
317
|
+
- ❌ Non-compliant: 1
|
|
318
|
+
- ➖ Not applicable: 1
|
|
319
|
+
|
|
320
|
+
## Detailed Results
|
|
321
|
+
...
|
|
322
|
+
```
|
|
323
|
+
|
|
219
324
|
---
|
|
220
325
|
|
|
221
326
|
## Customization Guide
|
|
@@ -288,12 +393,14 @@ steps:
|
|
|
288
393
|
```
|
|
289
394
|
|
|
290
395
|
**Available actions**:
|
|
396
|
+
|
|
291
397
|
- `call_agent` - Call an AI agent
|
|
292
398
|
- `fetch_ado` - Fetch Azure DevOps work item
|
|
293
399
|
- `save_artifact` - Save to file
|
|
294
400
|
- `validate` - Validate output
|
|
295
401
|
|
|
296
402
|
**Available agents**:
|
|
403
|
+
|
|
297
404
|
- `SpecAgent` - Writes specifications
|
|
298
405
|
- `PlanAgent` - Creates plans
|
|
299
406
|
- `GovAgent` - Validates governance
|
|
@@ -336,6 +443,7 @@ The constitution defines project principles. Edit `.spec-kit/memory/constitution
|
|
|
336
443
|
### Commands Not Working
|
|
337
444
|
|
|
338
445
|
1. **Check MCP configuration** in `.vscode/settings.json`:
|
|
446
|
+
|
|
339
447
|
```json
|
|
340
448
|
{
|
|
341
449
|
"mcp": {
|
|
@@ -356,6 +464,7 @@ The constitution defines project principles. Edit `.spec-kit/memory/constitution
|
|
|
356
464
|
### Setup Not Finding Files
|
|
357
465
|
|
|
358
466
|
Run setup with the project path:
|
|
467
|
+
|
|
359
468
|
```bash
|
|
360
469
|
npx smart-spec-kit-mcp setup --project /path/to/project
|
|
361
470
|
```
|
|
@@ -365,6 +474,7 @@ npx smart-spec-kit-mcp setup --project /path/to/project
|
|
|
365
474
|
1. Check files exist in `.spec-kit/prompts/`
|
|
366
475
|
2. Ensure valid Markdown format
|
|
367
476
|
3. Run setup again to reinstall:
|
|
477
|
+
|
|
368
478
|
```bash
|
|
369
479
|
npx smart-spec-kit-mcp setup --project . --force
|
|
370
480
|
```
|
|
@@ -378,11 +488,29 @@ npx smart-spec-kit-mcp setup --project . --force
|
|
|
378
488
|
|
|
379
489
|
## Workflow Reference
|
|
380
490
|
|
|
491
|
+
### feature-quick
|
|
492
|
+
|
|
493
|
+
Lightweight workflow for quick wins and simple features.
|
|
494
|
+
|
|
495
|
+
**Best for**: Small features, quick wins, simple changes
|
|
496
|
+
|
|
497
|
+
**Steps**:
|
|
498
|
+
|
|
499
|
+
1. Quick spec (minimal documentation)
|
|
500
|
+
2. Implement directly
|
|
501
|
+
3. Auto-update memory
|
|
502
|
+
|
|
503
|
+
**Example**:
|
|
504
|
+
```text
|
|
505
|
+
speckit: start_workflow workflow_name="feature-quick"
|
|
506
|
+
```
|
|
507
|
+
|
|
381
508
|
### feature-standard
|
|
382
509
|
|
|
383
510
|
Standard feature specification workflow.
|
|
384
511
|
|
|
385
512
|
**Steps**:
|
|
513
|
+
|
|
386
514
|
1. Fetch requirements
|
|
387
515
|
2. Generate specification
|
|
388
516
|
3. Create plan
|
|
@@ -394,6 +522,7 @@ Standard feature specification workflow.
|
|
|
394
522
|
Complete workflow with governance.
|
|
395
523
|
|
|
396
524
|
**Steps**:
|
|
525
|
+
|
|
397
526
|
1. Fetch requirements
|
|
398
527
|
2. Generate specification
|
|
399
528
|
3. Security review
|
|
@@ -410,6 +539,7 @@ Complete workflow with governance.
|
|
|
410
539
|
Bug fix workflow.
|
|
411
540
|
|
|
412
541
|
**Steps**:
|
|
542
|
+
|
|
413
543
|
1. Fetch bug report
|
|
414
544
|
2. Root cause analysis
|
|
415
545
|
3. Fix plan
|
|
@@ -418,6 +548,47 @@ Bug fix workflow.
|
|
|
418
548
|
|
|
419
549
|
---
|
|
420
550
|
|
|
551
|
+
## Auto-Memory Enrichment
|
|
552
|
+
|
|
553
|
+
After each feature or bugfix implementation, Spec-Kit **automatically** enriches project memory with relevant learnings.
|
|
554
|
+
|
|
555
|
+
### What Gets Captured
|
|
556
|
+
|
|
557
|
+
| Category | File | Content |
|
|
558
|
+
|----------|------|---------|
|
|
559
|
+
| **Decisions** | `decisions.md` | Architectural and technical decisions |
|
|
560
|
+
| **Conventions** | `conventions.md` | Coding patterns and standards |
|
|
561
|
+
| **Learnings** | `learnings.md` | Lessons learned, gotchas, insights |
|
|
562
|
+
|
|
563
|
+
### Memory Entry Format
|
|
564
|
+
|
|
565
|
+
```markdown
|
|
566
|
+
## {Type}: {Title}
|
|
567
|
+
**Date:** YYYY-MM-DD
|
|
568
|
+
**Context:** Which task/feature triggered this
|
|
569
|
+
**Description:** What was decided/learned
|
|
570
|
+
**Rationale:** Why - the reasoning behind it
|
|
571
|
+
```
|
|
572
|
+
|
|
573
|
+
### Example Entry
|
|
574
|
+
|
|
575
|
+
```markdown
|
|
576
|
+
## Decision: Use Repository Pattern for Data Access
|
|
577
|
+
**Date:** 2024-01-30
|
|
578
|
+
**Context:** Task #3 - Implement user authentication
|
|
579
|
+
**Description:** Created UserRepository interface with InMemory and SQL implementations
|
|
580
|
+
**Rationale:** Allows easy testing and future database changes without affecting business logic
|
|
581
|
+
```
|
|
582
|
+
|
|
583
|
+
### Benefits
|
|
584
|
+
|
|
585
|
+
- **Knowledge retention**: Project learnings are preserved
|
|
586
|
+
- **Onboarding**: New team members can learn from history
|
|
587
|
+
- **Consistency**: Decisions are documented and traceable
|
|
588
|
+
- **AI context**: Future Copilot sessions have richer context
|
|
589
|
+
|
|
590
|
+
---
|
|
591
|
+
|
|
421
592
|
## Best Practices
|
|
422
593
|
|
|
423
594
|
### Writing Good Requirements
|
package/package.json
CHANGED
|
@@ -13,6 +13,7 @@ When the user mentions **"speckit:"** followed by a command, or uses these keywo
|
|
|
13
13
|
| `speckit: tasks`, `générer les tâches`, `créer les tâches` | `speckit_tasks` | Generate task breakdown |
|
|
14
14
|
| `speckit: implement`, `implémenter`, `coder` | `speckit_implement` | Implement tasks |
|
|
15
15
|
| `speckit: clarify`, `clarifier`, `préciser` | `speckit_clarify` | Clarify requirements |
|
|
16
|
+
| `speckit: validate`, `valider`, `vérifier` | `speckit_validate` | Validate compliance (security, RGPD, etc.) |
|
|
16
17
|
| `speckit: memory`, `enrichir la mémoire`, `ajouter au contexte` | `speckit_memory` | Manage project memory |
|
|
17
18
|
| `speckit: help`, `aide sur speckit`, questions about spec-kit | `speckit_help` | Get help and documentation |
|
|
18
19
|
|
|
@@ -45,21 +46,28 @@ speckit_specify → speckit_plan → speckit_tasks → speckit_implement
|
|
|
45
46
|
|
|
46
47
|
```
|
|
47
48
|
.spec-kit/
|
|
48
|
-
├── prompts/ #
|
|
49
|
+
├── prompts/ # Customizable prompts (define command behavior)
|
|
49
50
|
│ ├── specify.md
|
|
50
51
|
│ ├── plan.md
|
|
51
52
|
│ ├── tasks.md
|
|
52
53
|
│ ├── implement.md
|
|
53
|
-
│
|
|
54
|
+
│ ├── clarify.md
|
|
55
|
+
│ ├── validate.md
|
|
56
|
+
│ └── memory.md
|
|
54
57
|
├── templates/ # Document templates
|
|
55
58
|
│ ├── functional-spec.md
|
|
56
59
|
│ ├── plan-template.md
|
|
57
60
|
│ └── tasks-template.md
|
|
61
|
+
├── rules/ # Validation rules
|
|
62
|
+
│ ├── security-rules.md
|
|
63
|
+
│ └── rgpd-rules.md
|
|
58
64
|
├── memory/ # Project context
|
|
59
65
|
│ └── constitution.md
|
|
60
66
|
└── workflows/ # Automated workflows
|
|
67
|
+
└── feature-quick.yaml # Quick wins (lightweight)
|
|
61
68
|
|
|
62
69
|
specs/ # Generated specifications (output)
|
|
70
|
+
└── validations/ # Validation reports
|
|
63
71
|
```
|
|
64
72
|
|
|
65
73
|
## Important Conventions
|
|
@@ -85,6 +93,7 @@ For multi-step automation, use `start_workflow`:
|
|
|
85
93
|
|
|
86
94
|
| User Says | Action |
|
|
87
95
|
|-----------|--------|
|
|
96
|
+
| `speckit: start_workflow workflow_name="feature-quick"` | Start quick feature workflow (lightweight) |
|
|
88
97
|
| `speckit: start_workflow workflow_name="feature-standard" PiP Support` | Start feature workflow for PiP Support |
|
|
89
98
|
| `speckit: start_workflow workflow_name="bugfix" auto=true` | Start bugfix workflow in AUTO mode |
|
|
90
99
|
|
|
@@ -110,6 +119,15 @@ For multi-step automation, use `start_workflow`:
|
|
|
110
119
|
**User**: "speckit: memory auto"
|
|
111
120
|
**Action**: Call `speckit_memory` with `action: "auto"` to auto-enrich from context
|
|
112
121
|
|
|
122
|
+
**User**: "speckit: validate security"
|
|
123
|
+
**Action**: Call `speckit_validate` with `ruleType: "security"`
|
|
124
|
+
|
|
125
|
+
**User**: "speckit: valider la conformité RGPD de la spec"
|
|
126
|
+
**Action**: Call `speckit_validate` with `ruleType: "rgpd"`, `phase: "spec"`
|
|
127
|
+
|
|
128
|
+
**User**: "speckit: validate architecture-rules"
|
|
129
|
+
**Action**: Call `speckit_validate` with `ruleType: "architecture"` (uses custom rules file)
|
|
130
|
+
|
|
113
131
|
**User**: "speckit: start_workflow workflow_name="feature-standard" PiP Support auto=true"
|
|
114
132
|
**Action**: Call `start_workflow` with `workflow_name: "feature-standard"`, `context_id: "PiP Support"`, `auto: true`
|
|
115
133
|
|
|
@@ -71,7 +71,48 @@ Report:
|
|
|
71
71
|
- Any deviations from plan
|
|
72
72
|
- Next task to implement (if continuing)
|
|
73
73
|
|
|
74
|
-
## 8.
|
|
74
|
+
## 8. Auto-Enrich Memory
|
|
75
|
+
|
|
76
|
+
After each implementation, **automatically** save relevant learnings to `.spec-kit/memory/`:
|
|
77
|
+
|
|
78
|
+
### What to capture:
|
|
79
|
+
|
|
80
|
+
**Decisions** (save to `decisions.md`):
|
|
81
|
+
- Architectural choices made during implementation
|
|
82
|
+
- Technology/library selections
|
|
83
|
+
- Trade-offs considered
|
|
84
|
+
|
|
85
|
+
**Conventions** (save to `conventions.md`):
|
|
86
|
+
- New patterns established
|
|
87
|
+
- Code conventions discovered or enforced
|
|
88
|
+
- Best practices applied
|
|
89
|
+
|
|
90
|
+
**Learnings** (save to `learnings.md`):
|
|
91
|
+
- Problems encountered and solutions found
|
|
92
|
+
- Performance insights
|
|
93
|
+
- Gotchas or edge cases discovered
|
|
94
|
+
|
|
95
|
+
### Format for memory entries:
|
|
96
|
+
|
|
97
|
+
```markdown
|
|
98
|
+
## {Type}: {Title}
|
|
99
|
+
**Date:** {YYYY-MM-DD}
|
|
100
|
+
**Context:** {Brief context - which task/feature}
|
|
101
|
+
**Description:** {What was decided/learned}
|
|
102
|
+
**Rationale:** {Why - reasoning behind it}
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
### Example:
|
|
106
|
+
|
|
107
|
+
```markdown
|
|
108
|
+
## Decision: Use Repository Pattern for Data Access
|
|
109
|
+
**Date:** 2024-01-30
|
|
110
|
+
**Context:** Task #3 - Implement user authentication
|
|
111
|
+
**Description:** Created UserRepository interface with InMemory and SQL implementations
|
|
112
|
+
**Rationale:** Allows easy testing and future database changes without affecting business logic
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
## 9. Iteration
|
|
75
116
|
|
|
76
117
|
Ask the user:
|
|
77
118
|
- "Task {ID} completed. Continue with {next task}? (yes/no)"
|