pm-skills-mcp 2.6.0 → 2.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/README.md +67 -43
  2. package/dist/config.d.ts +2 -2
  3. package/dist/config.js +2 -2
  4. package/package.json +1 -1
  5. package/pm-skills-source.json +5 -5
  6. package/skills/define-hypothesis/SKILL.md +1 -1
  7. package/skills/define-jtbd-canvas/SKILL.md +1 -1
  8. package/skills/define-opportunity-tree/SKILL.md +1 -1
  9. package/skills/define-problem-statement/SKILL.md +1 -1
  10. package/skills/deliver-acceptance-criteria/SKILL.md +73 -0
  11. package/skills/deliver-acceptance-criteria/references/EXAMPLE.md +92 -0
  12. package/skills/deliver-acceptance-criteria/references/TEMPLATE.md +75 -0
  13. package/skills/deliver-edge-cases/SKILL.md +1 -1
  14. package/skills/deliver-launch-checklist/SKILL.md +1 -1
  15. package/skills/deliver-prd/SKILL.md +1 -1
  16. package/skills/deliver-release-notes/SKILL.md +1 -1
  17. package/skills/deliver-user-stories/SKILL.md +1 -1
  18. package/skills/develop-adr/SKILL.md +1 -1
  19. package/skills/develop-design-rationale/SKILL.md +1 -1
  20. package/skills/develop-solution-brief/SKILL.md +1 -1
  21. package/skills/develop-spike-summary/SKILL.md +1 -1
  22. package/skills/discover-competitive-analysis/SKILL.md +1 -1
  23. package/skills/discover-interview-synthesis/SKILL.md +1 -1
  24. package/skills/discover-stakeholder-summary/SKILL.md +1 -1
  25. package/skills/foundation-persona/SKILL.md +1 -1
  26. package/skills/iterate-lessons-log/SKILL.md +1 -1
  27. package/skills/iterate-pivot-decision/SKILL.md +1 -1
  28. package/skills/iterate-refinement-notes/SKILL.md +1 -1
  29. package/skills/iterate-retrospective/SKILL.md +1 -1
  30. package/skills/measure-dashboard-requirements/SKILL.md +1 -1
  31. package/skills/measure-experiment-design/SKILL.md +1 -1
  32. package/skills/measure-experiment-results/SKILL.md +1 -1
  33. package/skills/measure-instrumentation-spec/SKILL.md +1 -1
  34. package/skills/utility-pm-skill-builder/SKILL.md +283 -0
  35. package/skills/utility-pm-skill-builder/references/EXAMPLE.md +298 -0
  36. package/skills/utility-pm-skill-builder/references/TEMPLATE.md +209 -0
  37. package/skills/utility-pm-skill-iterate/SKILL.md +301 -0
  38. package/skills/utility-pm-skill-iterate/references/EXAMPLE.md +185 -0
  39. package/skills/utility-pm-skill-iterate/references/TEMPLATE.md +41 -0
  40. package/skills/utility-pm-skill-validate/SKILL.md +237 -0
  41. package/skills/utility-pm-skill-validate/references/EXAMPLE.md +58 -0
  42. package/skills/utility-pm-skill-validate/references/TEMPLATE.md +44 -0
package/README.md CHANGED
@@ -5,7 +5,7 @@
5
5
  <br>
6
6
  </h1>
7
7
 
8
- <h4 align="center">Open-source MCP with /pm-skills included 25 best-practice product management skills plus workflows, instantly accessible to any AI via Model Context Protocol.</h4>
8
+ <h4 align="center">Open-source MCP server exposing 29 best-practice product management skills plus workflows and lifecycle tools, instantly accessible to any AI via Model Context Protocol.</h4>
9
9
 
10
10
  <p align="center">
11
11
  <a href="https://github.com/product-on-purpose/pm-skills-mcp/issues/new?labels=bug">Report a Bug</a>
@@ -24,7 +24,7 @@
24
24
  <img src="https://img.shields.io/npm/v/pm-skills-mcp?style=flat-square&color=blue" alt="npm version">
25
25
  </a>
26
26
  <a href="#tools">
27
- <img src="https://img.shields.io/badge/tools-38-brightgreen.svg?style=flat-square" alt="Tools">
27
+ <img src="https://img.shields.io/badge/tools-42-brightgreen.svg?style=flat-square" alt="Tools">
28
28
  </a>
29
29
  <a href="https://modelcontextprotocol.io">
30
30
  <img src="https://img.shields.io/badge/protocol-MCP-purple.svg?style=flat-square" alt="MCP">
@@ -38,7 +38,7 @@
38
38
  </p>
39
39
 
40
40
  <!-- ========== NEW: Skill Library Cross-Reference Callout ========== -->
41
- > **Want to customize skills or use slash commands?** This server is powered by [pm-skills](https://github.com/product-on-purpose/pm-skills)—the open-source skill library you can fork and modify.
41
+ > **Want to customize skills or use slash commands?** This server is powered by [pm-skills](https://github.com/product-on-purpose/pm-skills)—the open-source skill library you can fork and modify. Browse the full catalog, interactive showcase, and setup guides at [product-on-purpose.github.io/pm-skills](https://product-on-purpose.github.io/pm-skills/).
42
42
 
43
43
  <!-- ========== END NEW ========== -->
44
44
 
@@ -111,15 +111,13 @@ npm install -g pm-skills-mcp
111
111
 
112
112
  ## The Big Idea
113
113
 
114
- **PM-Skills MCP** is an MCP server that transforms [PM-Skills](https://github.com/product-on-purpose/pm-skills)... a collection of 25 battle-tested product management skills... into programmatically accessible tools, resources, and prompts for any AI assistant that speaks the Model Context Protocol.
114
+ **PM-Skills MCP** is an MCP server that transforms [PM-Skills](https://github.com/product-on-purpose/pm-skills) a collection of 29 best-practice product management skills into programmatically accessible tools, resources, and prompts for any AI assistant that speaks the Model Context Protocol.
115
115
 
116
- <!-- ========== ENHANCED: Additional ecosystem context ========== -->
117
- PM-Skills MCP is built on [pm-skills](https://github.com/product-on-purpose/pm-skills), an open-source collection of 25 battle-tested product management skills. While pm-skills offers file-based access with slash commands and AGENTS.md discovery, pm-skills-mcp wraps those same skills in an MCP server for programmatic access.
116
+ PM-Skills MCP is built on [pm-skills](https://github.com/product-on-purpose/pm-skills), an open-source collection of 29 PM skills organized by the Triple Diamond framework. While pm-skills offers file-based access with slash commands and AGENTS.md discovery, pm-skills-mcp wraps those same skills in an MCP server for programmatic access. The pm-skills library now includes **lifecycle tools** (Create, Validate, Iterate) and a [documentation site](https://product-on-purpose.github.io/pm-skills/) with an interactive showcase.
118
117
 
119
- **Not sure which to use?** See the [Comparison](#comparison) section below.
120
- <!-- ========== END ENHANCED ========== -->
118
+ **Not sure which to use?** See the [Comparison](#comparison-pm-skills-mcp-this-repo-vs-pm-skills) section below, or the [MCP Setup Guide](https://product-on-purpose.github.io/pm-skills/guides/mcp-setup/) on the docs site.
121
119
 
122
- **_One connection. 25 skills. Any MCP client._**
120
+ **_One connection. 29 skills. Any MCP client._**
123
121
 
124
122
  ### Why MCP?
125
123
 
@@ -138,7 +136,7 @@ The [Model Context Protocol](https://modelcontextprotocol.io) is an open standar
138
136
 
139
137
  ### Key Features
140
138
 
141
- - **38 MCP Tools** - 25 PM skills + 5 workflow bundles + 8 utility tools
139
+ - **42 MCP Tools** - 29 PM skills + 5 workflow bundles + 8 utility tools
142
140
  - **MCP Resources** - Skill instructions, templates, and examples via URI, with optional persona resources when enabled
143
141
  - **3 MCP Prompts** - Guided conversation starters for common workflows
144
142
  - **5 Workflow Bundles** - Pre-built multi-skill workflows for common scenarios
@@ -164,7 +162,7 @@ The [Model Context Protocol](https://modelcontextprotocol.io) is an open standar
164
162
  </p>
165
163
 
166
164
  - **[Model Context Protocol](https://modelcontextprotocol.io)** - Open standard for AI tool connectivity
167
- - **[PM-Skills](https://github.com/product-on-purpose/pm-skills)** - The 25 PM skills this server exposes
165
+ - **[PM-Skills](https://github.com/product-on-purpose/pm-skills)** - The 29 PM skills this server exposes ([docs site](https://product-on-purpose.github.io/pm-skills/))
168
166
  - **[TypeScript](https://www.typescriptlang.org/)** - Type-safe implementation
169
167
  - **[Vitest](https://vitest.dev/)** - Fast, modern testing framework
170
168
 
@@ -486,9 +484,9 @@ See the [pm-skills authoring guide](https://github.com/product-on-purpose/pm-ski
486
484
  ├─────────────────────────────────────────────────────────────┤
487
485
  │ │
488
486
  │ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
489
- │ │ 38 Tools │ │ Resources │ │ 3 Prompts │ │
487
+ │ │ 40 Tools │ │ Resources │ │ 3 Prompts │ │
490
488
  │ │ │ │ │ │ │ │
491
- │ │ • 25 skills │ │ • templates │ │ • kickoff │ │
489
+ │ │ • 27 skills │ │ • templates │ │ • kickoff │ │
492
490
  │ │ • 5 flows │ │ • examples │ │ • lean │ │
493
491
  │ │ • 8 utils │ │ • skills │ │ • quick-prd │ │
494
492
  │ │ │ │ │ │ │ │
@@ -496,7 +494,7 @@ See the [pm-skills authoring guide](https://github.com/product-on-purpose/pm-ski
496
494
  │ │
497
495
  │ ┌─────────────────────────────────────────────────────┐ │
498
496
  │ │ Embedded PM-Skills Library │ │
499
- │ │ 25 skills × (SKILL.md + TEMPLATE + EXAMPLE) │ │
497
+ │ │ 27 skills × (SKILL.md + TEMPLATE + EXAMPLE) │ │
500
498
  │ └─────────────────────────────────────────────────────┘ │
501
499
  │ │
502
500
  └─────────────────────────────────────────────────────────────┘
@@ -509,7 +507,7 @@ See the [pm-skills authoring guide](https://github.com/product-on-purpose/pm-ski
509
507
 
510
508
  ### Tools
511
509
 
512
- PM-Skills MCP wraps each skill from [pm-skills](https://github.com/product-on-purpose/pm-skills) as an MCP tool. The **25 skill tools** (like `pm_prd`, `pm_hypothesis`) generate PM artifacts, while **5 workflow tools** and **8 utility tools** help you orchestrate and validate skill usage. See the [Comparison](#comparison) section for when to use MCP tools vs file-based slash commands.
510
+ PM-Skills MCP wraps each skill from [pm-skills](https://github.com/product-on-purpose/pm-skills) as an MCP tool. The **27 skill tools** (like `pm_prd`, `pm_hypothesis`, `pm_acceptance_criteria`, `pm_pm_skill_builder`) generate PM artifacts, while **5 workflow tools** and **8 utility tools** help you orchestrate and validate skill usage. See the [Comparison](#comparison) section for when to use MCP tools vs file-based slash commands.
513
511
 
514
512
  Every skill tool accepts these parameters:
515
513
 
@@ -694,7 +692,7 @@ npm install -g pm-skills-mcp
694
692
  **Install a pinned release:**
695
693
 
696
694
  ```bash
697
- npm install -g pm-skills-mcp@2.6.0
695
+ npm install -g pm-skills-mcp@2.7.0
698
696
  ```
699
697
 
700
698
  [![npm version](https://img.shields.io/npm/v/pm-skills-mcp?style=for-the-badge&label=npm)](https://www.npmjs.com/package/pm-skills-mcp)
@@ -703,16 +701,7 @@ npm install -g pm-skills-mcp@2.6.0
703
701
  From `v2.4.0` onward, `pm-skills-mcp` directly tracks `pm-skills` release versions.
704
702
  Pinned source compatibility metadata is declared in `pm-skills-source.json` for each release.
705
703
 
706
- Latest release notes:
707
- - [`docs/releases/Release_v2.6.0.md`](docs/releases/Release_v2.6.0.md)
708
- - [`docs/releases/Release_v2.5.2.md`](docs/releases/Release_v2.5.2.md)
709
- - [`docs/releases/Release_v2.5.1.md`](docs/releases/Release_v2.5.1.md)
710
- - [`docs/releases/Release_v2.5.0.md`](docs/releases/Release_v2.5.0.md)
711
- - [`docs/releases/Release_v2.4.3.md`](docs/releases/Release_v2.4.3.md)
712
- - [`docs/releases/Release_v2.4.2.md`](docs/releases/Release_v2.4.2.md)
713
- - [`docs/releases/Release_v2.4.1.md`](docs/releases/Release_v2.4.1.md)
714
- - [`docs/releases/Release_v2.4.0.md`](docs/releases/Release_v2.4.0.md)
715
- - Published release tag: [`v2.6.0`](https://github.com/product-on-purpose/pm-skills-mcp/releases/tag/v2.6.0)
704
+ Latest: [`docs/releases/Release_v2.7.0.md`](docs/releases/Release_v2.7.0.md) | [Previous release details](#previous-release-details) | [Full changelog](#changelog)
716
705
 
717
706
  ### Project Structure
718
707
  See [docs/reference/project-structure.md](docs/reference/project-structure.md) for detailed descriptions.
@@ -725,7 +714,7 @@ pm-skills-mcp/
725
714
  │ ├── config.ts # Configuration management
726
715
  │ ├── cache.ts # Skill caching layer
727
716
  │ ├── skills/ # Skill loader and parser
728
- │ ├── tools/ # MCP tool handlers (38 tools)
717
+ │ ├── tools/ # MCP tool handlers (40 tools)
729
718
  │ ├── resources/ # MCP resource handlers (skills/templates/examples + optional personas)
730
719
  │ ├── prompts/ # MCP prompt definitions (3 prompts)
731
720
  │ ├── workflows/ # Workflow bundle logic
@@ -734,7 +723,7 @@ pm-skills-mcp/
734
723
  │ ├── deliver-prd/ # Example: phase-prefixed skill directories
735
724
  │ ├── define-hypothesis/ # Each skill has SKILL.md + references/
736
725
  │ ├── discover-interview-synthesis/
737
- │ └── ... # 25 skills total
726
+ │ └── ... # 27 skills total
738
727
  ├── docs/ # Documentation
739
728
  │ ├── getting-started.md # Complete setup and first-use guide
740
729
  │ ├── integration-guide.md # Client-specific configuration
@@ -759,32 +748,67 @@ pm-skills-mcp/
759
748
 
760
749
 
761
750
 
751
+ ### Previous Release Details
752
+
753
+ <a id="previous-release-details"></a>
754
+
755
+ <details>
756
+ <summary>v2.6.0 - Maintenance: pm-skills v2.6.0 version parity</summary>
757
+
758
+ - Version and source-pin metadata aligned with `pm-skills v2.6.0`.
759
+ - No MCP tool/resource/prompt behavior changes.
760
+ - Release note: [`docs/releases/Release_v2.6.0.md`](docs/releases/Release_v2.6.0.md).
761
+
762
+ </details>
763
+ <details>
764
+ <summary>v2.5.x - Persona tool support + taxonomy contract updates</summary>
765
+
766
+ **v2.5.2** — Public release-doc readability cleanup.
767
+ **v2.5.1** — Canonical `AGENTS/claude` continuity path.
768
+ **v2.5.0** — Persona skill tool (`pm_persona`), two-axis classification model (`phase` + `classification`), embed validation hardening. Tool count: 38.
769
+ - Release notes: [`Release_v2.5.0.md`](docs/releases/Release_v2.5.0.md) through [`Release_v2.5.2.md`](docs/releases/Release_v2.5.2.md).
770
+
771
+ </details>
772
+ <details>
773
+ <summary>v2.4.x - Direct version tracking with pm-skills</summary>
774
+
775
+ **v2.4.3** — Release metadata/link alignment patch.
776
+ **v2.4.2** — Governance + structure-doc alignment.
777
+ **v2.4.1** — Version/pin parity patch.
778
+ **v2.4.0** — Adopted direct version tracking with `pm-skills`. Added `pm-skills-source.json` for reproducible embeds. Resource URI contract tests. Tool count: 36.
779
+ - Release notes: [`Release_v2.4.0.md`](docs/releases/Release_v2.4.0.md) through [`Release_v2.4.3.md`](docs/releases/Release_v2.4.3.md).
780
+
781
+ </details>
782
+ <details>
783
+ <summary>v2.1.0 and earlier</summary>
784
+
785
+ **v2.1.0** — Flat skill structure alignment with pm-skills v2.x. Resource URIs flattened.
786
+ **v1.1.0** — Comprehensive documentation suite, platform compatibility.
787
+ **v1.0.0** — First stable release: 36 tools, caching, community governance.
788
+ **v0.1.x** — Initial implementation: MCP server, CI/CD, npm packaging.
789
+ - See [CHANGELOG.md](CHANGELOG.md) for full detail.
790
+
791
+ </details>
792
+
762
793
  ### Changelog
763
794
 
764
795
  See [CHANGELOG.md](CHANGELOG.md) for full version history.
765
796
 
766
797
  | Version | Date | Highlights |
767
798
  | --------- | ---------- | ------------------------------------------------------------- |
768
- | **2.6.0** | 2026-03-04 | Maintenance release for `pm-skills v2.6.0` version/source-pin parity |
769
- | **2.5.2** | 2026-03-04 | Public release-doc readability cleanup + 2.5.2 source-pin/runtime parity |
770
- | **2.5.1** | 2026-03-04 | Canonical `AGENTS/claude` continuity path + 2.5.1 source-pin/runtime parity |
771
- | **2.5.0** | 2026-03-02 | Persona tool support + taxonomy contract updates + 2.5.0 pin alignment |
772
- | **2.4.3** | 2026-02-16 | Patch release to include post-`v2.4.2` documentation/release-link updates |
773
- | **2.4.2** | 2026-02-16 | Governance + structure-doc alignment with pm-skills `v2.4.2` |
774
- | **2.4.1** | 2026-02-16 | Patch version/pin parity with pm-skills `v2.4.1` |
775
- | **2.4.0** | 2026-02-16 | Direct version tracking with pm-skills + pinned source metadata |
776
- | **2.1.0** | 2026-01-27 | Flat skill structure alignment with pm-skills v2.x |
777
- | **1.1.0** | 2026-01-21 | Comprehensive documentation suite, platform compatibility |
778
- | **1.0.0** | 2026-01-21 | First stable release baseline with MCP tooling, resources, and caching |
779
- | **0.1.2** | 2026-01-20 | CI/CD infrastructure, branch migration to main |
780
- | **0.1.1** | 2026-01-20 | GitHub Actions CI/CD, ESLint + Prettier, npm package setup |
781
- | **0.1.0** | 2026-01-20 | Initial implementation baseline for PM-skills MCP integration |
799
+ | **2.7.0** | 2026-03-22 | 2 new skill tools (`pm_acceptance_criteria`, `pm_pm_skill_builder`), 27 skills, 40 tools |
800
+ | **2.6.0** | 2026-03-04 | Maintenance: pm-skills v2.6.0 version/source-pin parity |
801
+ | **2.5.0** | 2026-03-02 | Persona tool + taxonomy contract updates + embed hardening |
802
+ | **2.4.0** | 2026-02-16 | Direct version tracking + pinned source metadata |
803
+ | **2.1.0** | 2026-01-27 | Flat skill structure alignment with pm-skills v2.x |
804
+ | **1.0.0** | 2026-01-21 | First stable release: 36 tools, caching, governance |
805
+ | **0.1.0** | 2026-01-20 | Initial MCP server implementation |
782
806
 
783
807
  ### Roadmap
784
808
 
785
809
  See the [open issues](https://github.com/product-on-purpose/pm-skills-mcp/issues) for planned features.
786
810
 
787
- - [x] Core MCP server with all 25 PM skills
811
+ - [x] Core MCP server with all 27 PM skills
788
812
  - [x] Workflow bundle tools
789
813
  - [x] MCP resources for direct skill access
790
814
  - [x] MCP prompts for guided workflows
package/dist/config.d.ts CHANGED
@@ -11,8 +11,8 @@ export declare function loadConfig(): ServerConfig;
11
11
  */
12
12
  export declare const SERVER_INFO: {
13
13
  readonly name: "pm-skills-mcp";
14
- readonly version: "2.6.0";
15
- readonly description: "MCP server exposing 25 product management skills as tools";
14
+ readonly version: "2.7.0";
15
+ readonly description: "MCP server exposing 27 product management skills as tools";
16
16
  };
17
17
  /**
18
18
  * Tool naming configuration
package/dist/config.js CHANGED
@@ -81,8 +81,8 @@ export function loadConfig() {
81
81
  */
82
82
  export const SERVER_INFO = {
83
83
  name: 'pm-skills-mcp',
84
- version: '2.6.0',
85
- description: 'MCP server exposing 25 product management skills as tools',
84
+ version: '2.7.0',
85
+ description: 'MCP server exposing 27 product management skills as tools',
86
86
  };
87
87
  /**
88
88
  * Tool naming configuration
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pm-skills-mcp",
3
- "version": "2.6.0",
3
+ "version": "2.8.1",
4
4
  "description": "MCP server exposing product management skills as tools, resources, and workflows",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "pmSkillsRepository": "product-on-purpose/pm-skills",
3
- "pmSkillsRef": "v2.6.0",
4
- "pmSkillsVersion": "2.6.0",
5
- "outputContractVersion": "2.6.0",
6
- "configContractVersion": "2.6.0",
7
- "updated": "2026-03-04"
3
+ "pmSkillsRef": "v2.8.0",
4
+ "pmSkillsVersion": "2.8.0",
5
+ "outputContractVersion": "2.8.0",
6
+ "configContractVersion": "2.8.0",
7
+ "updated": "2026-04-03"
8
8
  }
@@ -1,4 +1,3 @@
1
- <!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->
2
1
  ---
3
2
  name: define-hypothesis
4
3
  description: Defines a testable hypothesis with clear success metrics and validation approach. Use when forming assumptions to test, designing experiments, or aligning team on what success looks like.
@@ -11,6 +10,7 @@ metadata:
11
10
  frameworks: [triple-diamond, lean-startup, design-thinking]
12
11
  author: product-on-purpose
13
12
  ---
13
+ <!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->
14
14
  # Hypothesis
15
15
 
16
16
  A hypothesis is a testable prediction about how a change will affect user behavior or business outcomes. It transforms assumptions into explicit statements that can be validated or invalidated through experimentation. Well-formed hypotheses prevent teams from building features based on untested beliefs and create shared understanding of what success looks like.
@@ -1,4 +1,3 @@
1
- <!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->
2
1
  ---
3
2
  name: define-jtbd-canvas
4
3
  description: Creates a Jobs to be Done canvas capturing the functional, emotional, and social dimensions of a customer job. Use when deeply understanding customer motivations, designing for jobs, or reframing product positioning.
@@ -11,6 +10,7 @@ metadata:
11
10
  frameworks: [triple-diamond, lean-startup, design-thinking]
12
11
  author: product-on-purpose
13
12
  ---
13
+ <!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->
14
14
  # Jobs to be Done Canvas
15
15
 
16
16
  A Jobs to be Done (JTBD) canvas captures the complete picture of why customers "hire" products to make progress in their lives. Based on Clayton Christensen's framework, JTBD goes beyond features and demographics to understand the underlying motivations—functional, emotional, and social—that drive customer behavior.
@@ -1,4 +1,3 @@
1
- <!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->
2
1
  ---
3
2
  name: define-opportunity-tree
4
3
  description: Creates an opportunity solution tree mapping desired outcomes to opportunities and potential solutions. Use for outcome-driven product discovery, prioritization, or communicating product strategy.
@@ -11,6 +10,7 @@ metadata:
11
10
  frameworks: [triple-diamond, lean-startup, design-thinking]
12
11
  author: product-on-purpose
13
12
  ---
13
+ <!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->
14
14
  # Opportunity Solution Tree
15
15
 
16
16
  An Opportunity Solution Tree (OST) is a visual framework for product discovery that connects business outcomes to customer opportunities and potential solutions. Developed by Teresa Torres, it prevents the common trap of jumping straight to solutions by ensuring every feature idea traces back to a customer need and measurable outcome.
@@ -1,4 +1,3 @@
1
- <!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->
2
1
  ---
3
2
  name: define-problem-statement
4
3
  description: Creates a clear problem framing document with user impact, business context, and success criteria. Use when starting a new initiative, realigning a drifted project, or communicating up to leadership.
@@ -11,6 +10,7 @@ metadata:
11
10
  frameworks: [triple-diamond, lean-startup, design-thinking]
12
11
  author: product-on-purpose
13
12
  ---
13
+ <!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->
14
14
  # Problem Statement
15
15
 
16
16
  A problem statement is a concise document that frames the problem you're solving, articulates the impact on users and the business, and defines clear success criteria. It serves as the foundation for all subsequent product work by ensuring alignment on *what* problem to solve before jumping to *how* to solve it.
@@ -0,0 +1,73 @@
1
+ ---
2
+ name: deliver-acceptance-criteria
3
+ description: Generates structured Given/When/Then acceptance criteria for a user story or feature slice. Use when translating product requirements into testable scenarios that cover the happy path, edge cases, error states, and non-functional expectations for engineering handoff and QA.
4
+ phase: deliver
5
+ version: "1.0.0"
6
+ updated: 2026-03-22
7
+ license: Apache-2.0
8
+ metadata:
9
+ category: specification
10
+ frameworks: [triple-diamond, lean-startup, design-thinking]
11
+ author: product-on-purpose
12
+ ---
13
+ <!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->
14
+ # Acceptance Criteria
15
+
16
+ Acceptance criteria define the observable behavior that must be true for a story or feature to be considered done. This skill turns feature context into concise, testable Given/When/Then scenarios that engineers and QA can verify without guessing intent.
17
+
18
+ ## When to Use
19
+
20
+ - After a user story, PRD section, or feature slice is defined
21
+ - When a team needs clear pass/fail conditions for implementation
22
+ - When writing QA-ready criteria for sprint planning or handoff
23
+ - When a story has edge cases, error paths, or non-functional expectations that should be explicit
24
+
25
+ ## Instructions
26
+
27
+ When asked to create acceptance criteria, follow these steps:
28
+
29
+ 1. **Confirm the story or feature scope**
30
+ Identify the exact slice of work. If the scope is unclear, ask for the user story, PRD section, or feature description before drafting criteria.
31
+
32
+ 2. **Separate the happy path from exceptions**
33
+ Start with the primary success flow, then add edge cases and error states that are likely or costly if missed.
34
+
35
+ 3. **Write each criterion as an observable scenario**
36
+ Use Given/When/Then language only. Keep each criterion independently testable and avoid implementation details.
37
+
38
+ 4. **Cover recovery and failure behavior**
39
+ Describe what the user sees or can do when validation fails, a dependency is unavailable, or a save action cannot complete.
40
+
41
+ 5. **Include non-functional expectations**
42
+ Add criteria for performance, accessibility, security, reliability, or auditability when they matter to the story.
43
+
44
+ 6. **Avoid duplication and overlap**
45
+ Each criterion should test one outcome. If two criteria describe the same behavior, merge or split them until the intent is clear.
46
+
47
+ 7. **Review for testability**
48
+ Ensure a reviewer can pass or fail each criterion without interpretation. If a statement is subjective, rewrite it into a measurable outcome.
49
+
50
+ ## Output Contract
51
+
52
+ Use `references/TEMPLATE.md` as the output format. A complete response should:
53
+
54
+ - Restate the feature or story context
55
+ - Group criteria into happy path, edge cases, error states, and non-functional criteria
56
+ - Use explicit Given/When/Then statements for each criterion
57
+ - Note assumptions or open questions when context is incomplete
58
+
59
+ ## Quality Checklist
60
+
61
+ Before finalizing, verify:
62
+
63
+ - [ ] The criteria map to a specific story or feature slice
64
+ - [ ] The happy path is covered first
65
+ - [ ] Edge cases are explicit, not implied
66
+ - [ ] Error states include user-visible recovery behavior
67
+ - [ ] Non-functional criteria are included when relevant
68
+ - [ ] Each criterion is testable and has one clear outcome
69
+ - [ ] No implementation details leak into the acceptance criteria
70
+
71
+ ## Examples
72
+
73
+ See `references/EXAMPLE.md` for a completed example based on a realistic e-commerce checkout flow.
@@ -0,0 +1,92 @@
1
+ ---
2
+ artifact: acceptance-criteria
3
+ version: "1.0"
4
+ created: 2026-03-22
5
+ status: complete
6
+ context: Acceptance criteria for a guest checkout flow in an e-commerce storefront
7
+ ---
8
+
9
+ # Acceptance Criteria: Guest Checkout
10
+
11
+ This example describes the acceptance criteria for a guest checkout flow that lets shoppers buy items without creating an account.
12
+
13
+ ## Story Context
14
+
15
+ The checkout experience must let a shopper complete an order as a guest, enter shipping and payment details, and receive a confirmation after payment succeeds. The criteria below focus on the behavior a reviewer can observe in the UI and system responses.
16
+
17
+ ## Happy Path
18
+
19
+ ### AC-1: Guest Checkout Form Loads
20
+
21
+ **Given** I have items in my cart and I am not signed in
22
+
23
+ **When** I open the checkout page
24
+
25
+ **Then** I can enter shipping information, delivery method, and payment details without being prompted to create an account
26
+
27
+ ### AC-2: Order Completes Successfully
28
+
29
+ **Given** I have entered valid shipping and payment details
30
+
31
+ **When** I submit the order
32
+
33
+ **Then** I see an order confirmation page with an order number and estimated delivery date
34
+
35
+ ## Edge Cases
36
+
37
+ ### AC-3: Promo Code Can Be Applied
38
+
39
+ **Given** I am on checkout and my cart qualifies for a discount
40
+
41
+ **When** I enter a valid promo code and apply it
42
+
43
+ **Then** the order summary updates to show the discount before I submit payment
44
+
45
+ ### AC-4: Shipping Address Validation Supports International Formats
46
+
47
+ **Given** I enter a shipping address for a supported non-US destination
48
+
49
+ **When** I continue to the next step
50
+
51
+ **Then** the form accepts the address if it matches the country-specific validation rules
52
+
53
+ ## Error States
54
+
55
+ ### AC-5: Invalid Card Is Rejected
56
+
57
+ **Given** I have entered shipping information but the payment card is invalid
58
+
59
+ **When** I attempt to place the order
60
+
61
+ **Then** I see a clear inline error message and the order is not created
62
+
63
+ ### AC-6: Inventory Changes During Checkout
64
+
65
+ **Given** an item in my cart becomes out of stock before I submit payment
66
+
67
+ **When** I place the order
68
+
69
+ **Then** I am shown which item failed, my cart remains available, and I can remove the item or choose a different variant
70
+
71
+ ## Non-Functional Criteria
72
+
73
+ ### AC-7: Checkout Responds Within the Performance Budget
74
+
75
+ **Given** I submit a valid order during normal operating conditions
76
+
77
+ **When** the checkout request is processed
78
+
79
+ **Then** the confirmation response is returned within 3 seconds for at least 95 percent of requests
80
+
81
+ ### AC-8: Checkout Errors Are Accessible
82
+
83
+ **Given** a validation or payment error occurs
84
+
85
+ **When** the error message is shown
86
+
87
+ **Then** the message is announced by screen readers and the field with the error receives focus when applicable
88
+
89
+ ## Notes
90
+
91
+ - Payment processor and inventory service availability are external dependencies.
92
+ - Fraud review and manual review flows are out of scope for this example.
@@ -0,0 +1,75 @@
1
+ ---
2
+ artifact: acceptance-criteria
3
+ version: "1.0"
4
+ created: <YYYY-MM-DD>
5
+ status: draft
6
+ ---
7
+
8
+ # Acceptance Criteria: [Feature or Story Title]
9
+
10
+ ## Story Context
11
+
12
+ <!-- Briefly restate the story, feature slice, or PRD section this criteria set supports. -->
13
+
14
+ [Describe the user need, scope boundary, and any assumptions that matter for testing.]
15
+
16
+ ## Happy Path
17
+
18
+ <!-- Capture the primary success flow first. Each criterion should be independently testable. -->
19
+
20
+ ### AC-1: [Happy Path Title]
21
+
22
+ **Given** [initial context or precondition]
23
+
24
+ **When** [user action or trigger]
25
+
26
+ **Then** [expected observable outcome]
27
+
28
+ ### AC-2: [Happy Path Title]
29
+
30
+ **Given** [initial context or precondition]
31
+
32
+ **When** [user action or trigger]
33
+
34
+ **Then** [expected observable outcome]
35
+
36
+ ## Edge Cases
37
+
38
+ <!-- Document boundary conditions and alternate inputs that should still behave correctly. -->
39
+
40
+ ### AC-3: [Edge Case Title]
41
+
42
+ **Given** [boundary condition or alternate state]
43
+
44
+ **When** [user action or trigger]
45
+
46
+ **Then** [expected observable outcome]
47
+
48
+ ## Error States
49
+
50
+ <!-- Describe failures, validation issues, and dependency problems with recovery behavior. -->
51
+
52
+ ### AC-4: [Error State Title]
53
+
54
+ **Given** [failure condition]
55
+
56
+ **When** [user action or trigger]
57
+
58
+ **Then** [expected observable outcome and recovery path]
59
+
60
+ ## Non-Functional Criteria
61
+
62
+ <!-- Capture performance, accessibility, security, reliability, or audit requirements. -->
63
+
64
+ ### AC-5: [Non-Functional Title]
65
+
66
+ **Given** [relevant system or user context]
67
+
68
+ **When** [measurement or action]
69
+
70
+ **Then** [expected measurable constraint or guarantee]
71
+
72
+ ## Notes
73
+
74
+ - [Assumption or dependency]
75
+ - [Open question if the source story is incomplete]
@@ -1,4 +1,3 @@
1
- <!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->
2
1
  ---
3
2
  name: deliver-edge-cases
4
3
  description: Documents edge cases, error states, boundary conditions, and recovery paths for a feature. Use during specification to ensure comprehensive coverage, or during QA planning to identify test scenarios.
@@ -11,6 +10,7 @@ metadata:
11
10
  frameworks: [triple-diamond, lean-startup, design-thinking]
12
11
  author: product-on-purpose
13
12
  ---
13
+ <!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->
14
14
  # Edge Cases
15
15
 
16
16
  An edge cases document systematically catalogs the unusual, boundary, and error scenarios for a feature. While happy-path flows are typically well-specified, edge cases often get discovered in production — causing bugs, poor user experience, and support burden. Documenting edge cases upfront ensures engineering handles them intentionally and QA knows what to test.
@@ -1,4 +1,3 @@
1
- <!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->
2
1
  ---
3
2
  name: deliver-launch-checklist
4
3
  description: Creates a comprehensive pre-launch checklist covering engineering, design, marketing, support, legal, and operations readiness. Use before releasing features, products, or major updates to ensure nothing is missed.
@@ -11,6 +10,7 @@ metadata:
11
10
  frameworks: [triple-diamond, lean-startup, design-thinking]
12
11
  author: product-on-purpose
13
12
  ---
13
+ <!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->
14
14
  # Launch Checklist
15
15
 
16
16
  A launch checklist is a comprehensive verification document that ensures all functions are ready before releasing a feature or product. It coordinates across engineering, QA, design, marketing, support, legal, and operations to prevent launch-day surprises. Good launch checklists surface blockers early and create shared accountability for launch readiness.
@@ -1,4 +1,3 @@
1
- <!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->
2
1
  ---
3
2
  name: deliver-prd
4
3
  description: Creates a comprehensive Product Requirements Document that aligns stakeholders on what to build, why, and how success will be measured. Use when specifying features, epics, or product initiatives for engineering handoff.
@@ -11,6 +10,7 @@ metadata:
11
10
  frameworks: [triple-diamond, lean-startup, design-thinking]
12
11
  author: product-on-purpose
13
12
  ---
13
+ <!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->
14
14
  # Product Requirements Document (PRD)
15
15
 
16
16
  A Product Requirements Document is the primary specification artifact that communicates what to build and why. It bridges the gap between problem understanding and engineering implementation by providing clear requirements, success criteria, and scope boundaries. A good PRD enables engineering to build the right thing while maintaining flexibility on implementation details.
@@ -1,4 +1,3 @@
1
- <!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->
2
1
  ---
3
2
  name: deliver-release-notes
4
3
  description: Creates user-facing release notes that communicate new features, improvements, and fixes in clear, benefit-focused language. Use when shipping updates to communicate changes to users, customers, or stakeholders.
@@ -11,6 +10,7 @@ metadata:
11
10
  frameworks: [triple-diamond, lean-startup, design-thinking]
12
11
  author: product-on-purpose
13
12
  ---
13
+ <!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->
14
14
  # Release Notes
15
15
 
16
16
  Release notes communicate product changes to users in a way that highlights value and builds excitement. Unlike changelogs (which document what changed technically), release notes translate changes into user benefits. Good release notes help users discover new capabilities, understand improvements, and trust that issues are being addressed.
@@ -1,4 +1,3 @@
1
- <!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->
2
1
  ---
3
2
  name: deliver-user-stories
4
3
  description: Generates user stories with clear acceptance criteria from product requirements or feature descriptions. Use when breaking down features for sprint planning, writing tickets, or communicating requirements to engineering.
@@ -11,6 +10,7 @@ metadata:
11
10
  frameworks: [triple-diamond, lean-startup, design-thinking]
12
11
  author: product-on-purpose
13
12
  ---
13
+ <!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->
14
14
  # User Stories
15
15
 
16
16
  User stories are concise descriptions of functionality from the user's perspective. They capture who needs something, what they need, and why — without prescribing how to build it. Good user stories enable teams to break large features into estimable, deliverable increments while maintaining focus on user value.