pdd-build
Skill372 starsChanged 8 months agoMITView on GitHub
Execute a completed PDD implementation plan step-by-step with validation gates.
In this repository17 other files it gives its agents.
- AGENTS.mdAGENTS.md
- install-rhoSkill
- auto-memorySkill
- code-assistSkill
- codebase-summarySkill
- code-task-generatorSkill
- create-sopSkill
- evalSkill
- memory-consolidateSkill
- pddSkill
- release-changelogSkill
- rho-cloud-emailSkill
- rho-cloud-onboardSkill
- session-searchSkill
- small-improvementSkill
- update-piSkill
- vault-cleanSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
22 rules. About 0 are common, 20 are distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈20
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 39
Read the PDD artifacts and prepare for execution.
- Very specific: line 103
Run the test command (e.g., npm test, pytest, etc.)
- Distinctive: line 104
All tests must pass
- Distinctive: line 105
Check test output for failures
- Very specific: line 108
Use rho_subagent to open a tmux window with the test scenario
- Distinctive: line 110
Verify expected output or behavior
- Distinctive: line 115
Verify UI elements render correctly
- Distinctive: line 116
Check for visual regressions or interaction issues
- Distinctive: line 119
Read created/modified files to verify they match expectations
- Distinctive: line 120
Check that code compiles/parses correctly
- Distinctive: line 121
Verify file structure matches the design
- Distinctive: line 125
All must pass for the step to be considered done
- Distinctive: line 129
If validation fails, you MUST:
- Distinctive: line 137
After 2 failed retries, you MUST stop and present the situation to the user with:
- Distinctive: line 155
After all steps are complete, validate the full system.
- Distinctive: line 162
If integration issues are found, you MUST:
- Distinctive: line 230
If the subagent consistently misunderstands, break the step into smaller sub-steps
- Distinctive: line 233
Add retries with delays for timing-sensitive checks (e.g., server startup)
- Distinctive: line 238
If a step fails because a previous step's output is wrong, fix the earlier step first
- Distinctive: line 239
Update the build log to note the dependency issue
- Distinctive: line 243
STOP — do not guess at missing requirements
- Distinctive: line 245
Ask the user for clarification
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
PDD Build
Overview
This SOP takes a completed PDD project (design doc + implementation plan) and executes the implementation plan step-by-step using subagents. Each step is built by a subagent, then verified against user-defined "done" criteria before advancing. The user defines how completion is validated — automated tests, manual testing via tmux, browser validation via Playwriter, visual inspection, or any combination.
Parameters
- project_dir (required): Path to the PDD project directory (e.g.,
.agents/planning/2026-02-10-review-extension) - validation_strategy (required): How the agent should verify each step is done. The user must explain this in detail.
- start_step (optional, default: 1): Step number to start from (for resuming interrupted builds)
Constraints for parameter acquisition:
- You MUST ask for all required parameters upfront in a single prompt
- You MUST verify the project_dir contains the expected PDD artifacts before proceeding:
design/detailed-design.mdmust existimplementation/plan.mdmust exist and contain a checklist
- You MUST ask the user to describe their validation strategy in detail — this is the critical input
- The user MUST explain how the agent should know a step is done. Examples:
- "Run
npm testand all tests must pass" - "Open a tmux session and test the CLI command as a user"
- "Use the playwriter skill to open the browser and verify the UI renders correctly"
- "Run the extension with
pi -e ./index.tsin a tmux window and execute/review test.md" - A combination: "Run unit tests, then use playwriter to check the browser UI"
- "Run
- You MUST confirm you understand the validation strategy by summarizing it back
- You MUST NOT proceed without explicit user confirmation of the validation strategy
- You MUST check the implementation plan checklist for already-completed steps and offer to resume from the next incomplete step
Steps
1. Load and Parse the Implementation Plan
Read the PDD artifacts and prepare for execution.
Constraints:
- You MUST read the following files:
{project_dir}/design/detailed-design.md{project_dir}/implementation/plan.md- Any research files in
{project_dir}/research/
- You MUST parse the checklist from
plan.mdto determine which steps are complete and which remain - You MUST parse each step's details: objective, guidance, tests, integration notes, demo description
- You MUST present a summary to the user:
- Total steps, completed steps, remaining steps
- The validation strategy as understood
- Estimated scope of work
- You MUST ask for confirmation before starting execution
- You MUST NOT begin execution without explicit user go-ahead
2. Prepare the Build Context
Assemble the context documents that each subagent will need.
Constraints:
- You MUST create a build context file at
{project_dir}/implementation/build-context.mdcontaining:- The full detailed design (or a focused summary if the design is very large)
- The validation strategy
- The current state of the implementation (which steps are done)
- Any relevant research findings
- You MUST identify file paths and directories the subagents will need to create or modify
- You MUST verify that prerequisites exist (e.g.,
package.json, directory structure, dependencies) - You SHOULD create any prerequisite files or directories that don't exist yet
- You MUST load any skills referenced in the validation strategy (e.g., playwriter, clipboard, notification)
3. Execute Steps
Execute each implementation step using a subagent, then validate.
Constraints:
- You MUST execute steps sequentially unless the user explicitly approved parallel execution
- For each step, you MUST follow this exact process:
3a. Brief the Subagent
- You MUST construct a clear, self-contained prompt for the subagent that includes:
- The step objective and guidance from the implementation plan
- Relevant sections of the design doc (not the entire doc — only what's needed for this step)
- The current file state (what exists, what was built in previous steps)
- Explicit instructions on what files to create or modify
- The test/verification criteria for this step
- You MUST NOT include the entire design doc in every subagent prompt — extract only relevant sections
- You MUST include the project's file structure context so the subagent knows where things are
3b. Launch the Subagent
- You MUST use the
subagenttool to execute the step - You SHOULD use async mode for steps that are expected to take a long time
- You MUST monitor the subagent's progress if running async (check status periodically)
- You MUST capture the subagent's output for review
3c. Verify the Step
- You MUST verify the step is complete using the user-defined validation strategy
- You MUST NOT skip validation — this is the critical gate
Validation methods (use whichever the user specified):
Automated tests:
- Run the test command (e.g.,
npm test,pytest, etc.) - All tests must pass
- Check test output for failures
Tmux manual testing:
- Use
rho_subagentto open a tmux window with the test scenario - Or use
bashto run commands in a tmux session - Verify expected output or behavior
Playwriter browser validation:
- Load the playwriter skill
- Navigate to the relevant URL
- Verify UI elements render correctly
- Check for visual regressions or interaction issues
File verification:
- Read created/modified files to verify they match expectations
- Check that code compiles/parses correctly
- Verify file structure matches the design
Combination:
- Execute each validation method in sequence
- All must pass for the step to be considered done
- Run the test command (e.g.,
3d. Handle Failures
- If validation fails, you MUST:
- Analyze the failure — what went wrong?
- Determine if it's a subagent error (bad code) or a design issue (spec is wrong)
- For subagent errors: retry the step with additional context about the failure (max 2 retries)
- For design issues: STOP and notify the user — do not attempt to fix design problems autonomously
- Include the failure details and any error output in the retry prompt
- You MUST NOT retry more than 2 times per step without user intervention
- You MUST NOT silently skip failed validation
- After 2 failed retries, you MUST stop and present the situation to the user with:
- What was attempted
- What failed and why
- The subagent's output
- Your recommendation for how to proceed
3e. Update the Checklist
- On successful validation, you MUST update the checklist in
plan.mdto mark the step as complete ([x]) - You MUST write a brief status note to
{project_dir}/implementation/build-log.mdwith:- Step number and name
- Timestamp
- Validation result
- Any notable decisions or deviations
- You MUST notify the user of progress (e.g., "Step 3/12 complete: Web UI shell")
4. Integration Validation
After all steps are complete, validate the full system.
Constraints:
- You MUST run the complete validation strategy against the finished implementation
- You MUST verify that all checklist items are marked complete
- You MUST test the end-to-end flow described in the design doc
- You SHOULD run any additional integration tests that span multiple steps
- If integration issues are found, you MUST:
- Identify which step(s) are affected
- Determine the fix
- Either fix directly or launch a targeted subagent
- Re-validate after fixing
5. Report Results
Present a final summary to the user.
Constraints:
- You MUST create a build report at
{project_dir}/implementation/build-report.mdcontaining:- Total steps executed
- Steps that passed on first attempt vs. required retries
- Any deviations from the original design
- Known issues or limitations discovered during build
- Validation results summary
- You MUST present the report to the user in conversation
- You MUST highlight any areas that need manual attention
- You MUST suggest next steps (e.g., "TUI mode follow-up", "deploy to global extensions", etc.)
Examples
Example 1: CLI Extension with Tests
Project dir: .agents/planning/2026-02-10-review-extension
Validation strategy: Run `npm test` in the extension directory after each step.
For steps that add UI, also run `pi -e ./index.ts` in a tmux window and
execute the /review command to verify it works interactively.Example 2: Browser UI with Playwriter
Project dir: .agents/planning/2026-02-10-review-extension
Validation strategy: After each step that changes the UI, use the playwriter
skill to open http://localhost:<port> and verify:
- The page loads without console errors
- Key elements are visible (sidebar, code viewer, buttons)
- Interactions work (click file, click line number, type comment)
For non-UI steps, verify files exist and code parses without errors.Example 3: Full Manual Testing
Project dir: .agents/planning/2026-02-10-review-extension
Validation strategy: After each step, open a tmux split and run the
extension. Test it as a user would — try the happy path, try edge cases,
try to break it. Report what works and what doesn't. Use the notification
skill to alert me if a step fails after retries.Example 4: Hybrid
Project dir: .agents/planning/2026-02-10-review-extension
Validation strategy:
- Steps 1-2: verify files exist and `npm install` succeeds
- Steps 3-6: use playwriter to check the browser UI renders
- Steps 7-8: use playwriter to test submit/cancel WebSocket flow
- Steps 9-10: run `pi -e ./index.ts` in tmux and test /review command
- Steps 11-12: full playwriter mobile viewport test + manual tmux testTroubleshooting
Subagent Produces Wrong Code
- Include more design context in the retry prompt
- Reference specific sections of the design doc
- Include the error output verbatim
- If the subagent consistently misunderstands, break the step into smaller sub-steps
Validation Is Flaky
- Add retries with delays for timing-sensitive checks (e.g., server startup)
- For browser validation, add explicit waits for elements
- For tmux testing, allow time for commands to complete
Step Dependencies Are Wrong
- If a step fails because a previous step's output is wrong, fix the earlier step first
- Update the build log to note the dependency issue
- Re-run both steps in order
Design Doc Has Gaps
- STOP — do not guess at missing requirements
- Note the gap in the build log
- Ask the user for clarification
- Resume after the gap is resolved
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

