bms-speckit-plugin 4.2.0 → 4.3.1
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.
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "bms-speckit",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.3.0",
|
|
4
4
|
"description": "Chain-orchestrated development pipeline with per-step error handling. /bms-speckit runs brainstorm → constitution → specify → plan → tasks → analyze → implement → verify.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "manoirx"
|
|
@@ -9,14 +9,14 @@
|
|
|
9
9
|
# to prevent loss and provide traceability per the project constitution.
|
|
10
10
|
|
|
11
11
|
id: bms_speckit_development_pipeline
|
|
12
|
-
version: 4.
|
|
12
|
+
version: 4.3.0
|
|
13
13
|
name: BMS Speckit Automated Development Pipeline
|
|
14
14
|
description: >
|
|
15
15
|
Full engineering workflow from requirement to verified implementation.
|
|
16
|
-
Chains brainstorming, constitution,
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
to ground
|
|
16
|
+
Chains brainstorming, constitution, specification, planning, task generation,
|
|
17
|
+
analysis, implementation (TDD), and final verification.
|
|
18
|
+
Commits after every important step. Uses knowledge-mcp during brainstorm
|
|
19
|
+
and specify steps to ground specs in real HOSxP data.
|
|
20
20
|
category: Development
|
|
21
21
|
|
|
22
22
|
# ─── Chain Sequence ────────────────────────────────────────────────────────────
|
|
@@ -46,6 +46,10 @@ chain_sequence:
|
|
|
46
46
|
system_context: >
|
|
47
47
|
Write a detailed specification from the user's requirement.
|
|
48
48
|
Explore edge cases, constraints, and design alternatives.
|
|
49
|
+
Use mcp__bms-knowledge-mcp__search_knowledge to search the hosxp
|
|
50
|
+
collection for relevant data dictionaries, table schemas, and
|
|
51
|
+
system architecture. Also search bms, moph, nhso collections
|
|
52
|
+
if relevant to the feature.
|
|
49
53
|
|
|
50
54
|
- step_id: step_2_constitution
|
|
51
55
|
skill_id: speckit.constitution
|
|
@@ -101,41 +105,7 @@ chain_sequence:
|
|
|
101
105
|
Read CLAUDE.md and verify it complies with specs/constitution.md.
|
|
102
106
|
Update CLAUDE.md if it conflicts with or is missing constitution rules.
|
|
103
107
|
|
|
104
|
-
- step_id:
|
|
105
|
-
skill_id: internal.knowledge_mcp_search
|
|
106
|
-
action: execute
|
|
107
|
-
phase: 1
|
|
108
|
-
description: Search knowledge base for HOSxP data dictionaries, system design, and regulatory context
|
|
109
|
-
timeout_seconds: 300
|
|
110
|
-
input:
|
|
111
|
-
query: "{{step_1_brainstorm.output}}"
|
|
112
|
-
collections:
|
|
113
|
-
- hosxp # 49 sources — data dictionaries, ER diagrams, table schemas, module architecture
|
|
114
|
-
- bms # 3 sources — BMS tools, organization, API info
|
|
115
|
-
- moph # 3 sources — Ministry of Public Health regulations
|
|
116
|
-
- nhso # 44 sources — NHSO reimbursement rules and announcements
|
|
117
|
-
output:
|
|
118
|
-
artifacts: [knowledge_context]
|
|
119
|
-
post_action:
|
|
120
|
-
commit: true
|
|
121
|
-
message: "feat(speckit): add knowledge research from HOSxP data dictionary"
|
|
122
|
-
push: true
|
|
123
|
-
error_handling:
|
|
124
|
-
on_failure: continue
|
|
125
|
-
max_retries: 2
|
|
126
|
-
opinionated_prompts:
|
|
127
|
-
system_context: >
|
|
128
|
-
Use the knowledge-mcp MCP server to search for relevant context.
|
|
129
|
-
Search the hosxp collection for: data dictionaries, table schemas,
|
|
130
|
-
ER diagrams, and system architecture related to the feature.
|
|
131
|
-
Search bms for API and tool context.
|
|
132
|
-
Search moph/nhso if the feature involves regulatory compliance or
|
|
133
|
-
reimbursement rules.
|
|
134
|
-
Compile findings into a knowledge context document that will
|
|
135
|
-
inform the specification step. Include exact table names, field
|
|
136
|
-
names, data types, and relationships discovered.
|
|
137
|
-
|
|
138
|
-
- step_id: step_5_specify
|
|
108
|
+
- step_id: step_4_specify
|
|
139
109
|
skill_id: speckit.specify
|
|
140
110
|
action: execute
|
|
141
111
|
phase: 1
|
|
@@ -143,7 +113,6 @@ chain_sequence:
|
|
|
143
113
|
timeout_seconds: 300
|
|
144
114
|
input:
|
|
145
115
|
requirement: "{{step_1_brainstorm.output}}"
|
|
146
|
-
knowledge_context: "{{step_4_knowledge_research.output}}"
|
|
147
116
|
output:
|
|
148
117
|
artifacts: [specs/*/spec.md]
|
|
149
118
|
post_action:
|
|
@@ -157,18 +126,19 @@ chain_sequence:
|
|
|
157
126
|
system_context: >
|
|
158
127
|
Generate a complete, testable specification. Include acceptance criteria,
|
|
159
128
|
data models, API contracts, and edge cases.
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
129
|
+
Use mcp__bms-knowledge-mcp__search_knowledge to search the hosxp
|
|
130
|
+
collection for exact table names, field names, data types, and
|
|
131
|
+
relationships needed by this feature. Reference actual HOSxP
|
|
132
|
+
data structures in the spec, not assumed ones.
|
|
163
133
|
|
|
164
|
-
- step_id:
|
|
134
|
+
- step_id: step_5_plan
|
|
165
135
|
skill_id: speckit.plan
|
|
166
136
|
action: execute
|
|
167
137
|
phase: 1
|
|
168
138
|
description: Generate implementation plan from specification
|
|
169
139
|
timeout_seconds: 300
|
|
170
140
|
input:
|
|
171
|
-
source: "{{
|
|
141
|
+
source: "{{step_4_specify.artifacts}}"
|
|
172
142
|
output:
|
|
173
143
|
artifacts: [specs/*/plan.md]
|
|
174
144
|
post_action:
|
|
@@ -183,14 +153,14 @@ chain_sequence:
|
|
|
183
153
|
Plan in ordered steps. Include file paths, component boundaries,
|
|
184
154
|
test strategy, and rollback considerations.
|
|
185
155
|
|
|
186
|
-
- step_id:
|
|
156
|
+
- step_id: step_6_tasks
|
|
187
157
|
skill_id: speckit.tasks
|
|
188
158
|
action: execute
|
|
189
159
|
phase: 1
|
|
190
160
|
description: Generate dependency-ordered task list
|
|
191
161
|
timeout_seconds: 300
|
|
192
162
|
input:
|
|
193
|
-
source: "{{
|
|
163
|
+
source: "{{step_5_plan.artifacts}}"
|
|
194
164
|
output:
|
|
195
165
|
artifacts: [specs/*/tasks.md]
|
|
196
166
|
post_action:
|
|
@@ -205,14 +175,14 @@ chain_sequence:
|
|
|
205
175
|
Tasks must be atomic, dependency-ordered, and each independently testable.
|
|
206
176
|
Include clear acceptance criteria per task.
|
|
207
177
|
|
|
208
|
-
- step_id:
|
|
178
|
+
- step_id: step_7_analyze
|
|
209
179
|
skill_id: speckit.analyze
|
|
210
180
|
action: execute
|
|
211
181
|
phase: 1
|
|
212
182
|
description: Cross-artifact consistency and quality check
|
|
213
183
|
timeout_seconds: 300
|
|
214
184
|
input:
|
|
215
|
-
source: "{{
|
|
185
|
+
source: "{{step_6_tasks.artifacts}}"
|
|
216
186
|
output:
|
|
217
187
|
artifacts: [analysis_report]
|
|
218
188
|
post_action:
|
|
@@ -229,7 +199,7 @@ chain_sequence:
|
|
|
229
199
|
|
|
230
200
|
# ── Phase 2: Implementation (main context) ────────────────────────────────
|
|
231
201
|
|
|
232
|
-
- step_id:
|
|
202
|
+
- step_id: step_8_compact
|
|
233
203
|
skill_id: internal.compact
|
|
234
204
|
action: execute
|
|
235
205
|
phase: 2
|
|
@@ -239,14 +209,14 @@ chain_sequence:
|
|
|
239
209
|
on_failure: continue
|
|
240
210
|
max_retries: 0
|
|
241
211
|
|
|
242
|
-
- step_id:
|
|
212
|
+
- step_id: step_9_implement
|
|
243
213
|
skill_id: speckit.implement
|
|
244
214
|
action: execute_loop
|
|
245
215
|
phase: 2
|
|
246
216
|
description: Execute all tasks with TDD workflow via ralph-loop
|
|
247
217
|
timeout_seconds: 3600
|
|
248
218
|
input:
|
|
249
|
-
tasks_path: "{{
|
|
219
|
+
tasks_path: "{{step_6_tasks.artifacts}}"
|
|
250
220
|
loop_engine: ralph-loop
|
|
251
221
|
completion_promise: "FINISHED"
|
|
252
222
|
max_iterations: 10
|
|
@@ -270,7 +240,7 @@ chain_sequence:
|
|
|
270
240
|
apply improvements, re-run all tests, confirm zero regression.
|
|
271
241
|
Only output FINISHED after everything is validated.
|
|
272
242
|
|
|
273
|
-
- step_id:
|
|
243
|
+
- step_id: step_10_verify
|
|
274
244
|
skill_id: speckit.analyze
|
|
275
245
|
action: execute
|
|
276
246
|
phase: 2
|
|
@@ -288,7 +258,7 @@ chain_sequence:
|
|
|
288
258
|
Final gate. Verify all tasks completed, tests passing,
|
|
289
259
|
no regressions, code quality standards met.
|
|
290
260
|
|
|
291
|
-
- step_id:
|
|
261
|
+
- step_id: step_11_merge
|
|
292
262
|
skill_id: internal.git_merge_to_main
|
|
293
263
|
action: execute
|
|
294
264
|
phase: 2
|
|
@@ -310,21 +280,21 @@ metadata:
|
|
|
310
280
|
author: manoirx
|
|
311
281
|
created_at: "2026-03-29"
|
|
312
282
|
tags: [speckit, tdd, workflow, development, chain, engineering, hosxp, knowledge]
|
|
313
|
-
estimated_duration_seconds:
|
|
283
|
+
estimated_duration_seconds: 6000
|
|
314
284
|
commit_strategy: per_step
|
|
315
285
|
knowledge_collections:
|
|
316
|
-
hosxp: "
|
|
317
|
-
bms: "
|
|
318
|
-
moph: "
|
|
319
|
-
nhso: "
|
|
286
|
+
hosxp: "Data dictionaries, ER diagrams, table schemas, module architecture"
|
|
287
|
+
bms: "BMS tools, organization, API info"
|
|
288
|
+
moph: "Ministry of Public Health regulations"
|
|
289
|
+
nhso: "NHSO reimbursement rules and announcements"
|
|
320
290
|
phases:
|
|
321
291
|
phase_1:
|
|
322
292
|
name: Specification & Planning
|
|
323
|
-
steps: [step_1 through
|
|
293
|
+
steps: [step_1 through step_7]
|
|
324
294
|
execution: subagent
|
|
325
295
|
reason: Preserve main context window for implementation
|
|
326
296
|
phase_2:
|
|
327
297
|
name: Implementation & Verification & Merge
|
|
328
|
-
steps: [
|
|
298
|
+
steps: [step_8 through step_11]
|
|
329
299
|
execution: main_context
|
|
330
300
|
reason: Implementation needs full tool access and ralph-loop
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "bms-speckit-plugin",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.3.1",
|
|
4
4
|
"description": "Chain-orchestrated development pipeline: /bms-speckit takes requirements and runs brainstorm → constitution → specify → plan → tasks → analyze → implement → verify with per-step error handling",
|
|
5
5
|
"files": [
|
|
6
6
|
".claude-plugin/",
|
|
@@ -14,7 +14,7 @@ Chain blueprint: `blueprints/bms-speckit-pipeline.yaml`
|
|
|
14
14
|
3. On step failure, check the **error policy** before proceeding:
|
|
15
15
|
- `on_failure: stop` → halt the chain and report which step failed
|
|
16
16
|
- `on_failure: continue` → log the failure and proceed to next step
|
|
17
|
-
4. Pass `$ARGUMENTS` (the user's requirement) to step 1 (brainstorm). Step
|
|
17
|
+
4. Pass `$ARGUMENTS` (the user's requirement) to step 1 (brainstorm). Step 4 (specify) receives the **output from step 1**
|
|
18
18
|
5. **Commit and push after every important step** — each artifact-producing step must commit its output before proceeding to the next step
|
|
19
19
|
6. Do NOT ask for confirmation between steps
|
|
20
20
|
|
|
@@ -33,6 +33,7 @@ You are running the BMS Speckit specification and planning chain. Execute each s
|
|
|
33
33
|
- **Skill:** `superpowers.brainstorm`
|
|
34
34
|
- **Input:** "$ARGUMENTS"
|
|
35
35
|
- **Purpose:** Explore intent, requirements, design alternatives, and edge cases
|
|
36
|
+
- **Knowledge lookup:** Use `mcp__bms-knowledge-mcp__search_knowledge` to search the `hosxp` collection for relevant data dictionaries, table schemas, and system architecture. Also search `bms`, `moph`, `nhso` collections if relevant.
|
|
36
37
|
- **Output:** Detailed specification document
|
|
37
38
|
- **Timeout:** 300s
|
|
38
39
|
- **Post-action:** Commit all files and push. Message: `feat(speckit): brainstorm — explore requirements and design`
|
|
@@ -48,43 +49,32 @@ You are running the BMS Speckit specification and planning chain. Execute each s
|
|
|
48
49
|
- **Timeout:** 120s
|
|
49
50
|
- **Post-action:** Commit all files and push. Message: `feat(speckit): add constitution and sync CLAUDE.md`
|
|
50
51
|
|
|
51
|
-
### Step 4 —
|
|
52
|
-
- **Tool:** `mcp__knowledge-mcp__search_knowledge` (MCP tool, not a skill)
|
|
53
|
-
- **Purpose:** Search HOSxP knowledge base for data dictionaries, table schemas, ER diagrams, system architecture, and regulatory context relevant to the feature
|
|
54
|
-
- **Timeout:** 300s
|
|
55
|
-
- **Searches to perform:**
|
|
56
|
-
1. Search collection `hosxp` for table schemas and data dictionary related to the brainstorm output (e.g. patient tables, OPD/IPD tables, lab, pharmacy, appointments — whatever is relevant to the feature)
|
|
57
|
-
2. Search collection `hosxp` for system architecture and module design related to the feature
|
|
58
|
-
3. Search collection `bms` for BMS API and tool context if relevant
|
|
59
|
-
4. Search collection `moph` or `nhso` if the feature involves regulatory compliance or reimbursement rules
|
|
60
|
-
- **Output:** Compile all findings into a knowledge context summary with exact table names, field names, data types, and relationships. Save to `specs/*/knowledge-context.md`
|
|
61
|
-
- **Post-action:** Commit all files and push. Message: `feat(speckit): add knowledge research from HOSxP data dictionary`
|
|
62
|
-
|
|
63
|
-
### Step 5 — Specify `[on_failure: STOP]`
|
|
52
|
+
### Step 4 — Specify `[on_failure: STOP]`
|
|
64
53
|
- **Skill:** `speckit.specify`
|
|
65
|
-
- **Input:** Use the detailed specification output from Step 1 (brainstorm) as the argument
|
|
54
|
+
- **Input:** Use the detailed specification output from Step 1 (brainstorm) as the argument
|
|
55
|
+
- **Knowledge lookup:** Use `mcp__bms-knowledge-mcp__search_knowledge` to search the `hosxp` collection for exact table names, field names, data types, and relationships needed by this feature. Reference actual HOSxP data structures in the spec.
|
|
66
56
|
- **Output:** `specs/*/spec.md`
|
|
67
57
|
- **Timeout:** 300s
|
|
68
58
|
- **Retry:** up to 2 attempts
|
|
69
59
|
- **Post-action:** Commit all files and push. Message: `feat(speckit): add feature specification`
|
|
70
60
|
|
|
71
|
-
### Step
|
|
61
|
+
### Step 5 — Plan `[on_failure: STOP]`
|
|
72
62
|
- **Skill:** `speckit.plan`
|
|
73
|
-
- **Input:** reads from step
|
|
63
|
+
- **Input:** reads from step 4 artifacts
|
|
74
64
|
- **Output:** `specs/*/plan.md`
|
|
75
65
|
- **Timeout:** 300s
|
|
76
66
|
- **Retry:** up to 2 attempts
|
|
77
67
|
- **Post-action:** Commit all files and push. Message: `feat(speckit): add implementation plan`
|
|
78
68
|
|
|
79
|
-
### Step
|
|
69
|
+
### Step 6 — Tasks `[on_failure: STOP]`
|
|
80
70
|
- **Skill:** `speckit.tasks`
|
|
81
|
-
- **Input:** reads from step
|
|
71
|
+
- **Input:** reads from step 5 artifacts
|
|
82
72
|
- **Output:** `specs/*/tasks.md`
|
|
83
73
|
- **Timeout:** 300s
|
|
84
74
|
- **Retry:** up to 2 attempts
|
|
85
75
|
- **Post-action:** Commit all files and push. Message: `feat(speckit): add task list`
|
|
86
76
|
|
|
87
|
-
### Step
|
|
77
|
+
### Step 7 — Analyze `[on_failure: CONTINUE]`
|
|
88
78
|
- **Skill:** `speckit.analyze`
|
|
89
79
|
- **Purpose:** Cross-artifact consistency check (spec ↔ plan ↔ tasks). Non-destructive — report only.
|
|
90
80
|
- **Timeout:** 300s
|
|
@@ -99,10 +89,10 @@ After all steps complete, return: the feature name, number of tasks created, and
|
|
|
99
89
|
|
|
100
90
|
> **Execution context:** Runs in main context after subagent completes.
|
|
101
91
|
|
|
102
|
-
### Step
|
|
92
|
+
### Step 8 — Compact `[on_failure: CONTINUE]`
|
|
103
93
|
- **Action:** Run `/compact` to free context window before implementation.
|
|
104
94
|
|
|
105
|
-
### Step
|
|
95
|
+
### Step 9 — Implement (loop) `[on_failure: CONTINUE | max_retries: 3]`
|
|
106
96
|
- **Engine:** ralph-loop
|
|
107
97
|
- **Input:** Use the **tasks.md path returned by the Phase 1 subagent** (e.g. `specs/my-feature/tasks.md`). Replace `{TASKS_PATH}` below with the actual path.
|
|
108
98
|
- **Completion promise:** `FINISHED`
|
|
@@ -112,13 +102,13 @@ After all steps complete, return: the feature name, number of tasks created, and
|
|
|
112
102
|
|
|
113
103
|
`/ralph-loop:ralph-loop "systematically execute speckit.implement via the Skill tool to complete every task defined in {TASKS_PATH} with strict adherence to specification requirements, enforce TDD workflow including writing and passing unit, integration, and end-to-end tests before marking any task complete, ensure code quality through linting, static analysis, and consistent architecture with reusable components and centralized business logic, maintain atomic commits after each successful task with clear traceability, avoid requesting confirmation and proceed autonomously, once all tasks are implemented invoke speckit.analyze via the Skill tool to perform a full validation pass, automatically apply all recommended improvements or corrections, re-run all tests to confirm stability and zero regression, and only output <promise>FINISHED</promise> after every task is fully completed, validated, and aligned with production-grade quality standards" --completion-promise "FINISHED" --max-iterations 10`
|
|
114
104
|
|
|
115
|
-
### Step
|
|
105
|
+
### Step 10 — Verify `[on_failure: STOP]`
|
|
116
106
|
- **Skill:** `speckit.analyze`
|
|
117
107
|
- **Purpose:** Final validation — confirm all tasks completed, tests passing, no regressions, code quality standards met.
|
|
118
108
|
- **Timeout:** 300s
|
|
119
109
|
- **Post-action:** Commit all files and push. Message: `chore(speckit): final verification pass complete`
|
|
120
110
|
|
|
121
|
-
### Step
|
|
111
|
+
### Step 11 — Merge to Main `[on_failure: STOP]`
|
|
122
112
|
- **Action:** Switch to main branch, merge the feature branch (fast-forward if possible), push main to remote, then clean up the feature branch.
|
|
123
113
|
- **Timeout:** 120s
|
|
124
114
|
|
|
@@ -127,23 +117,15 @@ After all steps complete, return: the feature name, number of tasks created, and
|
|
|
127
117
|
## Chain Summary
|
|
128
118
|
|
|
129
119
|
```
|
|
130
|
-
Phase 1 (subagent)
|
|
131
|
-
|
|
132
|
-
Step 1:
|
|
133
|
-
|
|
134
|
-
Step
|
|
135
|
-
Step
|
|
136
|
-
Step
|
|
137
|
-
|
|
138
|
-
Step
|
|
139
|
-
Step
|
|
120
|
+
Phase 1 (subagent) Phase 2 (main context)
|
|
121
|
+
────────────────────────────── ──────────────────────────────
|
|
122
|
+
Step 1: brainstorm ──STOP── commit Step 8: compact
|
|
123
|
+
+ knowledge search (hosxp) Step 9: implement (ralph-loop)
|
|
124
|
+
Step 2: constitution ─STOP─┐ commit per task
|
|
125
|
+
Step 3: CLAUDE.md sync ───┘ commit Step 10: verify ── commit
|
|
126
|
+
Step 4: specify ──────STOP── commit Step 11: merge to main + push
|
|
127
|
+
+ knowledge search (hosxp)
|
|
128
|
+
Step 5: plan ─────────STOP── commit
|
|
129
|
+
Step 6: tasks ────────STOP── commit
|
|
130
|
+
Step 7: analyze ──────────── commit
|
|
140
131
|
```
|
|
141
|
-
|
|
142
|
-
### Knowledge Collections Available
|
|
143
|
-
|
|
144
|
-
| Collection | Sources | Content |
|
|
145
|
-
|---|---|---|
|
|
146
|
-
| `hosxp` | 49 | Data dictionaries, ER diagrams, table schemas, module architecture |
|
|
147
|
-
| `bms` | 3 | BMS tools, organization, API info |
|
|
148
|
-
| `moph` | 3 | Ministry of Public Health regulations |
|
|
149
|
-
| `nhso` | 44 | NHSO reimbursement rules and announcements |
|