@ydtb/specsmd 0.1.22
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 +322 -0
- package/bin/cli.js +21 -0
- package/flows/aidlc/README.md +372 -0
- package/flows/aidlc/agents/construction-agent.md +80 -0
- package/flows/aidlc/agents/inception-agent.md +97 -0
- package/flows/aidlc/agents/master-agent.md +61 -0
- package/flows/aidlc/agents/operations-agent.md +89 -0
- package/flows/aidlc/commands/construction-agent.md +67 -0
- package/flows/aidlc/commands/inception-agent.md +59 -0
- package/flows/aidlc/commands/master-agent.md +51 -0
- package/flows/aidlc/commands/operations-agent.md +81 -0
- package/flows/aidlc/context-config.yaml +67 -0
- package/flows/aidlc/memory-bank.yaml +105 -0
- package/flows/aidlc/quick-start.md +322 -0
- package/flows/aidlc/scripts/artifact-validator.cjs +594 -0
- package/flows/aidlc/scripts/bolt-complete.cjs +606 -0
- package/flows/aidlc/scripts/status-integrity.cjs +598 -0
- package/flows/aidlc/skills/construction/bolt-list.md +163 -0
- package/flows/aidlc/skills/construction/bolt-replan.md +345 -0
- package/flows/aidlc/skills/construction/bolt-start.md +442 -0
- package/flows/aidlc/skills/construction/bolt-status.md +185 -0
- package/flows/aidlc/skills/construction/navigator.md +196 -0
- package/flows/aidlc/skills/construction/prototype-apply.md +311 -0
- package/flows/aidlc/skills/inception/bolt-plan.md +372 -0
- package/flows/aidlc/skills/inception/context.md +171 -0
- package/flows/aidlc/skills/inception/intent-create.md +211 -0
- package/flows/aidlc/skills/inception/intent-list.md +124 -0
- package/flows/aidlc/skills/inception/navigator.md +207 -0
- package/flows/aidlc/skills/inception/requirements.md +227 -0
- package/flows/aidlc/skills/inception/review.md +248 -0
- package/flows/aidlc/skills/inception/story-create.md +304 -0
- package/flows/aidlc/skills/inception/units.md +278 -0
- package/flows/aidlc/skills/inception/vibe-to-spec.md +410 -0
- package/flows/aidlc/skills/master/analyze-context.md +239 -0
- package/flows/aidlc/skills/master/answer-question.md +141 -0
- package/flows/aidlc/skills/master/explain-flow.md +158 -0
- package/flows/aidlc/skills/master/project-init.md +281 -0
- package/flows/aidlc/skills/master/route-request.md +126 -0
- package/flows/aidlc/skills/operations/build.md +237 -0
- package/flows/aidlc/skills/operations/deploy.md +259 -0
- package/flows/aidlc/skills/operations/monitor.md +265 -0
- package/flows/aidlc/skills/operations/navigator.md +209 -0
- package/flows/aidlc/skills/operations/verify.md +224 -0
- package/flows/aidlc/templates/construction/bolt-template.md +226 -0
- package/flows/aidlc/templates/construction/bolt-types/ddd-construction-bolt/adr-template.md +49 -0
- package/flows/aidlc/templates/construction/bolt-types/ddd-construction-bolt/ddd-01-domain-model-template.md +55 -0
- package/flows/aidlc/templates/construction/bolt-types/ddd-construction-bolt/ddd-02-technical-design-template.md +67 -0
- package/flows/aidlc/templates/construction/bolt-types/ddd-construction-bolt/ddd-03-test-report-template.md +62 -0
- package/flows/aidlc/templates/construction/bolt-types/ddd-construction-bolt.md +590 -0
- package/flows/aidlc/templates/construction/bolt-types/simple-construction-bolt.md +347 -0
- package/flows/aidlc/templates/construction/bolt-types/spike-bolt.md +240 -0
- package/flows/aidlc/templates/construction/construction-log-template.md +129 -0
- package/flows/aidlc/templates/construction/standards/coding-standards.md +29 -0
- package/flows/aidlc/templates/construction/standards/system-architecture.md +22 -0
- package/flows/aidlc/templates/construction/standards/tech-stack.md +19 -0
- package/flows/aidlc/templates/inception/inception-log-template.md +134 -0
- package/flows/aidlc/templates/inception/project/README.md +55 -0
- package/flows/aidlc/templates/inception/requirements-template.md +144 -0
- package/flows/aidlc/templates/inception/stories-template.md +38 -0
- package/flows/aidlc/templates/inception/story-template.md +147 -0
- package/flows/aidlc/templates/inception/system-context-template.md +29 -0
- package/flows/aidlc/templates/inception/unit-brief-template.md +177 -0
- package/flows/aidlc/templates/inception/units-template.md +52 -0
- package/flows/aidlc/templates/standards/catalog.yaml +345 -0
- package/flows/aidlc/templates/standards/coding-standards.guide.md +553 -0
- package/flows/aidlc/templates/standards/data-stack.guide.md +162 -0
- package/flows/aidlc/templates/standards/decision-index-template.md +32 -0
- package/flows/aidlc/templates/standards/tech-stack.guide.md +280 -0
- package/flows/fire/README.md +19 -0
- package/flows/fire/agents/builder/agent.md +254 -0
- package/flows/fire/agents/builder/skills/code-review/SKILL.md +257 -0
- package/flows/fire/agents/builder/skills/code-review/references/auto-fix-rules.md +218 -0
- package/flows/fire/agents/builder/skills/code-review/references/review-categories.md +154 -0
- package/flows/fire/agents/builder/skills/code-review/templates/review-report.md.hbs +120 -0
- package/flows/fire/agents/builder/skills/commit-changes/SKILL.md +232 -0
- package/flows/fire/agents/builder/skills/commit-changes/scripts/commit-changes.cjs +447 -0
- package/flows/fire/agents/builder/skills/run-execute/SKILL.md +700 -0
- package/flows/fire/agents/builder/skills/run-execute/scripts/complete-run.cjs +748 -0
- package/flows/fire/agents/builder/skills/run-execute/scripts/init-run.cjs +457 -0
- package/flows/fire/agents/builder/skills/run-execute/scripts/update-phase.cjs +239 -0
- package/flows/fire/agents/builder/skills/run-execute/templates/plan.md.hbs +61 -0
- package/flows/fire/agents/builder/skills/run-execute/templates/test-report.md.hbs +81 -0
- package/flows/fire/agents/builder/skills/run-plan/SKILL.md +366 -0
- package/flows/fire/agents/builder/skills/run-status/SKILL.md +96 -0
- package/flows/fire/agents/builder/skills/walkthrough-generate/SKILL.md +181 -0
- package/flows/fire/agents/builder/skills/walkthrough-generate/templates/walkthrough.md.hbs +108 -0
- package/flows/fire/agents/orchestrator/agent.md +144 -0
- package/flows/fire/agents/orchestrator/skills/project-init/SKILL.md +226 -0
- package/flows/fire/agents/orchestrator/skills/project-init/templates/coding-standards.md.hbs +149 -0
- package/flows/fire/agents/orchestrator/skills/project-init/templates/constitution.md.hbs +43 -0
- package/flows/fire/agents/orchestrator/skills/project-init/templates/system-architecture.md.hbs +101 -0
- package/flows/fire/agents/orchestrator/skills/project-init/templates/tech-stack.md.hbs +136 -0
- package/flows/fire/agents/orchestrator/skills/project-init/templates/testing-standards.md.hbs +94 -0
- package/flows/fire/agents/orchestrator/skills/route/SKILL.md +146 -0
- package/flows/fire/agents/orchestrator/skills/status/SKILL.md +696 -0
- package/flows/fire/agents/planner/agent.md +143 -0
- package/flows/fire/agents/planner/skills/design-doc-generate/SKILL.md +156 -0
- package/flows/fire/agents/planner/skills/design-doc-generate/templates/design.md.hbs +124 -0
- package/flows/fire/agents/planner/skills/intent-capture/SKILL.md +125 -0
- package/flows/fire/agents/planner/skills/intent-capture/templates/brief.md.hbs +40 -0
- package/flows/fire/agents/planner/skills/work-item-decompose/SKILL.md +166 -0
- package/flows/fire/agents/planner/skills/work-item-decompose/templates/work-item.md.hbs +40 -0
- package/flows/fire/commands/fire-builder.md +56 -0
- package/flows/fire/commands/fire-planner.md +48 -0
- package/flows/fire/commands/fire.md +46 -0
- package/flows/fire/memory-bank.yaml +240 -0
- package/flows/fire/quick-start.md +146 -0
- package/flows/simple/README.md +190 -0
- package/flows/simple/agents/agent.md +404 -0
- package/flows/simple/commands/agent.md +60 -0
- package/flows/simple/context-config.yaml +34 -0
- package/flows/simple/memory-bank.yaml +66 -0
- package/flows/simple/quick-start.md +231 -0
- package/flows/simple/skills/design.md +96 -0
- package/flows/simple/skills/execute.md +190 -0
- package/flows/simple/skills/requirements.md +94 -0
- package/flows/simple/skills/tasks.md +136 -0
- package/flows/simple/templates/design-template.md +138 -0
- package/flows/simple/templates/requirements-template.md +85 -0
- package/flows/simple/templates/tasks-template.md +104 -0
- package/lib/InstallerFactory.js +36 -0
- package/lib/analytics/env-detector.js +92 -0
- package/lib/analytics/index.js +22 -0
- package/lib/analytics/machine-id.js +33 -0
- package/lib/analytics/tracker.js +232 -0
- package/lib/cli-utils.js +342 -0
- package/lib/constants.js +44 -0
- package/lib/installer.js +406 -0
- package/lib/installers/AntigravityInstaller.js +22 -0
- package/lib/installers/ClaudeInstaller.js +85 -0
- package/lib/installers/ClineInstaller.js +21 -0
- package/lib/installers/CodexInstaller.js +21 -0
- package/lib/installers/CopilotInstaller.js +113 -0
- package/lib/installers/CursorInstaller.js +63 -0
- package/lib/installers/GeminiInstaller.js +75 -0
- package/lib/installers/KiroInstaller.js +77 -0
- package/lib/installers/OpenCodeInstaller.js +30 -0
- package/lib/installers/RooInstaller.js +22 -0
- package/lib/installers/ToolInstaller.js +76 -0
- package/lib/installers/WindsurfInstaller.js +22 -0
- package/lib/markdown-validator.ts +175 -0
- package/lib/yaml-validator.ts +99 -0
- package/package.json +69 -0
|
@@ -0,0 +1,196 @@
|
|
|
1
|
+
# Skill: Construction Navigator
|
|
2
|
+
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
## Role
|
|
6
|
+
|
|
7
|
+
Entry point for Construction Agent. Routes to appropriate skill based on state.
|
|
8
|
+
|
|
9
|
+
**NO Checkpoint** - Navigator is a routing skill, not a decision point.
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## Progress Display
|
|
14
|
+
|
|
15
|
+
Show workflow position with checkpoint markers:
|
|
16
|
+
|
|
17
|
+
```text
|
|
18
|
+
### Construction Workflow (2 Checkpoints per Bolt)
|
|
19
|
+
|
|
20
|
+
[Checkpoint 1] Which bolt to work on? --> bolt-list skill
|
|
21
|
+
|
|
|
22
|
+
[Domain + Logical Design]
|
|
23
|
+
|
|
|
24
|
+
[Checkpoint 2] Design Review --> bolt-start skill
|
|
25
|
+
|
|
|
26
|
+
[Code + Tests] --> Auto-validate if tests pass
|
|
27
|
+
|
|
|
28
|
+
[What's Next?] --> Next bolt / Done
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## Goal
|
|
34
|
+
|
|
35
|
+
Present the Construction Agent's skills and guide the user to the appropriate next action.
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## Input
|
|
40
|
+
|
|
41
|
+
- **Optional**: `--unit` - Current unit context
|
|
42
|
+
- **Optional**: `--bolt-id` - Current bolt context
|
|
43
|
+
- **Required**: `.specsmd/aidlc/memory-bank.yaml` - artifact schema
|
|
44
|
+
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
## Process
|
|
48
|
+
|
|
49
|
+
### 1. Determine Context
|
|
50
|
+
|
|
51
|
+
Load current construction state:
|
|
52
|
+
|
|
53
|
+
- Check for in-progress bolts
|
|
54
|
+
- Identify which units have planned bolts
|
|
55
|
+
- Calculate overall construction progress
|
|
56
|
+
|
|
57
|
+
### 2. Present Menu
|
|
58
|
+
|
|
59
|
+
```markdown
|
|
60
|
+
## Construction Agent
|
|
61
|
+
|
|
62
|
+
{Context section if bolt/unit is active}
|
|
63
|
+
|
|
64
|
+
### Skills
|
|
65
|
+
|
|
66
|
+
1 - **List Bolts**: View all bolts and status (`bolt-list`)
|
|
67
|
+
2 - **Bolt Status**: Detailed status of a bolt (`bolt-status --bolt-id="{id}"`)
|
|
68
|
+
3 - **Start/Continue Bolt**: Execute bolt stages (`bolt-start --bolt-id="{id}"`)
|
|
69
|
+
4 - **Plan Bolts**: Plan new bolts → Inception (`bolt-plan --unit="{unit}"`)
|
|
70
|
+
|
|
71
|
+
### Current State
|
|
72
|
+
{Show in-progress bolts and overall progress}
|
|
73
|
+
|
|
74
|
+
### Suggested Next Step
|
|
75
|
+
→ {Recommended action based on state}
|
|
76
|
+
|
|
77
|
+
**Type a number (1-4) or specify a bolt ID to work on.**
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
### 3. Context-Aware Suggestions
|
|
81
|
+
|
|
82
|
+
Based on construction state, suggest actions:
|
|
83
|
+
|
|
84
|
+
- **No bolts planned** → Redirect to Inception for planning
|
|
85
|
+
- **Bolts planned, none started** → Start first bolt
|
|
86
|
+
- **Bolt in-progress** → Continue current bolt
|
|
87
|
+
- **Bolt blocked** → Show blocker, suggest resolution
|
|
88
|
+
- **All bolts complete for unit** → Proceed to Operations
|
|
89
|
+
|
|
90
|
+
### 4. Handle Selection
|
|
91
|
+
|
|
92
|
+
When user selects an option:
|
|
93
|
+
|
|
94
|
+
1. Acknowledge the selection
|
|
95
|
+
2. Load the corresponding skill file
|
|
96
|
+
3. Execute with current context
|
|
97
|
+
|
|
98
|
+
---
|
|
99
|
+
|
|
100
|
+
## Output (With Active Bolt)
|
|
101
|
+
|
|
102
|
+
```markdown
|
|
103
|
+
## Construction Agent
|
|
104
|
+
|
|
105
|
+
### Active Bolt: `{bolt-id}`
|
|
106
|
+
**Unit**: `{unit-name}`
|
|
107
|
+
**Type**: {bolt-type}
|
|
108
|
+
**Stage**: {current_stage} ({n}/{total})
|
|
109
|
+
|
|
110
|
+
### Progress
|
|
111
|
+
[████████████░░░░░░░░] 60% (3/5 stages)
|
|
112
|
+
|
|
113
|
+
### Quick Actions
|
|
114
|
+
|
|
115
|
+
1 - **Continue Current Bolt**: Resume work (`bolt-start --bolt-id="{bolt-id}"`)
|
|
116
|
+
2 - **View Bolt Status**: Detailed status (`bolt-status --bolt-id="{bolt-id}"`)
|
|
117
|
+
3 - **List All Bolts**: See all bolts (`bolt-list`)
|
|
118
|
+
4 - **Switch Bolt**: Select a different bolt
|
|
119
|
+
|
|
120
|
+
### Suggested Next Step
|
|
121
|
+
→ Continue working on `{bolt-id}` - currently at {stage} stage
|
|
122
|
+
|
|
123
|
+
**Press Enter to continue or type a number.**
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
---
|
|
127
|
+
|
|
128
|
+
## Output (No Active Bolt)
|
|
129
|
+
|
|
130
|
+
```markdown
|
|
131
|
+
## Construction Agent
|
|
132
|
+
|
|
133
|
+
### No Active Bolt
|
|
134
|
+
|
|
135
|
+
### Available Bolts
|
|
136
|
+
|
|
137
|
+
- [ ] `001-auth-service` (auth-service, DDD) - planned
|
|
138
|
+
- [ ] `002-auth-service` (auth-service, DDD) - planned
|
|
139
|
+
- [ ] `003-api-gateway` (api-gateway, Simple) - planned
|
|
140
|
+
|
|
141
|
+
### Quick Actions
|
|
142
|
+
|
|
143
|
+
1 - **Start 001-auth-service**: Begin first bolt
|
|
144
|
+
2 - **List all bolts**: View with details
|
|
145
|
+
3 - **View bolt status**: Check specific bolt
|
|
146
|
+
|
|
147
|
+
### Suggested Next Step
|
|
148
|
+
→ Start construction with `001-auth-service`
|
|
149
|
+
|
|
150
|
+
**Type a number or enter a bolt ID.**
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
---
|
|
154
|
+
|
|
155
|
+
## Output (All Bolts Complete)
|
|
156
|
+
|
|
157
|
+
```markdown
|
|
158
|
+
## Construction Agent
|
|
159
|
+
|
|
160
|
+
### Construction Complete for Unit: `{unit-name}`
|
|
161
|
+
|
|
162
|
+
All {n} bolts have been completed:
|
|
163
|
+
|
|
164
|
+
- ✅ `001-{unit-name}` - Completed 2024-12-05 (3h)
|
|
165
|
+
- ✅ `005-{unit-name}` - Completed 2024-12-06 (4h)
|
|
166
|
+
|
|
167
|
+
### Summary
|
|
168
|
+
- Stories delivered: {n}
|
|
169
|
+
- Tests passing: ✅
|
|
170
|
+
- Ready for deployment
|
|
171
|
+
|
|
172
|
+
### Next Step
|
|
173
|
+
→ Proceed to Operations: `/specsmd-operations-agent --unit="{unit}"`
|
|
174
|
+
|
|
175
|
+
Or work on another unit's bolts.
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
---
|
|
179
|
+
|
|
180
|
+
## Transition
|
|
181
|
+
|
|
182
|
+
After user selection:
|
|
183
|
+
|
|
184
|
+
- → Load selected skill
|
|
185
|
+
- → Skill contains the Checkpoint markers
|
|
186
|
+
- → Execute skill process
|
|
187
|
+
|
|
188
|
+
---
|
|
189
|
+
|
|
190
|
+
## Test Contract
|
|
191
|
+
|
|
192
|
+
```yaml
|
|
193
|
+
input: Unit/bolt state (optional)
|
|
194
|
+
output: Menu with skill options, suggested next step
|
|
195
|
+
checkpoints: 0 (routing only)
|
|
196
|
+
```
|
|
@@ -0,0 +1,311 @@
|
|
|
1
|
+
# Skill: Prototype Apply
|
|
2
|
+
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
## Goal
|
|
6
|
+
|
|
7
|
+
Apply a vibe-coded prototype's design and components to the real implementation during bolt execution. This skill bridges the gap between extracted prototype specifications and production code.
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## When to Use
|
|
12
|
+
|
|
13
|
+
Use this skill when:
|
|
14
|
+
|
|
15
|
+
- A bolt references a prototype in its scope
|
|
16
|
+
- You need to implement UI that matches a prototype screenshot
|
|
17
|
+
- The design system from vibe-to-spec should be applied to code
|
|
18
|
+
- Visual acceptance criteria reference prototype screens
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## Input
|
|
23
|
+
|
|
24
|
+
- **Required**: Bolt ID currently being executed
|
|
25
|
+
- **Required**: Prototype reference (path or name)
|
|
26
|
+
- **Optional**: Specific screen to implement
|
|
27
|
+
- **Optional**: Component to focus on
|
|
28
|
+
|
|
29
|
+
**Prerequisite**: The **vibe-to-spec** skill must have been run on this prototype during Inception.
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## Process
|
|
34
|
+
|
|
35
|
+
### Step 1: Load Prototype Context
|
|
36
|
+
|
|
37
|
+
Load all relevant prototype artifacts:
|
|
38
|
+
|
|
39
|
+
```text
|
|
40
|
+
## Loading Prototype Context
|
|
41
|
+
|
|
42
|
+
Prototype: {prototype-name}
|
|
43
|
+
Bolt: {bolt-id}
|
|
44
|
+
|
|
45
|
+
### Available Artifacts
|
|
46
|
+
- [ ] design-system.md - {loaded/not found}
|
|
47
|
+
- [ ] component-catalog.md - {loaded/not found}
|
|
48
|
+
- [ ] screen-inventory.md - {loaded/not found}
|
|
49
|
+
- [ ] user-flows.md - {loaded/not found}
|
|
50
|
+
|
|
51
|
+
### Bolt Scope Match
|
|
52
|
+
Matching prototype screens to bolt scope:
|
|
53
|
+
- {screen-1} → {story-1}
|
|
54
|
+
- {screen-2} → {story-2}
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
### Step 2: Extract Implementation Requirements
|
|
60
|
+
|
|
61
|
+
From the prototype artifacts, extract what needs to be built:
|
|
62
|
+
|
|
63
|
+
```markdown
|
|
64
|
+
## Implementation Requirements
|
|
65
|
+
|
|
66
|
+
### Screen: {screen-name}
|
|
67
|
+
**Prototype Source**: {screenshot-path}
|
|
68
|
+
**Target Location**: {src/path/to/component}
|
|
69
|
+
|
|
70
|
+
### Design Tokens to Apply
|
|
71
|
+
```typescript
|
|
72
|
+
// From prototype design-system.md
|
|
73
|
+
const tokens = {
|
|
74
|
+
colors: {
|
|
75
|
+
primary: '{hex}',
|
|
76
|
+
secondary: '{hex}',
|
|
77
|
+
background: '{hex}',
|
|
78
|
+
// ...
|
|
79
|
+
},
|
|
80
|
+
typography: {
|
|
81
|
+
fontFamily: '{font}',
|
|
82
|
+
// ...
|
|
83
|
+
},
|
|
84
|
+
spacing: {
|
|
85
|
+
xs: '{px}',
|
|
86
|
+
// ...
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
### Components to Implement
|
|
92
|
+
|
|
93
|
+
| Component | Prototype Ref | Target File | Status |
|
|
94
|
+
|-----------|---------------|-------------|--------|
|
|
95
|
+
| {Sidebar} | screen-2.png | Sidebar.tsx | pending |
|
|
96
|
+
| {ChatList} | screen-2.png | ChatList.tsx | pending |
|
|
97
|
+
| {MessageBubble} | screen-3.png | MessageBubble.tsx | pending |
|
|
98
|
+
|
|
99
|
+
### Layout Structure
|
|
100
|
+
|
|
101
|
+
```
|
|
102
|
+
{ASCII representation of layout from prototype}
|
|
103
|
+
┌─────────────────────────────────────────┐
|
|
104
|
+
│ Header │
|
|
105
|
+
├──────────┬──────────────────────────────┤
|
|
106
|
+
│ Sidebar │ Main Content │
|
|
107
|
+
│ │ │
|
|
108
|
+
│ │ │
|
|
109
|
+
├──────────┴──────────────────────────────┤
|
|
110
|
+
│ Footer / Input Area │
|
|
111
|
+
└─────────────────────────────────────────┘
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
---
|
|
117
|
+
|
|
118
|
+
### Step 3: Map to Project Standards
|
|
119
|
+
|
|
120
|
+
Cross-reference with project standards:
|
|
121
|
+
|
|
122
|
+
```markdown
|
|
123
|
+
## Standards Alignment
|
|
124
|
+
|
|
125
|
+
### Tech Stack Match
|
|
126
|
+
- **Prototype suggests**: {vanilla CSS / Tailwind / etc.}
|
|
127
|
+
- **Project standard**: {from tech-stack.md}
|
|
128
|
+
- **Action**: {adapt prototype to use project's styling approach}
|
|
129
|
+
|
|
130
|
+
### Component Library Match
|
|
131
|
+
- **Prototype components**: {custom / Bootstrap / etc.}
|
|
132
|
+
- **Project standard**: {from tech-stack.md}
|
|
133
|
+
- **Action**: {map prototype components to project's component library}
|
|
134
|
+
|
|
135
|
+
### Coding Standards
|
|
136
|
+
- **File naming**: {from coding-standards.md}
|
|
137
|
+
- **Component structure**: {from coding-standards.md}
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
---
|
|
141
|
+
|
|
142
|
+
### Step 4: Generate Implementation Code
|
|
143
|
+
|
|
144
|
+
Generate code that matches the prototype while following project standards.
|
|
145
|
+
|
|
146
|
+
**IMPORTANT**: If the `/frontend-design` skill is available, invoke it for high-quality, production-grade frontend code that avoids generic AI aesthetics. The frontend-design skill specializes in creating distinctive, polished UI components.
|
|
147
|
+
|
|
148
|
+
**For each component**:
|
|
149
|
+
|
|
150
|
+
1. **Analyze prototype visually** (use screenshot)
|
|
151
|
+
2. **Extract structure from HTML** (if available)
|
|
152
|
+
3. **Apply project's styling approach**
|
|
153
|
+
4. **Ensure accessibility**
|
|
154
|
+
5. **Add responsive behavior**
|
|
155
|
+
|
|
156
|
+
```typescript
|
|
157
|
+
// Example output structure
|
|
158
|
+
/**
|
|
159
|
+
* Component: {ComponentName}
|
|
160
|
+
* Prototype: {screenshot-reference}
|
|
161
|
+
*
|
|
162
|
+
* Visual acceptance criteria:
|
|
163
|
+
* - {criterion from prototype}
|
|
164
|
+
* - {criterion from prototype}
|
|
165
|
+
*/
|
|
166
|
+
export function ComponentName({ props }: Props) {
|
|
167
|
+
// Implementation matching prototype
|
|
168
|
+
}
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
---
|
|
172
|
+
|
|
173
|
+
### Step 5: Visual Verification Checklist
|
|
174
|
+
|
|
175
|
+
Create a verification checklist comparing implementation to prototype:
|
|
176
|
+
|
|
177
|
+
```markdown
|
|
178
|
+
## Visual Verification: {screen-name}
|
|
179
|
+
|
|
180
|
+
### Layout
|
|
181
|
+
- [ ] Overall structure matches prototype
|
|
182
|
+
- [ ] Spacing between elements is consistent
|
|
183
|
+
- [ ] Responsive breakpoints work correctly
|
|
184
|
+
|
|
185
|
+
### Colors
|
|
186
|
+
- [ ] Primary color matches: {hex}
|
|
187
|
+
- [ ] Background color matches: {hex}
|
|
188
|
+
- [ ] Text colors match design system
|
|
189
|
+
|
|
190
|
+
### Typography
|
|
191
|
+
- [ ] Font family applied correctly
|
|
192
|
+
- [ ] Font sizes match design system
|
|
193
|
+
- [ ] Font weights are correct
|
|
194
|
+
|
|
195
|
+
### Components
|
|
196
|
+
- [ ] {Component-1} matches prototype
|
|
197
|
+
- [ ] {Component-2} matches prototype
|
|
198
|
+
- [ ] Interactive states (hover, focus, active) implemented
|
|
199
|
+
|
|
200
|
+
### Interactions
|
|
201
|
+
- [ ] {Interaction-1} works as shown in flow
|
|
202
|
+
- [ ] {Interaction-2} works as shown in flow
|
|
203
|
+
|
|
204
|
+
### Screenshots for Comparison
|
|
205
|
+
- Prototype: `{prototype-path}`
|
|
206
|
+
- Implementation: `{screenshot after implementation}`
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
---
|
|
210
|
+
|
|
211
|
+
## Output
|
|
212
|
+
|
|
213
|
+
### Implementation Summary
|
|
214
|
+
|
|
215
|
+
```markdown
|
|
216
|
+
## Prototype Applied: {screen-name}
|
|
217
|
+
|
|
218
|
+
### Components Implemented
|
|
219
|
+
| Component | File | Lines | Status |
|
|
220
|
+
|-----------|------|-------|--------|
|
|
221
|
+
| {Sidebar} | src/components/Sidebar.tsx | 45-120 | complete |
|
|
222
|
+
| {ChatList} | src/components/ChatList.tsx | 1-80 | complete |
|
|
223
|
+
|
|
224
|
+
### Design System Applied
|
|
225
|
+
- Color tokens: {n} applied
|
|
226
|
+
- Typography: {n} styles applied
|
|
227
|
+
- Spacing: {n} values applied
|
|
228
|
+
|
|
229
|
+
### Deviations from Prototype
|
|
230
|
+
| Aspect | Prototype | Implementation | Reason |
|
|
231
|
+
|--------|-----------|----------------|--------|
|
|
232
|
+
| {color} | #xxx | #yyy | Project standard |
|
|
233
|
+
| {font} | Inter | system-ui | Performance |
|
|
234
|
+
|
|
235
|
+
### Visual Verification
|
|
236
|
+
- [ ] Side-by-side comparison reviewed
|
|
237
|
+
- [ ] Responsive behavior verified
|
|
238
|
+
- [ ] Accessibility checked
|
|
239
|
+
|
|
240
|
+
### Files Modified
|
|
241
|
+
- `{file-1}` - {description}
|
|
242
|
+
- `{file-2}` - {description}
|
|
243
|
+
|
|
244
|
+
### Next Steps
|
|
245
|
+
1 - Continue with next screen
|
|
246
|
+
2 - Run visual regression tests
|
|
247
|
+
3 - Review with stakeholder
|
|
248
|
+
```
|
|
249
|
+
|
|
250
|
+
---
|
|
251
|
+
|
|
252
|
+
## Integration with Bolt Workflow
|
|
253
|
+
|
|
254
|
+
### During DDD Construction Bolt
|
|
255
|
+
|
|
256
|
+
In the **Implement** stage:
|
|
257
|
+
|
|
258
|
+
1. Load prototype context for relevant screens
|
|
259
|
+
2. Generate components matching prototype
|
|
260
|
+
3. Apply design system tokens
|
|
261
|
+
4. Create visual verification checklist
|
|
262
|
+
|
|
263
|
+
### During Simple Construction Bolt
|
|
264
|
+
|
|
265
|
+
In the **Implement** stage:
|
|
266
|
+
|
|
267
|
+
1. Reference prototype for UI components
|
|
268
|
+
2. Use extracted design tokens
|
|
269
|
+
3. Follow component catalog structure
|
|
270
|
+
|
|
271
|
+
---
|
|
272
|
+
|
|
273
|
+
## Visual Diff Support
|
|
274
|
+
|
|
275
|
+
When available, use UI diff tools to compare:
|
|
276
|
+
|
|
277
|
+
```text
|
|
278
|
+
## Visual Diff Report
|
|
279
|
+
|
|
280
|
+
### Screen: {screen-name}
|
|
281
|
+
- Prototype: {prototype-screenshot}
|
|
282
|
+
- Implementation: {current-screenshot}
|
|
283
|
+
- Diff: {highlighted differences}
|
|
284
|
+
|
|
285
|
+
### Discrepancies Found
|
|
286
|
+
1. {location}: {expected} vs {actual}
|
|
287
|
+
2. {location}: {expected} vs {actual}
|
|
288
|
+
|
|
289
|
+
### Action Required
|
|
290
|
+
- [ ] Fix discrepancy 1
|
|
291
|
+
- [ ] Fix discrepancy 2
|
|
292
|
+
- [ ] Accept as intentional deviation
|
|
293
|
+
```
|
|
294
|
+
|
|
295
|
+
---
|
|
296
|
+
|
|
297
|
+
## Test Contract
|
|
298
|
+
|
|
299
|
+
```yaml
|
|
300
|
+
input:
|
|
301
|
+
- Bolt ID with prototype reference
|
|
302
|
+
- Prototype artifacts from vibe-to-spec
|
|
303
|
+
output:
|
|
304
|
+
- Implementation code matching prototype
|
|
305
|
+
- Visual verification checklist
|
|
306
|
+
- Deviation documentation
|
|
307
|
+
integration:
|
|
308
|
+
- Works within bolt execution flow
|
|
309
|
+
- References design-system.md
|
|
310
|
+
- Follows project standards
|
|
311
|
+
```
|