aiblueprint-cli 1.4.15 → 1.4.17
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 +0 -11
- package/claude-code-config/skills/setup-ralph/SKILL.md +117 -0
- package/claude-code-config/skills/setup-ralph/scripts/setup.sh +278 -0
- package/claude-code-config/skills/setup-ralph/steps/step-00-init.md +215 -0
- package/claude-code-config/skills/setup-ralph/steps/step-01-interactive-prd.md +366 -0
- package/claude-code-config/skills/setup-ralph/steps/step-02-create-stories.md +273 -0
- package/claude-code-config/skills/setup-ralph/steps/step-03-finish.md +245 -0
- package/dist/cli.js +153 -558
- package/package.json +1 -1
|
@@ -0,0 +1,245 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: step-03-finish
|
|
3
|
+
description: Show run command and instructions
|
|
4
|
+
prev_step: steps/step-02-create-stories.md
|
|
5
|
+
next_step: null
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Step 3: Ready to Run Ralph
|
|
9
|
+
|
|
10
|
+
## MANDATORY EXECUTION RULES (READ FIRST):
|
|
11
|
+
|
|
12
|
+
- 🛑 NEVER skip showing the run command
|
|
13
|
+
- 🛑 NEVER run ralph.sh - user runs it themselves
|
|
14
|
+
- ✅ ALWAYS verify prd.json exists and has stories
|
|
15
|
+
- ✅ ALWAYS show the complete run command for user to copy
|
|
16
|
+
- ✅ ALWAYS let user decide when to run
|
|
17
|
+
- 📋 YOU ARE a helper providing clear instructions
|
|
18
|
+
- 💬 FOCUS on making it easy for user to start Ralph
|
|
19
|
+
- 🚫 FORBIDDEN to run Ralph automatically
|
|
20
|
+
- 🚫 FORBIDDEN to execute any ralph.sh commands
|
|
21
|
+
|
|
22
|
+
## EXECUTION PROTOCOLS:
|
|
23
|
+
|
|
24
|
+
- 🎯 Verify all files are in place
|
|
25
|
+
- 💾 Show summary of what was created
|
|
26
|
+
- 📖 Provide clear run instructions
|
|
27
|
+
- 🚫 FORBIDDEN to modify any files in this step
|
|
28
|
+
|
|
29
|
+
## CONTEXT BOUNDARIES:
|
|
30
|
+
|
|
31
|
+
**Available from previous steps:**
|
|
32
|
+
- `{project_path}` - Absolute path to project
|
|
33
|
+
- `{ralph_dir}` - Path to .claude/ralph
|
|
34
|
+
- `{feature_name}` - Feature folder name
|
|
35
|
+
- `{feature_dir}` - Path to feature folder
|
|
36
|
+
- prd.json exists with user stories
|
|
37
|
+
|
|
38
|
+
## YOUR TASK:
|
|
39
|
+
|
|
40
|
+
Verify setup is complete and provide clear instructions for running Ralph.
|
|
41
|
+
|
|
42
|
+
---
|
|
43
|
+
|
|
44
|
+
## EXECUTION SEQUENCE:
|
|
45
|
+
|
|
46
|
+
### 1. Verify Files Exist
|
|
47
|
+
|
|
48
|
+
Check all required files:
|
|
49
|
+
|
|
50
|
+
```bash
|
|
51
|
+
# Check ralph.sh
|
|
52
|
+
ls -la {ralph_dir}/ralph.sh
|
|
53
|
+
|
|
54
|
+
# Check prompt.md
|
|
55
|
+
ls -la {ralph_dir}/prompt.md
|
|
56
|
+
|
|
57
|
+
# Check feature files
|
|
58
|
+
ls -la {feature_dir}/PRD.md
|
|
59
|
+
ls -la {feature_dir}/prd.json
|
|
60
|
+
ls -la {feature_dir}/progress.txt
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
### 2. Get Story Count
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
# Count stories
|
|
67
|
+
jq '.userStories | length' {feature_dir}/prd.json
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
### 3. Show Summary
|
|
71
|
+
|
|
72
|
+
Display a comprehensive summary:
|
|
73
|
+
|
|
74
|
+
```
|
|
75
|
+
╔════════════════════════════════════════════════════════════════╗
|
|
76
|
+
║ ✅ RALPH READY TO RUN ║
|
|
77
|
+
╠════════════════════════════════════════════════════════════════╣
|
|
78
|
+
║ ║
|
|
79
|
+
║ 📁 Project: {project_path} ║
|
|
80
|
+
║ 📁 Ralph: {ralph_dir} ║
|
|
81
|
+
║ 📁 Feature: {feature_name} ║
|
|
82
|
+
║ ║
|
|
83
|
+
║ 📋 User Stories: {count} stories ready ║
|
|
84
|
+
║ 🌿 Branch: {branchName} ║
|
|
85
|
+
║ ║
|
|
86
|
+
╚════════════════════════════════════════════════════════════════╝
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
### 4. Show Files Created
|
|
90
|
+
|
|
91
|
+
```
|
|
92
|
+
📁 Files Created:
|
|
93
|
+
|
|
94
|
+
{ralph_dir}/
|
|
95
|
+
├── ralph.sh # Main loop script
|
|
96
|
+
├── prompt.md # Agent instructions
|
|
97
|
+
└── tasks/
|
|
98
|
+
└── {feature_name}/
|
|
99
|
+
├── PRD.md # Feature requirements
|
|
100
|
+
├── prd.json # User stories ({count})
|
|
101
|
+
└── progress.txt # Learning log
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
### 5. Provide Run Command
|
|
105
|
+
|
|
106
|
+
**Primary command:**
|
|
107
|
+
|
|
108
|
+
```bash
|
|
109
|
+
# Navigate to project
|
|
110
|
+
cd {project_path}
|
|
111
|
+
|
|
112
|
+
# Run Ralph (recommended: start with low iterations to test)
|
|
113
|
+
bun run {ralph_dir}/ralph.sh -f {feature_name} -n 5
|
|
114
|
+
|
|
115
|
+
# Or with bash
|
|
116
|
+
bash {ralph_dir}/ralph.sh -f {feature_name} -n 5
|
|
117
|
+
|
|
118
|
+
# Full run (up to 20 iterations)
|
|
119
|
+
bun run {ralph_dir}/ralph.sh -f {feature_name} -n 20
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
### 6. Show Quick Reference
|
|
123
|
+
|
|
124
|
+
```
|
|
125
|
+
📖 Quick Reference:
|
|
126
|
+
|
|
127
|
+
# Check progress
|
|
128
|
+
jq '.userStories[] | {id, title, passes}' {feature_dir}/prd.json
|
|
129
|
+
|
|
130
|
+
# See completed stories
|
|
131
|
+
jq '[.userStories[] | select(.passes == true)] | length' {feature_dir}/prd.json
|
|
132
|
+
|
|
133
|
+
# View learnings
|
|
134
|
+
cat {feature_dir}/progress.txt
|
|
135
|
+
|
|
136
|
+
# Resume after interruption (just run again)
|
|
137
|
+
bun run {ralph_dir}/ralph.sh -f {feature_name}
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
### 7. Important Tips
|
|
141
|
+
|
|
142
|
+
```
|
|
143
|
+
💡 Tips for Success:
|
|
144
|
+
|
|
145
|
+
1. Start with -n 5 to test the first few iterations
|
|
146
|
+
2. Watch the first 2-3 stories to verify they work correctly
|
|
147
|
+
3. Ralph accumulates learnings - later iterations are smarter
|
|
148
|
+
4. If a story fails, it will retry in the next iteration
|
|
149
|
+
5. You can stop anytime with Ctrl+C and resume later
|
|
150
|
+
|
|
151
|
+
⚠️ Before Running:
|
|
152
|
+
|
|
153
|
+
1. Make sure you're on a clean git branch
|
|
154
|
+
2. The branch will be: {branchName}
|
|
155
|
+
3. Consider using Docker sandbox for isolation:
|
|
156
|
+
docker sandbox run claude ./ralph.sh -f {feature_name}
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
### 8. Final Confirmation
|
|
160
|
+
|
|
161
|
+
**Use AskUserQuestion:**
|
|
162
|
+
```yaml
|
|
163
|
+
questions:
|
|
164
|
+
- header: "Ready"
|
|
165
|
+
question: "All set! Would you like me to explain anything else?"
|
|
166
|
+
options:
|
|
167
|
+
- label: "I'm ready to run Ralph"
|
|
168
|
+
description: "Thanks, I'll run the command myself"
|
|
169
|
+
- label: "Show me the first few stories"
|
|
170
|
+
description: "Let me preview what Ralph will implement"
|
|
171
|
+
- label: "How do I monitor progress?"
|
|
172
|
+
description: "Explain how to track what Ralph is doing"
|
|
173
|
+
- label: "What if something fails?"
|
|
174
|
+
description: "Explain error recovery"
|
|
175
|
+
multiSelect: false
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
**Handle responses:**
|
|
179
|
+
|
|
180
|
+
**"Show first few stories":**
|
|
181
|
+
```bash
|
|
182
|
+
jq '.userStories[:5]' {feature_dir}/prd.json
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
**"How do I monitor progress":**
|
|
186
|
+
```
|
|
187
|
+
📊 Monitoring Ralph:
|
|
188
|
+
|
|
189
|
+
1. Watch the terminal - Ralph shows iteration progress
|
|
190
|
+
2. Check completed stories:
|
|
191
|
+
jq '[.userStories[] | select(.passes == true)] | length' {feature_dir}/prd.json
|
|
192
|
+
|
|
193
|
+
3. View learnings (grows each iteration):
|
|
194
|
+
tail -50 {feature_dir}/progress.txt
|
|
195
|
+
|
|
196
|
+
4. Check git log:
|
|
197
|
+
git log --oneline -10
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
**"What if something fails":**
|
|
201
|
+
```
|
|
202
|
+
🔧 Error Recovery:
|
|
203
|
+
|
|
204
|
+
1. If a story fails, Ralph will skip it and try the next
|
|
205
|
+
2. Run Ralph again - it picks up incomplete stories
|
|
206
|
+
3. If stuck, manually set "passes": true in prd.json to skip
|
|
207
|
+
4. Check progress.txt for learnings about what went wrong
|
|
208
|
+
5. Edit prd.json to break large stories into smaller ones
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
---
|
|
212
|
+
|
|
213
|
+
## SUCCESS METRICS:
|
|
214
|
+
|
|
215
|
+
✅ All files verified to exist
|
|
216
|
+
✅ Story count shown
|
|
217
|
+
✅ Run command provided
|
|
218
|
+
✅ Quick reference shown
|
|
219
|
+
✅ Tips explained
|
|
220
|
+
✅ User questions answered
|
|
221
|
+
|
|
222
|
+
## FAILURE MODES:
|
|
223
|
+
|
|
224
|
+
❌ Missing files (ralph.sh, prd.json, etc.)
|
|
225
|
+
❌ Empty prd.json (no stories)
|
|
226
|
+
❌ Invalid JSON in prd.json
|
|
227
|
+
|
|
228
|
+
## FINISH PROTOCOLS:
|
|
229
|
+
|
|
230
|
+
- Never run Ralph automatically
|
|
231
|
+
- Always let user decide when to start
|
|
232
|
+
- Provide complete run command they can copy
|
|
233
|
+
- Explain monitoring and recovery
|
|
234
|
+
|
|
235
|
+
## WORKFLOW COMPLETE:
|
|
236
|
+
|
|
237
|
+
This is the final step. The user now has everything they need to run Ralph.
|
|
238
|
+
|
|
239
|
+
<critical>
|
|
240
|
+
Remember: Ralph runs autonomously. Make sure the user understands:
|
|
241
|
+
1. How to start it
|
|
242
|
+
2. How to monitor it
|
|
243
|
+
3. How to stop/resume it
|
|
244
|
+
4. How to handle failures
|
|
245
|
+
</critical>
|