product-planning-doc-pack Skill
SKILL.md
Product Planning Doc Pack
Use this when a user has a promising product direction but implementation has not started yet, especially for public OSS apps where clarity, scope control, and codebase shape matter.
When this skill fits
Use it when you need to turn a messy idea into an execution-ready planning bundle, not just a loose brainstorm.
Good fit:
- new app/product repo before scaffolding
- public open-source product with a real quality bar
- local-first/devtools/operator products where data sources and UX need clarifying
- user wants planning to be granular before coding
Not a fit:
- tiny one-file utilities
- already-implemented repos that just need a task list
- pure implementation plans with no product/UX uncertainty
Output pack
Create these files early:
-
README.md- one-paragraph product summary
- product shape / scope bullets
- planned v1 surfaces
- links to docs
-
docs/prd.mdInclude:- goal
- architecture summary
- target user
- product principles
- positioning
- v1 scope
- explicit non-goals
- UI/design direction
- data sourcing strategy
- technical architecture
- success criteria
- engineering quality bar
-
docs/implementation-plan.mdBreak delivery into small milestones with tiny slices. Include:- bootstrap
- discovery/data layer
- major user-facing surfaces
- polish/productisation
- deferred milestones
- testing expectations
-
docs/ui-spec.mdDefine page-by-page structure. Include:- global shell
- nav
- filter model
- page sections
- suggested component names
- empty/error-state behaviour
- shared data contracts
- styling rules
-
docs/source-map.mdMake source assumptions explicit. Include:- likely source paths
- env overrides
- reader boundaries
- output contracts
- scope model (global vs per-entity vs workspace)
- what still needs confirmation
-
AGENTS.mdAdd repo-specific working rules for future agents/contributors. Include:- what the product is
- priorities
- non-goals
- structure expectations
- testing expectations
- UX expectations
Practical workflow
1. Ground yourself in the user's real pattern
Inspect any existing repos, dashboards, READMEs, or product surfaces they already built. Look for:
- what they naturally optimize for
- what they already found painful
- where their taste actually is
- what should be preserved vs dropped
2. Choose a sharp wedge
Do not let the product become "generic platform for everything." Force a clear thesis. Examples:
- visibility-first, not chat-first
- read-mostly, not orchestration-first
- native-first, not framework-agnostic
3. Lock the defaults
Make explicit choices on:
- target user
- branding direction
- v1/non-v1 boundary
- local-first vs hosted
- native integration vs abstraction layer
4. Plan for real paths and env vars early
If the product reads local state, name the expected source roots now. Document env overrides in the PRD/source map instead of leaving them fuzzy. This prevents ugly retrofits later.
5. Design multi-scope behaviour deliberately
If data may be global vs per-user vs per-workspace, define that upfront. Do not wait until implementation to invent filtering semantics.
6. Treat code quality as product scope
For public OSS projects, the planning docs should explicitly require:
- small composable components
- obvious names
- domain readers separate from UI
- unit tests for parsing/normalization/helpers
- no giant sludge files
Recommended milestone shape
A good default order:
- bootstrap shell + repo hygiene
- setup/discovery/inventory
- highest-signal read surface
- supporting read surfaces
- most complex operational surface
- polish/productisation
- deferred extras
For local/operator tools, prefer this order:
- inventory/setup first
- then data/import layer
- then sessions
- then scheduled tasks
- then optional usage/cost
Naming guidance
In docs, suggest boring, intent-revealing component and reader names. Push against vague names like:
DashboardThingMegaCardutils
Prefer:
CronJobsTableScheduledTasksTableActivityFeedCardreadSessionSummariesnormalizeApiResponses
Quality checks before finishing
Before calling the planning pack done, verify:
- v1 scope is narrow and explicit
- non-goals are written down
- env vars and source roots are named
- multi-tenant / multi-scope behaviour is defined if relevant
- UI pages have sections and component names
- tests are mentioned in the plan, not left implicit
- repo-local
AGENTS.mdexists
Common failure modes
1. Jumping straight to scaffold
Bad when source paths, data boundaries, and page structure are still vague.
2. Writing only one giant PRD
A PRD alone is not enough. Split product, UI, source assumptions, and milestone plan.
3. Leaving data sources hand-wavy
If the app depends on local files/state, document expected paths and env overrides early.
4. Letting "extensibility" bloat v1
Do not start with plugin-system brain. Ship the sharp native product first.
5. Forgetting contributor guidance
Public OSS repos need a repo-local AGENTS.md or equivalent guidance so future work stays aligned.
Handy closing move
After generating the doc pack, recommend the next step in this order:
- review/tighten docs
- confirm actual source paths
- convert milestone 0 into tiny executable tasks
- only then scaffold the repo