USE WHEN: Creating detailed, execution-ready implementation plans for features, bug fixes, or improvements. This skill converts context into phased tasks saved to docs/plans/ that pwf-work-plan can execute directly. DON'T USE WHEN: The task is trivial (use pwf-work-light), already planned (use pwf-work-plan for execution), or requires no documentation. REQUIRED INPUT: Feature description, bug report, or path to brainstorm doc. OUTPUT: Execution-ready plan at docs/plans/<TIMESTAMP>-<name>-plan.md PROCESS: 1. Load docs baseline (infrastructure, architecture, modules) 2. Execute research agents (repo-research-analyst, learnings-researcher, spec-flow-analyzer) 3. Execute conditional agents (migration-impact-planner, security-sentinel when applicable) 4. Run review loop with architecture-strategist 5. Write structured plan with phases and master checklist 6. Validate with plan-document-reviewer (max 3 iterations) NEXT STEPS: Use pwf-work-plan to execute phases from the generated plan.
Note: The current year is 2026.
Use this skill to convert feature context (or brainstorm) into a phased, execution-ready plan in docs/plans/ that pwf-work-plan can run directly.
When ambiguity materially impacts architecture/scope, run pwf-clarify before finalizing the plan.
Apply using-psters-workflow skill at start.
When running in Paperclip heartbeats, these environment variables are available:
PAPERCLIP_AGENT_ID - Your agent identifierPAPERCLIP_COMPANY_ID - Company context for API callsPAPERCLIP_API_KEY - Authentication token for Paperclip APIPAPERCLIP_RUN_ID - Current heartbeat run identifierPAPERCLIP_TASK_ID - Current issue/task (if triggered by assignment)PAPERCLIP_WAKE_REASON - Why this heartbeat started (schedule, assignment, mention, manual)API Usage:
X-Paperclip-Run-Id: $PAPERCLIP_RUN_ID$PAPERCLIP_API_URLAuthorization: Bearer $PAPERCLIP_API_KEY<feature_description> #$ARGUMENTS </feature_description>
If empty, ask: "What would you like to plan? Describe the feature, bug fix, or improvement."
Brainstorm check: Search docs/brainstorms/ for a matching brainstorm. If found, read it fully — it contains architecture decisions, integration impact, and resolved questions that drive this plan. Also read any related existing plans in docs/plans/.
Preset support (optional): If input contains preset:<name> (e.g. preset:nestjs-api), load presets/presets.json and adapt planning emphasis/review focus to that preset. If missing/invalid, fall back to general.
Use preset qualityProfile guidance:
strict: maximize coverage and risk controls.balanced: normal rigor.fast: smallest safe plan for hotfix scope.Execute the following agents by reading and applying their instructions:
repo-research-analyst (../../agents/research/repo-research-analyst.md)
learnings-researcher (../../agents/research/learnings-researcher.md)
docs/solutions/spec-flow-analyzer (../../agents/workflow/spec-flow-analyzer.md)
Execution: Read all three agent files and execute their instructions with the provided context. You can read multiple files in parallel.
Execute the following agents when applicable by reading and applying their instructions:
migration-impact-planner (../../agents/research/migration-impact-planner.md)
best-practices-researcher (../../agents/research/best-practices-researcher.md)
framework-docs-researcher (../../agents/research/framework-docs-researcher.md)
git-history-analyzer (../../agents/research/git-history-analyzer.md)
Execution: Read applicable agent files and execute their instructions. You can read multiple files in parallel.
Execute the following review agents by reading and applying their instructions:
architecture-strategist (../../agents/review/architecture-strategist.md) — ALWAYS
security-sentinel (../../agents/review/security-sentinel.md)
performance-oracle (../../agents/review/performance-oracle.md)
Execution: Read applicable agent files and execute their instructions. You can read multiple files in parallel.
Consolidate all findings: exact file paths, method names, learnings, conventions, acceptance criteria, architecture feedback.
If none of the above apply, skip this step.
Use phases when: multi-layer (DB + API + frontend), 4+ files, clear dependency chain. Otherwise use flat tasks (a single numbered list under ## Implementation).
If phased: phases are dependency-ordered. Each phase must have a clear theme and a bounded set of tasks. Apply splitting and grouping rules from Step 2.
Write to docs/plans/<TIMESTAMP>-<name>-plan.md (TIMESTAMP = current time in YYYYMMDDHHmmss).
---