From duo
Generate a structured implementation plan from a draft document. Validates input, checks relevance, analyzes for issues, and generates a complete plan.md with acceptance criteria.
How this skill is triggered — by the user, by Claude, or both
Slash command
/duo:duo-gen-planThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Transforms a rough draft document into a well-structured implementation plan with clear goals, acceptance criteria (AC-X format), path boundaries, and feasibility suggestions.
Transforms a rough draft document into a well-structured implementation plan with clear goals, acceptance criteria (AC-X format), path boundaries, and feasibility suggestions.
The installer hydrates this skill with an absolute runtime root path:
{{DUO_RUNTIME_ROOT}}
flowchart TD
BEGIN([BEGIN]) --> SEED[Seed output file<br/>Write template + draft content<br/>with Original Design Draft markers]
SEED --> READ_DRAFT[Read input draft file]
READ_DRAFT --> CHECK_RELEVANCE{Is draft relevant to<br/>this repository?}
CHECK_RELEVANCE -->|No| REPORT_IRRELEVANT[Report: Draft not related to repo<br/>Stop]
REPORT_IRRELEVANT --> END_FAIL
CHECK_RELEVANCE -->|Yes| ANALYZE[Analyze draft for:<br/>- Clarity<br/>- Consistency<br/>- Completeness<br/>- Functionality]
ANALYZE --> HAS_ISSUES{Issues found?}
HAS_ISSUES -->|Yes| RESOLVE[Engage user to resolve issues<br/>via AskUserQuestion]
RESOLVE --> ANALYZE
HAS_ISSUES -->|No| CHECK_METRICS{Has quantitative<br/>metrics?}
CHECK_METRICS -->|Yes| CONFIRM_METRICS[Confirm metrics with user:<br/>Hard requirement or trend?]
CONFIRM_METRICS --> GEN_PLAN
CHECK_METRICS -->|No| GEN_PLAN[Generate structured plan:<br/>- Goal Description<br/>- Acceptance Criteria with TDD tests<br/>- Path Boundaries<br/>- Feasibility Hints<br/>- Dependencies & Milestones]
GEN_PLAN --> WRITE[Write plan to output file<br/>using Edit tool to preserve draft]
WRITE --> REVIEW[Review complete plan<br/>Check for inconsistencies]
REVIEW --> INCONSISTENT{Inconsistencies?}
INCONSISTENT -->|Yes| FIX[Fix inconsistencies]
FIX --> REVIEW
INCONSISTENT -->|No| CHECK_LANG{Multiple languages?}
CHECK_LANG -->|Yes| UNIFY[Ask user to unify language]
UNIFY --> REPORT_SUCCESS
CHECK_LANG -->|No| REPORT_SUCCESS[Report success:<br/>- Plan path<br/>- AC count<br/>- Language unified?]
REPORT_SUCCESS --> END_SUCCESS([END])
Required Arguments:
<input> - The draft document path<output> - Where to write the plan (must not already exist)The generated plan includes:
# Plan Title
## Goal Description
Clear description of what needs to be accomplished
## Acceptance Criteria
- AC-1: First criterion
- Positive Tests (expected to PASS):
- Test case that should succeed
- Negative Tests (expected to FAIL):
- Test case that should fail
## Path Boundaries
### Upper Bound (Maximum Scope)
Most comprehensive acceptable implementation
### Lower Bound (Minimum Scope)
Minimum viable implementation
### Allowed Choices
- Can use: allowed technologies
- Cannot use: prohibited technologies
## Dependencies and Sequence
### Milestones
1. Milestone 1: Description
- Phase A: ...
- Phase B: ...
## Implementation Notes
- Code should NOT contain plan terminology
Plan generation is now part of /duo:start:
# Generate plan with Codex refinement (default)
/duo:start draft.md --plan-only
# Generate plan without Codex refinement
/duo:start draft.md --plan-only --skip-review
# Generate plan with custom refinement settings
/duo:start draft.md --plan-only --max 3 --codex-model o4-mini:high
Or use the skill directly (no auto-execution):
/skill:duo-gen-plan
npx claudepluginhub haonan16/duo --plugin duoTransforms a rough draft document into a structured implementation plan with goals, acceptance criteria (AC-X format), path boundaries, and feasibility suggestions. Validates input, checks relevance, analyzes for issues, and generates a plan.md file.
Generates structured implementation plans from feature descriptions or requirements, grounded in repo patterns and research. Deepens existing plans via interactive sub-agent review.
Provides behavioral guidelines to reduce common LLM coding mistakes, focusing on simplicity, surgical changes, assumption surfacing, and verifiable success criteria.