an agent skill · product discovery, strategy & PRDs

/product

Point an agent at a rough idea and it writes features. product makes it decide what to build, for whom, and why first — discovery, strategy, positioning, PRDs, prioritization, metrics, and a living risk register, each grounded in the named PM canon and specified precisely enough for design and engineering to build the right thing.

# that's the whole start — natural language, no flags /product turn this rough idea into a validated problem and an opportunity solution tree

runs onClaude CodeCodexCursorAntigravityopencodeGrok BuildHermes

The router is the skill. There is no fixed pipeline to run start-to-finish — each job stands alone and enters where your question is. The animation traces one path; the sections below map the whole surface it routes across.

Own the decision, not the execution

product owns the front of the lifecycle — the decision about what to build and why. Experience, code, and systems belong to sibling skills; product feeds them a validated decision and a clean handoff, and recommends them by name rather than silently taking their work.

product owns

the front of the product lifecycle

  • discovery — validated problems, JTBD, opportunity trees
  • strategy & positioning — the bet, the segment, the frame
  • definition — PRDs & checkable acceptance criteria
  • prioritization — multi-engine ranking & outcome roadmaps
  • measures of success — north-star & metric trees
  • the risk register — a living assumption & evidence ledger

hands off to

contribute to; own none

  • design — experience, UI, states, IA
  • frontend — production client code
  • architecture — system & technical decisions
  • marketing — demand, GTM, market copy
  • growth — funnel experiments & loops
  • sales · success — qualification/CRM · onboarding, adoption

Own the decision about what to build; not its execution. When upstream artifacts (research, a founder brief, analytics) are supplied, product uses them without silently overriding decisions already made.

The faceted router

SKILL.md is a router, not a script. Every request selects the smallest sufficient route: one primary job — the nine below — combined with at most one surface overlay that reshapes discovery, metrics, and the PRD for the product type. Read the selected references completely; load nothing unrelated. The nine jobs and five surfaces compose into 9 × 5 = 45 routes — from a two-file read to a full front-of-lifecycle pass — without ever reading all fifteen references at once.

facetoptionsrule
① Primary job discover · strategy · position · business model · market · PRD · prioritize · metrics · risk Exactly one. Identify the single job the request needs.
② Surface overlay website · app & SaaS · mobile · agentic · internal At most one. It reshapes the artifact for the product type — agentic always added when the model acts.
Discovery before solution. A route never begins at the PRD on an unvalidated problem — a PRD documents a validated decision, it doesn't produce one. If the problem isn't validated, the router sends you back to discovery first.

The nine primary jobs

Each job is one reference, read fully only when its route is selected — grounded in named canon, producing a checkable artifact. This is the whole surface, not a headline slice.

I need to…ReadGrounded inProduces
Discover & validate the problem discovery.md Torres Opportunity Solution Tree · Christensen JTBD · Fitzpatrick The Mom Test · MITRE Problem Framing Validated problem, OST, interview plan/synthesis, JTBD statements
Set vision & strategy strategy.md Rumelt strategy kernel · Perri strategy pyramid · Maurya Lean Canvas · Foundation Sprint Strategy kernel, vision & principles, Lean Canvas
Position & frame the value positioning.md Moore statement & beachhead · Dunford Obviously Awesome · Osterwalder Value Proposition Canvas Positioning statement, VPC, named best-fit segment
Model the business & price it business-model.md Osterwalder Business Model Canvas · value-based pricing · Van Westendorp · tier psychology Business Model Canvas, pricing hypothesis (WTP bands, tiers)
Size the market & competitors market.md TAM/SAM/SOM (top-down · bottom-up · comparable) · Porter Five Forces · SWOT · PESTEL Source-calibrated size ranges, competitor profiles, landscape
Write the PRD & acceptance criteria prd.md Rachitsky one-pager · ProductSpec machine-readable spec · Given/When/Then · job & user stories Altitude-flexed PRD (1-pager ↔ full ↔ spec), checkable criteria
Prioritize & build a roadmap prioritization.md RICE · ICE · Opportunity Score (Olsen) · Kano · MoSCoW · Weighted Scoring Cross-framework score table + divergence, Now/Next/Later roadmap
Define success metrics metrics.md North-star metric tree · HEART (Google) · AARRR (McClure) · Lean Analytics · OKRs (Doerr) North star + metric tree, HEART/AARRR mapping, guardrails, OKRs
Surface & maintain risks risk-register.md Cagan 4→8 risk taxonomy · demand hierarchy L0–L4 · evidence ladder · red-team · pre-mortem (Klein) Living register: assumptions, verdicts, red-team & pre-mortem log

Full router table & invariants: SKILL.md.

discovery

Continuous Discovery (Torres)Opportunity Solution TreeJTBD · Forces of ProgressThe Mom TestMITRE Problem FramingProof-of-Life probe

strategy

Good Strategy/Bad Strategy (Rumelt)Escaping the Build Trap (Perri)Working Backwards tenetsLean Canvas (Maurya)Foundation Sprint

positioning

Crossing the Chasm (Moore)Obviously Awesome (Dunford)Value Proposition Canvasbeachhead / whole product

business & market

Business Model Canvasvalue-based pricingVan WestendorpTAM/SAM/SOMPorter · SWOT · PESTEL

definition

Lenny one-pagerProductSpec (.product-spec.md)Given/When/Thenjob story · user story

prioritize & measure

RICE · ICEOpportunity Score · KanoNorth-star metric treeHEART · AARRROKRs (Doerr)

risk

Cagan product risks (Inspired)demand hierarchy L0–L4evidence ladderstrategy red-teampre-mortem (Klein)

Five surface overlays

One overlay, at most, reshapes the job for the product type — the same PRD is scoped differently for a marketing site than a SaaS app. Agentic is the first-class differentiator, expanded below.

Website surface-website.md

Marketing / content site: the "product" is a positioning-and-conversion artifact. Proof strategy by vertical & stakes; E-E-A-T and credibility layers as requirements.

lensConversion rate · lead quality · Attention Ratio

App & SaaS surface-app-saas.md

Accounts & recurring usage: revenue is a lifecycle, not a conversion. Onboarding and the core loop are first-class PRD scope; churn is a discovery question.

lensActivation · retention · MRR / churn tree

Mobile surface-mobile.md

Store distribution, ASO framing, and platform permissions as product constraints; short, interruption-driven sessions frame the jobs.

lensInstall→activation · store health · permissions

Agentic / AI differentiator

The model acts under uncertainty. Eval-as-acceptance-criteria, capability & failure-mode mapping, human-in-the-loop autonomy, and model choice as a product decision.

lensEval pass-rate · escalation · cost-per-task

Internal / enterprise surface-internal.md

Built for employees, not customers: adoption replaces acquisition, the buyer isn't the user, and operational cost drives prioritization.

lensAdoption rate · task-time · error reduction

The agentic wedge

Nearly no PM discipline covers products whose value comes from a model acting, not a deterministic feature wrapped around a model call. For an agentic feature, desirability and feasibility collapse — a job is desirable only if a model can do it reliably, and reliability is empirical. So the headline move:

The eval set is the acceptance criteria — not a QA afterthought.

Registered in the PRD, gating launch

# productspec-ai-evals — an acceptance criterion, re-checked
# every time the model or prompt changes
id: EVAL-1
job: draft a support reply from the ticket thread
task_set: 40 real transcripts, not invented cases
evaluator: llm_judge  # state the judge's own error rate
pass_threshold: ≥ 90% · 0 hallucination-flagged
offline_eval: fixed set, before every release
online_eval: sampled prod traffic — catches drift
regression_gate: block release if it regresses

Capability tier per job (§ map before a PRD line)

  • Reliableclears the bar with no scaffolding → candidate for act
  • Assistableneeds retrieval/tools → ship the scaffolding as a hard dependency
  • Unreliablefails even scaffolded → don't ship the job agentically

Autonomy by reversibility & blast radius

  • Suggestproposes; acts only on explicit user action
  • Draftfull artifact for the user to edit/send
  • Act-with-approvalexecutes after one confirmation
  • Actno per-action confirmation — reversible, low blast radius
The sharp distinction: eval thresholds that gate a release live in acceptance criteria (pre-launch, pass/fail) — never in success metrics (post-launch outcome tracking). The same score can feed both; conflating them lets a team ship on a number that was never a gate. Failure modes are first-class product concerns, each mapped to an eval case or a risk-register entry:
hallucinationwrong-tool selectionsilent errorlatency spikescontext poisoning / drift

The universal invariants

Six rules govern every route, whichever references it loads — the load-bearing ones, condensed.

The handoff seam

When downstream build work is expected, product emits a compact handoff.yaml beside the human artifact — a routing index into the PRD, strategy, or metric tree, never a copy of it. Standalone by default; the companion appears only in pipeline mode, when a consumer will actually read it.

product decides

skill: product
status: complete
objective: ""   # only required field
artifacts_created: [prd, metric-tree]
decisions: · assumptions: · constraints:
risks: [R-01, R-04]  # pointers, not the register
validation: performed / remaining
recommended_next: design · architecture

design

Validated problem, target segment, the success metrics to design toward, hard constraints, and the open questions it must not silently resolve.

architecture

Non-functional requirements, constraints, technical-feasibility risks, and acceptance criteria that gate technical decisions — an agentic eval threshold constrains model choice.

Seam discipline. The human artifact is the real deliverable; if a consumer needs more than the index gives, the artifact itself is incomplete — the yaml never grows to compensate. Every downstream skill tolerates every field but objective being absent.

Start here

Install once. It's a plain SKILL.md router — no flags, no config, no scripts — so it activates on natural-language phrasing ("validate this problem", "write a PRD", "prioritize this backlog") rather than a fixed command.

# skills.sh ecosystem (installs globally to supported clients) npx skills add gabros20/product-skill -g -y # clone + installer (per-host targets) git clone https://github.com/gabros20/product-skill && cd product-skill ./install.sh codex # or: claude | cursor | antigravity | opencode | grok | hermes | agents | all # use — natural language, any host /product write a PRD for the new onboarding flow, SaaS product /product define acceptance criteria for our AI support agent # → eval set + thresholds /product prioritize this backlog and give me an outcome roadmap

The same install runs on any Agent Skills host. Codex installs to ${CODEX_HOME:-$HOME/.codex}/skills and triggers with $product; agents remains a separate cross-agent installation target.

install targets by host
hostinstall targetcommand
Claude Code~/.claude/skills./install.sh claude
Codex${CODEX_HOME:-$HOME/.codex}/skills./install.sh codex
Cross-agent path~/.agents/skills./install.sh agents
Cursor CLI~/.cursor/skills./install.sh cursor
Antigravity (IDE + agy)~/.gemini/…/skills./install.sh antigravity
opencode~/.config/opencode/skills./install.sh opencode
Grok Build~/.grok/skills./install.sh grok
Hermes~/.hermes/skills./install.sh hermes

Prefer npx skills add gabros20/product-skill -g -y when you have Node — it maps supported clients itself.

what's in the repo
skills/product/ the skill: SKILL.md (router) + 15 references/ docs/ installation · usage · recipes site/ this guide — deploys to product-skill.vercel.app install.sh installer (claude | codex | cursor | antigravity | opencode | grok | hermes | agents | all) README.md · CHANGELOG.md · LICENSE

More docs: docs/installation.md · docs/usage.md · docs/recipes.md.