Help us improve
Share bugs, ideas, or general feedback.
From pm-skills
Guides PM skill creation for pm-skills library: performs gap analysis, Why Gate validation, classifies type/phase, generates draft files, stages for review.
npx claudepluginhub product-on-purpose/pm-skills --plugin pm-skillsHow this skill is triggered — by the user, by Claude, or both
Slash command
/pm-skills:utility-pm-skill-builderThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
<!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->
Guides users through designing a new PM skill via conversation, from raw idea to compliant SKILL.md draft. Use when you have content or a concept and need help shaping it into the right structure.
Guides step-by-step creation of new jaan-to skills with duplicate detection, template seeding, best practices checks, and git PR automation.
Identifies repeated manual processes and guides building Claude Skills with appropriate depth via decision tree: simple briefs or complex XSPEC specs. Use after 3+ repetitions.
Share bugs, ideas, or general feedback.
This skill creates new PM skills for the pm-skills library. It produces a Skill Implementation Packet . a complete design document with draft files . in a staging area for review before promotion to canonical locations.
When asked to create a new PM skill, follow these steps:
Accept the idea in either form:
Both entry points produce the same downstream flow. If the user provides one form, do not ask for the other . extract what you need and proceed.
If the idea is vague, ask ONE follow-up question to clarify the artifact type and target audience before proceeding.
Check ALL existing skills for overlap. Use the Current Library Reference
table below AND scan the skills/ directory for the latest inventory.
Present findings with specificity:
Why Gate (triggers when overlap is found): Ask the user: "Name 2-3 specific prompts or scenarios where the existing skills fail to produce what you need."
Kill Gate: If the user cannot articulate convincing gaps, recommend an alternative:
Do not proceed past the kill gate without either convincing evidence of a gap or explicit user override.
Evaluate whether the idea should be ONE skill or MULTIPLE skills.
Splitting signals:
If splitting is warranted, present the recommendation: "This seems to cover two distinct PM activities:
Determine the skill's classification and naming:
Domain skills (phase-specific PM activities):
{phase}-{skill-name}phase: {phase} (required), no classification fieldFoundation skills (cross-cutting, used across phases):
foundation-{skill-name}classification: foundation (required), no phase fieldUtility skills (meta-skills, repo tooling):
utility-{skill-name}classification: utility (required), no phase fieldExemplar selection: Identify 1-2 existing skills that are the closest structural match:
Present the classification and exemplar selection for user confirmation.
Produce the complete packet using references/TEMPLATE.md as the format.
The packet includes:
--- at byte 0 of the file (no preceding content of any kind, including HTML comments, BOM, or whitespace). Place any attribution comment AFTER the closing --- fence, never before. Reference: library/skill-output-samples/SAMPLE_CREATION.md Section 5.Write all generated files to the staging area:
_staging/pm-skill-builder/{skill-name}/
├── SKILL.md ← draft skill file
├── references/
│ ├── TEMPLATE.md ← draft template
│ └── EXAMPLE.md ← draft example
└── command.md ← draft command
Note:
_staging/is gitignored . draft artifacts never ship in releases. The staging folder is discarded after promotion.
Report what was written and where.
Ask: "Review the packet above. When ready, I'll promote the files to their canonical locations. Proceed? [yes/no]"
If yes, promote by copying each file from staging to its canonical path:
| Staging file | Canonical location |
|---|---|
_staging/pm-skill-builder/{skill-name}/SKILL.md | skills/{dir-name}/SKILL.md |
_staging/pm-skill-builder/{skill-name}/references/TEMPLATE.md | skills/{dir-name}/references/TEMPLATE.md |
_staging/pm-skill-builder/{skill-name}/references/EXAMPLE.md | skills/{dir-name}/references/EXAMPLE.md |
_staging/pm-skill-builder/{skill-name}/command.md | commands/{command-name}.md |
Where {dir-name} is the classification-prefixed directory (e.g., deliver-change-communication).
Then:
skills/{dir-name}/references/bash scripts/lint-skills-frontmatter.sh && bash scripts/validate-agents-md.sh && bash scripts/validate-commands.sh_staging/pm-skill-builder/{skill-name}/Design rationale lives in the GitHub issue, PR, or effort brief . not in a permanent packet file.
Provide post-promotion guidance:
bash scripts/lint-skills-frontmatter.sh"/{command-name} with a realistic scenario"Use this table for gap analysis . it reflects the current skill inventory.
Also scan the skills/ directory for the latest authoritative count.
| Phase | Skill | Category | Description |
|---|---|---|---|
| discover | competitive-analysis | research | Structured competitive landscape analysis |
| discover | interview-synthesis | research | User research interview synthesis |
| discover | stakeholder-summary | research | Stakeholder needs and influence mapping |
| define | hypothesis | ideation | Testable hypothesis with success metrics |
| define | jtbd-canvas | problem-framing | Jobs to Be Done canvas |
| define | opportunity-tree | problem-framing | Opportunity solution tree |
| define | problem-statement | problem-framing | Clear problem statement with success criteria |
| develop | adr | specification | Architecture Decision Record |
| develop | design-rationale | specification | Design decision reasoning |
| develop | solution-brief | ideation | One-page solution overview |
| develop | spike-summary | coordination | Technical/design spike results |
| deliver | acceptance-criteria | specification | Given/When/Then acceptance criteria |
| deliver | edge-cases | specification | Edge cases and error states |
| deliver | launch-checklist | coordination | Pre-launch checklist |
| deliver | prd | specification | Product Requirements Document |
| deliver | release-notes | coordination | User-facing release notes |
| deliver | user-stories | specification | User stories with acceptance criteria |
| measure | dashboard-requirements | validation | Analytics dashboard spec |
| measure | experiment-design | validation | A/B test or experiment design |
| measure | experiment-results | reflection | Experiment results and learnings |
| measure | instrumentation-spec | validation | Event tracking specification |
| measure | okr-grader | reflection | OKR cycle-close scoring at the KR level |
| iterate | lessons-log | reflection | Structured lessons learned |
| iterate | pivot-decision | reflection | Pivot or persevere decision |
| iterate | refinement-notes | coordination | Backlog refinement outcomes |
| iterate | retrospective | reflection | Team retrospective |
| Skill | Category | Description |
|---|---|---|
| lean-canvas | problem-framing | One-page lean canvas across nine interlocking blocks |
| meeting-agenda | meeting | Attendee-facing pre-meeting agenda |
| meeting-brief | meeting | Private pre-meeting strategic preparation |
| meeting-recap | meeting | Post-meeting summary with decisions and actions |
| meeting-synthesize | meeting | Cross-meeting pattern synthesis from multiple recaps |
| okr-writer | coordination | Outcome-based OKR set authoring with coaching |
| persona | research | Evidence-calibrated product or marketing persona |
| stakeholder-update | meeting | Async stakeholder communication for non-attendees |
| Skill | Category | Description |
|---|---|---|
| mermaid-diagrams | documentation | Mermaid diagram authoring with syntax validation |
| pm-skill-builder | coordination | This skill |
| pm-skill-iterate | coordination | Targeted improvements to an existing skill |
| pm-skill-validate | coordination | Audit a skill against structural conventions and quality criteria |
| slideshow-creator | communication | JSON-spec presentation generation across 18 slide types |
| update-pm-skills | coordination | Check for and apply pm-skills releases locally |
The builder MUST produce draft files for the new skill:
SKILL.md . full skill instructionsreferences/TEMPLATE.md . output template with guidance commentsreferences/EXAMPLE.md . complete worked example (150-300 lines)command.md . slash command fileAll drafts are written to _staging/pm-skill-builder/{skill-name}/ (gitignored).
On promotion, files are copied to canonical locations, AGENTS.md is updated, and the staging folder is discarded.
Before finalizing the packet, verify all items in both tiers:
name matches directory nameversion, updated, license all presentphase:, foundation/utility → classification:){phase/classification}-{skill-name}## sections#### + **Path:** formatSee references/EXAMPLE.md for a completed Skill Implementation Packet
demonstrating a realistic domain skill creation.