Skip to content
Business
Skill

/product-management

This skill should be used when the user asks to "analyze my product", "research competitors", "find feature gaps", "create feature request", "prioritize backlog", "generate PRD", "plan roadmap", "what should we build next", "competitive analysis", "gap analysis", "sync issues",

BOOST
From plugin
ccc
49622 skills4 agents18 commands
Install
$ npx -y skills add ooiyeefei/ccc --skill product-management --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/product-management

Context preview

The summary Claude sees to decide when to auto-load this skill.

This skill should be used when the user asks to "analyze my product", "research competitors", "find feature gaps", "create feature request", "prioritize backlog", "generate PRD", "plan roadmap", "what should we build next", "competitive analysis", "gap analysis", "sync issues",

SKILL.md

product-management.SKILL.md
name: product-management
description: This skill should be used when the user asks to "analyze my product", "research competitors", "find feature gaps", "create feature request", "prioritize backlog", "generate PRD", "plan roadmap", "what should we build next", "competitive analysis", "gap analysis", "sync issues", or mentions product management workflows. Provides AI-native PM capabilities for startups with signal-based feature tracking, the WINNING prioritization filter, and GitHub Issues integration with deduplication.
version: 0.2.0

Product Management Skill

AI-native product management for startups. Transform Claude into an expert PM that processes signals, not just feature lists.

Core Philosophy

WINNING = Pain × Timing × Execution Capability

Filter aggressively from 50 gaps to 3-5 high-conviction priorities. Expert PMs track **signals** with confidence scores, timestamps, and velocity.

Commands Quick Reference

| Command | Purpose | |---------|---------| | `/pm:analyze` | Scan codebase + interview for product inventory | | `/pm:landscape` | Research competitor landscape | | `/pm:gaps` | Run gap analysis with WINNING filter | | `/pm:file` | Batch create GitHub Issues for approved gaps | | `/pm:prd` | Generate PRD and create GitHub Issue | | `/pm:sync` | Sync local cache with GitHub Issues |

Agents

This plugin provides specialized agents for autonomous tasks:

| Agent | Triggers On | Purpose | |-------|-------------|---------| | `research-agent` | "research [competitor]", "scout [name]" | Deep autonomous web research | | `gap-analyst` | "find gaps", "what should we build" | Systematic gap identification with scoring | | `prd-generator` | "create PRD for [feature]" | Generate PRD + create GitHub Issue |

Data Storage

All data stored in `.pm/` folder at project root:

.pm/
├── config.md                 # Positioning, scoring weights
├── product/                  # Product inventory, architecture
├── competitors/              # Competitor profiles
├── gaps/                     # Gap analyses with scores
├── requests/                 # Synced GitHub Issues (for dedup)
├── prds/                     # Generated PRDs
└── cache/last-updated.json   # Staleness tracking

See `references/data-structure.md` for complete file templates.

WINNING Filter Scoring

Hybrid scoring approach - Claude suggests researchable criteria, user scores domain-specific:

| Criterion | Scorer | Source | |-----------|--------|--------| | Pain Intensity (1-10) | Claude | Review sentiment, support data | | Market Timing (1-10) | Claude | Search trends, competitor velocity | | Execution Capability (1-10) | User | Architecture fit, team skills | | Strategic Fit (1-10) | User | Positioning alignment | | Revenue Potential (1-10) | User | Conversion/retention impact | | Competitive Moat (1-10) | User | Defensibility once built |

**Total: X/60** → Recommendation:

  • **40+** → FILE (high conviction)
  • **25-39** → WAIT (monitor)
  • **<25** → SKIP (not worth it)

See `references/winning-filter.md` for detailed scoring criteria.

Deduplication & Sync

Prevent duplicate feature requests by syncing with GitHub Issues:

On Session Start

1. Check `.pm/cache/last-updated.json` for staleness 2. If >24 hours since last sync, prompt for `/pm:sync`

`/pm:sync` Process

1. Fetch all GitHub Issues with `pm:*` labels via `gh issue list --json` 2. Update `.pm/requests/[issue-number].md` for each issue 3. Update `last-updated.json` timestamp

Deduplication During Gap Analysis

1. Load existing issues from `.pm/requests/` 2. For each new gap, fuzzy match against existing:

  • Title similarity (Levenshtein): 40% weight
  • Keyword overlap: 30% weight
  • Label match: 20% weight
  • Description similarity: 10% weight

3. Mark gaps as:

  • **EXISTING** (>80% match) → Show linked issue
  • **SIMILAR** (50-80%) → Warn, ask user
  • **NEW** (<50%) → Proceed normally

Output Format

| Gap | WINNING | Status | Match |
|-----|---------|--------|-------|
| OAuth support | 47/60 | EXISTING | #42 (95%) |
| Dark mode | 38/60 | NEW | - |

Flow Summaries

Product Analysis (`/pm:analyze`)

1. Scan codebase for features (routes, components, APIs, models) 2. Interview user for business context 3. Generate inventory with technical moats and debt flags 4. Save to `.pm/product/`

Competitive Intelligence (`/pm:landscape`, `/pm:scout [name]`)

1. Research competitors via WebFetch/WebSearch 2. Categorize features: Tablestakes, Differentiators, Emerging, Deprecated 3. Save profiles to `.pm/competitors/`

Gap Analysis (`/pm:gaps`)

1. Load product inventory + competitor profiles 2. Check staleness (>30 days → prompt refresh) 3. Sync with GitHub Issues for deduplication 4. Identify all gaps, score with WINNING filter 5. Mark as NEW/EXISTING/SIMILAR 6. Save to `.pm/gaps/[date]-analysis.md`

Feature Filing (`/pm:review`, `/pm:file`)

1. `/pm:review` - Walk through gaps, decide FILE/WAIT/SKIP 2. `/pm:file` - Create GitHub Issues for approved gaps (skips duplicates) 3. Apply labels: `pm:feature-request`, `winning:*`, `priority:*`

PRD Generation (`/pm:prd [feature]`)

1. Load feature context from gap analysis or GitHub Issue 2. Generate PRD: Problem, User Stories, Acceptance Criteria, etc. 3. Save to `.pm/prds/[slug].md` 4. **Create GitHub Issue** with PRD content as feature request

Backlog & Roadmap (`/pm:backlog`, `/pm:roadmap`)

1. Fetch open issues with `pm:` labels 2. Sort by WINNING score or RICE 3. Organize into Now/Next/Later priorities

GitHub Integration

Labels (Auto-Created)

pm:feature-request    pm:gap-identified    pm:competitor-intel
priority:now          priority:next        priority:later
winning:high (40+)    winning:medium (25-39)    winning:low (<25)

Prerequisites

  • GitHub CLI (`gh`) installed and authenticated
  • Run `gh auth status` to verify

See `references/github-labels.md` for label definitions. See `references/issue-tem

Read more
Ships withccc

Custom plugins and skills for Claude Code.

Get the whole plugin

Other skills on ccc.

daily-chief
Skill

daily-chief

Run the user-invoked Daily Chief Plan today workflow with device login, a local preview, and explicit confirmation before remote…

@ooiyeefei@ooiyeefeiInstall Skill
mvp-launch
Skill

mvp-launch

Web app MVP launch checklist knowledge. Auto-triggered when conversation involves "launch readiness", "MVP checklist",…

@ooiyeefei@ooiyeefeiInstall Skill
rethink-surveys
Skill

rethink-surveys

Design, critique, or scaffold surveys grounded in Caroline Jarrett, Dillman, and Tourangeau methods. Use when designing a new…

@ooiyeefei@ooiyeefeiInstall Skill
demo-video
Skill

demo-video

Record a crisp, high-resolution product demo video by driving the real app with a browser agent - from storyboard approval to…

@ooiyeefei@ooiyeefeiInstall Skill