Skip to content

Commit 869b825

Browse files
authored
Merge pull request #136 from Miyamura80/chore/agnostic-skills-2640991900897707265
Make PRD and Ralph skills language agnostic
2 parents b32e16b + 3da2104 commit 869b825

2 files changed

Lines changed: 24 additions & 34 deletions

File tree

.claude/skills/prd/SKILL.md

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -74,13 +74,11 @@ Each story should be small enough to implement in one focused session.
7474
**Acceptance Criteria:**
7575
- [ ] Specific verifiable criterion
7676
- [ ] Another criterion
77-
- [ ] Typecheck/lint passes
78-
- [ ] **[UI stories only]** Verify in browser using dev-browser skill
77+
- [ ] Lint/Static analysis passes
7978
```
8079

8180
**Important:**
8281
- Acceptance criteria must be verifiable, not vague. "Works correctly" is bad. "Button shows confirmation dialog before deleting" is good.
83-
- **For any story with UI changes:** Always include "Verify in browser using dev-browser skill" as acceptance criteria. This ensures visual verification of frontend work.
8482

8583
### 4. Functional Requirements
8684
Numbered list of specific functionalities:
@@ -150,16 +148,15 @@ Add priority levels to tasks so users can focus on what matters most. Tasks can
150148
**Acceptance Criteria:**
151149
- [ ] Add priority column to tasks table: 'high' | 'medium' | 'low' (default 'medium')
152150
- [ ] Generate and run migration successfully
153-
- [ ] Typecheck passes
151+
- [ ] Lint/Static analysis passes
154152

155153
### US-002: Display priority indicator on task cards
156154
**Description:** As a user, I want to see task priority at a glance so I know what needs attention first.
157155

158156
**Acceptance Criteria:**
159157
- [ ] Each task card shows colored priority badge (red=high, yellow=medium, gray=low)
160158
- [ ] Priority visible without hovering or clicking
161-
- [ ] Typecheck passes
162-
- [ ] Verify in browser using dev-browser skill
159+
- [ ] Lint/Static analysis passes
163160

164161
### US-003: Add priority selector to task edit
165162
**Description:** As a user, I want to change a task's priority when editing it.
@@ -168,8 +165,7 @@ Add priority levels to tasks so users can focus on what matters most. Tasks can
168165
- [ ] Priority dropdown in task edit modal
169166
- [ ] Shows current priority as selected
170167
- [ ] Saves immediately on selection change
171-
- [ ] Typecheck passes
172-
- [ ] Verify in browser using dev-browser skill
168+
- [ ] Lint/Static analysis passes
173169

174170
### US-004: Filter tasks by priority
175171
**Description:** As a user, I want to filter the task list to see only high-priority items when I'm focused.
@@ -178,8 +174,7 @@ Add priority levels to tasks so users can focus on what matters most. Tasks can
178174
- [ ] Filter dropdown with options: All | High | Medium | Low
179175
- [ ] Filter persists in URL params
180176
- [ ] Empty state message when no tasks match filter
181-
- [ ] Typecheck passes
182-
- [ ] Verify in browser using dev-browser skill
177+
- [ ] Lint/Static analysis passes
183178

184179
## Functional Requirements
185180

.claude/skills/ralph/SKILL.md

Lines changed: 19 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ Take a PRD (markdown file or text) and convert it to `prd.json` in your ralph di
2525
"acceptanceCriteria": [
2626
"Criterion 1",
2727
"Criterion 2",
28-
"Typecheck passes"
28+
"Lint/Static analysis passes"
2929
],
3030
"priority": 1,
3131
"passes": false,
@@ -76,7 +76,7 @@ Each criterion must be something Ralph can CHECK, not something vague.
7676
- "Add `status` column to tasks table with default 'pending'"
7777
- "Filter dropdown has options: All, Active, Completed"
7878
- "Clicking delete shows confirmation dialog"
79-
- "Typecheck passes"
79+
- "Lint/Static analysis passes"
8080
- "Tests pass"
8181

8282
### Bad criteria (vague):
@@ -87,20 +87,19 @@ Each criterion must be something Ralph can CHECK, not something vague.
8787

8888
### Always include as final criterion:
8989
```
90-
"Typecheck passes"
90+
"Lint/Static analysis passes"
9191
```
9292

93-
For stories with testable logic, also include:
93+
For stories with testable logic, include:
9494
```
9595
"Tests pass"
9696
```
9797

98-
### For stories that change UI, also include:
98+
For code quality, include:
9999
```
100-
"Verify in browser using dev-browser skill"
100+
"Lint/Static analysis passes"
101101
```
102102

103-
Frontend stories are NOT complete until visually verified. Ralph will use the dev-browser skill to navigate to the page, interact with the UI, and confirm changes work.
104103

105104
## Conversion Rules
106105

@@ -109,25 +108,25 @@ Frontend stories are NOT complete until visually verified. Ralph will use the de
109108
3. **Priority**: Based on dependency order, then document order
110109
4. **All stories**: `passes: false` and empty `notes`
111110
5. **branchName**: Derive from feature name, kebab-case, prefixed with `ralph/`
112-
6. **Always add**: "Typecheck passes" to every story's acceptance criteria
113-
7. **Final Story**: Always include a final story for documentation (README, Makefile) and verification.
111+
6. **Always add**: "Lint/Static analysis passes" to every story's acceptance criteria
112+
7. **Final Story**: Always include a final story for documentation (README, build configuration) and verification.
114113

115114
## The Final Documentation Story
116115

117116
**Every** prd.json must end with a story dedicated to documentation and cleanup.
118117

119118
**Requirements for the final story:**
120119
- Update `README.md` (if necessary) to document new features
121-
- Update `Makefile` (if necessary) with new commands
120+
- Update build/test configuration (if necessary) with new commands
122121
- Document how to execute and test the new code
123122
- Verify all tests and typechecks pass
124123

125124
**Example acceptance criteria:**
126125
```
127126
"Update README.md with instructions for [feature]",
128-
"Update Makefile if new build/test steps are needed",
127+
"Update build/test configuration if needed",
129128
"Document how to run and test the changes",
130-
"Typecheck passes",
129+
"Lint/Static analysis passes",
131130
"All tests pass"
132131
```
133132

@@ -177,7 +176,7 @@ Add ability to mark tasks with different statuses.
177176
"acceptanceCriteria": [
178177
"Add status column: 'pending' | 'in_progress' | 'done' (default 'pending')",
179178
"Generate and run migration successfully",
180-
"Typecheck passes"
179+
"Lint/Static analysis passes"
181180
],
182181
"priority": 1,
183182
"passes": false,
@@ -190,8 +189,7 @@ Add ability to mark tasks with different statuses.
190189
"acceptanceCriteria": [
191190
"Each task card shows colored status badge",
192191
"Badge colors: gray=pending, blue=in_progress, green=done",
193-
"Typecheck passes",
194-
"Verify in browser using dev-browser skill"
192+
"Lint/Static analysis passes"
195193
],
196194
"priority": 2,
197195
"passes": false,
@@ -205,8 +203,7 @@ Add ability to mark tasks with different statuses.
205203
"Each row has status dropdown or toggle",
206204
"Changing status saves immediately",
207205
"UI updates without page refresh",
208-
"Typecheck passes",
209-
"Verify in browser using dev-browser skill"
206+
"Lint/Static analysis passes"
210207
],
211208
"priority": 3,
212209
"passes": false,
@@ -219,8 +216,7 @@ Add ability to mark tasks with different statuses.
219216
"acceptanceCriteria": [
220217
"Filter dropdown: All | Pending | In Progress | Done",
221218
"Filter persists in URL params",
222-
"Typecheck passes",
223-
"Verify in browser using dev-browser skill"
219+
"Lint/Static analysis passes"
224220
],
225221
"priority": 4,
226222
"passes": false,
@@ -232,9 +228,9 @@ Add ability to mark tasks with different statuses.
232228
"description": "Ensure code is well-documented and buildable.",
233229
"acceptanceCriteria": [
234230
"Update README.md with status feature instructions",
235-
"Update Makefile if necessary",
231+
"Update build configuration if necessary",
236232
"Document how to test status filtering",
237-
"Typecheck passes",
233+
"Lint/Static analysis passes",
238234
"All tests pass"
239235
],
240236
"priority": 5,
@@ -265,8 +261,7 @@ Before writing prd.json, verify:
265261
- [ ] **Previous run archived** (if prd.json exists with different branchName, archive it first)
266262
- [ ] Each story is completable in one iteration (small enough)
267263
- [ ] Stories are ordered by dependency (schema to backend to UI)
268-
- [ ] Every story has "Typecheck passes" as criterion
269-
- [ ] UI stories have "Verify in browser using dev-browser skill" as criterion
264+
- [ ] Every story has "Lint/Static analysis passes" as criterion
270265
- [ ] Acceptance criteria are verifiable (not vague)
271266
- [ ] No story depends on a later story
272-
- [ ] Final story covers README, Makefile, and documentation
267+
- [ ] Final story covers README, build configuration, and documentation

0 commit comments

Comments
 (0)