prd-generator
Use when a structured PRD document is needed for the ralph loop — generates prd.json and progress.txt
Skill by thesyntaxninja
Chalk Labs
Need help deploying prd-generator?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/thesyntaxninja-prd-generator
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: documents
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/prd-generator
What's inside
- Skill name
prd-generator- Description
- Use when a structured PRD document is needed for the ralph loop — generates prd.json and progress.txt
- License
- MIT
- Instructions
- 106 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# PRD Generator
## Quick Reference
Generate the structured artifacts that drive the ralph loop: `prd.json` and `progress.txt`. The loop prompt lives in `.claude/ralph-loop.local.md` (written by the ralph-loop skill), not in a separate PROMPT.md file.
## When to Use
- Ralph loop has been approved by the user
- Stories have been decomposed via `story-decomposition`
- Artifacts need to be created in `.claude/plugin/ralph/`
## When NOT to Use
- Stories haven't been decomposed yet (do that first)
- User hasn't approved the training loop
- Task doesn't warrant a ralph loop
## Core Process
### Step 1: Create Directory Structure
```bash
mkdir -p .claude/plugin/ralph/notes
```
### Step 2: Generate `prd.json`
From the decomposed stories, create:
```json
{
"title": "Feature Name",
"goal": "One-sentence goal from the plan",
"created": "2026-03-04T00:00:00Z",
"stories": [
{
"id": 1,
"title": "Story title",
"goal": "What this delivers",
"dependencies": [],
"files": ["src/auth/store.ts", "src/auth/types.ts"],
"acceptance": [
"AuthStore exports useAuthStore hook",
"Login mutation updates user state",
"Tests pass: npm test -- auth/store"
],
"verification": "npm test -- --grep 'AuthStore'",
"passes": false
}
],
"totalStories": 5,
"completedStories": 0
}
```
Rules:
- Story IDs are sequential integers starting at 1
- Dependencies reference story IDs
- `verification` is a runnable command (exit 0 = pass)
- `passes` starts as `false` for all stories
- `files` lists the expected files to create or modify
### Step 3: Generate `progress.txt`
```
=== Training Loop: Feature Name ===
Goal: One-sentence goal
Stories: 0/5 complete
Started: 2026-03-04
[ ] Story 1: Title
Files: src/auth/store.ts, src/auth/types.ts
Verify: npm test -- --grep 'AuthStore'
[ ] Story 2: Title
Files: ...
Verify: ...
```
### Step 4: Verify Artifacts
After generating all files:
- [ ] `prd.json` is valid JSON
- [ ] All story verification commands are syntactically valid
- [ ] Dependencies form a DAG (no cycles)
- [ ] `.claude/plugin/ralph/` directory exists with `prd.json`, `progress.txt`, and `notes/`
Note: `PROMPT.md` and `status.json` are no longer generated. The loop prompt lives in
`.claude/ralph-loop.local.md` (created by the ralph-loop skill when it activates the
Stop hook). Completion is detected by the Stop hook reading `prd.json` directly.
## Anti-Patterns
| Anti-Pattern | Why It's Wrong |
|--------------|----------------|
| Verification commands that always pass | Stories will be marked done without actual work |
| Missing dependency declarations | Stories will fail because prerequisites aren't met |
| Vague acceptance criteria | The loop can't determine pass/fail |
| PROMPT.md without CLAUDE.md reference | Iterations won't follow project conventions |
## Chaining
REQUIRED: syntaxninja-dojo:ralph-loop (after artifacts are generated)From thesyntaxninja/syntaxninja-dojo, MIT.
More from thesyntaxninja/syntaxninja-dojo
- 0.443score
receiving-code-review
thesyntaxninja
Use when receiving code review feedback — requires technical verification of each suggestion before implementing, not blind agreement
SkillDFreshness: D★ 2Claude Code +9 - 0.443score
requesting-code-review
thesyntaxninja
Use when implementation is complete and a comprehensive code review is needed — dispatches parallel review agents and merges findings
SkillDFreshness: D★ 2Claude Code +9 - 0.443score
executing-plans
thesyntaxninja
Use when an approved plan exists and implementation should begin — executes steps sequentially with verification checkpoints
SkillDFreshness: D★ 2Claude Code +9 - 0.443score
propose-skill-update
thesyntaxninja
Use when 3+ distinct occurrences suggest a skill should be updated with a new trigger, anti-pattern, or verification step
SkillDFreshness: D★ 2Claude Code +9 - 0.443score
ralph-loop
thesyntaxninja
Use when task scope exceeds one context window and decomposes into independent pass/fail stories with clean iteration boundaries
SkillDFreshness: D★ 2Claude Code +9 - 0.443score
self-review
thesyntaxninja
Use when implementation is complete and verification has passed — dispatches the sensei agent for fresh-context quality review
SkillDFreshness: D★ 2Claude Code +9 - 0.443score
subagent-driven-development
thesyntaxninja
Use when executing an implementation plan with independent tasks that can be delegated to subagents within the current session
SkillDFreshness: D★ 2Claude Code +9 - 0.443score
verification-before-completion
thesyntaxninja
Use when about to claim work is complete, fixed, or passing — requires running verification commands and confirming output before making any success claims
SkillDFreshness: D★ 2Claude Code +9 - 0.442score
writing-plans
thesyntaxninja
Use when a task requires multiple steps and benefits from a structured plan before implementation begins
SkillDFreshness: D★ 2Claude Code +9 - 0.442score
brainstorming
thesyntaxninja
Use when requirements are unclear, ambiguous, or have multiple valid interpretations — before planning or implementing
SkillDFreshness: D★ 2Claude Code +9 - 0.442score
compound-docs
thesyntaxninja
Use when a hard problem was just solved and the solution should be captured as a learning for future reference
SkillDFreshness: D★ 2Claude Code +9 - 0.442score
story-decomposition
thesyntaxninja
Use when a large task needs to be broken into independent, verifiable stories with pass/fail acceptance criteria
SkillDFreshness: D★ 2Claude Code +9
Signals
- Stars
- 2
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Mar 4, 2026 (8 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from thesyntaxninja
- 0.443score
ralph-loop
thesyntaxninja
Use when task scope exceeds one context window and decomposes into independent pass/fail stories with clean iteration boundaries
SkillDFreshness: D★ 2Claude Code +9 - 0.443score
executing-plans
thesyntaxninja
Use when an approved plan exists and implementation should begin — executes steps sequentially with verification checkpoints
SkillDFreshness: D★ 2Claude Code +9 - 0.443score
requesting-code-review
thesyntaxninja
Use when implementation is complete and a comprehensive code review is needed — dispatches parallel review agents and merges findings
SkillDFreshness: D★ 2Claude Code +9 - 0.443score
propose-skill-update
thesyntaxninja
Use when 3+ distinct occurrences suggest a skill should be updated with a new trigger, anti-pattern, or verification step
SkillDFreshness: D★ 2Claude Code +9 - 0.443score
receiving-code-review
thesyntaxninja
Use when receiving code review feedback — requires technical verification of each suggestion before implementing, not blind agreement
SkillDFreshness: D★ 2Claude Code +9 - 0.443score
self-review
thesyntaxninja
Use when implementation is complete and verification has passed — dispatches the sensei agent for fresh-context quality review
SkillDFreshness: D★ 2Claude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get prd-generator running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
prd-generator skill. Agent Mart. https://agentmart.dev/skills/thesyntaxninja-prd-generator (last updated 2026-10-24)