# How to Use the pm-product-discovery Plugin: A Complete Guide for Product Managers

> Master the pm-product-discovery plugin with this comprehensive guide. Automate interview summarization, feature prioritization, and assumption testing for efficient product management.

- Repository: [Pawel Huryn/pm-skills](https://github.com/phuryn/pm-skills)
- Tags: how-to-guide
- Published: 2026-06-20

---

**The pm-product-discovery plugin is a Claude-compatible extension that bundles markdown-based product discovery skills and slash commands to automate interview summarization, feature prioritization, and assumption testing.**

The **pm-product-discovery** plugin from the `phuryn/pm-skills` repository transforms Claude into a guided product management assistant. Unlike traditional plugins that require compiled code, this extension uses pure markdown files to define reusable skills and commands. This architecture makes it easy to version control, customize, and extend without redeploying any software.

## What Is the pm-product-discovery Plugin?

The **pm-product-discovery** plugin registers a set of slash commands (e.g., `/pm-product-discovery:interview`) within Claude's chat interface. When invoked, these commands trigger specific **skills**—self-contained markdown definitions stored in the repository—that execute step-by-step frameworks for product discovery tasks. Each skill contains structured instructions, input prompts, and output templates, allowing Claude to guide users through complex PM workflows like ICE scoring or assumption mapping.

## Plugin Architecture and Source Files

Understanding the file structure helps you locate specific capabilities and extend the plugin with custom skills.

### Plugin Manifest

The entry point is [`pm-product-discovery/.claude-plugin/plugin.json`](https://github.com/phuryn/pm-skills/blob/main/pm-product-discovery/.claude-plugin/plugin.json), which registers the plugin with Claude and exposes the available commands. This JSON file contains metadata including the plugin name, version, description, and keywords that Claude uses to categorize the extension.

### Skills Directory

Skills are reusable markdown definitions stored in `pm-product-discovery/skills/`. Each skill resides in its own subdirectory containing a [`SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/SKILL.md) file. For example:

- [`pm-product-discovery/skills/summarize-interview/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/pm-product-discovery/skills/summarize-interview/SKILL.md) – Defines the interview summarization workflow
- [`pm-product-discovery/skills/prioritize-features/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/pm-product-discovery/skills/prioritize-features/SKILL.md) – Contains the ICE/RICE prioritization framework
- [`pm-product-discovery/skills/metrics-dashboard/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/pm-product-discovery/skills/metrics-dashboard/SKILL.md) – Templates for North Star metric definitions

Each skill file includes a YAML frontmatter header, human-readable description, step-by-step instructions, and optional "Further Reading" links.

### Commands Directory

Command mappings live in `pm-product-discovery/commands/`. These short markdown files (e.g., [`interview.md`](https://github.com/phuryn/pm-skills/blob/main/interview.md), [`brainstorm.md`](https://github.com/phuryn/pm-skills/blob/main/brainstorm.md)) map slash commands to specific skills, providing UI hints and parameter definitions that Claude displays when users type the command prefix.

### Skill Catalog

The [`pm-product-discovery/README.md`](https://github.com/phuryn/pm-skills/blob/main/pm-product-discovery/README.md) serves as the master index, listing all available skills and commands with brief descriptions for quick reference.

## How to Invoke pm-product-discovery Commands

Using the plugin requires no installation beyond Claude having access to the repository. Simply type the slash commands in your chat interface.

### Summarize a Customer Interview

```text
/pm-product-discovery:interview

```

Claude prompts you to upload a transcript file or paste text. The plugin executes the **summarize-interview** skill defined in [`summarize-interview/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/summarize-interview/SKILL.md), returning a structured markdown output containing Date, Participants, Current Solution, Problems, Key Insights, and Action Items.

### Prioritize a Feature Backlog

```text
/pm-product-discovery:brainstorm

```

When you specify that you want to prioritize features, Claude invokes the **prioritize-features** skill. Provide a list of feature ideas or attach a spreadsheet. The skill evaluates each item on Impact, Effort, Risk, and Strategic Alignment, then returns a ranked table of the top five recommendations.

### Run a Full Discovery Cycle

```text
/pm-product-discovery:discover

```

This high-level command orchestrates a composite workflow across multiple skills:

1. **brainstorm-ideas-new** – Generates product ideas from PM, Designer, and Engineer perspectives
2. **identify-assumptions-new** – Surfaces risky assumptions for each idea
3. **prioritize-assumptions** – Ranks assumptions by Impact × Risk
4. **brainstorm-experiments-new** – Designs validation experiments for top assumptions
5. **metrics-dashboard** – Defines a tracking dashboard for the selected solution

The output is a collection of markdown artifacts ready for your product backlog.

### Create a Customer Interview Script

```text
/pm-product-discovery:interview

```

When prompted, specify that you need an **interview script**. Claude invokes the **interview-script** skill found in [`interview-script/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/interview-script/SKILL.md), delivering a structured script with warm-up questions, JTBD (Jobs-to-be-Done) probing sections, and wrap-up instructions.

### Set Up a Metrics Dashboard

```text
/pm-product-discovery:setup-metrics

```

Claude asks for your product's North Star metric and supporting health metrics. The **metrics-dashboard** skill returns a dashboard layout, data source suggestions, and alert thresholds in markdown format.

## Command Reference Table

| Command | Underlying Skill | Typical Input | Primary Output |
|---------|------------------|---------------|----------------|
| `/pm-product-discovery:interview` | `summarize-interview` or `interview-script` | Transcript file or interview goal | Structured summary or script |
| `/pm-product-discovery:brainstorm` | `brainstorm-ideas-new` / `brainstorm-ideas-existing` | Product context | Ideation list with perspectives |
| `/pm-product-discovery:discover` | Composite workflow (5 skills) | Product brief | Full discovery artifacts |
| `/pm-product-discovery:setup-metrics` | `metrics-dashboard` | North Star metric name | Dashboard design markdown |
| `/pm-product-discovery:triage-requests` | `analyze-feature-requests` | CSV of feature requests | Prioritized list with themes |

## Extending the Plugin

Because the pm-product-discovery plugin consists solely of markdown files, you can extend it by adding new skill directories or command mappings. Create a new folder under `pm-product-discovery/skills/` with a [`SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/SKILL.md) file following the existing YAML frontmatter structure, then map a command to it in `pm-product-discovery/commands/`. Claude automatically picks up changes on the next plugin load without requiring code compilation or deployment.

## Summary

- The **pm-product-discovery** plugin adds slash commands to Claude for structured product management workflows
- Skills are defined in markdown files under `pm-product-discovery/skills/` (e.g., [`summarize-interview/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/summarize-interview/SKILL.md))
- Commands are mapped in `pm-product-discovery/commands/` and registered via [`pm-product-discovery/.claude-plugin/plugin.json`](https://github.com/phuryn/pm-skills/blob/main/pm-product-discovery/.claude-plugin/plugin.json)
- Invoke skills using `/pm-product-discovery:` followed by the command name (e.g., `interview`, `brainstorm`, `discover`)
- The plugin outputs markdown artifacts that integrate directly into product backlogs and documentation

## Frequently Asked Questions

### How do I install the pm-product-discovery plugin?

The pm-product-discovery plugin requires no traditional installation. As a Claude-compatible extension consisting of markdown files, you simply need Claude to access the `phuryn/pm-skills` repository. Once accessible, Claude reads the plugin manifest from [`pm-product-discovery/.claude-plugin/plugin.json`](https://github.com/phuryn/pm-skills/blob/main/pm-product-discovery/.claude-plugin/plugin.json) and exposes the slash commands automatically.

### Can I modify the skills to match my company's frameworks?

Yes. Since skills are stored as markdown files (e.g., [`pm-product-discovery/skills/prioritize-features/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/pm-product-discovery/skills/prioritize-features/SKILL.md)), you can edit the step-by-step instructions, add your own scoring rubrics, or modify the output templates. Changes take effect immediately upon the next plugin load because there is no compiled code to rebuild.

### What is the difference between a skill and a command in this plugin?

A **skill** is the underlying markdown definition that describes a capability (e.g., how to summarize an interview), stored in the `skills/` directory. A **command** is the user-facing slash trigger (e.g., `/pm-product-discovery:interview`) defined in the `commands/` directory that maps to a specific skill. One skill can be referenced by multiple commands, and commands provide the UI hints that appear in Claude's chat interface.

### Does the plugin store my interview transcripts or data?

No. According to the repository structure, the pm-product-discovery plugin operates statelessly. When you provide a transcript or feature list, Claude processes it temporarily to generate the markdown output, but no data persists in the repository or plugin files. All artifacts are generated fresh for each session and returned directly in the chat.