Implementation planning with 3-file persistence — task decomposition, dependency ordering, batch grouping
Creates structured implementation plans with task decomposition, dependency ordering, and persistent three‑file tracking for session continuity.
npx claudepluginhub jugrajsingh/skillgardenThis skill is limited to using the following tools:
references/persistence-format.mdCreate implementation plans with task decomposition, dependency ordering, and 3-file persistence for session continuity.
$ARGUMENTS = path to design doc OR feature description text.
If $ARGUMENTS is empty:
ls -t docs/plans/*-design.md 2>/dev/null | head -5
If design docs exist, offer selection:
AskUserQuestion:
question: "Which design doc should I plan from?"
header: "Select Design"
options:
- label: "{DESIGN_1}"
description: "{first line of file}"
- label: "{DESIGN_2}"
description: "{first line of file}"
- label: "Describe a feature instead"
description: "I'll provide a feature description directly"
If no design docs and no arguments, ask:
AskUserQuestion:
question: "What feature or change should I create a plan for?"
header: "Feature Description"
If $ARGUMENTS is a file path, read that file. Otherwise, use the text as the feature description.
Identify:
Scan the codebase for conventions:
ls -la src/ lib/ app/ 2>/dev/null
git log -10 --oneline
Read any referenced files to understand current structure.
Generate a slug from the feature name (lowercase, hyphenated, max 5 words).
mkdir -p docs/plans
Read templates from ${CLAUDE_PLUGIN_ROOT}/templates/:
${CLAUDE_PLUGIN_ROOT}/templates/task_plan.md${CLAUDE_PLUGIN_ROOT}/templates/findings.md${CLAUDE_PLUGIN_ROOT}/templates/progress.mdCreate 3 files, replacing template placeholders:
| File | Path |
|---|---|
| Task Plan | docs/plans/{SLUG}-task_plan.md |
| Findings | docs/plans/{SLUG}-findings.md |
| Progress | docs/plans/{SLUG}-progress.md |
Replace {TITLE} with the feature title, {DATE} with today's date, {DESIGN_DOC} with the source design doc path (or "inline description").
Break the feature into discrete tasks. Each task:
| Field | Format |
|---|---|
| ID | T01, T02, T03... |
| Description | Imperative verb phrase (e.g., "Add user validation endpoint") |
| Files | Exact file paths to create or modify |
| Acceptance | At least one measurable criterion |
| TDD | Test name: test_should_{behavior}_when_{condition} — assertion description |
| Dependencies | Task IDs that must complete first, or "none" |
Example task:
### T01: Create user validation schema
- Files: src/schemas/user.py, tests/test_schemas/test_user.py
- Acceptance: Schema validates email format, rejects missing required fields
- TDD: test_should_reject_invalid_email_when_format_wrong — assert ValidationError raised with field name
- TDD: test_should_accept_valid_user_when_all_fields_present — assert no error, returns validated model
- Depends: none
Guidelines for task decomposition:
For each task, verify:
test -f {FILE_PATH} && echo "exists" || echo "missing"
Record findings in docs/plans/{SLUG}-findings.md:
If significant unknowns exist, flag them:
AskUserQuestion:
question: "I found gaps that may need research. How should I proceed?"
header: "Research Gaps"
options:
- label: "Continue planning — I'll resolve later"
description: "Mark gaps as open questions and proceed"
- label: "Let me clarify now"
description: "I'll answer your questions before you continue"
Sort tasks by dependency order. Group into batches:
Write to docs/plans/{SLUG}-task_plan.md:
## Batches
### Batch 1
- T01: {description} (no dependencies)
- T03: {description} (no dependencies)
### Batch 2
- T02: {description} (depends on T01)
- T04: {description} (depends on T03)
### Batch 3
- T05: {description} (depends on T02, T04)
Write docs/plans/{SLUG}-progress.md with all tasks set to pending:
## Status
| Task | Status | Notes |
|------|--------|-------|
| T01 | pending | -- |
| T02 | pending | -- |
| T03 | pending | -- |
## Batch Log
### Batch 1 -- not started
Started: --
Completed: --
Notes: --
### Batch 2 -- not started
Started: --
Completed: --
Notes: --
Report:
## Plan Summary
Feature: {TITLE}
Tasks: {N} total across {M} batches
Files: {X} to create, {Y} to modify
Open Questions: {Q}
Persistence:
- Task Plan: docs/plans/{SLUG}-task_plan.md
- Findings: docs/plans/{SLUG}-findings.md
- Progress: docs/plans/{SLUG}-progress.md
Offer next action:
AskUserQuestion:
question: "Plan is ready. What next?"
header: "Next Action"
options:
- label: "Execute now"
description: "Start implementing Batch 1 immediately"
- label: "Execute in new session"
description: "Save plan and use /planner:resume to pick up later"
- label: "Refine plan"
description: "Adjust tasks, dependencies, or batching"
Expert guidance for Next.js Cache Components and Partial Prerendering (PPR). **PROACTIVE ACTIVATION**: Use this skill automatically when working in Next.js projects that have `cacheComponents: true` in their next.config.ts/next.config.js. When this config is detected, proactively apply Cache Components patterns and best practices to all React Server Component implementations. **DETECTION**: At the start of a session in a Next.js project, check for `cacheComponents: true` in next.config. If enabled, this skill's patterns should guide all component authoring, data fetching, and caching decisions. **USE CASES**: Implementing 'use cache' directive, configuring cache lifetimes with cacheLife(), tagging cached data with cacheTag(), invalidating caches with updateTag()/revalidateTag(), optimizing static vs dynamic content boundaries, debugging cache issues, and reviewing Cache Component implementations.
Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.