Agent skill

Ralph Tui Create JSON

by subsy in subsy/ralph-tui

Convert PRDs to prd.json format for ralph-tui execution. An agent skill from subsy/ralph-tui.

MITAuto-check passedProduct & Project Management

Install Ralph Tui Create JSON

skills CLI
$ npx skills add subsy/ralph-tui --skill ralph-tui-create-json -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install subsy/ralph-tui ralph-tui-create-json --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/subsy/ralph-tui.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/ralph-tui-create-json .claude/skills/ralph-tui-create-json && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
ralph-tui-create-json
GitHub stars
2.5k
Used in
1 other repo
Token cost
~2.6k tokens
SKILL.md length
781 words
Files
1
Skills in repo
5
Repo updated
First seen
Licence
MIT

At a glance

Convert PRDs to prd.json format for ralph-tui execution. An agent skill from subsy/ralph-tui.

  • Works in 5 steps: Extract Quality Gates from the PRD's… → Parse user stories from the PRD → Append quality gates to each story's… → …
  • : create prd.json
  • SKILL.md covers The Job, Step 1: Extract Quality Gates, Output Format and CRITICAL: Schema Anti-Patterns…, plus 8 more sections
  • Calls pnpm and npm

What it does

Ralph Tui Create JSON is an agent skill from subsy/ralph-tui. Convert PRDs to prd.json format for ralph-tui execution. Creates JSON task files with user stories, acceptance criteria, and dependencies. Triggers on: create prd.json, convert to json, ralph json, create json tasks.

Its SKILL.md is about 2.6k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Product & Project Management, covering PRD writing, User stories and Quality gates. The licence is MIT.

When your agent uses it

  • : create prd.json
  • Convert to json
  • Create json tasks

Example prompts

  • “/ralph-tui-create-json”

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Extract Quality Gates from the PRD's "Quality Gates" section
  2. Parse user stories from the PRD
  3. Append quality gates to each story's acceptance criteria
  4. Set up dependencies between stories
  5. Output ready for ralph-tui run --prd

What it can do on your machine

Read from SKILL.md and the folder at commit af44322. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • pnpm
    • npm

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use pnpm and npm, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Ralph Tui Create JSON loads about 2.6k tokens when it runs. Until then it costs about 60 tokens; SKILL.md has 781 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~60
When it runs · the whole SKILL.md, loaded when a task matches
~2.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from subsy/ralph-tui at commit af44322, republished under its MIT licence (© subsy). 781 words, ~2,590 tokens.

Download SKILL.mdSave it as .claude/skills/ralph-tui-create-json/SKILL.md (or your agent's skills folder).
name
ralph-tui-create-json
description
Convert PRDs to prd.json format for ralph-tui execution. Creates JSON task files with user stories, acceptance criteria, and dependencies. Triggers on: create prd.json, convert to json, ralph json, create json tasks.

Ralph TUI - Create JSON Tasks

Converts PRDs to prd.json format for ralph-tui autonomous execution.

Note: This skill is bundled with ralph-tui's JSON tracker plugin. Future tracker plugins (Linear, GitHub Issues, etc.) will bundle their own task creation skills.

⚠️ CRITICAL: The output MUST be a FLAT JSON object with "name" and "userStories" at the ROOT level. DO NOT wrap content in a "prd" object or use "tasks" array. See "Schema Anti-Patterns" section below.


The Job

Take a PRD (markdown file or text) and create a prd.json file:

  1. Extract Quality Gates from the PRD's "Quality Gates" section
  2. Parse user stories from the PRD
  3. Append quality gates to each story's acceptance criteria
  4. Set up dependencies between stories
  5. Output ready for ralph-tui run --prd <path>

Step 1: Extract Quality Gates

Look for the "Quality Gates" section in the PRD:

markdown
## Quality Gates

These commands must pass for every user story:
- `pnpm typecheck` - Type checking
- `pnpm lint` - Linting

For UI stories, also include:
- Verify in browser using dev-browser skill

Extract:

  • Universal gates: Commands that apply to ALL stories (e.g., pnpm typecheck)
  • UI gates: Commands that apply only to UI stories (e.g., browser verification)

If no Quality Gates section exists: Ask the user what commands should pass, or use a sensible default like npm run typecheck.


Output Format

The JSON file MUST be a FLAT object at the root level:

json
{
  "name": "[Project name from PRD or directory]",
  "branchName": "ralph/[feature-name-kebab-case]",
  "description": "[Feature description from PRD]",
  "userStories": [
    {
      "id": "US-001",
      "title": "[Story title]",
      "description": "As a [user], I want [feature] so that [benefit]",
      "acceptanceCriteria": [
        "Criterion 1 from PRD",
        "Criterion 2 from PRD",
        "pnpm typecheck passes",
        "pnpm lint passes"
      ],
      "priority": 1,
      "passes": false,
      "notes": "",
      "dependsOn": []
    },
    {
      "id": "US-002",
      "title": "[UI Story that depends on US-001]",
      "description": "...",
      "acceptanceCriteria": [
        "...",
        "pnpm typecheck passes",
        "pnpm lint passes",
        "Verify in browser using dev-browser skill"
      ],
      "priority": 2,
      "passes": false,
      "notes": "",
      "dependsOn": ["US-001"]
    }
  ]
}

CRITICAL: Schema Anti-Patterns (DO NOT USE)

The following patterns are INVALID and will cause validation errors:

❌ WRONG: Wrapper object
json
{
  "prd": {
    "name": "...",
    "userStories": [...]
  }
}

This wraps everything in a "prd" object. DO NOT DO THIS. The "name" and "userStories" fields must be at the ROOT level.

❌ WRONG: Using "tasks" instead of "userStories"
json
{
  "name": "...",
  "tasks": [...]
}

The array is called "userStories", not "tasks".

❌ WRONG: Complex nested structures
json
{
  "metadata": {...},
  "overview": {...},
  "migration_strategy": {
    "phases": [...]
  }
}

Even if the PRD describes phases/milestones/sprints, you MUST flatten these into a single "userStories" array.

❌ WRONG: Using "status" instead of "passes"
json
{
  "userStories": [{
    "id": "US-001",
    "status": "open"  // WRONG!
  }]
}

Use "passes": false for incomplete stories, "passes": true for completed.

✅ CORRECT: Flat structure at root
json
{
  "name": "Android Kotlin Migration",
  "branchName": "ralph/kotlin-migration",
  "userStories": [
    {"id": "US-001", "title": "Create Scraper interface", "passes": false, "dependsOn": []},
    {"id": "US-002", "title": "Implement WeebCentralScraper", "passes": false, "dependsOn": ["US-001"]}
  ]
}

Story Size: The #1 Rule

Each story must be completable in ONE ralph-tui iteration (~one agent context window).

Ralph-tui spawns a fresh agent instance per iteration with no memory of previous work. If a story is too big, the agent runs out of context before finishing.

Right-sized stories:
  • Add a database column + migration
  • Add a UI component to an existing page
  • Update a server action with new logic
  • Add a filter dropdown to a list
Too big (split these):
  • "Build the entire dashboard" → Split into: schema, queries, UI components, filters
  • "Add authentication" → Split into: schema, middleware, login UI, session handling
  • "Refactor the API" → Split into one story per endpoint or pattern

Rule of thumb: If you can't describe the change in 2-3 sentences, it's too big.


Dependencies with dependsOn

Use the dependsOn array to specify which stories must complete first:

json
{
  "id": "US-002",
  "title": "Create API endpoints",
  "dependsOn": ["US-001"],  // Won't be selected until US-001 passes
  ...
}

Ralph-tui will:

  • Show US-002 as "blocked" until US-001 completes
  • Never select US-002 for execution while US-001 is open
  • Include "Prerequisites: US-001" in the prompt when working on US-002

Correct dependency order:

  1. Schema/database changes (no dependencies)
  2. Backend logic (depends on schema)
  3. UI components (depends on backend)
  4. Integration/polish (depends on UI)

Show full SKILL.md (294 more words)Show less

Acceptance Criteria: Quality Gates + Story-Specific

Each story's acceptance criteria should include:

  1. Story-specific criteria from the PRD (what this story accomplishes)
  2. Quality gates from the PRD's Quality Gates section (appended at the end)
Good criteria (verifiable):
  • "Add status column to tasks table with default 'open'"
  • "Filter dropdown has options: All, Open, Closed"
  • "Clicking delete shows confirmation dialog"
Bad criteria (vague):
  • ❌ "Works correctly"
  • ❌ "User can do X easily"
  • ❌ "Good UX"
  • ❌ "Handles edge cases"

Conversion Rules

  1. Extract Quality Gates from PRD first
  2. Each user story → one JSON entry
  3. IDs: Sequential (US-001, US-002, etc.)
  4. Priority: Based on dependency order (1 = highest)
  5. dependsOn: Array of story IDs this story requires
  6. All stories: passes: false and empty notes
  7. branchName: Derive from feature name, kebab-case, prefixed with ralph/
  8. Acceptance criteria: Story criteria + quality gates appended
  9. UI stories: Also append UI-specific gates (browser verification)

Output Location

Default: ./tasks/prd.json (alongside the PRD markdown files)

This keeps all PRD-related files together in the tasks/ directory.

Or specify a different path - ralph-tui will use it with:

bash
ralph-tui run --prd ./path/to/prd.json

Example

Input PRD:

markdown
# PRD: Task Priority System

Add priority levels to tasks.

## Quality Gates

These commands must pass for every user story:
- `pnpm typecheck` - Type checking
- `pnpm lint` - Linting

For UI stories, also include:
- Verify in browser using dev-browser skill

## User Stories

### US-001: Add priority field to database
**Description:** As a developer, I need to store task priority.

**Acceptance Criteria:**
- [ ] Add priority column: 1-4 (default 2)
- [ ] Migration runs successfully

### US-002: Display priority badge on task cards
**Description:** As a user, I want to see task priority at a glance.

**Acceptance Criteria:**
- [ ] Badge shows P1/P2/P3/P4 with colors
- [ ] Badge visible without hovering

### US-003: Add priority filter dropdown
**Description:** As a user, I want to filter tasks by priority.

**Acceptance Criteria:**
- [ ] Filter dropdown: All, P1, P2, P3, P4
- [ ] Filter persists in URL

Output prd.json:

json
{
  "name": "Task Priority System",
  "branchName": "ralph/task-priority",
  "description": "Add priority levels to tasks",
  "userStories": [
    {
      "id": "US-001",
      "title": "Add priority field to database",
      "description": "As a developer, I need to store task priority.",
      "acceptanceCriteria": [
        "Add priority column: 1-4 (default 2)",
        "Migration runs successfully",
        "pnpm typecheck passes",
        "pnpm lint passes"
      ],
      "priority": 1,
      "passes": false,
      "notes": "",
      "dependsOn": []
    },
    {
      "id": "US-002",
      "title": "Display priority badge on task cards",
      "description": "As a user, I want to see task priority at a glance.",
      "acceptanceCriteria": [
        "Badge shows P1/P2/P3/P4 with colors",
        "Badge visible without hovering",
        "pnpm typecheck passes",
        "pnpm lint passes",
        "Verify in browser using dev-browser skill"
      ],
      "priority": 2,
      "passes": false,
      "notes": "",
      "dependsOn": ["US-001"]
    },
    {
      "id": "US-003",
      "title": "Add priority filter dropdown",
      "description": "As a user, I want to filter tasks by priority.",
      "acceptanceCriteria": [
        "Filter dropdown: All, P1, P2, P3, P4",
        "Filter persists in URL",
        "pnpm typecheck passes",
        "pnpm lint passes",
        "Verify in browser using dev-browser skill"
      ],
      "priority": 3,
      "passes": false,
      "notes": "",
      "dependsOn": ["US-002"]
    }
  ]
}

Running with ralph-tui

After creating prd.json:

bash
ralph-tui run --prd ./tasks/prd.json

Ralph-tui will:

  1. Load stories from prd.json
  2. Select the highest-priority story with passes: false and no blocking dependencies
  3. Generate a prompt with story details + acceptance criteria
  4. Run the agent to implement the story
  5. Mark passes: true on completion
  6. Repeat until all stories pass

Checklist Before Saving

  • Extracted Quality Gates from PRD (or asked user if missing)
  • Each story completable in one iteration
  • Stories ordered by dependency (schema → backend → UI)
  • dependsOn correctly set for each story
  • Quality gates appended to every story's acceptance criteria
  • UI stories have browser verification (if specified in Quality Gates)
  • Acceptance criteria are verifiable (not vague)
  • No circular dependencies

© subsy, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/ralph-tui-create-json of subsy/ralph-tui.

Open the folder on GitHubat commit af44322

Used in 1 other repository

We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in subsy/ralph-tui, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Ralph Tui Create JSON next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Ralph Tui Create JSON compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Ralph Tui Create JSON this skillsubsy/ralph-tui2.5k1 repos~2.6kAutomated safety check: PassMIT
Sdd Authoringmagnus919/hermes-profiles278—~1.4kAutomated safety check: PassMIT
To Prdywwynm/EverythingDone14411 repos~777Automated safety check: PassGPL-3.0
Ralphjulianromli/opencode-template1441 repos~1.1kAutomated safety check: PassNone
Use Case Writerphucnt-bazone-vietnam/use-case-writer141—~4.1kAutomated safety check: PassMIT
Project Planneradrianpuiu/claude-skills-marketplace1001 repos~6kAutomated safety check: PassNone

Similar skills

  • Sdd Authoring

    magnus919/hermes-profiles

    Specification authoring for AI-native SDD — writes formal specifications in structured formats (Gherkin, user stories, acceptance criteria), enforces spec quality gates, and produces…

    278 GitHub stars~1.4k tokensUpdated 3 mo ago
    Product & Project ManagementAuto-check passed
  • To Prd

    ywwynm/EverythingDone

    Turn the current conversation context into a PRD and publish it to the project issue tracker.

    144 GitHub starsUsed in 11 repos~777 tokens
    Product & Project ManagementAuto-check passed
  • Ralph

    julianromli/opencode-template

    Autonomous agent loop for completing features. An agent skill from julianromli/opencode-template.

    144 GitHub starsUsed in 1 repo~1.1k tokens
    Product & Project ManagementAuto-check passed
  • Use Case Writer

    phucnt-bazone-vietnam/use-case-writer

    Generate Use Case specifications in English Markdown following the IT BA standard 13-field template (Karl Wiegers / IIBA).

    141 GitHub stars~4.1k tokensUpdated 4 mo ago
    Product & Project ManagementAuto-check passed
  • Project Planner

    adrianpuiu/claude-skills-marketplace

    Comprehensive project planning and documentation generator for software projects.

    100 GitHub starsUsed in 1 repo~6k tokens
    Product & Project ManagementAuto-check passed
  • New Feature

    PolymathWizard/BHIL-AI-First-Development-Toolkit

    Create a complete feature artifact scaffold — PRD slice, technical spec, and task breakdown.

    132 GitHub stars~1.1k tokensUpdated 6 mo ago
    Product & Project ManagementAuto-check passed

More from subsy/ralph-tui

  • Ralph Tui Create Beads

    subsy/ralph-tui

    Convert PRDs to beads for ralph-tui execution. An agent skill from subsy/ralph-tui.

    2.5k GitHub starsUsed in 1 repo~2.6k tokens
    Auto-check passed
  • Convert PRDs to beads for ralph-tui execution using beads-rust (br CLI).

    2.5k GitHub starsUsed in 1 repo~2.8k tokens
    Auto-check passed
  • Ralph Tui Prd

    subsy/ralph-tui

    Generate a Product Requirements Document (PRD) for ralph-tui task orchestration.

    2.5k GitHub starsUsed in 1 repo~2.5k tokens
    Auto-check passed
  • Testing Tui Runtime

    subsy/ralph-tui

    How to drive the ralph-tui TUI (run, watch mode, pause/quit paths) end-to-end in a real terminal with a fake agent and a scratch beads tracker, without AI credentials.

    2.5k GitHub stars~2.6k tokensUpdated 1 mo ago
    Auto-check passed

Questions about Ralph Tui Create JSON

What does Ralph Tui Create JSON do?

Convert PRDs to prd.json format for ralph-tui execution. An agent skill from subsy/ralph-tui. Ralph Tui Create JSON is an agent skill from subsy/ralph-tui.json format for ralph-tui execution.

When should I use Ralph Tui Create JSON?

Ralph Tui Create JSON fits situations like: : create prd.json; convert to json; create json tasks.

How do I install Ralph Tui Create JSON in Claude Code?

Run `npx skills add subsy/ralph-tui --skill ralph-tui-create-json -a claude-code`. Or copy the skill folder (skills/ralph-tui-create-json in subsy/ralph-tui) into .claude/skills/ralph-tui-create-json in your project. Claude Code loads it when a task matches its description.

How do I install Ralph Tui Create JSON in Codex?

Run `npx skills add subsy/ralph-tui --skill ralph-tui-create-json -a codex`. Or copy the skill folder (skills/ralph-tui-create-json in subsy/ralph-tui) into .agents/skills/ralph-tui-create-json in your project. Codex loads it when a task matches its description.

Can I use Ralph Tui Create JSON in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add subsy/ralph-tui --skill ralph-tui-create-json -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/ralph-tui-create-json, .gemini/skills/ralph-tui-create-json, .github/skills/ralph-tui-create-json and .opencode/skills/ralph-tui-create-json in your project.

What does Ralph Tui Create JSON need to run?

Going by SKILL.md and its folder, Ralph Tui Create JSON needs the command-line tools its instructions call (pnpm and npm).

Does Ralph Tui Create JSON access the network?

SKILL.md contains no URLs. Its commands use npm, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Ralph Tui Create JSON safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Ralph Tui Create JSON use?

Ralph Tui Create JSON is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Ralph Tui Create JSON use?

About 2.6k tokens (SKILL.md is roughly 10k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Ralph Tui Create JSON?

Skills that share tags, products or a category with Ralph Tui Create JSON: Sdd Authoring (magnus919/hermes-profiles, 278 stars), To Prd (ywwynm/EverythingDone, 144 stars), Ralph (julianromli/opencode-template, 144 stars) and Use Case Writer (phucnt-bazone-vietnam/use-case-writer, 141 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Ralph Tui Create JSON?

subsy (a GitHub user) maintains it in subsy/ralph-tui, which has 2,452 GitHub stars. The repository holds 5 skills in this directory. The repository was last updated on September 4, 2026.

Source: subsy/ralph-tui on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.