@rfxlamia/skillkit 1.1.0 → 1.2.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 (247) hide show
  1. package/agents/agents/creative-copywriter.md +212 -0
  2. package/agents/agents/dario-amodei.md +135 -0
  3. package/agents/agents/doc-simplifier.md +63 -0
  4. package/agents/agents/kotlin-pro.md +433 -0
  5. package/agents/agents/red-team.md +136 -0
  6. package/agents/agents/sam-altman.md +121 -0
  7. package/agents/agents/seo-manager.md +184 -0
  8. package/package.json +1 -1
  9. package/skills/skillkit-help/SKILL.md +81 -0
  10. package/skills/skillkit-help/knowledge/application/09-case-studies.md +257 -0
  11. package/skills/skillkit-help/knowledge/application/12-testing-and-validation.md +276 -0
  12. package/skills/skillkit-help/knowledge/foundation/01-why-skills-exist.md +246 -0
  13. package/skills/skillkit-help/knowledge/foundation/02-skills-vs-subagents-comparison.md +312 -0
  14. package/skills/skillkit-help/knowledge/foundation/03-skills-vs-subagents-decision-tree.md +346 -0
  15. package/skills/skillkit-help/knowledge/foundation/06-platform-constraints.md +237 -0
  16. package/skills/skillkit-help/knowledge/foundation/08-when-not-to-use-skills.md +270 -0
  17. package/skills/skillkit-help/template/SKILL.md +52 -0
  18. package/skills/skills/adversarial-review/SKILL.md +219 -0
  19. package/skills/skills/baby-education/SKILL.md +260 -0
  20. package/skills/skills/baby-education/references/advanced-techniques.md +323 -0
  21. package/skills/skills/baby-education/references/transformations.md +345 -0
  22. package/skills/skills/been-there-done-that/SKILL.md +455 -0
  23. package/skills/skills/been-there-done-that/references/analysis-patterns.md +162 -0
  24. package/skills/skills/been-there-done-that/references/git-commands.md +132 -0
  25. package/skills/skills/been-there-done-that/references/tree-insertion-logic.md +145 -0
  26. package/skills/skills/coolhunter/SKILL.md +270 -0
  27. package/skills/skills/coolhunter/assets/elicitation-methods.csv +51 -0
  28. package/skills/skills/coolhunter/knowledge/elicitation-methods.md +312 -0
  29. package/skills/skills/coolhunter/references/workflow-execution.md +238 -0
  30. package/skills/skills/coolhunter/workflow-plan-coolhunter.md +232 -0
  31. package/skills/skills/creative-copywriting/SKILL.md +324 -0
  32. package/skills/skills/creative-copywriting/databases/README.md +60 -0
  33. package/skills/skills/creative-copywriting/databases/carousel-structures.csv +16 -0
  34. package/skills/skills/creative-copywriting/databases/emotional-arcs.csv +11 -0
  35. package/skills/skills/creative-copywriting/databases/hook-formulas.csv +51 -0
  36. package/skills/skills/creative-copywriting/databases/power-words.csv +201 -0
  37. package/skills/skills/creative-copywriting/databases/psychological-triggers.csv +21 -0
  38. package/skills/skills/creative-copywriting/databases/read-more-patterns.csv +26 -0
  39. package/skills/skills/creative-copywriting/databases/swipe-triggers.csv +31 -0
  40. package/skills/skills/creative-copywriting/references/carousel-psychology.md +223 -0
  41. package/skills/skills/creative-copywriting/references/hook-anatomy.md +169 -0
  42. package/skills/skills/creative-copywriting/references/power-word-science.md +134 -0
  43. package/skills/skills/creative-copywriting/references/storytelling-frameworks.md +157 -0
  44. package/skills/skills/diverse-content-gen/SKILL.md +201 -0
  45. package/skills/skills/diverse-content-gen/references/advanced-techniques.md +320 -0
  46. package/skills/skills/diverse-content-gen/references/research-findings.md +379 -0
  47. package/skills/skills/diverse-content-gen/references/task-workflows.md +241 -0
  48. package/skills/skills/diverse-content-gen/references/tool-integration.md +419 -0
  49. package/skills/skills/diverse-content-gen/references/troubleshooting.md +426 -0
  50. package/skills/skills/diverse-content-gen/references/vs-core-technique.md +240 -0
  51. package/skills/skills/framework-critical-thinking/SKILL.md +220 -0
  52. package/skills/skills/framework-critical-thinking/references/bias_detector.md +375 -0
  53. package/skills/skills/framework-critical-thinking/references/fallback_handler.md +239 -0
  54. package/skills/skills/framework-critical-thinking/references/memory_curator.md +161 -0
  55. package/skills/skills/framework-critical-thinking/references/metacognitive_monitor.md +297 -0
  56. package/skills/skills/framework-critical-thinking/references/producer_critic_orchestrator.md +333 -0
  57. package/skills/skills/framework-critical-thinking/references/reasoning_router.md +235 -0
  58. package/skills/skills/framework-critical-thinking/references/reasoning_validator.md +97 -0
  59. package/skills/skills/framework-critical-thinking/references/reflection_trigger.md +78 -0
  60. package/skills/skills/framework-critical-thinking/references/self_verification.md +388 -0
  61. package/skills/skills/framework-critical-thinking/references/uncertainty_quantifier.md +207 -0
  62. package/skills/skills/framework-initiative/SKILL.md +231 -0
  63. package/skills/skills/framework-initiative/references/examples.md +150 -0
  64. package/skills/skills/framework-initiative/references/impact-analysis.md +157 -0
  65. package/skills/skills/framework-initiative/references/intent-patterns.md +145 -0
  66. package/skills/skills/framework-initiative/references/star-framework.md +165 -0
  67. package/skills/skills/humanize-docs/SKILL.md +203 -0
  68. package/skills/skills/humanize-docs/references/advanced-techniques.md +13 -0
  69. package/skills/skills/humanize-docs/references/core-transformations.md +368 -0
  70. package/skills/skills/humanize-docs/references/detection-patterns.md +400 -0
  71. package/skills/skills/humanize-docs/references/examples-gallery.md +374 -0
  72. package/skills/skills/imagine/SKILL.md +190 -0
  73. package/skills/skills/imagine/references/artstyle-corporate-memphis.md +625 -0
  74. package/skills/skills/imagine/references/artstyle-crewdson-hyperrealism.md +295 -0
  75. package/skills/skills/imagine/references/artstyle-iphone-social-media.md +426 -0
  76. package/skills/skills/imagine/references/artstyle-sciencesaru.md +276 -0
  77. package/skills/skills/pre-deploy-checklist/README.md +26 -0
  78. package/skills/skills/pre-deploy-checklist/SKILL.md +153 -0
  79. package/skills/skills/pre-deploy-checklist/references/checklist-categories.md +174 -0
  80. package/skills/skills/pre-deploy-checklist/references/domain-prompts.md +216 -0
  81. package/skills/skills/prompt-engineering/SKILL.md +209 -0
  82. package/skills/skills/prompt-engineering/references/advanced-combinations.md +444 -0
  83. package/skills/skills/prompt-engineering/references/chain-of-thought.md +140 -0
  84. package/skills/skills/prompt-engineering/references/decision_matrix.md +220 -0
  85. package/skills/skills/prompt-engineering/references/few-shot.md +346 -0
  86. package/skills/skills/prompt-engineering/references/json-format.md +270 -0
  87. package/skills/skills/prompt-engineering/references/natural-language.md +420 -0
  88. package/skills/skills/prompt-engineering/references/pitfalls.md +365 -0
  89. package/skills/skills/prompt-engineering/references/prompt-chaining.md +498 -0
  90. package/skills/skills/prompt-engineering/references/react.md +108 -0
  91. package/skills/skills/prompt-engineering/references/self-consistency.md +322 -0
  92. package/skills/skills/prompt-engineering/references/tree-of-thoughts.md +386 -0
  93. package/skills/skills/prompt-engineering/references/xml-format.md +220 -0
  94. package/skills/skills/prompt-engineering/references/yaml-format.md +488 -0
  95. package/skills/skills/prompt-engineering/references/zero-shot.md +74 -0
  96. package/skills/skills/quick-spec/SKILL.md +280 -0
  97. package/skills/skills/quick-spec/assets/tech-spec-template.md +74 -0
  98. package/skills/skills/quick-spec/references/step-01-understand.md +189 -0
  99. package/skills/skills/quick-spec/references/step-02-investigate.md +144 -0
  100. package/skills/skills/quick-spec/references/step-03-generate.md +128 -0
  101. package/skills/skills/quick-spec/references/step-04-review.md +173 -0
  102. package/skills/skills/quick-spec/tests/__pycache__/test_skill.cpython-314-pytest-9.0.2.pyc +0 -0
  103. package/skills/skills/quick-spec/tests/test_scenarios.md +83 -0
  104. package/skills/skills/quick-spec/tests/test_skill.py +136 -0
  105. package/skills/skills/readme-expert/SKILL.md +538 -0
  106. package/skills/skills/readme-expert/knowledge/INDEX.md +192 -0
  107. package/skills/skills/readme-expert/knowledge/application/quality-standards.md +470 -0
  108. package/skills/skills/readme-expert/knowledge/application/script-executor.md +604 -0
  109. package/skills/skills/readme-expert/knowledge/application/template-library.md +822 -0
  110. package/skills/skills/readme-expert/knowledge/foundation/codebase-scanner.md +361 -0
  111. package/skills/skills/readme-expert/knowledge/foundation/validation-checklist.md +481 -0
  112. package/skills/skills/red-teaming/SKILL.md +321 -0
  113. package/skills/skills/red-teaming/references/ai-llm-redteam.md +517 -0
  114. package/skills/skills/red-teaming/references/attack-techniques.md +410 -0
  115. package/skills/skills/red-teaming/references/cybersecurity-redteam.md +383 -0
  116. package/skills/skills/red-teaming/references/tools-frameworks.md +446 -0
  117. package/skills/skills/releasing/.skillkit-mode +1 -0
  118. package/skills/skills/releasing/SKILL.md +225 -0
  119. package/skills/skills/releasing/references/version-detection.md +108 -0
  120. package/skills/skills/screenwriter/SKILL.md +273 -0
  121. package/skills/skills/screenwriter/references/advanced-techniques.md +216 -0
  122. package/skills/skills/screenwriter/references/pipeline-integration.md +266 -0
  123. package/skills/skills/skillkit/.claude/settings.local.json +7 -0
  124. package/skills/skills/skillkit/.claude-plugin/plugin.json +27 -0
  125. package/skills/skills/skillkit/CHANGELOG.md +484 -0
  126. package/skills/skills/skillkit/SKILL.md +511 -0
  127. package/skills/skills/skillkit/commands/skillkit.md +6 -0
  128. package/skills/skills/skillkit/commands/validate-plan.md +6 -0
  129. package/skills/skills/skillkit/commands/verify.md +6 -0
  130. package/skills/skills/skillkit/knowledge/INDEX.md +352 -0
  131. package/skills/skills/skillkit/knowledge/application/09-case-studies.md +257 -0
  132. package/skills/skills/skillkit/knowledge/application/10-technical-architecture.md +324 -0
  133. package/skills/skills/skillkit/knowledge/application/11-adoption-strategy.md +267 -0
  134. package/skills/skills/skillkit/knowledge/application/12-testing-and-validation.md +276 -0
  135. package/skills/skills/skillkit/knowledge/application/13-competitive-landscape.md +198 -0
  136. package/skills/skills/skillkit/knowledge/foundation/01-why-skills-exist.md +246 -0
  137. package/skills/skills/skillkit/knowledge/foundation/02-skills-vs-subagents-comparison.md +312 -0
  138. package/skills/skills/skillkit/knowledge/foundation/03-skills-vs-subagents-decision-tree.md +346 -0
  139. package/skills/skills/skillkit/knowledge/foundation/04-hybrid-patterns.md +308 -0
  140. package/skills/skills/skillkit/knowledge/foundation/05-token-economics.md +275 -0
  141. package/skills/skills/skillkit/knowledge/foundation/06-platform-constraints.md +237 -0
  142. package/skills/skills/skillkit/knowledge/foundation/07-security-concerns.md +322 -0
  143. package/skills/skills/skillkit/knowledge/foundation/08-when-not-to-use-skills.md +270 -0
  144. package/skills/skills/skillkit/knowledge/plugin-guide.md +614 -0
  145. package/skills/skills/skillkit/knowledge/tools/14-validation-tools-guide.md +150 -0
  146. package/skills/skills/skillkit/knowledge/tools/15-cost-tools-guide.md +157 -0
  147. package/skills/skills/skillkit/knowledge/tools/16-security-tools-guide.md +122 -0
  148. package/skills/skills/skillkit/knowledge/tools/17-pattern-tools-guide.md +161 -0
  149. package/skills/skills/skillkit/knowledge/tools/18-decision-helper-guide.md +243 -0
  150. package/skills/skills/skillkit/knowledge/tools/19-test-generator-guide.md +275 -0
  151. package/skills/skills/skillkit/knowledge/tools/20-split-skill-guide.md +149 -0
  152. package/skills/skills/skillkit/knowledge/tools/21-quality-scorer-guide.md +226 -0
  153. package/skills/skills/skillkit/knowledge/tools/22-migration-helper-guide.md +356 -0
  154. package/skills/skills/skillkit/knowledge/tools/23-subagent-creation-guide.md +448 -0
  155. package/skills/skills/skillkit/knowledge/tools/24-behavioral-testing-guide.md +122 -0
  156. package/skills/skills/skillkit/references/proposal-generation.md +982 -0
  157. package/skills/skills/skillkit/references/rationalization-catalog.md +75 -0
  158. package/skills/skills/skillkit/references/research-methodology.md +661 -0
  159. package/skills/skills/skillkit/references/section-2-full-creation-workflow.md +452 -0
  160. package/skills/skills/skillkit/references/section-3-validation-workflow-existing-skill.md +63 -0
  161. package/skills/skills/skillkit/references/section-4-decision-workflow-skills-vs-subagents.md +64 -0
  162. package/skills/skills/skillkit/references/section-5-migration-workflow-doc-to-skill.md +58 -0
  163. package/skills/skills/skillkit/references/section-6-subagent-creation-workflow.md +499 -0
  164. package/skills/skills/skillkit/references/section-7-knowledge-reference-map.md +72 -0
  165. package/skills/skills/skillkit/scripts/__pycache__/decision_helper.cpython-314.pyc +0 -0
  166. package/skills/skills/skillkit/scripts/__pycache__/quick_validate.cpython-312.pyc +0 -0
  167. package/skills/skills/skillkit/scripts/__pycache__/quick_validate.cpython-314.pyc +0 -0
  168. package/skills/skills/skillkit/scripts/__pycache__/test_generator.cpython-314-pytest-9.0.2.pyc +0 -0
  169. package/skills/skills/skillkit/scripts/decision_helper.py +799 -0
  170. package/skills/skills/skillkit/scripts/init_skill.py +400 -0
  171. package/skills/skills/skillkit/scripts/init_subagent.py +231 -0
  172. package/skills/skills/skillkit/scripts/migration_helper.py +669 -0
  173. package/skills/skills/skillkit/scripts/package_skill.py +211 -0
  174. package/skills/skills/skillkit/scripts/pattern_detector.py +381 -0
  175. package/skills/skills/skillkit/scripts/pattern_detector_new.py +382 -0
  176. package/skills/skills/skillkit/scripts/pressure_tester.py +157 -0
  177. package/skills/skills/skillkit/scripts/quality_scorer.py +999 -0
  178. package/skills/skills/skillkit/scripts/quick_validate.py +100 -0
  179. package/skills/skills/skillkit/scripts/security_scanner.py +474 -0
  180. package/skills/skills/skillkit/scripts/split_skill.py +540 -0
  181. package/skills/skills/skillkit/scripts/test_generator.py +695 -0
  182. package/skills/skills/skillkit/scripts/token_estimator.py +493 -0
  183. package/skills/skills/skillkit/scripts/utils/__init__.py +49 -0
  184. package/skills/skills/skillkit/scripts/utils/__pycache__/__init__.cpython-312.pyc +0 -0
  185. package/skills/skills/skillkit/scripts/utils/__pycache__/__init__.cpython-314.pyc +0 -0
  186. package/skills/skills/skillkit/scripts/utils/__pycache__/budget_tracker.cpython-312.pyc +0 -0
  187. package/skills/skills/skillkit/scripts/utils/__pycache__/budget_tracker.cpython-314.pyc +0 -0
  188. package/skills/skills/skillkit/scripts/utils/__pycache__/output_formatter.cpython-312.pyc +0 -0
  189. package/skills/skills/skillkit/scripts/utils/__pycache__/output_formatter.cpython-314.pyc +0 -0
  190. package/skills/skills/skillkit/scripts/utils/__pycache__/reference_validator.cpython-312.pyc +0 -0
  191. package/skills/skills/skillkit/scripts/utils/__pycache__/reference_validator.cpython-314.pyc +0 -0
  192. package/skills/skills/skillkit/scripts/utils/budget_tracker.py +388 -0
  193. package/skills/skills/skillkit/scripts/utils/output_formatter.py +263 -0
  194. package/skills/skills/skillkit/scripts/utils/reference_validator.py +401 -0
  195. package/skills/skills/skillkit/scripts/validate_skill.py +594 -0
  196. package/skills/skills/skillkit/tests/test_behavioral.py +39 -0
  197. package/skills/skills/skillkit/tests/test_scenarios.md +83 -0
  198. package/skills/skills/skillkit/tests/test_skill.py +136 -0
  199. package/skills/skills/skillkit-help/SKILL.md +81 -0
  200. package/skills/skills/skillkit-help/knowledge/application/09-case-studies.md +257 -0
  201. package/skills/skills/skillkit-help/knowledge/application/12-testing-and-validation.md +276 -0
  202. package/skills/skills/skillkit-help/knowledge/foundation/01-why-skills-exist.md +246 -0
  203. package/skills/skills/skillkit-help/knowledge/foundation/02-skills-vs-subagents-comparison.md +312 -0
  204. package/skills/skills/skillkit-help/knowledge/foundation/03-skills-vs-subagents-decision-tree.md +346 -0
  205. package/skills/skills/skillkit-help/knowledge/foundation/06-platform-constraints.md +237 -0
  206. package/skills/skills/skillkit-help/knowledge/foundation/08-when-not-to-use-skills.md +270 -0
  207. package/skills/skills/skillkit-help/template/SKILL.md +52 -0
  208. package/skills/skills/social-media-seo/SKILL.md +278 -0
  209. package/skills/skills/social-media-seo/databases/caption-styles.csv +31 -0
  210. package/skills/skills/social-media-seo/databases/engagement-tactics.csv +16 -0
  211. package/skills/skills/social-media-seo/databases/hashtag-strategies.csv +21 -0
  212. package/skills/skills/social-media-seo/databases/hook-formulas.csv +26 -0
  213. package/skills/skills/social-media-seo/databases/keyword-clusters.csv +11 -0
  214. package/skills/skills/social-media-seo/databases/thread-structures.csv +26 -0
  215. package/skills/skills/social-media-seo/databases/viral-patterns.csv +21 -0
  216. package/skills/skills/social-media-seo/references/analytics-guide.md +321 -0
  217. package/skills/skills/social-media-seo/references/instagram-seo.md +235 -0
  218. package/skills/skills/social-media-seo/references/threads-seo.md +305 -0
  219. package/skills/skills/social-media-seo/references/x-twitter-seo.md +337 -0
  220. package/skills/skills/social-media-seo/scripts/query_database.py +191 -0
  221. package/skills/skills/storyteller/SKILL.md +241 -0
  222. package/skills/skills/storyteller/references/transformation-methodology.md +293 -0
  223. package/skills/skills/storyteller/references/visual-vocabulary.md +177 -0
  224. package/skills/skills/thread-pro/SKILL.md +162 -0
  225. package/skills/skills/thread-pro/anti-ai-patterns.md +120 -0
  226. package/skills/skills/thread-pro/hook-formulas.md +138 -0
  227. package/skills/skills/thread-pro/references/anti-ai-patterns.md +120 -0
  228. package/skills/skills/thread-pro/references/hook-formulas.md +138 -0
  229. package/skills/skills/thread-pro/references/thread-structures.md +240 -0
  230. package/skills/skills/thread-pro/references/voice-injection.md +130 -0
  231. package/skills/skills/thread-pro/thread-structures.md +240 -0
  232. package/skills/skills/thread-pro/voice-injection.md +130 -0
  233. package/skills/skills/tinkering/SKILL.md +251 -0
  234. package/skills/skills/tinkering/references/graduation-checklist.md +100 -0
  235. package/skills/skills/validate-plan/.skillkit-mode +1 -0
  236. package/skills/skills/validate-plan/SKILL.md +406 -0
  237. package/skills/skills/validate-plan/references/dry-principles.md +251 -0
  238. package/skills/skills/validate-plan/references/gap-analysis-guide.md +320 -0
  239. package/skills/skills/validate-plan/references/tdd-patterns.md +413 -0
  240. package/skills/skills/validate-plan/references/yagni-checklist.md +330 -0
  241. package/skills/skills/verify-before-ship/.skillkit-mode +1 -0
  242. package/skills/skills/verify-before-ship/SKILL.md +116 -0
  243. package/skills/skills/verify-before-ship/references/anti-rationalization.md +212 -0
  244. package/skills/skills/verify-before-ship/references/verification-gates.md +305 -0
  245. package/skills-manifest.json +8 -2
  246. package/src/picker.js +11 -5
  247. package/src/picker.test.js +36 -1
@@ -0,0 +1,305 @@
1
+ # Verification Gates — Full Specifications
2
+
3
+ Complete reference for each of the 7 production safety gates.
4
+ Each gate specifies: what to check, how to collect evidence, and what constitutes a pass.
5
+
6
+ ## Table of Contents
7
+
8
+ - [G1: Tests Pass](#g1-tests-pass)
9
+ - [G2: Security Scan Clean](#g2-security-scan-clean)
10
+ - [G3: No Breaking Changes](#g3-no-breaking-changes)
11
+ - [G4: Environment Config Validated](#g4-environment-config-validated)
12
+ - [G5: Staging Deployment Verified](#g5-staging-deployment-verified)
13
+ - [G6: Rollback Plan Documented](#g6-rollback-plan-documented)
14
+ - [G7: Code Review Approved](#g7-code-review-approved)
15
+
16
+ ---
17
+
18
+ ## G1: Tests Pass
19
+
20
+ **What to check:**
21
+ - All unit tests pass
22
+ - All integration tests pass
23
+ - Any e2e tests covering the changed functionality pass
24
+ - No test is skipped or marked xfail without a pre-existing, documented reason
25
+
26
+ **How to collect evidence:**
27
+ ```bash
28
+ # CI output (preferred)
29
+ # Navigate to CI run → copy the final test summary
30
+
31
+ # Local run
32
+ npm test # Node/JS
33
+ pytest -v # Python
34
+ go test ./... # Go
35
+ ./gradlew test # Java/Kotlin
36
+ bundle exec rspec # Ruby
37
+ ```
38
+
39
+ **Pass criteria:**
40
+ - All tests show PASS/GREEN
41
+ - Zero unexpected failures
42
+ - Zero unexplained skips
43
+
44
+ **Fail criteria (DO NOT SHIP if any are true):**
45
+ - Any test failing
46
+ - CI run not triggered (no output = no evidence)
47
+ - "Tests will pass, I'm sure" without running them
48
+
49
+ **Evidence template:**
50
+ ```
51
+ GATE G1 Tests: CLEARED
52
+ Evidence:
53
+ [paste CI summary or local output here]
54
+ Example: ✓ 247 passed, 0 failed — CI run #4521
55
+ ```
56
+
57
+ ---
58
+
59
+ ## G2: Security Scan Clean
60
+
61
+ **What to check:**
62
+ - No critical or high severity CVEs in dependencies
63
+ - No hardcoded secrets, tokens, or credentials in diff
64
+ - No new SQL injection / XSS / command injection patterns
65
+
66
+ **How to collect evidence:**
67
+ ```bash
68
+ # Dependency vulnerability scan
69
+ npm audit --audit-level=high # Node
70
+ safety check # Python
71
+ snyk test # Any (Snyk CLI)
72
+ trivy fs . # Any (Trivy)
73
+
74
+ # Secret detection
75
+ git diff HEAD~1 | grep -i "password\|secret\|token\|api_key"
76
+ trufflehog git --since-commit HEAD~1 .
77
+ ```
78
+
79
+ **Pass criteria:**
80
+ - Zero critical/high CVEs
81
+ - No secrets detected in diff
82
+ - Medium CVEs reviewed and accepted or mitigated
83
+
84
+ **Fail criteria (DO NOT SHIP if any are true):**
85
+ - Any critical or high CVE present
86
+ - Unreviewed secrets detected in diff
87
+ - Scan was not run ("it's fine, no dependencies changed")
88
+
89
+ **Evidence template:**
90
+ ```
91
+ GATE G2 Security: CLEARED
92
+ Evidence:
93
+ Dependency scan: 0 critical, 0 high (2 low — accepted)
94
+ Secret scan: clean
95
+ Tool: npm audit — 2026-03-13
96
+ ```
97
+
98
+ ---
99
+
100
+ ## G3: No Breaking Changes
101
+
102
+ **What to check:**
103
+ - API contracts not broken (no removed endpoints, no changed required fields)
104
+ - Database schema migrations are backwards compatible or coordinated
105
+ - No removed/renamed env vars that consumers depend on
106
+ - Public interfaces (exported functions, types) not broken
107
+
108
+ **How to collect evidence:**
109
+ ```bash
110
+ # API diff
111
+ git diff HEAD~1 -- "**/*.openapi.*" "**/*swagger*" "**/*schema*"
112
+
113
+ # Database migration review
114
+ cat migrations/latest.sql # Confirm no DROP TABLE, no NOT NULL without default
115
+
116
+ # Contract tests (if present)
117
+ npm run test:contract
118
+ pact verify
119
+ ```
120
+
121
+ **Pass criteria:**
122
+ - No uncoordinated breaking changes
123
+ - Any breaking changes have a migration plan and all consumers updated
124
+
125
+ **Fail criteria (DO NOT SHIP if any are true):**
126
+ - Removed API endpoints with active consumers
127
+ - Additing NOT NULL column without default to existing table
128
+ - Removed env var that dependent services use
129
+
130
+ **Evidence template:**
131
+ ```
132
+ GATE G3 Breaking Changes: CLEARED
133
+ Evidence:
134
+ API diff: no breaking changes in openapi.yaml
135
+ DB migration: adds nullable column only
136
+ Contract tests: 12/12 passing
137
+ ```
138
+
139
+ ---
140
+
141
+ ## G4: Environment Config Validated
142
+
143
+ **What to check:**
144
+ - All required env vars for production are set
145
+ - Config diff between staging and production is intentional
146
+ - Feature flags, secrets, and infrastructure config reviewed
147
+ - No staging-only config leaking to production
148
+
149
+ **How to collect evidence:**
150
+ ```bash
151
+ # Compare env files (sanitize secrets before pasting)
152
+ diff .env.staging .env.production | grep "^[<>]" | sed 's/=.*/=***/'
153
+
154
+ # Kubernetes/Docker: review configmap/secret diff
155
+ kubectl diff -f k8s/production/
156
+
157
+ # Terraform: plan output
158
+ terraform plan -var-file=production.tfvars
159
+ ```
160
+
161
+ **Pass criteria:**
162
+ - All required vars confirmed present in production config
163
+ - Any diff between staging and production is expected and documented
164
+
165
+ **Fail criteria (DO NOT SHIP if any are true):**
166
+ - New env var added in code but not set in production
167
+ - Unknown config difference between staging and production
168
+ - "It's the same config as staging" without checking
169
+
170
+ **Evidence template:**
171
+ ```
172
+ GATE G4 Config: CLEARED
173
+ Evidence:
174
+ New vars added: FEATURE_X_ENABLED (set to true in prod config ✓)
175
+ Config diff: 1 intentional difference — DEBUG=false in prod, true in staging
176
+ ```
177
+
178
+ ---
179
+
180
+ ## G5: Staging Deployment Verified
181
+
182
+ **What to check:**
183
+ - Code was deployed to staging before production
184
+ - Smoke tests pass on staging (critical user paths work)
185
+ - No error spike in staging logs after deploy
186
+
187
+ **How to collect evidence:**
188
+ ```bash
189
+ # Staging deploy confirmation
190
+ curl -s https://staging.yourapp.com/health | jq .
191
+
192
+ # Check staging logs for errors
193
+ kubectl logs -n staging deployment/api --since=10m | grep -i error | tail -20
194
+
195
+ # Smoke test
196
+ curl -s https://staging.yourapp.com/api/v1/ping
197
+ ```
198
+
199
+ **Pass criteria:**
200
+ - Staging health endpoint returns 200
201
+ - Critical user path (login, checkout, etc.) works manually
202
+ - No new error pattern in logs
203
+
204
+ **Fail criteria (DO NOT SHIP if any are true):**
205
+ - Code never deployed to staging ("we'll test in prod")
206
+ - Staging shows errors that haven't been investigated
207
+ - "Staging and prod are different so staging tests don't count"
208
+
209
+ **Evidence template:**
210
+ ```
211
+ GATE G5 Staging: CLEARED
212
+ Evidence:
213
+ Staging deploy: 2026-03-13 14:32 UTC — build #891
214
+ Health: {"status":"ok","version":"1.4.2"}
215
+ Smoke test: login ✓, checkout ✓, API /ping ✓
216
+ Logs: 0 new errors in last 10 min
217
+ ```
218
+
219
+ ---
220
+
221
+ ## G6: Rollback Plan Documented
222
+
223
+ **What to check:**
224
+ - Rollback steps are written down and specific
225
+ - Rollback has been validated (at minimum, reviewed for feasibility)
226
+ - Who executes the rollback and how to trigger it is clear
227
+
228
+ **Rollback plan minimum requirements:**
229
+ 1. Command or action to revert (specific, not "undo the change")
230
+ 2. Expected time to complete rollback
231
+ 3. How to verify rollback succeeded
232
+ 4. Who to notify
233
+
234
+ **How to collect evidence:**
235
+ ```bash
236
+ # Git rollback
237
+ git revert HEAD --no-edit && git push origin main
238
+
239
+ # Kubernetes rollback
240
+ kubectl rollout undo deployment/api -n production
241
+ kubectl rollout status deployment/api -n production
242
+
243
+ # Feature flag toggle
244
+ curl -X POST https://flags.yourapp.com/api/FEATURE_X/disable
245
+ ```
246
+
247
+ **Pass criteria:**
248
+ - Specific commands documented, not "revert the commit"
249
+ - Steps are executable by someone other than the author
250
+ - Database rollback steps included if schema changed
251
+
252
+ **Fail criteria (DO NOT SHIP if any are true):**
253
+ - No rollback plan written ("we'll figure it out if needed")
254
+ - Rollback plan is "we can just redeploy the old version" without specific commands
255
+ - DB migration with no rollback migration
256
+
257
+ **Evidence template:**
258
+ ```
259
+ GATE G6 Rollback: CLEARED
260
+ Evidence:
261
+ Rollback steps:
262
+ 1. kubectl rollout undo deployment/api -n production
263
+ 2. Verify: curl https://api.yourapp.com/health → {"version":"1.4.1"}
264
+ 3. Notify: #incidents Slack channel
265
+ Estimated rollback time: ~3 minutes
266
+ ```
267
+
268
+ ---
269
+
270
+ ## G7: Code Review Approved
271
+
272
+ **What to check:**
273
+ - At least one reviewer (not the author) approved the PR
274
+ - Review was substantive (not rubber-stamp)
275
+ - Security-sensitive code had appropriate reviewer
276
+
277
+ **How to collect evidence:**
278
+ ```bash
279
+ # GitHub
280
+ gh pr view <PR_NUMBER> --json reviews,reviewDecision
281
+
282
+ # GitLab
283
+ glab mr view <MR_IID>
284
+ ```
285
+
286
+ **Pass criteria:**
287
+ - Minimum 1 approval from non-author
288
+ - Approval is on the current commit (no force-push after approval)
289
+ - PR has no blocking comments unresolved
290
+
291
+ **Fail criteria (DO NOT SHIP if any are true):**
292
+ - No PR created ("it's a small fix")
293
+ - PR approved by the author themselves
294
+ - Unresolved blocking comments
295
+ - Approved on an older commit, force-pushed after
296
+
297
+ **Evidence template:**
298
+ ```
299
+ GATE G7 Code Review: CLEARED
300
+ Evidence:
301
+ PR: github.com/org/repo/pull/847
302
+ Approvals: @alice (2026-03-13 13:15 UTC)
303
+ Blocking comments: 0
304
+ Commit approved: a3f9d21 (current HEAD ✓)
305
+ ```
@@ -126,6 +126,13 @@
126
126
  "type": "skill",
127
127
  "path": "skills/skillkit"
128
128
  },
129
+ {
130
+ "name": "skillkit-help",
131
+ "description": "Pre-build orientation for skill creators. Answers \"what are skills?\",",
132
+ "category": "core",
133
+ "type": "skill",
134
+ "path": "skills/skillkit-help"
135
+ },
129
136
  {
130
137
  "name": "social-media-seo",
131
138
  "description": "Optimize social media content for maximum discoverability and engagement using 2025-proven SEO strategies.",
@@ -212,6 +219,5 @@
212
219
  "type": "agent",
213
220
  "path": "agents/seo-manager.md"
214
221
  }
215
- ],
216
- "generatedAt": "2026-03-15T04:29:19.063Z"
222
+ ]
217
223
  }
package/src/picker.js CHANGED
@@ -27,6 +27,16 @@ export function getCategoryDisplay(skill) {
27
27
  return `${icon} ${label}`
28
28
  }
29
29
 
30
+ export function sortSkills(skills) {
31
+ return [...skills].sort((a, b) => {
32
+ if (a.name === 'skillkit') return -1
33
+ if (b.name === 'skillkit') return 1
34
+ if (a.name === 'skillkit-help') return -1
35
+ if (b.name === 'skillkit-help') return 1
36
+ return a.name.localeCompare(b.name)
37
+ })
38
+ }
39
+
30
40
  export async function pickInstallables() {
31
41
  const mode = await select({
32
42
  message: 'What to install?',
@@ -42,11 +52,7 @@ export async function pickInstallables() {
42
52
  if (mode === 'skills-only') return { skills: manifest.skills, agents: [] }
43
53
  if (mode === 'agents-only') return { skills: [], agents: manifest.agents }
44
54
 
45
- const sortedSkills = [...manifest.skills].sort((a, b) => {
46
- if (a.name === 'skillkit') return -1
47
- if (b.name === 'skillkit') return 1
48
- return a.name.localeCompare(b.name)
49
- })
55
+ const sortedSkills = sortSkills(manifest.skills)
50
56
 
51
57
  const skillChoices = sortedSkills.map(s => ({
52
58
  value: s.name,
@@ -1,6 +1,6 @@
1
1
  import { test } from 'node:test'
2
2
  import assert from 'node:assert'
3
- import { getCategoryDisplay } from './picker.js'
3
+ import { getCategoryDisplay, sortSkills } from './picker.js'
4
4
 
5
5
  test('getCategoryDisplay returns icon and category label', () => {
6
6
  const skill = { name: 'test-skill', category: 'creative' }
@@ -19,3 +19,38 @@ test('getCategoryDisplay handles missing category', () => {
19
19
  const result = getCategoryDisplay(skill)
20
20
  assert.strictEqual(result, ' ')
21
21
  })
22
+
23
+ // --- sortSkills tests (added for skillkit-help ordering) ---
24
+ test('skillkit sorts first', () => {
25
+ const skills = [
26
+ { name: 'readme-expert' },
27
+ { name: 'skillkit' },
28
+ { name: 'adversarial-review' }
29
+ ]
30
+ const sorted = sortSkills(skills)
31
+ assert.strictEqual(sorted[0].name, 'skillkit')
32
+ })
33
+
34
+ test('skillkit-help sorts second', () => {
35
+ const skills = [
36
+ { name: 'readme-expert' },
37
+ { name: 'skillkit-help' },
38
+ { name: 'skillkit' },
39
+ { name: 'adversarial-review' }
40
+ ]
41
+ const sorted = sortSkills(skills)
42
+ assert.strictEqual(sorted[0].name, 'skillkit')
43
+ assert.strictEqual(sorted[1].name, 'skillkit-help')
44
+ })
45
+
46
+ test('remaining skills sort alphabetically', () => {
47
+ const skills = [
48
+ { name: 'readme-expert' },
49
+ { name: 'skillkit' },
50
+ { name: 'adversarial-review' },
51
+ { name: 'skillkit-help' }
52
+ ]
53
+ const sorted = sortSkills(skills)
54
+ assert.strictEqual(sorted[2].name, 'adversarial-review')
55
+ assert.strictEqual(sorted[3].name, 'readme-expert')
56
+ })