Product plan
My personal development harness for Claude Code and Codex. Use at your own risk.
npx -y skills add RubenGlez/harness --skill product-planAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Define the full product vision — audience, positioning, features, roadmap, and UX direction — through a structured interview. Use after ideate, or directly when the idea is already validated and you're ready to spec the product.
SKILL.md
4.3 KB, as published. Nobody here has run it
Product Plan
Step 1: Read the project
Before asking anything, gather all available context:
Ideation output — read .harness/product/idea.md if it exists:
- Extract: concept, problem, market landscape, competitor list, viability verdict
- These questions are already answered — do not re-ask them in the interview
Existing product docs — read .harness/product/ for prior decisions to update rather than re-litigate
Codebase — if code already exists:
- Read README.md for stated goals and audience
- Scan the feature surface: routes, screens, commands, or API endpoints
- Check the roadmap or issue tracker if present (
gh issue list) - Note what's implemented, what's stubbed, and what's conspicuously absent
Starting mid-flow on an existing project: if code exists but .harness/ is absent, treat this as step 2 — /ideate was skipped. Read the codebase and README to reconstruct what idea.md would have said, then proceed.
Synthesize into a one-paragraph internal picture. Do not share this — use it to skip already-answered questions and form sharper hypotheses.
Step 2: Interview
Interview the user relentlessly — one question at a time. For every question, state a concrete recommendation or hypothesis first. Never ask a bare question. Lead with your position — "My read is X. Do you agree?" — so the user reacts to a specific claim.
Be a realist, not a cheerleader. Surface the truth, not validation: name failure modes, push back on optimistic answers, make vague audiences concrete, call out weak moats.
Work through these dimensions in order; skip any already answered. See REFERENCE.md for detailed questions per dimension:
- The idea
- Target audience
- Market and competition (skip if idea.md covers it)
- Value and differentiation
- Validation
- Features
- UX and design
Step 3: Report
After the interview, produce a report with these sections:
- Audience — who it's for, who the early adopter is, why they care
- Value Proposition — for whom, the key benefit, the core differentiator, why users switch (synthesize from dimensions 4 and 5)
- Market Positioning — category, differentiation, competitive gap
- Competitive Analysis — top 3–5 competitors, strengths, weaknesses
- Direction Assessment — go / conditional go / no-go with 2–3 reasons
- Prioritized Feature Backlog — must-have / should-have / nice-to-have
- UX and Design Direction — core workflow, interaction model, design register
- Key Risks — 2–3 assumptions most likely to be wrong and how to test them
Step 4: Write docs
Doctier bootstrap (once per repo)
.harness/ is tracked in git as age-encrypted blobs via doctier. If .doctier.yml exists at the repo root, skip this — the repo is already set up. If .harness/ already exists but is gitignored (a pre-doctier project), follow the adoption recipe in the migrate-docs skill's REFERENCE.md instead. Otherwise, run the bootstrap in ../_shared/doctier-bootstrap.md.
Spawn the doc writer
Spawn a subagent to write all product docs. Pass the full report as context — it cannot read the conversation.
Runtime note: if your runtime can't spawn a subagent (e.g. Codex), write the docs yourself in this session — see ../_shared/runtime-parallelism.md.
Rules: all files go under .harness/product/; update existing rather than overwrite; omit sections with no source; never link to .harness/ from public docs.
The subagent writes: product.md, roadmap.md, competitors.md, ux.md (if UI discussed), and CONTEXT.md (domain glossary). See REFERENCE.md for templates.
After the subagent finishes, confirm every file written. Refresh the doc index and commit — worktrees and future sessions only see committed .harness/ content:
doctier agents --write
git add .harness AGENTS.md && git commit -m "docs: product plan"
Recommend: "Run /dev-plan to define the architecture and generate feature specs."