# How to Customize phuryn/pm-skills: A Complete Guide to the PM Skills Marketplace

> Customize phuryn/pm-skills effortlessly by editing JSON and markdown files. Tailor the marketplace manifest, plugin definitions, skills, and commands to your product management workflows without compilation.

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

---

**You customize phuryn/pm-skills by editing declarative JSON and markdown files—no compilation required—starting with the marketplace manifest at [`.claude-plugin/marketplace.json`](https://github.com/phuryn/pm-skills/blob/main/.claude-plugin/marketplace.json), then modifying individual plugin definitions, skills, and commands to match your specific product management workflows.**

The **phuryn/pm-skills** repository provides a modular marketplace of nine Claude plugins containing domain-specific skills and orchestrating commands for product management tasks. Because the entire architecture relies on declarative configuration files rather than compiled binaries, you can fork the repository and tailor every component—from high-level plugin availability to individual skill prompts—by editing JSON manifests and markdown documents.

## Understanding the phuryn/pm-skills Architecture

The marketplace is organized into four distinct layers, each controlled by specific configuration files:

- **Marketplace manifest**: The root file [`.claude-plugin/marketplace.json`](https://github.com/phuryn/pm-skills/blob/main/.claude-plugin/marketplace.json) lists all nine available plugins (`pm-toolkit`, `pm-product-strategy`, `pm-product-discovery`, `pm-market-research`, `pm-data-analytics`, `pm-marketing-growth`, `pm-go-to-market`, `pm-execution`, and `pm-ai-shipping`) and their entry points. This file loads automatically when you add the marketplace to Claude Code or Claude Cowork.

- **Plugin definitions**: Each plugin directory contains a [`.claude-plugin/plugin.json`](https://github.com/phuryn/pm-skills/blob/main/.claude-plugin/plugin.json) file that declares which **skills** and **commands** the plugin exposes to the AI assistant.

- **Skills**: Individual capabilities stored as [`SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/SKILL.md) files that encode frameworks, guided question flows, or data-analysis routines. For example, [`pm-toolkit/skills/review-resume/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/pm-toolkit/skills/review-resume/SKILL.md) contains the resume review workflow.

- **Commands**: Workflow orchestrators stored as markdown files in `commands/` directories (such as [`pm-execution/commands/write-prd.md`](https://github.com/phuryn/pm-skills/blob/main/pm-execution/commands/write-prd.md)) that chain multiple skills into end-to-end slash command experiences.

## Step-by-Step Customization Workflow

To customize the marketplace without breaking dependencies, follow this declarative editing process:

1. **Fork or clone** the repository to create your source of truth.

2. **Edit the marketplace manifest** at [`.claude-plugin/marketplace.json`](https://github.com/phuryn/pm-skills/blob/main/.claude-plugin/marketplace.json) to add, remove, or rename plugins. This controls which plugins appear when users add your fork in Claude Cowork.

3. **Modify plugin definitions** by editing each plugin's [`plugin.json`](https://github.com/phuryn/pm-skills/blob/main/plugin.json) file to curate the list of exposed skills and commands.

4. **Tailor individual skills** by editing [`SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/SKILL.md) files—plain markdown where you can adjust prompts, example data, or output formats. Changes reflect immediately upon the next skill invocation.

5. **Override or extend commands** by copying command markdown files, adjusting the skill call sequence, and registering the new file in the plugin's [`plugin.json`](https://github.com/phuryn/pm-skills/blob/main/plugin.json).

6. **Deploy by pushing** to your fork and re-adding the marketplace in Claude Cowork or running `claude plugin marketplace add <your-fork>` in Claude Code.

## Adding and Modifying Skills

Skills are self-contained markdown files that define how the AI assistant behaves for specific tasks. To add a custom skill to the `pm-toolkit` plugin:

First, create the skill directory and markdown file:

```bash

# Create the skill directory structure

mkdir -p pm-toolkit/skills/custom-welcome

# Write the skill definition

cat > pm-toolkit/skills/custom-welcome/SKILL.md <<'EOF'

# custom-welcome – Friendly onboarding script

You are a product manager onboarding a new stakeholder.  
Ask for the stakeholder's name, role, and biggest current challenge.  
Then generate a three-sentence welcome message that references their challenge and offers a next step.

**Example input**  
`John, VP of Marketing, wants faster lead acquisition`

**Example output**  
`Hi John! I see you're focused on speeding up lead acquisition. Here's a quick win...`
EOF

```

Then register the skill in [`pm-toolkit/.claude-plugin/plugin.json`](https://github.com/phuryn/pm-skills/blob/main/pm-toolkit/.claude-plugin/plugin.json) by adding it to the skills array:

```json
{
  "name": "pm-toolkit",
  "description": "Resume review, legal docs, proofreading, plus custom utilities",
  "skills": [
    "review-resume",
    "draft-nda",
    "privacy-policy",
    "grammar-check",
    "custom-welcome"
  ],
  "commands": [
    "review-resume",
    "tailor-resume",
    "draft-nda",
    "privacy-policy",
    "proofread"
  ]
}

```

## Customizing Commands and Workflows

Commands orchestrate multiple skills into integrated workflows exposed as slash commands. To customize a command, edit the corresponding markdown file in a plugin's `commands/` directory.

For example, [`pm-execution/commands/write-prd.md`](https://github.com/phuryn/pm-skills/blob/main/pm-execution/commands/write-prd.md) chains skills to generate a Product Requirements Document. You can modify this file to change the sequence of skill invocations, add prompt context, or adjust output formatting.

After editing command files, ensure the command name remains registered in the plugin's [`plugin.json`](https://github.com/phuryn/pm-skills/blob/main/plugin.json) commands array so Claude recognizes the slash command.

## Removing Plugins from the Marketplace

To eliminate unwanted plugins from your customized marketplace, edit the root [`.claude-plugin/marketplace.json`](https://github.com/phuryn/pm-skills/blob/main/.claude-plugin/marketplace.json) file and delete the corresponding entry from the plugins array. For example, to remove `pm-ai-shipping`:

```json
{
  "plugins": [
    "pm-toolkit",
    "pm-product-strategy",
    "pm-product-discovery",
    "pm-market-research",
    "pm-data-analytics",
    "pm-marketing-growth",
    "pm-go-to-market",
    "pm-execution"
  ]
}

```

Save the file and commit your changes. The removed plugin will no longer load when you deploy your marketplace.

## Portability: Using Skills with Other AI Platforms

Because skills are plain markdown files without Claude-specific dependencies, you can port them to other AI platforms. To copy all skills from the phuryn/pm-skills repository into an OpenCode project:

```bash

# Run inside your OpenCode repository

for plugin in pm-*/; do
  mkdir -p .opencode/skills/
  cp -r "$plugin/skills/"* .opencode/skills/ 2>/dev/null
done

```

This extracts the [`SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/SKILL.md) files from each plugin directory into your target platform's skills folder, making the product management frameworks available to Gemini, OpenCode, or other AI assistants.

## Summary

- **phuryn/pm-skills** uses a declarative architecture of JSON manifests and markdown files, requiring no compilation to customize.
- The **marketplace manifest** at [`.claude-plugin/marketplace.json`](https://github.com/phuryn/pm-skills/blob/main/.claude-plugin/marketplace.json) controls which of the nine plugins are available.
- Each plugin's capabilities are defined in its [`plugin.json`](https://github.com/phuryn/pm-skills/blob/main/plugin.json) file, which registers **skills** (individual [`SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/SKILL.md) files) and **commands** (workflow markdown files).
- You can add skills by creating markdown files in `skills/<skill-name>/SKILL.md` and registering them in the plugin's [`plugin.json`](https://github.com/phuryn/pm-skills/blob/main/plugin.json).
- Deploy customizations by pushing to a fork and re-adding the marketplace in Claude Cowork or Claude Code.

## Frequently Asked Questions

### Do I need programming skills to customize phuryn/pm-skills?

No compilation or coding is required. The marketplace is entirely declarative—you edit JSON configuration files and markdown skill descriptions. As long as you can modify text files and commit them to a Git repository, you can customize the marketplace behavior, add new skills, or remove unwanted plugins.

### Can I use these skills with AI assistants other than Claude?

Yes. The **skills** are stored as plain markdown files ([`SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/SKILL.md)) without Claude-specific syntax. You can copy these files to other AI platforms like OpenCode, Gemini, or ChatGPT by transferring the markdown content to your target platform's skill system. Only the **commands** (slash command orchestration) and marketplace manifest are Claude-specific.

### How do I remove a plugin I don't use from my marketplace?

Edit the [`.claude-plugin/marketplace.json`](https://github.com/phuryn/pm-skills/blob/main/.claude-plugin/marketplace.json) file at the repository root and delete the plugin name from the `plugins` array. For example, removing `"pm-ai-shipping"` prevents that plugin from loading when you deploy your customized marketplace. Commit the change and redeploy to see the updates.

### Will my customizations persist when the upstream phuryn/pm-skills repository updates?

Your customizations exist in your forked repository. When the upstream repository receives updates, you must manually merge or rebase those changes into your fork. Because the architecture uses simple markdown and JSON files, git merge conflicts are typically straightforward to resolve—usually requiring you to choose between your custom skill definitions and upstream updates to shared files.