Problem
After using the Ralph skills (via Claude Code marketplace), the generated files end up in locations where ralph.sh can't find them.
1. Ralph converter skill (/ralph) puts prd.json in the wrong place
The converter skill creates prd.json without specifying it must live alongside ralph.sh. But ralph.sh resolves paths relative to its own directory:
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PRD_FILE="$SCRIPT_DIR/prd.json"
PROGRESS_FILE="$SCRIPT_DIR/progress.txt"So if you followed Option 1 and copied ralph.sh to scripts/ralph/, the converter skill should tell you to save prd.json to scripts/ralph/prd.json — not to the project root or tasks/.
Same issue for progress.txt.
2. PRD skill (/prd) hardcodes tasks/ as output directory
The PRD skill says:
Location:
tasks/Filename:prd-[feature-name].md(kebab-case)
This is a convention choice, but it's not mentioned in the README and may not match a project's existing documentation structure (e.g., docs/tasks/). Minor issue compared to #1.
3. README presents Option 1 as optional when it's required
The README lists three setup options as if they're alternatives:
- Option 1: Copy
ralph.sh+CLAUDE.md/prompt.mdto your project - Option 2: Install skills globally
- Option 3: Use Claude Code Marketplace
But Option 1 provides the execution engine (ralph.sh + prompt template), while Options 2/3 provide the skills (/prd and /ralph commands). You need Option 1 plus one of Options 2/3. They're not interchangeable.
Suggested fix
- In the Ralph converter skill: explicitly state that
prd.jsonandprogress.txtmust be saved to the same directory asralph.sh(e.g.,scripts/ralph/) - In the README: clarify that Option 1 is a prerequisite, not an alternative to Options 2/3
I’ve fixed this here: https://github.com/snarktank/ralph/pull/143