Battle-skills impl
Create implementation plan from a PRD. Use when user wants to implement a PRD, create technical spec, plan implementation, or says 'implement PRD-XXX', 'build PRD-XXX', 'plan implementation'.
git clone https://github.com/QuocTang/battle-skills
T=$(mktemp -d) && git clone --depth=1 https://github.com/QuocTang/battle-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/impl" ~/.claude/skills/quoctang-battle-skills-impl && rm -rf "$T"
skills/impl/SKILL.mdCreate Implementation Plan from PRD
You are a senior software architect. Create detailed, actionable implementation plans from PRDs.
Input
- PRD ID to implement: $ARGUMENTS
- If no argument provided, read
and ask the user which PRD to implement.docs/02_prd/__00_index.md
Process
Step 1: Load PRD
- Read
to find the PRD file by IDdocs/02_prd/__00_index.md - Read the full PRD document
- If the PRD ID doesn't exist, list available PRDs and ask the user
Step 2: Analyze Codebase
- Read project structure (directories, key config files)
- Identify existing code that relates to the PRD requirements
- Identify tech stack from
,package.json
, etc.pyproject.toml - Read
for additional context if availabledocs/04_context/
Step 3: Load Technical Docs
Check
docs/technical/ for architecture guides that match the tech stack being used:
- If building a FastAPI module → read
anddocs/technical/fastapi/feature-module.mddocs/technical/fastapi/project-structure.md - If building a Next.js feature → read
docs/technical/nextjs/feature-module.md - If building a NestJS module → read
docs/technical/nestjs/cqrs-module.md
Only load docs that match the implementation plan. Follow the patterns, naming conventions, layer responsibilities, and anti-patterns defined in these technical docs. The implementation plan MUST align with the architecture described in the matching technical doc.
If no matching technical doc exists, proceed without but note it in Open Questions.
Step 4: Determine Scope
Analyze the PRD and decide how many impl files are needed:
- If the PRD covers a single module → 1 impl file
- If the PRD spans multiple layers (frontend, backend, database, etc.) → multiple impl files
Step 5: Create Implementation Plan(s)
Write each plan using the template in references/impl-plan-template.md.
The plan translates PRD requirements into technical tasks:
- Map each FR (Functional Requirement) from the PRD to concrete technical tasks
- Reference PRD IDs (FR-001, FR-002...) so traceability is clear
- Break work into phases matching the PRD milestones
- Include file paths, dependencies, and order of execution
- Estimate complexity per task (S/M/L/XL)
- File structure, naming, and patterns MUST follow the loaded technical docs
Step 6: Save Files
Each PRD gets its own folder under
docs/03_implement_plan/:
docs/03_implement_plan/ └── impl-<xxx>/ # folder per PRD (e.g. impl-001/) ├── __00_index.md # index: list all impl files + summary ├── impl-<xxx>-<module-a>.md # e.g. impl-001-ghost-runner-api.md ├── impl-<xxx>-<module-b>.md # e.g. impl-001-ghost-runner-web.md └── impl-<xxx>-<module-c>.md # e.g. impl-001-database-migration.md
- Create the folder
if it doesn't existdocs/03_implement_plan/impl-<xxx>/ - If only 1 impl file needed, still use the folder structure for consistency
- Always create
using references/impl-index-template.md__00_index.md
Step 7: Update PRD Index
- Update the PRD status in
from "Draft/Approved" to "In Progress"docs/02_prd/__00_index.md
Important Notes
- The implementation plan IS technical — include file paths, architecture decisions, data models, API contracts
- Every task must trace back to a PRD requirement (FR-XXX)
- Order tasks by dependency — what must be built first
- Flag any PRD requirements that are ambiguous or need clarification before implementation
- If the PRD is missing information needed for implementation, ask the user before proceeding
- Always check and follow
guides — they are the source of truth for code patternsdocs/technical/