ralph-tui-create-beads
Convert PRDs to beads for ralph-tui execution. Creates an epic with child beads for each user story. Use when you have a PRD and want to use ralph-tui with beads as the task source. Triggers on: create beads, convert prd to beads, beads for ralph, ralph beads.
Best use case
ralph-tui-create-beads is best used when you need a repeatable AI agent workflow instead of a one-off prompt. It is especially useful for teams working in multi. Convert PRDs to beads for ralph-tui execution. Creates an epic with child beads for each user story. Use when you have a PRD and want to use ralph-tui with beads as the task source. Triggers on: create beads, convert prd to beads, beads for ralph, ralph beads.
Convert PRDs to beads for ralph-tui execution. Creates an epic with child beads for each user story. Use when you have a PRD and want to use ralph-tui with beads as the task source. Triggers on: create beads, convert prd to beads, beads for ralph, ralph beads.
Users should expect a more consistent workflow output, faster repeated execution, and less time spent rewriting prompts from scratch.
Practical example
Example input
Use the "ralph-tui-create-beads" skill to help with this workflow task. Context: Convert PRDs to beads for ralph-tui execution. Creates an epic with child beads for each user story. Use when you have a PRD and want to use ralph-tui with beads as the task source. Triggers on: create beads, convert prd to beads, beads for ralph, ralph beads.
Example output
A structured workflow result with clearer steps, more consistent formatting, and an output that is easier to reuse in the next run.
When to use this skill
- Use this skill when you want a reusable workflow rather than writing the same prompt again and again.
When not to use this skill
- Do not use this when you only need a one-off answer and do not need a reusable workflow.
- Do not use it if you cannot install or maintain the related files, repository context, or supporting tools.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/ralph-tui-create-beads/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How ralph-tui-create-beads Compares
| Feature / Agent | ralph-tui-create-beads | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Convert PRDs to beads for ralph-tui execution. Creates an epic with child beads for each user story. Use when you have a PRD and want to use ralph-tui with beads as the task source. Triggers on: create beads, convert prd to beads, beads for ralph, ralph beads.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Ralph TUI - Create Beads Converts PRDs to beads (epic + child tasks) for ralph-tui autonomous execution. > **Note:** This skill is bundled with ralph-tui's Beads tracker plugin. Future tracker plugins (Linear, GitHub Issues, etc.) will bundle their own task creation skills. --- ## The Job Take a PRD (markdown file or text) and create beads in `.beads/beads.jsonl`: 1. **Extract Quality Gates** from the PRD's "Quality Gates" section 2. Create an **epic** bead for the feature 3. Create **child beads** for each user story (with quality gates appended) 4. Set up **dependencies** between beads (schema → backend → UI) 5. Output ready for `ralph-tui run --tracker beads` --- ## 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 Beads use `bd create` command with **HEREDOC syntax** to safely handle special characters: ```bash # Create epic (link back to source PRD) bd create --type=epic \ --title="[Feature Name]" \ --description="$(cat <<'EOF' [Feature description from PRD] EOF )" \ --external-ref="prd:./tasks/feature-name-prd.md" # Create child bead (with quality gates in acceptance criteria) bd create \ --parent=EPIC_ID \ --title="[Story Title]" \ --description="$(cat <<'EOF' [Story description with acceptance criteria INCLUDING quality gates] EOF )" \ --priority=[1-4] ``` > **CRITICAL:** Always use `<<'EOF'` (single-quoted) for the HEREDOC delimiter. This prevents shell interpretation of backticks, `$variables`, and `()` in descriptions. --- ## 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. --- ## Story Ordering: Dependencies First Stories execute in dependency order. Earlier stories must not depend on later ones. **Correct order:** 1. Schema/database changes (migrations) 2. Server actions / backend logic 3. UI components that use the backend 4. Dashboard/summary views that aggregate data **Wrong order:** 1. ❌ UI component (depends on schema that doesn't exist yet) 2. ❌ Schema change --- ## Dependencies with `bd dep add` Use the `bd dep add` command to specify which beads must complete first: ```bash # Create the beads first bd create --parent=epic-123 --title="US-001: Add schema" ... bd create --parent=epic-123 --title="US-002: Create API" ... bd create --parent=epic-123 --title="US-003: Build UI" ... # Then add dependencies (issue depends-on blocker) bd dep add ralph-tui-002 ralph-tui-001 # US-002 depends on US-001 bd dep add ralph-tui-003 ralph-tui-002 # US-003 depends on US-002 ``` **Syntax:** `bd dep add <issue> <depends-on>` — the issue depends on (is blocked by) depends-on. ralph-tui will: - Show blocked beads as "blocked" until dependencies complete - Never select a bead for execution while its dependencies are open - Include dependency context in the prompt when working on a bead **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) --- ## Acceptance Criteria: Quality Gates + Story-Specific Each bead's description should include acceptance criteria with: 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 `investorType` column to investor table with default 'cold'" - "Filter dropdown has options: All, Cold, Friend" - "Clicking toggle 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 bead** 3. **First story**: No dependencies (creates foundation) 4. **Subsequent stories**: Depend on their predecessors (UI depends on backend, etc.) 5. **Priority**: Based on dependency order, then document order (0=critical, 2=medium, 4=backlog) 6. **All stories**: `status: "open"` 7. **Acceptance criteria**: Story criteria + quality gates appended 8. **UI stories**: Also append UI-specific gates (browser verification) --- ## Splitting Large PRDs If a PRD has big features, split them: **Original:** > "Add friends outreach track with different messaging" **Split into:** 1. US-001: Add investorType field to database 2. US-002: Add type toggle to investor list UI 3. US-003: Create friend-specific phase progression logic 4. US-004: Create friend message templates 5. US-005: Wire up task generation for friends 6. US-006: Add filter by type 7. US-007: Update new investor form 8. US-008: Update dashboard counts Each is one focused change that can be completed and verified independently. --- ## Example **Input PRD:** ```markdown # PRD: Friends Outreach Add ability to mark investors as "friends" for warm outreach. ## 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 investorType field to investor table **Description:** As a developer, I need to categorize investors as 'cold' or 'friend'. **Acceptance Criteria:** - [ ] Add investorType column: 'cold' | 'friend' (default 'cold') - [ ] Generate and run migration successfully ### US-002: Add type toggle to investor list rows **Description:** As Ryan, I want to toggle investor type directly from the list. **Acceptance Criteria:** - [ ] Each row has Cold | Friend toggle - [ ] Switching shows confirmation dialog - [ ] On confirm: updates type in database ### US-003: Filter investors by type **Description:** As Ryan, I want to filter the list to see just friends or cold. **Acceptance Criteria:** - [ ] Filter dropdown: All | Cold | Friend - [ ] Filter persists in URL params ``` **Output beads:** ```bash # Create epic (link back to source PRD) bd create --type=epic \ --title="Friends Outreach Track" \ --description="$(cat <<'EOF' Warm outreach for deck feedback EOF )" \ --external-ref="prd:./tasks/friends-outreach-prd.md" # US-001: No deps (first - creates schema) bd create --parent=ralph-tui-abc \ --title="US-001: Add investorType field to investor table" \ --description="$(cat <<'EOF' As a developer, I need to categorize investors as 'cold' or 'friend'. ## Acceptance Criteria - [ ] Add investorType column: 'cold' | 'friend' (default 'cold') - [ ] Generate and run migration successfully - [ ] pnpm typecheck passes - [ ] pnpm lint passes EOF )" \ --priority=1 # US-002: UI story (gets browser verification too) bd create --parent=ralph-tui-abc \ --title="US-002: Add type toggle to investor list rows" \ --description="$(cat <<'EOF' As Ryan, I want to toggle investor type directly from the list. ## Acceptance Criteria - [ ] Each row has Cold | Friend toggle - [ ] Switching shows confirmation dialog - [ ] On confirm: updates type in database - [ ] pnpm typecheck passes - [ ] pnpm lint passes - [ ] Verify in browser using dev-browser skill EOF )" \ --priority=2 # Add dependency: US-002 depends on US-001 bd dep add ralph-tui-002 ralph-tui-001 # US-003: UI story bd create --parent=ralph-tui-abc \ --title="US-003: Filter investors by type" \ --description="$(cat <<'EOF' As Ryan, I want to filter the list to see just friends or cold. ## Acceptance Criteria - [ ] Filter dropdown: All | Cold | Friend - [ ] Filter persists in URL params - [ ] pnpm typecheck passes - [ ] pnpm lint passes - [ ] Verify in browser using dev-browser skill EOF )" \ --priority=3 # Add dependency: US-003 depends on US-002 bd dep add ralph-tui-003 ralph-tui-002 ``` --- ## Output Location Beads are written to: `.beads/beads.jsonl` After creation, run ralph-tui: ```bash # Work on a specific epic ralph-tui run --tracker beads --epic ralph-tui-abc # Or let it pick the best task automatically ralph-tui run --tracker beads ``` ralph-tui will: 1. Work on beads within the specified epic (or select the best available task) 2. Close each bead when complete 3. Close the epic when all children are done 4. Output `<promise>COMPLETE</promise>` when epic is done --- ## Checklist Before Creating Beads - [ ] Extracted Quality Gates from PRD (or asked user if missing) - [ ] Each story is completable in one iteration (small enough) - [ ] Stories are ordered by dependency (schema → backend → UI) - [ ] Quality gates appended to every bead's acceptance criteria - [ ] UI stories have browser verification (if specified in Quality Gates) - [ ] Acceptance criteria are verifiable (not vague) - [ ] No story depends on a later story (only earlier stories) - [ ] Dependencies added with `bd dep add` after creating beads
Related Skills
create-adaptable-composable
Create a library-grade Vue composable that accepts maybe-reactive inputs (MaybeRef / MaybeRefOrGetter) so callers can pass a plain value, ref, or getter. Normalize inputs with toValue()/toRef() inside reactive effects (watch/watchEffect) to keep behavior predictable and reactive. Use this skill when user asks for creating adaptable or reusable composables.
ralph
Specification-first AI development powered by Ouroboros. Socratic questioning exposes hidden assumptions before writing code. Evolutionary loop (Interview → Seed → Execute → Evaluate → Evolve) runs until ontology converges. Ralph mode persists until verification passes — the boulder never stops. Use when user says "ralph", "ooo", "don't stop", "must complete", "until it works", "keep going", "interview me", or "stop prompting".
ralph-tui-prd
Generate a Product Requirements Document (PRD) for ralph-tui task orchestration. Creates PRDs with user stories that can be converted to beads issues or prd.json for automated execution. Triggers on: create a prd, write prd for, plan this feature, requirements for, spec out.
ralph-tui-create-json
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-beads-rust
Convert PRDs to beads for ralph-tui execution using beads-rust (br CLI). Creates an epic with child beads for each user story. Use when you have a PRD and want to use ralph-tui with beads-rust as the task source. Triggers on: create beads, convert prd to beads, beads for ralph, ralph beads, br beads.
create-skill-file
Guides Claude in creating well-structured SKILL.md files following best practices. Provides clear guidelines for naming, structure, and content organization to make skills easy to discover and execute.
x-create
Create viral X (Twitter) posts including short tweets, threads, and replies. Use when user wants to write X content, create posts, or mentions "create tweet", "write thread", "x-create", "写推文", "创作推文". Supports 5 post styles with customizable templates. First-time users go through onboarding to set up profile.
convex-create-component
Designs and builds Convex components with isolated tables, clear boundaries, and app-facing wrappers. Use this skill when creating a new Convex component, extracting reusable backend logic into a component, building a third-party integration that owns its own tables, packaging Convex functionality for reuse, or when the user mentions defineComponent, app.use, ComponentApi, ctx.runQuery/runMutation across component boundaries, or wants to separate concerns into isolated Convex modules.
create-worktree-skill
Use when the user explicitly asks for a SKILL to create a worktree. If the user does not mention "skill" or explicitly request skill invocation, do NOT trigger this. Only use when user says things like "use a skill to create a worktree" or "invoke the worktree skill". Creates isolated git worktrees with parallel-running configuration.
create-new-skills
Creates new Agent Skills for Claude Code following best practices and documentation. Use when the user wants to create a new skill, extend Claude's capabilities, or package domain expertise into a reusable skill.
backend-ralph-plan
Create a structured plan directory with Ralph Wiggum Loop integration for backend Django projects. Generates PLAN.md (task index), task files, and RALPH-PROMPT.md (the actual prompt for ralph-loop). Use for rigorous, iterative implementation requiring quality gates and verification.
beads-workflow
Converting markdown plans into beads (tasks with dependencies) and polishing them until they're implementation-ready. The bridge between planning and agent swarm execution. Includes exact prompts used.