autodoc-agent-kit 1.0.0

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 (187) hide show
  1. package/README.md +362 -0
  2. package/package.json +49 -0
  3. package/src/core/module.yaml +5 -0
  4. package/src/modules/design/module.yaml +9 -0
  5. package/src/modules/design/skills/brand-guidelines/LICENSE.txt +202 -0
  6. package/src/modules/design/skills/brand-guidelines/SKILL.md +73 -0
  7. package/src/modules/design/skills/frontend-design/LICENSE.txt +177 -0
  8. package/src/modules/design/skills/frontend-design/SKILL.md +42 -0
  9. package/src/modules/design/skills/web-artifacts-builder/SKILL.md +229 -0
  10. package/src/modules/devops/module.yaml +10 -0
  11. package/src/modules/devops/skills/devops-helper/SKILL.md +60 -0
  12. package/src/modules/devops/skills/k8s-helm/SKILL.md +360 -0
  13. package/src/modules/devops/skills/monitoring-observability/SKILL.md +240 -0
  14. package/src/modules/devops/skills/security-auditor/SKILL.md +105 -0
  15. package/src/modules/engineering/module.yaml +22 -0
  16. package/src/modules/engineering/skills/ai-sdk/SKILL.md +314 -0
  17. package/src/modules/engineering/skills/api-designer/SKILL.md +77 -0
  18. package/src/modules/engineering/skills/code-reviewer/SKILL.md +71 -0
  19. package/src/modules/engineering/skills/db-architect/SKILL.md +50 -0
  20. package/src/modules/engineering/skills/debugger/SKILL.md +59 -0
  21. package/src/modules/engineering/skills/docs-generator/SKILL.md +51 -0
  22. package/src/modules/engineering/skills/git-workflow/SKILL.md +258 -0
  23. package/src/modules/engineering/skills/mcp-builder/LICENSE.txt +202 -0
  24. package/src/modules/engineering/skills/mcp-builder/SKILL.md +236 -0
  25. package/src/modules/engineering/skills/mcp-builder/reference/evaluation.md +602 -0
  26. package/src/modules/engineering/skills/mcp-builder/reference/mcp_best_practices.md +249 -0
  27. package/src/modules/engineering/skills/mcp-builder/reference/node_mcp_server.md +970 -0
  28. package/src/modules/engineering/skills/mcp-builder/reference/python_mcp_server.md +719 -0
  29. package/src/modules/engineering/skills/mcp-builder/scripts/connections.py +151 -0
  30. package/src/modules/engineering/skills/mcp-builder/scripts/evaluation.py +373 -0
  31. package/src/modules/engineering/skills/mcp-builder/scripts/example_evaluation.xml +22 -0
  32. package/src/modules/engineering/skills/mcp-builder/scripts/requirements.txt +2 -0
  33. package/src/modules/engineering/skills/nextjs-15/SKILL.md +312 -0
  34. package/src/modules/engineering/skills/perf-optimizer/SKILL.md +60 -0
  35. package/src/modules/engineering/skills/react-19/SKILL.md +257 -0
  36. package/src/modules/engineering/skills/refactorer/SKILL.md +60 -0
  37. package/src/modules/engineering/skills/skill-authoring-workflow/SKILL.md +183 -0
  38. package/src/modules/engineering/skills/skill-creator/LICENSE.txt +202 -0
  39. package/src/modules/engineering/skills/skill-creator/SKILL.md +356 -0
  40. package/src/modules/engineering/skills/skill-creator/references/output-patterns.md +82 -0
  41. package/src/modules/engineering/skills/skill-creator/references/workflows.md +28 -0
  42. package/src/modules/engineering/skills/skill-creator/scripts/__pycache__/quick_validate.cpython-313.pyc +0 -0
  43. package/src/modules/engineering/skills/skill-creator/scripts/init_skill.py +303 -0
  44. package/src/modules/engineering/skills/skill-creator/scripts/package_skill.py +110 -0
  45. package/src/modules/engineering/skills/skill-creator/scripts/quick_validate.py +95 -0
  46. package/src/modules/engineering/skills/typescript/SKILL.md +231 -0
  47. package/src/modules/engineering/skills/zod-4/SKILL.md +223 -0
  48. package/src/modules/product/module.yaml +51 -0
  49. package/src/modules/product/skills/acquisition-channel-advisor/SKILL.md +643 -0
  50. package/src/modules/product/skills/acquisition-channel-advisor/examples/conversation-flow.md +531 -0
  51. package/src/modules/product/skills/ai-shaped-readiness-advisor/SKILL.md +923 -0
  52. package/src/modules/product/skills/altitude-horizon-framework/SKILL.md +250 -0
  53. package/src/modules/product/skills/altitude-horizon-framework/examples/sample.md +85 -0
  54. package/src/modules/product/skills/business-health-diagnostic/SKILL.md +783 -0
  55. package/src/modules/product/skills/company-research/SKILL.md +385 -0
  56. package/src/modules/product/skills/company-research/examples/sample.md +164 -0
  57. package/src/modules/product/skills/company-research/template.md +60 -0
  58. package/src/modules/product/skills/context-engineering-advisor/SKILL.md +763 -0
  59. package/src/modules/product/skills/customer-journey-map/SKILL.md +346 -0
  60. package/src/modules/product/skills/customer-journey-map/examples/meta-product-manager-skills.md +40 -0
  61. package/src/modules/product/skills/customer-journey-map/examples/sample.md +33 -0
  62. package/src/modules/product/skills/customer-journey-map/template.md +28 -0
  63. package/src/modules/product/skills/customer-journey-mapping-workshop/SKILL.md +523 -0
  64. package/src/modules/product/skills/director-readiness-advisor/SKILL.md +351 -0
  65. package/src/modules/product/skills/director-readiness-advisor/examples/conversation-flow.md +96 -0
  66. package/src/modules/product/skills/discovery-interview-prep/SKILL.md +410 -0
  67. package/src/modules/product/skills/discovery-process/SKILL.md +504 -0
  68. package/src/modules/product/skills/discovery-process/examples/sample.md +60 -0
  69. package/src/modules/product/skills/discovery-process/template.md +39 -0
  70. package/src/modules/product/skills/eol-message/SKILL.md +348 -0
  71. package/src/modules/product/skills/eol-message/examples/sample.md +87 -0
  72. package/src/modules/product/skills/eol-message/template.md +74 -0
  73. package/src/modules/product/skills/epic-breakdown-advisor/SKILL.md +665 -0
  74. package/src/modules/product/skills/epic-hypothesis/SKILL.md +277 -0
  75. package/src/modules/product/skills/epic-hypothesis/examples/sample.md +104 -0
  76. package/src/modules/product/skills/epic-hypothesis/template.md +30 -0
  77. package/src/modules/product/skills/executive-onboarding-playbook/SKILL.md +280 -0
  78. package/src/modules/product/skills/executive-onboarding-playbook/examples/sample.md +116 -0
  79. package/src/modules/product/skills/feature-investment-advisor/SKILL.md +639 -0
  80. package/src/modules/product/skills/feature-investment-advisor/examples/conversation-flow.md +538 -0
  81. package/src/modules/product/skills/finance-based-pricing-advisor/SKILL.md +763 -0
  82. package/src/modules/product/skills/finance-metrics-quickref/SKILL.md +309 -0
  83. package/src/modules/product/skills/jobs-to-be-done/SKILL.md +370 -0
  84. package/src/modules/product/skills/jobs-to-be-done/examples/sample.md +80 -0
  85. package/src/modules/product/skills/jobs-to-be-done/template.md +65 -0
  86. package/src/modules/product/skills/lean-ux-canvas/SKILL.md +561 -0
  87. package/src/modules/product/skills/lean-ux-canvas/examples/sample.md +88 -0
  88. package/src/modules/product/skills/lean-ux-canvas/template.md +32 -0
  89. package/src/modules/product/skills/opportunity-solution-tree/SKILL.md +420 -0
  90. package/src/modules/product/skills/opportunity-solution-tree/examples/sample.md +104 -0
  91. package/src/modules/product/skills/opportunity-solution-tree/template.md +33 -0
  92. package/src/modules/product/skills/pestel-analysis/SKILL.md +376 -0
  93. package/src/modules/product/skills/pestel-analysis/examples/sample.md +143 -0
  94. package/src/modules/product/skills/pestel-analysis/template.md +53 -0
  95. package/src/modules/product/skills/pol-probe/SKILL.md +217 -0
  96. package/src/modules/product/skills/pol-probe/examples/sample.md +136 -0
  97. package/src/modules/product/skills/pol-probe/template.md +59 -0
  98. package/src/modules/product/skills/pol-probe-advisor/SKILL.md +492 -0
  99. package/src/modules/product/skills/positioning-statement/SKILL.md +230 -0
  100. package/src/modules/product/skills/positioning-statement/examples/sample.md +51 -0
  101. package/src/modules/product/skills/positioning-statement/template.md +25 -0
  102. package/src/modules/product/skills/positioning-workshop/SKILL.md +424 -0
  103. package/src/modules/product/skills/prd-development/SKILL.md +655 -0
  104. package/src/modules/product/skills/prd-development/examples/sample.md +43 -0
  105. package/src/modules/product/skills/prd-development/template.md +55 -0
  106. package/src/modules/product/skills/press-release/SKILL.md +269 -0
  107. package/src/modules/product/skills/press-release/examples/sample.md +73 -0
  108. package/src/modules/product/skills/press-release/template.md +39 -0
  109. package/src/modules/product/skills/prioritization-advisor/SKILL.md +448 -0
  110. package/src/modules/product/skills/problem-framing-canvas/SKILL.md +466 -0
  111. package/src/modules/product/skills/problem-framing-canvas/examples/sample.md +58 -0
  112. package/src/modules/product/skills/problem-framing-canvas/template.md +22 -0
  113. package/src/modules/product/skills/problem-statement/SKILL.md +246 -0
  114. package/src/modules/product/skills/problem-statement/examples/sample.md +82 -0
  115. package/src/modules/product/skills/problem-statement/template.md +37 -0
  116. package/src/modules/product/skills/product-strategy-session/SKILL.md +426 -0
  117. package/src/modules/product/skills/product-strategy-session/examples/sample.md +67 -0
  118. package/src/modules/product/skills/product-strategy-session/template.md +38 -0
  119. package/src/modules/product/skills/proto-persona/SKILL.md +326 -0
  120. package/src/modules/product/skills/proto-persona/examples/sample.md +97 -0
  121. package/src/modules/product/skills/proto-persona/template.md +45 -0
  122. package/src/modules/product/skills/recommendation-canvas/SKILL.md +375 -0
  123. package/src/modules/product/skills/recommendation-canvas/examples/sample.md +94 -0
  124. package/src/modules/product/skills/recommendation-canvas/template.md +86 -0
  125. package/src/modules/product/skills/roadmap-planning/SKILL.md +505 -0
  126. package/src/modules/product/skills/roadmap-planning/examples/sample.md +62 -0
  127. package/src/modules/product/skills/roadmap-planning/template.md +30 -0
  128. package/src/modules/product/skills/saas-economics-efficiency-metrics/SKILL.md +694 -0
  129. package/src/modules/product/skills/saas-economics-efficiency-metrics/examples/cash-trap.md +365 -0
  130. package/src/modules/product/skills/saas-economics-efficiency-metrics/examples/healthy-unit-economics.md +279 -0
  131. package/src/modules/product/skills/saas-economics-efficiency-metrics/template.md +263 -0
  132. package/src/modules/product/skills/saas-revenue-growth-metrics/SKILL.md +630 -0
  133. package/src/modules/product/skills/saas-revenue-growth-metrics/examples/healthy-saas.md +131 -0
  134. package/src/modules/product/skills/saas-revenue-growth-metrics/examples/warning-signs.md +229 -0
  135. package/src/modules/product/skills/saas-revenue-growth-metrics/template.md +192 -0
  136. package/src/modules/product/skills/storyboard/SKILL.md +252 -0
  137. package/src/modules/product/skills/storyboard/examples/sample.md +71 -0
  138. package/src/modules/product/skills/storyboard/template.md +41 -0
  139. package/src/modules/product/skills/tam-sam-som-calculator/SKILL.md +392 -0
  140. package/src/modules/product/skills/tam-sam-som-calculator/examples/sample.md +142 -0
  141. package/src/modules/product/skills/tam-sam-som-calculator/scripts/market-sizing.py +95 -0
  142. package/src/modules/product/skills/tam-sam-som-calculator/template.md +35 -0
  143. package/src/modules/product/skills/user-story/SKILL.md +272 -0
  144. package/src/modules/product/skills/user-story/examples/sample.md +110 -0
  145. package/src/modules/product/skills/user-story/scripts/user-story-template.py +65 -0
  146. package/src/modules/product/skills/user-story/template.md +32 -0
  147. package/src/modules/product/skills/user-story-mapping/SKILL.md +285 -0
  148. package/src/modules/product/skills/user-story-mapping/examples/sample.md +77 -0
  149. package/src/modules/product/skills/user-story-mapping/template.md +41 -0
  150. package/src/modules/product/skills/user-story-mapping-workshop/SKILL.md +477 -0
  151. package/src/modules/product/skills/user-story-mapping-workshop/template.md +28 -0
  152. package/src/modules/product/skills/user-story-splitting/SKILL.md +303 -0
  153. package/src/modules/product/skills/user-story-splitting/examples/sample.md +147 -0
  154. package/src/modules/product/skills/user-story-splitting/template.md +37 -0
  155. package/src/modules/product/skills/vp-cpo-readiness-advisor/SKILL.md +409 -0
  156. package/src/modules/product/skills/vp-cpo-readiness-advisor/examples/conversation-flow.md +95 -0
  157. package/src/modules/product/skills/workshop-facilitation/SKILL.md +87 -0
  158. package/src/modules/productivity/module.yaml +9 -0
  159. package/src/modules/productivity/skills/doc-coauthoring/SKILL.md +375 -0
  160. package/src/modules/productivity/skills/internal-comms/LICENSE.txt +202 -0
  161. package/src/modules/productivity/skills/internal-comms/SKILL.md +32 -0
  162. package/src/modules/productivity/skills/internal-comms/examples/3p-updates.md +47 -0
  163. package/src/modules/productivity/skills/internal-comms/examples/company-newsletter.md +65 -0
  164. package/src/modules/productivity/skills/internal-comms/examples/faq-answers.md +30 -0
  165. package/src/modules/productivity/skills/internal-comms/examples/general-comms.md +16 -0
  166. package/src/modules/productivity/skills/technical-writing/SKILL.md +266 -0
  167. package/src/modules/qa/module.yaml +9 -0
  168. package/src/modules/qa/skills/test-strategy/SKILL.md +263 -0
  169. package/src/modules/qa/skills/test-writer/SKILL.md +57 -0
  170. package/src/modules/qa/skills/webapp-testing/LICENSE.txt +202 -0
  171. package/src/modules/qa/skills/webapp-testing/SKILL.md +96 -0
  172. package/src/modules/qa/skills/webapp-testing/examples/console_logging.py +35 -0
  173. package/src/modules/qa/skills/webapp-testing/examples/element_discovery.py +40 -0
  174. package/src/modules/qa/skills/webapp-testing/examples/static_html_automation.py +33 -0
  175. package/src/modules/qa/skills/webapp-testing/scripts/with_server.py +106 -0
  176. package/tools/autodoc-npx-wrapper.js +34 -0
  177. package/tools/cli/autodoc-cli.js +55 -0
  178. package/tools/cli/commands/install.js +36 -0
  179. package/tools/cli/commands/status.js +35 -0
  180. package/tools/cli/commands/uninstall.js +60 -0
  181. package/tools/cli/installers/lib/core/installer.js +164 -0
  182. package/tools/cli/installers/lib/core/manifest.js +49 -0
  183. package/tools/cli/installers/lib/ide/manager.js +112 -0
  184. package/tools/cli/installers/lib/ide/platform-codes.yaml +207 -0
  185. package/tools/cli/installers/lib/modules/manager.js +59 -0
  186. package/tools/cli/lib/ui.js +199 -0
  187. package/tools/cli/lib/welcome.js +82 -0
@@ -0,0 +1,466 @@
1
+ ---
2
+ name: problem-framing-canvas
3
+ description: Guide teams through MITRE's Problem Framing Canvas. Use when you need a clearer problem statement before jumping to solutions.
4
+ intent: >-
5
+ Guide product managers through the MITRE Problem Framing Canvas process by asking structured questions across three phases: Look Inward (examine your own assumptions and biases), Look Outward (understand who experiences the problem and who doesn't), and Reframe (synthesize insights into an actionable problem statement and "How Might We" question). Use this to ensure you're solving the right problem before jumping to solutions—avoiding confirmation bias, overlooked stakeholders, and solution-first thinking.
6
+ type: interactive
7
+ best_for:
8
+ - "Clarifying a messy problem before solutioning"
9
+ - "Surfacing assumptions and overlooked stakeholders"
10
+ - "Creating a bias-resistant problem statement in a workshop"
11
+ scenarios:
12
+ - "Run a Problem Framing Canvas for our mobile retention issue"
13
+ - "Help me reframe this stakeholder request before we build anything"
14
+ - "We need a clearer problem statement for onboarding drop-off"
15
+ ---
16
+
17
+
18
+ ## Purpose
19
+ Guide product managers through the MITRE Problem Framing Canvas process by asking structured questions across three phases: Look Inward (examine your own assumptions and biases), Look Outward (understand who experiences the problem and who doesn't), and Reframe (synthesize insights into an actionable problem statement and "How Might We" question). Use this to ensure you're solving the right problem before jumping to solutions—avoiding confirmation bias, overlooked stakeholders, and solution-first thinking.
20
+
21
+ This is not a solution brainstorm—it's a problem framing tool that broadens perspective, challenges assumptions, and produces a clear, equity-driven problem statement.
22
+
23
+ ## Key Concepts
24
+
25
+ ### What is the MITRE Problem Framing Canvas?
26
+
27
+ The Problem Framing Canvas (MITRE Innovation Toolkit, v3) is a structured framework that helps teams explore a problem space comprehensively before proposing solutions. It's partitioned into **three areas**:
28
+
29
+ 1. **Look Inward** — Examine your own assumptions, biases, and how you might be part of the problem
30
+ 2. **Look Outward** — Understand who experiences the problem, who benefits from it, and who's been left out
31
+ 3. **Reframe** — Synthesize insights into a clear, actionable problem statement and "How Might We" question
32
+
33
+ ### Canvas Structure
34
+
35
+ ```
36
+ ┌─────────────────────────────────────────────────────────────────┐
37
+ │ LOOK INWARD │
38
+ │ - What is the problem? (symptoms) │
39
+ │ - Why haven't we solved it? (new, hard, low priority, etc.) │
40
+ │ - How are we part of the problem? (assumptions, biases) │
41
+ └─────────────────────────────────────────────────────────────────┘
42
+
43
+ ┌─────────────────────────────────────────────────────────────────┐
44
+ │ LOOK OUTWARD │
45
+ │ - Who experiences the problem? When/where/consequences? │
46
+ │ - Who else has it? Who doesn't have it? │
47
+ │ - Who's been left out? │
48
+ │ - Who benefits when problem exists/doesn't exist? │
49
+ └─────────────────────────────────────────────────────────────────┘
50
+
51
+ ┌─────────────────────────────────────────────────────────────────┐
52
+ │ REFRAME │
53
+ │ - Stated another way, the problem is: [restatement] │
54
+ │ - How might we [action] as we aim to [objective]? │
55
+ └─────────────────────────────────────────────────────────────────┘
56
+ ```
57
+
58
+ ### Why This Works
59
+ - **Broadens perspective:** Forces you to look beyond your own assumptions
60
+ - **Equity-driven:** Centers marginalized voices and asks "who's been left out?"
61
+ - **Challenges biases:** Requires explicit examination of assumptions before framing problem
62
+ - **Actionable output:** Produces HMW statement ready for solution exploration
63
+
64
+ ### Anti-Patterns (What This Is NOT)
65
+ - **Not a solution brainstorm:** Canvas frames the problem; solutions come later
66
+ - **Not a feature request list:** Focuses on underlying problems, not surface symptoms
67
+ - **Not a one-person exercise:** Requires diverse perspectives to challenge groupthink
68
+
69
+ ### When to Use This
70
+ - Starting discovery for a new initiative
71
+ - Reframing an existing problem (suspect you're solving the wrong thing)
72
+ - Challenging assumptions before building solutions
73
+ - Aligning cross-functional teams on problem definition
74
+
75
+ ### When NOT to Use This
76
+ - When the problem is already well-understood and validated
77
+ - For tactical bug fixes or technical debt (no deep framing needed)
78
+ - When stakeholders have already committed to a solution (address alignment first)
79
+
80
+ ---
81
+
82
+ ### Facilitation Source of Truth
83
+
84
+ Use [`workshop-facilitation`](../workshop-facilitation/SKILL.md) as the default interaction protocol for this skill.
85
+
86
+ It defines:
87
+ - session heads-up + entry mode (Guided, Context dump, Best guess)
88
+ - one-question turns with plain-language prompts
89
+ - progress labels (for example, Context Qx/8 and Scoring Qx/5)
90
+ - interruption handling and pause/resume behavior
91
+ - numbered recommendations at decision points
92
+ - quick-select numbered response options for regular questions (include `Other (specify)` when useful)
93
+
94
+ This file defines the domain-specific assessment content. If there is a conflict, follow this file's domain logic.
95
+
96
+ ## Application
97
+
98
+ Use `template.md` for the full fill-in structure.
99
+
100
+ This interactive skill follows a **three-phase process**, asking **adaptive questions** in each phase.
101
+
102
+ ---
103
+
104
+ ### Step 0: Gather Context (Before Questions)
105
+
106
+ **Agent suggests:**
107
+
108
+ Before we frame your problem, let's gather context:
109
+
110
+ **Problem Context:**
111
+ - Initial problem statement or stakeholder request
112
+ - Symptoms you've observed (support tickets, churn data, user complaints)
113
+ - Existing research (user interviews, surveys, analytics)
114
+ - Assumptions you're making about the problem
115
+
116
+ **Stakeholder Context:**
117
+ - Who's affected by this problem? (users, customers, internal teams)
118
+ - Who's asking for this to be solved? (execs, sales, customers)
119
+ - Who might have been overlooked?
120
+
121
+ **You can paste this content directly, or describe the problem briefly.**
122
+
123
+ ---
124
+
125
+ ## Phase 1: Look Inward
126
+
127
+ **Goal:** Examine your own assumptions, biases, and how you might be part of the problem.
128
+
129
+ ---
130
+
131
+ ### Question 1: What is the problem? (Describe symptoms)
132
+
133
+ **Agent asks:**
134
+ "What is the problem as you currently understand it? Describe the symptoms."
135
+
136
+ **Offer 4 enumerated options:**
137
+
138
+ 1. **Customer pain point** — "Customers struggle with [specific task/outcome]" (e.g., "Customers can't find features they need")
139
+ 2. **Business metric problem** — "We're seeing [metric decline]" (e.g., "Churn increased 15% last quarter")
140
+ 3. **Stakeholder request** — "Stakeholders say we need [feature/change]" (e.g., "Sales team says we need better reporting")
141
+ 4. **Observed behavior** — "We've noticed [pattern/trend]" (e.g., "Users abandon onboarding at step 3")
142
+
143
+ **Or describe your problem/symptoms.**
144
+
145
+ **User response:** [Selection or custom]
146
+
147
+ **Agent extracts:**
148
+ - **Problem (initial framing):** [Description from user]
149
+
150
+ ---
151
+
152
+ ### Question 2: Why haven't we solved it?
153
+
154
+ **Agent asks:**
155
+ "Why hasn't this problem been solved yet?"
156
+
157
+ **Offer 6 enumerated options (can select multiple):**
158
+
159
+ 1. **It's new** — "Problem recently emerged"
160
+ 2. **It's hard** — "Technically complex or resource-intensive"
161
+ 3. **It's low priority** — "Other initiatives took precedence"
162
+ 4. **Lack of resources** — "Not enough budget, people, or time"
163
+ 5. **Lack of authority** — "Can't make the decision or get buy-in"
164
+ 6. **A systemic inequity** — "Problem disproportionately affects marginalized groups, overlooked"
165
+
166
+ **Or describe your own reason.**
167
+
168
+ **User response:** [Selection or custom]
169
+
170
+ **Agent captures:**
171
+ - **Barriers to solving:** [List of reasons]
172
+
173
+ ---
174
+
175
+ ### Question 3: How are we part of the problem? (Assumptions & biases)
176
+
177
+ **Agent asks:**
178
+ "How might you (or your team) be part of the problem? What assumptions or biases are you bringing?"
179
+
180
+ **Offer 4 enumerated options:**
181
+
182
+ 1. **Assuming we know what customers want** — "We haven't validated with real users" (Confirmation bias)
183
+ 2. **Optimizing for ourselves, not users** — "Building what's easy for us, not what's valuable for them" (Internal bias)
184
+ 3. **Overlooking specific user segments** — "Focused on majority users, ignored edge cases or marginalized groups" (Survivorship bias)
185
+ 4. **Solution-first thinking** — "Jumped to 'we need [feature X]' before understanding root problem" (Premature convergence)
186
+
187
+ **Or describe your specific assumptions/biases.**
188
+
189
+ **User response:** [Selection or custom]
190
+
191
+ **Agent captures:**
192
+ - **Assumptions to challenge:** [List of biases]
193
+
194
+ ---
195
+
196
+ ## Phase 2: Look Outward
197
+
198
+ **Goal:** Understand who experiences the problem, who benefits from it, and who's been left out.
199
+
200
+ ---
201
+
202
+ ### Question 4: Who experiences the problem? (When, where, consequences)
203
+
204
+ **Agent asks:**
205
+ "Who experiences this problem? When and where do they experience it? What consequences do they face?"
206
+
207
+ **Agent prompts user to describe:**
208
+ - **Who:** Specific personas, user segments, or roles
209
+ - **When:** Triggering events or contexts (e.g., "during onboarding," "at month-end close")
210
+ - **Where:** Physical or digital locations (e.g., "mobile app," "enterprise deployments")
211
+ - **Consequences:** Impact on users (e.g., "waste 2 hours/week," "miss deadlines," "churn")
212
+
213
+ **Adaptation:** Use personas from context (proto-personas, JTBD, customer research)
214
+
215
+ **User response:** [Detailed description]
216
+
217
+ **Agent captures:**
218
+ - **Who experiences it:** [Personas/segments]
219
+ - **When/where:** [Context]
220
+ - **Consequences:** [Impact]
221
+
222
+ ---
223
+
224
+ ### Question 5: Who else has this problem? Who doesn't have it?
225
+
226
+ **Agent asks:**
227
+ "Who else has this problem? (Colleagues, competitors, other domains?) And who doesn't have it?"
228
+
229
+ **Agent prompts:**
230
+ - **Who else has it:** Other companies, industries, or domains with similar problems
231
+ - **How do they deal with it:** Workarounds, solutions, or adaptations
232
+ - **Who doesn't have it:** Users/companies that avoid the problem (what's different about them?)
233
+
234
+ **User response:** [Detailed description]
235
+
236
+ **Agent captures:**
237
+ - **Who else has it:** [Examples]
238
+ - **Who doesn't have it:** [Counter-examples]
239
+
240
+ ---
241
+
242
+ ### Question 6: Who's been left out? Who benefits?
243
+
244
+ **Agent asks:**
245
+ "Who's been left out of the conversation so far? And who benefits when this problem exists or doesn't exist?"
246
+
247
+ **Agent prompts:**
248
+ - **Who's been left out:** Marginalized voices, edge cases, overlooked stakeholders
249
+ - **Who benefits when problem exists:** Who gains from the status quo?
250
+ - **Who benefits when problem doesn't exist:** Who loses if problem is solved?
251
+
252
+ **Example:**
253
+ - "Who benefits when onboarding is broken?" → "Sales team doesn't have to support complex workflows; engineering doesn't have to build guided flows"
254
+ - "Who's been left out?" → "Non-technical users, international customers (onboarding in English only)"
255
+
256
+ **User response:** [Detailed description]
257
+
258
+ **Agent captures:**
259
+ - **Who's been left out:** [List]
260
+ - **Who benefits (problem exists):** [List]
261
+ - **Who benefits (problem solved):** [List]
262
+
263
+ ---
264
+
265
+ ## Phase 3: Reframe
266
+
267
+ **Goal:** Synthesize insights into a clear, actionable problem statement and "How Might We" question.
268
+
269
+ ---
270
+
271
+ ### Question 7: Restate the problem
272
+
273
+ **Agent says:**
274
+ "Based on everything we've explored, let's restate the problem in a new way."
275
+
276
+ **Agent generates a refined problem statement** using insights from Phases 1-2:
277
+
278
+ **Template:**
279
+ "The problem is: [Who] struggles to [accomplish what] because [root cause], which leads to [consequence]. This affects [specific segments] and has been overlooked because [bias/assumption from Phase 1]."
280
+
281
+ **Example (SaaS onboarding):**
282
+ "The problem is: Non-technical small business owners struggle to activate our product during onboarding because we use jargon-heavy UI and lack guided workflows, which leads to 60% abandonment within 24 hours. This disproportionately affects solopreneurs without technical support, and has been overlooked because our team optimizes for enterprise users who have IT departments."
283
+
284
+ **Agent asks:**
285
+ "Does this restatement capture the core problem? Should we refine it?"
286
+
287
+ **User response:** [Approve or modify]
288
+
289
+ ---
290
+
291
+ ### Question 8: Create "How Might We" statement
292
+
293
+ **Agent says:**
294
+ "Now let's make it actionable with a 'How Might We' statement."
295
+
296
+ **Template:**
297
+ "How might we [action that addresses the problem] as we aim to [objective/desired condition]?"
298
+
299
+ **Example (SaaS onboarding):**
300
+ "How might we guide non-technical users through onboarding with plain-language prompts as we aim to increase activation from 40% to 70%?"
301
+
302
+ **Agent asks:**
303
+ "Does this HMW statement set up the right solution space? Should we adjust?"
304
+
305
+ **User response:** [Approve or modify]
306
+
307
+ ---
308
+
309
+ ### Output: Problem Framing Canvas + HMW Statement
310
+
311
+ After completing the flow, the agent outputs:
312
+
313
+ ```markdown
314
+ # Problem Framing Canvas: [Problem Name]
315
+
316
+ **Date:** [Today's date]
317
+
318
+ ---
319
+
320
+ ## Phase 1: Look Inward
321
+
322
+ ### What is the problem? (Symptoms)
323
+ [Description from Q1]
324
+
325
+ ### Why haven't we solved it?
326
+ - [Barrier 1 from Q2]
327
+ - [Barrier 2]
328
+ - [Barrier 3]
329
+
330
+ ### How are we part of the problem? (Assumptions & biases)
331
+ - [Assumption 1 from Q3]
332
+ - [Assumption 2]
333
+ - [Assumption 3]
334
+
335
+ **Which of these might be redesigned, reframed, or removed?**
336
+ [Reflection on biases to challenge]
337
+
338
+ ---
339
+
340
+ ## Phase 2: Look Outward
341
+
342
+ ### Who experiences the problem?
343
+ **Who:** [Personas/segments from Q4]
344
+ **When/Where:** [Context]
345
+ **Consequences:** [Impact on users]
346
+ **Lived experience varies:** [How different users experience it differently]
347
+
348
+ ### Who else has this problem?
349
+ **Who else:** [Examples from Q5]
350
+ **How they deal with it:** [Workarounds]
351
+
352
+ ### Who doesn't have it?
353
+ [Counter-examples from Q5]
354
+
355
+ ### Who's been left out?
356
+ [Marginalized voices from Q6]
357
+
358
+ ### Who benefits?
359
+ **When problem exists:** [Beneficiaries of status quo]
360
+ **When problem doesn't exist:** [Who loses if solved]
361
+
362
+ ---
363
+
364
+ ## Phase 3: Reframe
365
+
366
+ ### Stated another way, the problem is:
367
+ [Refined problem statement from Q7]
368
+
369
+ ### How Might We...
370
+ **How might we** [action from Q8] **as we aim to** [objective from Q8]?
371
+
372
+ ---
373
+
374
+ ## Next Steps
375
+
376
+ 1. **Validate with users:** Use `skills/discovery-interview-prep/SKILL.md` to test reframed problem with customers
377
+ 2. **Generate solutions:** Use `skills/opportunity-solution-tree/SKILL.md` to explore solution space
378
+ 3. **Create problem statement:** Use `skills/problem-statement/SKILL.md` to formalize for PRD/roadmap
379
+ 4. **Identify opportunities:** Use HMW statement to brainstorm solution ideas
380
+
381
+ ---
382
+
383
+ **Ready to explore solutions? Let me know if you'd like to refine the problem framing or move to solution generation.**
384
+ ```
385
+
386
+ ---
387
+
388
+ ## Examples
389
+
390
+ See `examples/sample.md` for full problem framing examples.
391
+
392
+ Mini example excerpt:
393
+
394
+ ```markdown
395
+ **Look Inward:** Churn spiked after onboarding change
396
+ **Look Outward:** New SMB users are most affected
397
+ **Reframe:** How might we reduce onboarding friction for first-time users?
398
+ ```
399
+
400
+ ## Common Pitfalls
401
+
402
+ ### Pitfall 1: Skipping "Look Inward" (Assuming You're Neutral)
403
+ **Symptom:** Team jumps straight to "Look Outward" without examining biases
404
+
405
+ **Consequence:** Groupthink persists, assumptions unchallenged
406
+
407
+ **Fix:** Force explicit discussion of assumptions and biases (Q2-Q3)
408
+
409
+ ---
410
+
411
+ ### Pitfall 2: Ignoring "Who Benefits" Question
412
+ **Symptom:** Canvas completed without exploring who benefits from problem existing
413
+
414
+ **Consequence:** Miss political dynamics, resistance to change
415
+
416
+ **Fix:** Always ask "Who loses if this problem is solved?" (Q6)
417
+
418
+ ---
419
+
420
+ ### Pitfall 3: Generic Problem Statement
421
+ **Symptom:** Reframed problem is vague ("Improve user experience")
422
+
423
+ **Consequence:** HMW statement isn't actionable
424
+
425
+ **Fix:** Make problem specific (who, what, when, consequence, root cause)
426
+
427
+ ---
428
+
429
+ ### Pitfall 4: HMW Statement Is Too Narrow
430
+ **Symptom:** "How might we add a mobile app?"
431
+
432
+ **Consequence:** Constrains solution space to one idea
433
+
434
+ **Fix:** Keep HMW broad: "How might we enable mobile-first users to access core workflows on any device?"
435
+
436
+ ---
437
+
438
+ ### Pitfall 5: Solo Exercise (No Diverse Perspectives)
439
+ **Symptom:** PM fills out canvas alone
440
+
441
+ **Consequence:** Biases persist, marginalized voices still left out
442
+
443
+ **Fix:** Facilitate canvas workshop with cross-functional team + customer input
444
+
445
+ ---
446
+
447
+ ## References
448
+
449
+ ### Related Skills
450
+ - `skills/problem-statement/SKILL.md` — Converts reframed problem into formal problem statement
451
+ - `skills/opportunity-solution-tree/SKILL.md` — Uses HMW statement to generate solution options
452
+ - `skills/discovery-interview-prep/SKILL.md` — Validates reframed problem with customers
453
+
454
+ ### External Frameworks
455
+ - MITRE Innovation Toolkit, "Problem Framing Canvas v3" (2021) — Origin of canvas, equity-driven design thinking
456
+ - Stanford d.school, "How Might We" statements — Actionable problem framing
457
+
458
+ ### Dean's Work
459
+ - [If Dean has problem framing resources, link here]
460
+
461
+ ---
462
+
463
+ **Skill type:** Interactive
464
+ **Suggested filename:** `problem-framing-canvas.md`
465
+ **Suggested placement:** `/skills/interactive/`
466
+ **Dependencies:** Uses `skills/problem-statement/SKILL.md`
@@ -0,0 +1,58 @@
1
+ # Problem Framing Canvas Examples
2
+
3
+ ### Example 1: Good Problem Framing (SaaS Onboarding)
4
+
5
+ **Q1 Response:** "Observed behavior — Users abandon onboarding at step 3 (60% drop-off)"
6
+
7
+ **Q2 Response:** "It's hard (technically complex) + We've assumed we know what customers want"
8
+
9
+ **Q3 Response:** "Optimizing for ourselves, not users — Building what's easy for us (enterprise features), ignoring solopreneurs"
10
+
11
+ **Q4 Response:**
12
+ - **Who:** Non-technical small business owners
13
+ - **When:** First 24 hours after signup
14
+ - **Consequences:** Waste time trying to configure product, give up, churn
15
+
16
+ **Q5 Response:**
17
+ - **Who else has it:** Most SaaS products struggle with onboarding activation
18
+ - **Who doesn't:** Consumer apps with guided tours (Duolingo, Instagram)
19
+
20
+ **Q6 Response:**
21
+ - **Who's been left out:** Solopreneurs without IT support
22
+ - **Who benefits (problem exists):** Engineering doesn't have to build guided flows
23
+
24
+ **Q7 - Refined Problem Statement:**
25
+ "The problem is: Non-technical small business owners struggle to activate our product during onboarding because we use jargon-heavy UI and lack guided workflows, which leads to 60% abandonment within 24 hours. This disproportionately affects solopreneurs without technical support, and has been overlooked because our team optimizes for enterprise users who have IT departments."
26
+
27
+ **Q8 - HMW Statement:**
28
+ "How might we guide non-technical users through onboarding with plain-language prompts as we aim to increase activation from 40% to 70%?"
29
+
30
+ **Why this works:**
31
+ - Look Inward revealed internal bias (optimizing for enterprise)
32
+ - Look Outward identified overlooked segment (solopreneurs)
33
+ - Reframe produced actionable HMW statement tied to metric
34
+
35
+ ---
36
+
37
+ ### Example 2: Bad Problem Framing (Jumped to Solution)
38
+
39
+ **Initial statement:** "We need a mobile app"
40
+
41
+ **Why this fails:**
42
+ - Solution disguised as problem
43
+ - No exploration of root cause
44
+ - Skipped Look Inward and Look Outward phases
45
+
46
+ **Fix with canvas:**
47
+ - **Q1:** "Customers complain they can't access product on the go"
48
+ - **Q2:** "Low priority (focused on desktop features)"
49
+ - **Q3:** "Assumed mobile-first users weren't our target"
50
+ - **Q4:** "Freelancers, field workers experience this"
51
+ - **Q5:** "Competitors offer mobile apps; we don't"
52
+ - **Q6:** "Mobile-first users left out; desktop power users benefit from status quo"
53
+ - **Q7:** "The problem is: Mobile-first users (freelancers, field workers) can't access core workflows on the go, forcing them to wait until they're at a desktop, which delays time-sensitive work"
54
+ - **Q8:** "How might we enable mobile-first users to complete core workflows on any device as we aim to expand TAM by 30%?"
55
+
56
+ **Now solution space is clear:** Mobile app is one solution; responsive web, progressive web app (PWA), or SMS/Slack integrations are alternatives.
57
+
58
+ ---
@@ -0,0 +1,22 @@
1
+ # Problem Framing Canvas Template
2
+
3
+ Use this template to capture the MITRE Problem Framing Canvas outputs.
4
+
5
+ ## Template
6
+ ```markdown
7
+ ## Look Inward
8
+ - **Problem (symptoms):** [What is the problem?]
9
+ - **Why unsolved:** [Why hasn't it been solved?]
10
+ - **Our role/biases:** [How might we be part of the problem?]
11
+
12
+ ## Look Outward
13
+ - **Who experiences it:** [Personas/segments]
14
+ - **When/where:** [Context]
15
+ - **Consequences:** [Impact]
16
+ - **Who else/Who not:** [Adjacent/Excluded groups]
17
+ - **Who benefits:** [Beneficiaries if problem persists or is solved]
18
+
19
+ ## Reframe
20
+ - **Problem restated:** [Stated another way]
21
+ - **How Might We:** [Actionable HMW question]
22
+ ```