skills/ralph/SKILL.md
PRD-driven persistence loop — keep working until all user stories pass with architect verification
npx skillsauth add sartoris-digital/pi-superpowers ralphInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Ralph is a PRD-driven persistence loop that keeps working until ALL user stories pass and are verified. It wraps ultrawork's parallel execution with structured story tracking and mandatory verification.
autopilotbrainstormingSave the PRD to docs/superpowers/prd.json:
{
"goal": "One-sentence description",
"stories": [
{
"id": "US-001",
"title": "Story title",
"acceptanceCriteria": [
"Function X returns Y when given Z",
"Test file exists at path P and passes",
"TypeScript compiles with no errors"
],
"passes": false
}
]
}
Check if docs/superpowers/prd.json exists. If not, create it.
CRITICAL: Write task-specific acceptance criteria. Generic criteria ("Implementation is complete") are useless. Replace them with concrete, testable criteria specific to this task.
Order stories by priority — foundational work first, dependent work later.
Read docs/superpowers/prd.json and select the highest-priority story with passes: false.
Dispatch to specialist agents at appropriate tiers:
subagent({
tasks: [
{ agent: "worker", tier: "standard", task: "Implement story: {story}" },
// parallel tasks if story has independent subtasks
]
})
If discovery reveals sub-tasks, add them as new stories to the PRD.
For EACH criterion in the story, verify it is met with fresh evidence:
When ALL criteria pass:
passes: true in docs/superpowers/prd.jsondocs/superpowers/progress.txt: what was implemented, files changed, learningsAre ALL stories marked passes: true? If not, return to Step 2.
When all stories pass, dispatch architect for verification:
subagent({
agent: "architect",
tier: "reasoning",
task: "MODE: verification\nAll stories complete. Verify: {acceptance_criteria}"
})
Verification tier:
20 files or security/architectural: reasoning tier (opus)
On architect approval:
/cancel skill to clean up stateOn rejection:
Good acceptance criteria (specific and testable):
npm run build — zero errors"Bad acceptance criteria (generic):
passes: true/cancel invoked for clean state cleanuptesting
Use when creating new skills, editing existing skills, or verifying skills work before deployment
development
Use when you have a spec or requirements for a multi-step task, before touching code
data-ai
Use when about to claim work is complete, fixed, or passing, before committing or creating PRs - requires running verification commands and confirming output before making any success claims; evidence before assertions always
tools
Use when starting any conversation - establishes how to find and use skills, requiring Skill tool invocation before ANY response including clarifying questions