# Configuring PM Skills Plugins for Custom Use: A Complete Technical Guide

> Learn to configure PM Skills plugins for custom use. Fork the repo, modify SKILL.md files, validate with validate_plugins.py, and reinstall via CLI for tailored functionality.

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

---

**You can configure PM Skills plugins for custom use by forking the repository, modifying the YAML front-matter in [`SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/SKILL.md) files, validating changes with [`validate_plugins.py`](https://github.com/phuryn/pm-skills/blob/main/validate_plugins.py), and reinstalling the plugin via CLI.**

The **phuryn/pm-skills** repository hosts a modular marketplace of 9 independent product management plugins compatible with Claude Code, Codex CLI, and other AI assistants. Configuring PM Skills plugins for custom use enables you to adapt domain-specific frameworks and workflows to match your organization's internal terminology and unique project requirements.

## Understanding the PM Skills Plugin Architecture

The repository follows a strict self-contained architecture where each plugin operates independently without hard references to others.

### Marketplace Manifest and Plugin Structure

The central registry lives in [`.claude-plugin/marketplace.json`](https://github.com/phuryn/pm-skills/blob/main/.claude-plugin/marketplace.json), which lists all 9 plugins and their source locations. Each plugin resides in its own directory (e.g., `pm-product-discovery/`) and contains:

- **`skills/`** – Markdown files containing [`SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/SKILL.md) front-matter with `name` and `description` fields that encode reusable PM frameworks
- **`commands/`** – Markdown files with command front-matter (`description`, optional `argument-hint`) that chain skills into end-to-end workflows
- **[`README.md`](https://github.com/phuryn/pm-skills/blob/main/README.md)** – Human-readable documentation covering installation and usage
- **[`.claude-plugin/plugin.json`](https://github.com/phuryn/pm-skills/blob/main/.claude-plugin/plugin.json)** – Per-plugin manifest defining name, version, author, and keywords

The repository includes [`validate_plugins.py`](https://github.com/phuryn/pm-skills/blob/main/validate_plugins.py) to check manifest integrity, front-matter syntax, and cross-references between commands and skills.

### Skills vs. Commands

**Skills** are individual frameworks loaded automatically when the model detects relevant queries or when explicitly invoked via prefix (e.g., `/pm-product-discovery:brainstorm-ideas-new`). **Commands** are user-invoked workflows triggered with a leading slash (e.g., `/discover`, `/write-prd`) that orchestrate multiple skills with specific arguments.

## Installing PM Skills Plugins

You can install plugins through official CLIs or manual copy methods depending on your AI assistant.

### Claude Code CLI Installation

Register the marketplace once, then install specific plugins or the entire collection:

```bash

# Register the marketplace

claude plugin marketplace add phuryn/pm-skills

# Install specific plugins

claude plugin install pm-product-discovery@pm-skills
claude plugin install pm-data-analytics@pm-skills
claude plugin install pm-toolkit@pm-skills

# Install all 9 plugins at once (omit plugin name)

claude plugin install

```

### Codex CLI Installation

The same marketplace manifest works with OpenAI's Codex CLI:

```bash

# Add the marketplace

codex plugin marketplace add phuryn/pm-skills

# Install desired plugins

codex plugin add pm-go-to-market@pm-skills
codex plugin add pm-marketing-growth@pm-skills

```

### Manual Installation for Other AI Assistants

For Gemini, OpenCode, Cursor, or other agents, copy the skill files directly:

```bash

# Copy skills from all plugin directories to agent's skill folder

for p in pm-*/; do
  cp -r "$p/skills/"* ~/.gemini/skills/  # or ~/.opencode/skills/

done

```

## Configuring PM Skills Plugins for Custom Use

Customization requires editing source files and validating before reinstallation.

### Customizing Existing Skills

1. **Clone or fork** the `phuryn/pm-skills` repository to obtain source files
2. **Edit [`SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/SKILL.md) front-matter** in the target plugin's `skills/` directory to adjust `name` or `description` fields
3. **Update command front-matter** in `commands/` files to modify `description` or `argument-hint` values for different phrasing or additional parameters

### Validating Custom Changes

Before reinstalling, run the validator to ensure compliance:

```bash
python3 validate_plugins.py

```

The validator reports missing required fields, name mismatches, or broken cross-references between commands and skills. Fix any errors to prevent runtime failures.

### Reinstalling Modified Plugins

After validation, install from your local path:

```bash
claude plugin install ./my-custom-plugin

```

## Example: Adding a Custom Risk Assessment Skill

Create a new skill in `pm-product-discovery` by adding the following file at [`./pm-product-discovery/skills/risk-score/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/./pm-product-discovery/skills/risk-score/SKILL.md):

```markdown
---
name: risk-score
description: |
  Computes an impact × risk score for a set of assumptions.
  Triggers: when you need to prioritize risky assumptions.
---

## Prompt

Give me a table of assumptions with their impact, risk, and computed score.

```

Create a command that invokes this skill at [`./pm-product-discovery/commands/score-assumptions.md`](https://github.com/phuryn/pm-skills/blob/main/./pm-product-discovery/commands/score-assumptions.md):

```markdown
---
description: |
  Runs the **risk-score** skill and returns a sorted list.
argument-hint: |
  List of assumptions (optional)
---

**risk-score** skill

The command will:
1. Ask the skill to compute scores.
2. Sort the results descending by score.

```

Run `python3 validate_plugins.py` to confirm the new skill is recognized and the command reference is valid before reinstalling the plugin.

## Summary

- The **phuryn/pm-skills** marketplace contains 9 self-contained plugins with independent skills and commands
- Install via `claude plugin marketplace add phuryn/pm-skills` or `codex plugin marketplace add phuryn/pm-skills`, or manually copy files for other agents
- Configure custom behavior by editing YAML front-matter in [`SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/SKILL.md) and command markdown files
- Always execute [`validate_plugins.py`](https://github.com/phuryn/pm-skills/blob/main/validate_plugins.py) to check manifest integrity and cross-references before reinstalling modified plugins

## Frequently Asked Questions

### How do I install only specific plugins from the PM Skills marketplace?

Use the CLI install command with the plugin name and marketplace suffix: `claude plugin install pm-product-discovery@pm-skills`. You can install multiple specific plugins by running the command repeatedly for each desired plugin, or install all 9 at once by running `claude plugin install` after adding the marketplace.

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

A **skill** is a reusable framework defined in a [`SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/SKILL.md) file with YAML front-matter containing `name` and `description` fields, automatically loaded by the AI model. A **command** is a workflow defined in the `commands/` directory that chains one or more skills together and is explicitly invoked by the user with a leading slash (e.g., `/discover`).

### How do I validate my custom plugin modifications?

Run `python3 validate_plugins.py` from the repository root. This script checks that all [`.claude-plugin/plugin.json`](https://github.com/phuryn/pm-skills/blob/main/.claude-plugin/plugin.json) manifests are valid, verifies that [`SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/SKILL.md) files contain required front-matter fields (`name`, `description`), and ensures that commands correctly reference existing skills without broken cross-references.

### Can I use PM Skills plugins with AI assistants other than Claude Code?

Yes. While Claude Code and Codex CLI support native plugin installation via marketplace commands, you can manually copy the `skills/` directory contents from any plugin folder into your agent's skill folder (e.g., `~/.gemini/skills/` or `~/.opencode/skills/`). The markdown files with front-matter are compatible with any assistant that reads skill definitions from disk.