skilldrop-cli 0.16.3__py3-none-any.whl

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 (757) hide show
  1. skilldrop_cli/__init__.py +16 -0
  2. skilldrop_cli/__main__.py +3 -0
  3. skilldrop_cli/data/LICENSE +9 -0
  4. skilldrop_cli/data/LICENSE-APACHE +202 -0
  5. skilldrop_cli/data/LICENSE-MIT +21 -0
  6. skilldrop_cli/data/agents/README.md +127 -0
  7. skilldrop_cli/data/agents/code-quality.md +40 -0
  8. skilldrop_cli/data/agents/devils-advocate.md +40 -0
  9. skilldrop_cli/data/agents/security-reviewer.md +44 -0
  10. skilldrop_cli/data/bin/skilldrop.js +2110 -0
  11. skilldrop_cli/data/catalogue.json +187 -0
  12. skilldrop_cli/data/contracts/agent.schema.json +28 -0
  13. skilldrop_cli/data/contracts/catalogue.schema.json +33 -0
  14. skilldrop_cli/data/contracts/guide.schema.json +18 -0
  15. skilldrop_cli/data/contracts/loop.schema.json +87 -0
  16. skilldrop_cli/data/contracts/pack.schema.json +75 -0
  17. skilldrop_cli/data/contracts/skill.schema.json +110 -0
  18. skilldrop_cli/data/contracts/terminals.json +33 -0
  19. skilldrop_cli/data/model-routing.json +474 -0
  20. skilldrop_cli/data/package.json +46 -0
  21. skilldrop_cli/data/packs/ai-engineering/pack.json +57 -0
  22. skilldrop_cli/data/packs/ai-engineering/skills/agent-adoption-stage/SKILL.md +90 -0
  23. skilldrop_cli/data/packs/ai-engineering/skills/agent-adoption-stage/evals/eval_queries.json +34 -0
  24. skilldrop_cli/data/packs/ai-engineering/skills/agent-adoption-stage/evals/evals.json +19 -0
  25. skilldrop_cli/data/packs/ai-engineering/skills/agent-adoption-stage/manifest.json +39 -0
  26. skilldrop_cli/data/packs/ai-engineering/skills/agent-budget/SKILL.md +63 -0
  27. skilldrop_cli/data/packs/ai-engineering/skills/agent-budget/evals/eval_queries.json +11 -0
  28. skilldrop_cli/data/packs/ai-engineering/skills/agent-budget/evals/evals.json +28 -0
  29. skilldrop_cli/data/packs/ai-engineering/skills/agent-budget/manifest.json +11 -0
  30. skilldrop_cli/data/packs/ai-engineering/skills/agent-budget/templates/budget-spec.md +30 -0
  31. skilldrop_cli/data/packs/ai-engineering/skills/agent-loop-design/SKILL.md +70 -0
  32. skilldrop_cli/data/packs/ai-engineering/skills/agent-loop-design/evals/eval_queries.json +11 -0
  33. skilldrop_cli/data/packs/ai-engineering/skills/agent-loop-design/evals/evals.json +28 -0
  34. skilldrop_cli/data/packs/ai-engineering/skills/agent-loop-design/manifest.json +11 -0
  35. skilldrop_cli/data/packs/ai-engineering/skills/agent-loop-design/templates/loop-spec.md +46 -0
  36. skilldrop_cli/data/packs/ai-engineering/skills/agent-threat-model/SKILL.md +89 -0
  37. skilldrop_cli/data/packs/ai-engineering/skills/agent-threat-model/evals/eval_queries.json +15 -0
  38. skilldrop_cli/data/packs/ai-engineering/skills/agent-threat-model/evals/evals.json +41 -0
  39. skilldrop_cli/data/packs/ai-engineering/skills/agent-threat-model/examples/support-triage-agent.md +117 -0
  40. skilldrop_cli/data/packs/ai-engineering/skills/agent-threat-model/manifest.json +11 -0
  41. skilldrop_cli/data/packs/ai-engineering/skills/agent-threat-model/reference.md +101 -0
  42. skilldrop_cli/data/packs/ai-engineering/skills/agent-threat-model/templates/agent-threat-model.md +71 -0
  43. skilldrop_cli/data/packs/ai-engineering/skills/ai-adoption-rollout/SKILL.md +61 -0
  44. skilldrop_cli/data/packs/ai-engineering/skills/ai-adoption-rollout/evals/eval_queries.json +34 -0
  45. skilldrop_cli/data/packs/ai-engineering/skills/ai-adoption-rollout/evals/evals.json +19 -0
  46. skilldrop_cli/data/packs/ai-engineering/skills/ai-adoption-rollout/manifest.json +33 -0
  47. skilldrop_cli/data/packs/ai-engineering/skills/ai-readiness-assessment/SKILL.md +68 -0
  48. skilldrop_cli/data/packs/ai-engineering/skills/ai-readiness-assessment/evals/eval_queries.json +34 -0
  49. skilldrop_cli/data/packs/ai-engineering/skills/ai-readiness-assessment/evals/evals.json +17 -0
  50. skilldrop_cli/data/packs/ai-engineering/skills/ai-readiness-assessment/manifest.json +35 -0
  51. skilldrop_cli/data/packs/ai-engineering/skills/ai-usage-policy/SKILL.md +67 -0
  52. skilldrop_cli/data/packs/ai-engineering/skills/ai-usage-policy/evals/eval_queries.json +34 -0
  53. skilldrop_cli/data/packs/ai-engineering/skills/ai-usage-policy/evals/evals.json +19 -0
  54. skilldrop_cli/data/packs/ai-engineering/skills/ai-usage-policy/manifest.json +33 -0
  55. skilldrop_cli/data/packs/ai-engineering/skills/ai-usage-report/SKILL.md +111 -0
  56. skilldrop_cli/data/packs/ai-engineering/skills/ai-usage-report/evals/eval_queries.json +30 -0
  57. skilldrop_cli/data/packs/ai-engineering/skills/ai-usage-report/evals/evals.json +19 -0
  58. skilldrop_cli/data/packs/ai-engineering/skills/ai-usage-report/evals/files/1/northwind-ai-events.csv +4213 -0
  59. skilldrop_cli/data/packs/ai-engineering/skills/ai-usage-report/examples/weekly-engineering-team.md +133 -0
  60. skilldrop_cli/data/packs/ai-engineering/skills/ai-usage-report/manifest.json +12 -0
  61. skilldrop_cli/data/packs/ai-engineering/skills/ai-usage-report/scripts/build_report.py +436 -0
  62. skilldrop_cli/data/packs/ai-engineering/skills/ai-usage-report/templates/report-per-user.md +42 -0
  63. skilldrop_cli/data/packs/ai-engineering/skills/ai-usage-report/templates/report-team-rollup.md +49 -0
  64. skilldrop_cli/data/packs/ai-engineering/skills/ai-usage-report/templates/usage-event-schema.md +76 -0
  65. skilldrop_cli/data/packs/ai-engineering/skills/ai-use-case-triage/SKILL.md +59 -0
  66. skilldrop_cli/data/packs/ai-engineering/skills/ai-use-case-triage/evals/eval_queries.json +34 -0
  67. skilldrop_cli/data/packs/ai-engineering/skills/ai-use-case-triage/evals/evals.json +18 -0
  68. skilldrop_cli/data/packs/ai-engineering/skills/ai-use-case-triage/manifest.json +34 -0
  69. skilldrop_cli/data/packs/ai-engineering/skills/llm-eval-harness/SKILL.md +73 -0
  70. skilldrop_cli/data/packs/ai-engineering/skills/llm-eval-harness/evals/eval_queries.json +34 -0
  71. skilldrop_cli/data/packs/ai-engineering/skills/llm-eval-harness/evals/evals.json +19 -0
  72. skilldrop_cli/data/packs/ai-engineering/skills/llm-eval-harness/manifest.json +11 -0
  73. skilldrop_cli/data/packs/ai-engineering/skills/llm-eval-harness/reference.md +58 -0
  74. skilldrop_cli/data/packs/ai-engineering/skills/llm-eval-harness/templates/eval-plan.md +63 -0
  75. skilldrop_cli/data/packs/ai-engineering/skills/llm-eval-harness/templates/golden-case.jsonl +5 -0
  76. skilldrop_cli/data/packs/ai-engineering/skills/subagent-design/SKILL.md +69 -0
  77. skilldrop_cli/data/packs/ai-engineering/skills/subagent-design/evals/eval_queries.json +11 -0
  78. skilldrop_cli/data/packs/ai-engineering/skills/subagent-design/evals/evals.json +29 -0
  79. skilldrop_cli/data/packs/ai-engineering/skills/subagent-design/manifest.json +11 -0
  80. skilldrop_cli/data/packs/ai-engineering/skills/subagent-design/templates/orchestration-plan.md +47 -0
  81. skilldrop_cli/data/packs/api-builder/pack.json +48 -0
  82. skilldrop_cli/data/packs/api-builder/skills/eval-harness-generator/SKILL.md +84 -0
  83. skilldrop_cli/data/packs/api-builder/skills/eval-harness-generator/evals/eval_queries.json +30 -0
  84. skilldrop_cli/data/packs/api-builder/skills/eval-harness-generator/evals/evals.json +19 -0
  85. skilldrop_cli/data/packs/api-builder/skills/eval-harness-generator/evals/files/1/SKILL.md +31 -0
  86. skilldrop_cli/data/packs/api-builder/skills/eval-harness-generator/manifest.json +11 -0
  87. skilldrop_cli/data/packs/api-builder/skills/prompt-caching-advisor/SKILL.md +90 -0
  88. skilldrop_cli/data/packs/api-builder/skills/prompt-caching-advisor/evals/eval_queries.json +30 -0
  89. skilldrop_cli/data/packs/api-builder/skills/prompt-caching-advisor/evals/evals.json +19 -0
  90. skilldrop_cli/data/packs/api-builder/skills/prompt-caching-advisor/manifest.json +11 -0
  91. skilldrop_cli/data/packs/api-builder/skills/token-budget-estimator/SKILL.md +75 -0
  92. skilldrop_cli/data/packs/api-builder/skills/token-budget-estimator/evals/eval_queries.json +30 -0
  93. skilldrop_cli/data/packs/api-builder/skills/token-budget-estimator/evals/evals.json +18 -0
  94. skilldrop_cli/data/packs/api-builder/skills/token-budget-estimator/manifest.json +11 -0
  95. skilldrop_cli/data/packs/api-builder/skills/tool-use-schema-writer/SKILL.md +111 -0
  96. skilldrop_cli/data/packs/api-builder/skills/tool-use-schema-writer/evals/eval_queries.json +30 -0
  97. skilldrop_cli/data/packs/api-builder/skills/tool-use-schema-writer/evals/evals.json +18 -0
  98. skilldrop_cli/data/packs/api-builder/skills/tool-use-schema-writer/manifest.json +11 -0
  99. skilldrop_cli/data/packs/converters/pack.json +66 -0
  100. skilldrop_cli/data/packs/converters/skills/file-to-markdown/SKILL.md +103 -0
  101. skilldrop_cli/data/packs/converters/skills/file-to-markdown/evals/eval_queries.json +34 -0
  102. skilldrop_cli/data/packs/converters/skills/file-to-markdown/evals/evals.json +27 -0
  103. skilldrop_cli/data/packs/converters/skills/file-to-markdown/evals/files/1/northwind-q3.pptx +0 -0
  104. skilldrop_cli/data/packs/converters/skills/file-to-markdown/evals/files/2/acme-contract-summary.pdf +93 -0
  105. skilldrop_cli/data/packs/converters/skills/file-to-markdown/examples/inputs/accounts.json +1 -0
  106. skilldrop_cli/data/packs/converters/skills/file-to-markdown/examples/inputs/fabrikam-status.html +14 -0
  107. skilldrop_cli/data/packs/converters/skills/file-to-markdown/examples/mixed-inputs.md +306 -0
  108. skilldrop_cli/data/packs/converters/skills/file-to-markdown/manifest.json +49 -0
  109. skilldrop_cli/data/packs/converters/skills/file-to-markdown/scripts/to_markdown.py +1299 -0
  110. skilldrop_cli/data/packs/converters/skills/md-to-docx/SKILL.md +124 -0
  111. skilldrop_cli/data/packs/converters/skills/md-to-docx/evals/eval_queries.json +10 -0
  112. skilldrop_cli/data/packs/converters/skills/md-to-docx/evals/evals.json +29 -0
  113. skilldrop_cli/data/packs/converters/skills/md-to-docx/evals/files/1/brand/brand.json +80 -0
  114. skilldrop_cli/data/packs/converters/skills/md-to-docx/evals/files/1/brand/logo-white.png +0 -0
  115. skilldrop_cli/data/packs/converters/skills/md-to-docx/evals/files/1/brand/logo.png +0 -0
  116. skilldrop_cli/data/packs/converters/skills/md-to-docx/evals/files/1/brand/mark.png +0 -0
  117. skilldrop_cli/data/packs/converters/skills/md-to-docx/evals/files/1/docs/vendor-onboarding.md +42 -0
  118. skilldrop_cli/data/packs/converters/skills/md-to-docx/examples/q3-support-review-input.md +54 -0
  119. skilldrop_cli/data/packs/converters/skills/md-to-docx/examples/q3-support-review.md +80 -0
  120. skilldrop_cli/data/packs/converters/skills/md-to-docx/examples/tickets-by-region.png +0 -0
  121. skilldrop_cli/data/packs/converters/skills/md-to-docx/manifest.json +52 -0
  122. skilldrop_cli/data/packs/converters/skills/md-to-docx/reference.md +89 -0
  123. skilldrop_cli/data/packs/converters/skills/md-to-docx/scripts/md_to_docx.py +1114 -0
  124. skilldrop_cli/data/packs/converters/skills/md-to-html/SKILL.md +100 -0
  125. skilldrop_cli/data/packs/converters/skills/md-to-html/evals/eval_queries.json +34 -0
  126. skilldrop_cli/data/packs/converters/skills/md-to-html/evals/evals.json +18 -0
  127. skilldrop_cli/data/packs/converters/skills/md-to-html/evals/files/1/brand/brand.json +80 -0
  128. skilldrop_cli/data/packs/converters/skills/md-to-html/evals/files/1/brand/logo-white.png +0 -0
  129. skilldrop_cli/data/packs/converters/skills/md-to-html/evals/files/1/brand/logo.png +0 -0
  130. skilldrop_cli/data/packs/converters/skills/md-to-html/evals/files/1/brand/mark.png +0 -0
  131. skilldrop_cli/data/packs/converters/skills/md-to-html/evals/files/1/docs/q3-review.md +35 -0
  132. skilldrop_cli/data/packs/converters/skills/md-to-html/evals/files/1/img/dashboard.png +0 -0
  133. skilldrop_cli/data/packs/converters/skills/md-to-html/examples/inputs/chart.svg +8 -0
  134. skilldrop_cli/data/packs/converters/skills/md-to-html/examples/inputs/ops-review.md +48 -0
  135. skilldrop_cli/data/packs/converters/skills/md-to-html/examples/ops-review.md +83 -0
  136. skilldrop_cli/data/packs/converters/skills/md-to-html/manifest.json +43 -0
  137. skilldrop_cli/data/packs/converters/skills/md-to-html/reference.md +70 -0
  138. skilldrop_cli/data/packs/converters/skills/md-to-html/scripts/md_to_html.py +652 -0
  139. skilldrop_cli/data/packs/converters/skills/md-to-xlsx/SKILL.md +120 -0
  140. skilldrop_cli/data/packs/converters/skills/md-to-xlsx/evals/eval_queries.json +9 -0
  141. skilldrop_cli/data/packs/converters/skills/md-to-xlsx/evals/evals.json +28 -0
  142. skilldrop_cli/data/packs/converters/skills/md-to-xlsx/evals/files/1/exports/northwind-invoices.csv +25 -0
  143. skilldrop_cli/data/packs/converters/skills/md-to-xlsx/evals/files/2/reports/q3-ops-review.md +32 -0
  144. skilldrop_cli/data/packs/converters/skills/md-to-xlsx/examples/vendor-review-input.md +28 -0
  145. skilldrop_cli/data/packs/converters/skills/md-to-xlsx/examples/vendor-review.md +94 -0
  146. skilldrop_cli/data/packs/converters/skills/md-to-xlsx/manifest.json +33 -0
  147. skilldrop_cli/data/packs/converters/skills/md-to-xlsx/reference.md +94 -0
  148. skilldrop_cli/data/packs/converters/skills/md-to-xlsx/scripts/md_to_xlsx.py +667 -0
  149. skilldrop_cli/data/packs/converters/skills/mermaid-render/SKILL.md +109 -0
  150. skilldrop_cli/data/packs/converters/skills/mermaid-render/evals/eval_queries.json +30 -0
  151. skilldrop_cli/data/packs/converters/skills/mermaid-render/evals/evals.json +17 -0
  152. skilldrop_cli/data/packs/converters/skills/mermaid-render/evals/files/1/docs/contoso-orders.md +23 -0
  153. skilldrop_cli/data/packs/converters/skills/mermaid-render/examples/broken-diagrams.md +147 -0
  154. skilldrop_cli/data/packs/converters/skills/mermaid-render/examples/inputs/broken-flowchart.mmd +8 -0
  155. skilldrop_cli/data/packs/converters/skills/mermaid-render/examples/inputs/broken-sequence.mmd +11 -0
  156. skilldrop_cli/data/packs/converters/skills/mermaid-render/examples/inputs/checkout-flow.mmd +9 -0
  157. skilldrop_cli/data/packs/converters/skills/mermaid-render/examples/inputs/design-notes.md +35 -0
  158. skilldrop_cli/data/packs/converters/skills/mermaid-render/examples/inputs/fixed-flowchart.mmd +9 -0
  159. skilldrop_cli/data/packs/converters/skills/mermaid-render/examples/inputs/typo.mmd +2 -0
  160. skilldrop_cli/data/packs/converters/skills/mermaid-render/manifest.json +40 -0
  161. skilldrop_cli/data/packs/converters/skills/mermaid-render/reference.md +70 -0
  162. skilldrop_cli/data/packs/converters/skills/mermaid-render/scripts/render_mermaid.py +486 -0
  163. skilldrop_cli/data/packs/core/loops/ship-a-draft/LOOP.md +77 -0
  164. skilldrop_cli/data/packs/core/loops/ship-a-draft/evals/eval_queries.json +30 -0
  165. skilldrop_cli/data/packs/core/loops/ship-a-draft/evals/evals.json +25 -0
  166. skilldrop_cli/data/packs/core/loops/ship-a-draft/loop.json +41 -0
  167. skilldrop_cli/data/packs/core/pack.json +50 -0
  168. skilldrop_cli/data/packs/core/skills/brief-intake/SKILL.md +79 -0
  169. skilldrop_cli/data/packs/core/skills/brief-intake/evals/eval_queries.json +34 -0
  170. skilldrop_cli/data/packs/core/skills/brief-intake/evals/evals.json +16 -0
  171. skilldrop_cli/data/packs/core/skills/brief-intake/manifest.json +11 -0
  172. skilldrop_cli/data/packs/core/skills/brief-intake/templates/brief-adr.md +41 -0
  173. skilldrop_cli/data/packs/core/skills/brief-intake/templates/brief-decision-log.md +35 -0
  174. skilldrop_cli/data/packs/core/skills/brief-intake/templates/brief-deck.md +43 -0
  175. skilldrop_cli/data/packs/core/skills/brief-intake/templates/brief-design-doc.md +48 -0
  176. skilldrop_cli/data/packs/core/skills/brief-intake/templates/brief-exec-summary.md +47 -0
  177. skilldrop_cli/data/packs/core/skills/brief-intake/templates/brief-generic.md +45 -0
  178. skilldrop_cli/data/packs/core/skills/brief-intake/templates/brief-runbook.md +44 -0
  179. skilldrop_cli/data/packs/core/skills/brief-intake/templates/brief-tech-comparison.md +38 -0
  180. skilldrop_cli/data/packs/core/skills/council-review/SKILL.md +106 -0
  181. skilldrop_cli/data/packs/core/skills/council-review/evals/eval_queries.json +38 -0
  182. skilldrop_cli/data/packs/core/skills/council-review/evals/evals.json +18 -0
  183. skilldrop_cli/data/packs/core/skills/council-review/examples/redis-cache-decision.md +75 -0
  184. skilldrop_cli/data/packs/core/skills/council-review/manifest.json +11 -0
  185. skilldrop_cli/data/packs/core/skills/council-review/reference.md +76 -0
  186. skilldrop_cli/data/packs/core/skills/council-review/seats/architect.md +29 -0
  187. skilldrop_cli/data/packs/core/skills/council-review/seats/bench.md +39 -0
  188. skilldrop_cli/data/packs/core/skills/council-review/seats/operator.md +27 -0
  189. skilldrop_cli/data/packs/core/skills/council-review/seats/pragmatist.md +29 -0
  190. skilldrop_cli/data/packs/core/skills/council-review/seats/security-engineer.md +29 -0
  191. skilldrop_cli/data/packs/core/skills/council-review/seats/user-advocate.md +27 -0
  192. skilldrop_cli/data/packs/core/skills/council-review/templates/council-review.md +59 -0
  193. skilldrop_cli/data/packs/core/skills/doc-critique/SKILL.md +119 -0
  194. skilldrop_cli/data/packs/core/skills/doc-critique/evals/eval_queries.json +38 -0
  195. skilldrop_cli/data/packs/core/skills/doc-critique/evals/evals.json +17 -0
  196. skilldrop_cli/data/packs/core/skills/doc-critique/examples/design-doc-critique.md +34 -0
  197. skilldrop_cli/data/packs/core/skills/doc-critique/manifest.json +11 -0
  198. skilldrop_cli/data/packs/core/skills/doc-critique/rubrics/adr.md +36 -0
  199. skilldrop_cli/data/packs/core/skills/doc-critique/rubrics/decision-log.md +39 -0
  200. skilldrop_cli/data/packs/core/skills/doc-critique/rubrics/deck.md +45 -0
  201. skilldrop_cli/data/packs/core/skills/doc-critique/rubrics/design-doc.md +42 -0
  202. skilldrop_cli/data/packs/core/skills/doc-critique/rubrics/exec-summary.md +41 -0
  203. skilldrop_cli/data/packs/core/skills/doc-critique/rubrics/generic.md +40 -0
  204. skilldrop_cli/data/packs/core/skills/doc-critique/rubrics/runbook.md +42 -0
  205. skilldrop_cli/data/packs/core/skills/doc-critique/rubrics/tech-comparison.md +40 -0
  206. skilldrop_cli/data/packs/core/skills/doc-critique/templates/critique.md +49 -0
  207. skilldrop_cli/data/packs/core/skills/output-hygiene/SKILL.md +97 -0
  208. skilldrop_cli/data/packs/core/skills/output-hygiene/evals/eval_queries.json +11 -0
  209. skilldrop_cli/data/packs/core/skills/output-hygiene/evals/evals.json +30 -0
  210. skilldrop_cli/data/packs/core/skills/output-hygiene/manifest.json +34 -0
  211. skilldrop_cli/data/packs/core/skills/output-hygiene/reference.md +106 -0
  212. skilldrop_cli/data/packs/core/skills/output-hygiene/scripts/scrub.py +315 -0
  213. skilldrop_cli/data/packs/data-analytics/pack.json +57 -0
  214. skilldrop_cli/data/packs/data-analytics/skills/dashboard-spec/SKILL.md +83 -0
  215. skilldrop_cli/data/packs/data-analytics/skills/dashboard-spec/evals/eval_queries.json +34 -0
  216. skilldrop_cli/data/packs/data-analytics/skills/dashboard-spec/evals/evals.json +19 -0
  217. skilldrop_cli/data/packs/data-analytics/skills/dashboard-spec/examples/support-staffing.md +84 -0
  218. skilldrop_cli/data/packs/data-analytics/skills/dashboard-spec/manifest.json +40 -0
  219. skilldrop_cli/data/packs/data-analytics/skills/dashboard-spec/reference.md +45 -0
  220. skilldrop_cli/data/packs/data-analytics/skills/dashboard-spec/templates/dashboard-spec.md +55 -0
  221. skilldrop_cli/data/packs/data-analytics/skills/metric-definition/SKILL.md +84 -0
  222. skilldrop_cli/data/packs/data-analytics/skills/metric-definition/evals/eval_queries.json +34 -0
  223. skilldrop_cli/data/packs/data-analytics/skills/metric-definition/evals/evals.json +19 -0
  224. skilldrop_cli/data/packs/data-analytics/skills/metric-definition/examples/refund-rate.md +104 -0
  225. skilldrop_cli/data/packs/data-analytics/skills/metric-definition/manifest.json +41 -0
  226. skilldrop_cli/data/packs/data-analytics/skills/metric-definition/reference.md +67 -0
  227. skilldrop_cli/data/packs/data-analytics/skills/metric-definition/templates/metric-spec.md +70 -0
  228. skilldrop_cli/data/packs/data-analytics/skills/sql-review/SKILL.md +83 -0
  229. skilldrop_cli/data/packs/data-analytics/skills/sql-review/evals/eval_queries.json +34 -0
  230. skilldrop_cli/data/packs/data-analytics/skills/sql-review/evals/evals.json +19 -0
  231. skilldrop_cli/data/packs/data-analytics/skills/sql-review/examples/revenue-by-region.md +174 -0
  232. skilldrop_cli/data/packs/data-analytics/skills/sql-review/manifest.json +42 -0
  233. skilldrop_cli/data/packs/data-analytics/skills/sql-review/reference.md +84 -0
  234. skilldrop_cli/data/packs/data-analytics/skills/sql-review/scripts/sql_lint.py +461 -0
  235. skilldrop_cli/data/packs/design/pack.json +60 -0
  236. skilldrop_cli/data/packs/design/skills/brand-kit/SKILL.md +105 -0
  237. skilldrop_cli/data/packs/design/skills/brand-kit/evals/eval_queries.json +30 -0
  238. skilldrop_cli/data/packs/design/skills/brand-kit/evals/evals.json +18 -0
  239. skilldrop_cli/data/packs/design/skills/brand-kit/evals/files/1/brand/northwind-logo-white.png +0 -0
  240. skilldrop_cli/data/packs/design/skills/brand-kit/evals/files/1/brand/northwind-logo.png +0 -0
  241. skilldrop_cli/data/packs/design/skills/brand-kit/examples/northwind-brand.md +48 -0
  242. skilldrop_cli/data/packs/design/skills/brand-kit/manifest.json +45 -0
  243. skilldrop_cli/data/packs/design/skills/brand-kit/scripts/check_brand.py +114 -0
  244. skilldrop_cli/data/packs/design/skills/brand-kit/templates/brand.json +54 -0
  245. skilldrop_cli/data/packs/design/skills/deck-builder/SKILL.md +201 -0
  246. skilldrop_cli/data/packs/design/skills/deck-builder/evals/eval_queries.json +14 -0
  247. skilldrop_cli/data/packs/design/skills/deck-builder/evals/evals.json +40 -0
  248. skilldrop_cli/data/packs/design/skills/deck-builder/examples/exec-board-update.md +108 -0
  249. skilldrop_cli/data/packs/design/skills/deck-builder/examples/templated-brand-deck.md +148 -0
  250. skilldrop_cli/data/packs/design/skills/deck-builder/manifest.json +18 -0
  251. skilldrop_cli/data/packs/design/skills/deck-builder/reference.md +180 -0
  252. skilldrop_cli/data/packs/design/skills/deck-builder/requirements.txt +3 -0
  253. skilldrop_cli/data/packs/design/skills/deck-builder/scripts/build_deck.py +1134 -0
  254. skilldrop_cli/data/packs/design/skills/deck-builder/templates/deck-spec.json +168 -0
  255. skilldrop_cli/data/packs/design/skills/deck-builder/templates/palettes.json +59 -0
  256. skilldrop_cli/data/packs/design/skills/marketing-flyer/SKILL.md +113 -0
  257. skilldrop_cli/data/packs/design/skills/marketing-flyer/evals/eval_queries.json +30 -0
  258. skilldrop_cli/data/packs/design/skills/marketing-flyer/evals/evals.json +18 -0
  259. skilldrop_cli/data/packs/design/skills/marketing-flyer/evals/files/1/brand/brand.json +80 -0
  260. skilldrop_cli/data/packs/design/skills/marketing-flyer/evals/files/1/brand/logo-white.png +0 -0
  261. skilldrop_cli/data/packs/design/skills/marketing-flyer/evals/files/1/brand/logo.png +0 -0
  262. skilldrop_cli/data/packs/design/skills/marketing-flyer/evals/files/1/brand/mark.png +0 -0
  263. skilldrop_cli/data/packs/design/skills/marketing-flyer/examples/community-health-fair.md +68 -0
  264. skilldrop_cli/data/packs/design/skills/marketing-flyer/manifest.json +40 -0
  265. skilldrop_cli/data/packs/design/skills/marketing-flyer/reference.md +54 -0
  266. skilldrop_cli/data/packs/design/skills/marketing-flyer/scripts/build_flyer.py +323 -0
  267. skilldrop_cli/data/packs/design/skills/marketing-flyer/templates/flyer-spec.json +26 -0
  268. skilldrop_cli/data/packs/design/skills/slide-outliner/SKILL.md +58 -0
  269. skilldrop_cli/data/packs/design/skills/slide-outliner/evals/eval_queries.json +34 -0
  270. skilldrop_cli/data/packs/design/skills/slide-outliner/evals/evals.json +16 -0
  271. skilldrop_cli/data/packs/design/skills/slide-outliner/manifest.json +11 -0
  272. skilldrop_cli/data/packs/design/skills/slide-outliner/templates/deck-outline.md +131 -0
  273. skilldrop_cli/data/packs/dev-team/loops/build/LOOP.md +80 -0
  274. skilldrop_cli/data/packs/dev-team/loops/build/evals/eval_queries.json +30 -0
  275. skilldrop_cli/data/packs/dev-team/loops/build/evals/evals.json +27 -0
  276. skilldrop_cli/data/packs/dev-team/loops/build/loop.json +48 -0
  277. skilldrop_cli/data/packs/dev-team/loops/release/LOOP.md +91 -0
  278. skilldrop_cli/data/packs/dev-team/loops/release/loop.json +47 -0
  279. skilldrop_cli/data/packs/dev-team/pack.json +56 -0
  280. skilldrop_cli/data/packs/dev-team/skills/accessibility-audit/SKILL.md +74 -0
  281. skilldrop_cli/data/packs/dev-team/skills/accessibility-audit/evals/eval_queries.json +30 -0
  282. skilldrop_cli/data/packs/dev-team/skills/accessibility-audit/evals/evals.json +19 -0
  283. skilldrop_cli/data/packs/dev-team/skills/accessibility-audit/examples/login-form.md +76 -0
  284. skilldrop_cli/data/packs/dev-team/skills/accessibility-audit/manifest.json +11 -0
  285. skilldrop_cli/data/packs/dev-team/skills/accessibility-audit/reference.md +69 -0
  286. skilldrop_cli/data/packs/dev-team/skills/agents-md-generator/SKILL.md +82 -0
  287. skilldrop_cli/data/packs/dev-team/skills/agents-md-generator/evals/eval_queries.json +15 -0
  288. skilldrop_cli/data/packs/dev-team/skills/agents-md-generator/evals/evals.json +50 -0
  289. skilldrop_cli/data/packs/dev-team/skills/agents-md-generator/evals/files/1/Makefile +5 -0
  290. skilldrop_cli/data/packs/dev-team/skills/agents-md-generator/evals/files/1/alembic/versions/0001_create_bookings.py +10 -0
  291. skilldrop_cli/data/packs/dev-team/skills/agents-md-generator/evals/files/1/booking/__init__.py +0 -0
  292. skilldrop_cli/data/packs/dev-team/skills/agents-md-generator/evals/files/1/booking/app.py +8 -0
  293. skilldrop_cli/data/packs/dev-team/skills/agents-md-generator/evals/files/1/pyproject.toml +11 -0
  294. skilldrop_cli/data/packs/dev-team/skills/agents-md-generator/evals/files/1/tests/test_health.py +5 -0
  295. skilldrop_cli/data/packs/dev-team/skills/agents-md-generator/evals/files/2/AGENTS.md +3 -0
  296. skilldrop_cli/data/packs/dev-team/skills/agents-md-generator/evals/files/2/package.json +12 -0
  297. skilldrop_cli/data/packs/dev-team/skills/agents-md-generator/evals/files/2/src/index.ts +1 -0
  298. skilldrop_cli/data/packs/dev-team/skills/agents-md-generator/manifest.json +11 -0
  299. skilldrop_cli/data/packs/dev-team/skills/agents-md-generator/reference.md +89 -0
  300. skilldrop_cli/data/packs/dev-team/skills/agents-md-generator/templates/agents-md.md +48 -0
  301. skilldrop_cli/data/packs/dev-team/skills/bug-triage/SKILL.md +67 -0
  302. skilldrop_cli/data/packs/dev-team/skills/bug-triage/evals/eval_queries.json +34 -0
  303. skilldrop_cli/data/packs/dev-team/skills/bug-triage/evals/evals.json +17 -0
  304. skilldrop_cli/data/packs/dev-team/skills/bug-triage/manifest.json +14 -0
  305. skilldrop_cli/data/packs/dev-team/skills/bug-triage/templates/bug-ticket.md +86 -0
  306. skilldrop_cli/data/packs/dev-team/skills/contribution-wizard/SKILL.md +134 -0
  307. skilldrop_cli/data/packs/dev-team/skills/contribution-wizard/evals/eval_queries.json +30 -0
  308. skilldrop_cli/data/packs/dev-team/skills/contribution-wizard/evals/evals.json +19 -0
  309. skilldrop_cli/data/packs/dev-team/skills/contribution-wizard/manifest.json +11 -0
  310. skilldrop_cli/data/packs/dev-team/skills/devils-advocate/SKILL.md +143 -0
  311. skilldrop_cli/data/packs/dev-team/skills/devils-advocate/evals/eval_queries.json +38 -0
  312. skilldrop_cli/data/packs/dev-team/skills/devils-advocate/evals/evals.json +19 -0
  313. skilldrop_cli/data/packs/dev-team/skills/devils-advocate/examples/rate-limiter-review.md +46 -0
  314. skilldrop_cli/data/packs/dev-team/skills/devils-advocate/lenses/adversarial-review.md +88 -0
  315. skilldrop_cli/data/packs/dev-team/skills/devils-advocate/lenses/edge-cases.md +95 -0
  316. skilldrop_cli/data/packs/dev-team/skills/devils-advocate/lenses/future-proofing.md +75 -0
  317. skilldrop_cli/data/packs/dev-team/skills/devils-advocate/lenses/test-coverage.md +90 -0
  318. skilldrop_cli/data/packs/dev-team/skills/devils-advocate/manifest.json +14 -0
  319. skilldrop_cli/data/packs/dev-team/skills/devils-advocate/templates/challenge.md +118 -0
  320. skilldrop_cli/data/packs/dev-team/skills/feature-implement-loop/SKILL.md +88 -0
  321. skilldrop_cli/data/packs/dev-team/skills/feature-implement-loop/evals/eval_queries.json +30 -0
  322. skilldrop_cli/data/packs/dev-team/skills/feature-implement-loop/evals/evals.json +19 -0
  323. skilldrop_cli/data/packs/dev-team/skills/feature-implement-loop/manifest.json +14 -0
  324. skilldrop_cli/data/packs/dev-team/skills/launch-readiness/SKILL.md +95 -0
  325. skilldrop_cli/data/packs/dev-team/skills/launch-readiness/evals/eval_queries.json +10 -0
  326. skilldrop_cli/data/packs/dev-team/skills/launch-readiness/evals/evals.json +19 -0
  327. skilldrop_cli/data/packs/dev-team/skills/launch-readiness/examples/schema-change-revise.md +54 -0
  328. skilldrop_cli/data/packs/dev-team/skills/launch-readiness/manifest.json +24 -0
  329. skilldrop_cli/data/packs/dev-team/skills/launch-readiness/templates/readiness-report.md +41 -0
  330. skilldrop_cli/data/packs/dev-team/skills/migration-plan/SKILL.md +68 -0
  331. skilldrop_cli/data/packs/dev-team/skills/migration-plan/evals/eval_queries.json +34 -0
  332. skilldrop_cli/data/packs/dev-team/skills/migration-plan/evals/evals.json +16 -0
  333. skilldrop_cli/data/packs/dev-team/skills/migration-plan/manifest.json +11 -0
  334. skilldrop_cli/data/packs/dev-team/skills/migration-plan/templates/migration-plan.md +68 -0
  335. skilldrop_cli/data/packs/dev-team/skills/pre-merge-review/SKILL.md +85 -0
  336. skilldrop_cli/data/packs/dev-team/skills/pre-merge-review/evals/eval_queries.json +11 -0
  337. skilldrop_cli/data/packs/dev-team/skills/pre-merge-review/evals/evals.json +26 -0
  338. skilldrop_cli/data/packs/dev-team/skills/pre-merge-review/examples/pre-merge-verdict.md +43 -0
  339. skilldrop_cli/data/packs/dev-team/skills/pre-merge-review/manifest.json +15 -0
  340. skilldrop_cli/data/packs/dev-team/skills/pre-merge-review/scripts/gate.py +189 -0
  341. skilldrop_cli/data/packs/dev-team/skills/release-notes/SKILL.md +61 -0
  342. skilldrop_cli/data/packs/dev-team/skills/release-notes/evals/eval_queries.json +30 -0
  343. skilldrop_cli/data/packs/dev-team/skills/release-notes/evals/evals.json +19 -0
  344. skilldrop_cli/data/packs/dev-team/skills/release-notes/manifest.json +11 -0
  345. skilldrop_cli/data/packs/dev-team/skills/release-notes/templates/release-notes.md +83 -0
  346. skilldrop_cli/data/packs/dev-team/skills/sonar-onboard/SKILL.md +170 -0
  347. skilldrop_cli/data/packs/dev-team/skills/sonar-onboard/evals/eval_queries.json +34 -0
  348. skilldrop_cli/data/packs/dev-team/skills/sonar-onboard/evals/evals.json +16 -0
  349. skilldrop_cli/data/packs/dev-team/skills/sonar-onboard/manifest.json +11 -0
  350. skilldrop_cli/data/packs/dev-team/skills/sonar-onboard/reference.md +151 -0
  351. skilldrop_cli/data/packs/dev-team/skills/sonar-onboard/templates/github-actions-sonar-server.yml.tmpl +50 -0
  352. skilldrop_cli/data/packs/dev-team/skills/sonar-onboard/templates/github-actions-sonarcloud.yml.tmpl +53 -0
  353. skilldrop_cli/data/packs/dev-team/skills/sonar-onboard/templates/readme-snippet.md +38 -0
  354. skilldrop_cli/data/packs/dev-team/skills/sonar-onboard/templates/sonar-project.properties.tmpl +31 -0
  355. skilldrop_cli/data/packs/dev-team/skills/sonar-review/SKILL.md +220 -0
  356. skilldrop_cli/data/packs/dev-team/skills/sonar-review/evals/eval_queries.json +34 -0
  357. skilldrop_cli/data/packs/dev-team/skills/sonar-review/evals/evals.json +16 -0
  358. skilldrop_cli/data/packs/dev-team/skills/sonar-review/lenses/bugs.md +48 -0
  359. skilldrop_cli/data/packs/dev-team/skills/sonar-review/lenses/code-smells.md +64 -0
  360. skilldrop_cli/data/packs/dev-team/skills/sonar-review/lenses/coverage-and-duplication.md +74 -0
  361. skilldrop_cli/data/packs/dev-team/skills/sonar-review/lenses/security-hotspots.md +56 -0
  362. skilldrop_cli/data/packs/dev-team/skills/sonar-review/lenses/vulnerabilities.md +52 -0
  363. skilldrop_cli/data/packs/dev-team/skills/sonar-review/manifest.json +37 -0
  364. skilldrop_cli/data/packs/dev-team/skills/sonar-review/reference.md +167 -0
  365. skilldrop_cli/data/packs/dev-team/skills/sonar-review/templates/report.md +84 -0
  366. skilldrop_cli/data/packs/dev-team/skills/test-plan-generator/SKILL.md +59 -0
  367. skilldrop_cli/data/packs/dev-team/skills/test-plan-generator/evals/eval_queries.json +34 -0
  368. skilldrop_cli/data/packs/dev-team/skills/test-plan-generator/evals/evals.json +16 -0
  369. skilldrop_cli/data/packs/dev-team/skills/test-plan-generator/manifest.json +11 -0
  370. skilldrop_cli/data/packs/dev-team/skills/test-plan-generator/templates/test-plan.md +83 -0
  371. skilldrop_cli/data/packs/dev-team/skills/user-story-splitter/SKILL.md +88 -0
  372. skilldrop_cli/data/packs/dev-team/skills/user-story-splitter/evals/eval_queries.json +34 -0
  373. skilldrop_cli/data/packs/dev-team/skills/user-story-splitter/evals/evals.json +16 -0
  374. skilldrop_cli/data/packs/dev-team/skills/user-story-splitter/examples/notifications-epic.md +123 -0
  375. skilldrop_cli/data/packs/dev-team/skills/user-story-splitter/manifest.json +14 -0
  376. skilldrop_cli/data/packs/dev-team/skills/user-story-splitter/templates/story.md +40 -0
  377. skilldrop_cli/data/packs/experience-design/pack.json +68 -0
  378. skilldrop_cli/data/packs/experience-design/skills/content-design/SKILL.md +77 -0
  379. skilldrop_cli/data/packs/experience-design/skills/content-design/evals/eval_queries.json +34 -0
  380. skilldrop_cli/data/packs/experience-design/skills/content-design/evals/evals.json +18 -0
  381. skilldrop_cli/data/packs/experience-design/skills/content-design/examples/parking-permit-page.md +102 -0
  382. skilldrop_cli/data/packs/experience-design/skills/content-design/manifest.json +41 -0
  383. skilldrop_cli/data/packs/experience-design/skills/content-design/scripts/readability.py +115 -0
  384. skilldrop_cli/data/packs/experience-design/skills/content-design/templates/content-spec.md +45 -0
  385. skilldrop_cli/data/packs/experience-design/skills/design-system-spec/SKILL.md +79 -0
  386. skilldrop_cli/data/packs/experience-design/skills/design-system-spec/evals/eval_queries.json +34 -0
  387. skilldrop_cli/data/packs/experience-design/skills/design-system-spec/evals/evals.json +19 -0
  388. skilldrop_cli/data/packs/experience-design/skills/design-system-spec/examples/text-field-spec.md +121 -0
  389. skilldrop_cli/data/packs/experience-design/skills/design-system-spec/manifest.json +46 -0
  390. skilldrop_cli/data/packs/experience-design/skills/design-system-spec/reference.md +66 -0
  391. skilldrop_cli/data/packs/experience-design/skills/design-system-spec/templates/component-spec.md +74 -0
  392. skilldrop_cli/data/packs/experience-design/skills/information-architecture/SKILL.md +76 -0
  393. skilldrop_cli/data/packs/experience-design/skills/information-architecture/evals/eval_queries.json +34 -0
  394. skilldrop_cli/data/packs/experience-design/skills/information-architecture/evals/evals.json +19 -0
  395. skilldrop_cli/data/packs/experience-design/skills/information-architecture/examples/payroll-app-nav.md +127 -0
  396. skilldrop_cli/data/packs/experience-design/skills/information-architecture/manifest.json +46 -0
  397. skilldrop_cli/data/packs/experience-design/skills/information-architecture/reference.md +54 -0
  398. skilldrop_cli/data/packs/experience-design/skills/information-architecture/templates/ia-spec.md +77 -0
  399. skilldrop_cli/data/packs/experience-design/skills/service-blueprint/SKILL.md +76 -0
  400. skilldrop_cli/data/packs/experience-design/skills/service-blueprint/evals/eval_queries.json +30 -0
  401. skilldrop_cli/data/packs/experience-design/skills/service-blueprint/evals/evals.json +19 -0
  402. skilldrop_cli/data/packs/experience-design/skills/service-blueprint/examples/insurance-claim-blueprint.md +107 -0
  403. skilldrop_cli/data/packs/experience-design/skills/service-blueprint/manifest.json +45 -0
  404. skilldrop_cli/data/packs/experience-design/skills/service-blueprint/templates/blueprint.md +72 -0
  405. skilldrop_cli/data/packs/experience-design/skills/ux-writing/SKILL.md +77 -0
  406. skilldrop_cli/data/packs/experience-design/skills/ux-writing/evals/eval_queries.json +34 -0
  407. skilldrop_cli/data/packs/experience-design/skills/ux-writing/evals/evals.json +19 -0
  408. skilldrop_cli/data/packs/experience-design/skills/ux-writing/examples/team-invite-flow.md +66 -0
  409. skilldrop_cli/data/packs/experience-design/skills/ux-writing/manifest.json +41 -0
  410. skilldrop_cli/data/packs/experience-design/skills/ux-writing/templates/string-table.md +22 -0
  411. skilldrop_cli/data/packs/grc/pack.json +57 -0
  412. skilldrop_cli/data/packs/grc/skills/dpia/SKILL.md +123 -0
  413. skilldrop_cli/data/packs/grc/skills/dpia/evals/eval_queries.json +34 -0
  414. skilldrop_cli/data/packs/grc/skills/dpia/evals/evals.json +19 -0
  415. skilldrop_cli/data/packs/grc/skills/dpia/examples/acme-warehouse-performance.md +159 -0
  416. skilldrop_cli/data/packs/grc/skills/dpia/manifest.json +47 -0
  417. skilldrop_cli/data/packs/grc/skills/dpia/reference.md +118 -0
  418. skilldrop_cli/data/packs/grc/skills/dpia/templates/dpia.md +103 -0
  419. skilldrop_cli/data/packs/grc/skills/risk-register/SKILL.md +139 -0
  420. skilldrop_cli/data/packs/grc/skills/risk-register/evals/eval_queries.json +34 -0
  421. skilldrop_cli/data/packs/grc/skills/risk-register/evals/evals.json +19 -0
  422. skilldrop_cli/data/packs/grc/skills/risk-register/examples/northwind-register.csv +9 -0
  423. skilldrop_cli/data/packs/grc/skills/risk-register/examples/northwind-register.md +127 -0
  424. skilldrop_cli/data/packs/grc/skills/risk-register/manifest.json +43 -0
  425. skilldrop_cli/data/packs/grc/skills/risk-register/reference.md +99 -0
  426. skilldrop_cli/data/packs/grc/skills/risk-register/scripts/check_register.py +338 -0
  427. skilldrop_cli/data/packs/grc/skills/risk-register/templates/risk-register.csv +2 -0
  428. skilldrop_cli/data/packs/grc/skills/soc2-evidence-map/SKILL.md +117 -0
  429. skilldrop_cli/data/packs/grc/skills/soc2-evidence-map/evals/eval_queries.json +34 -0
  430. skilldrop_cli/data/packs/grc/skills/soc2-evidence-map/evals/evals.json +19 -0
  431. skilldrop_cli/data/packs/grc/skills/soc2-evidence-map/examples/northwind-evidence-map.csv +17 -0
  432. skilldrop_cli/data/packs/grc/skills/soc2-evidence-map/examples/northwind-type2-security.md +127 -0
  433. skilldrop_cli/data/packs/grc/skills/soc2-evidence-map/manifest.json +41 -0
  434. skilldrop_cli/data/packs/grc/skills/soc2-evidence-map/reference.md +156 -0
  435. skilldrop_cli/data/packs/grc/skills/soc2-evidence-map/templates/evidence-map.csv +2 -0
  436. skilldrop_cli/data/packs/infra-as-code/pack.json +51 -0
  437. skilldrop_cli/data/packs/infra-as-code/skills/terraform-module/SKILL.md +85 -0
  438. skilldrop_cli/data/packs/infra-as-code/skills/terraform-module/evals/eval_queries.json +34 -0
  439. skilldrop_cli/data/packs/infra-as-code/skills/terraform-module/evals/evals.json +31 -0
  440. skilldrop_cli/data/packs/infra-as-code/skills/terraform-module/examples/s3-log-bucket/README.md +71 -0
  441. skilldrop_cli/data/packs/infra-as-code/skills/terraform-module/examples/s3-log-bucket/examples/basic/main.tf +30 -0
  442. skilldrop_cli/data/packs/infra-as-code/skills/terraform-module/examples/s3-log-bucket/main.tf +153 -0
  443. skilldrop_cli/data/packs/infra-as-code/skills/terraform-module/examples/s3-log-bucket/outputs.tf +14 -0
  444. skilldrop_cli/data/packs/infra-as-code/skills/terraform-module/examples/s3-log-bucket/variables.tf +71 -0
  445. skilldrop_cli/data/packs/infra-as-code/skills/terraform-module/examples/s3-log-bucket/versions.tf +10 -0
  446. skilldrop_cli/data/packs/infra-as-code/skills/terraform-module/examples/s3-log-bucket.md +50 -0
  447. skilldrop_cli/data/packs/infra-as-code/skills/terraform-module/manifest.json +41 -0
  448. skilldrop_cli/data/packs/infra-as-code/skills/terraform-module/reference.md +105 -0
  449. skilldrop_cli/data/packs/infra-as-code/skills/terraform-module/templates/module-readme.md +55 -0
  450. skilldrop_cli/data/packs/infra-as-code/skills/terraform-plan-review/SKILL.md +87 -0
  451. skilldrop_cli/data/packs/infra-as-code/skills/terraform-plan-review/evals/eval_queries.json +34 -0
  452. skilldrop_cli/data/packs/infra-as-code/skills/terraform-plan-review/evals/evals.json +30 -0
  453. skilldrop_cli/data/packs/infra-as-code/skills/terraform-plan-review/evals/files/2/plan.json +133 -0
  454. skilldrop_cli/data/packs/infra-as-code/skills/terraform-plan-review/examples/northwind-orders-plan.json +174 -0
  455. skilldrop_cli/data/packs/infra-as-code/skills/terraform-plan-review/examples/northwind-orders.md +87 -0
  456. skilldrop_cli/data/packs/infra-as-code/skills/terraform-plan-review/manifest.json +48 -0
  457. skilldrop_cli/data/packs/infra-as-code/skills/terraform-plan-review/reference.md +77 -0
  458. skilldrop_cli/data/packs/infra-as-code/skills/terraform-plan-review/scripts/plan_summary.py +361 -0
  459. skilldrop_cli/data/packs/product-manager/loops/discover/LOOP.md +81 -0
  460. skilldrop_cli/data/packs/product-manager/loops/discover/evals/eval_queries.json +30 -0
  461. skilldrop_cli/data/packs/product-manager/loops/discover/evals/evals.json +26 -0
  462. skilldrop_cli/data/packs/product-manager/loops/discover/loop.json +41 -0
  463. skilldrop_cli/data/packs/product-manager/pack.json +61 -0
  464. skilldrop_cli/data/packs/product-manager/skills/business-case/SKILL.md +64 -0
  465. skilldrop_cli/data/packs/product-manager/skills/business-case/evals/eval_queries.json +30 -0
  466. skilldrop_cli/data/packs/product-manager/skills/business-case/evals/evals.json +19 -0
  467. skilldrop_cli/data/packs/product-manager/skills/business-case/examples/build-vs-buy-flags.md +42 -0
  468. skilldrop_cli/data/packs/product-manager/skills/business-case/manifest.json +11 -0
  469. skilldrop_cli/data/packs/product-manager/skills/business-case/templates/business-case.md +60 -0
  470. skilldrop_cli/data/packs/product-manager/skills/okr-cascade/SKILL.md +59 -0
  471. skilldrop_cli/data/packs/product-manager/skills/okr-cascade/evals/eval_queries.json +12 -0
  472. skilldrop_cli/data/packs/product-manager/skills/okr-cascade/evals/evals.json +28 -0
  473. skilldrop_cli/data/packs/product-manager/skills/okr-cascade/manifest.json +11 -0
  474. skilldrop_cli/data/packs/product-manager/skills/okr-cascade/templates/okr-cascade.md +46 -0
  475. skilldrop_cli/data/packs/product-manager/skills/prd-draft/SKILL.md +62 -0
  476. skilldrop_cli/data/packs/product-manager/skills/prd-draft/evals/eval_queries.json +34 -0
  477. skilldrop_cli/data/packs/product-manager/skills/prd-draft/evals/evals.json +17 -0
  478. skilldrop_cli/data/packs/product-manager/skills/prd-draft/manifest.json +16 -0
  479. skilldrop_cli/data/packs/product-manager/skills/prd-draft/templates/prd.md +66 -0
  480. skilldrop_cli/data/packs/product-manager/skills/prfaq/SKILL.md +76 -0
  481. skilldrop_cli/data/packs/product-manager/skills/prfaq/evals/eval_queries.json +13 -0
  482. skilldrop_cli/data/packs/product-manager/skills/prfaq/evals/evals.json +32 -0
  483. skilldrop_cli/data/packs/product-manager/skills/prfaq/manifest.json +11 -0
  484. skilldrop_cli/data/packs/product-manager/skills/prfaq/templates/prfaq.md +60 -0
  485. skilldrop_cli/data/packs/product-manager/skills/requirements-interview/SKILL.md +61 -0
  486. skilldrop_cli/data/packs/product-manager/skills/requirements-interview/evals/eval_queries.json +34 -0
  487. skilldrop_cli/data/packs/product-manager/skills/requirements-interview/evals/evals.json +16 -0
  488. skilldrop_cli/data/packs/product-manager/skills/requirements-interview/manifest.json +14 -0
  489. skilldrop_cli/data/packs/product-manager/skills/requirements-interview/templates/interview-kit.md +63 -0
  490. skilldrop_cli/data/packs/product-manager/skills/strategy-analysis/SKILL.md +63 -0
  491. skilldrop_cli/data/packs/product-manager/skills/strategy-analysis/evals/eval_queries.json +13 -0
  492. skilldrop_cli/data/packs/product-manager/skills/strategy-analysis/evals/evals.json +36 -0
  493. skilldrop_cli/data/packs/product-manager/skills/strategy-analysis/examples/market-entry-tows.md +42 -0
  494. skilldrop_cli/data/packs/product-manager/skills/strategy-analysis/manifest.json +15 -0
  495. skilldrop_cli/data/packs/product-manager/skills/success-metrics/SKILL.md +65 -0
  496. skilldrop_cli/data/packs/product-manager/skills/success-metrics/evals/eval_queries.json +11 -0
  497. skilldrop_cli/data/packs/product-manager/skills/success-metrics/evals/evals.json +27 -0
  498. skilldrop_cli/data/packs/product-manager/skills/success-metrics/manifest.json +11 -0
  499. skilldrop_cli/data/packs/product-manager/skills/success-metrics/templates/metrics-plan.md +55 -0
  500. skilldrop_cli/data/packs/product-manager/skills/user-journey-map/SKILL.md +65 -0
  501. skilldrop_cli/data/packs/product-manager/skills/user-journey-map/evals/eval_queries.json +12 -0
  502. skilldrop_cli/data/packs/product-manager/skills/user-journey-map/evals/evals.json +30 -0
  503. skilldrop_cli/data/packs/product-manager/skills/user-journey-map/examples/b2b-saas-onboarding.md +69 -0
  504. skilldrop_cli/data/packs/product-manager/skills/user-journey-map/manifest.json +15 -0
  505. skilldrop_cli/data/packs/product-manager/skills/user-journey-map/templates/journey-map.md +47 -0
  506. skilldrop_cli/data/packs/research/pack.json +52 -0
  507. skilldrop_cli/data/packs/research/skills/hypothesis-comparison/SKILL.md +131 -0
  508. skilldrop_cli/data/packs/research/skills/hypothesis-comparison/evals/eval_queries.json +34 -0
  509. skilldrop_cli/data/packs/research/skills/hypothesis-comparison/evals/evals.json +19 -0
  510. skilldrop_cli/data/packs/research/skills/hypothesis-comparison/examples/conversion-drop.md +132 -0
  511. skilldrop_cli/data/packs/research/skills/hypothesis-comparison/manifest.json +43 -0
  512. skilldrop_cli/data/packs/research/skills/hypothesis-comparison/reference.md +107 -0
  513. skilldrop_cli/data/packs/research/skills/hypothesis-comparison/scripts/ach_matrix.py +204 -0
  514. skilldrop_cli/data/packs/research/skills/hypothesis-comparison/templates/hypothesis-comparison.md +61 -0
  515. skilldrop_cli/data/packs/research/skills/hypothesis-comparison/templates/matrix.csv +4 -0
  516. skilldrop_cli/data/packs/research/skills/research-plan/SKILL.md +122 -0
  517. skilldrop_cli/data/packs/research/skills/research-plan/evals/eval_queries.json +34 -0
  518. skilldrop_cli/data/packs/research/skills/research-plan/evals/evals.json +28 -0
  519. skilldrop_cli/data/packs/research/skills/research-plan/examples/four-day-week-plan.md +97 -0
  520. skilldrop_cli/data/packs/research/skills/research-plan/manifest.json +47 -0
  521. skilldrop_cli/data/packs/research/skills/research-plan/reference.md +88 -0
  522. skilldrop_cli/data/packs/research/skills/research-plan/templates/research-plan.md +54 -0
  523. skilldrop_cli/data/packs/research/skills/source-synthesis/SKILL.md +123 -0
  524. skilldrop_cli/data/packs/research/skills/source-synthesis/evals/eval_queries.json +34 -0
  525. skilldrop_cli/data/packs/research/skills/source-synthesis/evals/evals.json +19 -0
  526. skilldrop_cli/data/packs/research/skills/source-synthesis/examples/four-day-week.md +146 -0
  527. skilldrop_cli/data/packs/research/skills/source-synthesis/manifest.json +42 -0
  528. skilldrop_cli/data/packs/research/skills/source-synthesis/reference.md +92 -0
  529. skilldrop_cli/data/packs/research/skills/source-synthesis/scripts/citations.py +314 -0
  530. skilldrop_cli/data/packs/research/skills/source-synthesis/templates/synthesis.md +46 -0
  531. skilldrop_cli/data/packs/skill-engineering/pack.json +46 -0
  532. skilldrop_cli/data/packs/skill-engineering/skills/skill-author/SKILL.md +139 -0
  533. skilldrop_cli/data/packs/skill-engineering/skills/skill-author/evals/eval_queries.json +10 -0
  534. skilldrop_cli/data/packs/skill-engineering/skills/skill-author/evals/evals.json +19 -0
  535. skilldrop_cli/data/packs/skill-engineering/skills/skill-author/examples/release-notes-skill.md +185 -0
  536. skilldrop_cli/data/packs/skill-engineering/skills/skill-author/manifest.json +42 -0
  537. skilldrop_cli/data/packs/skill-engineering/skills/skill-author/reference.md +144 -0
  538. skilldrop_cli/data/packs/skill-engineering/skills/skill-author/templates/eval_queries.json +9 -0
  539. skilldrop_cli/data/packs/skill-engineering/skills/skill-author/templates/evals.json +16 -0
  540. skilldrop_cli/data/packs/skill-engineering/skills/skill-author/templates/skill-template.md +52 -0
  541. skilldrop_cli/data/packs/skill-engineering/skills/skill-review/SKILL.md +131 -0
  542. skilldrop_cli/data/packs/skill-engineering/skills/skill-review/evals/eval_queries.json +11 -0
  543. skilldrop_cli/data/packs/skill-engineering/skills/skill-review/evals/evals.json +19 -0
  544. skilldrop_cli/data/packs/skill-engineering/skills/skill-review/evals/files/1/skills/changelog-writer/SKILL.md +10 -0
  545. skilldrop_cli/data/packs/skill-engineering/skills/skill-review/evals/files/1/skills/pr-summary/SKILL.md +12 -0
  546. skilldrop_cli/data/packs/skill-engineering/skills/skill-review/evals/files/1/skills/pr-summary/references/tone.md +3 -0
  547. skilldrop_cli/data/packs/skill-engineering/skills/skill-review/evals/files/1/skills/pr-summary/scripts/collect.py +6 -0
  548. skilldrop_cli/data/packs/skill-engineering/skills/skill-review/examples/meeting-notes-review.md +147 -0
  549. skilldrop_cli/data/packs/skill-engineering/skills/skill-review/manifest.json +50 -0
  550. skilldrop_cli/data/packs/skill-engineering/skills/skill-review/reference.md +135 -0
  551. skilldrop_cli/data/packs/skill-engineering/skills/skill-review/scripts/lint_skill.py +481 -0
  552. skilldrop_cli/data/packs/skill-engineering/skills/skill-review/templates/review.md +43 -0
  553. skilldrop_cli/data/packs/solution-architect/loops/design/LOOP.md +83 -0
  554. skilldrop_cli/data/packs/solution-architect/loops/design/evals/eval_queries.json +30 -0
  555. skilldrop_cli/data/packs/solution-architect/loops/design/evals/evals.json +26 -0
  556. skilldrop_cli/data/packs/solution-architect/loops/design/loop.json +47 -0
  557. skilldrop_cli/data/packs/solution-architect/pack.json +65 -0
  558. skilldrop_cli/data/packs/solution-architect/skills/adr-generator/SKILL.md +50 -0
  559. skilldrop_cli/data/packs/solution-architect/skills/adr-generator/evals/eval_queries.json +34 -0
  560. skilldrop_cli/data/packs/solution-architect/skills/adr-generator/evals/evals.json +17 -0
  561. skilldrop_cli/data/packs/solution-architect/skills/adr-generator/manifest.json +11 -0
  562. skilldrop_cli/data/packs/solution-architect/skills/adr-generator/templates/madr.md +56 -0
  563. skilldrop_cli/data/packs/solution-architect/skills/adr-generator/templates/nygard.md +19 -0
  564. skilldrop_cli/data/packs/solution-architect/skills/api-contract-draft/SKILL.md +69 -0
  565. skilldrop_cli/data/packs/solution-architect/skills/api-contract-draft/evals/eval_queries.json +34 -0
  566. skilldrop_cli/data/packs/solution-architect/skills/api-contract-draft/evals/evals.json +18 -0
  567. skilldrop_cli/data/packs/solution-architect/skills/api-contract-draft/manifest.json +11 -0
  568. skilldrop_cli/data/packs/solution-architect/skills/api-contract-draft/reference.md +73 -0
  569. skilldrop_cli/data/packs/solution-architect/skills/api-contract-draft/templates/openapi-skeleton.yaml +148 -0
  570. skilldrop_cli/data/packs/solution-architect/skills/architecture-diagrams/SKILL.md +66 -0
  571. skilldrop_cli/data/packs/solution-architect/skills/architecture-diagrams/evals/eval_queries.json +34 -0
  572. skilldrop_cli/data/packs/solution-architect/skills/architecture-diagrams/evals/evals.json +16 -0
  573. skilldrop_cli/data/packs/solution-architect/skills/architecture-diagrams/examples/aws-three-tier.md +44 -0
  574. skilldrop_cli/data/packs/solution-architect/skills/architecture-diagrams/examples/c4-container-saas.md +51 -0
  575. skilldrop_cli/data/packs/solution-architect/skills/architecture-diagrams/examples/microservices-sequence.md +49 -0
  576. skilldrop_cli/data/packs/solution-architect/skills/architecture-diagrams/manifest.json +31 -0
  577. skilldrop_cli/data/packs/solution-architect/skills/architecture-diagrams/templates/c4-container.puml +31 -0
  578. skilldrop_cli/data/packs/solution-architect/skills/architecture-diagrams/templates/mermaid-aws.md +52 -0
  579. skilldrop_cli/data/packs/solution-architect/skills/architecture-diagrams/templates/mermaid-flowchart.md +37 -0
  580. skilldrop_cli/data/packs/solution-architect/skills/architecture-diagrams/templates/mermaid-sequence.md +39 -0
  581. skilldrop_cli/data/packs/solution-architect/skills/data-contract/SKILL.md +67 -0
  582. skilldrop_cli/data/packs/solution-architect/skills/data-contract/evals/eval_queries.json +34 -0
  583. skilldrop_cli/data/packs/solution-architect/skills/data-contract/evals/evals.json +16 -0
  584. skilldrop_cli/data/packs/solution-architect/skills/data-contract/manifest.json +11 -0
  585. skilldrop_cli/data/packs/solution-architect/skills/data-contract/reference.md +46 -0
  586. skilldrop_cli/data/packs/solution-architect/skills/data-contract/templates/data-contract.md +69 -0
  587. skilldrop_cli/data/packs/solution-architect/skills/db-schema-design/SKILL.md +68 -0
  588. skilldrop_cli/data/packs/solution-architect/skills/db-schema-design/evals/eval_queries.json +34 -0
  589. skilldrop_cli/data/packs/solution-architect/skills/db-schema-design/evals/evals.json +16 -0
  590. skilldrop_cli/data/packs/solution-architect/skills/db-schema-design/manifest.json +11 -0
  591. skilldrop_cli/data/packs/solution-architect/skills/db-schema-design/reference.md +56 -0
  592. skilldrop_cli/data/packs/solution-architect/skills/db-schema-design/templates/schema-design.md +75 -0
  593. skilldrop_cli/data/packs/solution-architect/skills/design-doc/SKILL.md +49 -0
  594. skilldrop_cli/data/packs/solution-architect/skills/design-doc/evals/eval_queries.json +34 -0
  595. skilldrop_cli/data/packs/solution-architect/skills/design-doc/evals/evals.json +17 -0
  596. skilldrop_cli/data/packs/solution-architect/skills/design-doc/manifest.json +14 -0
  597. skilldrop_cli/data/packs/solution-architect/skills/design-doc/templates/design-doc.md +98 -0
  598. skilldrop_cli/data/packs/solution-architect/skills/figma-diagrams/SKILL.md +87 -0
  599. skilldrop_cli/data/packs/solution-architect/skills/figma-diagrams/evals/eval_queries.json +34 -0
  600. skilldrop_cli/data/packs/solution-architect/skills/figma-diagrams/evals/evals.json +15 -0
  601. skilldrop_cli/data/packs/solution-architect/skills/figma-diagrams/manifest.json +36 -0
  602. skilldrop_cli/data/packs/solution-architect/skills/figma-diagrams/reference.md +91 -0
  603. skilldrop_cli/data/packs/solution-architect/skills/figma-diagrams/requirements.txt +3 -0
  604. skilldrop_cli/data/packs/solution-architect/skills/figma-diagrams/scripts/_figma_client.py +71 -0
  605. skilldrop_cli/data/packs/solution-architect/skills/figma-diagrams/scripts/frame_to_mermaid.py +102 -0
  606. skilldrop_cli/data/packs/solution-architect/skills/figma-diagrams/scripts/inspect_file.py +46 -0
  607. skilldrop_cli/data/packs/solution-architect/skills/figma-diagrams/scripts/list_comments.py +35 -0
  608. skilldrop_cli/data/packs/solution-architect/skills/figma-diagrams/scripts/post_comment.py +52 -0
  609. skilldrop_cli/data/packs/solution-architect/skills/figma-diagrams/templates/figjam-import.json +20 -0
  610. skilldrop_cli/data/packs/solution-architect/skills/nfr-spec/SKILL.md +63 -0
  611. skilldrop_cli/data/packs/solution-architect/skills/nfr-spec/evals/eval_queries.json +34 -0
  612. skilldrop_cli/data/packs/solution-architect/skills/nfr-spec/evals/evals.json +16 -0
  613. skilldrop_cli/data/packs/solution-architect/skills/nfr-spec/manifest.json +16 -0
  614. skilldrop_cli/data/packs/solution-architect/skills/nfr-spec/reference.md +74 -0
  615. skilldrop_cli/data/packs/solution-architect/skills/nfr-spec/templates/nfr-spec.md +56 -0
  616. skilldrop_cli/data/packs/solution-architect/skills/reverse-architecture/SKILL.md +103 -0
  617. skilldrop_cli/data/packs/solution-architect/skills/reverse-architecture/evals/eval_queries.json +34 -0
  618. skilldrop_cli/data/packs/solution-architect/skills/reverse-architecture/evals/evals.json +16 -0
  619. skilldrop_cli/data/packs/solution-architect/skills/reverse-architecture/manifest.json +11 -0
  620. skilldrop_cli/data/packs/solution-architect/skills/reverse-architecture/reference.md +150 -0
  621. skilldrop_cli/data/packs/solution-architect/skills/reverse-architecture/templates/description.md +52 -0
  622. skilldrop_cli/data/packs/solution-architect/skills/reverse-architecture/templates/extraction.md +55 -0
  623. skilldrop_cli/data/packs/solution-architect/skills/tech-comparison-matrix/SKILL.md +56 -0
  624. skilldrop_cli/data/packs/solution-architect/skills/tech-comparison-matrix/evals/eval_queries.json +30 -0
  625. skilldrop_cli/data/packs/solution-architect/skills/tech-comparison-matrix/evals/evals.json +18 -0
  626. skilldrop_cli/data/packs/solution-architect/skills/tech-comparison-matrix/examples/queue-selection.md +41 -0
  627. skilldrop_cli/data/packs/solution-architect/skills/tech-comparison-matrix/manifest.json +11 -0
  628. skilldrop_cli/data/packs/solution-architect/skills/tech-comparison-matrix/templates/matrix.md +45 -0
  629. skilldrop_cli/data/packs/solution-architect/skills/threat-model/SKILL.md +65 -0
  630. skilldrop_cli/data/packs/solution-architect/skills/threat-model/evals/eval_queries.json +34 -0
  631. skilldrop_cli/data/packs/solution-architect/skills/threat-model/evals/evals.json +18 -0
  632. skilldrop_cli/data/packs/solution-architect/skills/threat-model/examples/document-upload.md +56 -0
  633. skilldrop_cli/data/packs/solution-architect/skills/threat-model/manifest.json +11 -0
  634. skilldrop_cli/data/packs/solution-architect/skills/threat-model/reference.md +69 -0
  635. skilldrop_cli/data/packs/sre-oncall/loops/operate/LOOP.md +84 -0
  636. skilldrop_cli/data/packs/sre-oncall/loops/operate/evals/eval_queries.json +30 -0
  637. skilldrop_cli/data/packs/sre-oncall/loops/operate/evals/evals.json +25 -0
  638. skilldrop_cli/data/packs/sre-oncall/loops/operate/loop.json +41 -0
  639. skilldrop_cli/data/packs/sre-oncall/pack.json +59 -0
  640. skilldrop_cli/data/packs/sre-oncall/skills/capacity-cost-model/SKILL.md +65 -0
  641. skilldrop_cli/data/packs/sre-oncall/skills/capacity-cost-model/evals/eval_queries.json +34 -0
  642. skilldrop_cli/data/packs/sre-oncall/skills/capacity-cost-model/evals/evals.json +19 -0
  643. skilldrop_cli/data/packs/sre-oncall/skills/capacity-cost-model/manifest.json +11 -0
  644. skilldrop_cli/data/packs/sre-oncall/skills/capacity-cost-model/reference.md +54 -0
  645. skilldrop_cli/data/packs/sre-oncall/skills/capacity-cost-model/templates/cost-model.md +68 -0
  646. skilldrop_cli/data/packs/sre-oncall/skills/cloud-cost-review/SKILL.md +121 -0
  647. skilldrop_cli/data/packs/sre-oncall/skills/cloud-cost-review/evals/eval_queries.json +34 -0
  648. skilldrop_cli/data/packs/sre-oncall/skills/cloud-cost-review/evals/evals.json +29 -0
  649. skilldrop_cli/data/packs/sre-oncall/skills/cloud-cost-review/examples/acme-aws-september.md +247 -0
  650. skilldrop_cli/data/packs/sre-oncall/skills/cloud-cost-review/examples/acme-cur-2026-08-09.csv +1085 -0
  651. skilldrop_cli/data/packs/sre-oncall/skills/cloud-cost-review/manifest.json +49 -0
  652. skilldrop_cli/data/packs/sre-oncall/skills/cloud-cost-review/reference.md +100 -0
  653. skilldrop_cli/data/packs/sre-oncall/skills/cloud-cost-review/scripts/cost_summary.py +630 -0
  654. skilldrop_cli/data/packs/sre-oncall/skills/cloud-cost-review/templates/cost-review.md +36 -0
  655. skilldrop_cli/data/packs/sre-oncall/skills/delivery-metrics-report/SKILL.md +114 -0
  656. skilldrop_cli/data/packs/sre-oncall/skills/delivery-metrics-report/evals/eval_queries.json +34 -0
  657. skilldrop_cli/data/packs/sre-oncall/skills/delivery-metrics-report/evals/evals.json +28 -0
  658. skilldrop_cli/data/packs/sre-oncall/skills/delivery-metrics-report/evals/files/1/deploys.csv +49 -0
  659. skilldrop_cli/data/packs/sre-oncall/skills/delivery-metrics-report/evals/files/1/incidents.csv +7 -0
  660. skilldrop_cli/data/packs/sre-oncall/skills/delivery-metrics-report/evals/files/1/prs.csv +84 -0
  661. skilldrop_cli/data/packs/sre-oncall/skills/delivery-metrics-report/examples/checkout-api-8-weeks.md +123 -0
  662. skilldrop_cli/data/packs/sre-oncall/skills/delivery-metrics-report/examples/deployments.csv +49 -0
  663. skilldrop_cli/data/packs/sre-oncall/skills/delivery-metrics-report/examples/incidents.csv +7 -0
  664. skilldrop_cli/data/packs/sre-oncall/skills/delivery-metrics-report/examples/prs.csv +84 -0
  665. skilldrop_cli/data/packs/sre-oncall/skills/delivery-metrics-report/manifest.json +48 -0
  666. skilldrop_cli/data/packs/sre-oncall/skills/delivery-metrics-report/reference.md +83 -0
  667. skilldrop_cli/data/packs/sre-oncall/skills/delivery-metrics-report/scripts/delivery_metrics.py +566 -0
  668. skilldrop_cli/data/packs/sre-oncall/skills/delivery-metrics-report/templates/delivery-report.md +31 -0
  669. skilldrop_cli/data/packs/sre-oncall/skills/incident-comms/SKILL.md +68 -0
  670. skilldrop_cli/data/packs/sre-oncall/skills/incident-comms/evals/eval_queries.json +34 -0
  671. skilldrop_cli/data/packs/sre-oncall/skills/incident-comms/evals/evals.json +16 -0
  672. skilldrop_cli/data/packs/sre-oncall/skills/incident-comms/manifest.json +14 -0
  673. skilldrop_cli/data/packs/sre-oncall/skills/incident-comms/reference.md +43 -0
  674. skilldrop_cli/data/packs/sre-oncall/skills/incident-comms/templates/messages.md +82 -0
  675. skilldrop_cli/data/packs/sre-oncall/skills/observability-plan/SKILL.md +70 -0
  676. skilldrop_cli/data/packs/sre-oncall/skills/observability-plan/evals/eval_queries.json +34 -0
  677. skilldrop_cli/data/packs/sre-oncall/skills/observability-plan/evals/evals.json +16 -0
  678. skilldrop_cli/data/packs/sre-oncall/skills/observability-plan/manifest.json +15 -0
  679. skilldrop_cli/data/packs/sre-oncall/skills/observability-plan/reference.md +67 -0
  680. skilldrop_cli/data/packs/sre-oncall/skills/observability-plan/templates/observability-plan.md +62 -0
  681. skilldrop_cli/data/packs/sre-oncall/skills/postmortem-generator/SKILL.md +66 -0
  682. skilldrop_cli/data/packs/sre-oncall/skills/postmortem-generator/evals/eval_queries.json +34 -0
  683. skilldrop_cli/data/packs/sre-oncall/skills/postmortem-generator/evals/evals.json +17 -0
  684. skilldrop_cli/data/packs/sre-oncall/skills/postmortem-generator/manifest.json +14 -0
  685. skilldrop_cli/data/packs/sre-oncall/skills/postmortem-generator/templates/postmortem.md +67 -0
  686. skilldrop_cli/data/packs/sre-oncall/skills/runbook-generator/SKILL.md +42 -0
  687. skilldrop_cli/data/packs/sre-oncall/skills/runbook-generator/evals/eval_queries.json +34 -0
  688. skilldrop_cli/data/packs/sre-oncall/skills/runbook-generator/evals/evals.json +17 -0
  689. skilldrop_cli/data/packs/sre-oncall/skills/runbook-generator/manifest.json +11 -0
  690. skilldrop_cli/data/packs/sre-oncall/skills/runbook-generator/templates/runbook.md +109 -0
  691. skilldrop_cli/data/packs/stakeholder-comms/pack.json +60 -0
  692. skilldrop_cli/data/packs/stakeholder-comms/skills/audience-profile/SKILL.md +74 -0
  693. skilldrop_cli/data/packs/stakeholder-comms/skills/audience-profile/evals/eval_queries.json +34 -0
  694. skilldrop_cli/data/packs/stakeholder-comms/skills/audience-profile/evals/evals.json +15 -0
  695. skilldrop_cli/data/packs/stakeholder-comms/skills/audience-profile/manifest.json +11 -0
  696. skilldrop_cli/data/packs/stakeholder-comms/skills/audience-profile/reference.md +175 -0
  697. skilldrop_cli/data/packs/stakeholder-comms/skills/decision-log/SKILL.md +68 -0
  698. skilldrop_cli/data/packs/stakeholder-comms/skills/decision-log/evals/eval_queries.json +34 -0
  699. skilldrop_cli/data/packs/stakeholder-comms/skills/decision-log/evals/evals.json +17 -0
  700. skilldrop_cli/data/packs/stakeholder-comms/skills/decision-log/manifest.json +11 -0
  701. skilldrop_cli/data/packs/stakeholder-comms/skills/exec-summary/SKILL.md +45 -0
  702. skilldrop_cli/data/packs/stakeholder-comms/skills/exec-summary/evals/eval_queries.json +34 -0
  703. skilldrop_cli/data/packs/stakeholder-comms/skills/exec-summary/evals/evals.json +17 -0
  704. skilldrop_cli/data/packs/stakeholder-comms/skills/exec-summary/manifest.json +11 -0
  705. skilldrop_cli/data/packs/stakeholder-comms/skills/exec-summary/templates/exec-summary.md +48 -0
  706. skilldrop_cli/data/packs/stakeholder-comms/skills/guide-builder/SKILL.md +77 -0
  707. skilldrop_cli/data/packs/stakeholder-comms/skills/guide-builder/evals/eval_queries.json +34 -0
  708. skilldrop_cli/data/packs/stakeholder-comms/skills/guide-builder/evals/evals.json +18 -0
  709. skilldrop_cli/data/packs/stakeholder-comms/skills/guide-builder/examples/local-setup-guide.md +127 -0
  710. skilldrop_cli/data/packs/stakeholder-comms/skills/guide-builder/manifest.json +11 -0
  711. skilldrop_cli/data/packs/stakeholder-comms/skills/guide-builder/templates/api-reference.md +120 -0
  712. skilldrop_cli/data/packs/stakeholder-comms/skills/guide-builder/templates/design-walkthrough.md +72 -0
  713. skilldrop_cli/data/packs/stakeholder-comms/skills/guide-builder/templates/setup-guide.md +109 -0
  714. skilldrop_cli/data/packs/trackers/pack.json +61 -0
  715. skilldrop_cli/data/packs/trackers/skills/backlog-triage/SKILL.md +116 -0
  716. skilldrop_cli/data/packs/trackers/skills/backlog-triage/evals/eval_queries.json +34 -0
  717. skilldrop_cli/data/packs/trackers/skills/backlog-triage/evals/evals.json +30 -0
  718. skilldrop_cli/data/packs/trackers/skills/backlog-triage/evals/files/1/examples/northwind-backlog.csv +28 -0
  719. skilldrop_cli/data/packs/trackers/skills/backlog-triage/evals/files/2/issues.json +6052 -0
  720. skilldrop_cli/data/packs/trackers/skills/backlog-triage/examples/northwind-backlog.csv +28 -0
  721. skilldrop_cli/data/packs/trackers/skills/backlog-triage/examples/northwind-checkout-triage.md +202 -0
  722. skilldrop_cli/data/packs/trackers/skills/backlog-triage/manifest.json +42 -0
  723. skilldrop_cli/data/packs/trackers/skills/backlog-triage/reference.md +106 -0
  724. skilldrop_cli/data/packs/trackers/skills/backlog-triage/scripts/triage_backlog.py +461 -0
  725. skilldrop_cli/data/packs/trackers/skills/backlog-triage/templates/triage-report.md +42 -0
  726. skilldrop_cli/data/packs/trackers/skills/team-status-report/SKILL.md +111 -0
  727. skilldrop_cli/data/packs/trackers/skills/team-status-report/evals/eval_queries.json +30 -0
  728. skilldrop_cli/data/packs/trackers/skills/team-status-report/evals/evals.json +30 -0
  729. skilldrop_cli/data/packs/trackers/skills/team-status-report/evals/files/1/examples/northwind-week-40.csv +16 -0
  730. skilldrop_cli/data/packs/trackers/skills/team-status-report/evals/files/2/issues.json +1212 -0
  731. skilldrop_cli/data/packs/trackers/skills/team-status-report/examples/northwind-week-40.csv +16 -0
  732. skilldrop_cli/data/packs/trackers/skills/team-status-report/examples/northwind-weekly-status.md +160 -0
  733. skilldrop_cli/data/packs/trackers/skills/team-status-report/manifest.json +33 -0
  734. skilldrop_cli/data/packs/trackers/skills/team-status-report/reference.md +92 -0
  735. skilldrop_cli/data/packs/trackers/skills/team-status-report/scripts/status_counts.py +486 -0
  736. skilldrop_cli/data/packs/trackers/skills/team-status-report/templates/status-report.md +42 -0
  737. skilldrop_cli/data/packs/trackers/skills/tracker-brief-sync/SKILL.md +116 -0
  738. skilldrop_cli/data/packs/trackers/skills/tracker-brief-sync/evals/eval_queries.json +34 -0
  739. skilldrop_cli/data/packs/trackers/skills/tracker-brief-sync/evals/evals.json +31 -0
  740. skilldrop_cli/data/packs/trackers/skills/tracker-brief-sync/evals/files/1/examples/prd-guest-checkout.md +53 -0
  741. skilldrop_cli/data/packs/trackers/skills/tracker-brief-sync/evals/files/2/examples/prd-guest-checkout.md +53 -0
  742. skilldrop_cli/data/packs/trackers/skills/tracker-brief-sync/evals/files/2/examples/tracker-after-two-weeks.csv +30 -0
  743. skilldrop_cli/data/packs/trackers/skills/tracker-brief-sync/examples/guest-checkout-spec.json +98 -0
  744. skilldrop_cli/data/packs/trackers/skills/tracker-brief-sync/examples/guest-checkout-sync.md +151 -0
  745. skilldrop_cli/data/packs/trackers/skills/tracker-brief-sync/examples/prd-guest-checkout.md +53 -0
  746. skilldrop_cli/data/packs/trackers/skills/tracker-brief-sync/examples/tracker-after-two-weeks.csv +30 -0
  747. skilldrop_cli/data/packs/trackers/skills/tracker-brief-sync/manifest.json +41 -0
  748. skilldrop_cli/data/packs/trackers/skills/tracker-brief-sync/reference.md +101 -0
  749. skilldrop_cli/data/packs/trackers/skills/tracker-brief-sync/scripts/brief_sync.py +501 -0
  750. skilldrop_cli/data/packs/trackers/skills/tracker-brief-sync/templates/issues-spec.json +26 -0
  751. skilldrop_cli/data/profiles.json +24 -0
  752. skilldrop_cli-0.16.3.dist-info/METADATA +91 -0
  753. skilldrop_cli-0.16.3.dist-info/RECORD +757 -0
  754. skilldrop_cli-0.16.3.dist-info/WHEEL +5 -0
  755. skilldrop_cli-0.16.3.dist-info/entry_points.txt +2 -0
  756. skilldrop_cli-0.16.3.dist-info/licenses/LICENSE +9 -0
  757. skilldrop_cli-0.16.3.dist-info/top_level.txt +1 -0
@@ -0,0 +1,76 @@
1
+ ---
2
+ name: prfaq
3
+ description: Write an Amazon-style PR/FAQ — the launch press release for a product that doesn't exist yet, plus the customer FAQ and internal FAQ that force the hard questions before engineering starts. Use when the user wants a PRFAQ, a working-backwards document, a "write the press release first" exercise, or needs to align stakeholders on what a product must be before committing a team to build it.
4
+ ---
5
+
6
+ # prfaq
7
+
8
+ The working-backwards forcing function: write the launch press release *before* the product exists, then answer the questions a real customer and a skeptical insider would ask. If the press release can't be written specifically — a nameable customer, a problem in their words, a benefit you could measure — the product isn't ready to spec, and surfacing that is the deliverable. Sits upstream of `prd-draft` (requirements for a committed product) and `business-case` (invest/defer decision): the PRFAQ decides whether the idea deserves either.
9
+
10
+ ## How to respond
11
+
12
+ 1. **Pin the three anchors** — customer, problem, differentiator. Ask at most 2 questions, spent on the weakest anchors: *"Who exactly is the customer, and what do they do today instead?"* and *"What does this do that the thing they use today doesn't?"* A PRFAQ for "everyone" with a problem stated in industry jargon produces a marketing document, not a forcing function — don't start drafting until all three anchors are concrete. Non-interactive run (no user to ask): derive missing anchors from the input where defensible and tag them `[assumption]` at the top; an anchor with no defensible derivation → emit `BLOCKED: need <anchor>` naming what to rerun with, instead of fabricating a customer.
13
+
14
+ 2. **Write the press release** — one page, datelined with a city and a realistic launch date; no product name exists yet → invent a plausible working name and mark it as a placeholder. The blocks:
15
+ - **Headline**: product name + the customer benefit in one sentence. ✅ *"Acme Contracts cuts routine contract review from three days to twenty minutes for in-house legal teams"* — ❌ *"Acme launches AI-powered legal platform"*.
16
+ - **Sub-headline**: the one key detail the headline compressed (who it's for, what it replaces, or the mechanism).
17
+ - **Problem paragraph**: the customer's current pain *in their words*. ✅ *"I can't close a deal until legal clears the paperwork, and legal is three days behind"* — ❌ *"lack of operational visibility into contract workflows"*.
18
+ - **Solution paragraph**: what the product does and what it does *differently* from the alternative the customer already uses. "AI-powered" is not a differentiator; the mechanism is.
19
+ - **Leadership quote**: one sentence naming the strategic rationale, attributed to a role (*"our VP of Product"*), never a placeholder name. If the rationale can't be articulated, that's a finding — report it.
20
+ - **Customer quote**: a named-persona customer describing the before/after in concrete terms — a specific moment, not adjectives.
21
+ - **Call to action**: what the customer does next to get started.
22
+
23
+ 3. **Derive the adoption hypothesis** — two lines that make the press release falsifiable:
24
+ - **First-success event**: the one *customer* action that proves first value landed, observable within a session. ✅ *"Legal counsel approves their first AI-reviewed contract without re-reading it line by line"* — ❌ *"user completes onboarding"* — ❌ *"we launch to beta"* (that's the team's action, not the customer's).
25
+ - **Repeat-value behavior**: what brings the customer back after first success.
26
+
27
+ Can't name a first-success event → the problem paragraph is too vague; go back to step 2 before continuing.
28
+
29
+ 4. **Write the customer FAQ** — 3–5 questions a real buyer asks before switching: price, switching cost, reliability, "how is this different from `<what they use today>`", data/privacy. Answer honestly, and **at least one answer must concede a real trade-off**. A FAQ where every answer is good news is an ad.
30
+
31
+ 5. **Write the internal FAQ** — the questions a skeptical insider asks, each with a committed answer:
32
+ - The **riskiest assumption** — the belief that, if wrong, kills the product — and how it will be tested first.
33
+ - The **hardest technical or operational problem** and why it's believed solvable.
34
+ - The **acquisition path** — how the first 10 customers concretely arrive (not "marketing").
35
+ - The **success metric** — traceable to the first-success event from step 3. "User count" when first success is an approval event is a vanity metric; the metric must count the event.
36
+ - **What would make us kill this** — a named condition, not "if it doesn't work out".
37
+
38
+ 6. **Run the read-aloud pass, then emit** with [`templates/prfaq.md`](templates/prfaq.md): could a non-technical reader retell the problem and solution after one read? Is every claim in the press release either measurable or attributed? Anything failing gets rewritten before the artifact ships. Close with the hand-off line: idea survives → `prd-draft` (requirements) or `business-case` (the investment ask); riskiest assumption unproven → the test for it comes first.
39
+
40
+ ## Useful references in this skill
41
+
42
+ - [`templates/prfaq.md`](templates/prfaq.md) — press release blocks, adoption hypothesis, and both FAQ skeletons
43
+
44
+ ## Quality bar
45
+
46
+ - **The problem paragraph is in the customer's words.** If it contains a term the customer wouldn't say out loud, it fails.
47
+ - **The first-success event is behavioral and observable** — you could watch a session recording and mark the moment it happened.
48
+ - **The solution names a mechanism**, not a category. "Uses AI" describes a decade of products; what does *this one* do differently?
49
+ - **At least one customer-FAQ answer concedes a trade-off.** Honesty in the FAQ is what separates a forcing function from a pitch.
50
+ - **The internal-FAQ success metric counts the first-success event** — not sign-ups, not launches, not page views.
51
+ - **The kill condition is named.** A PRFAQ that can't say what failure looks like hasn't confronted the riskiest assumption.
52
+ - **No spec content.** Zero API shapes, acceptance criteria, or backlog items — those belong downstream in `prd-draft`.
53
+
54
+ ## When to use this skill
55
+
56
+ - ✅ A product or feature concept exists but no team is committed yet — test the direction before the spec
57
+ - ✅ "Write the press release first" / "do a working-backwards doc" / "Amazon-style PRFAQ"
58
+ - ✅ Stakeholders disagree about what a product *is* — the press release forces one answer
59
+ - ✅ A founder or PM needs to discover whether an idea survives its own hard questions
60
+
61
+ ## When NOT to use this skill
62
+
63
+ - ❌ The product is committed and needs requirements — that's `prd-draft`
64
+ - ❌ The question is invest/defer with costed options — that's `business-case`
65
+ - ❌ Real launch marketing copy for a product that exists — this is a thinking tool, not copywriting
66
+ - ❌ Org-level strategy or portfolio questions — `strategy-analysis`
67
+
68
+ ## Anti-patterns to avoid
69
+
70
+ - ❌ **PRFAQ as a spec.** The moment acceptance criteria or API shapes appear, it's stopped forcing direction and started doing `prd-draft`'s job badly.
71
+ - ❌ **Jargon-laundered problems.** "Lack of cross-functional visibility" is how a vendor talks. "I can't tell if my team is blocked" is how a customer talks. Only the second belongs in the press release.
72
+ - ❌ **Placeholder quotes.** "[CEO name]: 'We're excited…'" defeats the exercise — the quote exists to force the strategic rationale into one attributable sentence.
73
+ - ❌ **Launch-as-adoption.** "Ship to beta" as first success conflates the team's delivery with the customer's value. First success is something the *customer* does.
74
+ - ❌ **Moat without mechanism.** Claiming defensibility without naming what makes it hard to copy — data advantage, network effect, workflow lock-in — is a wish wearing a strategy's clothes.
75
+ - ❌ **All-good-news FAQs.** If the customer FAQ reads like the pricing page, the hard questions were dodged and the document proves nothing.
76
+ - ❌ **Showing the machinery.** The reply and the artifact are for the person who asked. Don't mention this skill, its files, templates, caps or internal terms, or that the run is non-interactive. Name another skill once, at the end, as a suggested next step, never inside the artifact.
@@ -0,0 +1,13 @@
1
+ [
2
+ { "query": "Write a PRFAQ for our new product idea", "should_trigger": true },
3
+ { "query": "I want to write the press release before the product exists", "should_trigger": true },
4
+ { "query": "Help me do an Amazon-style working-backwards doc for this concept", "should_trigger": true },
5
+ { "query": "We need to align stakeholders on what this product actually is before engineering starts", "should_trigger": true },
6
+ { "query": "Write the press release and FAQ for this idea and tell me if it survives its own hard questions", "should_trigger": true },
7
+
8
+ { "query": "Draft the product requirements doc for the new feature", "should_trigger": false },
9
+ { "query": "Write a business case for building vs buying this tool", "should_trigger": false },
10
+ { "query": "Write the marketing copy for our launch homepage", "should_trigger": false },
11
+ { "query": "Run a SWOT analysis on our product line", "should_trigger": false },
12
+ { "query": "Write release notes for what we shipped this sprint", "should_trigger": false }
13
+ ]
@@ -0,0 +1,32 @@
1
+ {
2
+ "skill_name": "prfaq",
3
+ "evals": [
4
+ {
5
+ "id": 1,
6
+ "prompt": "Write a PRFAQ for an AI-powered contract review tool aimed at in-house legal teams at mid-market companies. The problem: legal teams spend 60% of their time on low-complexity contract review that blocks deal closure.",
7
+ "assertions": [
8
+ "Press release contains all blocks: headline, sub-headline, problem paragraph, solution paragraph, leadership quote, customer quote, call to action",
9
+ "The headline names the product and a customer benefit — not a category claim like 'launches AI-powered platform'",
10
+ "The problem paragraph is in the customer's words with no industry jargon",
11
+ "The solution paragraph names a mechanism, not just 'uses AI'",
12
+ "The leadership quote is attributed to a role (not a placeholder name) and states a strategic rationale",
13
+ "An adoption hypothesis names a first-success event that is a customer action, observable within a session — not 'signs up', 'completes onboarding', or a team action like 'launch'",
14
+ "A repeat-value behavior is named",
15
+ "Customer FAQ has 3-5 questions and at least one answer concedes a real trade-off",
16
+ "Internal FAQ names the riskiest assumption with a test, the hardest technical problem, a concrete acquisition path, and a kill condition",
17
+ "The internal-FAQ success metric counts the first-success event, not a vanity metric",
18
+ "No acceptance criteria, API shapes, or backlog items appear anywhere",
19
+ "The output ends with a hand-off pointing to prd-draft or business-case"
20
+ ]
21
+ },
22
+ {
23
+ "id": 2,
24
+ "prompt": "[Non-interactive run — no user available to answer questions] Write a PRFAQ.",
25
+ "assertions": [
26
+ "No press release is fabricated — with no customer, problem, or differentiator derivable, the output is a BLOCKED response",
27
+ "The BLOCKED output names the missing anchors (customer, problem, differentiator) and what to rerun with",
28
+ "No invented product, customer segment, or problem statement appears"
29
+ ]
30
+ }
31
+ ]
32
+ }
@@ -0,0 +1,11 @@
1
+ {
2
+ "name": "prfaq",
3
+ "version": "0.1.1",
4
+ "description": "Write an Amazon-style PR/FAQ — the launch press release for a product that doesn't exist yet, plus the customer FAQ and internal FAQ that force the hard questions before engineering starts. Use when the user wants a PRFAQ, a working-backwards document, a \"write the press release first\" exercise, or needs to align stakeholders on what a product must be before committing a team to build it.",
5
+ "entrypoint": "SKILL.md",
6
+ "deps": { "npm": [], "pip": [] },
7
+ "env": { "required": [], "optional": [] },
8
+ "related": ["business-case", "prd-draft", "strategy-analysis"],
9
+ "tags": ["prfaq", "working-backwards", "press-release", "product-strategy", "product-direction", "amazon"],
10
+ "model": { "tier": "standard", "rationale": "Synthesizes a press release and FAQs from a product concept against a fixed format. The specificity discipline needs care but the template bounds it; escalate via ambiguous-input when the concept itself is contested." }
11
+ }
@@ -0,0 +1,60 @@
1
+ # PR/FAQ: {Product name}
2
+
3
+ > Status: DRAFT — working-backwards document, not a spec.
4
+ > Author: {role} · Date: {date} · Imagined launch date: {launch-date}
5
+
6
+ ## Press release
7
+
8
+ **{Headline: product name + customer benefit in one sentence}**
9
+
10
+ *{Sub-headline: the key detail the headline compressed}*
11
+
12
+ {CITY} — {launch-date} — {Problem paragraph: the customer's current pain, in their words. What do they do today, and where does it hurt?}
13
+
14
+ {Solution paragraph: what the product does, and the mechanism that makes it different from what the customer uses today.}
15
+
16
+ "{Leadership quote: one sentence naming the strategic rationale}," said {role, e.g. "the VP of Product"}.
17
+
18
+ "{Customer quote: a named persona describing a concrete before/after moment}," said {persona name, role at company-type}.
19
+
20
+ {Call to action: what the customer does next to get started.}
21
+
22
+ ## Adoption hypothesis
23
+
24
+ - **First-success event:** {the one customer action that proves first value — behavioral, observable within a session}
25
+ - **Repeat-value behavior:** {what brings the customer back after first success}
26
+
27
+ ## Customer FAQ
28
+
29
+ <!-- 3–5 questions a real buyer asks before switching. At least one answer concedes a trade-off. -->
30
+
31
+ **Q: How is this different from {what they use today}?**
32
+ A: {honest answer, mechanism not category}
33
+
34
+ **Q: What does it cost / what's the switching cost?**
35
+ A: {…}
36
+
37
+ **Q: {reliability / data / privacy question}**
38
+ A: {answer that concedes the real trade-off}
39
+
40
+ ## Internal FAQ
41
+
42
+ **Q: What's the riskiest assumption, and how do we test it first?**
43
+ A: {the belief that kills the product if wrong} → {the cheapest test}
44
+
45
+ **Q: What's the hardest technical/operational problem?**
46
+ A: {…, and why we believe it's solvable}
47
+
48
+ **Q: How do the first 10 customers concretely arrive?**
49
+ A: {named path, not "marketing"}
50
+
51
+ **Q: What's the success metric?**
52
+ A: {a count of the first-success event, with a target and timeframe}
53
+
54
+ **Q: What would make us kill this?**
55
+ A: {a named condition}
56
+
57
+ ## Hand-off
58
+
59
+ - Idea survives → `prd-draft` (requirements) or `business-case` (the investment ask)
60
+ - Riskiest assumption unproven → design its test before anything else
@@ -0,0 +1,61 @@
1
+ ---
2
+ name: requirements-interview
3
+ description: Generate per-stakeholder interview kits for feature discovery — ≤7 questions per stakeholder ranked by how much the answer changes the design, each naming the decision it informs, with at least one disconfirming question per script and an assumptions-to-validate ledger. Use when the user is gathering business requirements, preparing stakeholder or user interviews, or asks "what should I ask the sponsor/users/ops before we build this".
4
+ ---
5
+
6
+ # requirements-interview
7
+
8
+ Builds the elicitation kit for the conversations *before* the PRD — so the answers come back in a shape `brief-intake` and `prd-draft` can consume, instead of as ten pages of agreement with the roadmap. The discipline: every question names the decision it informs, problems are asked about instead of solutions, and every script tries at least once to kill the feature.
9
+
10
+ ## How to respond
11
+
12
+ 1. **Pin the feature idea and identify the stakeholder cast.** From the idea, derive who holds which unknowns — typically: **sponsor** (success definition, constraints, appetite), **end users** (the actual workflow and workarounds — interview the people who do the work, not their manager), **ops/support** (failure modes, ticket reality, operational cost), **security/compliance/legal** (data constraints, regulatory floor), **finance/commercial** (pricing, cost ceiling) when money moves. Ask the user at most 2 questions — who's available, and what's already known — then build kits only for stakeholders who hold *open* unknowns. No interview exists to confirm what's already evidenced.
13
+
14
+ 2. **Write ≤7 questions per stakeholder, ranked by design impact.** Rank 1 is the answer that most changes what gets built. Each question carries two annotations: **informs** (the decision) and **if-answer-is-X-then** (how the design moves). A question that wouldn't change anything regardless of answer doesn't make the seven. ✅ *"Walk me through the last time you handled a refund request — every tool you touched."* (informs: scope of integration; if 3+ tools → unified view is the core, not a nicety) — ❌ *"Would a refund dashboard be useful?"* (everyone says yes to free things).
15
+
16
+ 3. **Ask about problems and the past, never solutions and the hypothetical.** People are reliable witnesses of what they *did* and unreliable predictors of what they'd *use*. ✅ *"What did you do the last time X failed?"* — ❌ *"Would you use a feature that prevents X?"*. Solutions offered by stakeholders get recorded as evidence of pain, then converted back into the underlying problem.
17
+
18
+ 4. **Include at least one disconfirming question per script** — the question whose answer could kill or shrink the feature: ✅ *"If this never gets built, what would you do instead — and how bad is that, honestly?"* / *"Who would be annoyed if we built this?"*. A kit with no kill-question is a confirmation ritual with a calendar invite.
19
+
20
+ 5. **Add the workflow-walkthrough opener for end users.** First substantive question is always a concrete recent episode ("the last time", "yesterday's"), not a generality ("typically", "usually") — generalities retrieve self-image; episodes retrieve facts. Instruct the interviewer to capture **verbatim quotes** — they become the evidence tags in `prd-draft`.
21
+
22
+ 6. **Build the assumptions-to-validate ledger.** Every assumption the feature idea rests on, each mapped to: which stakeholder's which question validates it, and **what answer falsifies it**. An assumption no question can falsify gets flagged — it needs data or a prototype, not an interview.
23
+
24
+ 7. **Emit with [`templates/interview-kit.md`](templates/interview-kit.md)**: one kit per stakeholder (30-minute shape: opener episode → ranked questions → kill-question → "who else should I talk to"), the assumptions ledger, and the synthesis instruction — notes go to `brief-intake` (one brief per interview, then merge) and decisions surface via `decision-log`.
25
+
26
+ ## Useful references in this skill
27
+
28
+ - [`templates/interview-kit.md`](templates/interview-kit.md) — per-stakeholder kit skeleton + the assumptions ledger
29
+
30
+ ## Quality bar
31
+
32
+ - **≤7 questions per stakeholder, ranked**, each annotated with the decision it informs and how the answer moves the design. Unannotated questions don't ship.
33
+ - **Zero leading questions in discovery position.** Anything shaped "wouldn't it be great if…" or answerable with a polite yes fails the kit.
34
+ - **Every script contains a kill-question** — and the kit says what a kill-answer looks like, so the interviewer recognizes it instead of softening it.
35
+ - **End-user scripts open with a concrete recent episode**, never "typically".
36
+ - **Every assumption in the ledger has a falsification condition.** "We'll validate adoption appetite" without what-would-disprove-it is theater.
37
+ - **The synthesis path is named.** Kits that don't say where the notes go produce interviews that end at the notes.
38
+
39
+ ## When to use this skill
40
+
41
+ - ✅ Discovery phase before a PRD — deciding what to ask whom
42
+ - ✅ "What should I ask the sponsor / users / ops about this feature?"
43
+ - ✅ A feature idea built on untested assumptions that interviews could falsify
44
+ - ✅ Preparing a requirements workshop's pre-read questions
45
+
46
+ ## When NOT to use this skill
47
+
48
+ - ❌ The answers already exist in tickets, analytics, or support logs — mine those first; interviews are for what data can't say
49
+ - ❌ Synthesizing notes after the interviews — that's `brief-intake` + `decision-log`
50
+ - ❌ Writing the requirements themselves — `prd-draft`, after the interviews
51
+ - ❌ Usability testing of an existing design — different method; this is problem discovery
52
+
53
+ ## Anti-patterns to avoid
54
+
55
+ - ❌ **The 25-question interrogation.** Past seven, answers degrade into politeness; the ranking exists because time runs out before questions do.
56
+ - ❌ **Confirmation safari.** Every question shaped so yes means "build it" — discovery that can't disconfirm isn't discovery.
57
+ - ❌ **Asking for the solution.** "What should we build?" outsources design to whoever's loudest; ask what hurts, design later.
58
+ - ❌ **Interviewing the manager about the worker's workflow.** Managers describe the process diagram; workers describe the workarounds — the requirements live in the workarounds.
59
+ - ❌ **Skipping ops/support.** They hold the failure-mode requirements nobody else knows exist, and they're the cheapest interview on the list.
60
+ - ❌ **Hypothetical futures.** "Would you use…" — the answer is always yes and always worthless; ask about the last time, not the next time.
61
+ - ❌ **One loud stakeholder = the requirements.** The kit covers the cast precisely so one vivid interview doesn't become the spec.
@@ -0,0 +1,34 @@
1
+ [
2
+ {
3
+ "query": "Build interview questions for our stakeholders on this feature",
4
+ "should_trigger": true
5
+ },
6
+ {
7
+ "query": "Who should we talk to for this discovery, and what should we ask them?",
8
+ "should_trigger": true
9
+ },
10
+ {
11
+ "query": "Create a discovery interview kit per stakeholder",
12
+ "should_trigger": true
13
+ },
14
+ {
15
+ "query": "I need non-leading questions that would actually change the design",
16
+ "should_trigger": true
17
+ },
18
+ {
19
+ "query": "Draft the PRD for this feature",
20
+ "should_trigger": false
21
+ },
22
+ {
23
+ "query": "Structure this existing raw input into a brief",
24
+ "should_trigger": false
25
+ },
26
+ {
27
+ "query": "Map the customer's journey through onboarding",
28
+ "should_trigger": false
29
+ },
30
+ {
31
+ "query": "Write the design doc for the billing migration",
32
+ "should_trigger": false
33
+ }
34
+ ]
@@ -0,0 +1,16 @@
1
+ {
2
+ "skill_name": "requirements-interview",
3
+ "evals": [
4
+ {
5
+ "id": 1,
6
+ "prompt": "We're scoping a billing-migration feature. Build interview kits for the stakeholders we should talk to.",
7
+ "assertions": [
8
+ "Each stakeholder script has at most 7 questions, ranked by how much the answer changes the design",
9
+ "Every question is annotated with the decision it informs and how the answer moves the design",
10
+ "No leading questions in discovery position — nothing answerable with a polite yes",
11
+ "Every script contains a kill-question, and the kit states what a kill-answer would mean",
12
+ "Stakeholders are chosen and named by role, with a reason each one is on the list"
13
+ ]
14
+ }
15
+ ]
16
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "name": "requirements-interview",
3
+ "version": "0.1.0",
4
+ "description": "Generate per-stakeholder interview kits for feature discovery — ≤7 questions per stakeholder ranked by how much the answer changes the design, each naming the decision it informs, with at least one disconfirming question per script and an assumptions-to-validate ledger. Use when the user is gathering business requirements, preparing stakeholder or user interviews, or asks \"what should I ask the sponsor/users/ops before we build this\".",
5
+ "entrypoint": "SKILL.md",
6
+ "deps": { "npm": [], "pip": [] },
7
+ "env": { "required": [], "optional": [] },
8
+ "related": ["brief-intake", "decision-log", "prd-draft"],
9
+ "handoff": [
10
+ { "to": "brief-intake", "when": "the interview is done and the notes are raw", "purpose": "Collect the transcript into a tagged brief before any generator sees it.", "fallback": "If brief-intake is absent, tag each captured field [explicit]/[implied]/[inferred]/[missing] inline and say which downstream skill the brief is shaped for." }
11
+ ],
12
+ "tags": ["discovery", "interviews", "requirements", "elicitation", "stakeholders", "user-research"],
13
+ "model": { "tier": "standard", "rationale": "Question banks are rubric-shaped, but ranking by design impact and deriving falsification conditions for the specific feature is synthesis — above light." }
14
+ }
@@ -0,0 +1,63 @@
1
+ # Interview-kit template
2
+
3
+ One kit per stakeholder. 30-minute shape: episode opener → ranked questions → kill-question → referral close. Capture verbatim quotes — they become `prd-draft` evidence tags.
4
+
5
+ ```markdown
6
+ # Interview kit: {feature idea}
7
+
8
+ **Stakeholders covered:** {list — only those holding open unknowns}
9
+ **Already known (don't re-ask):** {evidence that exists: analytics, tickets, prior research}
10
+
11
+ ---
12
+
13
+ ## Kit: {stakeholder role, e.g. "End user — support agent"}
14
+
15
+ **Holds the unknowns about:** {what only this person can answer}
16
+ **Time:** 30 min · **Record verbatim quotes**
17
+
18
+ ### Opener (end users: concrete recent episode, never "typically")
19
+
20
+ 1. "Walk me through the last time you {did the task}. Every tool you touched, start to finish."
21
+ - *informs:* {decision} · *if {answer-shape} then:* {how the design moves}
22
+
23
+ ### Ranked questions (≤7 total including opener and kill-question)
24
+
25
+ 2. "{question}"
26
+ - *informs:* {decision} · *if X then:* {design consequence}
27
+ 3. …
28
+
29
+ ### Kill-question (mandatory)
30
+
31
+ n. "If this never gets built, what would you do instead — honestly, how bad is that?"
32
+ - *a kill-answer looks like:* {e.g. "shrug + existing workaround under 2 min" → feature shrinks or dies; write it down, don't soften it}
33
+
34
+ ### Close
35
+
36
+ - "Who else should I talk to who'd see this differently?"
37
+ - "What didn't I ask about that I should have?"
38
+
39
+ ---
40
+
41
+ ## Assumptions-to-validate ledger
42
+
43
+ | Assumption the idea rests on | Validated by (stakeholder · Q#) | Falsified if |
44
+ |---|---|---|
45
+ | {e.g. agents lose ≥15 min/ticket to tool-switching} | end user · Q1 | episode shows < 5 min or a fast workaround |
46
+ | {assumption no interview can falsify} | ⚠ not interview-validatable | needs {data pull / prototype} instead |
47
+
48
+ ## Synthesis path (the kit isn't done until this runs)
49
+
50
+ 1. Each interview's notes → `brief-intake` (one brief per interview; quotes verbatim).
51
+ 2. Merge briefs; conflicts between stakeholders are surfaced as open questions, not averaged away.
52
+ 3. Decisions and follow-ups → `decision-log`. Requirements → `prd-draft`.
53
+ ```
54
+
55
+ ## Question-shape cheat-sheet
56
+
57
+ | ❌ Don't ask | ✅ Ask instead |
58
+ |---|---|
59
+ | "Would you use a dashboard that…?" | "What did you do the last time you needed {that info}?" |
60
+ | "Is X a problem for you?" | "Tell me about the most recent time X happened." |
61
+ | "What should we build?" | "What's the most annoying part of {task} today?" |
62
+ | "How often does X typically happen?" | "When did X last happen? And before that?" |
63
+ | "Do you agree this would save time?" | "What would have to be true for you to stop using {workaround}?" |
@@ -0,0 +1,63 @@
1
+ ---
2
+ name: strategy-analysis
3
+ description: Run a strategy framework — SWOT/TOWS, Porter's Five Forces, or PESTLE — on a product, company, or market question, choosing the right framework for the question and forcing every cell to carry evidence and a so-what. Use when the user asks for a SWOT, a competitive/market analysis, "should we enter this market", "what's our position against X", or a macro-environment scan.
4
+ ---
5
+
6
+ # strategy-analysis
7
+
8
+ Runs the classic strategy frameworks the way a good strategist does and a bad deck doesn't: the framework is chosen to fit the question, every cell carries evidence and an implication, and the output ends in ranked, committal so-whats — not a filled-in grid. The grid is the working, never the deliverable. Sibling of `tech-comparison-matrix` (tech selection between named options) and `business-case` (a costed invest/defer decision); this skill is for the strategic question *before* options are named.
9
+
10
+ ## How to respond
11
+
12
+ 1. **Classify the question, then pick ONE framework** (two only when the question genuinely spans both, and say why):
13
+
14
+ | The question is about… | Framework |
15
+ |---|---|
16
+ | Our position: what to exploit, fix, or defend, feeding a near-term decision | **SWOT → TOWS** (SWOT alone is banned — see step 3) |
17
+ | Industry attractiveness / profit pressure: "should we enter", "why are margins thin", "can we defend" | **Porter's Five Forces** |
18
+ | Macro environment: regulation, technology shifts, demographics affecting a multi-year bet | **PESTLE** |
19
+
20
+ The user asked for a framework by name and it fits → run it. It doesn't fit → say so in one line and run the fitting framework instead — the quality bar treats a misfit framework as a category error, and a "SWOT" request that's really "should we enter this market" is Five Forces work; then give the framework they asked for as well, after it and shorter (a SWOT still arrives as TOWS). They asked for it by name, and a reply that withholds it reads as not listening. Portfolio-allocation questions across many products (BCG-matrix territory) → name it, note it needs per-product market-share and growth data, and run it only if that data is supplied.
21
+
22
+ 2. **Collect the evidence base before filling anything.** Name what is known `[data: …]`, reported `[reported by …]`, drawn from general market knowledge `[market: …]`, and assumed `[assumption]`. The `[market: …]` tag exists because on a short prompt most cells are filled from the model's own market knowledge — that's legitimate, but it must stay distinguishable from the user's facts and from guesses. Ask at most 2 questions, spent on the decision the analysis feeds ("what decision does this inform, and by when?") and the competitive set ("who do customers actually compare you to?"). No decision named → the analysis has no ranking criterion; get one before proceeding. Non-interactive run (no user to ask): derive the most plausible decision from the input, state it as `[assumption]` at the top, and rank against it; none derivable → emit `BLOCKED: need the decision this analysis feeds` rather than an unranked survey.
23
+
24
+ 3. **Fill the framework with cells that pass the three tests.** Every entry must be (a) **specific** — a competitor, number, or named capability, not a category; (b) **evidenced** — carrying one of the step-2 tags; (c) **consequential** — with a one-line "so:" implication. ✅ *"S: 4,000 paying tenants' workflow data no rival can train on `[data: billing]` — so: the switching cost is the moat to invest in"* — ❌ *"S: strong team"*. Framework-specific rules:
25
+ - **SWOT** never ships alone — cross it into **TOWS** actions: S×O (attack), S×T (defend), W×O (fix to unlock), W×T (the exposed flank, named honestly). The TOWS quadrants are the output; the SWOT grid is scaffolding.
26
+ - **Five Forces**: each force gets a pressure rating (🟥 high / 🟧 medium / 🟨 low) *with the mechanism* — who holds the power and why (concentration, switching costs, differentiation, substitutes' price-performance). Rate all five; "N/A" is not a rating. Complements/platforms noted where they change the picture.
27
+ - **PESTLE**: only factors that plausibly move *this* decision within its time horizon, each with direction, timeframe, and the exposed asset. Six sections of filler is the classic failure — 3 sharp factors beat 18 generic ones; empty letters say "no material factor identified".
28
+
29
+ 4. **Rank the implications and commit.** End with **Implications, ranked** — 3–5 entries ordered by impact on the named decision, each an action-shaped sentence with an owner-shaped subject: ✅ *"Price the enterprise tier before Q3: supplier power is rising (🟥) and the S×O attack window closes when the incumbent's contract cycle renews"*. Then a one-paragraph **verdict** answering the user's actual question, taking a side, and naming what evidence would change it.
30
+
31
+ 5. **Emit in one message**: evidence base (tag summary), the framework grid(s), ranked implications, verdict. Flag every `[assumption]` that appears in a top-3 implication — those are the validation targets. Hand off: options now named and comparable → `tech-comparison-matrix`; investment decision to cost → `business-case`; product direction to test → `prfaq`.
32
+
33
+ ## Quality bar
34
+
35
+ - **The framework fits the question**, and the doc says why in one line. A SWOT that should have been Five Forces is a category error, not a style choice.
36
+ - **Every cell passes specific/evidenced/consequential.** One untagged, implication-free cell is a defect; a grid of them is a horoscope.
37
+ - **SWOT always arrives as TOWS.** Four lists with no crossings is inventory, not strategy.
38
+ - **Every Five Forces rating names the mechanism.** "Rivalry: high" without who/why is a vibe with a color.
39
+ - **The implications are ranked and action-shaped**, tied to the named decision — not "consider monitoring the competitive landscape".
40
+ - **The verdict takes a side** and names what would change it. An analysis that ends "it depends" has refused its job.
41
+
42
+ ## When to use this skill
43
+
44
+ - ✅ "Run a SWOT on our developer-tools product" (arrives as SWOT→TOWS)
45
+ - ✅ "Should we enter the SMB payroll market?" / "why are margins compressing?"
46
+ - ✅ "What macro trends threaten this 3-year platform bet?"
47
+ - ✅ A strategy offsite needs a rigorous pre-read instead of a brainstorm
48
+
49
+ ## When NOT to use this skill
50
+
51
+ - ❌ Choosing between named technologies or vendors — `tech-comparison-matrix`
52
+ - ❌ A costed build/buy/defer decision — `business-case`
53
+ - ❌ Testing a specific product concept — `prfaq`
54
+ - ❌ Quarterly goal-setting — `okr-cascade`
55
+
56
+ ## Anti-patterns to avoid
57
+
58
+ - ❌ **Framework theater.** Running all three frameworks "for completeness" — each unfits the others' question, and the reader drowns. One question, one framework, one verdict.
59
+ - ❌ **Horoscope cells.** "Strength: experienced team. Weakness: limited resources. Opportunity: growing market." True of every company that ever existed, therefore informative about none.
60
+ - ❌ **SWOT as the deliverable.** The four quadrants are raw material; the TOWS crossings are where a decision lives. Shipping the grid alone ships the homework, not the answer.
61
+ - ❌ **Unranked implications.** Ten equal-weight bullets delegate the actual judgment to the reader — the ranking *is* the analysis.
62
+ - ❌ **Threat inflation.** Every macro trend rated critical so nothing is. Severity must be calibrated to the named decision's time horizon and exposed assets.
63
+ - ❌ **Evidence-free confidence.** A verdict resting on untagged claims. The tag discipline exists so the reader can see exactly which legs are load-bearing guesses.
@@ -0,0 +1,13 @@
1
+ [
2
+ { "query": "Run a SWOT analysis on our product", "should_trigger": true },
3
+ { "query": "Should we enter the SMB payroll market?", "should_trigger": true },
4
+ { "query": "Do a Porter's Five Forces on the ride-sharing industry", "should_trigger": true },
5
+ { "query": "What macro trends could threaten our 3-year platform bet?", "should_trigger": true },
6
+ { "query": "Why are our margins compressing — analyze the competitive pressure", "should_trigger": true },
7
+ { "query": "I need a PESTLE analysis for the board offsite", "should_trigger": true },
8
+
9
+ { "query": "Compare Postgres vs DynamoDB for our new service", "should_trigger": false },
10
+ { "query": "Write a business case for acquiring this tooling vendor", "should_trigger": false },
11
+ { "query": "Write a PRFAQ for our new product idea", "should_trigger": false },
12
+ { "query": "Cascade our company OKRs down to the platform team", "should_trigger": false }
13
+ ]
@@ -0,0 +1,36 @@
1
+ {
2
+ "skill_name": "strategy-analysis",
3
+ "evals": [
4
+ {
5
+ "id": 1,
6
+ "prompt": "Run a SWOT on our product: a developer-tools startup with 4,000 paying tenants, strong CI/CD integration data, a small sales team, and a well-funded incumbent (CircleCI) moving into our niche. The decision this feeds: where to focus the next two quarters.",
7
+ "assertions": [
8
+ "SWOT is crossed into TOWS quadrants (S×O, S×T, W×O, W×T) — the four raw lists are not the final output",
9
+ "Every cell is specific (names a competitor, number, or capability), carries an evidence tag ([data]/[reported]/[assumption]), and has a 'so:' implication",
10
+ "No horoscope cells like 'strong team' or 'growing market' without specifics",
11
+ "Implications section is ranked (3-5 entries) and each is action-shaped, tied to the two-quarter focus decision",
12
+ "A verdict paragraph takes a side and names what evidence would change it",
13
+ "Assumptions appearing in top-ranked implications are flagged as validation targets",
14
+ "A hand-off to tech-comparison-matrix, business-case, or prfaq is offered where apt"
15
+ ]
16
+ },
17
+ {
18
+ "id": 2,
19
+ "prompt": "Give me a SWOT to decide whether we should enter the SMB payroll market in Germany.",
20
+ "assertions": [
21
+ "The skill flags that market-entry attractiveness is a Five Forces question and suggests it before or instead of SWOT",
22
+ "If Five Forces is run, all five forces get a pressure rating with the mechanism (who holds power and why) — no force rated 'N/A'",
23
+ "The output ends with a committal verdict on entering, not 'it depends'"
24
+ ]
25
+ },
26
+ {
27
+ "id": 3,
28
+ "prompt": "[Non-interactive run — no user available to answer questions] Run a Porter's Five Forces on the European ride-sharing market. This feeds our decision on whether to expand our driver-scheduling SaaS into that segment next year.",
29
+ "assertions": [
30
+ "The skill proceeds (the decision IS named in the input) instead of blocking",
31
+ "Assumptions replacing the capped clarifying questions (e.g. competitive set) are tagged [assumption] and stated at the top",
32
+ "Market facts drawn from general knowledge are tagged [market: ...], distinguishable from user-supplied facts and assumptions"
33
+ ]
34
+ }
35
+ ]
36
+ }
@@ -0,0 +1,42 @@
1
+ # Worked example — SWOT arriving as TOWS for a market-entry decision
2
+
3
+ Input → output oracle for `strategy-analysis`. Shows the framework justified in one
4
+ line, evidenced/consequential cells, the mandatory SWOT→TOWS crossings, ranked
5
+ action-shaped implications tied to the decision, and a verdict that takes a side.
6
+
7
+ ## Input
8
+
9
+ > "Should [Acme], a mid-market B2B analytics vendor, enter the SMB self-serve
10
+ > segment next year? Decision owner wants a go / no-go with conditions."
11
+
12
+ ## Framework fit (one line)
13
+
14
+ **SWOT→TOWS**, not Five Forces: the question is about *our* fit to a new segment (internal capabilities vs. external openings), not the structural attractiveness of the industry.
15
+
16
+ ## SWOT (every cell specific · evidenced · consequential)
17
+
18
+ | | Helpful | Harmful |
19
+ |---|---|---|
20
+ | **Internal** | **S1** Self-serve onboarding already built for mid-market trials (evidence: 40% of trials activate with zero sales touch) → *marginal cost to serve SMB is low.* | **W1** Pricing starts at $2k/mo (evidence: current floor plan) → *5–10× above SMB willingness-to-pay; no viable entry SKU.* |
21
+ | **External** | **O1** No incumbent owns SMB self-serve analytics in this niche (evidence: top 3 competitors are all sales-led, $10k+ ACV) → *an unserved segment with a wedge.* | **T1** Two horizontal BI tools added SMB free tiers this year (evidence: their changelogs) → *the window is closing; a free tier resets price expectations.* |
22
+
23
+ ## TOWS crossings (the strategy — inventory becomes moves)
24
+
25
+ - **S1 × O1 (invest):** Package the existing zero-touch onboarding as a low-price self-serve SKU to claim the unserved niche before it's contested.
26
+ - **W1 × T1 (defend/decide):** The $2k floor collides head-on with free tiers — a new SMB SKU is a *prerequisite*, not an option; without it, don't enter.
27
+ - **S1 × T1 (hedge):** Low cost-to-serve means an SMB tier can be near-free to run, so a defensive free/low tier is affordable if a competitor forces it.
28
+ - **W1 × O1 (fix-first):** The opportunity is real but unreachable until pricing is solved — so pricing is the gating workstream, not marketing.
29
+
30
+ ## Ranked implications (action-shaped, tied to the go/no-go)
31
+
32
+ 1. **Gate the decision on a validated SMB SKU** (target ≤ $99/mo, positive unit economics at self-serve volume). No SKU → no-go. *(from W1×T1, W1×O1)*
33
+ 2. **Run a 60-day self-serve pilot** on the existing onboarding to test activation without sales. *(S1×O1)*
34
+ 3. **Pre-commit a free-tier response** so a competitor's move doesn't catch us flat. *(S1×T1)*
35
+
36
+ ## Verdict (takes a side + what would change it)
37
+
38
+ **Conditional GO** — enter *only* after a sub-$100 SKU clears a unit-economics test in a 60-day pilot; the low cost-to-serve and the open niche make the upside real, but the pricing gap is disqualifying until fixed. **What flips it to no-go:** the pilot shows self-serve activation < 20% (the zero-touch advantage doesn't transfer), or a horizontal BI tool ships a *vertical* SMB tier first (the wedge closes).
39
+
40
+ ## Why this passes the quality bar
41
+
42
+ The framework choice is justified; every cell is specific, evidenced, and carries a "→ so what"; SWOT is delivered *as TOWS* with real crossings; implications are ranked and tied to the named decision; and the verdict commits with a falsifiable flip-condition instead of "it depends."
@@ -0,0 +1,15 @@
1
+ {
2
+ "name": "strategy-analysis",
3
+ "version": "0.1.1",
4
+ "description": "Run a strategy framework — SWOT/TOWS, Porter's Five Forces, or PESTLE — on a product, company, or market question, choosing the right framework for the question and forcing every cell to carry evidence and a so-what. Use when the user asks for a SWOT, a competitive/market analysis, \"should we enter this market\", \"what's our position against X\", or a macro-environment scan.",
5
+ "entrypoint": "SKILL.md",
6
+ "deps": { "npm": [], "pip": [] },
7
+ "env": { "required": [], "optional": [] },
8
+ "related": ["business-case", "okr-cascade", "prfaq", "tech-comparison-matrix"],
9
+ "handoff": [
10
+ { "to": "tech-comparison-matrix", "when": "the options are named and need comparing on stated criteria", "purpose": "Score the named options against weighted criteria.", "fallback": "If tech-comparison-matrix is absent, build a plain criteria-by-option table inline and state the weights." },
11
+ { "to": "business-case", "when": "the direction is chosen and needs costing before approval", "purpose": "Cost the chosen option against a do-nothing baseline.", "fallback": "If business-case is absent, state option 0 and the three cost layers (build, run, opportunity) inline." }
12
+ ],
13
+ "tags": ["strategy", "swot", "tows", "five-forces", "pestle", "competitive-analysis", "market-analysis"],
14
+ "model": { "tier": "heavy", "rationale": "Framework selection plus evidenced multi-factor judgment ending in a ranked, committal verdict. Cheaper models fill cells with generic filler, skip the TOWS crossings, and refuse to take a side. Never downgrade." }
15
+ }