# How the /discover Command Chains Multiple Skills for Workflow Automation

> Discover how the /discover command automates workflows by orchestrating modular AI skills, chaining them sequentially, and propagating context for efficient product discovery.

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

---

**The `/discover` command orchestrates a seven-step product discovery workflow by sequentially invoking modular AI skills—such as brainstorming, assumption identification, and experiment design—while propagating context between steps and pausing at user checkpoints.**

The `phuryn/pm-skills` repository implements a composable AI-driven framework for product management workflows. At its core, the `/discover` command demonstrates how to chain multiple skills for workflow automation, transforming a single user prompt into a comprehensive, end-to-end discovery process. This architecture enables deterministic execution while maintaining flexibility through human-in-the-loop interactions.

## The Seven-Step Skill Chain Orchestrated by /discover

When you invoke `/discover <idea>`, the command defined in [`pm-product-discovery/commands/discover.md`](https://github.com/phuryn/pm-skills/blob/main/pm-product-discovery/commands/discover.md) executes a deterministic sequence of specialized skills. Each skill operates as a discrete module with a specific responsibility in the product discovery lifecycle.

### Step 1: Context Understanding

The workflow begins within [`discover.md`](https://github.com/phuryn/pm-skills/blob/main/discover.md) itself, determining whether the user is conducting **continuous discovery** for an existing product or **initial discovery** for a new concept. This step collects background information, uploaded research, and clarifies the specific discovery question to anchor subsequent analysis.

### Step 2: Multi-Perspective Ideation

Depending on the context established in Step 1, the command invokes either [`brainstorm-ideas-existing.md`](https://github.com/phuryn/pm-skills/blob/main/brainstorm-ideas-existing.md) or [`brainstorm-ideas-new.md`](https://github.com/phuryn/pm-skills/blob/main/brainstorm-ideas-new.md). These skills generate divergent ideas from three distinct perspectives—Product Manager, Designer, and Engineer—surfacing the top 10 candidates (or 5 per perspective). The logic includes a **checkpoint** that pauses execution to let users select which ideas warrant further investigation.

### Step 3: Assumption Identification

For each selected idea, the command chains to either [`identify-assumptions-existing.md`](https://github.com/phuryn/pm-skills/blob/main/identify-assumptions-existing.md) or [`identify-assumptions-new.md`](https://github.com/phuryn/pm-skills/blob/main/identify-assumptions-new.md). This skill employs a devil's-advocate analysis to surface risky assumptions across the **Value, Usability, Feasibility, and Viability** categories (plus Go-to-Market for new products), producing a master list of hypotheses that could invalidate the concept.

### Step 4: Assumption Prioritization

The [`prioritize-assumptions.md`](https://github.com/phuryn/pm-skills/blob/main/prioritize-assumptions.md) skill ranks the identified assumptions on an **Impact × Risk** matrix. It highlights "leap-of-faith" assumptions and groups testable hypotheses into a ranked table that drives the experimental design phase.

### Step 5: Experiment Design

Based on the prioritization output, the command invokes either [`brainstorm-experiments-existing.md`](https://github.com/phuryn/pm-skills/blob/main/brainstorm-experiments-existing.md) or [`brainstorm-experiments-new.md`](https://github.com/phuryn/pm-skills/blob/main/brainstorm-experiments-new.md). This skill designs 1-2 concrete validation experiments—such as A/B tests, fake door tests, or pretotypes—for each high-priority assumption, complete with success criteria, effort estimates, and timelines.

### Step 6: Discovery Plan Synthesis

Returning to [`discover.md`](https://github.com/phuryn/pm-skills/blob/main/discover.md), Step 6 compiles all accumulated outputs—selected ideas, assumptions tables, and experiment designs—into a markdown **Discovery Plan**. The system saves this document to the user's workspace as a structured file (e.g., [`AI-writing-assistant-discovery-plan.md`](https://github.com/phuryn/pm-skills/blob/main/AI-writing-assistant-discovery-plan.md)), creating a persistent artifact for team collaboration.

### Step 7: Next-Step Recommendations

The final step suggests follow-up actions such as creating a PRD, drafting interview scripts, or setting up metrics. This extensible design allows the workflow to transition seamlessly into execution phases or iterate on the discovery process.

## Architectural Design of the Skill Chaining System

The `/discover` command implements a sophisticated orchestration pattern that balances automation with user agency.

### Modular Skill Definition

Each skill resides in its own markdown file under `pm-product-discovery/skills/`, containing a YAML header with `name` and `description` fields followed by step-by-step instructions that the Claude engine executes. This modularity enables teams to update individual skills without affecting the broader workflow chain.

### Plugin Registration and Command Metadata

The [`discover.md`](https://github.com/phuryn/pm-skills/blob/main/discover.md) file includes front-matter metadata (`description`, `argument-hint`) that registers the command with the Claude plugin system. The parent plugin definition in [`pm-product-discovery/.claude-plugin/plugin.json`](https://github.com/phuryn/pm-skills/blob/main/pm-product-discovery/.claude-plugin/plugin.json) packages all discovery-related skills, making the `/discover` command available immediately upon plugin installation without additional configuration.

### Context Propagation Between Skills

Rather than treating each skill as an isolated call, the command maintains a **shared context** that accumulates outputs from previous steps. When [`brainstorm-ideas-new.md`](https://github.com/phuryn/pm-skills/blob/main/brainstorm-ideas-new.md) returns a list of selected ideas, that data persists in the session context for [`identify-assumptions-new.md`](https://github.com/phuryn/pm-skills/blob/main/identify-assumptions-new.md) to reference. This eliminates duplicate data fetching and ensures consistency across the workflow chain.

### Human-in-the-Loop Checkpoints

The architecture inserts explicit "Checkpoint" prompts at critical decision points—such as after ideation or assumption prioritization. These pauses allow users to steer the workflow by selecting specific ideas for deeper analysis or skipping steps, ensuring the automation augments rather than replaces human judgment.

## Practical Workflow Example

Consider executing a full discovery workflow for a new AI writing assistant:

```markdown
/discover AI writing assistant for non-native speakers

```

The interaction proceeds as follows:

1. **Context gathering**: The command asks "Existing or new product?" and the user selects **new**.
2. **Ideation**: [`brainstorm-ideas-new.md`](https://github.com/phuryn/pm-skills/blob/main/brainstorm-ideas-new.md) generates 15 ideas (5 per perspective).
3. **Checkpoint**: The system prompts "Pick 3-5 ideas" and the user selects 4.
4. **Assumption surfacing**: [`identify-assumptions-new.md`](https://github.com/phuryn/pm-skills/blob/main/identify-assumptions-new.md) lists risks like "Will users adopt the AI?"
5. **Prioritization**: [`prioritize-assumptions.md`](https://github.com/phuryn/pm-skills/blob/main/prioritize-assumptions.md) surfaces the riskiest assumptions.
6. **Experiment design**: [`brainstorm-experiments-new.md`](https://github.com/phuryn/pm-skills/blob/main/brainstorm-experiments-new.md) proposes pretotype landing pages and concierge MVPs.
7. **Synthesis**: The command writes [`AI-writing-assistant-discovery-plan.md`](https://github.com/phuryn/pm-skills/blob/main/AI-writing-assistant-discovery-plan.md) containing all sections, tables, and timelines.

## Summary

- The `/discover` command chains **seven specialized skills** into a deterministic product discovery workflow.
- Skills are modular files stored in `pm-product-discovery/skills/`, allowing independent updates and reusability.
- **Context propagation** maintains state across steps, passing ideas and assumptions from ideation through experiment design.
- **User checkpoints** at key decision points ensure human oversight while maintaining workflow momentum.
- The plugin architecture in [`pm-product-discovery/.claude-plugin/plugin.json`](https://github.com/phuryn/pm-skills/blob/main/pm-product-discovery/.claude-plugin/plugin.json) enables zero-configuration deployment of the entire skill chain.

## Frequently Asked Questions

### How does the /discover command decide which skills to chain together?

The command logic in [`pm-product-discovery/commands/discover.md`](https://github.com/phuryn/pm-skills/blob/main/pm-product-discovery/commands/discover.md) contains a hardcoded orchestration sequence that maps each step number to a specific skill file. It determines whether to use "existing" or "new" product variants based on the user's initial input during the context-gathering phase, then constructs the appropriate file paths (e.g., [`brainstorm-ideas-existing.md`](https://github.com/phuryn/pm-skills/blob/main/brainstorm-ideas-existing.md) versus [`brainstorm-ideas-new.md`](https://github.com/phuryn/pm-skills/blob/main/brainstorm-ideas-new.md)) to invoke.

### Can I customize the /discover workflow to skip specific steps?

Yes. While the command defines a default seven-step sequence, the checkpoint system allows users to bypass or modify steps at runtime. Additionally, because each skill is a standalone markdown file in the `pm-product-discovery/skills/` directory, developers can fork the repository and edit [`discover.md`](https://github.com/phuryn/pm-skills/blob/main/discover.md) to remove steps or insert custom skills without breaking the context propagation mechanism.

### What happens to the data generated at each step of the chain?

Each skill writes its output to a shared session context that subsequent skills can read. For example, when you select ideas at the Step 2 checkpoint, that selection persists in context for Step 3's assumption identification. Finally, Step 6 synthesizes all accumulated data into a persistent markdown file saved to your workspace, creating a comprehensive discovery artifact.

### How do I install the /discover command in my Claude environment?

Install the **pm-product-discovery** plugin by adding the repository to your Claude plugin configuration. The [`pm-product-discovery/.claude-plugin/plugin.json`](https://github.com/phuryn/pm-skills/blob/main/pm-product-discovery/.claude-plugin/plugin.json) file automatically registers the `/discover` command and all associated skills, making them available immediately without manual skill-by-skill installation.