@rfxlamia/skillkit 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (225) hide show
  1. package/README.md +16 -0
  2. package/agents/creative-copywriter.md +212 -0
  3. package/agents/dario-amodei.md +135 -0
  4. package/agents/doc-simplifier.md +63 -0
  5. package/agents/kotlin-pro.md +433 -0
  6. package/agents/red-team.md +136 -0
  7. package/agents/sam-altman.md +121 -0
  8. package/agents/seo-manager.md +184 -0
  9. package/bin/skillkit.js +3 -0
  10. package/package.json +35 -0
  11. package/skills/adversarial-review/SKILL.md +219 -0
  12. package/skills/baby-education/SKILL.md +260 -0
  13. package/skills/baby-education/references/advanced-techniques.md +323 -0
  14. package/skills/baby-education/references/transformations.md +345 -0
  15. package/skills/been-there-done-that/SKILL.md +455 -0
  16. package/skills/been-there-done-that/references/analysis-patterns.md +162 -0
  17. package/skills/been-there-done-that/references/git-commands.md +132 -0
  18. package/skills/been-there-done-that/references/tree-insertion-logic.md +145 -0
  19. package/skills/coolhunter/SKILL.md +270 -0
  20. package/skills/coolhunter/assets/elicitation-methods.csv +51 -0
  21. package/skills/coolhunter/knowledge/elicitation-methods.md +312 -0
  22. package/skills/coolhunter/references/workflow-execution.md +238 -0
  23. package/skills/coolhunter/workflow-plan-coolhunter.md +232 -0
  24. package/skills/creative-copywriting/SKILL.md +324 -0
  25. package/skills/creative-copywriting/databases/README.md +60 -0
  26. package/skills/creative-copywriting/databases/carousel-structures.csv +16 -0
  27. package/skills/creative-copywriting/databases/emotional-arcs.csv +11 -0
  28. package/skills/creative-copywriting/databases/hook-formulas.csv +51 -0
  29. package/skills/creative-copywriting/databases/power-words.csv +201 -0
  30. package/skills/creative-copywriting/databases/psychological-triggers.csv +21 -0
  31. package/skills/creative-copywriting/databases/read-more-patterns.csv +26 -0
  32. package/skills/creative-copywriting/databases/swipe-triggers.csv +31 -0
  33. package/skills/creative-copywriting/references/carousel-psychology.md +223 -0
  34. package/skills/creative-copywriting/references/hook-anatomy.md +169 -0
  35. package/skills/creative-copywriting/references/power-word-science.md +134 -0
  36. package/skills/creative-copywriting/references/storytelling-frameworks.md +157 -0
  37. package/skills/diverse-content-gen/SKILL.md +201 -0
  38. package/skills/diverse-content-gen/references/advanced-techniques.md +320 -0
  39. package/skills/diverse-content-gen/references/research-findings.md +379 -0
  40. package/skills/diverse-content-gen/references/task-workflows.md +241 -0
  41. package/skills/diverse-content-gen/references/tool-integration.md +419 -0
  42. package/skills/diverse-content-gen/references/troubleshooting.md +426 -0
  43. package/skills/diverse-content-gen/references/vs-core-technique.md +240 -0
  44. package/skills/framework-critical-thinking/SKILL.md +220 -0
  45. package/skills/framework-critical-thinking/references/bias_detector.md +375 -0
  46. package/skills/framework-critical-thinking/references/fallback_handler.md +239 -0
  47. package/skills/framework-critical-thinking/references/memory_curator.md +161 -0
  48. package/skills/framework-critical-thinking/references/metacognitive_monitor.md +297 -0
  49. package/skills/framework-critical-thinking/references/producer_critic_orchestrator.md +333 -0
  50. package/skills/framework-critical-thinking/references/reasoning_router.md +235 -0
  51. package/skills/framework-critical-thinking/references/reasoning_validator.md +97 -0
  52. package/skills/framework-critical-thinking/references/reflection_trigger.md +78 -0
  53. package/skills/framework-critical-thinking/references/self_verification.md +388 -0
  54. package/skills/framework-critical-thinking/references/uncertainty_quantifier.md +207 -0
  55. package/skills/framework-initiative/SKILL.md +231 -0
  56. package/skills/framework-initiative/references/examples.md +150 -0
  57. package/skills/framework-initiative/references/impact-analysis.md +157 -0
  58. package/skills/framework-initiative/references/intent-patterns.md +145 -0
  59. package/skills/framework-initiative/references/star-framework.md +165 -0
  60. package/skills/humanize-docs/SKILL.md +203 -0
  61. package/skills/humanize-docs/references/advanced-techniques.md +13 -0
  62. package/skills/humanize-docs/references/core-transformations.md +368 -0
  63. package/skills/humanize-docs/references/detection-patterns.md +400 -0
  64. package/skills/humanize-docs/references/examples-gallery.md +374 -0
  65. package/skills/imagine/SKILL.md +190 -0
  66. package/skills/imagine/references/artstyle-corporate-memphis.md +625 -0
  67. package/skills/imagine/references/artstyle-crewdson-hyperrealism.md +295 -0
  68. package/skills/imagine/references/artstyle-iphone-social-media.md +426 -0
  69. package/skills/imagine/references/artstyle-sciencesaru.md +276 -0
  70. package/skills/pre-deploy-checklist/README.md +26 -0
  71. package/skills/pre-deploy-checklist/SKILL.md +153 -0
  72. package/skills/pre-deploy-checklist/references/checklist-categories.md +174 -0
  73. package/skills/pre-deploy-checklist/references/domain-prompts.md +216 -0
  74. package/skills/prompt-engineering/SKILL.md +209 -0
  75. package/skills/prompt-engineering/references/advanced-combinations.md +444 -0
  76. package/skills/prompt-engineering/references/chain-of-thought.md +140 -0
  77. package/skills/prompt-engineering/references/decision_matrix.md +220 -0
  78. package/skills/prompt-engineering/references/few-shot.md +346 -0
  79. package/skills/prompt-engineering/references/json-format.md +270 -0
  80. package/skills/prompt-engineering/references/natural-language.md +420 -0
  81. package/skills/prompt-engineering/references/pitfalls.md +365 -0
  82. package/skills/prompt-engineering/references/prompt-chaining.md +498 -0
  83. package/skills/prompt-engineering/references/react.md +108 -0
  84. package/skills/prompt-engineering/references/self-consistency.md +322 -0
  85. package/skills/prompt-engineering/references/tree-of-thoughts.md +386 -0
  86. package/skills/prompt-engineering/references/xml-format.md +220 -0
  87. package/skills/prompt-engineering/references/yaml-format.md +488 -0
  88. package/skills/prompt-engineering/references/zero-shot.md +74 -0
  89. package/skills/quick-spec/SKILL.md +280 -0
  90. package/skills/quick-spec/assets/tech-spec-template.md +74 -0
  91. package/skills/quick-spec/references/step-01-understand.md +189 -0
  92. package/skills/quick-spec/references/step-02-investigate.md +144 -0
  93. package/skills/quick-spec/references/step-03-generate.md +128 -0
  94. package/skills/quick-spec/references/step-04-review.md +173 -0
  95. package/skills/quick-spec/tests/test_scenarios.md +83 -0
  96. package/skills/quick-spec/tests/test_skill.py +136 -0
  97. package/skills/readme-expert/SKILL.md +538 -0
  98. package/skills/readme-expert/knowledge/INDEX.md +192 -0
  99. package/skills/readme-expert/knowledge/application/quality-standards.md +470 -0
  100. package/skills/readme-expert/knowledge/application/script-executor.md +604 -0
  101. package/skills/readme-expert/knowledge/application/template-library.md +822 -0
  102. package/skills/readme-expert/knowledge/foundation/codebase-scanner.md +361 -0
  103. package/skills/readme-expert/knowledge/foundation/validation-checklist.md +481 -0
  104. package/skills/red-teaming/SKILL.md +321 -0
  105. package/skills/red-teaming/references/ai-llm-redteam.md +517 -0
  106. package/skills/red-teaming/references/attack-techniques.md +410 -0
  107. package/skills/red-teaming/references/cybersecurity-redteam.md +383 -0
  108. package/skills/red-teaming/references/tools-frameworks.md +446 -0
  109. package/skills/releasing/.skillkit-mode +1 -0
  110. package/skills/releasing/SKILL.md +225 -0
  111. package/skills/releasing/references/version-detection.md +108 -0
  112. package/skills/screenwriter/SKILL.md +273 -0
  113. package/skills/screenwriter/references/advanced-techniques.md +216 -0
  114. package/skills/screenwriter/references/pipeline-integration.md +266 -0
  115. package/skills/skillkit/.claude-plugin/plugin.json +27 -0
  116. package/skills/skillkit/CHANGELOG.md +484 -0
  117. package/skills/skillkit/SKILL.md +511 -0
  118. package/skills/skillkit/commands/skillkit.md +6 -0
  119. package/skills/skillkit/commands/validate-plan.md +6 -0
  120. package/skills/skillkit/commands/verify.md +6 -0
  121. package/skills/skillkit/knowledge/INDEX.md +352 -0
  122. package/skills/skillkit/knowledge/application/09-case-studies.md +257 -0
  123. package/skills/skillkit/knowledge/application/10-technical-architecture.md +324 -0
  124. package/skills/skillkit/knowledge/application/11-adoption-strategy.md +267 -0
  125. package/skills/skillkit/knowledge/application/12-testing-and-validation.md +276 -0
  126. package/skills/skillkit/knowledge/application/13-competitive-landscape.md +198 -0
  127. package/skills/skillkit/knowledge/foundation/01-why-skills-exist.md +246 -0
  128. package/skills/skillkit/knowledge/foundation/02-skills-vs-subagents-comparison.md +312 -0
  129. package/skills/skillkit/knowledge/foundation/03-skills-vs-subagents-decision-tree.md +346 -0
  130. package/skills/skillkit/knowledge/foundation/04-hybrid-patterns.md +308 -0
  131. package/skills/skillkit/knowledge/foundation/05-token-economics.md +275 -0
  132. package/skills/skillkit/knowledge/foundation/06-platform-constraints.md +237 -0
  133. package/skills/skillkit/knowledge/foundation/07-security-concerns.md +322 -0
  134. package/skills/skillkit/knowledge/foundation/08-when-not-to-use-skills.md +270 -0
  135. package/skills/skillkit/knowledge/plugin-guide.md +614 -0
  136. package/skills/skillkit/knowledge/tools/14-validation-tools-guide.md +150 -0
  137. package/skills/skillkit/knowledge/tools/15-cost-tools-guide.md +157 -0
  138. package/skills/skillkit/knowledge/tools/16-security-tools-guide.md +122 -0
  139. package/skills/skillkit/knowledge/tools/17-pattern-tools-guide.md +161 -0
  140. package/skills/skillkit/knowledge/tools/18-decision-helper-guide.md +243 -0
  141. package/skills/skillkit/knowledge/tools/19-test-generator-guide.md +275 -0
  142. package/skills/skillkit/knowledge/tools/20-split-skill-guide.md +149 -0
  143. package/skills/skillkit/knowledge/tools/21-quality-scorer-guide.md +226 -0
  144. package/skills/skillkit/knowledge/tools/22-migration-helper-guide.md +356 -0
  145. package/skills/skillkit/knowledge/tools/23-subagent-creation-guide.md +448 -0
  146. package/skills/skillkit/knowledge/tools/24-behavioral-testing-guide.md +122 -0
  147. package/skills/skillkit/references/proposal-generation.md +982 -0
  148. package/skills/skillkit/references/rationalization-catalog.md +75 -0
  149. package/skills/skillkit/references/research-methodology.md +661 -0
  150. package/skills/skillkit/references/section-2-full-creation-workflow.md +452 -0
  151. package/skills/skillkit/references/section-3-validation-workflow-existing-skill.md +63 -0
  152. package/skills/skillkit/references/section-4-decision-workflow-skills-vs-subagents.md +64 -0
  153. package/skills/skillkit/references/section-5-migration-workflow-doc-to-skill.md +58 -0
  154. package/skills/skillkit/references/section-6-subagent-creation-workflow.md +499 -0
  155. package/skills/skillkit/references/section-7-knowledge-reference-map.md +72 -0
  156. package/skills/skillkit/scripts/decision_helper.py +799 -0
  157. package/skills/skillkit/scripts/init_skill.py +400 -0
  158. package/skills/skillkit/scripts/init_subagent.py +231 -0
  159. package/skills/skillkit/scripts/migration_helper.py +669 -0
  160. package/skills/skillkit/scripts/package_skill.py +211 -0
  161. package/skills/skillkit/scripts/pattern_detector.py +381 -0
  162. package/skills/skillkit/scripts/pattern_detector_new.py +382 -0
  163. package/skills/skillkit/scripts/pressure_tester.py +157 -0
  164. package/skills/skillkit/scripts/quality_scorer.py +999 -0
  165. package/skills/skillkit/scripts/quick_validate.py +100 -0
  166. package/skills/skillkit/scripts/security_scanner.py +474 -0
  167. package/skills/skillkit/scripts/split_skill.py +540 -0
  168. package/skills/skillkit/scripts/test_generator.py +695 -0
  169. package/skills/skillkit/scripts/token_estimator.py +493 -0
  170. package/skills/skillkit/scripts/utils/__init__.py +49 -0
  171. package/skills/skillkit/scripts/utils/budget_tracker.py +388 -0
  172. package/skills/skillkit/scripts/utils/output_formatter.py +263 -0
  173. package/skills/skillkit/scripts/utils/reference_validator.py +401 -0
  174. package/skills/skillkit/scripts/validate_skill.py +594 -0
  175. package/skills/skillkit/tests/test_behavioral.py +39 -0
  176. package/skills/skillkit/tests/test_scenarios.md +83 -0
  177. package/skills/skillkit/tests/test_skill.py +136 -0
  178. package/skills/social-media-seo/SKILL.md +278 -0
  179. package/skills/social-media-seo/databases/caption-styles.csv +31 -0
  180. package/skills/social-media-seo/databases/engagement-tactics.csv +16 -0
  181. package/skills/social-media-seo/databases/hashtag-strategies.csv +21 -0
  182. package/skills/social-media-seo/databases/hook-formulas.csv +26 -0
  183. package/skills/social-media-seo/databases/keyword-clusters.csv +11 -0
  184. package/skills/social-media-seo/databases/thread-structures.csv +26 -0
  185. package/skills/social-media-seo/databases/viral-patterns.csv +21 -0
  186. package/skills/social-media-seo/references/analytics-guide.md +321 -0
  187. package/skills/social-media-seo/references/instagram-seo.md +235 -0
  188. package/skills/social-media-seo/references/threads-seo.md +305 -0
  189. package/skills/social-media-seo/references/x-twitter-seo.md +337 -0
  190. package/skills/social-media-seo/scripts/query_database.py +191 -0
  191. package/skills/storyteller/SKILL.md +241 -0
  192. package/skills/storyteller/references/transformation-methodology.md +293 -0
  193. package/skills/storyteller/references/visual-vocabulary.md +177 -0
  194. package/skills/thread-pro/SKILL.md +162 -0
  195. package/skills/thread-pro/anti-ai-patterns.md +120 -0
  196. package/skills/thread-pro/hook-formulas.md +138 -0
  197. package/skills/thread-pro/references/anti-ai-patterns.md +120 -0
  198. package/skills/thread-pro/references/hook-formulas.md +138 -0
  199. package/skills/thread-pro/references/thread-structures.md +240 -0
  200. package/skills/thread-pro/references/voice-injection.md +130 -0
  201. package/skills/thread-pro/thread-structures.md +240 -0
  202. package/skills/thread-pro/voice-injection.md +130 -0
  203. package/skills/tinkering/SKILL.md +251 -0
  204. package/skills/tinkering/references/graduation-checklist.md +100 -0
  205. package/skills/validate-plan/.skillkit-mode +1 -0
  206. package/skills/validate-plan/SKILL.md +406 -0
  207. package/skills/validate-plan/references/dry-principles.md +251 -0
  208. package/skills/validate-plan/references/gap-analysis-guide.md +320 -0
  209. package/skills/validate-plan/references/tdd-patterns.md +413 -0
  210. package/skills/validate-plan/references/yagni-checklist.md +330 -0
  211. package/skills/verify-before-ship/.skillkit-mode +1 -0
  212. package/skills/verify-before-ship/SKILL.md +116 -0
  213. package/skills/verify-before-ship/references/anti-rationalization.md +212 -0
  214. package/skills/verify-before-ship/references/verification-gates.md +305 -0
  215. package/skills-manifest.json +217 -0
  216. package/src/banner.js +10 -0
  217. package/src/cli.js +30 -0
  218. package/src/install.js +53 -0
  219. package/src/install.test.js +40 -0
  220. package/src/picker.js +74 -0
  221. package/src/picker.test.js +21 -0
  222. package/src/scope.js +57 -0
  223. package/src/scope.test.js +19 -0
  224. package/src/update.js +34 -0
  225. package/src/update.test.js +24 -0
@@ -0,0 +1,144 @@
1
+ ---
2
+ name: 'step-02-investigate'
3
+ description: 'Map technical constraints and anchor points within the codebase'
4
+
5
+ workflow_path: '{project-root}/_bmad/bmm/workflows/bmad-quick-flow/create-tech-spec'
6
+ nextStepFile: './step-03-generate.md'
7
+ wipFile: '{implementation_artifacts}/tech-spec-wip.md'
8
+ ---
9
+
10
+ # Step 2: Map Technical Constraints & Anchor Points
11
+
12
+ **Progress: Step 2 of 4** - Next: Generate Plan
13
+
14
+ ## RULES:
15
+
16
+ - MUST NOT skip steps.
17
+ - MUST NOT optimize sequence.
18
+ - MUST follow exact instructions.
19
+ - MUST NOT generate the full spec yet (that's Step 3).
20
+ - ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
21
+
22
+ ## CONTEXT:
23
+
24
+ - Requires `{wipFile}` from Step 1 with the "Problem Statement" defined.
25
+ - Focus: Map the problem statement to specific anchor points in the codebase.
26
+ - Output: Exact files to touch, classes/patterns to extend, and technical constraints identified.
27
+ - Objective: Provide the implementation-ready ground truth for the plan.
28
+
29
+ ## SEQUENCE OF INSTRUCTIONS
30
+
31
+ ### 1. Load Current State
32
+
33
+ **Read `{wipFile}` and extract:**
34
+
35
+ - Problem statement and scope from Overview section
36
+ - Any context gathered in Step 1
37
+
38
+ ### 2. Execute Investigation Path
39
+
40
+ **Universal Code Investigation:**
41
+
42
+ _Isolate deep exploration in sub-agents/tasks where available. Return distilled summaries only to prevent context snowballing._
43
+
44
+ a) **Build on Step 1's Quick Scan**
45
+
46
+ Review what was found in Step 1's orient scan. Then ask:
47
+
48
+ "Based on my quick look, I see [files/patterns found]. Are there other files or directories I should investigate deeply?"
49
+
50
+ b) **Read and Analyze Code**
51
+
52
+ For each file/directory provided:
53
+
54
+ - Read the complete file(s)
55
+ - Identify patterns, conventions, coding style
56
+ - Note dependencies and imports
57
+ - Find related test files
58
+
59
+ **If NO relevant code is found (Clean Slate):**
60
+
61
+ - Identify the target directory where the feature should live.
62
+ - Scan parent directories for architectural context.
63
+ - Identify standard project utilities or boilerplate that SHOULD be used.
64
+ - Document this as "Confirmed Clean Slate" - establishing that no legacy constraints exist.
65
+
66
+
67
+ c) **Document Technical Context**
68
+
69
+ Capture and confirm with user:
70
+
71
+ - **Tech Stack**: Languages, frameworks, libraries
72
+ - **Code Patterns**: Architecture patterns, naming conventions, file structure
73
+ - **Files to Modify/Create**: Specific files that will need changes or new files to be created
74
+ - **Test Patterns**: How tests are structured, test frameworks used
75
+
76
+ d) **Look for project-context.md**
77
+
78
+ If `**/project-context.md` exists and wasn't loaded in Step 1:
79
+
80
+ - Load it now
81
+ - Extract patterns and conventions
82
+ - Note any rules that must be followed
83
+
84
+ ### 3. Update WIP File
85
+
86
+ **Update `{wipFile}` frontmatter:**
87
+
88
+ ```yaml
89
+ ---
90
+ # ... existing frontmatter ...
91
+ stepsCompleted: [1, 2]
92
+ tech_stack: ['{captured_tech_stack}']
93
+ files_to_modify: ['{captured_files}']
94
+ code_patterns: ['{captured_patterns}']
95
+ test_patterns: ['{captured_test_patterns}']
96
+ ---
97
+ ```
98
+
99
+ **Update the Context for Development section:**
100
+
101
+ Fill in:
102
+
103
+ - Codebase Patterns (from investigation)
104
+ - Files to Reference table (files reviewed)
105
+ - Technical Decisions (any decisions made during investigation)
106
+
107
+ **Report to user:**
108
+
109
+ "**Context Gathered:**
110
+
111
+ - Tech Stack: {tech_stack_summary}
112
+ - Files to Modify: {files_count} files identified
113
+ - Patterns: {patterns_summary}
114
+ - Tests: {test_patterns_summary}"
115
+
116
+ ### 4. Present Checkpoint Menu
117
+
118
+ **Display menu:**
119
+
120
+ ```
121
+ [a] Advanced Elicitation - explore more context
122
+ [c] Continue - proceed to Generate Spec
123
+ [p] Party Mode - bring in other experts
124
+ ```
125
+
126
+ **HALT and wait for user selection.**
127
+
128
+ #### Menu Handling:
129
+
130
+ - **[a]**: Load and execute `{advanced_elicitation}`, then return here and redisplay menu
131
+ - **[c]**: Verify frontmatter updated with `stepsCompleted: [1, 2]`, then load and execute `{nextStepFile}`
132
+ - **[p]**: Load and execute `{party_mode_exec}`, then return here and redisplay menu
133
+
134
+ ---
135
+
136
+ ## REQUIRED OUTPUTS:
137
+
138
+ - MUST document technical context (stack, patterns, files identified).
139
+ - MUST update `{wipFile}` with functional context.
140
+
141
+ ## VERIFICATION CHECKLIST:
142
+
143
+ - [ ] Technical mapping performed and documented.
144
+ - [ ] `stepsCompleted: [1, 2]` set in frontmatter.
@@ -0,0 +1,128 @@
1
+ ---
2
+ name: 'step-03-generate'
3
+ description: 'Build the implementation plan based on the technical mapping of constraints'
4
+
5
+ workflow_path: '{project-root}/_bmad/bmm/workflows/bmad-quick-flow/create-tech-spec'
6
+ nextStepFile: './step-04-review.md'
7
+ wipFile: '{implementation_artifacts}/tech-spec-wip.md'
8
+ ---
9
+
10
+ # Step 3: Generate Implementation Plan
11
+
12
+ **Progress: Step 3 of 4** - Next: Review & Finalize
13
+
14
+ ## RULES:
15
+
16
+ - MUST NOT skip steps.
17
+ - MUST NOT optimize sequence.
18
+ - MUST follow exact instructions.
19
+ - MUST NOT implement anything - just document.
20
+ - ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
21
+
22
+ ## CONTEXT:
23
+
24
+ - Requires `{wipFile}` with defined "Overview" and "Context for Development" sections.
25
+ - Focus: Create the implementation sequence that addresses the requirement delta using the captured technical context.
26
+ - Output: Implementation-ready tasks with specific files and instructions.
27
+ - Target: Meet the **READY FOR DEVELOPMENT** standard defined in `workflow.md`.
28
+
29
+ ## SEQUENCE OF INSTRUCTIONS
30
+
31
+ ### 1. Load Current State
32
+
33
+ **Read `{wipFile}` completely and extract:**
34
+
35
+ - All frontmatter values
36
+ - Overview section (Problem, Solution, Scope)
37
+ - Context for Development section (Patterns, Files, Decisions)
38
+
39
+ ### 2. Generate Implementation Plan
40
+
41
+ Generate specific implementation tasks:
42
+
43
+ a) **Task Breakdown**
44
+
45
+ - Each task should be a discrete, completable unit of work
46
+ - Tasks should be ordered logically (dependencies first)
47
+ - Include the specific files to modify in each task
48
+ - Be explicit about what changes to make
49
+
50
+ b) **Task Format**
51
+
52
+ ```markdown
53
+ - [ ] Task N: Clear action description
54
+ - File: `path/to/file.ext`
55
+ - Action: Specific change to make
56
+ - Notes: Any implementation details
57
+ ```
58
+
59
+ ### 3. Generate Acceptance Criteria
60
+
61
+ **Create testable acceptance criteria:**
62
+
63
+ Each AC should follow Given/When/Then format:
64
+
65
+ ```markdown
66
+ - [ ] AC N: Given [precondition], when [action], then [expected result]
67
+ ```
68
+
69
+ **Ensure ACs cover:**
70
+
71
+ - Happy path functionality
72
+ - Error handling
73
+ - Edge cases (if relevant)
74
+ - Integration points (if relevant)
75
+
76
+ ### 4. Complete Additional Context
77
+
78
+ **Fill in remaining sections:**
79
+
80
+ a) **Dependencies**
81
+
82
+ - External libraries or services needed
83
+ - Other tasks or features this depends on
84
+ - API or data dependencies
85
+
86
+ b) **Testing Strategy**
87
+
88
+ - Unit tests needed
89
+ - Integration tests needed
90
+ - Manual testing steps
91
+
92
+ c) **Notes**
93
+
94
+ - High-risk items from pre-mortem analysis
95
+ - Known limitations
96
+ - Future considerations (out of scope but worth noting)
97
+
98
+ ### 5. Write Complete Spec
99
+
100
+ a) **Update `{wipFile}` with all generated content:**
101
+
102
+ - Ensure all template sections are filled in
103
+ - No placeholder text remaining
104
+ - All frontmatter values current
105
+ - Update status to 'review' (NOT 'ready-for-dev' - that happens after user review in Step 4)
106
+
107
+ b) **Update frontmatter:**
108
+
109
+ ```yaml
110
+ ---
111
+ # ... existing values ...
112
+ status: 'review'
113
+ stepsCompleted: [1, 2, 3]
114
+ ---
115
+ ```
116
+
117
+ c) **Load and execute `{nextStepFile}` (Step 4)**
118
+
119
+ ## REQUIRED OUTPUTS:
120
+
121
+ - Tasks MUST be specific, actionable, ordered logically, with files to modify.
122
+ - ACs MUST be testable, using Given/When/Then format.
123
+ - Status MUST be updated to 'review'.
124
+
125
+ ## VERIFICATION CHECKLIST:
126
+
127
+ - [ ] `stepsCompleted: [1, 2, 3]` set in frontmatter.
128
+ - [ ] Spec meets the **READY FOR DEVELOPMENT** standard.
@@ -0,0 +1,173 @@
1
+ ---
2
+ name: 'step-04-review'
3
+ description: 'Review and finalize the tech-spec'
4
+
5
+ workflow_path: '{project-root}/_bmad/bmm/workflows/bmad-quick-flow/quick-spec'
6
+ wipFile: '{implementation_artifacts}/tech-spec-wip.md'
7
+ ---
8
+
9
+ # Step 4: Review & Finalize
10
+
11
+ **Progress: Step 4 of 4** - Final Step
12
+
13
+ ## RULES:
14
+
15
+ - MUST NOT skip steps.
16
+ - MUST NOT optimize sequence.
17
+ - MUST follow exact instructions.
18
+ - ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
19
+
20
+ ## CONTEXT:
21
+
22
+ - Requires `{wipFile}` from Step 3.
23
+ - MUST present COMPLETE spec content. Iterate until user is satisfied.
24
+ - **Criteria**: The spec MUST meet the **READY FOR DEVELOPMENT** standard defined in `workflow.md`.
25
+
26
+ ## SEQUENCE OF INSTRUCTIONS
27
+
28
+ ### 1. Load and Present Complete Spec
29
+
30
+ **Read `{wipFile}` completely and extract `slug` from frontmatter for later use.**
31
+
32
+ **Present to user:**
33
+
34
+ "Here's your complete tech-spec. Please review:"
35
+
36
+ [Display the complete spec content - all sections]
37
+
38
+ "**Quick Summary:**
39
+
40
+ - {task_count} tasks to implement
41
+ - {ac_count} acceptance criteria to verify
42
+ - {files_count} files to modify
43
+
44
+ Does this capture your intent? Any changes needed?"
45
+
46
+ ### 2. Handle Review Feedback
47
+
48
+ a) **If user requests changes:**
49
+
50
+ - Make the requested edits to `{wipFile}`
51
+ - Re-present the affected sections
52
+ - Ask if there are more changes
53
+ - Loop until user is satisfied
54
+
55
+ b) **If the spec does NOT meet the "Ready for Development" standard:**
56
+
57
+ - Point out the missing/weak sections (e.g., non-actionable tasks, missing ACs).
58
+ - Propose specific improvements to reach the standard.
59
+ - Make the edits once the user agrees.
60
+
61
+ c) **If user has questions:**
62
+
63
+ - Answer questions about the spec
64
+ - Clarify any confusing sections
65
+ - Make clarifying edits if needed
66
+
67
+ ### 3. Finalize the Spec
68
+
69
+ **When user confirms the spec is good AND it meets the "Ready for Development" standard:**
70
+
71
+ a) Update `{wipFile}` frontmatter:
72
+
73
+ ```yaml
74
+ ---
75
+ # ... existing values ...
76
+ status: 'ready-for-dev'
77
+ stepsCompleted: [1, 2, 3, 4]
78
+ ---
79
+ ```
80
+
81
+ b) **Rename WIP file to final filename:**
82
+ - Using the `slug` extracted in Section 1
83
+ - Rename `{wipFile}` → `{implementation_artifacts}/tech-spec-{slug}.md`
84
+ - Store this as `finalFile` for use in menus below
85
+
86
+ ### 4. Present Final Menu
87
+
88
+ a) **Display completion message and menu:**
89
+
90
+ ```
91
+ **Tech-Spec Complete!**
92
+
93
+ Saved to: {finalFile}
94
+
95
+ ---
96
+
97
+ **Next Steps:**
98
+
99
+ [a] Advanced Elicitation - refine further
100
+ [r] Adversarial Review - critique of the spec (highly recommended)
101
+ [b] Begin Development - start implementing now (not recommended)
102
+ [d] Done - exit workflow
103
+ [p] Party Mode - get expert feedback before dev
104
+
105
+ ---
106
+
107
+ Once you are fully satisfied with the spec (ideally after **Adversarial Review** and maybe a few rounds of **Advanced Elicitation**), it is recommended to run implementation in a FRESH CONTEXT for best results.
108
+
109
+ Copy this prompt to start dev:
110
+
111
+ \`\`\`
112
+ quick-dev {finalFile}
113
+ \`\`\`
114
+
115
+ This ensures the dev agent has clean context focused solely on implementation.
116
+ ```
117
+
118
+ b) **HALT and wait for user selection.**
119
+
120
+ #### Menu Handling:
121
+
122
+ - **[a]**: Load and execute `{advanced_elicitation}`, then return here and redisplay menu
123
+ - **[b]**: Load and execute `{quick_dev_workflow}` with the final spec file (warn: fresh context is better)
124
+ - **[d]**: Exit workflow - display final confirmation and path to spec
125
+ - **[p]**: Load and execute `{party_mode_exec}`, then return here and redisplay menu
126
+ - **[r]**: Execute Adversarial Review:
127
+ 1. **Invoke Adversarial Review Task**:
128
+ > With `{finalFile}` constructed, invoke the review task. If possible, use information asymmetry: run this task, and only it, in a separate subagent or process with read access to the project, but no context except the `{finalFile}`.
129
+ <invoke-task>Review {finalFile} using {project-root}/_bmad/core/tasks/review-adversarial-general.xml</invoke-task>
130
+ > **Platform fallback:** If task invocation not available, load the task file and execute its instructions inline, passing `{finalFile}` as the content.
131
+ > The task should: review `{finalFile}` and return a list of findings.
132
+
133
+ 2. **Process Findings**:
134
+ > Capture the findings from the task output.
135
+ > **If zero findings:** HALT - this is suspicious. Re-analyze or request user guidance.
136
+ > Evaluate severity (Critical, High, Medium, Low) and validity (real, noise, undecided).
137
+ > DO NOT exclude findings based on severity or validity unless explicitly asked to do so.
138
+ > Order findings by severity.
139
+ > Number the ordered findings (F1, F2, F3, etc.).
140
+ > If TodoWrite or similar tool is available, turn each finding into a TODO, include ID, severity, validity, and description in the TODO; otherwise present findings as a table with columns: ID, Severity, Validity, Description
141
+
142
+ 3. Return here and redisplay menu.
143
+
144
+ ### 5. Exit Workflow
145
+
146
+ **When user selects [d]:**
147
+
148
+ "**All done!** Your tech-spec is ready at:
149
+
150
+ `{finalFile}`
151
+
152
+ When you're ready to implement, run:
153
+
154
+ ```
155
+ quick-dev {finalFile}
156
+ ```
157
+
158
+ Ship it!"
159
+
160
+ ---
161
+
162
+ ## REQUIRED OUTPUTS:
163
+
164
+ - MUST update status to 'ready-for-dev'.
165
+ - MUST rename file to `tech-spec-{slug}.md`.
166
+ - MUST provide clear next-step guidance and recommend fresh context for dev.
167
+
168
+ ## VERIFICATION CHECKLIST:
169
+
170
+ - [ ] Complete spec presented for review.
171
+ - [ ] Requested changes implemented.
172
+ - [ ] Spec verified against **READY FOR DEVELOPMENT** standard.
173
+ - [ ] `stepsCompleted: [1, 2, 3, 4]` set and file renamed.
@@ -0,0 +1,83 @@
1
+ # Test Scenarios: quick-spec
2
+
3
+ **Generated:** Auto-generated from SKILL.md
4
+ **Coverage:** standard
5
+
6
+
7
+ ## P0 Tests (11)
8
+
9
+ ### Test basic skill invocation
10
+ - **Category:** functional
11
+ - **Expected:** Skill loads and responds to trigger
12
+ - **Test Data:** minimal_valid
13
+
14
+ ### Test user needs to plan a feature, create tech-spec, or prepare implementation-ready documentation. Trigg
15
+ - **Category:** functional
16
+ - **Expected:** Skill successfully handles: user needs to plan a feature, create tech-spec, or prepare implementation-ready documentation. Trigg
17
+ - **Test Data:** valid_input
18
+
19
+ ### Test user describes a feature to build without clear implementation plan.
20
+ - **Category:** functional
21
+ - **Expected:** Skill successfully handles: user describes a feature to build without clear implementation plan.
22
+ - **Test Data:** valid_input
23
+
24
+ ### Test Development" standard:**
25
+ - **Category:** functional
26
+ - **Expected:** Skill successfully handles: Development" standard:**
27
+ - **Test Data:** valid_input
28
+
29
+ ### Test disciplined execution:
30
+ - **Category:** functional
31
+ - **Expected:** Skill successfully handles: disciplined execution:
32
+ - **Test Data:** valid_input
33
+
34
+ ### Test INPUT**: If a menu is presented, halt and wait for user selection
35
+ - **Category:** functional
36
+ - **Expected:** Skill successfully handles: INPUT**: If a menu is presented, halt and wait for user selection
37
+ - **Test Data:** valid_input
38
+
39
+ ### Test user selects [c] (Continue)
40
+ - **Category:** functional
41
+ - **Expected:** Skill successfully handles: user selects [c] (Continue)
42
+ - **Test Data:** valid_input
43
+
44
+ ### Test directed, load and read entire next step file, then execute
45
+ - **Category:** functional
46
+ - **Expected:** Skill successfully handles: directed, load and read entire next step file, then execute
47
+ - **Test Data:** valid_input
48
+
49
+ ### Test Work in Progress** - Look for existing tech-spec-wip.md
50
+ - **Category:** functional
51
+ - **Expected:** Skill successfully handles: Work in Progress** - Look for existing tech-spec-wip.md
52
+ - **Test Data:** valid_input
53
+
54
+ ### Test Initial Request** - Get user's feature description
55
+ - **Category:** functional
56
+ - **Expected:** Skill successfully handles: Initial Request** - Get user's feature description
57
+ - **Test Data:** valid_input
58
+
59
+ ### Test Development" standard is met
60
+ - **Category:** functional
61
+ - **Expected:** Skill successfully handles: Development" standard is met
62
+ - **Test Data:** valid_input
63
+
64
+
65
+ ## P1 Tests (2)
66
+
67
+ ### Test with minimal input
68
+ - **Category:** edge_case
69
+ - **Expected:** Graceful handling of minimal valid input
70
+ - **Test Data:** minimal
71
+
72
+ ### Test with maximum/complex input
73
+ - **Category:** edge_case
74
+ - **Expected:** Proper handling of complex scenarios
75
+ - **Test Data:** complex
76
+
77
+
78
+ ## Setup
79
+
80
+ 1. Install dependencies: `pip install pytest` (or unittest)
81
+ 2. Review test scenarios above
82
+ 3. Implement test logic in test files
83
+ 4. Run tests: `pytest tests/`
@@ -0,0 +1,136 @@
1
+ """
2
+ Pytest tests for quick-spec
3
+ Auto-generated - customize as needed
4
+ """
5
+
6
+ import pytest
7
+
8
+ def test_test_basic_skill_invocation():
9
+ """
10
+ Test basic skill invocation
11
+ Priority: P0
12
+ Expected: Skill loads and responds to trigger
13
+ """
14
+ # TODO: Implement test logic
15
+ # Test data: minimal_valid
16
+ assert True, 'Test not implemented yet'
17
+
18
+ def test_test_user_needs_to_plan_a_feature_create_techspec():
19
+ """
20
+ Test user needs to plan a feature, create tech-spec, or prepare implementation-ready documentation. Trigg
21
+ Priority: P0
22
+ Expected: Skill successfully handles: user needs to plan a feature, create tech-spec, or prepare implementation-ready documentation. Trigg
23
+ """
24
+ # TODO: Implement test logic
25
+ # Test data: valid_input
26
+ assert True, 'Test not implemented yet'
27
+
28
+ def test_test_user_describes_a_feature_to_build_without_cle():
29
+ """
30
+ Test user describes a feature to build without clear implementation plan.
31
+ Priority: P0
32
+ Expected: Skill successfully handles: user describes a feature to build without clear implementation plan.
33
+ """
34
+ # TODO: Implement test logic
35
+ # Test data: valid_input
36
+ assert True, 'Test not implemented yet'
37
+
38
+ def test_test_development_standard():
39
+ """
40
+ Test Development" standard:**
41
+ Priority: P0
42
+ Expected: Skill successfully handles: Development" standard:**
43
+ """
44
+ # TODO: Implement test logic
45
+ # Test data: valid_input
46
+ assert True, 'Test not implemented yet'
47
+
48
+ def test_test_disciplined_execution():
49
+ """
50
+ Test disciplined execution:
51
+ Priority: P0
52
+ Expected: Skill successfully handles: disciplined execution:
53
+ """
54
+ # TODO: Implement test logic
55
+ # Test data: valid_input
56
+ assert True, 'Test not implemented yet'
57
+
58
+ def test_test_input_if_a_menu_is_presented_halt_and_wait_fo():
59
+ """
60
+ Test INPUT**: If a menu is presented, halt and wait for user selection
61
+ Priority: P0
62
+ Expected: Skill successfully handles: INPUT**: If a menu is presented, halt and wait for user selection
63
+ """
64
+ # TODO: Implement test logic
65
+ # Test data: valid_input
66
+ assert True, 'Test not implemented yet'
67
+
68
+ def test_test_user_selects_c_continue():
69
+ """
70
+ Test user selects [c] (Continue)
71
+ Priority: P0
72
+ Expected: Skill successfully handles: user selects [c] (Continue)
73
+ """
74
+ # TODO: Implement test logic
75
+ # Test data: valid_input
76
+ assert True, 'Test not implemented yet'
77
+
78
+ def test_test_directed_load_and_read_entire_next_step_file():
79
+ """
80
+ Test directed, load and read entire next step file, then execute
81
+ Priority: P0
82
+ Expected: Skill successfully handles: directed, load and read entire next step file, then execute
83
+ """
84
+ # TODO: Implement test logic
85
+ # Test data: valid_input
86
+ assert True, 'Test not implemented yet'
87
+
88
+ def test_test_work_in_progress_look_for_existing_techspecwi():
89
+ """
90
+ Test Work in Progress** - Look for existing tech-spec-wip.md
91
+ Priority: P0
92
+ Expected: Skill successfully handles: Work in Progress** - Look for existing tech-spec-wip.md
93
+ """
94
+ # TODO: Implement test logic
95
+ # Test data: valid_input
96
+ assert True, 'Test not implemented yet'
97
+
98
+ def test_test_initial_request_get_users_feature_description():
99
+ """
100
+ Test Initial Request** - Get user's feature description
101
+ Priority: P0
102
+ Expected: Skill successfully handles: Initial Request** - Get user's feature description
103
+ """
104
+ # TODO: Implement test logic
105
+ # Test data: valid_input
106
+ assert True, 'Test not implemented yet'
107
+
108
+ def test_test_development_standard_is_met():
109
+ """
110
+ Test Development" standard is met
111
+ Priority: P0
112
+ Expected: Skill successfully handles: Development" standard is met
113
+ """
114
+ # TODO: Implement test logic
115
+ # Test data: valid_input
116
+ assert True, 'Test not implemented yet'
117
+
118
+ def test_test_with_minimal_input():
119
+ """
120
+ Test with minimal input
121
+ Priority: P1
122
+ Expected: Graceful handling of minimal valid input
123
+ """
124
+ # TODO: Implement test logic
125
+ # Test data: minimal
126
+ assert True, 'Test not implemented yet'
127
+
128
+ def test_test_with_maximumcomplex_input():
129
+ """
130
+ Test with maximum/complex input
131
+ Priority: P1
132
+ Expected: Proper handling of complex scenarios
133
+ """
134
+ # TODO: Implement test logic
135
+ # Test data: complex
136
+ assert True, 'Test not implemented yet'