IntermediateAgent Skill

Product Skills: Product Routing and Discovery Tools

Product Skills routes requests across 12 bundled product workflows and four separately packaged plugins. Version 2.11.1 also includes Python tools to classify goals, check discovery cadence, and validate Opportunity Solution Trees. Install the relevant collection and any standalone dependencies before using a routed workflow.

Views
0
Copies
0
Favorites
0
Editorial Score
82/100
Supported Platforms
Claude Code · Codex
01

What this Skill does

Route product work and check continuous-discovery cadence and Opportunity Solution Trees. Version 2.11.1 adds three Python tools for routing, cadence scoring, and tree linting across 12 bundled and four separately packaged lanes.

02

What makes it different

01

Approach and advantage

Version 2.11.1 adds three Python tools for routing, cadence scoring, and tree linting across 12 bundled and four separately packaged lanes.

02

What you can use it for

Route a product request to one supported specialist; Review interview and assumption-test cadence; Check an opportunity tree before using it for roadmap decisions.

03

Before you install

Inputs to prepare

A product goal, research evidence, JSON discovery logs or trees, and installed target Skills.

Agent and runtime

Use a Skill-capable agent with file access. Python 3 is required for the bundled Python helpers; inspect their sample schemas before supplying data.

Scope to confirm

Install the product collection and required standalone plugins; the router alone cannot execute missing lanes. Build-scale loops additionally reference the separate agent-harness.

04

Install and get started

Codex

Installs the category, including the router and specialist Skills. Keep the checkout for referenced standalone plugins and repository-relative tools.

  1. Choose the method for your agent and install the complete package, not just the displayed SKILL.md.
  2. A product goal, research evidence, JSON discovery logs or trees, and installed target Skills.
  3. Start a new agent session and explicitly ask to use product-skills. Try one use case below with a small sample and review the output.
git clone https://github.com/alirezarezvani/claude-skills.git cd claude-skills git checkout 6d2f02ea077eead1bee5411a31bcc6db5a11a70c ./scripts/codex-install.sh --category product
05

Original Skill.md

This is the unchanged source SKILL.md for the reviewed version. Install the complete package to retain referenced scripts, assets, and instructions. Starter prompts below are EcomAgentTools examples.

Source and package files reviewed on October 25, 2026: GitHub 6d2f02ea077e. This is a static review, not an installation or business-outcome test.

View the reviewed source · MIT

License notice
MIT License

Copyright (c) 2025 Alireza Rezvani

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
---
name: "product-skills"
description: "Use when coordinating product work across the 12 bundled product sub-skills (RICE, OKRs, UX research, design tokens, competitive teardown, analytics, experiments, discovery, roadmaps, spec-to-repo, landing pages, SaaS scaffolding) or the 4 standalone product-team plugins (user stories, Apple HIG, code-to-PRD, research summarizer). Triggers on 'help me prioritize', 'plan a product experiment', 'we ship features nobody uses', 'run the discovery loop', 'is our OST sound'. Forks context to route to one sub-skill via a deterministic signal router and returns a digest; can also drive a continuous-discovery loop (Torres cadence tracker + OST linter as machine gates) or a full goal→plan→execute→verify→close run through the repo-wide agent-harness. Distinct from project-management (how to deliver vs what to build), marketing/landing (from-scratch pages), and engineering/agent-harness (the generic loop engine this orchestrator plugs into)."
context: fork
license: MIT
metadata:
  version: 2.11.1
  author: Alireza Rezvani
  tags: [product, product-management, orchestrator, discovery, ux, analytics, agent-harness]
  compatible_tools: [claude-code, codex-cli, cursor, antigravity, opencode, gemini-cli]
---

# Product Team — Domain Orchestrator & Discovery Loop

This orchestrator does two jobs. **Routing:** fork context, classify a product inquiry
with `scripts/product_goal_router.py` across all 16 product-team lanes (12 bundled + 4
standalone plugins), run exactly one, return a digest. **Looping:** run product work as
bounded agentic loops with machine-checkable gates — the continuous-discovery loop
(weekly cadence scored by `discovery_cadence_tracker.py`, tree structure enforced by
`ost_linter.py`) and goal-scale runs through the repo-wide agent-harness.

## When to invoke

| Symptom | Sub-skill |
|---|---|
| "Prioritize features / RICE / PRD" | `product-manager-toolkit` |
| "OKRs, strategy cascade" | `product-strategist` |
| "Personas, usability, research synthesis" | `ux-researcher-designer` |
| "Design tokens, WCAG contrast" | `ui-design-system` |
| "Competitor matrix, teardown" | `competitive-teardown` |
| "Retention, cohorts, funnels, KPIs" | `product-analytics` |
| "A/B test, sample size, hypothesis" | `experiment-designer` |
| "Discovery, assumptions, opportunity trees" | `product-discovery` |
| "Roadmap comms, release notes, changelog" | `roadmap-communicator` |
| "Spec → runnable repo" | `spec-to-repo` |
| "Landing page (Next.js/Tailwind)" | `landing-page-generator` |
| "SaaS boilerplate" | `saas-scaffolder` |
| "User stories, sprint capacity" | `agile-product-owner` (standalone) |
| "Apple HIG audit" | `apple-hig-expert` (standalone) |
| "PRD from an existing codebase" | `code-to-prd` (standalone) |
| "Summarize papers/articles" | `research-summarizer` (standalone) |

## Routing logic (deterministic)

```bash
python3 scripts/product_goal_router.py --text "<the goal>" --output json
```

Exit 0 → `route_to` names the skill (with `skill_path`, including the standalone
plugins): load its SKILL.md and follow its workflow. Exit 2 → ask ONE clarifying question
naming the listed candidates, with a recommended answer. Exit 3 → no signal: ask the user
to restate the goal with the deliverable named. Never guess silently; never silently
chain — digest first, confirm, then chain.

## The discovery loop (the domain's recurring agentic loop)

Modern discovery is a weekly habit, not a project phase (Torres). Run it as a bounded
loop with two machine gates:

1. **Observe** — maintain `discovery_log.json` (interviews, assumption tests; shape in
   `assets/sample_discovery_log.json`) and score the cadence:
   ```bash
   python3 scripts/discovery_cadence_tracker.py --input discovery_log.json
   ```
   Refuses on < 2 interviews (exit 5) — there is no cadence to measure yet. Output:
   health 0–100, verdict HEALTHY/AT-RISK/DORMANT, named gaps, and `next_loop_action`.
2. **Choose** — the tracker's `next_loop_action` IS the choice: book the touchpoint,
   re-anchor the guide on the outcome, or test the top untested assumption (route to
   `product-discovery`'s assumption_mapper for prioritization).
3. **Act** — run the interview / assumption test with the routed sub-skill's tools.
4. **Verify** — keep the tree structurally sound before it may drive a roadmap:
   ```bash
   python3 scripts/ost_linter.py --input ost.json    # exit 2 = NEEDS-REWORK, fix before citing the tree
   ```
   Rules: one measurable outcome root (O1), opportunities are needs not features (O2),
   targeted opportunities compare ≥ 2 solutions (O3), every solution has an assumption
   test (O4), no orphan solutions (O5 — the feature-factory tell).
5. **Record / Repeat-or-stop** — update the log, keep the weekly streak alive. Stop
   states: HEALTHY + validated assumption → graduate to `experiment-designer` (build the
   A/B gate) or `product-manager-toolkit` (PRD); DORMANT for 4+ weeks → escalate to the
   product lead by name — do not quietly let discovery die.

For build-scale goals ("turn this validated spec into a repo and verify it"), compile
through the repo-wide harness instead:

```bash
python3 engineering/agent-harness/skills/agent-harness/scripts/goal_compiler.py \
  --goal "<goal>" --manifest engineering/agent-harness/skills/agent-harness/assets/harnesses/product-team.json \
  --out .agent-harness/plan.json
```

The domain's three strongest close-out gates plug in as task verifications:
`../spec-to-repo/scripts/validate_project.py` (exit 0), `code-to-prd`'s golden
`expected_outputs/`, and `research-summarizer`'s citation-count check.

## Hard rules

1. **Evidence before conviction**: no roadmap item cites the OST unless `ost_linter.py`
   exits 0; no insight is asserted from a single participant (anecdote, not insight).
2. **Outcome-first**: every loop hangs from one measurable outcome — the linter's O1 rule
   is the intake gate.
3. **Experiments are gated by math**: sample size from
   `../experiment-designer/scripts/sample_size_calculator.py`, never gut feel; report the
   MDE with the verdict.
4. **Prioritization shows its framework**: RICE for steady-state, WSJF/cost-of-delay when
   time sensitivity dominates, opportunity scoring for underserved needs — name which and
   why (see [references/product_operating_model.md](references/product_operating_model.md)).
5. **AI features ship with evals**: a golden set + rubric is the PRD's quality contract
   for probabilistic features
   ([references/ai_product_evals.md](references/ai_product_evals.md)).
6. **Never modify a gate you are judged by**; exhausted budgets escalate to a named human,
   never report as success.

## Forcing-question library (grill-with-docs pattern)

One per turn, recommended answer, canon citation. Never run a sub-skill or start a loop
until the lane-defining decision is locked:

- **DISCOVERY lane**: "What is the single outcome this discovery serves, stated with a
  number? Recommended: write it as the OST root first — opportunities without an outcome
  are a feature factory. Canon: Torres, *Continuous Discovery Habits*; opportunity
  solution trees (producttalk.org)."
- **PRIORITIZE lane**: "Does time sensitivity change this ranking — would delaying any
  item a quarter erode its value? Recommended: if yes, run WSJF/cost-of-delay alongside
  RICE and compare ranks; flag items whose rank flips on a one-step estimate change.
  Canon: Reinertsen, *Principles of Product Development Flow*; SAFe WSJF false-precision
  critique."
- **EXPERIMENT lane**: "What baseline rate and MDE justify this test's runtime?
  Recommended: compute n first; if you can't reach it in 4 weeks, test a bigger lever.
  Canon: statistical power analysis (experiment-designer)."
- **ANALYTICS lane**: "Is your North Star a leading indicator of value exchange, or
  revenue/vanity? Recommended: leading value metric with an input tree. Canon: Amplitude,
  *The North Star Playbook*."
- **STRATEGY lane**: "Are these OKRs outcomes or shipping lists? Recommended: outcomes —
  output OKRs are the #1 operating-model failure. Canon: Cagan, *Transformed* (SVPG,
  2024)."
- **BUILD lanes (spec-to-repo / saas-scaffolder)**: "Which validated assumption says this
  should be built at all? Recommended: link the OST test that survived; building is the
  most expensive way to test an idea. Canon: Torres; Bland, *Testing Business Ideas*."

## Assumptions

1. The user owns (or advises the owner of) the product decision.
2. Discovery data lives in the workspace as JSON logs — the loop is file-backed and
   resumable; every tool ships `--sample` so the shape is visible first.
3. The four standalone plugins are installed alongside the bundle (the router still
   routes to them by path if not).

## Non-goals

- Not the delivery loop — sprint/flow/Jira work routes to `project-management`.
- Not the generic loop engine — that is `engineering/agent-harness`; this orchestrator is
  the product-domain adapter (router + discovery gates).
- Not campaign marketing — `marketing/landing` builds from-scratch marketing pages;
  `landing-page-generator` here scaffolds product Next.js/TSX pages.

## Output artifacts

| Mode | Artifact |
|---|---|
| Route | Sub-skill's own artifact + ≤ 200-word digest with one canon-cited challenge |
| Discovery loop | `discovery_log.json` + cadence report + linted `ost.json` |
| Harness run | `.agent-harness/plan.json` + `state.json` + close handoff |

## Anti-patterns (do not)

- ❌ Run all 16 lanes "to be thorough" — route to one, digest, chain on confirmation
- ❌ Cite an OST that fails the linter, or promote a single-participant anecdote to insight
- ❌ Ship an AI feature whose PRD has no eval (golden set + rubric)
- ❌ Let the discovery streak die silently — DORMANT escalates by name
- ❌ Treat RICE as the only prioritization lens when deadlines dominate

## References

- [references/continuous_discovery_canon.md](references/continuous_discovery_canon.md) —
  Torres, OST, assumption testing, JTBD switch interviews, story mapping
- [references/product_operating_model.md](references/product_operating_model.md) — Cagan
  *Transformed*, North Star framework, PLG benchmarks, WSJF/ODI vs RICE
- [references/ai_product_evals.md](references/ai_product_evals.md) — evals-as-PRD, model
  cards, evaluator-optimizer loops
- Loop engine: `engineering/agent-harness` · Loop vocabulary: `loop-library`
06

Get started

Starter prompts for the main use cases—copy and use them directly.

01

Route a product request to one supported specialist

Route a product request to one supported specialist Use for: Route a product request to one supported specialist. Prepare: A product goal, research evidence, JSON discovery logs or trees, and installed target Skills.

Show prompt and variablesHide prompt and variables
Use the installed product-skills Skill. Task: Route a product request to one supported specialist. Inputs: [INPUT]. Constraints: [CONSTRAINTS]. Check missing information first. Produce a reviewable result with evidence, assumptions, and next steps. Install the product collection and required standalone plugins; the router alone cannot execute missing lanes. Build-scale loops additionally reference the separate agent-harness.

Replace these variables

[INPUT]
A product goal, research evidence, JSON discovery logs or trees, and installed target Skills.
[CONSTRAINTS]
Scope, allowed actions, output format, and review requirements.
02

Review interview and assumption-test cadence

Review interview and assumption-test cadence Use for: Review interview and assumption-test cadence. Prepare: A product goal, research evidence, JSON discovery logs or trees, and installed target Skills.

Show prompt and variablesHide prompt and variables
Use the installed product-skills Skill. Task: Review interview and assumption-test cadence. Inputs: [INPUT]. Constraints: [CONSTRAINTS]. Check missing information first. Produce a reviewable result with evidence, assumptions, and next steps. Install the product collection and required standalone plugins; the router alone cannot execute missing lanes. Build-scale loops additionally reference the separate agent-harness.

Replace these variables

[INPUT]
A product goal, research evidence, JSON discovery logs or trees, and installed target Skills.
[CONSTRAINTS]
Scope, allowed actions, output format, and review requirements.
03

Check an opportunity tree before using it for roadmap decisions

Check an opportunity tree before using it for roadmap decisions Use for: Check an opportunity tree before using it for roadmap decisions. Prepare: A product goal, research evidence, JSON discovery logs or trees, and installed target Skills.

Show prompt and variablesHide prompt and variables
Use the installed product-skills Skill. Task: Check an opportunity tree before using it for roadmap decisions. Inputs: [INPUT]. Constraints: [CONSTRAINTS]. Check missing information first. Produce a reviewable result with evidence, assumptions, and next steps. Install the product collection and required standalone plugins; the router alone cannot execute missing lanes. Build-scale loops additionally reference the separate agent-harness.

Replace these variables

[INPUT]
A product goal, research evidence, JSON discovery logs or trees, and installed target Skills.
[CONSTRAINTS]
Scope, allowed actions, output format, and review requirements.
07

Risks and operating notes

Known limits

Install the product collection and required standalone plugins; the router alone cannot execute missing lanes. Build-scale loops additionally reference the separate agent-harness.

Evidence and review

Source and package files reviewed on October 25, 2026: GitHub 6d2f02ea077e. This is a static review, not an installation or business-outcome test.

Before acting on the result

Use authorized inputs and keep secrets out of prompts. Review customer-facing claims, calculations, code changes, and any proposed external action before applying them.

Frequently asked questions

What does it do, and what is the advantage?

Route product work and check continuous-discovery cadence and Opportunity Solution Trees. Version 2.11.1 adds three Python tools for routing, cadence scoring, and tree linting across 12 bundled and four separately packaged lanes.

How do I install it and start?

Choose the method for your agent and install the complete package, not just the displayed SKILL.md. A product goal, research evidence, JSON discovery logs or trees, and installed target Skills. Start a new agent session and explicitly ask to use product-skills. Try one use case below with a small sample and review the output.

Which situations is it useful for?

Route a product request to one supported specialist; Review interview and assumption-test cadence; Check an opportunity tree before using it for roadmap decisions

What limitations should I know?

Install the product collection and required standalone plugins; the router alone cannot execute missing lanes. Build-scale loops additionally reference the separate agent-harness.

What was checked for this page?

Source and package files reviewed on October 25, 2026: GitHub 6d2f02ea077e. This is a static review, not an installation or business-outcome test.

Community rating results

Task effectiveness
Setup and ease of use
Reliability and guardrails
Documentation clarity
Time to first useful result

No reviews yet.

Leave a review

Rate every dimension, then share your real experience.

Task effectiveness
Setup and ease of use
Reliability and guardrails
Documentation clarity
Time to first useful result
Author / maintainer

Alireza Rezvani

Source and package files reviewed on October 25, 2026: GitHub 6d2f02ea077e. This is a static review, not an installation or business-outcome test.

Content checked: