bmad-module-skill-forge 0.9.0 → 0.10.1-alpha.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 (268) hide show
  1. package/.claude-plugin/marketplace.json +39 -0
  2. package/.gitattributes +16 -0
  3. package/README.md +105 -38
  4. package/docs/404.md +13 -10
  5. package/docs/RELEASING.md +185 -0
  6. package/docs/STABILITY.md +123 -0
  7. package/docs/_data/pinned.yaml +98 -0
  8. package/docs/agents.md +16 -11
  9. package/docs/architecture.md +221 -0
  10. package/docs/bmad-synergy.md +11 -13
  11. package/docs/concepts.md +18 -108
  12. package/docs/examples.md +121 -80
  13. package/docs/getting-started.md +85 -147
  14. package/docs/how-it-works.md +25 -536
  15. package/docs/index.md +44 -27
  16. package/docs/skill-model.md +328 -0
  17. package/docs/troubleshooting.md +39 -0
  18. package/docs/verifying-a-skill.md +232 -0
  19. package/docs/why-skf.md +93 -0
  20. package/docs/workflows.md +119 -13
  21. package/package.json +25 -4
  22. package/src/README.md +23 -25
  23. package/src/forger/forge-tier.yaml +4 -2
  24. package/src/forger/preferences.yaml +7 -1
  25. package/src/knowledge/agentskills-spec.md +1 -1
  26. package/src/knowledge/architecture-verification.md +1 -1
  27. package/src/knowledge/ccc-bridge.md +16 -15
  28. package/src/knowledge/overview.md +11 -11
  29. package/src/knowledge/progressive-capability.md +3 -3
  30. package/src/knowledge/provenance-tracking.md +9 -3
  31. package/src/knowledge/qmd-registry.md +8 -8
  32. package/src/knowledge/skf-knowledge-index.csv +2 -2
  33. package/src/knowledge/skill-lifecycle.md +16 -1
  34. package/src/knowledge/split-body-strategy.md +1 -1
  35. package/src/knowledge/version-paths.md +17 -12
  36. package/src/module-help.csv +18 -17
  37. package/src/module.yaml +4 -0
  38. package/src/shared/health-check.md +372 -0
  39. package/src/shared/references/feasibility-report-schema.md +86 -0
  40. package/src/shared/references/headless-gate-convention.md +62 -0
  41. package/src/shared/references/output-contract-schema.md +35 -0
  42. package/src/shared/references/pipeline-contracts.md +102 -0
  43. package/src/shared/scripts/skf-atomic-write.py +370 -0
  44. package/src/shared/scripts/skf-manifest-ops.py +236 -0
  45. package/src/shared/scripts/skf-preflight.py +164 -0
  46. package/src/shared/scripts/skf-rebuild-managed-sections.py +201 -0
  47. package/src/shared/scripts/skf-severity-classify.py +163 -0
  48. package/src/shared/scripts/skf-skill-inventory.py +210 -0
  49. package/src/shared/scripts/skf-structural-diff.py +257 -0
  50. package/src/shared/scripts/skf-validate-frontmatter.py +318 -0
  51. package/src/shared/scripts/skf-validate-output.py +247 -0
  52. package/src/skf-analyze-source/SKILL.md +57 -0
  53. package/src/skf-analyze-source/assets/skill-brief-schema.md +125 -0
  54. package/src/skf-analyze-source/references/unit-detection-heuristics.md +124 -0
  55. package/src/{workflows/analyze-source → skf-analyze-source}/steps-c/step-01-init.md +6 -66
  56. package/src/{workflows/analyze-source → skf-analyze-source}/steps-c/step-01b-continue.md +4 -59
  57. package/src/{workflows/analyze-source → skf-analyze-source}/steps-c/step-02-scan-project.md +7 -68
  58. package/src/{workflows/analyze-source → skf-analyze-source}/steps-c/step-03-identify-units.md +6 -66
  59. package/src/{workflows/analyze-source → skf-analyze-source}/steps-c/step-04-map-and-detect.md +7 -68
  60. package/src/{workflows/analyze-source → skf-analyze-source}/steps-c/step-05-recommend.md +6 -66
  61. package/src/{workflows/analyze-source → skf-analyze-source}/steps-c/step-06-generate-briefs.md +14 -66
  62. package/src/skf-analyze-source/steps-c/step-07-health-check.md +22 -0
  63. package/src/skf-audit-skill/SKILL.md +59 -0
  64. package/src/{workflows/audit-skill/data → skf-audit-skill/assets}/drift-report-template.md +7 -7
  65. package/src/{workflows/audit-skill/data → skf-audit-skill/references}/severity-rules.md +11 -11
  66. package/src/{workflows/audit-skill → skf-audit-skill}/steps-c/step-01-init.md +24 -68
  67. package/src/{workflows/audit-skill → skf-audit-skill}/steps-c/step-02-re-index.md +36 -71
  68. package/src/{workflows/audit-skill → skf-audit-skill}/steps-c/step-03-structural-diff.md +21 -63
  69. package/src/{workflows/audit-skill → skf-audit-skill}/steps-c/step-04-semantic-diff.md +6 -65
  70. package/src/{workflows/audit-skill → skf-audit-skill}/steps-c/step-05-severity-classify.md +5 -63
  71. package/src/{workflows/audit-skill → skf-audit-skill}/steps-c/step-06-report.md +10 -59
  72. package/src/skf-audit-skill/steps-c/step-07-health-check.md +22 -0
  73. package/src/skf-brief-skill/SKILL.md +53 -0
  74. package/src/{workflows/brief-skill/data → skf-brief-skill/assets}/scope-templates.md +23 -0
  75. package/src/skf-brief-skill/assets/skill-brief-schema.md +206 -0
  76. package/src/{workflows/brief-skill → skf-brief-skill}/steps-c/step-01-gather-intent.md +6 -67
  77. package/src/{workflows/brief-skill → skf-brief-skill}/steps-c/step-02-analyze-target.md +6 -66
  78. package/src/{workflows/brief-skill → skf-brief-skill}/steps-c/step-03-scope-definition.md +12 -68
  79. package/src/{workflows/brief-skill → skf-brief-skill}/steps-c/step-04-confirm-brief.md +5 -63
  80. package/src/{workflows/brief-skill → skf-brief-skill}/steps-c/step-05-write-brief.md +10 -69
  81. package/src/skf-brief-skill/steps-c/step-06-health-check.md +22 -0
  82. package/src/skf-create-skill/SKILL.md +63 -0
  83. package/src/{workflows/create-skill/data → skf-create-skill/assets}/compile-assembly-rules.md +60 -0
  84. package/src/{workflows/create-skill/data → skf-create-skill/assets}/skill-sections.md +92 -23
  85. package/src/skf-create-skill/assets/tessl-dismissal-rules.md +102 -0
  86. package/src/{workflows/create-skill/data → skf-create-skill/references}/extraction-patterns-tracing.md +13 -13
  87. package/src/{workflows/create-skill/data → skf-create-skill/references}/extraction-patterns.md +8 -3
  88. package/src/skf-create-skill/references/source-resolution-protocols.md +239 -0
  89. package/src/{workflows/create-skill/data → skf-create-skill/references}/tier-degradation-rules.md +8 -7
  90. package/src/{workflows/create-skill → skf-create-skill}/steps-c/step-01-load-brief.md +25 -63
  91. package/src/{workflows/create-skill → skf-create-skill}/steps-c/step-02-ecosystem-check.md +8 -64
  92. package/src/skf-create-skill/steps-c/step-03-extract.md +379 -0
  93. package/src/{workflows/create-skill → skf-create-skill}/steps-c/step-03d-component-extraction.md +18 -35
  94. package/src/{workflows/create-skill → skf-create-skill}/steps-c/step-04-enrich.md +12 -69
  95. package/src/{workflows/create-skill → skf-create-skill}/steps-c/step-05-compile.md +71 -75
  96. package/src/skf-create-skill/steps-c/step-06-validate.md +267 -0
  97. package/src/{workflows/create-skill → skf-create-skill}/steps-c/step-07-generate-artifacts.md +30 -74
  98. package/src/skf-create-skill/steps-c/step-08-report.md +145 -0
  99. package/src/skf-create-skill/steps-c/step-09-health-check.md +23 -0
  100. package/src/{workflows/create-skill/steps-c → skf-create-skill/steps-c/sub}/step-02b-ccc-discover.md +8 -66
  101. package/src/skf-create-skill/steps-c/sub/step-03b-fetch-temporal.md +229 -0
  102. package/src/{workflows/create-skill/steps-c → skf-create-skill/steps-c/sub}/step-03c-fetch-docs.md +18 -42
  103. package/src/skf-create-stack-skill/SKILL.md +64 -0
  104. package/src/{workflows/create-stack-skill/data → skf-create-stack-skill/assets}/stack-skill-template.md +2 -1
  105. package/src/{workflows/create-stack-skill/data → skf-create-stack-skill/references}/compose-mode-rules.md +19 -5
  106. package/src/{workflows/create-stack-skill/data → skf-create-stack-skill/references}/integration-patterns.md +1 -1
  107. package/src/{workflows/create-stack-skill/data → skf-create-stack-skill/references}/manifest-patterns.md +10 -10
  108. package/src/{workflows/create-stack-skill → skf-create-stack-skill}/steps-c/step-01-init.md +14 -55
  109. package/src/{workflows/create-stack-skill → skf-create-stack-skill}/steps-c/step-02-detect-manifests.md +29 -63
  110. package/src/{workflows/create-stack-skill → skf-create-stack-skill}/steps-c/step-03-rank-and-confirm.md +9 -59
  111. package/src/{workflows/create-stack-skill → skf-create-stack-skill}/steps-c/step-04-parallel-extract.md +29 -64
  112. package/src/skf-create-stack-skill/steps-c/step-05-detect-integrations.md +164 -0
  113. package/src/{workflows/create-stack-skill → skf-create-stack-skill}/steps-c/step-06-compile-stack.md +7 -60
  114. package/src/skf-create-stack-skill/steps-c/step-07-generate-output.md +328 -0
  115. package/src/{workflows/create-stack-skill → skf-create-stack-skill}/steps-c/step-08-validate.md +17 -63
  116. package/src/skf-create-stack-skill/steps-c/step-09-report.md +128 -0
  117. package/src/skf-create-stack-skill/steps-c/step-10-health-check.md +22 -0
  118. package/src/skf-drop-skill/SKILL.md +57 -0
  119. package/src/{workflows/drop-skill → skf-drop-skill}/steps-c/step-01-select.md +9 -69
  120. package/src/{workflows/drop-skill → skf-drop-skill}/steps-c/step-02-execute.md +30 -106
  121. package/src/skf-drop-skill/steps-c/step-03-report.md +83 -0
  122. package/src/skf-drop-skill/steps-c/step-04-health-check.md +22 -0
  123. package/src/skf-export-skill/SKILL.md +57 -0
  124. package/src/skf-export-skill/assets/managed-section-format.md +138 -0
  125. package/src/{workflows/export-skill/data → skf-export-skill/assets}/snippet-format.md +8 -12
  126. package/src/skf-export-skill/steps-c/step-01-load-skill.md +247 -0
  127. package/src/{workflows/export-skill → skf-export-skill}/steps-c/step-02-package.md +5 -58
  128. package/src/{workflows/export-skill → skf-export-skill}/steps-c/step-03-generate-snippet.md +15 -77
  129. package/src/{workflows/export-skill → skf-export-skill}/steps-c/step-04-update-context.md +59 -133
  130. package/src/{workflows/export-skill → skf-export-skill}/steps-c/step-05-token-report.md +4 -58
  131. package/src/{workflows/export-skill → skf-export-skill}/steps-c/step-06-summary.md +20 -64
  132. package/src/skf-export-skill/steps-c/step-07-health-check.md +22 -0
  133. package/src/skf-forger/SKILL.md +110 -0
  134. package/src/skf-forger/bmad-skill-manifest.yaml +11 -0
  135. package/src/skf-quick-skill/SKILL.md +56 -0
  136. package/src/{workflows/quick-skill/data → skf-quick-skill/references}/registry-resolution.md +6 -6
  137. package/src/{workflows/quick-skill → skf-quick-skill}/steps-c/step-01-resolve-target.md +9 -62
  138. package/src/{workflows/quick-skill → skf-quick-skill}/steps-c/step-02-ecosystem-check.md +5 -59
  139. package/src/{workflows/quick-skill → skf-quick-skill}/steps-c/step-03-quick-extract.md +18 -61
  140. package/src/{workflows/quick-skill → skf-quick-skill}/steps-c/step-04-compile.md +6 -60
  141. package/src/{workflows/quick-skill → skf-quick-skill}/steps-c/step-05-validate.md +58 -78
  142. package/src/skf-quick-skill/steps-c/step-06-write.md +73 -0
  143. package/src/skf-quick-skill/steps-c/step-07-health-check.md +22 -0
  144. package/src/skf-refine-architecture/SKILL.md +57 -0
  145. package/src/{workflows/refine-architecture/data → skf-refine-architecture/references}/refinement-rules.md +16 -16
  146. package/src/{workflows/refine-architecture → skf-refine-architecture}/steps-c/step-01-init.md +6 -63
  147. package/src/{workflows/refine-architecture → skf-refine-architecture}/steps-c/step-02-gap-analysis.md +29 -71
  148. package/src/{workflows/refine-architecture → skf-refine-architecture}/steps-c/step-03-issue-detection.md +5 -65
  149. package/src/{workflows/refine-architecture → skf-refine-architecture}/steps-c/step-04-improvements.md +5 -64
  150. package/src/{workflows/refine-architecture → skf-refine-architecture}/steps-c/step-05-compile.md +5 -56
  151. package/src/{workflows/refine-architecture → skf-refine-architecture}/steps-c/step-06-report.md +14 -64
  152. package/src/skf-refine-architecture/steps-c/step-07-health-check.md +22 -0
  153. package/src/skf-rename-skill/SKILL.md +58 -0
  154. package/src/{workflows/rename-skill → skf-rename-skill}/steps-c/step-01-select.md +12 -73
  155. package/src/{workflows/rename-skill → skf-rename-skill}/steps-c/step-02-execute.md +32 -113
  156. package/src/skf-rename-skill/steps-c/step-03-report.md +83 -0
  157. package/src/skf-rename-skill/steps-c/step-04-health-check.md +22 -0
  158. package/src/skf-setup/SKILL.md +55 -0
  159. package/src/{workflows/setup-forge → skf-setup}/steps-c/step-01-detect-and-tier.md +6 -62
  160. package/src/{workflows/setup-forge → skf-setup}/steps-c/step-01b-ccc-index.md +9 -65
  161. package/src/{workflows/setup-forge → skf-setup}/steps-c/step-02-write-config.md +15 -60
  162. package/src/{workflows/setup-forge → skf-setup}/steps-c/step-03-auto-index.md +7 -66
  163. package/src/skf-setup/steps-c/step-04-report.md +92 -0
  164. package/src/skf-setup/steps-c/step-05-health-check.md +22 -0
  165. package/src/skf-test-skill/SKILL.md +59 -0
  166. package/src/skf-test-skill/references/migration-section-rules.md +114 -0
  167. package/src/skf-test-skill/references/scoring-rules.md +207 -0
  168. package/src/skf-test-skill/references/source-access-protocol.md +109 -0
  169. package/src/skf-test-skill/scripts/compute-score.py +310 -0
  170. package/src/skf-test-skill/steps-c/step-01-init.md +238 -0
  171. package/src/{workflows/test-skill → skf-test-skill}/steps-c/step-02-detect-mode.md +4 -62
  172. package/src/skf-test-skill/steps-c/step-03-coverage-check.md +347 -0
  173. package/src/skf-test-skill/steps-c/step-04-coherence-check.md +239 -0
  174. package/src/{workflows/test-skill → skf-test-skill}/steps-c/step-04b-external-validators.md +42 -77
  175. package/src/skf-test-skill/steps-c/step-05-score.md +266 -0
  176. package/src/skf-test-skill/steps-c/step-06-report.md +290 -0
  177. package/src/skf-test-skill/steps-c/step-07-health-check.md +25 -0
  178. package/src/skf-test-skill/templates/test-report-template.md +58 -0
  179. package/src/skf-update-skill/SKILL.md +58 -0
  180. package/src/{workflows/update-skill/data → skf-update-skill/references}/manual-section-rules.md +6 -6
  181. package/src/{workflows/update-skill/data → skf-update-skill/references}/merge-conflict-rules.md +5 -5
  182. package/src/skf-update-skill/references/remote-source-resolution.md +94 -0
  183. package/src/{workflows/update-skill → skf-update-skill}/steps-c/step-01-init.md +22 -69
  184. package/src/skf-update-skill/steps-c/step-02-detect-changes.md +255 -0
  185. package/src/skf-update-skill/steps-c/step-03-re-extract.md +336 -0
  186. package/src/{workflows/update-skill → skf-update-skill}/steps-c/step-04-merge.md +60 -72
  187. package/src/{workflows/update-skill → skf-update-skill}/steps-c/step-05-validate.md +5 -62
  188. package/src/skf-update-skill/steps-c/step-06-write.md +278 -0
  189. package/src/{workflows/update-skill → skf-update-skill}/steps-c/step-07-report.md +11 -66
  190. package/src/skf-update-skill/steps-c/step-08-health-check.md +22 -0
  191. package/src/skf-verify-stack/SKILL.md +60 -0
  192. package/src/skf-verify-stack/assets/feasibility-report-template.md +76 -0
  193. package/src/{workflows/verify-stack/data → skf-verify-stack/references}/coverage-patterns.md +12 -4
  194. package/src/skf-verify-stack/references/integration-verification-rules.md +78 -0
  195. package/src/skf-verify-stack/steps-c/step-01-init.md +178 -0
  196. package/src/{workflows/verify-stack → skf-verify-stack}/steps-c/step-02-coverage.md +27 -72
  197. package/src/skf-verify-stack/steps-c/step-03-integrations.md +179 -0
  198. package/src/{workflows/verify-stack → skf-verify-stack}/steps-c/step-04-requirements.md +14 -67
  199. package/src/skf-verify-stack/steps-c/step-05-synthesize.md +147 -0
  200. package/src/skf-verify-stack/steps-c/step-06-report.md +156 -0
  201. package/src/skf-verify-stack/steps-c/step-07-health-check.md +25 -0
  202. package/tools/cli/commands/install.js +1 -1
  203. package/tools/cli/commands/status.js +21 -23
  204. package/tools/cli/commands/uninstall.js +11 -19
  205. package/tools/cli/commands/update.js +2 -2
  206. package/tools/cli/lib/ide-skills.js +216 -0
  207. package/tools/cli/lib/installer.js +29 -52
  208. package/tools/cli/lib/manifest.js +11 -5
  209. package/tools/cli/lib/platform-codes.yaml +223 -0
  210. package/tools/cli/lib/ui.js +76 -47
  211. package/tools/validate-docs-drift.js +193 -0
  212. package/src/agents/forger.agent.yaml +0 -114
  213. package/src/workflows/README.md +0 -174
  214. package/src/workflows/analyze-source/data/skill-brief-schema.md +0 -125
  215. package/src/workflows/analyze-source/data/unit-detection-heuristics.md +0 -124
  216. package/src/workflows/analyze-source/workflow.md +0 -61
  217. package/src/workflows/audit-skill/workflow.md +0 -64
  218. package/src/workflows/brief-skill/data/skill-brief-schema.md +0 -159
  219. package/src/workflows/brief-skill/workflow.md +0 -58
  220. package/src/workflows/create-skill/data/source-resolution-protocols.md +0 -200
  221. package/src/workflows/create-skill/steps-c/step-03-extract.md +0 -301
  222. package/src/workflows/create-skill/steps-c/step-03b-fetch-temporal.md +0 -253
  223. package/src/workflows/create-skill/steps-c/step-06-validate.md +0 -254
  224. package/src/workflows/create-skill/steps-c/step-08-report.md +0 -176
  225. package/src/workflows/create-skill/workflow.md +0 -53
  226. package/src/workflows/create-stack-skill/steps-c/step-05-detect-integrations.md +0 -196
  227. package/src/workflows/create-stack-skill/steps-c/step-07-generate-output.md +0 -270
  228. package/src/workflows/create-stack-skill/steps-c/step-09-report.md +0 -145
  229. package/src/workflows/create-stack-skill/workflow.md +0 -59
  230. package/src/workflows/drop-skill/steps-c/step-03-report.md +0 -135
  231. package/src/workflows/drop-skill/workflow.md +0 -63
  232. package/src/workflows/export-skill/data/managed-section-format.md +0 -103
  233. package/src/workflows/export-skill/steps-c/step-01-load-skill.md +0 -237
  234. package/src/workflows/export-skill/workflow.md +0 -58
  235. package/src/workflows/quick-skill/steps-c/step-06-write.md +0 -179
  236. package/src/workflows/quick-skill/workflow.md +0 -58
  237. package/src/workflows/refine-architecture/workflow.md +0 -61
  238. package/src/workflows/rename-skill/steps-c/step-03-report.md +0 -132
  239. package/src/workflows/rename-skill/workflow.md +0 -64
  240. package/src/workflows/setup-forge/steps-c/step-04-report.md +0 -156
  241. package/src/workflows/setup-forge/workflow.md +0 -51
  242. package/src/workflows/test-skill/data/scoring-rules.md +0 -123
  243. package/src/workflows/test-skill/data/source-access-protocol.md +0 -51
  244. package/src/workflows/test-skill/steps-c/step-01-init.md +0 -217
  245. package/src/workflows/test-skill/steps-c/step-03-coverage-check.md +0 -280
  246. package/src/workflows/test-skill/steps-c/step-04-coherence-check.md +0 -271
  247. package/src/workflows/test-skill/steps-c/step-05-score.md +0 -222
  248. package/src/workflows/test-skill/steps-c/step-06-report.md +0 -207
  249. package/src/workflows/test-skill/templates/test-report-template.md +0 -28
  250. package/src/workflows/test-skill/workflow.md +0 -57
  251. package/src/workflows/update-skill/data/remote-source-resolution.md +0 -57
  252. package/src/workflows/update-skill/steps-c/step-02-detect-changes.md +0 -221
  253. package/src/workflows/update-skill/steps-c/step-03-re-extract.md +0 -256
  254. package/src/workflows/update-skill/steps-c/step-06-write.md +0 -265
  255. package/src/workflows/update-skill/workflow.md +0 -56
  256. package/src/workflows/verify-stack/data/feasibility-report-template.md +0 -63
  257. package/src/workflows/verify-stack/data/integration-verification-rules.md +0 -73
  258. package/src/workflows/verify-stack/steps-c/step-01-init.md +0 -179
  259. package/src/workflows/verify-stack/steps-c/step-03-integrations.md +0 -195
  260. package/src/workflows/verify-stack/steps-c/step-05-synthesize.md +0 -191
  261. package/src/workflows/verify-stack/steps-c/step-06-report.md +0 -197
  262. package/src/workflows/verify-stack/workflow.md +0 -61
  263. package/tools/cli/lib/compiler.js +0 -306
  264. package/tools/cli/lib/ide-commands.js +0 -244
  265. /package/src/{workflows/analyze-source → skf-analyze-source}/templates/analysis-report-template.md +0 -0
  266. /package/src/{workflows/quick-skill/data → skf-quick-skill/assets}/skill-template.md +0 -0
  267. /package/src/{workflows/setup-forge/data → skf-setup/references}/tier-rules.md +0 -0
  268. /package/src/{workflows/test-skill/data → skf-test-skill/assets}/output-section-formats.md +0 -0
@@ -1,9 +1,6 @@
1
1
  ---
2
- name: 'step-04-compile'
3
- description: 'Assemble best-effort SKILL.md, context-snippet.md, and metadata.json from extraction inventory'
4
-
5
2
  nextStepFile: './step-05-validate.md'
6
- skillTemplateData: '../data/skill-template.md'
3
+ skillTemplateData: 'assets/skill-template.md'
7
4
  ---
8
5
 
9
6
  # Step 4: Compile
@@ -12,43 +9,11 @@ skillTemplateData: '../data/skill-template.md'
12
9
 
13
10
  To assemble the best-effort SKILL.md document, context-snippet.md in Vercel-aligned indexed format, and metadata.json with `source_authority: community` from the extraction inventory. Present compiled output for review before validation.
14
11
 
15
- ## MANDATORY EXECUTION RULES (READ FIRST):
16
-
17
- ### Universal Rules:
18
-
19
- - 🛑 NEVER generate content without user input
20
- - 📖 CRITICAL: Read the complete step file before taking any action
21
- - 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read
22
- - 📋 YOU ARE A FACILITATOR, not a content generator
23
- - ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
24
-
25
- ### Role Reinforcement:
26
-
27
- - ✅ You are a rapid skill compiler assembling output documents
28
- - ✅ If you already have been given a name, communication_style and identity, continue to use those while playing this new role
29
- - ✅ Best-effort quality — populate what's available, mark gaps honestly
30
- - ✅ Follow template structure exactly from {skillTemplateData}
31
-
32
- ### Step-Specific Rules:
33
-
34
- - 🎯 Focus only on assembling the three output documents
35
- - 🚫 FORBIDDEN to write files to disk — that's step-06
36
- - 💬 Approach: Load template, populate from inventory, present for review
37
- - 📋 Mark any sections with insufficient data as best-effort
38
-
39
- ## EXECUTION PROTOCOLS:
40
-
41
- - 🎯 Follow the MANDATORY SEQUENCE exactly
42
- - 💾 Set state: skill_content, context_snippet, metadata_json
43
- - 📖 Load {skillTemplateData} for section structure and format specs
44
- - 🚫 Do not write files — only assemble content in memory
12
+ ## Rules
45
13
 
46
- ## CONTEXT BOUNDARIES:
47
-
48
- - Previous step provided: extraction_inventory (exports, description, manifest_data, confidence)
49
- - Also available: resolved_url, repo_name, language, scope_hint
50
- - Focus: compilation and assembly only
51
- - This step presents output for review — user gets a checkpoint before validation
14
+ - Focus only on assembling the three output documents — do not write files to disk (that's step-06)
15
+ - Follow template structure exactly from {skillTemplateData}
16
+ - Mark any sections with insufficient data as best-effort
52
17
 
53
18
  ## MANDATORY SEQUENCE
54
19
 
@@ -203,6 +168,7 @@ Display: **Select:** [C] Continue to Validation
203
168
  #### EXECUTION RULES:
204
169
 
205
170
  - ALWAYS halt and wait for user input after presenting compiled output
171
+ - **GATE [default: C]** — If `{headless_mode}`: auto-proceed with [C] Continue, log: "headless: auto-approve compiled output"
206
172
  - ONLY proceed to validation when user selects 'C'
207
173
  - User can request changes to the compiled output before proceeding
208
174
 
@@ -210,23 +176,3 @@ Display: **Select:** [C] Continue to Validation
210
176
 
211
177
  ONLY WHEN the user reviews the compiled output and selects 'C' will you load and read fully `{nextStepFile}` to execute validation.
212
178
 
213
- ---
214
-
215
- ## 🚨 SYSTEM SUCCESS/FAILURE METRICS
216
-
217
- ### ✅ SUCCESS:
218
-
219
- - SKILL.md assembled with all available sections populated
220
- - context-snippet.md generated in correct Vercel-aligned indexed format
221
- - metadata.json generated with source_authority: community
222
- - Compiled output presented for user review
223
- - User confirms readiness before proceeding to validation
224
-
225
- ### ❌ SYSTEM FAILURE:
226
-
227
- - Writing files to disk (that's step-06)
228
- - Skipping the review checkpoint
229
- - Not following template structure from {skillTemplateData}
230
- - Hallucinating exports or data not in extraction_inventory
231
-
232
- **Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.
@@ -1,73 +1,78 @@
1
1
  ---
2
- name: 'step-05-validate'
3
- description: 'Validate compiled SKILL.md, context-snippet, and metadata against agentskills.io spec'
4
-
5
2
  nextStepFile: './step-06-write.md'
6
3
  ---
7
4
 
8
- # Step 5: Validate
5
+ # Step 5: Write & Validate
9
6
 
10
7
  ## STEP GOAL:
11
8
 
12
- To validate the compiled SKILL.md, context-snippet.md, and metadata.json against the agentskills.io specification at community tier. Report any gaps or issues. This is advisory validation — issues are reported but do not block output.
9
+ To write the compiled SKILL.md, context-snippet.md, and metadata.json to the versioned skill package, then validate them on disk against the agentskills.io specification at community tier. Writing happens here (before step-06 finalization) because `skill-check` is a file-based CLI — it reads artifacts from disk — so the files must exist before validation runs. Report any gaps or issues. Validation is advisory — issues are reported but do not block the workflow.
10
+
11
+ ## Rules
12
+
13
+ - Write exactly what was compiled — do not modify content during writing
14
+ - Validation is advisory — report issues but never block output
15
+ - Do not modify compiled content post-validation — report only
16
+ - Community-tier validation (lighter than official requirements)
17
+
18
+ ## MANDATORY SEQUENCE
13
19
 
14
- ## MANDATORY EXECUTION RULES (READ FIRST):
20
+ **CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change.
15
21
 
16
- ### Universal Rules:
22
+ ### 1. Create Output Directory
17
23
 
18
- - 🛑 NEVER generate content without user input
19
- - 📖 CRITICAL: Read the complete step file before taking any action
20
- - 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read
21
- - 📋 YOU ARE A FACILITATOR, not a content generator
22
- - ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
24
+ Resolve `{version}` from the extraction inventory's detected version, defaulting to `1.0.0` if not detected. Create the skill output directories:
23
25
 
24
- ### Role Reinforcement:
26
+ ```
27
+ {skill_group} # {skills_output_folder}/{repo_name}/
28
+ {skill_package} # {skills_output_folder}/{repo_name}/{version}/{repo_name}/
29
+ ```
25
30
 
26
- - You are a rapid skill compiler performing quality checks
27
- - ✅ If you already have been given a name, communication_style and identity, continue to use those while playing this new role
28
- - ✅ Community-tier validation — lighter than official requirements
29
- - ✅ Report issues honestly but don't block output
31
+ If `{skill_package}` already exists, confirm with user before overwriting:
30
32
 
31
- ### Step-Specific Rules:
33
+ "**Directory `{skill_package}` already exists.** Overwrite will replace the prior compiled output; validation results, result contracts, and any manual tweaks from the previous run will not be preserved. Overwrite existing files? [Y/N]"
32
34
 
33
- - 🎯 Focus only on validating the compiled output
34
- - 🚫 FORBIDDEN to modify the compiled content report issues only
35
- - 💬 Approach: Check each requirement, report findings, proceed
36
- - 📋 Validation failures are advisory — user can proceed regardless
35
+ - **If user selects Y:** Proceed to section 2.
36
+ - **If user selects N:** Halt with: "Overwrite cancelled. Existing skill preserved. Run [QS] with a different skill name or remove the existing directory manually."
37
37
 
38
- ## EXECUTION PROTOCOLS:
38
+ **GATE [default: Y]** — If `{headless_mode}` is true, auto-proceed with Y and log: "headless: overwriting existing `{skill_package}`".
39
39
 
40
- - 🎯 Follow the MANDATORY SEQUENCE exactly
41
- - 💾 Set state: validation_result (pass/fail, issues_list)
42
- - 📖 Check against community-tier requirements
43
- - 🚫 Do not block output on validation issues
40
+ ### 2. Write Deliverables
44
41
 
45
- ## CONTEXT BOUNDARIES:
42
+ Write the three compiled artifacts to the skill package so that validation in sections 3–9 has files on disk to read:
46
43
 
47
- - Previous step provided: skill_content (SKILL.md), context_snippet, metadata_json
48
- - Focus: validation only, not modification
49
- - Community tier has lighter requirements than official
50
- - Dependencies: compiled output from step-04
44
+ **File 1:** `{skill_package}/SKILL.md` the compiled skill document
45
+ **File 2:** `{skill_package}/context-snippet.md` the compressed context snippet
46
+ **File 3:** `{skill_package}/metadata.json` the machine-readable metadata
51
47
 
52
- ## MANDATORY SEQUENCE
48
+ Confirm after each write: "Written: SKILL.md" / "Written: context-snippet.md" / "Written: metadata.json".
53
49
 
54
- **CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change.
50
+ **If any write fails HARD HALT:**
55
51
 
56
- ### 1. Check Tool Availability
52
+ "**Write failed:** Could not write to `{file_path}`.
53
+
54
+ Error: {error details}
55
+
56
+ Please check:
57
+ - Does the output directory exist and is it writable?
58
+ - Is there sufficient disk space?
59
+ - Are there permission issues?"
60
+
61
+ ### 3. Check Tool Availability
57
62
 
58
63
  Run: `npx skill-check -h`
59
64
 
60
- - If succeeds (returns usage information): Continue to automated validation (section 2)
61
- - If fails (command not found or error): Skip to manual fallback in section 2
65
+ - If succeeds (returns usage information): Continue to automated validation (section 4)
66
+ - If fails (command not found or error): Skip to manual fallback in section 4
62
67
 
63
68
  **Important:** Use the verification command. Do not assume availability — empirical check required.
64
69
 
65
- ### 2. Validate SKILL.md via skill-check (if available)
70
+ ### 4. Validate SKILL.md via skill-check (if available)
66
71
 
67
- **If `npx skill-check` is available**, run automated validation with auto-fix:
72
+ **If `npx skill-check` is available**, run automated validation with auto-fix against the skill package written in section 2:
68
73
 
69
74
  ```bash
70
- npx skill-check check <skill-dir> --fix --format json --no-security-scan
75
+ npx skill-check check {skill_package} --fix --format json --no-security-scan
71
76
  ```
72
77
 
73
78
  This validates frontmatter, description, body limits, links, and formatting — and auto-fixes deterministic issues (field ordering, slug format, required fields, trailing newlines).
@@ -89,7 +94,7 @@ Record quality score and any remaining diagnostics as validation issues.
89
94
 
90
95
  **For each violation, log an issue.** Missing frontmatter or missing required fields are high-severity issues — skills without valid frontmatter will fail `npx skills add` and `npx skill-check check`.
91
96
 
92
- ### 3. Validate SKILL.md Body Structure
97
+ ### 5. Validate SKILL.md Body Structure
93
98
 
94
99
  Check that SKILL.md has these required sections populated:
95
100
 
@@ -100,18 +105,18 @@ Check that SKILL.md has these required sections populated:
100
105
 
101
106
  **For each missing or empty required section, log an issue.**
102
107
 
103
- ### 4. Validate Context Snippet Format
108
+ ### 6. Validate Context Snippet Format
104
109
 
105
110
  Check context-snippet.md format compliance:
106
111
 
107
112
  - [ ] **Vercel-aligned indexed format** — pipe-delimited with version, retrieval instruction, section anchors
108
- - [ ] **First line** matches pattern: `[{name} v{version}]|root: {prefix}{name}/` where prefix is `skills/` or a platform root (`.claude/skills/`, `.cursor/skills/`, `.agents/skills/`)
113
+ - [ ] **First line** matches pattern: `[{name} v{version}]|root: {prefix}{name}/` where prefix is `skills/` (draft form) or any IDE skill root (`.{dir}/skills/`)
109
114
  - [ ] **Second line** starts with: `|IMPORTANT:`
110
115
  - [ ] **Approximate token count** is ~80-120 tokens
111
116
 
112
117
  **If format is wrong, log an issue.**
113
118
 
114
- ### 5. Validate Metadata JSON
119
+ ### 7. Validate Metadata JSON
115
120
 
116
121
  Check metadata.json has required fields:
117
122
 
@@ -131,12 +136,12 @@ Check metadata.json has required fields:
131
136
 
132
137
  **For each missing or invalid field, log an issue.**
133
138
 
134
- ### 6. Security Scan (if skill-check available)
139
+ ### 8. Security Scan (if skill-check available)
135
140
 
136
- Run security scan on the compiled skill:
141
+ Run security scan on the compiled skill package:
137
142
 
138
143
  ```bash
139
- npx skill-check check <skill-dir> --format json
144
+ npx skill-check check {skill_package} --format json
140
145
  ```
141
146
 
142
147
  (Security scan is enabled by default when `--no-security-scan` is omitted.)
@@ -145,7 +150,7 @@ Record any security findings as advisory warnings. Security issues do not block
145
150
 
146
151
  **If skill-check unavailable:** Skip with note in validation results.
147
152
 
148
- ### 7. Report Validation Results
153
+ ### 9. Report Validation Results
149
154
 
150
155
  "**Validation complete:**
151
156
 
@@ -165,13 +170,13 @@ Record any security findings as advisory warnings. Security issues do not block
165
170
  **Overall:** {pass / N issues found}
166
171
 
167
172
  {If issues found:}
168
- These issues are advisory for community-tier skills. You can proceed to write output or go back to adjust.
173
+ These issues are advisory for community-tier skills. You can proceed to finalize or go back to adjust.
169
174
 
170
- **Proceeding to write output...**"
175
+ **Proceeding to finalize...**"
171
176
 
172
177
  Set `validation_result` with pass/fail status, quality score, and issues list.
173
178
 
174
- ### 8. Auto-Proceed to Write
179
+ ### 10. Auto-Proceed to Finalize
175
180
 
176
181
  #### Menu Handling Logic:
177
182
 
@@ -180,34 +185,9 @@ Set `validation_result` with pass/fail status, quality score, and issues list.
180
185
  #### EXECUTION RULES:
181
186
 
182
187
  - This is an auto-proceed step — validation is advisory
183
- - Proceed directly to write step after reporting results
188
+ - Proceed directly to finalize step after reporting results
184
189
 
185
190
  ## CRITICAL STEP COMPLETION NOTE
186
191
 
187
- ONLY WHEN validation checks are complete and results reported will you load and read fully `{nextStepFile}` to execute file writing.
188
-
189
- ---
190
-
191
- ## 🚨 SYSTEM SUCCESS/FAILURE METRICS
192
-
193
- ### ✅ SUCCESS:
194
-
195
- - `npx skill-check check --fix --format json` executed if available (or manual fallback)
196
- - Quality score (0-100) captured when skill-check available
197
- - Auto-fix applied via `--fix` for deterministic issues
198
- - Security scan executed (or skipped with note)
199
- - All three outputs validated against requirements
200
- - Issues reported clearly with specific details
201
- - Community-tier validation applied (not official-tier strictness)
202
- - validation_result set with pass/fail, quality score, and issues list
203
- - Auto-proceeding to write step
204
-
205
- ### ❌ SYSTEM FAILURE:
206
-
207
- - Modifying compiled content instead of just reporting
208
- - Blocking output on validation issues (advisory only)
209
- - Skipping validation checks
210
- - Not reporting found issues
211
- - Not recording quality score when skill-check is available
192
+ ONLY WHEN deliverables have been written to `{skill_package}` and validation checks are complete and results reported will you load and read fully `{nextStepFile}` to execute finalization.
212
193
 
213
- **Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.
@@ -0,0 +1,73 @@
1
+ ---
2
+ nextStepFile: './step-07-health-check.md'
3
+ ---
4
+
5
+ # Step 6: Finalize
6
+
7
+ ## STEP GOAL:
8
+
9
+ To finalize the skill by creating the active-version pointer, displaying the completion summary, and writing the result contract. Deliverables (SKILL.md, context-snippet.md, metadata.json) were already written in step-05 so that validation could run against files on disk; this step only performs the post-write finalization.
10
+
11
+ ## Rules
12
+
13
+ - Do not rewrite deliverables — they were written and validated in step-05
14
+ - Create the active pointer via the shared helper — never `rm` + `ln -s` manually
15
+ - Result contract writing is mandatory (pipeline consumers depend on it)
16
+
17
+ ## MANDATORY SEQUENCE
18
+
19
+ **CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change.
20
+
21
+ ### 1. Create Active Pointer (atomic flip, Windows-safe)
22
+
23
+ `{skill_group}` and `{skill_package}` were computed in step-05 §1 from `{skills_output_folder}`, `{repo_name}`, and `{version}`; `{version}` was resolved from the extraction inventory. Reuse the same values here — do not recompute.
24
+
25
+ Create or update the `active` pointer at `{skill_group}/active` pointing to `{version}` using the shared atomic-flip helper. The helper acquires an `flock` on `{skill_group}/active.skf-lock`, refuses to replace a non-link at `{skill_group}/active` (protecting against accidental `rm -rf` of a real directory), and uses a rename-over-symlink pattern so the update is atomic from a concurrent reader's perspective. On Windows the helper automatically falls back to a directory junction (`mklink /J`) when `os.symlink` fails with `PRIVILEGE_NOT_HELD` / `ACCESS_DENIED` — junctions require no admin elevation and resolve identically for `skf-skill-inventory`'s consumers:
26
+
27
+ ```bash
28
+ python3 {project-root}/src/shared/scripts/skf-atomic-write.py flip-link \
29
+ --link {skill_group}/active \
30
+ --target {version}
31
+ ```
32
+
33
+ The helper returns non-zero (exit 2) if `{skill_group}/active` already exists as a real directory or file rather than a link — in that case, halt with: "Refusing to flip `{skill_group}/active` — existing path is not a symlink or junction. Investigate manually; expected a link pointing at a version directory." A common cause on Windows is a prior run that executed `ln -s` under git-bash without Developer Mode enabled, which silently wrote a full directory copy; remove that copy and retry.
34
+
35
+ **Never `rm` + `ln -s` the active pointer manually.** The bare-rm pattern has two failure modes: (1) a concurrent reader sees a missing `active` mid-flip, and (2) a bug or typo that replaces `{skill_group}/active` with a plain directory turns the next manual `rm -rf {skill_group}/active` into data loss. The helper encapsulates both guards and the Windows junction fallback.
36
+
37
+ Confirm: "Active pointer: {skill_group}/active -> {version} ({kind})" where `{kind}` is `symlink` or `junction` as returned by the helper.
38
+
39
+ ### 2. Display Completion Summary
40
+
41
+ "**Quick Skill complete.**
42
+
43
+ **Skill:** {repo_name} v{version}
44
+ **Language:** {language}
45
+ **Source:** {resolved_url}
46
+ **Authority:** community
47
+ **Confidence:** {extraction confidence}
48
+
49
+ **Files written:**
50
+ - `{skill_package}/SKILL.md`
51
+ - `{skill_package}/context-snippet.md`
52
+ - `{skill_package}/metadata.json`
53
+ - `{skill_group}/active` -> `{version}`
54
+
55
+ **Exports documented:** {count}
56
+ **Validation:** {pass / N issues (advisory)}
57
+
58
+ ---
59
+
60
+ **Recommended next steps:**
61
+
62
+ 1. **test-skill** (advisory) — Run cognitive completeness verification on the generated skill
63
+ 2. **export-skill** — Package and distribute the skill with platform-aware context injection
64
+
65
+ **Note:** This is a best-effort community skill. For deeper analysis with AST-verified exports and provenance tracking, use the full **create-skill** workflow with a skill brief."
66
+
67
+ ### 3. Result Contract
68
+
69
+ Write the result contract per `shared/references/output-contract-schema.md`: the per-run record at `{skill_package}/quick-skill-result-{YYYYMMDD-HHmmss}.json` (UTC timestamp, resolution to seconds) and a copy at `{skill_package}/quick-skill-result-latest.json` (stable path for pipeline consumers — copy, not symlink). Include `SKILL.md`, `context-snippet.md`, and `metadata.json` paths in `outputs` and export count in `summary`.
70
+
71
+ ### 4. Chain to Health Check
72
+
73
+ ONLY WHEN the active pointer has been created and the completion summary and result contract have been written will you then load, read the full file, and execute `{nextStepFile}`. The health-check step is the true terminal step — do not stop here even though the summary reads as final.
@@ -0,0 +1,22 @@
1
+ ---
2
+ # `shared/health-check.md` resolves relative to the SKF module root
3
+ # (`_bmad/skf/` when installed, `src/` during development), NOT relative
4
+ # to this step file.
5
+ nextStepFile: 'shared/health-check.md'
6
+ ---
7
+
8
+ # Step 7: Workflow Health Check
9
+
10
+ ## STEP GOAL:
11
+
12
+ Chain to the shared workflow self-improvement health check at `{nextStepFile}`. This is the terminal step of quick-skill — after the shared health check completes, the workflow is fully done.
13
+
14
+ ## Rules
15
+
16
+ - No user-facing reports, file writes, or result contracts in this step — those belong in step-06
17
+ - Delegate directly to `{nextStepFile}` with no additional commentary
18
+ - Do not attempt any other action between loading this step and executing `{nextStepFile}`
19
+
20
+ ## MANDATORY SEQUENCE
21
+
22
+ Load `{nextStepFile}`, read it fully, then execute it.
@@ -0,0 +1,57 @@
1
+ ---
2
+ name: skf-refine-architecture
3
+ description: Improve architecture doc using verified skill data and VS feasibility findings. Use when the user requests to "refine skill architecture" or "improve architecture doc."
4
+ ---
5
+
6
+ # Refine Architecture
7
+
8
+ ## Overview
9
+
10
+ Takes an original architecture document + generated skills + optional VS feasibility report, and produces a refined architecture with gaps filled, issues flagged, and improvements suggested — all backed by specific API evidence from the generated skills. This workflow enhances the original architecture — it never deletes original content, only adds annotations, subsections, and suggestions.
11
+
12
+ ## Role
13
+
14
+ You are an architecture refinement analyst operating in Ferris Architect mode. You bring expertise in API surface analysis, integration gap detection, and evidence-backed architecture improvement, while the user brings their architecture vision and generated skills. Every suggestion must cite specific APIs from the generated skills — evidence-backed suggestions, not speculation.
15
+
16
+ ## Workflow Rules
17
+
18
+ These rules apply to every step in this workflow:
19
+
20
+ - Never speculate — every gap, issue, or improvement must cite specific APIs, types, or function signatures from the generated skills
21
+ - Read each step file completely before taking any action
22
+ - Follow the mandatory sequence in each step exactly — do not skip, reorder, or optimize
23
+ - Only load one step file at a time — never preload future steps
24
+ - If any instruction references a subprocess or tool you lack, achieve the outcome in your main context thread
25
+ - Always communicate in `{communication_language}`
26
+ - If `{headless_mode}` is true, auto-proceed through confirmation gates with their default action and log each auto-decision
27
+
28
+ ## Stages
29
+
30
+ | # | Step | File | Auto-proceed |
31
+ |---|------|------|--------------|
32
+ | 1 | Initialize & Load Inputs | steps-c/step-01-init.md | No (confirm) |
33
+ | 2 | Gap Analysis | steps-c/step-02-gap-analysis.md | Yes |
34
+ | 3 | Issue Detection | steps-c/step-03-issue-detection.md | Yes |
35
+ | 4 | Improvements | steps-c/step-04-improvements.md | Yes |
36
+ | 5 | Compile Refined Architecture | steps-c/step-05-compile.md | No (review) |
37
+ | 6 | Report | steps-c/step-06-report.md | Yes |
38
+ | 7 | Workflow Health Check | steps-c/step-07-health-check.md | Yes |
39
+
40
+ ## Invocation Contract
41
+
42
+ | Aspect | Detail |
43
+ |--------|--------|
44
+ | **Inputs** | architecture_doc_path [required] |
45
+ | **Gates** | step-01: Input Gate [use args] | step-05: Review Gate [C] |
46
+ | **Outputs** | refined-architecture-{project_name}.md |
47
+ | **Headless** | All gates auto-resolve with default action when `{headless_mode}` is true |
48
+
49
+ ## On Activation
50
+
51
+ 1. Load config from `{project-root}/_bmad/skf/config.yaml` and resolve:
52
+ - `project_name`, `user_name`, `communication_language`, `document_output_language`
53
+ - `skills_output_folder`, `forge_data_folder`, `output_folder`
54
+
55
+ 2. **Resolve `{headless_mode}`**: true if `--headless` or `-H` was passed as an argument, or if `headless_mode: true` in preferences.yaml. Default: false.
56
+
57
+ 3. Load, read the full file, and then execute `./steps-c/step-01-init.md` to begin the workflow.
@@ -19,11 +19,11 @@ Gaps are undocumented integration paths — library pairs that have compatible A
19
19
 
20
20
  ### Gap Classification
21
21
 
22
- | Gap Type | Description | Example |
23
- |----------|-------------|---------|
24
- | **Missing Integration Path** | Two libraries can connect but the architecture never describes how | Skill A exports JSON producer, Skill B accepts JSON input, no mention of A-to-B flow |
25
- | **Undocumented Data Flow** | Data moves between libraries but the flow is not described | Architecture mentions both libraries but not their data exchange mechanism |
26
- | **Absent Bridge Layer** | Cross-language or cross-protocol libraries need a bridge not mentioned | Rust library and TypeScript library with no IPC/FFI description |
22
+ | Gap Type | Description | Example |
23
+ |------------------------------|------------------------------------------------------------------------|--------------------------------------------------------------------------------------|
24
+ | **Missing Integration Path** | Two libraries can connect but the architecture never describes how | Skill A exports JSON producer, Skill B accepts JSON input, no mention of A-to-B flow |
25
+ | **Undocumented Data Flow** | Data moves between libraries but the flow is not described | Architecture mentions both libraries but not their data exchange mechanism |
26
+ | **Absent Bridge Layer** | Cross-language or cross-protocol libraries need a bridge not mentioned | Rust library and TypeScript library with no IPC/FFI description |
27
27
 
28
28
  ---
29
29
 
@@ -39,12 +39,12 @@ Issues are contradictions between architecture claims and verified API reality f
39
39
 
40
40
  ### Issue Classification
41
41
 
42
- | Issue Type | Description | Example |
43
- |------------|-------------|---------|
44
- | **API Mismatch** | Architecture describes an API that does not exist in the skill | "Library X exposes a streaming API" but skill shows only batch APIs |
45
- | **Protocol Contradiction** | Architecture assumes a protocol the library does not support | "Communicates via gRPC" but skill shows HTTP-only exports |
46
- | **Language Boundary Ignored** | Architecture assumes direct calls across language boundaries | "Calls Rust functions from TypeScript" with no FFI/IPC mechanism described |
47
- | **Type Incompatibility** | Architecture assumes type compatibility that does not hold | "Passes CRDT documents directly" but types are incompatible across libraries |
42
+ | Issue Type | Description | Example |
43
+ |-------------------------------|----------------------------------------------------------------|------------------------------------------------------------------------------|
44
+ | **API Mismatch** | Architecture describes an API that does not exist in the skill | "Library X exposes a streaming API" but skill shows only batch APIs |
45
+ | **Protocol Contradiction** | Architecture assumes a protocol the library does not support | "Communicates via gRPC" but skill shows HTTP-only exports |
46
+ | **Language Boundary Ignored** | Architecture assumes direct calls across language boundaries | "Calls Rust functions from TypeScript" with no FFI/IPC mechanism described |
47
+ | **Type Incompatibility** | Architecture assumes type compatibility that does not hold | "Passes CRDT documents directly" but types are incompatible across libraries |
48
48
 
49
49
  ### VS Report Integration
50
50
 
@@ -67,11 +67,11 @@ Improvements are capability expansions — library features documented in skills
67
67
 
68
68
  ### Improvement Classification
69
69
 
70
- | Improvement Type | Description | Example |
71
- |------------------|-------------|---------|
72
- | **Unused Capability** | Library has a feature the architecture does not mention | "Loro supports document CRDTs but architecture only uses data sync" |
73
- | **Cross-Library Synergy** | Two libraries have complementary features not combined in architecture | "Library A's event system could feed Library B's stream processor" |
74
- | **Alternative Pattern** | Skill documents a better pattern than the one described in architecture | "Skill shows batch API is more efficient than the per-item approach described" |
70
+ | Improvement Type | Description | Example |
71
+ |---------------------------|-------------------------------------------------------------------------|--------------------------------------------------------------------------------|
72
+ | **Unused Capability** | Library has a feature the architecture does not mention | "Loro supports document CRDTs but architecture only uses data sync" |
73
+ | **Cross-Library Synergy** | Two libraries have complementary features not combined in architecture | "Library A's event system could feed Library B's stream processor" |
74
+ | **Alternative Pattern** | Skill documents a better pattern than the one described in architecture | "Skill shows batch API is more efficient than the per-item approach described" |
75
75
 
76
76
  ---
77
77
 
@@ -1,9 +1,6 @@
1
1
  ---
2
- name: 'step-01-init'
3
- description: 'Load architecture doc, scan skills folder, load optional VS report, validate inputs'
4
-
5
2
  nextStepFile: './step-02-gap-analysis.md'
6
- refinementRulesData: '../data/refinement-rules.md'
3
+ refinementRulesData: 'references/refinement-rules.md'
7
4
  ---
8
5
 
9
6
  # Step 1: Initialize Refinement
@@ -12,41 +9,10 @@ refinementRulesData: '../data/refinement-rules.md'
12
9
 
13
10
  Load the architecture document (required), scan the skills folder to build a skill inventory with metadata, load the optional VS feasibility report for context, validate that all inputs exist and meet minimum requirements, and present an initialization summary before auto-proceeding.
14
11
 
15
- ## MANDATORY EXECUTION RULES (READ FIRST):
16
-
17
- ### Universal Rules:
18
-
19
- - 📖 CRITICAL: Read the complete step file before taking any action
20
- - ⚙️ TOOL/SUBPROCESS FALLBACK: If any instruction references a subprocess, subagent, or tool you do not have access to, you MUST still achieve the outcome in your main context thread
21
- - ✅ YOU MUST ALWAYS SPEAK OUTPUT in your Agent communication style with the config `{communication_language}`
22
-
23
- ### Role Reinforcement:
24
-
25
- - ✅ You are an architecture refinement analyst operating in Ferris Architect mode
26
- - ✅ Execute with analytical precision — every loaded skill must be validated against actual files
27
- - ✅ You enforce the zero-hallucination principle: only report skills that physically exist on disk
28
-
29
- ### Step-Specific Rules:
30
-
31
- - 🎯 Focus ONLY on loading inputs, scanning skills, and validating prerequisites
32
- - 🚫 FORBIDDEN to perform any gap analysis, issue detection, or improvement suggestions
33
- - 🚫 No A/P menu — this is an auto-proceed init step
34
- - 💬 Present a clear initialization summary so downstream steps have validated inputs
35
-
36
- ## EXECUTION PROTOCOLS:
37
-
38
- - Collect and validate all input documents and skill artifacts
39
- - Load refinement rules from {refinementRulesData} for downstream step reference
40
- - Auto-proceed to next step after successful initialization
41
- - HALT with actionable error if minimum requirements not met
12
+ ## Rules
42
13
 
43
- ## CONTEXT BOUNDARIES:
44
-
45
- - This is the first step — no prior workflow state exists
46
- - Requires skills to have been generated by create-skill or quick-skill workflows
47
- - User provides architecture document path (required) and optional VS report path
48
- - No dependency on forge-tier — this workflow operates on skill content only
49
- - Requires `forge_data_folder` from config.yaml for durability state (directory is created automatically if missing)
14
+ - Focus only on loading inputs, scanning skills, and validating prerequisites — do not perform analysis
15
+ - Present a clear initialization summary so downstream steps have validated inputs
50
16
 
51
17
  ## MANDATORY SEQUENCE
52
18
 
@@ -60,7 +26,7 @@ Please provide the following:
60
26
  1. **Architecture document path** (REQUIRED) — your project's architecture doc to refine
61
27
  2. **VS feasibility report path** (OPTIONAL) — from a previous [VS] Verify Stack run, for additional context"
62
28
 
63
- Wait for user input. Store the validated architecture document path as `architecture_doc`.
29
+ Wait for user input. Store the validated architecture document path as `architecture_doc`. **GATE [default: use args]** — If `{headless_mode}` and architecture doc path was provided as argument: use that path and auto-proceed, log: "headless: using provided architecture path".
64
30
 
65
31
  **Validate architecture document:**
66
32
  - Confirm the file exists and is readable
@@ -74,7 +40,7 @@ Wait for user input. Store the validated architecture document path as `architec
74
40
 
75
41
  ### 2. Scan Skills Folder
76
42
 
77
- Read the `{skills_output_folder}` directory. Skills use a version-nested directory structure (see [knowledge/version-paths.md](../../../knowledge/version-paths.md)).
43
+ Read the `{skills_output_folder}` directory. Skills use a version-nested directory structure (see `knowledge/version-paths.md`).
78
44
 
79
45
  **Version-aware skill discovery:**
80
46
  1. Read `{skills_output_folder}/.export-manifest.json` if it exists. For each skill in `exports`, use `active_version` to resolve `{skill_package}` = `{skills_output_folder}/{skill-name}/{active_version}/{skill-name}/`
@@ -168,26 +134,3 @@ Extract: gap detection rules, issue detection rules, improvement detection rules
168
134
 
169
135
  Load, read the full file and then execute `{nextStepFile}`.
170
136
 
171
- ---
172
-
173
- ## 🚨 SYSTEM SUCCESS/FAILURE METRICS
174
-
175
- ### ✅ SUCCESS:
176
-
177
- - Architecture document loaded and validated
178
- - VS report loaded or absence recorded
179
- - Skills folder scanned with SKILL.md and metadata.json validation per skill
180
- - At least 1 valid skill in inventory
181
- - Refinement rules loaded from {refinementRulesData}
182
- - Initialization summary displayed with skill inventory table
183
- - Auto-proceeded to step 02
184
-
185
- ### ❌ SYSTEM FAILURE:
186
-
187
- - Proceeding with no valid skills
188
- - Proceeding without a valid architecture document
189
- - Not validating SKILL.md and metadata.json existence per skill directory
190
- - Performing gap analysis, issue detection, or improvement suggestions in this step
191
- - Hardcoded paths instead of frontmatter variables
192
-
193
- **Master Rule:** This step validates inputs and initializes state. No analysis, no comparison, no refinement suggestions.