claudeers.
// Claude Plugins

product-pipeline-public

Run a product initiative as a tracked journey — not a toolbox of one-shot answers. Persistent state, living PRD, evidence-typed hypotheses.

// Claude Plugins[ cli ][ api ][ desktop ][ web ][ mobile ][ claude ]#claude#ai-pm#claude-code#claude-code-plugin#claude-plugin#continuous-discovery#double-diamond#pm-tools#plugins◷ MIT$open-sourceupdated about 1 month ago
Actively maintained
88/100
last commit 2 months ago
last release 5 months ago
releases 1
open issues 0
// star history

Install with your AI

Paste into Claude Code, Cursor, or any agent — it reads the repo and wires the tool into your project.

Install and set up product-pipeline-public (release-binary project) into my current project.
Found on https://claudeers.com/product-pipeline-public
Repo: https://github.com/lenar-amirov/product-pipeline-public
Homepage/docs: —
Detected install method: release-binary → inspect the README
Category: plugins. Platforms: cli, api, desktop, web, mobile.
Read the repo's README for exact setup and env vars, then install it and wire it into my project.

Claudeers Health Verdict:
active; community-verified: false. Confirm the source before running anything.
// or install directly (release-binary)

Grab the latest release asset from GitHub.

# download a build from https://github.com/lenar-amirov/product-pipeline-public/releases
// or clone
git clone https://github.com/lenar-amirov/product-pipeline-public

// compatibility

Platformscli, api, desktop, web, mobile
Operating systems—
AI compatibilityclaude
LicenseMIT
Pricingopen-source
LanguagePython

Get your FREE $2.50 API credits to access TickAtlas financial data ↗

Product Discovery

Run a product initiative as a tracked journey — from one-sentence problem to PRD, with persistent state across sessions.

Not a toolbox of one-shot AI answers. A structured pipeline where every session adds to the same initiative — drill-down questions, evidence-typed hypotheses, a PRD that builds incrementally, and a decision log you can come back to next week.

Built on Claude Code. Powered by Double Diamond, Teresa Torres' Continuous Discovery, and Marty Cagan's Product Discovery.

Requires Claude Code desktop app or CLI (not the web version — needs persistent local state).


Why this, and not a PM skill toolbox?

There are great PM skill collections — pm-skills (60+ skills), Anthropic's official PM plugin (/write-spec, /synthesize-research, /competitive-brief) — that you call ad-hoc. They're excellent for one-shot answers, and stateless by design.

Product Discovery is different. It's not a toolbox — it's a journey:

PM toolbox (pm-skills, Anthropic PM plugin)Product Discovery (this)
Unit of workOne question, one answerPoint-entry jobs that accumulate into one tracked initiative
StateStateless — Claude forgets next timePersistent: hypothesis registry, decision log, living PRD, coverage map
PRDGenerated when you askLiving document, sections fill as evidence arrives
EvidenceFree-form textTyped (REAL / SYNTHETIC / INFERRED, confidence 0.0–1.0) in a machine-readable registry, validated every session
ContinuityEach session is a fresh startResume exactly where you stopped, with full context
Best forQuick answers on any PM taskWorking a real product initiative through to launch

Use a PM toolbox when you want quick help with one specific task. Use Product Discovery when you've committed to a real initiative and want a tracked path from problem to launch.

(They complement each other — you can install both.)


Get started in 30 seconds

1. Get the tool

git clone https://github.com/lenar-amirov/product-pipeline-public.git pm-copilot
cd pm-copilot && claude

That's it. No questions, no restart, no required dependencies — bare python3 is enough (pip3 install rich is optional, for a prettier dashboard).

No git? Download ZIP, unpack, open the folder in Claude Code.

Where your work lives: initiatives are created by the tool itself inside this folder ({your-name}/{initiative}/) — gitignored by design, so they never enter the public repo and never conflict with updates.

Updates: git pull. Your initiatives are untouched; if you've customized CLAUDE.md, stash your changes first or work in a fork.

2. Describe your problem

You'll see:

╭────────────────────────────────────────╮
│                                        │
│  ◆ Product Discovery                   │
│  PM Copilot                            │
│                                        │
╰────────────────────────────────────────╯

  What product problem are you working on?

  Or start with a job right away:
    "read this deck"  ·  "I need an analyst brief"  ·  "break down problem X"

Type one sentence. For example:

Users add items to cart but never complete checkout on mobile

3. Value first — the initiative is created after

Claude runs the matching job immediately: for a problem statement you get 3–5 problem hypotheses (typed INFERRED until validated) with ONE sharp challenge question woven in; for "here's a deck from the analyst" it ingests the deck; for "I need an analyst brief" it writes the brief.

Only then it offers: "Save this as initiative <slug>?" — say yes and the folder appears with a hypothesis registry, status and a decision log. Close Claude, come back next week — the session resumes exactly where you stopped, with the dashboard showing coverage, overdue dependencies and evidence issues.


How it works — jobs, not steps

You don't march through a checklist. You come with a moment — "read this deck", "which hypotheses hold?", "tomorrow's the gate" — and call the matching job. Each job works standalone and quietly records what it learned into the initiative's state.

JobWhen you reach for it
/hypothesesbreak a problem into testable hypotheses (MECE)
/ingestyou were handed a deck / export / wiki page — pull the numbers in
/briefyou need a brief for an analyst or designer
/validatedata arrived — confirm, refute or flag hypotheses against it
/solutionsturn confirmed problems into scored solution bets
/sketchdraw the screens for a solution
/challengerehearse a gate — three hostile stakeholders attack your deck
/ticketsbreak the solution into Jira/Linear/GitHub tickets
/next"what's the most valuable thing to do now?"
/deep-thinka strategy question that isn't an initiative yet

Legacy step commands (/analyze-cjm, /validate-problems, …) still work as aliases — the numbered pipeline (steps 0–19) is the internal structure the jobs draw on, not something you navigate by hand.

Progress is evidence coverage, not "step N of 20"

The dashboard shows a coverage map of seven phases, computed from your actual state — the registry, the artifacts, the gate checks — not from how many commands you've run:

Frame 2/4 · Evidence 3/3 · Solution 0/2 · Bet 0/1 · Build 0/2 · Launch 0/3 · Learn 0/1
focus → Solution: no solutions linked to confirmed hypotheses yet

Gates (Problem Research Report, Solution Research Report) have machine preconditions: you can't assemble the deck until ≥2 hypotheses are confirmed REAL, the registry has no unreconciled contradictions, and the frame (metric / target / kill criteria) is set. After launch, the Learn phase closes the loop — actual vs target, production verdicts on each hypothesis, and reusable facts banked for your next initiative.

What you accumulate over the journey

ArtifactWhat it is
CONTEXT.mdThe initiative's frame: metric, segment, baseline, constraints, OKR — never re-explained
hypotheses.jsonMachine-readable hypothesis registry: status, evidence type, confidence, sources, full history of every transition. Validated on each session start; registry.md and ost.md (Opportunity Solution Tree) are generated views
status.jsonMachine state: step statuses, dependencies[] (external work with owner + deadline, flagged OVERDUE on the dashboard), pipeline config — Claude resumes from here
decisions.mdLog of every meaningful decision and discussion across sessions
hypotheses.mdNarrative hypothesis analysis (the registry holds the machine state)
.initiatives-digest.mdAuto-generated cross-initiative summary + banked knowledge facts — Claude spots overlaps with past initiatives
PRD.mdLiving document — sections fill as evidence arrives, not at the end
Problem Research ReportGate deck: validated problem + solution sketch (gate-checked before assembly)
Solution Research ReportGate deck: designed solution + AB test plan (gate-checked before assembly)
tickets.mdDev tickets — pushed to Jira/Linear/GitHub via MCP if connected

What's bundled

ComponentRole
CLAUDE.mdMaster prompt — session lifecycle, FIRST LAUNCH value-first flow, JOBS CATALOG
.claude/settings.jsonSessionStart hooks: dashboard, initiatives digest, evidence audit
.claude/skills/23 specialized skills — problem structuring, ingestion, validation, scoring, gate rehearsal, PRD, post-launch review, etc.
.claude/rules/Path-scoped rules: output formats, evidence typing, writing style
template/Initiative scaffold copied for each new initiative
tools/scripts/status.pyTerminal dashboard: coverage map, OVERDUE dependencies, /next hint
tools/scripts/hypotheses.pyHypothesis registry engine: add / set / validate / render (state + full history)
tools/scripts/validate-evidence.pyEvidence audit + --gate preconditions that block deck assembly
tools/scripts/coverage.pyThe coverage map: 7 phases with exit criteria computed from actual state
tools/scripts/scan-initiatives.pyRegenerates .initiatives-digest.md — cross-initiative awareness at every session start
tools/scripts/render-ost.py · render-pdf.py · generate-pptx.pyOpportunity Solution Tree, PDF→PNG for /ingest, gate decks → .pptx
tools/scripts/check-leaks.py + install-hooks.shPre-push guard against committing personal data (see Privacy)
tools/web/Optional read-only web dashboard (Flask) + static_export.py — dependency-free single-file HTML export

(Full inventory with the "why" of every file: docs/REPO-MAP.md.)

Your initiative folder

you/my-initiative/
├── CONTEXT.md              ← metric, segment, baseline, constraints
├── CJM/                    ← user journey screenshots
├── research/               ← analytics briefs, survey design, competitive analysis
└── output/                 ← hypotheses, PRD, presentations, decision log

No templates to choose — you run the jobs you need

There's no "pick a workflow" step. A new initiative starts with everything available; you call the jobs your situation calls for, and the coverage map shows what evidence is still missing. Got rich data already? Go straight to /ingest and /validate. Fuzzy problem? Start with /hypotheses. Only a strategy question? /deep-think. Each step carries a Core / Recommended / Optional weight so /next knows what's safe to skip — but the choice of what to do is always the job in front of you, never a template up front.


Tracker integration

After Solution Research Report, push tickets to your tracker via MCP. Set the tracker in CONTEXT.md → ## Tracker section.

Jira + Confluence

MCP config lives in .mcp.json at the repo root — gitignored, because it holds your real API token. Never put credentials in .claude/settings.json (tracked by git).

  1. Copy .mcp.json.example → .mcp.json
  2. Fill in your Jira/Confluence URL and API token (Atlassian Cloud: https://id.atlassian.com/manage-profile/security/api-tokens)
  3. If your company runs a different Jira/Confluence MCP server package, put its command/args in — the example uses a placeholder package name
  4. Restart Claude Code and approve the servers when prompted

Linear

Add a linear entry to the same .mcp.json with the MCP server your team uses (API key: Linear → Settings → API → Personal API keys).

GitHub Issues

No extra MCP — Claude Code uses gh CLI natively. Run gh auth status to verify you're logged in.

No tracker

Skip MCP. /create-tickets writes output/tickets.md for manual copy-paste.


Requirements

  • Claude Code — CLI, desktop app, or IDE extension (not web)
  • Python 3.9+ (macOS system Python works; no packages required for the core)
  • pip3 install rich — optional, prettier terminal dashboard (plain-text fallback works without it)

Optional, install on demand:

  • pip3 install python-pptx — when you reach /create-presentation (step 10) or /create-gate2-presentation (step 15)
  • pip3 install flask markdown — only if you want the optional Flask web dashboard at tools/web/app.py

Optional: Flask web dashboard

tools/web/app.py provides a visual dashboard:

pip3 install flask markdown
PM_USERS=$(cat .pm-local) python3 tools/web/app.py
# open http://127.0.0.1:5000/{your-name}/

It binds to 127.0.0.1 and is a local viewer — it has no real authentication. Set PIPELINE_HOST=0.0.0.0 only on a network you trust.

No Flask? python3 tools/web/static_export.py <you>/<initiative> emits a self-contained HTML dashboard for one initiative (no dependencies).

Most users don't need either — tools/scripts/status.py (auto-run at session start) shows the same info in the terminal.


FAQ

How do I continue working? Open Claude Code in the project directory. The SessionStart hook runs status.py which loads your last state. Type "continue" and Claude picks up where you stopped.

Do I have to run every step? No. Run the jobs your situation needs; the coverage map shows what evidence is still missing, and /next recommends the most valuable action from your actual state. If you want to switch a specific step off, tell Claude "disable competitor research" — the per-step config lives in output/status.json → pipeline_config. (There are no workflow templates to pick — that model was retired.)

Can I work on multiple initiatives in parallel? Yes. Each initiative is a separate folder with its own CONTEXT.md, status.json, decisions.md. Claude shows all initiatives at session start; you select one.

What are Problem Research Report and Solution Research Report? Two presentations for stakeholders:

  • Problem Research Report (after step 10) — validated problem + solution sketch
  • Solution Research Report (after step 15) — designed solution + AB test plan

What's the difference between step types?

  • Core — pipeline breaks without it
  • Recommended — strongly suggested; skipping reduces confidence
  • Optional — useful in specific contexts only

Where are my personal preferences stored?

  • pm-profile.md — your role, company, working style (gitignored, personal)
  • .product-corrections.md — accumulated corrections you've taught Claude (gitignored)
  • .initiatives-digest.md — auto-generated overview of all your initiatives

Get in touch

Product Discovery ships continuously — see CHANGELOG for what's new and docs/ for the design decisions behind the tool. Real PM feedback shapes the next iterations.


Privacy

Product Discovery is local-first — there is no server, no telemetry, no analytics. Everything lives on your machine. Claude Code processes your conversation through Anthropic; integrations you connect (Jira / Linear MCP) see the ticket data you push.

Extra guard for contributors: tools/scripts/install-hooks.sh installs a pre-push hook that blocks pushes containing initiative folders, credential files, token-like values, or your personal markers from a gitignored .leak-patterns file.

See PRIVACY.md for full details.


License

MIT

// faq

What is product-pipeline-public?

Run a product initiative as a tracked journey — not a toolbox of one-shot answers. Persistent state, living PRD, evidence-typed hypotheses.. It is open-source on GitHub.

Is product-pipeline-public free to use?

product-pipeline-public is open-source under the MIT license, so it is free to use.

What category does product-pipeline-public belong to?

product-pipeline-public is listed under plugins in the Claudeers registry of Claude-compatible tools.

3 views
★ 12 stars
unclaimed
updated about 1 month ago

// embed badge

product-pipeline-public on Claudeers
[![Claudeers](https://claudeers.com/api/badge/product-pipeline-public.svg)](https://claudeers.com/product-pipeline-public)

// retro hit counter

product-pipeline-public hit counter
[![Hits](https://claudeers.com/api/counter/product-pipeline-public.svg)](https://claudeers.com/product-pipeline-public)

// reviews

// guestbook

0/500

// related in Claude Plugins

🔓

A single CLAUDE.md file to improve Claude Code behavior, derived from Andrej Karpathy's observations on LLM coding pitfalls.

// pluginsmultica-ai/★ 215,548[ claude ]
🔓

Claude Code is an agentic coding tool that lives in your terminal, understands your codebase, and helps you code faster by executing routine tasks, explainin…

// pluginsanthropics/⟨Python⟩★ 147,969[ claude ]
🔓

"CLI-Anything: Making ALL Software Agent-Native" -- CLI-Hub: https://clianything.cc/

// pluginsHKUDS/⟨Python⟩★ 50,756◷ Apache-2.0[ claude ]
🔓

financial-services — a Claude ecosystem project on GitHub.

// pluginsanthropics/⟨Python⟩★ 37,359◷ Apache-2.0[ claude ]
→ see how product-pipeline-public connects across the ecosystem