Skip to content

Commit 18aa8d1

Browse files
NathanFlurryclaude
andcommitted
chore: add ralph agent loop and dynamic actors PRD
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent c4dea0a commit 18aa8d1

3 files changed

Lines changed: 582 additions & 0 deletions

File tree

scripts/ralph/CLAUDE.md

Lines changed: 104 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,104 @@
1+
# Ralph Agent Instructions
2+
3+
You are an autonomous coding agent working on a software project.
4+
5+
## Your Task
6+
7+
1. Read the PRD at `prd.json` (in the same directory as this file)
8+
2. Read the progress log at `progress.txt` (check Codebase Patterns section first)
9+
3. Check you're on the correct branch from PRD `branchName`. If not, check it out or create from main.
10+
4. Pick the **highest priority** user story where `passes: false`
11+
5. Implement that single user story
12+
6. Run quality checks (e.g., typecheck, lint, test - use whatever your project requires)
13+
7. Update CLAUDE.md files if you discover reusable patterns (see below)
14+
8. If checks pass, commit ALL changes with message: `feat: [Story ID] - [Story Title]`
15+
9. Update the PRD to set `passes: true` for the completed story
16+
10. Append your progress to `progress.txt`
17+
18+
## Progress Report Format
19+
20+
APPEND to progress.txt (never replace, always append):
21+
```
22+
## [Date/Time] - [Story ID]
23+
- What was implemented
24+
- Files changed
25+
- **Learnings for future iterations:**
26+
- Patterns discovered (e.g., "this codebase uses X for Y")
27+
- Gotchas encountered (e.g., "don't forget to update Z when changing W")
28+
- Useful context (e.g., "the evaluation panel is in component X")
29+
---
30+
```
31+
32+
The learnings section is critical - it helps future iterations avoid repeating mistakes and understand the codebase better.
33+
34+
## Consolidate Patterns
35+
36+
If you discover a **reusable pattern** that future iterations should know, add it to the `## Codebase Patterns` section at the TOP of progress.txt (create it if it doesn't exist). This section should consolidate the most important learnings:
37+
38+
```
39+
## Codebase Patterns
40+
- Example: Use `sql<number>` template for aggregations
41+
- Example: Always use `IF NOT EXISTS` for migrations
42+
- Example: Export types from actions.ts for UI components
43+
```
44+
45+
Only add patterns that are **general and reusable**, not story-specific details.
46+
47+
## Update CLAUDE.md Files
48+
49+
Before committing, check if any edited files have learnings worth preserving in nearby CLAUDE.md files:
50+
51+
1. **Identify directories with edited files** - Look at which directories you modified
52+
2. **Check for existing CLAUDE.md** - Look for CLAUDE.md in those directories or parent directories
53+
3. **Add valuable learnings** - If you discovered something future developers/agents should know:
54+
- API patterns or conventions specific to that module
55+
- Gotchas or non-obvious requirements
56+
- Dependencies between files
57+
- Testing approaches for that area
58+
- Configuration or environment requirements
59+
60+
**Examples of good CLAUDE.md additions:**
61+
- "When modifying X, also update Y to keep them in sync"
62+
- "This module uses pattern Z for all API calls"
63+
- "Tests require the dev server running on PORT 3000"
64+
- "Field names must match the template exactly"
65+
66+
**Do NOT add:**
67+
- Story-specific implementation details
68+
- Temporary debugging notes
69+
- Information already in progress.txt
70+
71+
Only update CLAUDE.md if you have **genuinely reusable knowledge** that would help future work in that directory.
72+
73+
## Quality Requirements
74+
75+
- ALL commits must pass your project's quality checks (typecheck, lint, test)
76+
- Do NOT commit broken code
77+
- Keep changes focused and minimal
78+
- Follow existing code patterns
79+
80+
## Browser Testing (If Available)
81+
82+
For any story that changes UI, verify it works in the browser if you have browser testing tools configured (e.g., via MCP):
83+
84+
1. Navigate to the relevant page
85+
2. Verify the UI changes work as expected
86+
3. Take a screenshot if helpful for the progress log
87+
88+
If no browser tools are available, note in your progress report that manual browser verification is needed.
89+
90+
## Stop Condition
91+
92+
After completing a user story, check if ALL stories have `passes: true`.
93+
94+
If ALL stories are complete and passing, reply with:
95+
<promise>COMPLETE</promise>
96+
97+
If there are still stories with `passes: false`, end your response normally (another iteration will pick up the next story).
98+
99+
## Important
100+
101+
- Work on ONE story per iteration
102+
- Commit frequently
103+
- Keep CI green
104+
- Read the Codebase Patterns section in progress.txt before starting

0 commit comments

Comments
 (0)