5
4
Source

Transforms a rough idea into a detailed design document with implementation plan. Follows Prompt-Driven Development — iterative requirements clarification, research, design, and planning.

Install

mkdir -p .claude/skills/pdd && curl -L -o skill.zip "https://mcp.directory/api/skills/download/2709" && unzip -o skill.zip -d .claude/skills/pdd && rm skill.zip

Installs to .claude/skills/pdd

About this skill

Prompt-Driven Development

Overview

Transform a rough idea into a detailed design with an implementation plan. The process is iterative: clarify requirements, research, design, plan — moving between phases as needed.

Important Notes

These rules apply across ALL steps:

  • User-driven flow: Never proceed to the next step without explicit user confirmation. At each transition, ask the user what they want to do next.
  • Iterative: The user can move between requirements clarification and research at any time. Always offer this option at phase transitions.
  • Record as you go: Append questions, answers, and findings to project files in real time — don't batch-write at the end.
  • Mermaid diagrams: Include diagrams for architectures, data flows, and component relationships in research and design documents.
  • Sources: Cite references and links in research documents when based on external materials.
  • Planning only: This SOP produces planning artifacts. You MUST NOT implement code, run containers, execute scripts, or begin any implementation work. If the user wants implementation, direct them to ralph run.

Parameters

  • rough_idea (required): The initial concept or idea to develop
  • project_dir (optional, default: specs/{task_name}/): Base directory for all artifacts. {task_name} is derived as kebab-case from the idea (e.g., "build a rate limiter" → rate-limiter). Aligns with Ralph's spec-driven pipeline.

Constraints:

  • You MUST ask for all required parameters upfront in a single prompt
  • You MUST support multiple input methods: direct text, file path, URL
  • You MUST derive task_name from the rough idea as kebab-case
  • You MUST NOT overwrite an existing project directory — ask for a new path if it already has contents

Steps

1. Create Project Structure

Create the directory and initial files:

  • {project_dir}/rough-idea.md — the provided rough idea
  • {project_dir}/requirements.md — Q&A record (initially empty)
  • {project_dir}/research/ — directory for research notes

Inform the user the structure feeds into Ralph's spec-driven presets.

Gate: You MUST NOT proceed to Step 2 until the user confirms the project structure is acceptable.

2. Initial Process Planning

Ask the user their preferred starting point:

  • Requirements clarification (default)
  • Preliminary research on specific topics
  • Provide additional context first

Gate: You MUST wait for the user to choose before proceeding. You MUST NOT automatically start requirements clarification or research without explicit user direction.

3. Requirements Clarification

Guide the user through questions to refine the idea into a thorough specification.

Constraints:

  • You MUST ask ONE question at a time — do not list multiple questions
  • You MUST NOT pre-populate answers or batch-write Q&A to requirements.md
  • You MUST follow this cycle for each question:
    1. Formulate and append question to requirements.md
    2. Present to user, wait for complete response
    3. Append answer to requirements.md
    4. Proceed to next question
  • You MUST ask the user if requirements clarification is complete before moving on

Cover edge cases, user experience, technical constraints, and success criteria. Suggest options when the user is unsure.

Gate: You MUST NOT proceed to Research or Design until the user explicitly confirms requirements clarification is complete. You MUST offer the option to conduct research if questions arise that would benefit from additional information.

4. Research

Conduct research on technologies, libraries, or existing code to inform the design.

Constraints:

  • You MUST propose a research plan to the user and incorporate their suggestions
  • You MUST document findings in {project_dir}/research/ as separate topic files
  • You MUST periodically check in with the user to share findings and confirm direction
  • You MUST summarize key findings before moving on

Gate: You MUST NOT proceed to the Iteration Checkpoint until the user confirms research is sufficient. You MUST offer to return to requirements clarification if research uncovers new questions.

5. Iteration Checkpoint

Summarize the current state of requirements and research, then ask the user:

  • Proceed to design?
  • Return to requirements clarification?
  • Conduct additional research?

Gate: You MUST NOT proceed to design without explicit user confirmation. You MUST support iterating between requirements and research as many times as needed.

6. Create Detailed Design

Create {project_dir}/design.md as a standalone document with these sections:

  • Overview
  • Detailed Requirements (consolidated from requirements.md)
  • Architecture Overview
  • Components and Interfaces
  • Data Models
  • Error Handling
  • Acceptance Criteria (Given-When-Then format for machine verification)
  • Testing Strategy
  • Appendices (Technology Choices, Research Findings, Alternative Approaches)

Constraints:

  • You MUST write the design as standalone — understandable without reading other files
  • You MUST consolidate all requirements from requirements.md
  • You MUST include an appendix summarizing research (technology choices, alternatives, limitations)
  • You MUST review the design with the user and iterate on feedback

Gate: You MUST NOT proceed to the implementation plan until the user explicitly approves the design. You MUST offer to return to requirements or research if gaps are identified during design review.

7. Develop Implementation Plan

Create {project_dir}/plan.md — a numbered series of incremental implementation steps.

Guiding principle: Each step builds on previous steps, results in working demoable functionality, and follows TDD practices. No orphaned code — every step ends with integration. Core end-to-end functionality should be available as early as possible.

Constraints:

  • You MUST include a checklist at the top of plan.md tracking each step
  • You MUST format as "Step N:" with: objective, implementation guidance, test requirements, integration notes, and demo description
  • You MUST ensure the plan covers all aspects of the design without duplicating design details

Gate: You MUST NOT proceed to the summary until the user reviews and approves the implementation plan.

8. Summarize and Present Results

Create {project_dir}/summary.md listing all artifacts, a brief overview, and suggested next steps. Present this summary in the conversation.

9. Offer Ralph Integration

Ask: "Would you like me to create a PROMPT.md for Ralph to implement this autonomously?"

If yes, create a concise PROMPT.md (under 100 lines) with:

  • Objective statement
  • Key requirements
  • Acceptance criteria (Given-When-Then)
  • Reference to specs/{task_name}/

Suggest the appropriate command:

  • Full pipeline: ralph run --config presets/pdd-to-code-assist.yml
  • Simpler flow: ralph run -c ralph.yml -H builtin:code-assist

If the user declines, acknowledge and conclude the session.

Gate: You MUST NOT run ralph run or begin any implementation. This SOP ends here. Implementation is a separate step the user initiates themselves.

Example

Input: "I want to build a template management feature for our internal tool — create, edit, share templates, generate documents with custom fields."

Output: A specs/template-management/ directory containing rough-idea.md, requirements.md, research/, design.md, plan.md, and summary.md — plus optionally a PROMPT.md for autonomous implementation.

Troubleshooting

Requirements stall: Suggest switching to a different aspect, provide examples, or pivot to research to unblock decisions.

Research limitations: Document what's missing, suggest alternatives with available information, ask user for additional context. Don't block progress.

Design complexity: Break into smaller components, focus on core functionality first, suggest phased implementation, return to requirements to re-prioritize.

You might also like

flutter-development

aj-geddes

Build beautiful cross-platform mobile apps with Flutter and Dart. Covers widgets, state management with Provider/BLoC, navigation, API integration, and material design.

297790

drawio-diagrams-enhanced

jgtolentino

Create professional draw.io (diagrams.net) diagrams in XML format (.drawio files) with integrated PMP/PMBOK methodologies, extensive visual asset libraries, and industry-standard professional templates. Use this skill when users ask to create flowcharts, swimlane diagrams, cross-functional flowcharts, org charts, network diagrams, UML diagrams, BPMN, project management diagrams (WBS, Gantt, PERT, RACI), risk matrices, stakeholder maps, or any other visual diagram in draw.io format. This skill includes access to custom shape libraries for icons, clipart, and professional symbols.

220415

godot

bfollington

This skill should be used when working on Godot Engine projects. It provides specialized knowledge of Godot's file formats (.gd, .tscn, .tres), architecture patterns (component-based, signal-driven, resource-based), common pitfalls, validation tools, code templates, and CLI workflows. The `godot` command is available for running the game, validating scripts, importing resources, and exporting builds. Use this skill for tasks involving Godot game development, debugging scene/resource files, implementing game systems, or creating new Godot components.

215298

nano-banana-pro

garg-aayush

Generate and edit images using Google's Nano Banana Pro (Gemini 3 Pro Image) API. Use when the user asks to generate, create, edit, modify, change, alter, or update images. Also use when user references an existing image file and asks to modify it in any way (e.g., "modify this image", "change the background", "replace X with Y"). Supports both text-to-image generation and image-to-image editing with configurable resolution (1K default, 2K, or 4K for high resolution). DO NOT read the image file first - use this skill directly with the --input-image parameter.

224234

ui-ux-pro-max

nextlevelbuilder

"UI/UX design intelligence. 50 styles, 21 palettes, 50 font pairings, 20 charts, 8 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient."

175201

rust-coding-skill

UtakataKyosui

Guides Claude in writing idiomatic, efficient, well-structured Rust code using proper data modeling, traits, impl organization, macros, and build-speed best practices.

167173

Stay ahead of the MCP ecosystem

Get weekly updates on new skills and servers.