specsmd 0.0.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.
Files changed (83) hide show
  1. package/README.md +300 -0
  2. package/bin/cli.js +21 -0
  3. package/flows/aidlc/README.md +372 -0
  4. package/flows/aidlc/agents/construction-agent.md +81 -0
  5. package/flows/aidlc/agents/inception-agent.md +95 -0
  6. package/flows/aidlc/agents/master-agent.md +61 -0
  7. package/flows/aidlc/agents/operations-agent.md +89 -0
  8. package/flows/aidlc/commands/construction-agent.md +63 -0
  9. package/flows/aidlc/commands/inception-agent.md +55 -0
  10. package/flows/aidlc/commands/master-agent.md +47 -0
  11. package/flows/aidlc/commands/operations-agent.md +77 -0
  12. package/flows/aidlc/context-config.yaml +41 -0
  13. package/flows/aidlc/memory-bank.yaml +104 -0
  14. package/flows/aidlc/quick-start.md +315 -0
  15. package/flows/aidlc/skills/construction/bolt-list.md +163 -0
  16. package/flows/aidlc/skills/construction/bolt-replan.md +343 -0
  17. package/flows/aidlc/skills/construction/bolt-start.md +289 -0
  18. package/flows/aidlc/skills/construction/bolt-status.md +185 -0
  19. package/flows/aidlc/skills/construction/navigator.md +196 -0
  20. package/flows/aidlc/skills/inception/bolt-plan.md +338 -0
  21. package/flows/aidlc/skills/inception/context.md +171 -0
  22. package/flows/aidlc/skills/inception/intent-create.md +211 -0
  23. package/flows/aidlc/skills/inception/intent-list.md +124 -0
  24. package/flows/aidlc/skills/inception/navigator.md +207 -0
  25. package/flows/aidlc/skills/inception/requirements.md +227 -0
  26. package/flows/aidlc/skills/inception/review.md +248 -0
  27. package/flows/aidlc/skills/inception/story-create.md +304 -0
  28. package/flows/aidlc/skills/inception/units.md +271 -0
  29. package/flows/aidlc/skills/master/analyze-context.md +132 -0
  30. package/flows/aidlc/skills/master/answer-question.md +141 -0
  31. package/flows/aidlc/skills/master/explain-flow.md +146 -0
  32. package/flows/aidlc/skills/master/project-init.md +281 -0
  33. package/flows/aidlc/skills/master/route-request.md +126 -0
  34. package/flows/aidlc/skills/operations/build.md +237 -0
  35. package/flows/aidlc/skills/operations/deploy.md +259 -0
  36. package/flows/aidlc/skills/operations/monitor.md +265 -0
  37. package/flows/aidlc/skills/operations/navigator.md +209 -0
  38. package/flows/aidlc/skills/operations/verify.md +224 -0
  39. package/flows/aidlc/templates/construction/bolt-template.md +193 -0
  40. package/flows/aidlc/templates/construction/bolt-types/bdd-construction-bolt.md +250 -0
  41. package/flows/aidlc/templates/construction/bolt-types/ddd-construction-bolt/adr-template.md +49 -0
  42. package/flows/aidlc/templates/construction/bolt-types/ddd-construction-bolt/ddd-01-domain-model-template.md +55 -0
  43. package/flows/aidlc/templates/construction/bolt-types/ddd-construction-bolt/ddd-02-technical-design-template.md +67 -0
  44. package/flows/aidlc/templates/construction/bolt-types/ddd-construction-bolt/ddd-03-test-report-template.md +62 -0
  45. package/flows/aidlc/templates/construction/bolt-types/ddd-construction-bolt.md +528 -0
  46. package/flows/aidlc/templates/construction/bolt-types/simple-construction-bolt.md +273 -0
  47. package/flows/aidlc/templates/construction/bolt-types/spike-bolt.md +240 -0
  48. package/flows/aidlc/templates/construction/bolt-types/tdd-construction-bolt.md +259 -0
  49. package/flows/aidlc/templates/construction/construction-log-template.md +129 -0
  50. package/flows/aidlc/templates/construction/standards/coding-standards.md +29 -0
  51. package/flows/aidlc/templates/construction/standards/system-architecture.md +22 -0
  52. package/flows/aidlc/templates/construction/standards/tech-stack.md +19 -0
  53. package/flows/aidlc/templates/inception/inception-log-template.md +134 -0
  54. package/flows/aidlc/templates/inception/project/README.md +55 -0
  55. package/flows/aidlc/templates/inception/requirements-template.md +144 -0
  56. package/flows/aidlc/templates/inception/stories-template.md +38 -0
  57. package/flows/aidlc/templates/inception/story-template.md +147 -0
  58. package/flows/aidlc/templates/inception/system-context-template.md +29 -0
  59. package/flows/aidlc/templates/inception/unit-brief-template.md +177 -0
  60. package/flows/aidlc/templates/inception/units-template.md +52 -0
  61. package/flows/aidlc/templates/standards/catalog.yaml +345 -0
  62. package/flows/aidlc/templates/standards/coding-standards.guide.md +553 -0
  63. package/flows/aidlc/templates/standards/data-stack.guide.md +162 -0
  64. package/flows/aidlc/templates/standards/tech-stack.guide.md +280 -0
  65. package/lib/InstallerFactory.js +36 -0
  66. package/lib/cli-utils.js +372 -0
  67. package/lib/constants.js +31 -0
  68. package/lib/installer.js +314 -0
  69. package/lib/installers/AntigravityInstaller.js +22 -0
  70. package/lib/installers/ClaudeInstaller.js +85 -0
  71. package/lib/installers/ClineInstaller.js +21 -0
  72. package/lib/installers/CodexInstaller.js +21 -0
  73. package/lib/installers/CopilotInstaller.js +113 -0
  74. package/lib/installers/CursorInstaller.js +63 -0
  75. package/lib/installers/GeminiInstaller.js +75 -0
  76. package/lib/installers/KiroInstaller.js +22 -0
  77. package/lib/installers/OpenCodeInstaller.js +22 -0
  78. package/lib/installers/RooInstaller.js +22 -0
  79. package/lib/installers/ToolInstaller.js +73 -0
  80. package/lib/installers/WindsurfInstaller.js +76 -0
  81. package/lib/markdown-validator.ts +175 -0
  82. package/lib/yaml-validator.ts +99 -0
  83. package/package.json +65 -0
@@ -0,0 +1,144 @@
1
+ # Requirements Template
2
+
3
+ Use this template when documenting requirements for an intent.
4
+
5
+ ---
6
+
7
+ ## Frontmatter
8
+
9
+ ```yaml
10
+ ---
11
+ intent: {intent-name}
12
+ phase: inception
13
+ status: draft|in-progress|complete
14
+ created: {YYYY-MM-DD}
15
+ updated: {YYYY-MM-DD}
16
+ ---
17
+ ```
18
+
19
+ Note: All naming is derived from folder names. No prefix field needed.
20
+
21
+ ---
22
+
23
+ ## Content
24
+
25
+ ```markdown
26
+ # Requirements: {Intent Name}
27
+
28
+ ## Intent Overview
29
+
30
+ {High-level description of what this intent aims to achieve}
31
+
32
+ ## Business Goals
33
+
34
+ | Goal | Success Metric | Priority |
35
+ |------|----------------|----------|
36
+ | {Goal 1} | {How to measure success} | Must |
37
+ | {Goal 2} | {How to measure success} | Should |
38
+
39
+ ---
40
+
41
+ ## Functional Requirements
42
+
43
+ ### FR-1: {Requirement Title}
44
+ - **Description**: {What the system must do}
45
+ - **Acceptance Criteria**: {Measurable conditions for success}
46
+ - **Priority**: Must/Should/Could
47
+ - **Related Stories**: {Story IDs when defined}
48
+
49
+ ### FR-2: {Requirement Title}
50
+ - **Description**: {What the system must do}
51
+ - **Acceptance Criteria**: {Measurable conditions for success}
52
+ - **Priority**: Must/Should/Could
53
+ - **Related Stories**: {Story IDs when defined}
54
+
55
+ ---
56
+
57
+ ## Non-Functional Requirements
58
+
59
+ ### Performance
60
+ | Requirement | Metric | Target |
61
+ |-------------|--------|--------|
62
+ | Response Time | p95 latency | < 200ms |
63
+ | Throughput | Requests/second | > 1000 |
64
+
65
+ ### Scalability
66
+ | Requirement | Metric | Target |
67
+ |-------------|--------|--------|
68
+ | Concurrent Users | Active sessions | 10,000 |
69
+ | Data Volume | Records | 10M+ |
70
+
71
+ ### Security
72
+ | Requirement | Standard | Notes |
73
+ |-------------|----------|-------|
74
+ | Authentication | OAuth 2.0 / JWT | {details} |
75
+ | Authorization | RBAC | {details} |
76
+ | Data Protection | AES-256 | {details} |
77
+
78
+ ### Reliability
79
+ | Requirement | Metric | Target |
80
+ |-------------|--------|--------|
81
+ | Availability | Uptime | 99.9% |
82
+ | Recovery | RTO | < 1 hour |
83
+
84
+ ### Compliance
85
+ | Requirement | Standard | Notes |
86
+ |-------------|----------|-------|
87
+ | {Regulation} | {Standard} | {details} |
88
+
89
+ ---
90
+
91
+ ## Constraints
92
+
93
+ ### Technical Constraints
94
+
95
+ **Project-wide standards**: Required standards will be loaded from memory-bank standards folder by Construction Agent
96
+
97
+ **Intent-specific constraints** (only list constraints unique to this feature):
98
+ - {Constraint specific to this intent, not covered by standards}
99
+
100
+ ### Business Constraints
101
+ - {Constraint 1: e.g., budget limitation}
102
+ - {Constraint 2: e.g., timeline requirement}
103
+
104
+ ---
105
+
106
+ ## Assumptions
107
+
108
+ | Assumption | Risk if Invalid | Mitigation |
109
+ |------------|-----------------|------------|
110
+ | {Assumption 1} | {What happens if wrong} | {How to mitigate} |
111
+ | {Assumption 2} | {What happens if wrong} | {How to mitigate} |
112
+
113
+ ---
114
+
115
+ ## Open Questions
116
+
117
+ | Question | Owner | Due Date | Resolution |
118
+ |----------|-------|----------|------------|
119
+ | {Question 1} | {Who} | {When} | {Pending/Resolved} |
120
+ ```
121
+
122
+ ---
123
+
124
+ ## Priority Definitions
125
+
126
+ | Priority | Meaning |
127
+ |----------|---------|
128
+ | **Must** | Required for MVP, system unusable without |
129
+ | **Should** | Important, significant value but not blocking |
130
+ | **Could** | Nice to have, enhances experience |
131
+ | **Won't** | Out of scope for this intent |
132
+
133
+ ---
134
+
135
+ ## Requirement Quality Checklist
136
+
137
+ Before marking requirements complete, verify:
138
+
139
+ - [ ] All requirements are testable (measurable, not vague)
140
+ - [ ] Acceptance criteria are binary (pass/fail)
141
+ - [ ] NFRs have specific metrics and targets
142
+ - [ ] Dependencies are identified
143
+ - [ ] Constraints are documented
144
+ - [ ] Assumptions are stated and risks assessed
@@ -0,0 +1,38 @@
1
+ ---
2
+ intent: {intent-name}
3
+ phase: inception
4
+ status: stories-created
5
+ updated: {date}
6
+ ---
7
+
8
+ # {Intent Name} - Stories
9
+
10
+ ## User Stories
11
+
12
+ ### Story-1: {Title}
13
+
14
+ **As a** {user type}
15
+ **I want** {goal}
16
+ **So that** {benefit}
17
+
18
+ **Acceptance Criteria**:
19
+
20
+ - [ ] {Criterion 1}
21
+ - [ ] {Criterion 2}
22
+
23
+ **Priority**: High/Medium/Low
24
+ **Estimate**: {T-shirt size: S/M/L/XL}
25
+
26
+ ### Story-2: {Title}
27
+
28
+ ...
29
+
30
+ ## Technical Stories
31
+
32
+ ### Tech-Story-1: {Title}
33
+
34
+ **Description**: {What needs to be done technically}
35
+ **Rationale**: {Why this is needed}
36
+ **Acceptance Criteria**:
37
+
38
+ - [ ] {Criterion}
@@ -0,0 +1,147 @@
1
+ # Story Template
2
+
3
+ Use this template when creating individual story files during story creation.
4
+
5
+ ---
6
+
7
+ ## Frontmatter
8
+
9
+ ```yaml
10
+ ---
11
+ id: {intent-name}-story-{n}
12
+ unit: {unit-name}
13
+ intent: {intent-name}
14
+ status: draft
15
+ priority: must|should|could
16
+ created: {YYYY-MM-DD}
17
+ assigned_bolt: null
18
+ implemented: false
19
+ ---
20
+ ```
21
+
22
+ ---
23
+
24
+ ## Content
25
+
26
+ ```markdown
27
+ # Story: {intent-name}-story-{n}
28
+
29
+ ## User Story
30
+
31
+ **As a** {user role}
32
+ **I want** {goal/action}
33
+ **So that** {benefit/reason}
34
+
35
+ ## Acceptance Criteria
36
+
37
+ - [ ] **Given** {precondition}, **When** {action}, **Then** {expected outcome}
38
+ - [ ] **Given** {precondition}, **When** {action}, **Then** {expected outcome}
39
+ - [ ] **Given** {precondition}, **When** {action}, **Then** {expected outcome}
40
+
41
+ ## Technical Notes
42
+
43
+ {Implementation hints, constraints, or considerations}
44
+
45
+ ## Dependencies
46
+
47
+ ### Requires
48
+ - {Other stories this depends on, or "None"}
49
+
50
+ ### Enables
51
+ - {Stories that depend on this, or "None"}
52
+
53
+ ## Edge Cases
54
+
55
+ | Scenario | Expected Behavior |
56
+ |----------|-------------------|
57
+ | {edge case 1} | {behavior} |
58
+ | {edge case 2} | {behavior} |
59
+
60
+ ## Out of Scope
61
+
62
+ - {What this story does NOT cover}
63
+ ```
64
+
65
+ ---
66
+
67
+ ## Priority Levels
68
+
69
+ | Priority | Meaning | Criteria |
70
+ |----------|---------|----------|
71
+ | `must` | Required for MVP | System unusable without this |
72
+ | `should` | Important | Significant value, not blocking |
73
+ | `could` | Nice to have | Enhances experience |
74
+
75
+ ---
76
+
77
+ ## Status Values
78
+
79
+ | Status | Meaning |
80
+ |--------|---------|
81
+ | `draft` | Story written, needs review |
82
+ | `ready` | Reviewed, ready for bolt |
83
+ | `in-progress` | Being implemented in a bolt |
84
+ | `implemented` | Code complete |
85
+ | `tested` | Tests passing |
86
+ | `done` | All acceptance criteria met |
87
+
88
+ ---
89
+
90
+ ## Example
91
+
92
+ ```yaml
93
+ ---
94
+ id: user-authentication-story-1
95
+ unit: auth-service
96
+ intent: user-authentication
97
+ status: ready
98
+ priority: must
99
+ created: 2024-12-05
100
+ assigned_bolt: bolt-auth-service-1
101
+ implemented: false
102
+ ---
103
+ ```
104
+
105
+ ```markdown
106
+ # Story: user-authentication-story-1
107
+
108
+ ## User Story
109
+
110
+ **As a** new user
111
+ **I want** to register with my email and password
112
+ **So that** I can access the application
113
+
114
+ ## Acceptance Criteria
115
+
116
+ - [ ] **Given** I am on the registration page, **When** I enter valid email and password, **Then** my account is created and I receive a confirmation email
117
+ - [ ] **Given** I enter an email that already exists, **When** I submit registration, **Then** I see an error message "Email already registered"
118
+ - [ ] **Given** I enter a password less than 8 characters, **When** I submit, **Then** I see validation error
119
+
120
+ ## Technical Notes
121
+
122
+ - Password must be hashed with bcrypt (cost factor 12)
123
+ - Email validation should use RFC 5322 compliant regex
124
+ - Rate limit registration to 5 attempts per IP per hour
125
+
126
+ ## Dependencies
127
+
128
+ ### Requires
129
+ - None (first story)
130
+
131
+ ### Enables
132
+ - story-2 (User login)
133
+ - story-3 (Email verification)
134
+
135
+ ## Edge Cases
136
+
137
+ | Scenario | Expected Behavior |
138
+ |----------|-------------------|
139
+ | SQL injection in email | Safely escaped, validation fails |
140
+ | Very long email (255+ chars) | Validation error |
141
+ | Unicode in password | Allowed, properly encoded |
142
+
143
+ ## Out of Scope
144
+
145
+ - Social login (OAuth) - separate story
146
+ - Password reset - separate story
147
+ ```
@@ -0,0 +1,29 @@
1
+ ---
2
+ intent: {intent-name}
3
+ phase: inception
4
+ status: context-defined
5
+ updated: {date}
6
+ ---
7
+
8
+ # {Intent Name} - System Context
9
+
10
+ ## System Overview
11
+
12
+ {High-level description of what we are building}
13
+
14
+ ## Context Diagram
15
+
16
+ {Mermaid diagram showing System, Users, and External Systems}
17
+
18
+ ## External Integrations
19
+
20
+ - **System A**: {Purpose of integration}
21
+ - **System B**: {Purpose of integration}
22
+
23
+ ## High-Level Constraints
24
+
25
+ - {e.g., Must run on AWS, Must use existing Auth provider}
26
+
27
+ ## Key NFR Goals
28
+
29
+ - {High-level performance/security goals to guide construction}
@@ -0,0 +1,177 @@
1
+ # Unit Brief Template
2
+
3
+ Use this template when creating unit briefs during decomposition. This is the **critical input for Construction**.
4
+
5
+ ---
6
+
7
+ ## Frontmatter
8
+
9
+ ```yaml
10
+ ---
11
+ unit: {unit-name}
12
+ intent: {intent-name}
13
+ phase: inception
14
+ status: draft|ready
15
+ created: {YYYY-MM-DD}
16
+ updated: {YYYY-MM-DD}
17
+ ---
18
+ ```
19
+
20
+ Note: Story naming uses the story title (e.g., `001-user-signup.md`). No prefix field needed.
21
+
22
+ ---
23
+
24
+ ## Content
25
+
26
+ ```markdown
27
+ # Unit Brief: {Unit Name}
28
+
29
+ ## Purpose
30
+
31
+ {Clear, concise statement of what this unit does and why it exists}
32
+
33
+ ## Scope
34
+
35
+ ### In Scope
36
+ - {What this unit IS responsible for}
37
+ - {What this unit IS responsible for}
38
+
39
+ ### Out of Scope
40
+ - {What this unit is NOT responsible for}
41
+ - {What other units handle}
42
+
43
+ ---
44
+
45
+ ## Assigned Requirements
46
+
47
+ **These FRs from the intent are assigned to this unit. Stories will be created from these.**
48
+
49
+ | FR | Requirement | Priority |
50
+ |----|-------------|----------|
51
+ | FR-{n} | {description from intent requirements.md} | Must/Should/Could |
52
+
53
+ ---
54
+
55
+ ## Domain Concepts
56
+
57
+ ### Key Entities
58
+ | Entity | Description | Attributes |
59
+ |--------|-------------|------------|
60
+ | {Entity 1} | {What it represents} | {Key properties} |
61
+ | {Entity 2} | {What it represents} | {Key properties} |
62
+
63
+ ### Key Operations
64
+ | Operation | Description | Inputs | Outputs |
65
+ |-----------|-------------|--------|---------|
66
+ | {Operation 1} | {What it does} | {Input data} | {Output data} |
67
+ | {Operation 2} | {What it does} | {Input data} | {Output data} |
68
+
69
+ ---
70
+
71
+ ## Story Summary
72
+
73
+ | Metric | Count |
74
+ |--------|-------|
75
+ | Total Stories | {n} |
76
+ | Must Have | {n} |
77
+ | Should Have | {n} |
78
+ | Could Have | {n} |
79
+
80
+ ### Stories
81
+
82
+ | Story ID | Title | Priority | Status |
83
+ |----------|-------|----------|--------|
84
+ | {story-1} | {Title} | Must | Planned |
85
+ | {story-2} | {Title} | Should | Planned |
86
+
87
+ ---
88
+
89
+ ## Dependencies
90
+
91
+ ### Depends On
92
+ | Unit | Reason |
93
+ |------|--------|
94
+ | {unit-name} | {Why this dependency exists} |
95
+
96
+ ### Depended By
97
+ | Unit | Reason |
98
+ |------|--------|
99
+ | {unit-name} | {Why they depend on this} |
100
+
101
+ ### External Dependencies
102
+ | System | Purpose | Risk |
103
+ |--------|---------|------|
104
+ | {External system} | {Why needed} | {Risk level} |
105
+
106
+ ---
107
+
108
+ ## Technical Context
109
+
110
+ ### Suggested Technology
111
+ {Recommendations based on tech stack standards}
112
+
113
+ ### Integration Points
114
+ | Integration | Type | Protocol |
115
+ |-------------|------|----------|
116
+ | {System/Unit} | API/Event/DB | REST/GraphQL/Kafka |
117
+
118
+ ### Data Storage
119
+ | Data | Type | Volume | Retention |
120
+ |------|------|--------|-----------|
121
+ | {Data type} | SQL/NoSQL/Cache | {Volume} | {Retention} |
122
+
123
+ ---
124
+
125
+ ## Constraints
126
+
127
+ - {Technical constraint specific to this unit}
128
+ - {Business constraint specific to this unit}
129
+
130
+ ---
131
+
132
+ ## Success Criteria
133
+
134
+ ### Functional
135
+ - [ ] {Criterion 1: What must work}
136
+ - [ ] {Criterion 2: What must work}
137
+
138
+ ### Non-Functional
139
+ - [ ] {Performance target}
140
+ - [ ] {Security requirement}
141
+
142
+ ### Quality
143
+ - [ ] Code coverage > 80%
144
+ - [ ] All acceptance criteria met
145
+ - [ ] Code reviewed and approved
146
+
147
+ ---
148
+
149
+ ## Bolt Suggestions
150
+
151
+ Based on stories and complexity:
152
+
153
+ | Bolt | Type | Stories | Objective |
154
+ |------|------|---------|-----------|
155
+ | bolt-{unit}-1 | DDD | S1, S2 | Core entities |
156
+ | bolt-{unit}-2 | DDD | S3, S4 | API layer |
157
+
158
+ ---
159
+
160
+ ## Notes
161
+
162
+ {Any additional context, risks, or considerations for Construction}
163
+ ```
164
+
165
+ ---
166
+
167
+ ## Quality Checklist
168
+
169
+ Before marking unit brief as ready:
170
+
171
+ - [ ] Purpose is clear and specific
172
+ - [ ] Scope boundaries are defined
173
+ - [ ] Key entities identified
174
+ - [ ] Stories assigned to this unit
175
+ - [ ] Dependencies mapped
176
+ - [ ] Success criteria are measurable
177
+ - [ ] Bolt suggestions provided
@@ -0,0 +1,52 @@
1
+ ---
2
+ intent: {intent-name}
3
+ phase: inception
4
+ status: units-decomposed
5
+ updated: {date}
6
+ ---
7
+
8
+ # {Intent Name} - Unit Decomposition
9
+
10
+ ## Units Overview
11
+
12
+ This intent decomposes into {N} units of work:
13
+
14
+ ### Unit 1: {unit-name}
15
+
16
+ **Description**: {What this unit does}
17
+
18
+ **Stories**:
19
+
20
+ - Story-1: {Title}
21
+ - Story-3: {Title}
22
+
23
+ **Deliverables**:
24
+
25
+ - {Specific artifacts this unit produces}
26
+
27
+ **Dependencies**:
28
+
29
+ - Depends on: {Other units}
30
+ - Depended by: {Units that need this}
31
+
32
+ **Estimated Complexity**: S/M/L/XL
33
+
34
+ ### Unit 2: {unit-name}
35
+
36
+ ...
37
+
38
+ ## Unit Dependency Graph
39
+
40
+ ```text
41
+ [Unit A] ──> [Unit B] ──> [Unit D]
42
+ │ │
43
+ └────> [Unit C] ──┘
44
+ ```
45
+
46
+ ## Execution Order
47
+
48
+ Based on dependencies:
49
+
50
+ 1. Day 1-2: Unit A (foundation)
51
+ 2. Day 2-4: Unit B, Unit C (parallel)
52
+ 3. Day 5-6: Unit D (integration)