bmad-module-skill-forge 0.10.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/shared/health-check.md +372 -0
  38. package/src/shared/references/feasibility-report-schema.md +86 -0
  39. package/src/shared/references/headless-gate-convention.md +62 -0
  40. package/src/shared/references/output-contract-schema.md +35 -0
  41. package/src/shared/references/pipeline-contracts.md +102 -0
  42. package/src/shared/scripts/skf-atomic-write.py +370 -0
  43. package/src/shared/scripts/skf-manifest-ops.py +236 -0
  44. package/src/shared/scripts/skf-preflight.py +164 -0
  45. package/src/shared/scripts/skf-rebuild-managed-sections.py +201 -0
  46. package/src/shared/scripts/skf-severity-classify.py +163 -0
  47. package/src/shared/scripts/skf-skill-inventory.py +210 -0
  48. package/src/shared/scripts/skf-structural-diff.py +257 -0
  49. package/src/shared/scripts/skf-validate-frontmatter.py +318 -0
  50. package/src/shared/scripts/skf-validate-output.py +247 -0
  51. package/src/skf-analyze-source/SKILL.md +57 -0
  52. package/src/skf-analyze-source/assets/skill-brief-schema.md +125 -0
  53. package/src/skf-analyze-source/references/unit-detection-heuristics.md +124 -0
  54. package/src/{workflows/analyze-source → skf-analyze-source}/steps-c/step-01-init.md +6 -66
  55. package/src/{workflows/analyze-source → skf-analyze-source}/steps-c/step-01b-continue.md +4 -59
  56. package/src/{workflows/analyze-source → skf-analyze-source}/steps-c/step-02-scan-project.md +7 -68
  57. package/src/{workflows/analyze-source → skf-analyze-source}/steps-c/step-03-identify-units.md +6 -66
  58. package/src/{workflows/analyze-source → skf-analyze-source}/steps-c/step-04-map-and-detect.md +7 -68
  59. package/src/{workflows/analyze-source → skf-analyze-source}/steps-c/step-05-recommend.md +6 -66
  60. package/src/{workflows/analyze-source → skf-analyze-source}/steps-c/step-06-generate-briefs.md +14 -71
  61. package/src/skf-analyze-source/steps-c/step-07-health-check.md +22 -0
  62. package/src/skf-audit-skill/SKILL.md +59 -0
  63. package/src/{workflows/audit-skill/data → skf-audit-skill/assets}/drift-report-template.md +7 -7
  64. package/src/{workflows/audit-skill/data → skf-audit-skill/references}/severity-rules.md +11 -11
  65. package/src/{workflows/audit-skill → skf-audit-skill}/steps-c/step-01-init.md +24 -68
  66. package/src/{workflows/audit-skill → skf-audit-skill}/steps-c/step-02-re-index.md +36 -71
  67. package/src/{workflows/audit-skill → skf-audit-skill}/steps-c/step-03-structural-diff.md +21 -63
  68. package/src/{workflows/audit-skill → skf-audit-skill}/steps-c/step-04-semantic-diff.md +6 -65
  69. package/src/{workflows/audit-skill → skf-audit-skill}/steps-c/step-05-severity-classify.md +5 -63
  70. package/src/{workflows/audit-skill → skf-audit-skill}/steps-c/step-06-report.md +10 -64
  71. package/src/skf-audit-skill/steps-c/step-07-health-check.md +22 -0
  72. package/src/skf-brief-skill/SKILL.md +53 -0
  73. package/src/{workflows/brief-skill/data → skf-brief-skill/assets}/scope-templates.md +23 -0
  74. package/src/skf-brief-skill/assets/skill-brief-schema.md +206 -0
  75. package/src/{workflows/brief-skill → skf-brief-skill}/steps-c/step-01-gather-intent.md +6 -67
  76. package/src/{workflows/brief-skill → skf-brief-skill}/steps-c/step-02-analyze-target.md +6 -66
  77. package/src/{workflows/brief-skill → skf-brief-skill}/steps-c/step-03-scope-definition.md +12 -68
  78. package/src/{workflows/brief-skill → skf-brief-skill}/steps-c/step-04-confirm-brief.md +5 -63
  79. package/src/{workflows/brief-skill → skf-brief-skill}/steps-c/step-05-write-brief.md +10 -70
  80. package/src/skf-brief-skill/steps-c/step-06-health-check.md +22 -0
  81. package/src/skf-create-skill/SKILL.md +63 -0
  82. package/src/{workflows/create-skill/data → skf-create-skill/assets}/compile-assembly-rules.md +60 -0
  83. package/src/{workflows/create-skill/data → skf-create-skill/assets}/skill-sections.md +92 -23
  84. package/src/skf-create-skill/assets/tessl-dismissal-rules.md +102 -0
  85. package/src/{workflows/create-skill/data → skf-create-skill/references}/extraction-patterns-tracing.md +13 -13
  86. package/src/{workflows/create-skill/data → skf-create-skill/references}/extraction-patterns.md +8 -3
  87. package/src/skf-create-skill/references/source-resolution-protocols.md +239 -0
  88. package/src/{workflows/create-skill/data → skf-create-skill/references}/tier-degradation-rules.md +8 -7
  89. package/src/{workflows/create-skill → skf-create-skill}/steps-c/step-01-load-brief.md +25 -63
  90. package/src/{workflows/create-skill → skf-create-skill}/steps-c/step-02-ecosystem-check.md +8 -64
  91. package/src/skf-create-skill/steps-c/step-03-extract.md +379 -0
  92. package/src/{workflows/create-skill → skf-create-skill}/steps-c/step-03d-component-extraction.md +18 -35
  93. package/src/{workflows/create-skill → skf-create-skill}/steps-c/step-04-enrich.md +12 -69
  94. package/src/{workflows/create-skill → skf-create-skill}/steps-c/step-05-compile.md +71 -75
  95. package/src/skf-create-skill/steps-c/step-06-validate.md +267 -0
  96. package/src/{workflows/create-skill → skf-create-skill}/steps-c/step-07-generate-artifacts.md +30 -74
  97. package/src/skf-create-skill/steps-c/step-08-report.md +145 -0
  98. package/src/skf-create-skill/steps-c/step-09-health-check.md +23 -0
  99. package/src/{workflows/create-skill/steps-c → skf-create-skill/steps-c/sub}/step-02b-ccc-discover.md +8 -66
  100. package/src/skf-create-skill/steps-c/sub/step-03b-fetch-temporal.md +229 -0
  101. package/src/{workflows/create-skill/steps-c → skf-create-skill/steps-c/sub}/step-03c-fetch-docs.md +18 -42
  102. package/src/skf-create-stack-skill/SKILL.md +64 -0
  103. package/src/{workflows/create-stack-skill/data → skf-create-stack-skill/assets}/stack-skill-template.md +2 -1
  104. package/src/{workflows/create-stack-skill/data → skf-create-stack-skill/references}/compose-mode-rules.md +19 -5
  105. package/src/{workflows/create-stack-skill/data → skf-create-stack-skill/references}/integration-patterns.md +1 -1
  106. package/src/{workflows/create-stack-skill/data → skf-create-stack-skill/references}/manifest-patterns.md +10 -10
  107. package/src/{workflows/create-stack-skill → skf-create-stack-skill}/steps-c/step-01-init.md +14 -55
  108. package/src/{workflows/create-stack-skill → skf-create-stack-skill}/steps-c/step-02-detect-manifests.md +29 -63
  109. package/src/{workflows/create-stack-skill → skf-create-stack-skill}/steps-c/step-03-rank-and-confirm.md +9 -59
  110. package/src/{workflows/create-stack-skill → skf-create-stack-skill}/steps-c/step-04-parallel-extract.md +29 -64
  111. package/src/skf-create-stack-skill/steps-c/step-05-detect-integrations.md +164 -0
  112. package/src/{workflows/create-stack-skill → skf-create-stack-skill}/steps-c/step-06-compile-stack.md +7 -60
  113. package/src/skf-create-stack-skill/steps-c/step-07-generate-output.md +328 -0
  114. package/src/{workflows/create-stack-skill → skf-create-stack-skill}/steps-c/step-08-validate.md +17 -63
  115. package/src/skf-create-stack-skill/steps-c/step-09-report.md +128 -0
  116. package/src/skf-create-stack-skill/steps-c/step-10-health-check.md +22 -0
  117. package/src/skf-drop-skill/SKILL.md +57 -0
  118. package/src/{workflows/drop-skill → skf-drop-skill}/steps-c/step-01-select.md +9 -69
  119. package/src/{workflows/drop-skill → skf-drop-skill}/steps-c/step-02-execute.md +30 -106
  120. package/src/skf-drop-skill/steps-c/step-03-report.md +83 -0
  121. package/src/skf-drop-skill/steps-c/step-04-health-check.md +22 -0
  122. package/src/skf-export-skill/SKILL.md +57 -0
  123. package/src/skf-export-skill/assets/managed-section-format.md +138 -0
  124. package/src/{workflows/export-skill/data → skf-export-skill/assets}/snippet-format.md +8 -12
  125. package/src/skf-export-skill/steps-c/step-01-load-skill.md +247 -0
  126. package/src/{workflows/export-skill → skf-export-skill}/steps-c/step-02-package.md +5 -58
  127. package/src/{workflows/export-skill → skf-export-skill}/steps-c/step-03-generate-snippet.md +15 -77
  128. package/src/{workflows/export-skill → skf-export-skill}/steps-c/step-04-update-context.md +59 -133
  129. package/src/{workflows/export-skill → skf-export-skill}/steps-c/step-05-token-report.md +4 -58
  130. package/src/{workflows/export-skill → skf-export-skill}/steps-c/step-06-summary.md +16 -68
  131. package/src/skf-export-skill/steps-c/step-07-health-check.md +22 -0
  132. package/src/skf-forger/SKILL.md +110 -0
  133. package/src/skf-forger/bmad-skill-manifest.yaml +11 -0
  134. package/src/skf-quick-skill/SKILL.md +56 -0
  135. package/src/{workflows/quick-skill/data → skf-quick-skill/references}/registry-resolution.md +6 -6
  136. package/src/{workflows/quick-skill → skf-quick-skill}/steps-c/step-01-resolve-target.md +9 -62
  137. package/src/{workflows/quick-skill → skf-quick-skill}/steps-c/step-02-ecosystem-check.md +5 -59
  138. package/src/{workflows/quick-skill → skf-quick-skill}/steps-c/step-03-quick-extract.md +18 -61
  139. package/src/{workflows/quick-skill → skf-quick-skill}/steps-c/step-04-compile.md +6 -60
  140. package/src/{workflows/quick-skill → skf-quick-skill}/steps-c/step-05-validate.md +58 -78
  141. package/src/skf-quick-skill/steps-c/step-06-write.md +73 -0
  142. package/src/skf-quick-skill/steps-c/step-07-health-check.md +22 -0
  143. package/src/skf-refine-architecture/SKILL.md +57 -0
  144. package/src/{workflows/refine-architecture/data → skf-refine-architecture/references}/refinement-rules.md +16 -16
  145. package/src/{workflows/refine-architecture → skf-refine-architecture}/steps-c/step-01-init.md +6 -63
  146. package/src/{workflows/refine-architecture → skf-refine-architecture}/steps-c/step-02-gap-analysis.md +29 -71
  147. package/src/{workflows/refine-architecture → skf-refine-architecture}/steps-c/step-03-issue-detection.md +5 -65
  148. package/src/{workflows/refine-architecture → skf-refine-architecture}/steps-c/step-04-improvements.md +5 -64
  149. package/src/{workflows/refine-architecture → skf-refine-architecture}/steps-c/step-05-compile.md +5 -56
  150. package/src/{workflows/refine-architecture → skf-refine-architecture}/steps-c/step-06-report.md +11 -64
  151. package/src/skf-refine-architecture/steps-c/step-07-health-check.md +22 -0
  152. package/src/skf-rename-skill/SKILL.md +58 -0
  153. package/src/{workflows/rename-skill → skf-rename-skill}/steps-c/step-01-select.md +12 -73
  154. package/src/{workflows/rename-skill → skf-rename-skill}/steps-c/step-02-execute.md +32 -113
  155. package/src/skf-rename-skill/steps-c/step-03-report.md +83 -0
  156. package/src/skf-rename-skill/steps-c/step-04-health-check.md +22 -0
  157. package/src/skf-setup/SKILL.md +55 -0
  158. package/src/{workflows/setup-forge → skf-setup}/steps-c/step-01-detect-and-tier.md +6 -62
  159. package/src/{workflows/setup-forge → skf-setup}/steps-c/step-01b-ccc-index.md +9 -65
  160. package/src/{workflows/setup-forge → skf-setup}/steps-c/step-02-write-config.md +15 -60
  161. package/src/{workflows/setup-forge → skf-setup}/steps-c/step-03-auto-index.md +7 -66
  162. package/src/skf-setup/steps-c/step-04-report.md +92 -0
  163. package/src/skf-setup/steps-c/step-05-health-check.md +22 -0
  164. package/src/skf-test-skill/SKILL.md +59 -0
  165. package/src/skf-test-skill/references/migration-section-rules.md +114 -0
  166. package/src/skf-test-skill/references/scoring-rules.md +207 -0
  167. package/src/skf-test-skill/references/source-access-protocol.md +109 -0
  168. package/src/skf-test-skill/scripts/compute-score.py +310 -0
  169. package/src/skf-test-skill/steps-c/step-01-init.md +238 -0
  170. package/src/{workflows/test-skill → skf-test-skill}/steps-c/step-02-detect-mode.md +4 -62
  171. package/src/skf-test-skill/steps-c/step-03-coverage-check.md +347 -0
  172. package/src/skf-test-skill/steps-c/step-04-coherence-check.md +239 -0
  173. package/src/{workflows/test-skill → skf-test-skill}/steps-c/step-04b-external-validators.md +42 -77
  174. package/src/skf-test-skill/steps-c/step-05-score.md +266 -0
  175. package/src/skf-test-skill/steps-c/step-06-report.md +290 -0
  176. package/src/skf-test-skill/steps-c/step-07-health-check.md +25 -0
  177. package/src/skf-test-skill/templates/test-report-template.md +58 -0
  178. package/src/skf-update-skill/SKILL.md +58 -0
  179. package/src/{workflows/update-skill/data → skf-update-skill/references}/manual-section-rules.md +6 -6
  180. package/src/{workflows/update-skill/data → skf-update-skill/references}/merge-conflict-rules.md +5 -5
  181. package/src/skf-update-skill/references/remote-source-resolution.md +94 -0
  182. package/src/{workflows/update-skill → skf-update-skill}/steps-c/step-01-init.md +22 -69
  183. package/src/skf-update-skill/steps-c/step-02-detect-changes.md +255 -0
  184. package/src/skf-update-skill/steps-c/step-03-re-extract.md +336 -0
  185. package/src/{workflows/update-skill → skf-update-skill}/steps-c/step-04-merge.md +60 -72
  186. package/src/{workflows/update-skill → skf-update-skill}/steps-c/step-05-validate.md +5 -62
  187. package/src/skf-update-skill/steps-c/step-06-write.md +278 -0
  188. package/src/{workflows/update-skill → skf-update-skill}/steps-c/step-07-report.md +11 -69
  189. package/src/skf-update-skill/steps-c/step-08-health-check.md +22 -0
  190. package/src/skf-verify-stack/SKILL.md +60 -0
  191. package/src/skf-verify-stack/assets/feasibility-report-template.md +76 -0
  192. package/src/{workflows/verify-stack/data → skf-verify-stack/references}/coverage-patterns.md +12 -4
  193. package/src/skf-verify-stack/references/integration-verification-rules.md +78 -0
  194. package/src/skf-verify-stack/steps-c/step-01-init.md +178 -0
  195. package/src/{workflows/verify-stack → skf-verify-stack}/steps-c/step-02-coverage.md +27 -72
  196. package/src/skf-verify-stack/steps-c/step-03-integrations.md +179 -0
  197. package/src/{workflows/verify-stack → skf-verify-stack}/steps-c/step-04-requirements.md +14 -67
  198. package/src/skf-verify-stack/steps-c/step-05-synthesize.md +147 -0
  199. package/src/skf-verify-stack/steps-c/step-06-report.md +156 -0
  200. package/src/skf-verify-stack/steps-c/step-07-health-check.md +25 -0
  201. package/tools/cli/commands/install.js +1 -1
  202. package/tools/cli/commands/status.js +21 -23
  203. package/tools/cli/commands/uninstall.js +11 -19
  204. package/tools/cli/commands/update.js +2 -2
  205. package/tools/cli/lib/ide-skills.js +216 -0
  206. package/tools/cli/lib/installer.js +29 -52
  207. package/tools/cli/lib/manifest.js +11 -5
  208. package/tools/cli/lib/platform-codes.yaml +223 -0
  209. package/tools/cli/lib/ui.js +76 -47
  210. package/tools/validate-docs-drift.js +193 -0
  211. package/src/agents/forger.agent.yaml +0 -114
  212. package/src/workflows/README.md +0 -174
  213. package/src/workflows/analyze-source/data/skill-brief-schema.md +0 -125
  214. package/src/workflows/analyze-source/data/unit-detection-heuristics.md +0 -124
  215. package/src/workflows/analyze-source/workflow.md +0 -61
  216. package/src/workflows/audit-skill/workflow.md +0 -64
  217. package/src/workflows/brief-skill/data/skill-brief-schema.md +0 -159
  218. package/src/workflows/brief-skill/workflow.md +0 -58
  219. package/src/workflows/create-skill/data/source-resolution-protocols.md +0 -200
  220. package/src/workflows/create-skill/steps-c/step-03-extract.md +0 -301
  221. package/src/workflows/create-skill/steps-c/step-03b-fetch-temporal.md +0 -253
  222. package/src/workflows/create-skill/steps-c/step-06-validate.md +0 -254
  223. package/src/workflows/create-skill/steps-c/step-08-report.md +0 -179
  224. package/src/workflows/create-skill/workflow.md +0 -53
  225. package/src/workflows/create-stack-skill/steps-c/step-05-detect-integrations.md +0 -196
  226. package/src/workflows/create-stack-skill/steps-c/step-07-generate-output.md +0 -270
  227. package/src/workflows/create-stack-skill/steps-c/step-09-report.md +0 -150
  228. package/src/workflows/create-stack-skill/workflow.md +0 -59
  229. package/src/workflows/drop-skill/steps-c/step-03-report.md +0 -136
  230. package/src/workflows/drop-skill/workflow.md +0 -63
  231. package/src/workflows/export-skill/data/managed-section-format.md +0 -103
  232. package/src/workflows/export-skill/steps-c/step-01-load-skill.md +0 -237
  233. package/src/workflows/export-skill/workflow.md +0 -58
  234. package/src/workflows/quick-skill/steps-c/step-06-write.md +0 -178
  235. package/src/workflows/quick-skill/workflow.md +0 -58
  236. package/src/workflows/refine-architecture/workflow.md +0 -61
  237. package/src/workflows/rename-skill/steps-c/step-03-report.md +0 -133
  238. package/src/workflows/rename-skill/workflow.md +0 -64
  239. package/src/workflows/setup-forge/steps-c/step-04-report.md +0 -159
  240. package/src/workflows/setup-forge/workflow.md +0 -51
  241. package/src/workflows/shared/health-check.md +0 -231
  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 -208
  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 -200
  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,178 +0,0 @@
1
- ---
2
- name: 'step-06-write'
3
- description: 'Write output files to skills folder and display completion summary'
4
- nextStepFile: '../../shared/health-check.md'
5
- ---
6
-
7
- # Step 6: Write Output
8
-
9
- ## STEP GOAL:
10
-
11
- To write the compiled SKILL.md, context-snippet.md, and metadata.json to the skills output folder and display a completion summary with next step recommendations.
12
-
13
- ## MANDATORY EXECUTION RULES (READ FIRST):
14
-
15
- ### Universal Rules:
16
-
17
- - 🛑 NEVER generate content without user input
18
- - 📖 CRITICAL: Read the complete step file before taking any action
19
- - 📋 YOU ARE A FACILITATOR, not a content generator
20
- - ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
21
-
22
- ### Role Reinforcement:
23
-
24
- - ✅ You are a rapid skill compiler delivering the final output
25
- - ✅ If you already have been given a name, communication_style and identity, continue to use those while playing this new role
26
- - ✅ Precision file writing — correct paths, correct content
27
- - ✅ This is the final step — deliver cleanly and recommend next actions
28
-
29
- ### Step-Specific Rules:
30
-
31
- - 🎯 Focus only on writing files and displaying summary
32
- - 🚫 FORBIDDEN to modify content — write exactly what was compiled
33
- - 💬 Approach: Create directory, write files, confirm, summarize
34
- - 📋 If write fails, hard halt with error details
35
-
36
- ## EXECUTION PROTOCOLS:
37
-
38
- - 🎯 Follow the MANDATORY SEQUENCE exactly
39
- - 💾 Write three files to `{skill_package}` and create the `active` symlink
40
- - 📖 File I/O required for directory creation and file writing
41
- - 🚫 After writing files, chains to shared health check — no further steps after that
42
-
43
- ## CONTEXT BOUNDARIES:
44
-
45
- - Previous steps provided: skill_content, context_snippet, metadata_json, validation_result
46
- - Also available: resolved_url, repo_name, language, skills_output_folder
47
- - Focus: file writing and completion only
48
- - Chains to shared health check after completion — no further steps after that
49
- - Path resolution: See `knowledge/version-paths.md` for canonical path templates. Quick-skill uses `{repo_name}` as the skill name and defaults `{version}` to `1.0.0` if not detected from the extraction inventory
50
-
51
- ## MANDATORY SEQUENCE
52
-
53
- **CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change.
54
-
55
- ### 1. Create Output Directory
56
-
57
- Resolve `{version}` from the extraction inventory's detected version, defaulting to `1.0.0` if not detected. Create the skill output directories:
58
-
59
- ```
60
- {skill_group} # {skills_output_folder}/{repo_name}/
61
- {skill_package} # {skills_output_folder}/{repo_name}/{version}/{repo_name}/
62
- ```
63
-
64
- If `{skill_package}` already exists, confirm with user before overwriting:
65
-
66
- "**Directory `{skill_package}` already exists.** Overwrite existing files? [Y/N]"
67
-
68
- - **If user selects Y:** Proceed to section 2.
69
- - **If user selects N:** Halt with: "Overwrite cancelled. Existing skill preserved. Run [QS] with a different skill name or remove the existing directory manually."
70
-
71
- ### 2. Write SKILL.md
72
-
73
- Write the compiled SKILL.md content to:
74
-
75
- ```
76
- {skill_package}/SKILL.md
77
- ```
78
-
79
- Confirm: "Written: SKILL.md"
80
-
81
- ### 3. Write context-snippet.md
82
-
83
- Write the context snippet to:
84
-
85
- ```
86
- {skill_package}/context-snippet.md
87
- ```
88
-
89
- Confirm: "Written: context-snippet.md"
90
-
91
- ### 4. Write metadata.json
92
-
93
- Write the metadata JSON to:
94
-
95
- ```
96
- {skill_package}/metadata.json
97
- ```
98
-
99
- Confirm: "Written: metadata.json"
100
-
101
- ### 4b. Create Active Symlink
102
-
103
- Create or update the `active` symlink at `{skill_group}/active` pointing to `{version}`:
104
-
105
- ```
106
- {skill_group}/active -> {version}
107
- ```
108
-
109
- If the symlink already exists, remove it first and recreate.
110
-
111
- Confirm: "Symlink: {skill_group}/active -> {version}"
112
-
113
- ### 5. Handle Write Failures
114
-
115
- **If any file write fails — HARD HALT:**
116
-
117
- "**Write failed:** Could not write to `{file_path}`.
118
-
119
- Error: {error details}
120
-
121
- Please check:
122
- - Does the output directory exist and is it writable?
123
- - Is there sufficient disk space?
124
- - Are there permission issues?"
125
-
126
- ### 6. Display Completion Summary
127
-
128
- "**Quick Skill complete.**
129
-
130
- **Skill:** {repo_name} v{version}
131
- **Language:** {language}
132
- **Source:** {resolved_url}
133
- **Authority:** community
134
- **Confidence:** {extraction confidence}
135
-
136
- **Files written:**
137
- - `{skill_package}/SKILL.md`
138
- - `{skill_package}/context-snippet.md`
139
- - `{skill_package}/metadata.json`
140
- - `{skill_group}/active` -> `{version}`
141
-
142
- **Exports documented:** {count}
143
- **Validation:** {pass / N issues (advisory)}
144
-
145
- ---
146
-
147
- **Recommended next steps:**
148
-
149
- 1. **test-skill** (advisory) — Run cognitive completeness verification on the generated skill
150
- 2. **export-skill** — Package and distribute the skill with platform-aware context injection
151
-
152
- **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."
153
-
154
- ### 7. Workflow Health Check
155
-
156
- Load and execute `{nextStepFile}` for workflow self-improvement check.
157
-
158
- ---
159
-
160
- ## 🚨 SYSTEM SUCCESS/FAILURE METRICS
161
-
162
- ### ✅ SUCCESS:
163
-
164
- - Output directory created (or overwrite confirmed) with version-nested structure
165
- - All three files written successfully to {skill_package}
166
- - Active symlink created at {skill_group}/active -> {version}
167
- - Completion summary displayed with file paths
168
- - Next step recommendations provided
169
- - Workflow ends cleanly
170
-
171
- ### ❌ SYSTEM FAILURE:
172
-
173
- - Modifying content during write (write exactly what was compiled)
174
- - Not handling write failures with hard halt
175
- - Not displaying completion summary
176
- - Attempting to load steps beyond the shared health check
177
-
178
- **Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.
@@ -1,58 +0,0 @@
1
- ---
2
- name: quick-skill
3
- description: Brief-less fast skill with package-to-repo resolution
4
- web_bundle: true
5
- installed_path: '{project-root}/_bmad/skf/workflows/skillforge/quick-skill'
6
- ---
7
-
8
- # Quick Skill
9
-
10
- **Goal:** The fastest path to a skill — accept a GitHub URL or package name, resolve to source, extract public API surface, and produce a best-effort SKILL.md with context snippet and metadata. No brief needed.
11
-
12
- > **Note:** Quick Skill is tier-unaware by design. It does not load forge-tier.yaml or check preferences.yaml for tier_override. All output is produced at community-tier quality regardless of available tools.
13
-
14
- **Your Role:** In addition to your name, communication_style, and persona, you are also a rapid skill compiler collaborating with a developer. This is a partnership, not a client-vendor relationship. You bring source analysis and skill document assembly expertise, while the user brings the target package or repository they want to create a skill for. Work together efficiently — speed is the priority.
15
-
16
- ---
17
-
18
- ## WORKFLOW ARCHITECTURE
19
-
20
- ### Core Principles
21
-
22
- - **Micro-file Design**: Each step is a self contained instruction file that is a part of an overall workflow that must be followed exactly
23
- - **Just-In-Time Loading**: Only the current step file is in memory — never load future step files until told to do so
24
- - **Sequential Enforcement**: Sequence within the step files must be completed in order, no skipping or optimization allowed
25
- - **Append-Only Building**: Build output files progressively as directed by each step
26
-
27
- ### Step Processing Rules
28
-
29
- 1. **READ COMPLETELY**: Always read the entire step file before taking any action
30
- 2. **FOLLOW SEQUENCE**: Execute all numbered sections in order, never deviate
31
- 3. **WAIT FOR INPUT**: If a menu is presented, halt and wait for user selection
32
- 4. **CHECK CONTINUATION**: If the step has a menu with Continue as an option, only proceed to next step when user selects 'C' (Continue)
33
- 5. **LOAD NEXT**: When directed, load, read entire file, then execute the next step file
34
-
35
- ### Critical Rules (NO EXCEPTIONS)
36
-
37
- - 🛑 **NEVER** load multiple step files simultaneously
38
- - 📖 **ALWAYS** read entire step file before execution
39
- - 🚫 **NEVER** skip steps or optimize the sequence
40
- - 🎯 **ALWAYS** follow the exact instructions in the step file
41
- - ⏸️ **ALWAYS** halt at menus and wait for user input
42
- - 📋 **NEVER** create mental todo lists from future steps
43
- - ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
44
-
45
- ---
46
-
47
- ## INITIALIZATION SEQUENCE
48
-
49
- ### 1. Module Configuration Loading
50
-
51
- Load and read full config from {project-root}/_bmad/skf/config.yaml and resolve:
52
-
53
- - `project_name`, `output_folder`, `user_name`, `communication_language`, `document_output_language`
54
- - `skills_output_folder`, `forge_data_folder`
55
-
56
- ### 2. First Step Execution
57
-
58
- Load, read the full file and then execute `./steps-c/step-01-resolve-target.md` to begin the workflow.
@@ -1,61 +0,0 @@
1
- ---
2
- name: refine-architecture
3
- description: Improve architecture doc using verified skill data and VS feasibility findings
4
- web_bundle: true
5
- installed_path: '{project-root}/_bmad/skf/workflows/skillforge/refine-architecture'
6
- ---
7
-
8
- # Refine Architecture
9
-
10
- **Goal:** Take an original architecture document + generated skills + optional VS feasibility report, and produce a refined architecture with gaps filled, issues flagged, and improvements suggested — all backed by specific API evidence from the generated skills.
11
-
12
- **Your Role:** In addition to your name, communication_style, and persona, you are also 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. Execute with analytical precision — every suggestion must cite specific APIs from the generated skills. Evidence-backed suggestions, not speculation.
13
-
14
- ---
15
-
16
- ## WORKFLOW ARCHITECTURE
17
-
18
- This uses **step-file architecture** for disciplined execution:
19
-
20
- ### Core Principles
21
-
22
- - **Micro-file Design**: Each step is a self-contained instruction file that must be followed exactly
23
- - **Just-In-Time Loading**: Only the current step file is in memory — never load future step files until told to do so
24
- - **Sequential Enforcement**: Sequence within the step files must be completed in order, no skipping or optimization allowed
25
- - **Additive, Not Destructive**: This workflow enhances the original architecture — it never deletes original content, only adds annotations, subsections, and suggestions
26
- - **Evidence-Backed Refinement**: Every gap, issue, or improvement must cite specific APIs, types, or function signatures from the generated skills
27
-
28
- ### Step Processing Rules
29
-
30
- 1. **READ COMPLETELY**: Always read the entire step file before taking any action
31
- 2. **FOLLOW SEQUENCE**: Execute all numbered sections in order, never deviate
32
- 3. **WAIT FOR INPUT**: If a menu is presented, halt and wait for user selection
33
- 4. **CHECK CONTINUATION**: If the step has a menu with Continue as an option, only proceed to next step when user selects 'C' (Continue)
34
- 5. **LOAD NEXT**: When directed, load, read entire file, then execute the next step file
35
-
36
- ### Critical Rules (NO EXCEPTIONS)
37
-
38
- - 🛑 **NEVER** load multiple step files simultaneously
39
- - 📖 **ALWAYS** read entire step file before execution
40
- - 🚫 **NEVER** skip steps or optimize the sequence
41
- - 🎯 **ALWAYS** follow the exact instructions in the step file
42
- - ⏸️ **ALWAYS** halt at menus and wait for user input
43
- - 📋 **NEVER** create mental todo lists from future steps
44
- - ⚙️ **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
45
- - ✅ YOU MUST ALWAYS SPEAK OUTPUT in your Agent communication style with the config `{communication_language}`
46
- - 📝 **DOCUMENT-PRODUCING**: This workflow outputs a refined architecture markdown file
47
-
48
- ---
49
-
50
- ## INITIALIZATION SEQUENCE
51
-
52
- ### 1. Module Configuration Loading
53
-
54
- Load and read full config from {project-root}/_bmad/skf/config.yaml and resolve:
55
-
56
- - `project_name`, `user_name`, `communication_language`, `document_output_language`
57
- - `skills_output_folder`, `forge_data_folder`, `output_folder`
58
-
59
- ### 2. First Step Execution
60
-
61
- Load, read the full file and then execute `./steps-c/step-01-init.md` to begin the workflow.
@@ -1,133 +0,0 @@
1
- ---
2
- name: 'step-03-report'
3
- description: 'Report rename operation results'
4
- nextStepFile: '../../shared/health-check.md'
5
- ---
6
-
7
- # Step 3: Report Rename Results
8
-
9
- ## STEP GOAL:
10
-
11
- Present a clear, final summary of what the rename workflow changed — old and new names, versions renamed, file-level update counts, manifest re-key, platform context rebuild, and any residual warnings or deletion errors — so the user can verify the outcome and know whether any manual follow-up is required.
12
-
13
- ## MANDATORY EXECUTION RULES (READ FIRST):
14
-
15
- ### Universal Rules:
16
-
17
- - 🛑 NEVER modify any files in this step — report only
18
- - 📖 CRITICAL: Read the complete step file before taking any action
19
- - 📋 YOU ARE A FACILITATOR, summarizing what step-02 already executed
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 Ferris in Management mode — summarizing a transactional rename with precision
26
- - ✅ Be explicit about what changed and what did not — no glossing over partial failures
27
- - ✅ Surface every warning and deletion error so the user knows exactly where manual cleanup is required
28
-
29
- ### Step-Specific Rules:
30
-
31
- - 🎯 Focus only on reporting the results stored in context by step-02
32
- - 🚫 FORBIDDEN to re-execute any part of the rename
33
- - 🚫 FORBIDDEN to hide verification warnings, platform rebuild failures, or deletion errors
34
- - 💬 Present the "next steps" guidance so the user knows which downstream workflows to run
35
-
36
- ## EXECUTION PROTOCOLS:
37
-
38
- - 🎯 Render the report using the context values set in step-02 (`old_name`, `new_name`, `affected_versions`, `affected_versions_count`, `files_updated_per_version`, `manifest_rekeyed`, `platform_files_updated`, `platform_files_failed`, `section2_warnings`, `section3_warnings`, `verification_warnings`, `deletion_errors`)
39
- - 💬 Include the "next steps" block unconditionally — it captures the common follow-ups for any rename
40
-
41
- ## CONTEXT BOUNDARIES:
42
-
43
- - Available: All decision and result values stored in context by step-01 and step-02
44
- - Focus: Rendering the final report
45
- - Limits: No file writes, no deletions, no further execution
46
- - Dependencies: Step-02 must have completed (or attempted all sections through section 8) and stored its results
47
-
48
- ## MANDATORY SEQUENCE
49
-
50
- **CRITICAL:** Follow this sequence exactly.
51
-
52
- ### 1. Render the Report
53
-
54
- Display the following block, filling in values from context:
55
-
56
- ```
57
- **Rename complete.**
58
-
59
- From: {old_name}
60
- To: {new_name}
61
-
62
- Versions renamed: {affected_versions_count} ({comma-separated affected_versions})
63
-
64
- References updated:
65
- - SKILL.md frontmatter (×{affected_versions_count})
66
- - metadata.json (×{affected_versions_count})
67
- - context-snippet.md (×{affected_versions_count})
68
- - provenance-map.json (×{affected_versions_count})
69
-
70
- Manifest updated: {if manifest_rekeyed: "exports.{new_name} (re-keyed from exports.{old_name})" else: "(no manifest entry existed for {old_name})"}
71
- Platform files rebuilt: {list from platform_files_updated, or "(none)"}
72
- {if platform_files_failed is non-empty:}
73
- Platform files FAILED: {list from platform_files_failed}
74
- → Re-run `[EX] Export Skill` to retry the managed section rebuild for these files.
75
-
76
- {if section2_warnings is non-empty:}
77
- Warnings (inner directory rename):
78
- {list each warning from section2_warnings}
79
-
80
- {if section3_warnings is non-empty:}
81
- Warnings (missing files during content update):
82
- {list each warning from section3_warnings}
83
-
84
- {if verification_warnings is non-empty:}
85
- Informational: the old name still appears in SKILL.md body text (prose only, non-structural) in:
86
- {list each path from verification_warnings}
87
- → These are typically historical notes or changelog entries. Review and edit manually if you want them updated.
88
-
89
- {if deletion_errors is non-empty:}
90
- **Post-commit deletion errors:**
91
- {list each error}
92
- → The new name is fully committed. Remove the remnants manually with `rm -rf {path}`.
93
-
94
- ---
95
-
96
- **Next steps:**
97
- - Run `@Ferris EX` if you want to re-verify the managed sections in platform context files
98
- - If you had QMD collections or external tooling registered under `{old_name}`, re-run `@Ferris SF` (or your registration command) to re-index under `{new_name}`
99
- - If this skill was published to agentskills.io under `{old_name}`, the registry version is unchanged — this rename is a LOCAL operation only
100
- ```
101
-
102
- ### 2. Workflow Health Check
103
-
104
- Load and execute `{nextStepFile}` for workflow self-improvement check.
105
-
106
- ## CRITICAL STEP COMPLETION NOTE
107
-
108
- This step chains to the shared health check. After the health check completes, the rename-skill workflow is fully done. Do not re-run any earlier step automatically — if the user wants another rename, they should re-invoke the workflow from the top.
109
-
110
- ---
111
-
112
- ## 🚨 SYSTEM SUCCESS/FAILURE METRICS
113
-
114
- ### ✅ SUCCESS:
115
-
116
- - Report rendered with old name, new name, and affected version list
117
- - Per-file update counts stated explicitly (SKILL.md, metadata.json, context-snippet.md, provenance-map.json)
118
- - Manifest re-key outcome clearly stated
119
- - Platform files rebuilt listed (and failures surfaced when present)
120
- - All warning categories surfaced (inner rename, missing files, informational body-text mentions)
121
- - Post-commit deletion errors surfaced with manual cleanup guidance
122
- - Next-steps block included unconditionally
123
- - No further file writes or executions performed
124
-
125
- ### ❌ SYSTEM FAILURE:
126
-
127
- - Hiding failed platform rebuilds, verification warnings, or deletion errors
128
- - Reporting "complete" when step-02 partially failed without flagging it
129
- - Re-executing any part of the rename workflow
130
- - Omitting the next-steps guidance
131
- - Reading stale context values instead of the post-rename state stored by step-02
132
-
133
- **Master Rule:** The report must be an honest, complete summary of what step-02 actually did. Every partial failure must be visible so the user knows exactly what manual follow-up, if any, is required.
@@ -1,64 +0,0 @@
1
- ---
2
- name: rename-skill
3
- description: "Rename a skill and all its versions. Transactional — copy, verify, then delete the old name. Rebuilds platform context files."
4
- web_bundle: true
5
- installed_path: '{project-root}/_bmad/skf/workflows/skillforge/rename-skill'
6
- ---
7
-
8
- # Rename Skill
9
-
10
- **Goal:** Rename a skill across all its versions with transactional safety — copy to the new name, verify all references updated, delete the old name only after verification succeeds. Rebuilds platform context files to reference the new name.
11
-
12
- **Your Role:** In addition to your name, communication_style, and persona, you are also Ferris in Management mode — a precision surgeon who operates on the entire skill group atomically. The agentskills.io spec requires `name` to match parent directory name, so a rename is a coordinated move across 9+ locations in every version. You guarantee safety via copy-before-delete: the new name is fully materialized and verified before the old name is removed, so any failure mid-operation leaves the original skill intact.
13
-
14
- ---
15
-
16
- ## WORKFLOW ARCHITECTURE
17
-
18
- This uses **step-file architecture** for disciplined execution:
19
-
20
- ### Core Principles
21
-
22
- - **Micro-file Design**: Each step is a self-contained instruction file that is a part of an overall workflow that must be followed exactly
23
- - **Just-In-Time Loading**: Only the current step file is in memory — never load future step files until told to do so
24
- - **Sequential Enforcement**: Sequence within the step files must be completed in order, no skipping or optimization allowed
25
- - **Transactional Safety**: Copy-verify-delete pattern — the new name is fully materialized and verified before the old name is removed. Any failure before the final delete stage is fully reversible by deleting the new name.
26
- - **Manifest-Driven Truth**: The export manifest is the source of truth for what exists and what is active; the filesystem and the manifest are updated together and must end in a consistent state
27
-
28
- ### Step Processing Rules
29
-
30
- 1. **READ COMPLETELY**: Always read the entire step file before taking any action
31
- 2. **FOLLOW SEQUENCE**: Execute all numbered sections in order, never deviate
32
- 3. **WAIT FOR INPUT**: If a menu is presented, halt and wait for user selection
33
- 4. **CHECK CONTINUATION**: If the step has a menu with Continue as an option, only proceed to next step when user selects 'C' (Continue)
34
- 5. **LOAD NEXT**: When directed, load, read entire file, then execute the next step file
35
-
36
- ### Critical Rules (NO EXCEPTIONS)
37
-
38
- - 🛑 **NEVER** load multiple step files simultaneously
39
- - 📖 **ALWAYS** read entire step file before execution
40
- - 🚫 **NEVER** skip steps or optimize the sequence
41
- - 🎯 **ALWAYS** follow the exact instructions in the step file
42
- - ⏸️ **ALWAYS** halt at menus and wait for user input
43
- - 📋 **NEVER** create mental todo lists from future steps
44
- - ⚙️ **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
45
- - 🛡️ **NEVER** delete the old skill directories until the new name has been fully materialized and verified
46
- - 🛡️ **NEVER** proceed past a verification failure — roll back (delete the new directories) and halt
47
- - 🛡️ **NEVER** allow a rename to collide with an existing skill name
48
- - ✅ YOU MUST ALWAYS SPEAK OUTPUT in your Agent communication style with the config `{communication_language}`
49
-
50
- ---
51
-
52
- ## INITIALIZATION SEQUENCE
53
-
54
- ### 1. Module Configuration Loading
55
-
56
- Load and read full config from {project-root}/_bmad/skf/config.yaml and resolve:
57
-
58
- - `project_name`, `output_folder`, `user_name`, `communication_language`, `document_output_language`
59
- - `skills_output_folder`, `forge_data_folder`, `sidecar_path`
60
- - Generate and store `timestamp` as the current date-time in `YYYYMMDD-HHmmss` format. This value is fixed for the entire workflow run and must not be regenerated in subsequent steps.
61
-
62
- ### 2. First Step Execution
63
-
64
- Load, read the full file and then execute `./steps-c/step-01-select.md` to begin the workflow.
@@ -1,159 +0,0 @@
1
- ---
2
- name: 'step-04-report'
3
- description: 'Display forge status report with positive capability framing'
4
-
5
- tierRulesData: '../data/tier-rules.md'
6
- nextStepFile: '../../shared/health-check.md'
7
- ---
8
-
9
- # Step 4: Forge Status Report
10
-
11
- ## STEP GOAL:
12
-
13
- Display the forge status report with positive capability framing, report tier changes on re-run, and optionally fetch the latest agentskills.io spec if flagged.
14
-
15
- ## MANDATORY EXECUTION RULES (READ FIRST):
16
-
17
- ### Universal Rules:
18
-
19
- - 📖 CRITICAL: Read the complete step file before taking any action
20
- - 🎯 Execute all operations autonomously — display report and complete
21
-
22
- ### Role Reinforcement:
23
-
24
- - ✅ You are Ferris reporting forge readiness
25
- - ✅ Frame ALL capabilities positively — describe what the tier GIVES
26
- - ✅ On re-run: explicitly report what changed (upgrade/downgrade/same)
27
- - ✅ Brief forge metaphor appropriate here — this is the completion moment
28
-
29
- ### Step-Specific Rules:
30
-
31
- - 🎯 Focus only on displaying the status report
32
- - 🚫 FORBIDDEN to use negative framing ("missing", "lacking", "unavailable")
33
- - 🚫 FORBIDDEN to list tools that are NOT available
34
- - 💬 Use tier capability descriptions from tier-rules.md
35
-
36
- ## EXECUTION PROTOCOLS:
37
-
38
- - 🎯 Follow the MANDATORY SEQUENCE exactly
39
- - 💾 Load tier-rules.md for capability descriptions and re-run messages
40
- - 📖 Use context from step-01 (detected_tools, calculated_tier, previous_tier)
41
- - 🚫 After reporting, chains to shared health check — no further steps after that
42
-
43
- ## CONTEXT BOUNDARIES:
44
-
45
- - Available: {detected_tools}, {calculated_tier}, {previous_tier}, {tier_override} from step-01
46
- - Available: tool version strings from step-01
47
- - Available: {hygiene_result}, {hygiene_healthy}, {hygiene_orphaned_removed}, {hygiene_orphaned_kept}, {hygiene_stale_cleaned}, {ccc_registry_stale_cleaned} from step-03
48
- - Available: {ccc_index_result} from step-01b (values: "fresh", "created", "failed", "none")
49
- - Focus: report display only — no file modifications
50
- - Dependencies: steps 01-03 must have completed
51
-
52
- ## MANDATORY SEQUENCE
53
-
54
- **CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise.
55
-
56
- ### 1. Load Capability Descriptions
57
-
58
- Load and read {tierRulesData} for the tier capability descriptions and re-run messages.
59
-
60
- ### 2. Display Forge Status Report
61
-
62
- **Format the report as follows:**
63
-
64
- ```
65
- ═══════════════════════════════════════
66
- FORGE STATUS
67
- ═══════════════════════════════════════
68
-
69
- Tier: {calculated_tier}
70
- {tier capability description from tier-rules.md}
71
-
72
- Tools Detected:
73
- {for each tool that is available, show: tool name — version}
74
-
75
- {if hygiene_result is "completed":}
76
- QMD Registry:
77
- {hygiene_healthy} collection(s) healthy
78
- {if hygiene_orphaned_removed > 0: {hygiene_orphaned_removed} orphaned collection(s) removed}
79
- {if hygiene_orphaned_kept > 0: {hygiene_orphaned_kept} orphaned collection(s) kept}
80
- {if hygiene_stale_cleaned > 0: {hygiene_stale_cleaned} stale QMD registry entry/entries cleaned}
81
- {end if}
82
-
83
- {if ccc_registry_stale_cleaned > 0:}
84
- CCC Registry: {ccc_registry_stale_cleaned} stale entry/entries cleaned
85
- {end if}
86
-
87
- {if hygiene_result is "completed" and hygiene_healthy is 0:}
88
- QMD Registry: empty — collections are created automatically when you run [CS] Create Skill.
89
- {end if}
90
-
91
- {if tools.ccc is true:}
92
- CCC Index:
93
- {if ccc_index_result is "fresh": up to date — semantic discovery ready}
94
- {if ccc_index_result is "created": indexed this run — semantic discovery ready}
95
- {if ccc_index_result is "failed": indexing failed — semantic discovery unavailable this session}
96
- {end if}
97
-
98
- {if tier_override is active:}
99
- Note: Tier override active (set in preferences.yaml)
100
-
101
- {if re-run with tier change:}
102
- {appropriate upgrade/downgrade message from tier-rules.md}
103
-
104
- {if re-run with same tier:}
105
- {same-tier message from tier-rules.md}
106
-
107
- ═══════════════════════════════════════
108
- Forge ready. {calculated_tier} tier active.
109
- ═══════════════════════════════════════
110
- ```
111
-
112
- **Tool display rules:**
113
- - Only show tools that ARE available with their version strings
114
- - Do NOT list unavailable tools
115
- - Do NOT show a "missing" column or section
116
-
117
- ### 3. Handle --update-spec Flag (Optional)
118
-
119
- **If the user included `--update-spec` in their workflow invocation (e.g., `@Ferris SF --update-spec`):**
120
- - Attempt to fetch the latest agentskills.io specification schema
121
- - Use `gh` or `curl` to retrieve the spec
122
- - Store in `{forge_data_folder}/agentskills-spec.json` (or appropriate format)
123
- - If fetch succeeds: display "agentskills.io spec updated."
124
- - If fetch fails: display "Could not fetch agentskills.io spec. Existing spec (if any) unchanged."
125
- - Do NOT fail the workflow over this — it is purely optional
126
-
127
- **If `--update-spec` was NOT passed:**
128
- - Skip silently
129
-
130
- ### 4. Workflow Health Check
131
-
132
- Load and execute `{nextStepFile}` for workflow self-improvement check.
133
-
134
- ## CRITICAL STEP COMPLETION NOTE
135
-
136
- This step chains to the shared health check. After the health check completes, the setup-forge workflow is fully done.
137
-
138
- ---
139
-
140
- ## 🚨 SYSTEM SUCCESS/FAILURE METRICS
141
-
142
- ### ✅ SUCCESS:
143
-
144
- - Forge status report displayed with positive capability framing
145
- - Only available tools shown (no "missing" lists)
146
- - Tier capability description matches calculated tier
147
- - Re-run: tier change correctly reported (or same-tier confirmed)
148
- - --update-spec handled if flagged (success or graceful failure)
149
- - Workflow completes cleanly
150
-
151
- ### ❌ SYSTEM FAILURE:
152
-
153
- - Negative framing in report ("missing", "unavailable", "lacking")
154
- - Listing tools that are NOT available
155
- - Not using tier capability descriptions from tier-rules.md
156
- - Not reporting tier change on re-run
157
- - Attempting to load steps beyond the shared health check
158
-
159
- **Master Rule:** The report must leave users feeling confident about their forge capabilities, not anxious about what they're missing. Positive framing only.