bms-speckit-plugin 3.0.0 → 3.1.0
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/package.json +1 -1
- package/skills/speckit/SKILL.md +64 -10
- package/skills/analyze/SKILL.md +0 -33
- package/skills/constitution/SKILL.md +0 -48
- package/skills/implement/SKILL.md +0 -27
- package/skills/plan/SKILL.md +0 -25
- package/skills/specify/SKILL.md +0 -32
- package/skills/tasks/SKILL.md +0 -34
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "bms-speckit-plugin",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.1.0",
|
|
4
4
|
"description": "Single-command automated development pipeline: /bms-speckit takes requirements and runs constitution → specify → plan → tasks → analyze → implement → verify",
|
|
5
5
|
"files": [
|
|
6
6
|
".claude-plugin/",
|
package/skills/speckit/SKILL.md
CHANGED
|
@@ -8,39 +8,92 @@ allowed-tools: Read, Write, Edit, Bash, Glob, Grep, Skill, Agent, WebSearch, Web
|
|
|
8
8
|
|
|
9
9
|
# BMS Speckit — Automated Development Pipeline
|
|
10
10
|
|
|
11
|
-
Takes a single requirement and runs the complete engineering workflow
|
|
11
|
+
Takes a single requirement and runs the complete engineering workflow. Do NOT ask for confirmation between steps.
|
|
12
12
|
|
|
13
13
|
## Step 1: Constitution
|
|
14
|
-
|
|
14
|
+
|
|
15
|
+
Create `specs/constitution.md` with these principles:
|
|
15
16
|
|
|
16
17
|
Establish and enforce a comprehensive set of engineering principles that prioritize high code quality, strict adherence to Test-Driven Development (TDD) practices, and well-defined testing standards across unit, component, integration, and API levels to ensure system reliability and maintainability; maintain a consistent, user-friendly, and professional user interface aligned with strong user experience (UX) guidelines; optimize application performance through efficient architecture and resource management; enforce disciplined version control practices with frequent, atomic commits to minimize risk and improve traceability; promote the development and reuse of modular components and functions while centralizing business logic to avoid duplication and ensure consistency; provide clear, informative user feedback and progress reporting throughout system interactions; and leverage all available tools, frameworks, and domain-specific expertise to support developers in delivering robust, scalable, and high-quality applications.
|
|
17
18
|
|
|
19
|
+
Also verify CLAUDE.md complies with the constitution. Update if needed.
|
|
20
|
+
Commit: `feat: establish engineering constitution`
|
|
21
|
+
|
|
18
22
|
## Step 2: Specify
|
|
19
|
-
|
|
23
|
+
|
|
24
|
+
Analyze this requirement: $ARGUMENTS
|
|
25
|
+
|
|
26
|
+
If database access is needed and MCP tools are available (list_tables, describe_table, query), explore the actual database schema.
|
|
27
|
+
|
|
28
|
+
Create `specs/{feature-name}/specification.md` containing:
|
|
29
|
+
- Overview and user requirements
|
|
30
|
+
- Functional requirements (numbered, testable)
|
|
31
|
+
- Non-functional requirements (performance, security, UX)
|
|
32
|
+
- Technical analysis (database schema, API dependencies)
|
|
33
|
+
- Architecture (components, data flow)
|
|
34
|
+
- UI/UX design (screens, navigation, interactions)
|
|
35
|
+
- Data model (tables, relationships, queries)
|
|
36
|
+
- Constraints and success criteria
|
|
37
|
+
|
|
38
|
+
Commit: `feat: add specification for {feature-name}`
|
|
20
39
|
|
|
21
40
|
## Step 3: Plan
|
|
22
|
-
|
|
41
|
+
|
|
42
|
+
Read the specification and create `specs/{feature-name}/plan.md` containing:
|
|
43
|
+
- Architecture overview and file structure
|
|
44
|
+
- Implementation phases: Foundation → Core → UI → Integration → Testing
|
|
45
|
+
- Technology stack with justification
|
|
46
|
+
- Testing strategy (what to test, coverage targets)
|
|
47
|
+
- Risk assessment
|
|
48
|
+
|
|
49
|
+
Commit: `feat: add implementation plan for {feature-name}`
|
|
23
50
|
|
|
24
51
|
## Step 4: Compact
|
|
25
|
-
|
|
52
|
+
|
|
53
|
+
Run `/compact` to free context window.
|
|
26
54
|
|
|
27
55
|
## Step 5: Tasks
|
|
28
|
-
|
|
56
|
+
|
|
57
|
+
Read the plan and create `specs/{feature-name}/tasks.md` with granular tasks (5-15 min each):
|
|
58
|
+
|
|
59
|
+
```
|
|
60
|
+
### Task N: {Name}
|
|
61
|
+
- **Status**: pending
|
|
62
|
+
- **Priority**: high | medium | low
|
|
63
|
+
- **Phase**: N
|
|
64
|
+
- **Files**: exact file paths
|
|
65
|
+
- **Description**: specific and actionable
|
|
66
|
+
- **Tests**: what tests to write first
|
|
67
|
+
- **Acceptance**: measurable verification criteria
|
|
68
|
+
- **Commit message**: descriptive message
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
Order: setup → data layer → business logic → UI → integration → polish
|
|
72
|
+
Commit: `feat: add task list for {feature-name}`
|
|
29
73
|
|
|
30
74
|
## Step 6: Analyze
|
|
31
|
-
|
|
75
|
+
|
|
76
|
+
Review all tasks for quality:
|
|
77
|
+
- Granular enough? (5-15 min each)
|
|
78
|
+
- Each independently testable?
|
|
79
|
+
- Dependencies correct and explicit?
|
|
80
|
+
- Every task has test-first step?
|
|
81
|
+
- Acceptance criteria clear and measurable?
|
|
82
|
+
|
|
83
|
+
Fix any issues found in tasks.md. Commit if changes made.
|
|
32
84
|
|
|
33
85
|
## Step 7: Commit and push
|
|
86
|
+
|
|
34
87
|
Commit all spec files and push to remote if configured.
|
|
35
88
|
|
|
36
89
|
## Step 8: Compact
|
|
90
|
+
|
|
37
91
|
Run `/compact` to free context window before implementation.
|
|
38
92
|
|
|
39
93
|
## Step 9: Implement with ralph-loop
|
|
40
|
-
Invoke ralph-loop to implement all tasks automatically:
|
|
41
94
|
|
|
42
95
|
```
|
|
43
|
-
/ralph-loop:ralph-loop "
|
|
96
|
+
/ralph-loop:ralph-loop "Read specs/*/tasks.md. Find the next pending task. Execute it using TDD: write test first, verify fail, implement, verify pass, commit. Update task status to completed. Do not ask for any confirmation. Once all tasks are done, recheck all tasks, run full test suite, fix any issues, and output <promise>FINISHED</promise> only after all tasks are completed and revalidated" --completion-promise "FINISHED" --max-iterations 10
|
|
44
97
|
```
|
|
45
98
|
|
|
46
99
|
## After ralph-loop completes
|
|
@@ -53,6 +106,7 @@ Output a final summary:
|
|
|
53
106
|
|
|
54
107
|
## CRITICAL RULES
|
|
55
108
|
- Do NOT ask for confirmation between steps
|
|
56
|
-
-
|
|
109
|
+
- Do NOT skip TDD — test first, always
|
|
110
|
+
- Commit after EVERY completed task
|
|
57
111
|
- Use MCP tools if available (bms-session for database access)
|
|
58
112
|
- Push code if git remote is configured
|
package/skills/analyze/SKILL.md
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: analyze
|
|
3
|
-
description: Review tasks and implementation for quality and constitution compliance
|
|
4
|
-
user-invocable: false
|
|
5
|
-
allowed-tools: Read, Write, Edit, Bash, Glob, Grep, Agent
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
# Speckit Analyze
|
|
9
|
-
|
|
10
|
-
Review tasks and/or implementation for quality and compliance.
|
|
11
|
-
|
|
12
|
-
## Instructions
|
|
13
|
-
|
|
14
|
-
1. Read `specs/constitution.md` for governing principles.
|
|
15
|
-
|
|
16
|
-
2. Find and read the most recent `specs/*/tasks.md`.
|
|
17
|
-
|
|
18
|
-
3. If tasks are pending — review task quality:
|
|
19
|
-
- Granular enough? (5-15 min each)
|
|
20
|
-
- Each independently testable?
|
|
21
|
-
- Dependencies correct?
|
|
22
|
-
- Every task has test-first step?
|
|
23
|
-
- Acceptance criteria clear?
|
|
24
|
-
|
|
25
|
-
4. If tasks are completed — review implementation:
|
|
26
|
-
- Read the code written for completed tasks
|
|
27
|
-
- Check tests exist and are meaningful
|
|
28
|
-
- Check for code duplication
|
|
29
|
-
- Check error handling and UX feedback
|
|
30
|
-
|
|
31
|
-
5. Fix any issues found in tasks.md. Add new tasks if needed.
|
|
32
|
-
|
|
33
|
-
6. Commit if changes made.
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: constitution
|
|
3
|
-
description: Establish engineering principles that govern all speckit development work
|
|
4
|
-
user-invocable: false
|
|
5
|
-
allowed-tools: Read, Write, Edit, Bash, Glob, Grep
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
# Speckit Constitution
|
|
9
|
-
|
|
10
|
-
Establish the engineering constitution for this project.
|
|
11
|
-
|
|
12
|
-
## Instructions
|
|
13
|
-
|
|
14
|
-
1. Read the constitution text from the conversation context. If none provided, use the default principles below.
|
|
15
|
-
|
|
16
|
-
2. Create `specs/` directory if it doesn't exist.
|
|
17
|
-
|
|
18
|
-
3. Write `specs/constitution.md` with:
|
|
19
|
-
|
|
20
|
-
```markdown
|
|
21
|
-
# Engineering Constitution
|
|
22
|
-
|
|
23
|
-
Established: {current date}
|
|
24
|
-
|
|
25
|
-
## Principles
|
|
26
|
-
|
|
27
|
-
{constitution text, formatted as numbered principles}
|
|
28
|
-
|
|
29
|
-
## Enforcement
|
|
30
|
-
|
|
31
|
-
All speckit commands must comply with these principles.
|
|
32
|
-
```
|
|
33
|
-
|
|
34
|
-
4. Check if CLAUDE.md exists. If it does, verify it aligns with the constitution and update if needed.
|
|
35
|
-
|
|
36
|
-
5. Commit: `feat: establish engineering constitution`
|
|
37
|
-
|
|
38
|
-
## Default Principles
|
|
39
|
-
|
|
40
|
-
1. Code Quality — No hardcoded conditions, strict TypeScript, no shortcuts
|
|
41
|
-
2. TDD — Always write tests FIRST, confirm failure, then implement
|
|
42
|
-
3. Testing — Unit, component, integration, and API tests as appropriate
|
|
43
|
-
4. UX — Consistent, professional, user-friendly interfaces with clear feedback
|
|
44
|
-
5. Performance — Efficient architecture and resource management
|
|
45
|
-
6. Version Control — Commit after every meaningful change with descriptive messages
|
|
46
|
-
7. Reusability — Modular components, centralized business logic, no duplication
|
|
47
|
-
8. User Feedback — Informative progress reporting and error messages
|
|
48
|
-
9. Tool Leverage — Use all available skills, MCP tools, frameworks, and domain expertise
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: implement
|
|
3
|
-
description: Execute the next pending task from tasks.md using TDD
|
|
4
|
-
user-invocable: false
|
|
5
|
-
allowed-tools: Read, Write, Edit, Bash, Glob, Grep, Agent, WebSearch, WebFetch
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
# Speckit Implement
|
|
9
|
-
|
|
10
|
-
Execute the next pending task using TDD.
|
|
11
|
-
|
|
12
|
-
## Instructions
|
|
13
|
-
|
|
14
|
-
1. Find `specs/*/tasks.md`. Find the first task with status `pending`.
|
|
15
|
-
|
|
16
|
-
2. Update its status to `in_progress`.
|
|
17
|
-
|
|
18
|
-
3. Execute TDD cycle:
|
|
19
|
-
a. Write the test first
|
|
20
|
-
b. Run tests — verify they FAIL
|
|
21
|
-
c. Write minimal implementation to pass
|
|
22
|
-
d. Run ALL tests — verify they PASS
|
|
23
|
-
e. Commit with the task's commit message
|
|
24
|
-
|
|
25
|
-
4. Update task status to `completed`.
|
|
26
|
-
|
|
27
|
-
5. Report: task name, tests passing, files changed, next pending task (or "all done").
|
package/skills/plan/SKILL.md
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: plan
|
|
3
|
-
description: Create an implementation plan from the most recent specification
|
|
4
|
-
user-invocable: false
|
|
5
|
-
allowed-tools: Read, Write, Edit, Bash, Glob, Grep
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
# Speckit Plan
|
|
9
|
-
|
|
10
|
-
Create a detailed implementation plan from the most recent specification.
|
|
11
|
-
|
|
12
|
-
## Instructions
|
|
13
|
-
|
|
14
|
-
1. Read `specs/constitution.md` for governing principles.
|
|
15
|
-
|
|
16
|
-
2. Find and read the most recent `specs/*/specification.md`.
|
|
17
|
-
|
|
18
|
-
3. Create `specs/{feature-name}/plan.md` containing:
|
|
19
|
-
- Architecture overview and file structure
|
|
20
|
-
- Implementation phases: Foundation → Core → UI → Integration → Testing
|
|
21
|
-
- Technology stack with justification
|
|
22
|
-
- Testing strategy (what to test, coverage targets)
|
|
23
|
-
- Risk assessment
|
|
24
|
-
|
|
25
|
-
4. Commit: `feat: add implementation plan for {feature-name}`
|
package/skills/specify/SKILL.md
DELETED
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: specify
|
|
3
|
-
description: Create a detailed specification from user requirements
|
|
4
|
-
user-invocable: false
|
|
5
|
-
allowed-tools: Read, Write, Edit, Bash, Glob, Grep, Agent, WebSearch, WebFetch
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
# Speckit Specify
|
|
9
|
-
|
|
10
|
-
Create a detailed technical specification from the requirement provided in conversation context.
|
|
11
|
-
|
|
12
|
-
## Instructions
|
|
13
|
-
|
|
14
|
-
1. Read `specs/constitution.md` for governing principles.
|
|
15
|
-
|
|
16
|
-
2. Read the requirement from conversation context.
|
|
17
|
-
|
|
18
|
-
3. If database access is needed and MCP tools are available (list_tables, describe_table, query), explore the actual database schema.
|
|
19
|
-
|
|
20
|
-
4. Create a feature directory name from the requirements (kebab-case).
|
|
21
|
-
|
|
22
|
-
5. Write `specs/{feature-name}/specification.md` containing:
|
|
23
|
-
- Overview and user requirements
|
|
24
|
-
- Functional requirements (numbered, testable)
|
|
25
|
-
- Non-functional requirements (performance, security, UX)
|
|
26
|
-
- Technical analysis (database schema, API dependencies)
|
|
27
|
-
- Architecture (components, data flow)
|
|
28
|
-
- UI/UX design (screens, navigation, interactions)
|
|
29
|
-
- Data model (tables, relationships, queries)
|
|
30
|
-
- Constraints and success criteria
|
|
31
|
-
|
|
32
|
-
6. Commit: `feat: add specification for {feature-name}`
|
package/skills/tasks/SKILL.md
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: tasks
|
|
3
|
-
description: Break an implementation plan into executable tasks with status tracking
|
|
4
|
-
user-invocable: false
|
|
5
|
-
allowed-tools: Read, Write, Edit, Bash, Glob, Grep
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
# Speckit Tasks
|
|
9
|
-
|
|
10
|
-
Break the implementation plan into granular, executable tasks.
|
|
11
|
-
|
|
12
|
-
## Instructions
|
|
13
|
-
|
|
14
|
-
1. Read `specs/constitution.md` for governing principles.
|
|
15
|
-
|
|
16
|
-
2. Find and read the most recent `specs/*/plan.md`.
|
|
17
|
-
|
|
18
|
-
3. Create `specs/{feature-name}/tasks.md` with granular tasks (5-15 min each):
|
|
19
|
-
|
|
20
|
-
```
|
|
21
|
-
### Task N: {Name}
|
|
22
|
-
- **Status**: pending
|
|
23
|
-
- **Priority**: high | medium | low
|
|
24
|
-
- **Phase**: N
|
|
25
|
-
- **Files**: exact file paths
|
|
26
|
-
- **Description**: specific and actionable
|
|
27
|
-
- **Tests**: what tests to write first
|
|
28
|
-
- **Acceptance**: measurable verification criteria
|
|
29
|
-
- **Commit message**: descriptive message
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
4. Order: setup → data layer → business logic → UI → integration → polish
|
|
33
|
-
|
|
34
|
-
5. Commit: `feat: add task list for {feature-name}`
|