smart-spec-kit-mcp 2.0.1 → 2.0.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.
Files changed (30) hide show
  1. package/README.md +65 -70
  2. package/dist/cli.js +72 -32
  3. package/dist/cli.js.map +1 -1
  4. package/dist/tools/orchestrationTools.d.ts.map +1 -1
  5. package/dist/tools/orchestrationTools.js +72 -30
  6. package/dist/tools/orchestrationTools.js.map +1 -1
  7. package/dist/utils/starterKitInstaller.d.ts +44 -0
  8. package/dist/utils/starterKitInstaller.d.ts.map +1 -0
  9. package/dist/utils/starterKitInstaller.js +264 -0
  10. package/dist/utils/starterKitInstaller.js.map +1 -0
  11. package/package.json +2 -2
  12. package/starter-kit/memory/constitution.md +122 -0
  13. package/starter-kit/prompts/speckit.clarify.md +129 -0
  14. package/starter-kit/prompts/speckit.implement.md +122 -0
  15. package/starter-kit/prompts/speckit.init.md +153 -0
  16. package/starter-kit/prompts/speckit.plan.md +145 -0
  17. package/starter-kit/prompts/speckit.specify.md +123 -0
  18. package/starter-kit/prompts/speckit.tasks.md +137 -0
  19. package/starter-kit/templates/bugfix-report.md +127 -0
  20. package/starter-kit/templates/functional-spec.md +144 -0
  21. package/starter-kit/templates/plan-template.md +126 -0
  22. package/starter-kit/templates/tasks-template.md +153 -0
  23. package/.github/copilot/prompts/spec-kit-abort.prompt.md +0 -22
  24. package/.github/copilot/prompts/spec-kit-config.prompt.md +0 -20
  25. package/.github/copilot/prompts/spec-kit-continue.prompt.md +0 -25
  26. package/.github/copilot/prompts/spec-kit-init.prompt.md +0 -19
  27. package/.github/copilot/prompts/spec-kit-list.prompt.md +0 -19
  28. package/.github/copilot/prompts/spec-kit-ping.prompt.md +0 -17
  29. package/.github/copilot/prompts/spec-kit-start.prompt.md +0 -30
  30. package/.github/copilot/prompts/spec-kit-status.prompt.md +0 -21
@@ -0,0 +1,144 @@
1
+ ---
2
+ title: "[TO FILL: Feature Title]"
3
+ workitem_id: "[TO FILL]"
4
+ type: Functional Specification
5
+ version: "1.0"
6
+ status: Draft
7
+ author: "[TO FILL]"
8
+ created: "[TO FILL: Date]"
9
+ last_updated: "[TO FILL: Date]"
10
+ ---
11
+
12
+ # Functional Specification: [TO FILL: Feature Title]
13
+
14
+ ## 1. Overview
15
+
16
+ ### 1.1 Purpose
17
+ [TO FILL: Brief description of the feature's purpose and the problem it solves]
18
+
19
+ ### 1.2 Scope
20
+ **In Scope:**
21
+ - [TO FILL: What is included]
22
+
23
+ **Out of Scope:**
24
+ - [TO FILL: What is explicitly excluded]
25
+
26
+ ### 1.3 Background
27
+ [TO FILL: Context and history leading to this feature request]
28
+
29
+ ---
30
+
31
+ ## 2. Stakeholders
32
+
33
+ | Role | Name | Responsibility |
34
+ |------|------|----------------|
35
+ | Product Owner | [TO FILL] | Requirements validation |
36
+ | Tech Lead | [TO FILL] | Technical decisions |
37
+ | QA Lead | [TO FILL] | Test strategy |
38
+
39
+ ---
40
+
41
+ ## 3. Requirements
42
+
43
+ ### 3.1 Functional Requirements
44
+
45
+ | ID | Requirement | Priority | Source |
46
+ |----|-------------|----------|--------|
47
+ | FR-001 | [TO FILL] | Must Have | |
48
+ | FR-002 | [TO FILL] | Should Have | |
49
+ | FR-003 | [TO FILL] | Could Have | |
50
+
51
+ ### 3.2 Non-Functional Requirements
52
+
53
+ | ID | Category | Requirement | Target |
54
+ |----|----------|-------------|--------|
55
+ | NFR-001 | Performance | [TO FILL] | [TO FILL] |
56
+ | NFR-002 | Security | [TO FILL] | [TO FILL] |
57
+ | NFR-003 | Availability | [TO FILL] | [TO FILL] |
58
+
59
+ ### 3.3 Acceptance Criteria
60
+
61
+ ```gherkin
62
+ Feature: [TO FILL: Feature Name]
63
+
64
+ Scenario: [TO FILL: Main Success Scenario]
65
+ Given [TO FILL: Initial context]
66
+ When [TO FILL: Action performed]
67
+ Then [TO FILL: Expected outcome]
68
+
69
+ Scenario: [TO FILL: Alternative Scenario]
70
+ Given [TO FILL]
71
+ When [TO FILL]
72
+ Then [TO FILL]
73
+ ```
74
+
75
+ ---
76
+
77
+ ## 4. User Experience
78
+
79
+ ### 4.1 User Personas
80
+
81
+ **Persona 1: [TO FILL: Name]**
82
+ - Role: [TO FILL]
83
+ - Goals: [TO FILL]
84
+ - Pain Points: [TO FILL]
85
+
86
+ ### 4.2 User Stories
87
+
88
+ | ID | As a... | I want to... | So that... | Priority |
89
+ |----|---------|--------------|------------|----------|
90
+ | US-001 | [TO FILL] | [TO FILL] | [TO FILL] | P1 |
91
+ | US-002 | [TO FILL] | [TO FILL] | [TO FILL] | P2 |
92
+
93
+ ### 4.3 User Flow
94
+
95
+ ```
96
+ [TO FILL: Describe or link to user flow diagram]
97
+ ┌─────────┐ ┌─────────┐ ┌─────────┐
98
+ │ Step 1 │───▶│ Step 2 │───▶│ Step 3 │
99
+ └─────────┘ └─────────┘ └─────────┘
100
+ ```
101
+
102
+ ---
103
+
104
+ ## 5. Technical Considerations
105
+
106
+ ### 5.1 Dependencies
107
+ - [TO FILL: External systems, services, or components this feature depends on]
108
+
109
+ ### 5.2 Constraints
110
+ - [TO FILL: Technical or business constraints]
111
+
112
+ ### 5.3 Data Requirements
113
+ - [TO FILL: Data entities, storage, and access patterns]
114
+
115
+ ---
116
+
117
+ ## 6. Assumptions & Risks
118
+
119
+ ### 6.1 Assumptions
120
+ | ID | Assumption | Impact if Wrong |
121
+ |----|------------|-----------------|
122
+ | A-001 | [TO FILL] | [TO FILL] |
123
+
124
+ ### 6.2 Risks
125
+ | ID | Risk | Probability | Impact | Mitigation |
126
+ |----|------|-------------|--------|------------|
127
+ | R-001 | [TO FILL] | Medium | High | [TO FILL] |
128
+
129
+ ---
130
+
131
+ ## 7. Clarifications
132
+
133
+ | # | Topic | Question | Answer | Date |
134
+ |---|-------|----------|--------|------|
135
+ | | | | | |
136
+
137
+ ---
138
+
139
+ ## 8. Approval
140
+
141
+ | Role | Name | Date | Status |
142
+ |------|------|------|--------|
143
+ | Product Owner | | | ⬜ Pending |
144
+ | Tech Lead | | | ⬜ Pending |
@@ -0,0 +1,126 @@
1
+ # Implementation Plan: [FEATURE NAME]
2
+
3
+ **Branch**: `[###-feature-name]` | **Date**: [DATE] | **Spec**: [link to spec.md]
4
+
5
+ ## Summary
6
+
7
+ [TO FILL: Brief description of the implementation approach]
8
+
9
+ ## Technical Context
10
+
11
+ ### Tech Stack
12
+ | Component | Technology | Version |
13
+ |-----------|------------|---------|
14
+ | Language | [TO FILL] | |
15
+ | Framework | [TO FILL] | |
16
+ | Database | [TO FILL] | |
17
+ | Testing | [TO FILL] | |
18
+
19
+ ### Architecture Overview
20
+
21
+ ```
22
+ [TO FILL: ASCII diagram or description of architecture]
23
+
24
+ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐
25
+ │ Client │───▶│ API │───▶│ Database │
26
+ └─────────────┘ └─────────────┘ └─────────────┘
27
+ ```
28
+
29
+ ---
30
+
31
+ ## Project Structure
32
+
33
+ ```text
34
+ [TO FILL: Project directory structure]
35
+
36
+ src/
37
+ ├── models/
38
+ ├── services/
39
+ ├── api/
40
+ └── utils/
41
+
42
+ tests/
43
+ ├── unit/
44
+ ├── integration/
45
+ └── e2e/
46
+ ```
47
+
48
+ ---
49
+
50
+ ## Implementation Phases
51
+
52
+ ### Phase 0: Research & Design
53
+ **Duration**: [X days]
54
+ **Output**: research.md, data-model.md
55
+
56
+ - [ ] Validate tech stack choices
57
+ - [ ] Research key libraries/patterns
58
+ - [ ] Design data model
59
+ - [ ] Define API contracts
60
+
61
+ ### Phase 1: Foundation
62
+ **Duration**: [X days]
63
+ **Dependencies**: Phase 0
64
+
65
+ - [ ] Set up project structure
66
+ - [ ] Configure build/test pipeline
67
+ - [ ] Create base models
68
+ - [ ] Set up database schema
69
+
70
+ ### Phase 2: Core Implementation
71
+ **Duration**: [X days]
72
+ **Dependencies**: Phase 1
73
+
74
+ - [ ] Implement core services
75
+ - [ ] Create API endpoints
76
+ - [ ] Add unit tests
77
+
78
+ ### Phase 3: Integration & Polish
79
+ **Duration**: [X days]
80
+ **Dependencies**: Phase 2
81
+
82
+ - [ ] Integration testing
83
+ - [ ] Error handling improvements
84
+ - [ ] Documentation
85
+ - [ ] Performance optimization
86
+
87
+ ---
88
+
89
+ ## Quality Gates
90
+
91
+ | Gate | Criteria | Status |
92
+ |------|----------|--------|
93
+ | Code Review | All PRs reviewed | ⬜ |
94
+ | Unit Tests | >80% coverage | ⬜ |
95
+ | Integration Tests | All scenarios pass | ⬜ |
96
+ | Documentation | README updated | ⬜ |
97
+
98
+ ---
99
+
100
+ ## Risks & Mitigations
101
+
102
+ | Risk | Probability | Impact | Mitigation |
103
+ |------|-------------|--------|------------|
104
+ | [TO FILL] | Medium | High | [TO FILL] |
105
+
106
+ ---
107
+
108
+ ## Technical Decisions
109
+
110
+ | Decision | Options Considered | Choice | Rationale |
111
+ |----------|-------------------|--------|-----------|
112
+ | [TO FILL] | [TO FILL] | [TO FILL] | [TO FILL] |
113
+
114
+ ---
115
+
116
+ ## Dependencies
117
+
118
+ | Dependency | Version | Purpose | Notes |
119
+ |------------|---------|---------|-------|
120
+ | [TO FILL] | | | |
121
+
122
+ ---
123
+
124
+ ## Notes
125
+
126
+ [TO FILL: Additional implementation notes, gotchas, or considerations]
@@ -0,0 +1,153 @@
1
+ # Tasks: [FEATURE NAME]
2
+
3
+ **Input**: Design documents from `/specs/[feature]/`
4
+ **Generated**: [DATE]
5
+ **Total Tasks**: [COUNT]
6
+
7
+ ---
8
+
9
+ ## Task Format
10
+
11
+ ```
12
+ - [ ] T### [P?] [Story?] Description - `path/to/file.ext`
13
+ ```
14
+
15
+ **Legend**:
16
+ - `T###`: Task ID (sequential)
17
+ - `[P]`: Can be executed in parallel with other `[P]` tasks in same phase
18
+ - `[Story?]`: Associated user story ID (optional)
19
+ - File path in backticks shows primary file(s) affected
20
+
21
+ ---
22
+
23
+ ## Phase 1: Setup (Shared Infrastructure)
24
+
25
+ **Purpose**: Project initialization and basic structure
26
+ **Duration**: [X days]
27
+
28
+ - [ ] T001 Initialize project with package manager - `package.json`
29
+ - [ ] T002 Configure TypeScript/linting - `tsconfig.json`, `.eslintrc`
30
+ - [ ] T003 [P] Set up testing framework - `jest.config.js`
31
+ - [ ] T004 [P] Create project directory structure - `src/`
32
+
33
+ ---
34
+
35
+ ## Phase 2: Foundational (Blocking Prerequisites)
36
+
37
+ **Purpose**: Core infrastructure that MUST be complete before ANY user story
38
+ **Duration**: [X days]
39
+
40
+ ⚠️ **CRITICAL**: No user story work begins until this phase is complete.
41
+
42
+ - [ ] T005 Create database schema - `src/db/schema.sql`
43
+ - [ ] T006 [P] Set up database migrations - `src/db/migrations/`
44
+ - [ ] T007 [P] Implement base entity models - `src/models/`
45
+ - [ ] T008 Create error handling utilities - `src/utils/errors.ts`
46
+ - [ ] T009 Set up logging infrastructure - `src/utils/logger.ts`
47
+
48
+ **Checkpoint**: Foundation ready - run `npm run test:setup` to verify
49
+
50
+ ---
51
+
52
+ ## Phase 3: User Story 1 - [Title] (Priority: P1) 🎯 MVP
53
+
54
+ **Goal**: [User story goal from spec]
55
+ **Independent Test**: [How to verify this story works alone]
56
+ **Duration**: [X days]
57
+
58
+ - [ ] T010 [US-1] Create [entity] model - `src/models/entity.ts`
59
+ - [ ] T011 [P] [US-1] Create [entity] repository - `src/repositories/entity.ts`
60
+ - [ ] T012 [P] [US-1] Create [entity] service - `src/services/entity.ts`
61
+ - [ ] T013 [US-1] Create [endpoint] API route - `src/api/routes/entity.ts`
62
+ - [ ] T014 [US-1] Add unit tests for service - `tests/unit/entity.test.ts`
63
+ - [ ] T015 [US-1] Add integration tests - `tests/integration/entity.test.ts`
64
+
65
+ **Checkpoint**: Story 1 complete - run `npm test && npm run test:integration`
66
+
67
+ ---
68
+
69
+ ## Phase 4: User Story 2 - [Title] (Priority: P2)
70
+
71
+ **Goal**: [User story goal from spec]
72
+ **Independent Test**: [How to verify this story works alone]
73
+ **Duration**: [X days]
74
+
75
+ - [ ] T020 [US-2] [Description] - `path/to/file`
76
+ - [ ] T021 [P] [US-2] [Description] - `path/to/file`
77
+ - [ ] T022 [US-2] [Description] - `path/to/file`
78
+
79
+ **Checkpoint**: Story 2 complete - [verification command]
80
+
81
+ ---
82
+
83
+ ## Phase 5: User Story 3 - [Title] (Priority: P3)
84
+
85
+ **Goal**: [User story goal from spec]
86
+ **Duration**: [X days]
87
+
88
+ - [ ] T030 [US-3] [Description] - `path/to/file`
89
+
90
+ **Checkpoint**: Story 3 complete - [verification command]
91
+
92
+ ---
93
+
94
+ ## Phase N: Polish & Cross-Cutting Concerns
95
+
96
+ **Purpose**: Final quality improvements
97
+ **Duration**: [X days]
98
+
99
+ - [ ] T090 Code cleanup and refactoring
100
+ - [ ] T091 [P] Update documentation - `README.md`
101
+ - [ ] T092 [P] Add inline code comments
102
+ - [ ] T093 Performance profiling and optimization
103
+ - [ ] T094 Security review and hardening
104
+ - [ ] T095 Final integration test pass
105
+
106
+ ---
107
+
108
+ ## Dependencies & Execution Order
109
+
110
+ ```
111
+ Phase 1 (Setup)
112
+
113
+
114
+ Phase 2 (Foundation)
115
+
116
+ ├──────────────┬──────────────┐
117
+ ▼ ▼ ▼
118
+ Phase 3 (US-1) Phase 4 (US-2) Phase 5 (US-3) ← Can run in parallel
119
+ │ │ │
120
+ └──────────────┴──────────────┘
121
+
122
+
123
+ Phase N (Polish)
124
+ ```
125
+
126
+ ---
127
+
128
+ ## Parallel Execution Example
129
+
130
+ Tasks marked `[P]` within the same phase can run simultaneously:
131
+
132
+ ```
133
+ Phase 3, Story 1:
134
+ ├── T010 Create model (sequential - others depend on this)
135
+
136
+ ├── T011 [P] Create repository ─┐
137
+ ├── T012 [P] Create service ─┼── Run in parallel
138
+ └── T013 Create API route (waits for T011, T012)
139
+ ```
140
+
141
+ ---
142
+
143
+ ## Task Statistics
144
+
145
+ | Phase | Tasks | Parallel | Duration |
146
+ |-------|-------|----------|----------|
147
+ | Setup | 4 | 2 | [X days] |
148
+ | Foundation | 5 | 3 | [X days] |
149
+ | Story 1 | 6 | 2 | [X days] |
150
+ | Story 2 | 3 | 1 | [X days] |
151
+ | Story 3 | 1 | 0 | [X days] |
152
+ | Polish | 6 | 3 | [X days] |
153
+ | **Total** | **25** | **11** | **[X days]** |
@@ -1,22 +0,0 @@
1
- ---
2
- description: "Annule le workflow Spec-Kit en cours"
3
- ---
4
-
5
- # Annuler le workflow Spec-Kit
6
-
7
- Tu dois annuler le workflow Spec-Kit actuellement en cours.
8
-
9
- ## Action requise
10
-
11
- Utilise l'outil `abort_workflow` du serveur MCP `spec-kit`.
12
-
13
- ## Comportement
14
-
15
- Cette action:
16
- 1. Annule le workflow en cours
17
- 2. Supprime la session
18
- 3. Nettoie l'état
19
-
20
- ⚠️ Les données collectées seront perdues.
21
-
22
- Exécute maintenant l'outil `abort_workflow` de spec-kit.
@@ -1,20 +0,0 @@
1
- ---
2
- description: "Affiche la configuration Spec-Kit actuelle"
3
- ---
4
-
5
- # Configuration Spec-Kit
6
-
7
- Tu dois afficher la configuration actuelle de Spec-Kit.
8
-
9
- ## Action requise
10
-
11
- Utilise l'outil `show_config` du serveur MCP `spec-kit`.
12
-
13
- ## Informations affichées
14
-
15
- - Chemins de recherche des workflows
16
- - Chemins de recherche des templates
17
- - Liste des workflows disponibles (locaux vs package)
18
- - Projet courant
19
-
20
- Exécute maintenant l'outil `show_config` de spec-kit.
@@ -1,25 +0,0 @@
1
- ---
2
- description: "Continue le workflow Spec-Kit à l'étape suivante"
3
- ---
4
-
5
- # Continuer le workflow Spec-Kit
6
-
7
- Tu dois continuer le workflow Spec-Kit en cours à l'étape suivante.
8
-
9
- ## Action requise
10
-
11
- Utilise l'outil `execute_step` du serveur MCP `spec-kit`.
12
-
13
- ## Paramètres optionnels
14
-
15
- - `session_id` - ID de session (optionnel, utilise la session active par défaut)
16
- - `previous_output` - Données de l'étape précédente si nécessaire
17
-
18
- ## Comportement
19
-
20
- Le serveur:
21
- 1. Exécute l'étape suivante du workflow
22
- 2. Retourne les instructions pour Copilot
23
- 3. Attend la validation de l'utilisateur
24
-
25
- Exécute maintenant l'outil `execute_step` de spec-kit.
@@ -1,19 +0,0 @@
1
- ---
2
- description: "Initialise Spec-Kit dans le projet pour créer des workflows personnalisés"
3
- ---
4
-
5
- # Initialisation de Spec-Kit
6
-
7
- Tu dois initialiser Spec-Kit dans le projet courant.
8
-
9
- ## Action requise
10
-
11
- Utilise l'outil `init_project` du serveur MCP `spec-kit` pour créer la configuration locale.
12
-
13
- ## Résultat attendu
14
-
15
- Après l'exécution, le dossier `.spec-kit/` sera créé avec:
16
- - `workflows/` - Pour les workflows personnalisés
17
- - `templates/` - Pour les templates personnalisés
18
-
19
- Exécute maintenant l'outil `init_project` de spec-kit.
@@ -1,19 +0,0 @@
1
- ---
2
- description: "Liste les workflows Spec-Kit disponibles"
3
- ---
4
-
5
- # Liste des workflows Spec-Kit
6
-
7
- Tu dois lister les workflows disponibles dans Spec-Kit.
8
-
9
- ## Action requise
10
-
11
- Utilise l'outil `list_workflows` du serveur MCP `spec-kit`.
12
-
13
- ## Workflows par défaut
14
-
15
- - `feature-standard` - Spécification fonctionnelle (5 étapes)
16
- - `feature-full` - Spec + gouvernance complète (10 étapes)
17
- - `bugfix` - Rapport de correction de bug (5 étapes)
18
-
19
- Exécute maintenant l'outil `list_workflows` de spec-kit.
@@ -1,17 +0,0 @@
1
- ---
2
- description: "Vérifie que le serveur Spec-Kit fonctionne"
3
- ---
4
-
5
- # Ping Spec-Kit
6
-
7
- Tu dois vérifier que le serveur Spec-Kit est opérationnel.
8
-
9
- ## Action requise
10
-
11
- Utilise l'outil `ping` du serveur MCP `spec-kit`.
12
-
13
- ## Résultat attendu
14
-
15
- Si le serveur fonctionne, tu recevras "pong" avec la version et les capacités.
16
-
17
- Exécute maintenant l'outil `ping` de spec-kit.
@@ -1,30 +0,0 @@
1
- ---
2
- description: "Démarre un workflow Spec-Kit pour générer une spécification"
3
- ---
4
-
5
- # Démarrer un workflow Spec-Kit
6
-
7
- Tu dois démarrer un workflow Spec-Kit pour générer une spécification.
8
-
9
- ## Paramètres requis
10
-
11
- Demande à l'utilisateur s'il n'a pas précisé:
12
-
13
- 1. **workflow_name** - Le nom du workflow à utiliser:
14
- - `feature-standard` - Spécification fonctionnelle simple (5 étapes)
15
- - `feature-full` - Spécification avec gouvernance complète (10 étapes)
16
- - `bugfix` - Rapport de correction de bug (5 étapes)
17
-
18
- 2. **context_id** - L'identifiant du contexte (généralement l'ID du work item Azure DevOps)
19
-
20
- ## Action requise
21
-
22
- Utilise l'outil `start_workflow` du serveur MCP `spec-kit` avec les paramètres:
23
- - `workflow_name`: le workflow choisi
24
- - `context_id`: l'ID fourni par l'utilisateur
25
-
26
- ## Flux automatique
27
-
28
- Une fois démarré, le serveur orchestre automatiquement les étapes. L'utilisateur n'a qu'à valider chaque action avec "OK" ou "Continue".
29
-
30
- Demande les paramètres manquants puis exécute `start_workflow`.
@@ -1,21 +0,0 @@
1
- ---
2
- description: "Affiche le statut du workflow Spec-Kit en cours"
3
- ---
4
-
5
- # Statut du workflow Spec-Kit
6
-
7
- Tu dois afficher le statut du workflow Spec-Kit actuellement en cours.
8
-
9
- ## Action requise
10
-
11
- Utilise l'outil `workflow_status` du serveur MCP `spec-kit`.
12
-
13
- ## Informations affichées
14
-
15
- - Session ID
16
- - Workflow en cours
17
- - Étape actuelle
18
- - Historique des étapes complétées
19
- - Données collectées
20
-
21
- Exécute maintenant l'outil `workflow_status` de spec-kit.