How PM Skills Commands Work in the Claude Marketplace: Architecture and Execution Flow

PM Skills commands are declarative markdown wrappers that register slash commands, load skill definitions from markdown files, and orchestrate them into executable workflows without requiring code compilation.

The phuryn/pm-skills repository operates as a Claude plugin marketplace that structures product management expertise into reusable components. It separates domain knowledge into skills (analytical frameworks encoded in markdown) and commands (user-triggered workflows defined in the commands/ directory). When integrated into Claude, these commands parse their markdown definitions, dynamically load referenced skills, and execute sequential logic to deliver structured outputs like resume reviews or strategy documents.

Marketplace Manifest and Plugin Discovery

The marketplace initializes through a root manifest file that catalogs available capabilities. In .claude-plugin/marketplace.json, the repository lists nine distinct plugins—including pm-toolkit, pm-product-strategy, and pm-product-discovery—along with aggregated counts of skills and commands.

When you install the marketplace via claude plugin marketplace add phuryn/pm-skills, Claude reads this manifest and makes every plugin available for individual installation. Each plugin resides in its own folder (e.g., pm-toolkit/, pm-product-strategy/) and contains parallel skills/ and commands/ subdirectories that define the executable logic.

Anatomy of a PM Skills Command

Commands function as thin orchestration layers that map slash-command syntax to skill execution. A command file contains YAML frontmatter describing the interface, followed by markdown detailing the workflow steps and skill references.

Command Definition Files

Command definitions live in plugin-specific commands/ directories. For example, pm-toolkit/commands/review-resume.md defines the /review-resume slash command with frontmatter specifying the description and argument hints:

---
description: Comprehensive PM resume review against 10 best practices …
argument-hint: "<resume as text or file>"
---

# /review-resume -- PM Resume Review

### Step 2: Evaluate Against 10 Best Practices

Apply the **review-resume** skill:
1. Impact Metrics …
2. XYZ+S Formula …

The body of the file instructs Claude how to process inputs and which skills to invoke. When a user types /review-resume, Claude parses this markdown to present help text and execute the defined workflow.

Skill Implementation and Loading

Skills contain the actual analytical logic and prompt engineering. The review-resume command references the skill defined in pm-toolkit/skills/review-resume/SKILL.md, which encapsulates the 10 best-practice checks, output templates, and few-shot examples:

---
description: PM resume review …
---

## Workflow

### Step 1: Accept the Resume

...

### Step 2: Evaluate Against 10 Best Practices

1. **Impact Metrics**: Are accomplishments quantified? …

During execution, Claude automatically loads these referenced skill files and applies their logic to the user's input. Skills are universal markdown files, meaning they can be reused across different commands or even imported by other AI assistants (Gemini CLI, OpenCode, Cursor) by copying the skills/ directory into their runtime folders.

Command Execution Flow

When a user invokes a command, the following sequence occurs:

  1. Invocation: User types /<plugin-name>:<command-name> or simply /command-name (e.g., /review-resume).
  2. Parsing: Claude reads the command's markdown file, extracting the description and argument-hint to validate inputs.
  3. Skill Loading: The system identifies skill references within the command file and loads the corresponding markdown from the skills/ directory.
  4. Execution: Claude applies the skill logic—running analysis, generating structured outputs, or formatting templates.
  5. Next Steps: The command file may suggest follow-up commands (e.g., after /review-resume it offers /tailor-resume), creating guided workflows.

Multi-Skill Chaining and Composition

Advanced commands orchestrate multiple skills sequentially to create end-to-end workflows. The /discover command in pm-product-discovery/commands/discover.md demonstrates this by chaining four distinct skills:

  1. brainstorm-ideas
  2. identify-assumptions
  3. prioritize-assumptions
  4. brainstorm-experiments

This chaining is purely declarative—the command file lists the skill names in sequence, and Claude executes them in order, passing context between each stage. This architecture allows complex product discovery workflows to be constructed without writing procedural code, simply by referencing existing skill definitions.

Installation and Activation Paths

You can activate PM Skills commands through two primary interfaces:

Claude Cowork (UI): Navigate to Customize → Browse plugins → Add marketplace from GitHub and enter phuryn/pm-skills.

Claude Code / Codex CLI:

claude plugin marketplace add phuryn/pm-skills
claude plugin install pm-toolkit@pm-skills  # Brings in /review-resume, /tailor-resume, etc.

After installation, commands are immediately available. Individual plugins can be installed separately (e.g., claude plugin install pm-product-strategy@pm-skills) to access specific slash commands like /pricing or /strategy.

Summary

  • PM Skills commands are markdown files in commands/ directories that define slash-command interfaces and workflows.
  • Skills are reusable markdown logic files in skills/ directories that contain prompts, frameworks, and templates.
  • The .claude-plugin/marketplace.json manifest serves as the entry point for the Claude marketplace integration.
  • Commands execute by loading referenced skills and running them sequentially, with support for multi-skill chaining.
  • Installation occurs via claude plugin marketplace add phuryn/pm-skills or through the Claude Cowork UI.
  • The architecture is declarative and extensible—adding new commands requires only creating new markdown files, not code compilation.

Frequently Asked Questions

What is the difference between a skill and a command in PM Skills?

A skill is a reusable markdown file containing domain logic, prompts, and output templates (e.g., pm-toolkit/skills/review-resume/SKILL.md). A command is a user-facing slash-command definition (e.g., pm-toolkit/commands/review-resume.md) that orchestrates one or more skills into a specific workflow. Commands handle the interface and sequencing; skills contain the actual analytical intelligence.

How do I install a specific plugin from the PM Skills marketplace?

After adding the marketplace with claude plugin marketplace add phuryn/pm-skills, install individual plugins using claude plugin install <plugin-name>@pm-skills. For example, claude plugin install pm-toolkit@pm-skills installs the toolkit plugin and makes its commands (/review-resume, /tailor-resume) available immediately.

Can PM Skills commands work with assistants other than Claude?

Yes, with limitations. The skill files are universal markdown that any AI assistant (Gemini CLI, OpenCode, Cursor, Kiro) can read and execute by copying the skills/ directories into their runtime folders. However, the slash-command syntax and marketplace manifest (.claude-plugin/marketplace.json) are Claude-specific, so the /command-name invocation method requires Claude or a compatible interface.

How do I create a custom command that chains multiple skills?

Create a new markdown file in a plugin's commands/ directory with YAML frontmatter defining the command metadata. In the body, list the skills to execute in order using the standard workflow syntax (e.g., "Apply the brainstorm-ideas skill, then apply the identify-assumptions skill"). Reference the pm-product-discovery/commands/discover.md file as a template for multi-skill orchestration.

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →