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.
- package/.claude-plugin/marketplace.json +39 -0
- package/.gitattributes +16 -0
- package/README.md +105 -38
- package/docs/404.md +13 -10
- package/docs/RELEASING.md +185 -0
- package/docs/STABILITY.md +123 -0
- package/docs/_data/pinned.yaml +98 -0
- package/docs/agents.md +16 -11
- package/docs/architecture.md +221 -0
- package/docs/bmad-synergy.md +11 -13
- package/docs/concepts.md +18 -108
- package/docs/examples.md +121 -80
- package/docs/getting-started.md +85 -147
- package/docs/how-it-works.md +25 -536
- package/docs/index.md +44 -27
- package/docs/skill-model.md +328 -0
- package/docs/troubleshooting.md +39 -0
- package/docs/verifying-a-skill.md +232 -0
- package/docs/why-skf.md +93 -0
- package/docs/workflows.md +119 -13
- package/package.json +25 -4
- package/src/README.md +23 -25
- package/src/forger/forge-tier.yaml +4 -2
- package/src/forger/preferences.yaml +7 -1
- package/src/knowledge/agentskills-spec.md +1 -1
- package/src/knowledge/architecture-verification.md +1 -1
- package/src/knowledge/ccc-bridge.md +16 -15
- package/src/knowledge/overview.md +11 -11
- package/src/knowledge/progressive-capability.md +3 -3
- package/src/knowledge/provenance-tracking.md +9 -3
- package/src/knowledge/qmd-registry.md +8 -8
- package/src/knowledge/skf-knowledge-index.csv +2 -2
- package/src/knowledge/skill-lifecycle.md +16 -1
- package/src/knowledge/split-body-strategy.md +1 -1
- package/src/knowledge/version-paths.md +17 -12
- package/src/module-help.csv +18 -17
- package/src/module.yaml +4 -0
- package/src/shared/health-check.md +372 -0
- package/src/shared/references/feasibility-report-schema.md +86 -0
- package/src/shared/references/headless-gate-convention.md +62 -0
- package/src/shared/references/output-contract-schema.md +35 -0
- package/src/shared/references/pipeline-contracts.md +102 -0
- package/src/shared/scripts/skf-atomic-write.py +370 -0
- package/src/shared/scripts/skf-manifest-ops.py +236 -0
- package/src/shared/scripts/skf-preflight.py +164 -0
- package/src/shared/scripts/skf-rebuild-managed-sections.py +201 -0
- package/src/shared/scripts/skf-severity-classify.py +163 -0
- package/src/shared/scripts/skf-skill-inventory.py +210 -0
- package/src/shared/scripts/skf-structural-diff.py +257 -0
- package/src/shared/scripts/skf-validate-frontmatter.py +318 -0
- package/src/shared/scripts/skf-validate-output.py +247 -0
- package/src/skf-analyze-source/SKILL.md +57 -0
- package/src/skf-analyze-source/assets/skill-brief-schema.md +125 -0
- package/src/skf-analyze-source/references/unit-detection-heuristics.md +124 -0
- package/src/{workflows/analyze-source → skf-analyze-source}/steps-c/step-01-init.md +6 -66
- package/src/{workflows/analyze-source → skf-analyze-source}/steps-c/step-01b-continue.md +4 -59
- package/src/{workflows/analyze-source → skf-analyze-source}/steps-c/step-02-scan-project.md +7 -68
- package/src/{workflows/analyze-source → skf-analyze-source}/steps-c/step-03-identify-units.md +6 -66
- package/src/{workflows/analyze-source → skf-analyze-source}/steps-c/step-04-map-and-detect.md +7 -68
- package/src/{workflows/analyze-source → skf-analyze-source}/steps-c/step-05-recommend.md +6 -66
- package/src/{workflows/analyze-source → skf-analyze-source}/steps-c/step-06-generate-briefs.md +14 -66
- package/src/skf-analyze-source/steps-c/step-07-health-check.md +22 -0
- package/src/skf-audit-skill/SKILL.md +59 -0
- package/src/{workflows/audit-skill/data → skf-audit-skill/assets}/drift-report-template.md +7 -7
- package/src/{workflows/audit-skill/data → skf-audit-skill/references}/severity-rules.md +11 -11
- package/src/{workflows/audit-skill → skf-audit-skill}/steps-c/step-01-init.md +24 -68
- package/src/{workflows/audit-skill → skf-audit-skill}/steps-c/step-02-re-index.md +36 -71
- package/src/{workflows/audit-skill → skf-audit-skill}/steps-c/step-03-structural-diff.md +21 -63
- package/src/{workflows/audit-skill → skf-audit-skill}/steps-c/step-04-semantic-diff.md +6 -65
- package/src/{workflows/audit-skill → skf-audit-skill}/steps-c/step-05-severity-classify.md +5 -63
- package/src/{workflows/audit-skill → skf-audit-skill}/steps-c/step-06-report.md +10 -59
- package/src/skf-audit-skill/steps-c/step-07-health-check.md +22 -0
- package/src/skf-brief-skill/SKILL.md +53 -0
- package/src/{workflows/brief-skill/data → skf-brief-skill/assets}/scope-templates.md +23 -0
- package/src/skf-brief-skill/assets/skill-brief-schema.md +206 -0
- package/src/{workflows/brief-skill → skf-brief-skill}/steps-c/step-01-gather-intent.md +6 -67
- package/src/{workflows/brief-skill → skf-brief-skill}/steps-c/step-02-analyze-target.md +6 -66
- package/src/{workflows/brief-skill → skf-brief-skill}/steps-c/step-03-scope-definition.md +12 -68
- package/src/{workflows/brief-skill → skf-brief-skill}/steps-c/step-04-confirm-brief.md +5 -63
- package/src/{workflows/brief-skill → skf-brief-skill}/steps-c/step-05-write-brief.md +10 -69
- package/src/skf-brief-skill/steps-c/step-06-health-check.md +22 -0
- package/src/skf-create-skill/SKILL.md +63 -0
- package/src/{workflows/create-skill/data → skf-create-skill/assets}/compile-assembly-rules.md +60 -0
- package/src/{workflows/create-skill/data → skf-create-skill/assets}/skill-sections.md +92 -23
- package/src/skf-create-skill/assets/tessl-dismissal-rules.md +102 -0
- package/src/{workflows/create-skill/data → skf-create-skill/references}/extraction-patterns-tracing.md +13 -13
- package/src/{workflows/create-skill/data → skf-create-skill/references}/extraction-patterns.md +8 -3
- package/src/skf-create-skill/references/source-resolution-protocols.md +239 -0
- package/src/{workflows/create-skill/data → skf-create-skill/references}/tier-degradation-rules.md +8 -7
- package/src/{workflows/create-skill → skf-create-skill}/steps-c/step-01-load-brief.md +25 -63
- package/src/{workflows/create-skill → skf-create-skill}/steps-c/step-02-ecosystem-check.md +8 -64
- package/src/skf-create-skill/steps-c/step-03-extract.md +379 -0
- package/src/{workflows/create-skill → skf-create-skill}/steps-c/step-03d-component-extraction.md +18 -35
- package/src/{workflows/create-skill → skf-create-skill}/steps-c/step-04-enrich.md +12 -69
- package/src/{workflows/create-skill → skf-create-skill}/steps-c/step-05-compile.md +71 -75
- package/src/skf-create-skill/steps-c/step-06-validate.md +267 -0
- package/src/{workflows/create-skill → skf-create-skill}/steps-c/step-07-generate-artifacts.md +30 -74
- package/src/skf-create-skill/steps-c/step-08-report.md +145 -0
- package/src/skf-create-skill/steps-c/step-09-health-check.md +23 -0
- package/src/{workflows/create-skill/steps-c → skf-create-skill/steps-c/sub}/step-02b-ccc-discover.md +8 -66
- package/src/skf-create-skill/steps-c/sub/step-03b-fetch-temporal.md +229 -0
- package/src/{workflows/create-skill/steps-c → skf-create-skill/steps-c/sub}/step-03c-fetch-docs.md +18 -42
- package/src/skf-create-stack-skill/SKILL.md +64 -0
- package/src/{workflows/create-stack-skill/data → skf-create-stack-skill/assets}/stack-skill-template.md +2 -1
- package/src/{workflows/create-stack-skill/data → skf-create-stack-skill/references}/compose-mode-rules.md +19 -5
- package/src/{workflows/create-stack-skill/data → skf-create-stack-skill/references}/integration-patterns.md +1 -1
- package/src/{workflows/create-stack-skill/data → skf-create-stack-skill/references}/manifest-patterns.md +10 -10
- package/src/{workflows/create-stack-skill → skf-create-stack-skill}/steps-c/step-01-init.md +14 -55
- package/src/{workflows/create-stack-skill → skf-create-stack-skill}/steps-c/step-02-detect-manifests.md +29 -63
- package/src/{workflows/create-stack-skill → skf-create-stack-skill}/steps-c/step-03-rank-and-confirm.md +9 -59
- package/src/{workflows/create-stack-skill → skf-create-stack-skill}/steps-c/step-04-parallel-extract.md +29 -64
- package/src/skf-create-stack-skill/steps-c/step-05-detect-integrations.md +164 -0
- package/src/{workflows/create-stack-skill → skf-create-stack-skill}/steps-c/step-06-compile-stack.md +7 -60
- package/src/skf-create-stack-skill/steps-c/step-07-generate-output.md +328 -0
- package/src/{workflows/create-stack-skill → skf-create-stack-skill}/steps-c/step-08-validate.md +17 -63
- package/src/skf-create-stack-skill/steps-c/step-09-report.md +128 -0
- package/src/skf-create-stack-skill/steps-c/step-10-health-check.md +22 -0
- package/src/skf-drop-skill/SKILL.md +57 -0
- package/src/{workflows/drop-skill → skf-drop-skill}/steps-c/step-01-select.md +9 -69
- package/src/{workflows/drop-skill → skf-drop-skill}/steps-c/step-02-execute.md +30 -106
- package/src/skf-drop-skill/steps-c/step-03-report.md +83 -0
- package/src/skf-drop-skill/steps-c/step-04-health-check.md +22 -0
- package/src/skf-export-skill/SKILL.md +57 -0
- package/src/skf-export-skill/assets/managed-section-format.md +138 -0
- package/src/{workflows/export-skill/data → skf-export-skill/assets}/snippet-format.md +8 -12
- package/src/skf-export-skill/steps-c/step-01-load-skill.md +247 -0
- package/src/{workflows/export-skill → skf-export-skill}/steps-c/step-02-package.md +5 -58
- package/src/{workflows/export-skill → skf-export-skill}/steps-c/step-03-generate-snippet.md +15 -77
- package/src/{workflows/export-skill → skf-export-skill}/steps-c/step-04-update-context.md +59 -133
- package/src/{workflows/export-skill → skf-export-skill}/steps-c/step-05-token-report.md +4 -58
- package/src/{workflows/export-skill → skf-export-skill}/steps-c/step-06-summary.md +20 -64
- package/src/skf-export-skill/steps-c/step-07-health-check.md +22 -0
- package/src/skf-forger/SKILL.md +110 -0
- package/src/skf-forger/bmad-skill-manifest.yaml +11 -0
- package/src/skf-quick-skill/SKILL.md +56 -0
- package/src/{workflows/quick-skill/data → skf-quick-skill/references}/registry-resolution.md +6 -6
- package/src/{workflows/quick-skill → skf-quick-skill}/steps-c/step-01-resolve-target.md +9 -62
- package/src/{workflows/quick-skill → skf-quick-skill}/steps-c/step-02-ecosystem-check.md +5 -59
- package/src/{workflows/quick-skill → skf-quick-skill}/steps-c/step-03-quick-extract.md +18 -61
- package/src/{workflows/quick-skill → skf-quick-skill}/steps-c/step-04-compile.md +6 -60
- package/src/{workflows/quick-skill → skf-quick-skill}/steps-c/step-05-validate.md +58 -78
- package/src/skf-quick-skill/steps-c/step-06-write.md +73 -0
- package/src/skf-quick-skill/steps-c/step-07-health-check.md +22 -0
- package/src/skf-refine-architecture/SKILL.md +57 -0
- package/src/{workflows/refine-architecture/data → skf-refine-architecture/references}/refinement-rules.md +16 -16
- package/src/{workflows/refine-architecture → skf-refine-architecture}/steps-c/step-01-init.md +6 -63
- package/src/{workflows/refine-architecture → skf-refine-architecture}/steps-c/step-02-gap-analysis.md +29 -71
- package/src/{workflows/refine-architecture → skf-refine-architecture}/steps-c/step-03-issue-detection.md +5 -65
- package/src/{workflows/refine-architecture → skf-refine-architecture}/steps-c/step-04-improvements.md +5 -64
- package/src/{workflows/refine-architecture → skf-refine-architecture}/steps-c/step-05-compile.md +5 -56
- package/src/{workflows/refine-architecture → skf-refine-architecture}/steps-c/step-06-report.md +14 -64
- package/src/skf-refine-architecture/steps-c/step-07-health-check.md +22 -0
- package/src/skf-rename-skill/SKILL.md +58 -0
- package/src/{workflows/rename-skill → skf-rename-skill}/steps-c/step-01-select.md +12 -73
- package/src/{workflows/rename-skill → skf-rename-skill}/steps-c/step-02-execute.md +32 -113
- package/src/skf-rename-skill/steps-c/step-03-report.md +83 -0
- package/src/skf-rename-skill/steps-c/step-04-health-check.md +22 -0
- package/src/skf-setup/SKILL.md +55 -0
- package/src/{workflows/setup-forge → skf-setup}/steps-c/step-01-detect-and-tier.md +6 -62
- package/src/{workflows/setup-forge → skf-setup}/steps-c/step-01b-ccc-index.md +9 -65
- package/src/{workflows/setup-forge → skf-setup}/steps-c/step-02-write-config.md +15 -60
- package/src/{workflows/setup-forge → skf-setup}/steps-c/step-03-auto-index.md +7 -66
- package/src/skf-setup/steps-c/step-04-report.md +92 -0
- package/src/skf-setup/steps-c/step-05-health-check.md +22 -0
- package/src/skf-test-skill/SKILL.md +59 -0
- package/src/skf-test-skill/references/migration-section-rules.md +114 -0
- package/src/skf-test-skill/references/scoring-rules.md +207 -0
- package/src/skf-test-skill/references/source-access-protocol.md +109 -0
- package/src/skf-test-skill/scripts/compute-score.py +310 -0
- package/src/skf-test-skill/steps-c/step-01-init.md +238 -0
- package/src/{workflows/test-skill → skf-test-skill}/steps-c/step-02-detect-mode.md +4 -62
- package/src/skf-test-skill/steps-c/step-03-coverage-check.md +347 -0
- package/src/skf-test-skill/steps-c/step-04-coherence-check.md +239 -0
- package/src/{workflows/test-skill → skf-test-skill}/steps-c/step-04b-external-validators.md +42 -77
- package/src/skf-test-skill/steps-c/step-05-score.md +266 -0
- package/src/skf-test-skill/steps-c/step-06-report.md +290 -0
- package/src/skf-test-skill/steps-c/step-07-health-check.md +25 -0
- package/src/skf-test-skill/templates/test-report-template.md +58 -0
- package/src/skf-update-skill/SKILL.md +58 -0
- package/src/{workflows/update-skill/data → skf-update-skill/references}/manual-section-rules.md +6 -6
- package/src/{workflows/update-skill/data → skf-update-skill/references}/merge-conflict-rules.md +5 -5
- package/src/skf-update-skill/references/remote-source-resolution.md +94 -0
- package/src/{workflows/update-skill → skf-update-skill}/steps-c/step-01-init.md +22 -69
- package/src/skf-update-skill/steps-c/step-02-detect-changes.md +255 -0
- package/src/skf-update-skill/steps-c/step-03-re-extract.md +336 -0
- package/src/{workflows/update-skill → skf-update-skill}/steps-c/step-04-merge.md +60 -72
- package/src/{workflows/update-skill → skf-update-skill}/steps-c/step-05-validate.md +5 -62
- package/src/skf-update-skill/steps-c/step-06-write.md +278 -0
- package/src/{workflows/update-skill → skf-update-skill}/steps-c/step-07-report.md +11 -66
- package/src/skf-update-skill/steps-c/step-08-health-check.md +22 -0
- package/src/skf-verify-stack/SKILL.md +60 -0
- package/src/skf-verify-stack/assets/feasibility-report-template.md +76 -0
- package/src/{workflows/verify-stack/data → skf-verify-stack/references}/coverage-patterns.md +12 -4
- package/src/skf-verify-stack/references/integration-verification-rules.md +78 -0
- package/src/skf-verify-stack/steps-c/step-01-init.md +178 -0
- package/src/{workflows/verify-stack → skf-verify-stack}/steps-c/step-02-coverage.md +27 -72
- package/src/skf-verify-stack/steps-c/step-03-integrations.md +179 -0
- package/src/{workflows/verify-stack → skf-verify-stack}/steps-c/step-04-requirements.md +14 -67
- package/src/skf-verify-stack/steps-c/step-05-synthesize.md +147 -0
- package/src/skf-verify-stack/steps-c/step-06-report.md +156 -0
- package/src/skf-verify-stack/steps-c/step-07-health-check.md +25 -0
- package/tools/cli/commands/install.js +1 -1
- package/tools/cli/commands/status.js +21 -23
- package/tools/cli/commands/uninstall.js +11 -19
- package/tools/cli/commands/update.js +2 -2
- package/tools/cli/lib/ide-skills.js +216 -0
- package/tools/cli/lib/installer.js +29 -52
- package/tools/cli/lib/manifest.js +11 -5
- package/tools/cli/lib/platform-codes.yaml +223 -0
- package/tools/cli/lib/ui.js +76 -47
- package/tools/validate-docs-drift.js +193 -0
- package/src/agents/forger.agent.yaml +0 -114
- package/src/workflows/README.md +0 -174
- package/src/workflows/analyze-source/data/skill-brief-schema.md +0 -125
- package/src/workflows/analyze-source/data/unit-detection-heuristics.md +0 -124
- package/src/workflows/analyze-source/workflow.md +0 -61
- package/src/workflows/audit-skill/workflow.md +0 -64
- package/src/workflows/brief-skill/data/skill-brief-schema.md +0 -159
- package/src/workflows/brief-skill/workflow.md +0 -58
- package/src/workflows/create-skill/data/source-resolution-protocols.md +0 -200
- package/src/workflows/create-skill/steps-c/step-03-extract.md +0 -301
- package/src/workflows/create-skill/steps-c/step-03b-fetch-temporal.md +0 -253
- package/src/workflows/create-skill/steps-c/step-06-validate.md +0 -254
- package/src/workflows/create-skill/steps-c/step-08-report.md +0 -176
- package/src/workflows/create-skill/workflow.md +0 -53
- package/src/workflows/create-stack-skill/steps-c/step-05-detect-integrations.md +0 -196
- package/src/workflows/create-stack-skill/steps-c/step-07-generate-output.md +0 -270
- package/src/workflows/create-stack-skill/steps-c/step-09-report.md +0 -145
- package/src/workflows/create-stack-skill/workflow.md +0 -59
- package/src/workflows/drop-skill/steps-c/step-03-report.md +0 -135
- package/src/workflows/drop-skill/workflow.md +0 -63
- package/src/workflows/export-skill/data/managed-section-format.md +0 -103
- package/src/workflows/export-skill/steps-c/step-01-load-skill.md +0 -237
- package/src/workflows/export-skill/workflow.md +0 -58
- package/src/workflows/quick-skill/steps-c/step-06-write.md +0 -179
- package/src/workflows/quick-skill/workflow.md +0 -58
- package/src/workflows/refine-architecture/workflow.md +0 -61
- package/src/workflows/rename-skill/steps-c/step-03-report.md +0 -132
- package/src/workflows/rename-skill/workflow.md +0 -64
- package/src/workflows/setup-forge/steps-c/step-04-report.md +0 -156
- package/src/workflows/setup-forge/workflow.md +0 -51
- package/src/workflows/test-skill/data/scoring-rules.md +0 -123
- package/src/workflows/test-skill/data/source-access-protocol.md +0 -51
- package/src/workflows/test-skill/steps-c/step-01-init.md +0 -217
- package/src/workflows/test-skill/steps-c/step-03-coverage-check.md +0 -280
- package/src/workflows/test-skill/steps-c/step-04-coherence-check.md +0 -271
- package/src/workflows/test-skill/steps-c/step-05-score.md +0 -222
- package/src/workflows/test-skill/steps-c/step-06-report.md +0 -207
- package/src/workflows/test-skill/templates/test-report-template.md +0 -28
- package/src/workflows/test-skill/workflow.md +0 -57
- package/src/workflows/update-skill/data/remote-source-resolution.md +0 -57
- package/src/workflows/update-skill/steps-c/step-02-detect-changes.md +0 -221
- package/src/workflows/update-skill/steps-c/step-03-re-extract.md +0 -256
- package/src/workflows/update-skill/steps-c/step-06-write.md +0 -265
- package/src/workflows/update-skill/workflow.md +0 -56
- package/src/workflows/verify-stack/data/feasibility-report-template.md +0 -63
- package/src/workflows/verify-stack/data/integration-verification-rules.md +0 -73
- package/src/workflows/verify-stack/steps-c/step-01-init.md +0 -179
- package/src/workflows/verify-stack/steps-c/step-03-integrations.md +0 -195
- package/src/workflows/verify-stack/steps-c/step-05-synthesize.md +0 -191
- package/src/workflows/verify-stack/steps-c/step-06-report.md +0 -197
- package/src/workflows/verify-stack/workflow.md +0 -61
- package/tools/cli/lib/compiler.js +0 -306
- package/tools/cli/lib/ide-commands.js +0 -244
- /package/src/{workflows/analyze-source → skf-analyze-source}/templates/analysis-report-template.md +0 -0
- /package/src/{workflows/quick-skill/data → skf-quick-skill/assets}/skill-template.md +0 -0
- /package/src/{workflows/setup-forge/data → skf-setup/references}/tier-rules.md +0 -0
- /package/src/{workflows/test-skill/data → skf-test-skill/assets}/output-section-formats.md +0 -0
package/docs/getting-started.md
CHANGED
|
@@ -1,55 +1,67 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: Getting Started
|
|
3
|
-
description:
|
|
3
|
+
description: Install Skill Forge and generate your first verified skill in under a minute.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
## In 60 seconds
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
One command. One verified skill. Here's a real snippet from a cognee skill SKF compiled:
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
```python
|
|
11
|
+
await cognee.search( # [AST:cognee/api/v1/search/search.py:L26]
|
|
12
|
+
query_text="What does Cognee do?"
|
|
13
|
+
)
|
|
14
|
+
```
|
|
11
15
|
|
|
12
|
-
|
|
16
|
+
Every instruction carries a receipt — a file, a line, and a commit SHA from the upstream repo. Your AI reads these instead of guessing from training data, and you can open the source at the pinned commit to confirm the function exists. Nothing is made up; everything is falsifiable.
|
|
13
17
|
|
|
14
|
-
|
|
18
|
+
Want to see the full audit on a real shipped skill before you install anything? → [Verifying a Skill](../verifying-a-skill/).
|
|
15
19
|
|
|
16
20
|
---
|
|
17
21
|
|
|
18
|
-
##
|
|
19
|
-
|
|
20
|
-
There are three ways to install SKF, depending on your setup.
|
|
22
|
+
## Install
|
|
21
23
|
|
|
22
|
-
|
|
24
|
+
One command, on any platform. Requires Node.js ≥ 22, Python ≥ 3.10, and `uv` ([full tool matrix below](#prerequisites-full-reference)).
|
|
23
25
|
|
|
24
26
|
```bash
|
|
25
27
|
npx bmad-module-skill-forge install
|
|
26
28
|
```
|
|
27
29
|
|
|
28
|
-
|
|
30
|
+
You'll be prompted for project name, output folders, and which IDEs to configure. The installer copies skill directories to each IDE's skills folder (e.g. `.claude/skills/`, `.cursor/skills/`) so skills are available natively.
|
|
29
31
|
|
|
30
|
-
### As a custom module during
|
|
32
|
+
### As a custom module during BMAD Method installation
|
|
31
33
|
|
|
32
34
|
```bash
|
|
33
35
|
npx bmad-method install
|
|
34
36
|
```
|
|
35
37
|
|
|
36
|
-
|
|
38
|
+
Step through the installer prompts:
|
|
39
|
+
|
|
40
|
+
- **"Would you like to browse community modules?"** — No (SKF isn't in the community catalog yet)
|
|
41
|
+
- **"Would you like to install from a custom source (Git URL or local path)?"** — Yes
|
|
42
|
+
- **"Git URL or local path:"** — paste the SKF repo URL:
|
|
37
43
|
|
|
38
44
|
```
|
|
39
|
-
|
|
45
|
+
https://github.com/armelhbobdad/bmad-module-skill-forge
|
|
40
46
|
```
|
|
41
47
|
|
|
42
|
-
|
|
48
|
+
Or, if you've already cloned the repo locally, provide the path to the repo root instead:
|
|
43
49
|
|
|
44
|
-
|
|
50
|
+
```
|
|
51
|
+
/path/to/bmad-module-skill-forge
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
This installs BMAD core + SKF together with full IDE integration, manifests, and help catalog. Best when you want the complete BMAD development workflow. See [BMAD Synergy](../bmad-synergy/) for how SKF workflows pair with BMM phases and other BMAD modules.
|
|
45
55
|
|
|
46
|
-
|
|
56
|
+
### Add SKF to an existing BMAD project
|
|
57
|
+
|
|
58
|
+
If you already have BMAD installed, you can add SKF afterward by running the standalone installer in the same directory:
|
|
47
59
|
|
|
48
60
|
```bash
|
|
49
61
|
npx bmad-module-skill-forge install
|
|
50
62
|
```
|
|
51
63
|
|
|
52
|
-
The installer detects the existing `_bmad/` directory and installs SKF alongside your current modules.
|
|
64
|
+
The installer detects the existing `_bmad/` directory and installs SKF alongside your current modules. See [BMAD Synergy](../bmad-synergy/) for integration patterns with your existing BMM workflows.
|
|
53
65
|
|
|
54
66
|
### Updating an existing SKF installation
|
|
55
67
|
|
|
@@ -59,46 +71,15 @@ To move to a newer (or older) SKF version, run the installer again in your proje
|
|
|
59
71
|
npx bmad-module-skill-forge@latest install
|
|
60
72
|
```
|
|
61
73
|
|
|
62
|
-
The installer reads the installed version from your manifest and shows the delta in the prompt — for example `v0.
|
|
74
|
+
The installer reads the installed version from your manifest and shows the delta in the prompt — for example `v0.10.0 → v1.0.0 available`. Pick **Update** to replace SKF files while keeping your `config.yaml` intact. The option label adapts to the direction you're moving (upgrade, reinstall the same version, or downgrade) so you always see exactly what you're about to apply. Pick **Fresh install** instead if you want to wipe everything and start clean.
|
|
63
75
|
|
|
64
76
|
> The `@latest` suffix forces npx to fetch the newest published version instead of reusing a cached copy from a previous run.
|
|
65
77
|
|
|
66
78
|
---
|
|
67
79
|
|
|
68
|
-
##
|
|
69
|
-
|
|
70
|
-
| Tool | Required For | Install |
|
|
71
|
-
|------------------------------------------------------------------------|--------------------------------------------------|--------------------------------------------------------|
|
|
72
|
-
| [Node.js](https://nodejs.org/) >= 22 | Installation, npx commands | <https://nodejs.org> |
|
|
73
|
-
| `gh` (GitHub CLI) | Required for Deep mode. Optional convenience in Quick/Forge/Forge+ for source access. | <https://cli.github.com> |
|
|
74
|
-
| `ast-grep` (CLI tool for code structural search, lint, and rewriting) | Forge + Deep modes | <https://ast-grep.github.io> |
|
|
75
|
-
| `ast-grep` MCP server (recommended alongside CLI) | Forge + Deep modes | <https://github.com/ast-grep/ast-grep-mcp> |
|
|
76
|
-
| `ccc` (cocoindex-code semantic code search) | Forge+ mode | <https://github.com/cocoindex-io/cocoindex-code> |
|
|
77
|
-
| `qmd` (local hybrid search engine for project files) | Deep mode | <https://github.com/tobi/qmd> |
|
|
78
|
-
| `SNYK_TOKEN` (Snyk API token — **Enterprise plan required**) | Optional security scan | <https://docs.snyk.io/snyk-api/authentication-for-api> |
|
|
79
|
-
|
|
80
|
-
Don't worry if you don't have all tools — SKF detects what's available and sets your tier automatically. Security scanning via Snyk is optional and requires an Enterprise plan; it does not affect your tier level.
|
|
81
|
-
|
|
82
|
-
---
|
|
83
|
-
|
|
84
|
-
## Configuration
|
|
85
|
-
|
|
86
|
-
SKF has two install-time variables (defined in `src/module.yaml`), one Core Config variable inherited from BMad, and one runtime preference:
|
|
87
|
-
|
|
88
|
-
| Variable | Purpose | Default |
|
|
89
|
-
|------------------------|------------------------------------------------------------------------------------------------------|-----------------------------|
|
|
90
|
-
| `skills_output_folder` | Where generated skills are saved | `{project-root}/skills` |
|
|
91
|
-
| `forge_data_folder` | Where workspace artifacts are stored (VS reports, evidence) | `{project-root}/forge-data` |
|
|
92
|
-
| `output_folder` | Where refined architecture documents are saved (used by RA workflow). *Inherited from BMad Core Config.* | Defined by BMad Core Config |
|
|
93
|
-
| `tier_override` | Force a specific tier for comparison or testing (in `_bmad/_memory/forger-sidecar/preferences.yaml`) | `~` (auto-detect) |
|
|
94
|
-
|
|
95
|
-
Runtime configuration (tool detection, tier, and collection state) is managed by the `setup-forge` workflow and persisted in `forge-tier.yaml`.
|
|
96
|
-
|
|
97
|
-
---
|
|
98
|
-
|
|
99
|
-
## First Steps
|
|
80
|
+
## Your first skill
|
|
100
81
|
|
|
101
|
-
### 1. Setup
|
|
82
|
+
### 1. Setup your forge
|
|
102
83
|
|
|
103
84
|
```
|
|
104
85
|
@Ferris SF
|
|
@@ -106,7 +87,7 @@ Runtime configuration (tool detection, tier, and collection state) is managed by
|
|
|
106
87
|
|
|
107
88
|
This detects your tools, sets your capability tier, and initializes the forge environment. You only need to do this once per project.
|
|
108
89
|
|
|
109
|
-
### 2. Generate
|
|
90
|
+
### 2. Generate your first skill
|
|
110
91
|
|
|
111
92
|
**Fastest path (Quick Skill):**
|
|
112
93
|
```
|
|
@@ -117,10 +98,17 @@ Ferris reads the repository, extracts the public API, and generates a skill in u
|
|
|
117
98
|
|
|
118
99
|
**Targeting a specific version:** Append `@version` to pin the skill to a library version:
|
|
119
100
|
```
|
|
120
|
-
@Ferris QS cognee@0.
|
|
101
|
+
@Ferris QS cognee@1.0.0
|
|
121
102
|
```
|
|
122
103
|
|
|
123
|
-
**Full quality path (
|
|
104
|
+
**Full quality path (pipeline mode):**
|
|
105
|
+
```
|
|
106
|
+
@Ferris forge https://github.com/cocoindex-io/cocoindex cocoindex
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
`forge` chains Brief → Create → Test → Export. It needs an explicit repo URL **and** a skill name because it starts with Brief Skill (BS), which doesn't guess targets. If you just want a fast skill from a package name, use `@Ferris forge-quick cognee` instead — that starts with Quick Skill (QS), which resolves packages via the registry.
|
|
110
|
+
|
|
111
|
+
Or one workflow per session:
|
|
124
112
|
```
|
|
125
113
|
@Ferris BS # Brief — scope and design the skill
|
|
126
114
|
# — clear session —
|
|
@@ -131,9 +119,9 @@ Ferris reads the repository, extracts the public API, and generates a skill in u
|
|
|
131
119
|
@Ferris EX # Export — package for distribution
|
|
132
120
|
```
|
|
133
121
|
|
|
134
|
-
>
|
|
122
|
+
> **One workflow per session.** Each SKF workflow loads step files, knowledge fragments, and extraction data into the LLM's context as it executes. Running a second workflow in the same session can cause leftover context to interfere — stale references, mode confusion, or degraded output. Clear your session (start a new conversation) before invoking a new workflow. Pipeline mode chains workflows automatically with headless mode; for manual control, start fresh between each one. Sidecar state (forge tier, preferences) persists across sessions, so no configuration is lost.
|
|
135
123
|
|
|
136
|
-
### 3. Stack
|
|
124
|
+
### 3. Stack skill (for full projects)
|
|
137
125
|
|
|
138
126
|
```
|
|
139
127
|
@Ferris SS
|
|
@@ -141,122 +129,72 @@ Ferris reads the repository, extracts the public API, and generates a skill in u
|
|
|
141
129
|
|
|
142
130
|
Analyzes your project's dependencies and generates a consolidated stack skill with integration patterns.
|
|
143
131
|
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
## Common Use Cases
|
|
147
|
-
|
|
148
|
-
### My agent keeps hallucinating API calls
|
|
149
|
-
|
|
150
|
-
Your agent invents function signatures that don't exist. Generate a verified skill so it works from structural truth instead of guessing.
|
|
151
|
-
|
|
152
|
-
```
|
|
153
|
-
@Ferris QS https://github.com/org/library
|
|
154
|
-
```
|
|
155
|
-
|
|
156
|
-
The skill pins every function to its actual source location. Hallucinations stop.
|
|
157
|
-
|
|
158
|
-
### I'm adopting a new library and need my agent to use it correctly
|
|
159
|
-
|
|
160
|
-
You added a dependency but your agent doesn't know its API yet. Quick Skill resolves package names across npm, PyPI, and crates.io.
|
|
132
|
+
> **After every workflow:** Ferris runs a **health check** — a reflection step that captures any friction, bugs, or gaps from the session. Clean runs exit in one line; when something breaks, Ferris offers to file structured findings as GitHub issues (with your approval). **Please let workflows run to completion** so the health check can fire. If it was skipped, ask Ferris to run it (`@Ferris please run the workflow health check for this session`) or [open an issue directly](https://github.com/armelhbobdad/bmad-module-skill-forge/issues/new/choose). See [Workflow Health Check](../workflows/#terminal-step-health-check).
|
|
161
133
|
|
|
162
|
-
|
|
163
|
-
@Ferris QS cognee
|
|
164
|
-
```
|
|
165
|
-
|
|
166
|
-
Ferris resolves the package to its GitHub repo, extracts the public API, and generates a skill your agent can reference immediately.
|
|
167
|
-
|
|
168
|
-
### I want my agent to understand my entire project stack
|
|
169
|
-
|
|
170
|
-
Individual skills cover single libraries. Stack Skill maps how your dependencies interact — shared types, co-import patterns, integration points.
|
|
171
|
-
|
|
172
|
-
```
|
|
173
|
-
@Ferris SS
|
|
174
|
-
```
|
|
175
|
-
|
|
176
|
-
Ferris detects your manifests, ranks dependencies by significance, and generates a consolidated skill with cross-library integration patterns.
|
|
177
|
-
|
|
178
|
-
### I'm onboarding a large existing codebase
|
|
179
|
-
|
|
180
|
-
A brownfield repo with dozens of modules. You need to know what's worth skilling before you start.
|
|
181
|
-
|
|
182
|
-
```
|
|
183
|
-
@Ferris AN
|
|
184
|
-
```
|
|
185
|
-
|
|
186
|
-
Analyze Source scans the project, identifies skillable units, maps exports, and generates recommended briefs you can batch-create with `@Ferris CS --batch`.
|
|
187
|
-
|
|
188
|
-
### I want the highest accuracy possible
|
|
134
|
+
---
|
|
189
135
|
|
|
190
|
-
|
|
136
|
+
## Common use cases
|
|
191
137
|
|
|
192
|
-
|
|
193
|
-
@Ferris SF # Setup detects your tools and sets tier automatically
|
|
194
|
-
```
|
|
138
|
+
> **Looking for end-to-end examples?** See [Examples](../examples/) for eleven real-world scenarios with full command transcripts — from Quick Skill under a minute, to brownfield onboarding, stack verification, release-prep drift remediation, and SaaS docs-only skills.
|
|
195
139
|
|
|
196
|
-
|
|
140
|
+
---
|
|
197
141
|
|
|
198
|
-
|
|
142
|
+
## Prerequisites (full reference)
|
|
199
143
|
|
|
200
|
-
|
|
144
|
+
Most users only need Node.js, Python, and `uv` — the rest unlock additional capabilities but SKF detects what's available and sets your tier automatically. You can install them later; your tier upgrades when you do.
|
|
201
145
|
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
146
|
+
| Tool | Required For | Install |
|
|
147
|
+
|------------------------------------------------------------------------|---------------------------------------------------------------------------------------|-----------------------------------------------------------|
|
|
148
|
+
| `Node.js` >= 22 | Installation, npx commands | <https://nodejs.org> |
|
|
149
|
+
| `Python` >= 3.10 | Deterministic scoring, validation, and utility scripts | <https://www.python.org> |
|
|
150
|
+
| `uv` (Python package runner) | Running Python scripts with automatic dependency management | <https://docs.astral.sh/uv/getting-started/installation/> |
|
|
151
|
+
| `gh` (GitHub CLI) | Required for Deep mode. Optional convenience in Quick/Forge/Forge+ for source access. | <https://cli.github.com> |
|
|
152
|
+
| `ast-grep` (CLI tool for code structural search, lint, and rewriting) | Forge + Deep modes | <https://ast-grep.github.io> |
|
|
153
|
+
| `ast-grep` MCP server (recommended alongside CLI) | Forge + Deep modes | <https://github.com/ast-grep/ast-grep-mcp> |
|
|
154
|
+
| `ccc` (cocoindex-code semantic code search) | Forge+ mode | <https://github.com/cocoindex-io/cocoindex-code> |
|
|
155
|
+
| `qmd` (local hybrid search engine for project files) | Deep mode | <https://github.com/tobi/qmd> |
|
|
156
|
+
| `SNYK_TOKEN` (Snyk API token — **Enterprise plan required**) | Optional security scan | <https://docs.snyk.io/snyk-api/authentication-for-api> |
|
|
210
157
|
|
|
211
|
-
|
|
158
|
+
Security scanning via Snyk is optional and requires an Enterprise plan; it does not affect your tier level.
|
|
212
159
|
|
|
213
|
-
|
|
160
|
+
### Platform support
|
|
214
161
|
|
|
215
|
-
|
|
216
|
-
@Ferris CS # or QS — generate a skill per library
|
|
217
|
-
@Ferris VS # Verify Stack — feasibility check against architecture
|
|
218
|
-
@Ferris RA # Refine Architecture — fill gaps with API evidence
|
|
219
|
-
@Ferris SS # Stack Skill — compose-mode activates automatically
|
|
220
|
-
```
|
|
162
|
+
**Linux and Windows** are exercised in CI on every PR (`ubuntu-latest` + `windows-latest` matrix on `validate` and `python` jobs). **macOS** works in practice — POSIX-equivalent to Linux — but isn't CI-gated; if you hit a macOS-specific bug, please [file an issue](https://github.com/armelhbobdad/bmad-module-skill-forge/issues).
|
|
221
163
|
|
|
222
|
-
|
|
164
|
+
On Windows, SKF transparently falls back to NTFS junctions when symlink privilege isn't held, so no Developer Mode or admin rights are required. Git Bash (bundled with [Git for Windows](https://git-scm.com/download/win)), PowerShell, and WSL2 all work.
|
|
223
165
|
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
Your existing skill is now out of date. Audit detects the drift, Update regenerates while preserving your manual additions.
|
|
227
|
-
|
|
228
|
-
```
|
|
229
|
-
@Ferris AS # Find what changed
|
|
230
|
-
@Ferris US # Regenerate — [MANUAL] sections survive
|
|
231
|
-
@Ferris TS # Verify the update
|
|
232
|
-
```
|
|
166
|
+
---
|
|
233
167
|
|
|
234
|
-
|
|
168
|
+
## Configuration
|
|
235
169
|
|
|
236
|
-
|
|
170
|
+
SKF has two install-time variables (defined in `src/module.yaml`), one Core Config variable inherited from BMAD, and one runtime preference:
|
|
237
171
|
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
172
|
+
| Variable | Purpose | Default |
|
|
173
|
+
|------------------------|----------------------------------------------------------------------------------------------------------|-----------------------------|
|
|
174
|
+
| `skills_output_folder` | Where generated skills are saved | `{project-root}/skills` |
|
|
175
|
+
| `forge_data_folder` | Where workspace artifacts are stored (VS reports, evidence) | `{project-root}/forge-data` |
|
|
176
|
+
| `output_folder` | Where refined architecture documents are saved (used by RA workflow). *Inherited from BMAD Core Config.* | Defined by BMAD Core Config |
|
|
177
|
+
| `tier_override` | Force a specific tier for comparison or testing (in `_bmad/_memory/forger-sidecar/preferences.yaml`) | `~` (auto-detect) |
|
|
178
|
+
| `headless_mode` | Skip confirmation gates in all workflows (in `_bmad/_memory/forger-sidecar/preferences.yaml`) | `false` |
|
|
242
179
|
|
|
243
|
-
|
|
180
|
+
Runtime configuration (tool detection, tier, and collection state) is managed by the `setup` workflow and persisted in `forge-tier.yaml`.
|
|
244
181
|
|
|
245
182
|
---
|
|
246
183
|
|
|
247
|
-
## What's
|
|
184
|
+
## What's next?
|
|
248
185
|
|
|
249
|
-
-
|
|
250
|
-
-
|
|
251
|
-
-
|
|
186
|
+
- [Agents](../agents/) — learn about Ferris
|
|
187
|
+
- [Workflows](../workflows/) — the full command reference
|
|
188
|
+
- [Examples](../examples/) — real-world scenarios with transcripts
|
|
252
189
|
|
|
253
190
|
---
|
|
254
191
|
|
|
255
|
-
## Need
|
|
192
|
+
## Need help?
|
|
256
193
|
|
|
257
194
|
If you run into issues:
|
|
258
195
|
1. Run `/bmad-help` — analyzes your current state and suggests what to do next
|
|
259
196
|
(e.g. `/bmad-help my quick skill has low confidence scores, how do I improve them?`)
|
|
260
|
-
*Provided by the [
|
|
197
|
+
*Provided by the [BMAD Method](https://github.com/bmad-code-org/BMAD-METHOD) — not available in standalone SKF installations.*
|
|
261
198
|
2. Run `@Ferris SF` to check your tool availability and tier
|
|
262
199
|
3. Check `forge-tier.yaml` in your forger sidecar for your current configuration
|
|
200
|
+
4. If a workflow gave you friction, ask Ferris to run the health check for that session, or [open an issue](https://github.com/armelhbobdad/bmad-module-skill-forge/issues/new/choose) — see [Workflow Health Check](../workflows/#terminal-step-health-check)
|