bmad-module-skill-forge 0.5.0 → 0.7.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/README.md +4 -3
- package/docs/agents.md +12 -5
- package/docs/concepts.md +37 -15
- package/docs/examples.md +49 -5
- package/docs/getting-started.md +43 -17
- package/docs/how-it-works.md +115 -90
- package/docs/index.md +2 -2
- package/docs/workflows.md +89 -41
- package/package.json +2 -2
- package/src/agents/forger.agent.yaml +18 -6
- package/src/forger/README.md +1 -1
- package/src/forger/forge-tier.yaml +18 -1
- package/src/forger/preferences.yaml +6 -8
- package/src/knowledge/agentskills-spec.md +1 -1
- package/src/knowledge/architecture-verification.md +102 -0
- package/src/knowledge/ccc-bridge.md +110 -0
- package/src/knowledge/confidence-tiers.md +14 -3
- package/src/knowledge/doc-fetcher.md +1 -1
- package/src/knowledge/manual-section-integrity.md +2 -2
- package/src/knowledge/overview.md +10 -6
- package/src/knowledge/progressive-capability.md +15 -6
- package/src/knowledge/qmd-registry.md +18 -1
- package/src/knowledge/skf-knowledge-index.csv +3 -1
- package/src/knowledge/skill-lifecycle.md +26 -2
- package/src/knowledge/split-body-strategy.md +16 -2
- package/src/knowledge/zero-hallucination.md +11 -8
- package/src/module-help.csv +9 -6
- package/src/module.yaml +4 -1
- package/src/workflows/README.md +36 -18
- package/src/workflows/analyze-source/data/skill-brief-schema.md +18 -5
- package/src/workflows/analyze-source/data/unit-detection-heuristics.md +1 -0
- package/src/workflows/analyze-source/steps-c/step-01-init.md +4 -4
- package/src/workflows/analyze-source/steps-c/step-01b-continue.md +1 -1
- package/src/workflows/analyze-source/steps-c/step-02-scan-project.md +1 -1
- package/src/workflows/analyze-source/steps-c/step-03-identify-units.md +1 -1
- package/src/workflows/analyze-source/steps-c/step-04-map-and-detect.md +8 -4
- package/src/workflows/analyze-source/steps-c/step-05-recommend.md +1 -1
- package/src/workflows/analyze-source/steps-c/step-06-generate-briefs.md +2 -2
- package/src/workflows/analyze-source/workflow.md +2 -2
- package/src/workflows/audit-skill/data/drift-report-template.md +6 -6
- package/src/workflows/audit-skill/data/severity-rules.md +1 -1
- package/src/workflows/audit-skill/steps-c/step-01-init.md +3 -2
- package/src/workflows/audit-skill/steps-c/step-02-re-index.md +23 -1
- package/src/workflows/audit-skill/steps-c/step-04-semantic-diff.md +6 -6
- package/src/workflows/audit-skill/workflow.md +3 -2
- package/src/workflows/brief-skill/data/scope-templates.md +10 -0
- package/src/workflows/brief-skill/data/skill-brief-schema.md +25 -23
- package/src/workflows/brief-skill/steps-c/step-01-gather-intent.md +4 -4
- package/src/workflows/brief-skill/steps-c/step-02-analyze-target.md +15 -0
- package/src/workflows/brief-skill/steps-c/step-05-write-brief.md +3 -0
- package/src/workflows/create-skill/data/extraction-patterns.md +37 -1
- package/src/workflows/create-skill/data/skill-sections.md +14 -13
- package/src/workflows/create-skill/data/source-resolution-protocols.md +1 -1
- package/src/workflows/create-skill/steps-c/step-01-load-brief.md +18 -12
- package/src/workflows/create-skill/steps-c/step-02-ecosystem-check.md +2 -2
- package/src/workflows/create-skill/steps-c/step-02b-ccc-discover.md +157 -0
- package/src/workflows/create-skill/steps-c/step-03-extract.md +25 -20
- package/src/workflows/create-skill/steps-c/step-03b-fetch-temporal.md +8 -8
- package/src/workflows/create-skill/steps-c/step-03c-fetch-docs.md +3 -1
- package/src/workflows/create-skill/steps-c/step-04-enrich.md +9 -9
- package/src/workflows/create-skill/steps-c/step-05-compile.md +4 -3
- package/src/workflows/create-skill/steps-c/step-06-validate.md +3 -3
- package/src/workflows/create-skill/steps-c/step-07-generate-artifacts.md +60 -39
- package/src/workflows/create-skill/steps-c/step-08-report.md +26 -11
- package/src/workflows/create-skill/workflow.md +3 -3
- package/src/workflows/create-stack-skill/data/compose-mode-rules.md +65 -0
- package/src/workflows/create-stack-skill/data/stack-skill-template.md +29 -7
- package/src/workflows/create-stack-skill/steps-c/step-01-init.md +25 -8
- package/src/workflows/create-stack-skill/steps-c/step-02-detect-manifests.md +35 -2
- package/src/workflows/create-stack-skill/steps-c/step-03-rank-and-confirm.md +26 -2
- package/src/workflows/create-stack-skill/steps-c/step-04-parallel-extract.md +24 -0
- package/src/workflows/create-stack-skill/steps-c/step-05-detect-integrations.md +40 -2
- package/src/workflows/create-stack-skill/steps-c/step-06-compile-stack.md +5 -1
- package/src/workflows/create-stack-skill/steps-c/step-07-generate-output.md +53 -5
- package/src/workflows/create-stack-skill/steps-c/step-08-validate.md +4 -4
- package/src/workflows/create-stack-skill/steps-c/step-09-report.md +8 -2
- package/src/workflows/create-stack-skill/workflow.md +3 -3
- package/src/workflows/export-skill/data/managed-section-format.md +8 -1
- package/src/workflows/export-skill/data/snippet-format.md +1 -1
- package/src/workflows/export-skill/steps-c/step-01-load-skill.md +1 -1
- package/src/workflows/export-skill/steps-c/step-02-package.md +1 -1
- package/src/workflows/export-skill/steps-c/step-04-update-context.md +7 -2
- package/src/workflows/export-skill/steps-c/step-05-token-report.md +1 -1
- package/src/workflows/export-skill/workflow.md +3 -1
- package/src/workflows/quick-skill/data/skill-template.md +24 -4
- package/src/workflows/quick-skill/steps-c/step-02-ecosystem-check.md +1 -3
- package/src/workflows/quick-skill/steps-c/step-04-compile.md +26 -6
- package/src/workflows/quick-skill/steps-c/step-05-validate.md +1 -1
- package/src/workflows/quick-skill/steps-c/step-06-write.md +3 -0
- package/src/workflows/quick-skill/workflow.md +1 -1
- package/src/workflows/refine-architecture/data/refinement-rules.md +102 -0
- package/src/workflows/refine-architecture/steps-c/step-01-init.md +188 -0
- package/src/workflows/refine-architecture/steps-c/step-02-gap-analysis.md +179 -0
- package/src/workflows/refine-architecture/steps-c/step-03-issue-detection.md +182 -0
- package/src/workflows/refine-architecture/steps-c/step-04-improvements.md +169 -0
- package/src/workflows/refine-architecture/steps-c/step-05-compile.md +200 -0
- package/src/workflows/refine-architecture/steps-c/step-06-report.md +147 -0
- package/src/workflows/refine-architecture/workflow.md +61 -0
- package/src/workflows/setup-forge/data/tier-rules.md +16 -6
- package/src/workflows/setup-forge/steps-c/step-01-detect-and-tier.md +33 -15
- package/src/workflows/setup-forge/steps-c/step-01b-ccc-index.md +148 -0
- package/src/workflows/setup-forge/steps-c/step-02-write-config.md +29 -12
- package/src/workflows/setup-forge/steps-c/step-03-auto-index.md +29 -6
- package/src/workflows/setup-forge/steps-c/step-04-report.md +16 -4
- package/src/workflows/setup-forge/workflow.md +4 -3
- package/src/workflows/test-skill/data/scoring-rules.md +8 -0
- package/src/workflows/test-skill/data/source-access-protocol.md +1 -1
- package/src/workflows/test-skill/steps-c/step-01-init.md +3 -2
- package/src/workflows/test-skill/steps-c/step-02-detect-mode.md +2 -0
- package/src/workflows/test-skill/templates/test-report-template.md +3 -0
- package/src/workflows/test-skill/workflow.md +2 -2
- package/src/workflows/update-skill/steps-c/step-01-init.md +3 -2
- package/src/workflows/update-skill/steps-c/step-02-detect-changes.md +2 -2
- package/src/workflows/update-skill/steps-c/step-03-re-extract.md +24 -4
- package/src/workflows/update-skill/steps-c/step-05-validate.md +7 -11
- package/src/workflows/update-skill/steps-c/step-06-write.md +7 -4
- package/src/workflows/update-skill/workflow.md +1 -1
- package/src/workflows/verify-stack/data/coverage-patterns.md +45 -0
- package/src/workflows/verify-stack/data/feasibility-report-template.md +63 -0
- package/src/workflows/verify-stack/data/integration-verification-rules.md +73 -0
- package/src/workflows/verify-stack/steps-c/step-01-init.md +174 -0
- package/src/workflows/verify-stack/steps-c/step-02-coverage.md +181 -0
- package/src/workflows/verify-stack/steps-c/step-03-integrations.md +195 -0
- package/src/workflows/verify-stack/steps-c/step-04-requirements.md +168 -0
- package/src/workflows/verify-stack/steps-c/step-05-synthesize.md +191 -0
- package/src/workflows/verify-stack/steps-c/step-06-report.md +197 -0
- package/src/workflows/verify-stack/workflow.md +61 -0
- package/tools/cli/commands/status.js +2 -1
- package/src/workflows/analyze-source/validation-report.md +0 -657
- package/src/workflows/analyze-source/workflow-plan-analyze-source.md +0 -385
- package/src/workflows/audit-skill/validation-report.md +0 -545
- package/src/workflows/audit-skill/workflow-plan-audit-skill.md +0 -318
- package/src/workflows/brief-skill/validation-report.md +0 -630
- package/src/workflows/brief-skill/workflow-plan-brief-skill.md +0 -360
- package/src/workflows/create-skill/validation-report.md +0 -189
- package/src/workflows/create-skill/workflow-plan-create-skill.md +0 -523
- package/src/workflows/create-stack-skill/validation-report.md +0 -401
- package/src/workflows/create-stack-skill/workflow-plan-create-stack-skill.md +0 -481
- package/src/workflows/export-skill/validation-report.md +0 -263
- package/src/workflows/export-skill/workflow-plan-export-skill.md +0 -369
- package/src/workflows/quick-skill/validation-report.md +0 -543
- package/src/workflows/quick-skill/workflow-plan-quick-skill.md +0 -405
- package/src/workflows/setup-forge/validation-report.md +0 -504
- package/src/workflows/setup-forge/workflow-plan-setup-forge.md +0 -428
- package/src/workflows/test-skill/validation-report.md +0 -390
- package/src/workflows/test-skill/workflow-plan-test-skill.md +0 -292
- package/src/workflows/update-skill/data/tier-degradation-rules.md +0 -46
- package/src/workflows/update-skill/validation-report.md +0 -559
- package/src/workflows/update-skill/workflow-plan-update-skill.md +0 -441
package/README.md
CHANGED
|
@@ -76,7 +76,7 @@ You'll be prompted for project name, output folders, and IDE configuration. See
|
|
|
76
76
|
2. **Generate your first skill:** `@Ferris QS <package-name>` — creates a verified skill in under a minute
|
|
77
77
|
3. **Full quality path:** `@Ferris BS` then `@Ferris CS` — brief first, then compile for maximum accuracy
|
|
78
78
|
|
|
79
|
-
See the [workflows docs](https://armelhbobdad.github.io/bmad-module-skill-forge/workflows/) for all
|
|
79
|
+
See the [workflows docs](https://armelhbobdad.github.io/bmad-module-skill-forge/workflows/) for all 12 available workflows.
|
|
80
80
|
|
|
81
81
|
## Who Is This For?
|
|
82
82
|
|
|
@@ -90,7 +90,7 @@ See the [workflows docs](https://armelhbobdad.github.io/bmad-module-skill-forge/
|
|
|
90
90
|
- **[Getting Started](https://armelhbobdad.github.io/bmad-module-skill-forge/getting-started/)** — Installation, prerequisites, and your first skill
|
|
91
91
|
- **[Concepts](https://armelhbobdad.github.io/bmad-module-skill-forge/concepts/)** — Plain-English definitions of all key terms
|
|
92
92
|
- **[How It Works](https://armelhbobdad.github.io/bmad-module-skill-forge/how-it-works/)** — Architecture, capability tiers, output format, and design decisions
|
|
93
|
-
- **[Workflows](https://armelhbobdad.github.io/bmad-module-skill-forge/workflows/)** — All
|
|
93
|
+
- **[Workflows](https://armelhbobdad.github.io/bmad-module-skill-forge/workflows/)** — All 12 workflows with commands and connection diagrams
|
|
94
94
|
- **[Agents](https://armelhbobdad.github.io/bmad-module-skill-forge/agents/)** — Ferris: the AI agent that runs all SKF workflows
|
|
95
95
|
- **[Examples](https://armelhbobdad.github.io/bmad-module-skill-forge/examples/)** — Real-world scenarios, tips, and troubleshooting
|
|
96
96
|
|
|
@@ -102,8 +102,9 @@ SKF builds on these excellent open-source tools:
|
|
|
102
102
|
|--------------------------------------------------------------|--------------------------------------------------------------------|
|
|
103
103
|
| [agentskills.io](https://github.com/agentskills/agentskills) | Skill specification and ecosystem standard |
|
|
104
104
|
| [GitHub CLI](https://cli.github.com/) | Source code access and repository intelligence (all tiers) |
|
|
105
|
-
| [ast-grep](https://github.com/ast-grep/ast-grep) | AST-based structural code extraction (Forge/Deep tiers)
|
|
105
|
+
| [ast-grep](https://github.com/ast-grep/ast-grep) | AST-based structural code extraction (Forge/Forge+/Deep tiers) |
|
|
106
106
|
| [ast-grep MCP](https://github.com/ast-grep/ast-grep-mcp) | MCP server for memory-efficient AST queries (recommended) |
|
|
107
|
+
| [cocoindex-code](https://github.com/cocoindex-io/cocoindex-code) | Semantic code search and file discovery pre-ranking (Forge+ tier) |
|
|
107
108
|
| [QMD](https://github.com/tobi/qmd) | Local hybrid search engine for knowledge indexing (Deep tier) |
|
|
108
109
|
| [skill-check](https://github.com/thedaviddias/skill-check) | Skill validation, auto-fix, quality scoring, and security scanning |
|
|
109
110
|
| [Snyk Agent Scan](https://github.com/snyk/agent-scan) | Security scanning for prompt injection and data exposure (optional) |
|
package/docs/agents.md
CHANGED
|
@@ -22,18 +22,21 @@ Ferris handles all SKF workflows. You always interact with Ferris — he switche
|
|
|
22
22
|
|
|
23
23
|
**Key Capabilities:**
|
|
24
24
|
- AST analysis via ast-grep for structural truth
|
|
25
|
+
- Semantic code discovery via cocoindex-code for intelligent file pre-ranking
|
|
25
26
|
- QMD knowledge search for temporal context and evidence
|
|
26
27
|
- agentskills.io specification compliance and validation
|
|
27
28
|
- GitHub source navigation and package-to-repo resolution
|
|
28
29
|
- Cross-knowledge synthesis for stack skills and integration patterns
|
|
30
|
+
- Skill authoring best practices enforcement (third-person voice, consistent terminology, discovery optimization)
|
|
31
|
+
- Source-derived scripts and assets extraction with provenance tracking
|
|
29
32
|
|
|
30
33
|
**Workflow-Driven Modes:**
|
|
31
34
|
|
|
32
35
|
| Mode | Behavior | Workflows |
|
|
33
36
|
|------|----------|-----------|
|
|
34
|
-
| **Architect** | Exploratory, structural, assembling | SF, AN, BS, CS, QS, SS |
|
|
37
|
+
| **Architect** | Exploratory, structural, assembling | SF, AN, BS, CS, QS, SS, RA |
|
|
35
38
|
| **Surgeon** | Precise, semantic diffing, preserves [MANUAL] | US |
|
|
36
|
-
| **Audit** | Judgmental, drift reports, completeness scoring | AS, TS |
|
|
39
|
+
| **Audit** | Judgmental, drift reports, completeness scoring | AS, TS, VS |
|
|
37
40
|
| **Delivery** | Packaging, platform-aware, ecosystem-ready | EX |
|
|
38
41
|
|
|
39
42
|
**Communication Style:**
|
|
@@ -55,7 +58,11 @@ CREATE:
|
|
|
55
58
|
[BS] Brief Skill — Design a skill scope
|
|
56
59
|
[CS] Create Skill — Compile a skill from brief
|
|
57
60
|
[QS] Quick Skill — Fast skill, no brief needed
|
|
58
|
-
[SS] Stack Skill — Consolidated project stack skill
|
|
61
|
+
[SS] Stack Skill — Consolidated project stack skill (code-mode or compose-mode)
|
|
62
|
+
|
|
63
|
+
VERIFY:
|
|
64
|
+
[VS] Verify Stack — Pre-code architecture feasibility check
|
|
65
|
+
[RA] Refine Architecture — Improve architecture with skill evidence
|
|
59
66
|
|
|
60
67
|
MAINTAIN:
|
|
61
68
|
[US] Update Skill — Regenerate after changes
|
|
@@ -65,8 +72,8 @@ MAINTAIN:
|
|
|
65
72
|
DELIVER:
|
|
66
73
|
[EX] Export Skill — Package for distribution
|
|
67
74
|
|
|
68
|
-
[WS] Workflow Status
|
|
69
|
-
[
|
|
75
|
+
[WS] Workflow Status — Show current lifecycle position
|
|
76
|
+
[KI] Knowledge Index — List available knowledge fragments
|
|
70
77
|
```
|
|
71
78
|
|
|
72
79
|
**Memory:**
|
package/docs/concepts.md
CHANGED
|
@@ -5,7 +5,7 @@ description: Plain-English definitions of key Skill Forge terms — agent skills
|
|
|
5
5
|
|
|
6
6
|
# Concepts
|
|
7
7
|
|
|
8
|
-
This page defines the key terms you'll encounter in Skill Forge
|
|
8
|
+
This page defines the key terms you'll encounter in Skill Forge, with concrete examples.
|
|
9
9
|
|
|
10
10
|
---
|
|
11
11
|
|
|
@@ -15,7 +15,7 @@ An agent skill is an instruction file that tells an AI agent how to use your cod
|
|
|
15
15
|
|
|
16
16
|
Skills follow the [agentskills.io](https://agentskills.io) open standard, so they work across Claude, Cursor, Copilot, and other AI tools.
|
|
17
17
|
|
|
18
|
-
**Example:** A skill for
|
|
18
|
+
**Example:** A skill for [cognee](https://github.com/armelhbobdad/oh-my-skills) tells your agent: "The function is `cognee.search()`, it takes `query_text`, `query_type`, `top_k`, and `session_id`, and it's defined at `cognee/api/v1/search/search.py:L26`." Every parameter and location is AST-verified from the actual source code.
|
|
19
19
|
|
|
20
20
|
---
|
|
21
21
|
|
|
@@ -24,34 +24,40 @@ Skills follow the [agentskills.io](https://agentskills.io) open standard, so the
|
|
|
24
24
|
Provenance means every instruction in a skill traces back to where it came from. For code, that's a file and line number. For documentation, it's a URL. For developer discourse, it's an issue or PR reference. If SKF can't point to a source, it doesn't include the instruction.
|
|
25
25
|
|
|
26
26
|
**Examples** (from a [real generated skill](https://github.com/armelhbobdad/oh-my-skills)):
|
|
27
|
-
- `[AST:cognee/api/v1/search/search.py:L26]` — extracted from source code via AST parsing
|
|
28
|
-
- `[SRC:cognee/api/v1/session/__init__.py:L8]` — read from source code without AST verification
|
|
29
|
-
- `[
|
|
30
|
-
- `[
|
|
27
|
+
- `[AST:cognee/api/v1/search/search.py:L26]` — extracted from source code via AST parsing (T1)
|
|
28
|
+
- `[SRC:cognee/api/v1/session/__init__.py:L8]` — read from source code without AST verification (T1-low)
|
|
29
|
+
- `[QMD:cognee-temporal:issues.md]` — surfaced from indexed developer discourse (T2)
|
|
30
|
+
- `[EXT:docs.cognee.ai/getting-started/quickstart]` — sourced from external documentation (T3)
|
|
31
31
|
|
|
32
32
|
---
|
|
33
33
|
|
|
34
|
-
## Confidence Tiers (T1/T2/T3)
|
|
34
|
+
## Confidence Tiers (T1/T1-low/T2/T3)
|
|
35
35
|
|
|
36
36
|
Each piece of information in a skill carries a confidence level based on where it came from:
|
|
37
37
|
|
|
38
|
-
- **T1 — AST extraction:** Pulled directly from source code via AST parsing. This is structural truth — the function signature actually exists in the code right now.
|
|
39
|
-
- **
|
|
40
|
-
- **
|
|
38
|
+
- **T1 — AST extraction:** Pulled directly from source code via AST parsing. This is structural truth — the function signature actually exists in the code right now. Cited as `[AST:file:Lnn]`.
|
|
39
|
+
- **T1-low — Source reading:** Found by reading source files directly without AST parsing. The location is correct but the type signature may be inferred. Produced by Quick tier and by Forge/Forge+/Deep when ast-grep cannot parse a specific file. Cited as `[SRC:file:Lnn]`.
|
|
40
|
+
- **T2 — Evidence (Deep tier only):** Surfaced by QMD knowledge search from issues, PRs, changelogs, or documentation within the repository. Available only when QMD is installed (Deep tier). Reliable context, but not as definitive as code. Cited as `[QMD:collection:document]`. T2 has two temporal subtypes:
|
|
41
|
+
- **T2-past** — Historical context (closed issues, merged PRs, changelogs) explaining API design decisions. Surfaces in the skill's `references/` directory.
|
|
42
|
+
- **T2-future** — Forward-looking context (open PRs, deprecation warnings, RFCs) about upcoming changes. Surfaces in SKILL.md Section 4b (Migration & Deprecation Warnings) and `references/`.
|
|
43
|
+
- **T3 — External:** Pulled from external documentation or websites. Treated with caution and clearly marked. Cited as `[EXT:url]`.
|
|
41
44
|
|
|
42
|
-
|
|
45
|
+
Forge+ semantic discovery (via cocoindex-code) does not introduce a new confidence tier — it influences *which* files are extracted, not *how* they're cited. Discovered files are verified by ast-grep (T1) or source reading (T1-low).
|
|
46
|
+
|
|
47
|
+
See the [Provenance](#provenance) examples above for real citations at each tier.
|
|
43
48
|
|
|
44
49
|
---
|
|
45
50
|
|
|
46
|
-
## Capability Tiers (Quick/Forge/Deep)
|
|
51
|
+
## Capability Tiers (Quick/Forge/Forge+/Deep)
|
|
47
52
|
|
|
48
53
|
Your capability tier depends on which tools you have installed. Each tier builds on the previous one:
|
|
49
54
|
|
|
50
|
-
- **Quick** —
|
|
55
|
+
- **Quick** — No tools required. SKF reads source files and builds best-effort skills. Works in under a minute. GitHub CLI used when available.
|
|
51
56
|
- **Forge** — Adds [ast-grep](https://ast-grep.github.io). SKF uses AST parsing for structural truth. Instructions are verified against the actual code structure.
|
|
52
|
-
- **
|
|
57
|
+
- **Forge+** — Adds [cocoindex-code](https://github.com/cocoindex-io/cocoindex-code). SKF uses semantic code search to discover relevant source regions before AST extraction, improving coverage on large codebases.
|
|
58
|
+
- **Deep** — Full pipeline: requires [ast-grep](https://ast-grep.github.io) + [GitHub CLI](https://cli.github.com) + [QMD](https://github.com/tobi/qmd) (all three). SKF indexes knowledge for semantic search and performs GitHub repository exploration. Skills get enriched with historical context, deprecation warnings, and cross-reference intelligence. CCC (cocoindex-code) enhances Deep tier when installed — ast-grep + gh + qmd + ccc gives maximum capability.
|
|
53
59
|
|
|
54
|
-
You don't need all tools to start. SKF detects what you have and sets your tier automatically. See [How It Works](../how-it-works
|
|
60
|
+
You don't need all tools to start. SKF detects what you have and sets your tier automatically. See [How It Works](../how-it-works/) for the full technical treatment.
|
|
55
61
|
|
|
56
62
|
---
|
|
57
63
|
|
|
@@ -94,3 +100,19 @@ Ferris switches between four modes depending on which workflow is active: Archit
|
|
|
94
100
|
SKF's core principle: if an instruction can't be traced back to actual source code, it doesn't get included in the skill. This is the opposite of how most AI tools work — they generate plausible-sounding content from training data. SKF only includes what it can verify.
|
|
95
101
|
|
|
96
102
|
This doesn't mean skills are perfect. Quick-tier skills read source files without AST verification, so they rely on best-effort extraction. But even Quick skills cite their sources, and no tier includes invented information.
|
|
103
|
+
|
|
104
|
+
---
|
|
105
|
+
|
|
106
|
+
## Scripts & Assets
|
|
107
|
+
|
|
108
|
+
Skills can include executable scripts and static assets alongside the main SKILL.md instructions. Scripts handle deterministic operations (validation, setup, data processing) while assets provide templates, schemas, and configuration examples. Both are extracted from the source repository with provenance tracking — SKF copies them, it doesn't fabricate them.
|
|
109
|
+
|
|
110
|
+
**Example:** A database library skill might include `scripts/migrate.sh` (copied from the library's `bin/` directory) and `assets/config-schema.json` (copied from the library's `schemas/` directory). Each file carries a `[SRC:file:L1]` citation and SHA-256 hash for drift detection.
|
|
111
|
+
|
|
112
|
+
---
|
|
113
|
+
|
|
114
|
+
## Best Practices
|
|
115
|
+
|
|
116
|
+
SKF integrates skill authoring best practices from the Claude platform and community guidelines. Generated skills use third-person descriptions for reliable agent discovery, consistent terminology throughout, and appropriate degrees of freedom (prescriptive for fragile operations like database migrations, flexible for creative tasks like code reviews). These practices are enforced during compilation and verified during testing.
|
|
117
|
+
|
|
118
|
+
**Example:** A skill description reads "Processes payments via REST API with token-based auth. NOT for: billing dashboards" — third-person voice, specific keywords, and negative triggers help agents select the right skill.
|
package/docs/examples.md
CHANGED
|
@@ -44,7 +44,25 @@ Provenance tags trace each instruction to its source:
|
|
|
44
44
|
- `[EXT:url]` — sourced from external documentation
|
|
45
45
|
- `[QMD:collection:doc]` — surfaced from indexed developer discourse (issues, PRs, changelogs)
|
|
46
46
|
|
|
47
|
-
See [How It Works](../how-it-works
|
|
47
|
+
See [How It Works](../how-it-works/) for the full output structure.
|
|
48
|
+
|
|
49
|
+
**Full skill directory structure:**
|
|
50
|
+
|
|
51
|
+
```
|
|
52
|
+
skills/cognee/
|
|
53
|
+
├── SKILL.md # What your agent reads
|
|
54
|
+
├── context-snippet.md # Compressed index for CLAUDE.md
|
|
55
|
+
├── metadata.json # Machine-readable provenance
|
|
56
|
+
├── references/ # Progressive disclosure detail
|
|
57
|
+
│ ├── api-core.md
|
|
58
|
+
│ └── graph-types.md
|
|
59
|
+
├── scripts/ # Executable utilities (when detected)
|
|
60
|
+
│ └── setup-graphdb.sh
|
|
61
|
+
└── assets/ # Templates and schemas (when detected)
|
|
62
|
+
└── config-schema.json
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
The `scripts/` and `assets/` directories appear only when the source repository contains them. Each file traces back to its source with provenance citations and SHA-256 hashes.
|
|
48
66
|
|
|
49
67
|
---
|
|
50
68
|
|
|
@@ -95,6 +113,21 @@ Armel's full-stack project: Next.js + Serwist + SpacetimeDB + better-auth.
|
|
|
95
113
|
|
|
96
114
|
Ferris detects 8 significant dependencies, finds 5 co-import integration points. Generates a consolidated stack skill. The agent now knows: "When you modify the auth flow, update the Serwist cache exclusion at `src/sw.ts:L23`." Integration intelligence no other tool provides.
|
|
97
115
|
|
|
116
|
+
### Pre-Code Architecture Verification — Greenfield Confidence
|
|
117
|
+
|
|
118
|
+
Jordan is designing a new TypeScript backend with Hono + Drizzle + SpacetimeDB. Architecture doc written, but no code yet. Wants to verify the stack works before building.
|
|
119
|
+
|
|
120
|
+
```
|
|
121
|
+
@Ferris QS hono # Quick Skill per library
|
|
122
|
+
@Ferris QS drizzle-orm
|
|
123
|
+
@Ferris QS spacetimedb-sdk
|
|
124
|
+
@Ferris VS # Verify Stack — feasibility report
|
|
125
|
+
@Ferris RA # Refine Architecture — enrich with API evidence
|
|
126
|
+
@Ferris SS # Stack Skill — compose-mode (no codebase needed)
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
VS finds a Risky integration between Drizzle and SpacetimeDB (incompatible query models) and returns CONDITIONALLY FEASIBLE. Jordan adds a bridge layer to the architecture, re-runs VS → FEASIBLE. RA fills in verified API signatures. SS compose-mode synthesizes the stack skill from existing skills + refined architecture. The agent now has integration intelligence for a project that doesn't have code yet.
|
|
130
|
+
|
|
98
131
|
---
|
|
99
132
|
|
|
100
133
|
## Common Scenarios
|
|
@@ -150,11 +183,11 @@ The brief's `doc_urls` field drives the doc_fetcher step. The agent uses whateve
|
|
|
150
183
|
|
|
151
184
|
### Progressive Capability
|
|
152
185
|
|
|
153
|
-
Start with Quick mode (no setup required), upgrade to Forge (install ast-grep), then Deep (install QMD). Each tier builds on the previous — you never lose capability.
|
|
186
|
+
Start with Quick mode (no setup required), upgrade to Forge (install ast-grep), then Forge+ (install cocoindex-code for semantic discovery), then Deep (install QMD). Each tier builds on the previous — you never lose capability.
|
|
154
187
|
|
|
155
188
|
### Batch Operations
|
|
156
189
|
|
|
157
|
-
Use `--batch` with `create-skill`
|
|
190
|
+
Use `--batch` with `create-skill` to process multiple briefs at once. Progress is checkpointed — if interrupted, re-run `@Ferris CS --batch` and Ferris will resume automatically from where it left off.
|
|
158
191
|
|
|
159
192
|
### Stack Skills + Individual Skills
|
|
160
193
|
|
|
@@ -164,14 +197,22 @@ Stack skills focus on integration patterns. Individual skills focus on API surfa
|
|
|
164
197
|
|
|
165
198
|
After each sprint's refactor, run `@Ferris US` to regenerate changed components. Export updates CLAUDE.md automatically. Skill generation becomes routine — like running tests.
|
|
166
199
|
|
|
200
|
+
### Best Practices Built In
|
|
201
|
+
|
|
202
|
+
Generated skills automatically follow authoring best practices: third-person descriptions for reliable agent discovery, consistent terminology, degrees-of-freedom matching (prescriptive for fragile operations, flexible for creative tasks), and table-of-contents headers in large reference files. Discovery testing recommendations are included in test reports.
|
|
203
|
+
|
|
204
|
+
### Scripts & Assets
|
|
205
|
+
|
|
206
|
+
If your source repo includes executable scripts (`scripts/`, `bin/`) or static assets (`templates/`, `schemas/`), SKF detects and packages them automatically with provenance tracking. Custom scripts you add to `scripts/[MANUAL]/` are preserved during updates — just like `<!-- [MANUAL] -->` markers in SKILL.md.
|
|
207
|
+
|
|
167
208
|
---
|
|
168
209
|
|
|
169
210
|
## Troubleshooting
|
|
170
211
|
|
|
171
212
|
### Common Issues
|
|
172
213
|
|
|
173
|
-
**
|
|
174
|
-
|
|
214
|
+
**Forge reports ast-grep is unavailable**
|
|
215
|
+
If setup-forge reports that ast-grep was not detected, install it to unlock Forge mode: <https://ast-grep.github.io>
|
|
175
216
|
|
|
176
217
|
**"No brief found"**
|
|
177
218
|
Run `@Ferris BS` first to create a skill brief, or use `@Ferris QS` for brief-less generation.
|
|
@@ -182,6 +223,9 @@ An official skill already exists for this package. Consider installing it with `
|
|
|
182
223
|
**Quick mode skills have lower confidence**
|
|
183
224
|
Quick mode reads source without AST analysis. Install ast-grep to upgrade to Forge mode for structural truth (T1 confidence).
|
|
184
225
|
|
|
226
|
+
**Want semantic discovery for large codebases?**
|
|
227
|
+
Install [cocoindex-code](https://github.com/cocoindex-io/cocoindex-code) to unlock Forge+ mode. CCC indexes your codebase and pre-ranks files by semantic relevance before AST extraction, improving coverage on projects with 500+ files.
|
|
228
|
+
|
|
185
229
|
---
|
|
186
230
|
|
|
187
231
|
## Getting More Help
|
package/docs/getting-started.md
CHANGED
|
@@ -11,7 +11,7 @@ Welcome to Skill Forge! This guide will help you get up and running.
|
|
|
11
11
|
|
|
12
12
|
## What This Module Does
|
|
13
13
|
|
|
14
|
-
Skill Forge analyzes code repositories, documentation websites, and developer discourse to build verified instruction files ("skills") for AI agents. Instead of your agent guessing API calls from training data, it follows instructions where every function, type, and pattern traces back to its source — a file and line for code, a URL for documentation, an issue or PR for discourse. Skills comply with the [agentskills.io](https://agentskills.io) open standard and work across Claude, Cursor, Copilot, and other AI tools. See the [Concepts](../concepts
|
|
14
|
+
Skill Forge analyzes code repositories, documentation websites, and developer discourse to build verified instruction files ("skills") for AI agents. Instead of your agent guessing API calls from training data, it follows instructions where every function, type, and pattern traces back to its source — a file and line for code, a URL for documentation, an issue or PR for discourse. Skills comply with the [agentskills.io](https://agentskills.io) open standard and work across Claude, Cursor, Copilot, and other AI tools. See the [Concepts](../concepts/) page for definitions of key terms.
|
|
15
15
|
|
|
16
16
|
---
|
|
17
17
|
|
|
@@ -55,14 +55,15 @@ The installer detects the existing `_bmad/` directory and installs SKF alongside
|
|
|
55
55
|
|
|
56
56
|
## Prerequisites
|
|
57
57
|
|
|
58
|
-
| Tool | Required For
|
|
59
|
-
|
|
60
|
-
| [Node.js](https://nodejs.org/) >= 22 | Installation, npx commands
|
|
61
|
-
| `gh` (GitHub CLI) |
|
|
62
|
-
| `ast-grep` (CLI tool for code structural search, lint, and rewriting) | Forge + Deep modes
|
|
63
|
-
| `ast-grep` MCP server (recommended alongside CLI) | Forge + Deep modes
|
|
64
|
-
| `
|
|
65
|
-
| `
|
|
58
|
+
| Tool | Required For | Install |
|
|
59
|
+
|------------------------------------------------------------------------|--------------------------------------------------|--------------------------------------------------------|
|
|
60
|
+
| [Node.js](https://nodejs.org/) >= 22 | Installation, npx commands | <https://nodejs.org> |
|
|
61
|
+
| `gh` (GitHub CLI) | Required for Deep mode. Optional convenience in Quick/Forge/Forge+ for source access. | <https://cli.github.com> |
|
|
62
|
+
| `ast-grep` (CLI tool for code structural search, lint, and rewriting) | Forge + Deep modes | <https://ast-grep.github.io> |
|
|
63
|
+
| `ast-grep` MCP server (recommended alongside CLI) | Forge + Deep modes | <https://github.com/ast-grep/ast-grep-mcp> |
|
|
64
|
+
| `ccc` (cocoindex-code semantic code search) | Forge+ mode | <https://github.com/cocoindex-io/cocoindex-code> |
|
|
65
|
+
| `qmd` (local hybrid search engine for project files) | Deep mode | <https://github.com/tobi/qmd> |
|
|
66
|
+
| `SNYK_TOKEN` (Snyk API token — **Enterprise plan required**) | Optional security scan | <https://docs.snyk.io/snyk-api/authentication-for-api> |
|
|
66
67
|
|
|
67
68
|
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.
|
|
68
69
|
|
|
@@ -70,15 +71,16 @@ Don't worry if you don't have all tools — SKF detects what's available and set
|
|
|
70
71
|
|
|
71
72
|
## Configuration
|
|
72
73
|
|
|
73
|
-
SKF has two install-time variables (defined in `src/module.yaml`) and one runtime preference:
|
|
74
|
+
SKF has two install-time variables (defined in `src/module.yaml`), one Core Config variable inherited from BMad, and one runtime preference:
|
|
74
75
|
|
|
75
76
|
| Variable | Purpose | Default |
|
|
76
77
|
|------------------------|------------------------------------------------------------------------------------------------------|-----------------------------|
|
|
77
78
|
| `skills_output_folder` | Where generated skills are saved | `{project-root}/skills` |
|
|
78
|
-
| `forge_data_folder` | Where workspace artifacts are stored
|
|
79
|
+
| `forge_data_folder` | Where workspace artifacts are stored (VS reports, evidence) | `{project-root}/forge-data` |
|
|
80
|
+
| `output_folder` | Where refined architecture documents are saved (used by RA workflow). *Inherited from BMad Core Config.* | Defined by BMad Core Config |
|
|
79
81
|
| `tier_override` | Force a specific tier for comparison or testing (in `_bmad/_memory/forger-sidecar/preferences.yaml`) | `~` (auto-detect) |
|
|
80
82
|
|
|
81
|
-
Runtime configuration (tool detection, tier,
|
|
83
|
+
Runtime configuration (tool detection, tier, and collection state) is managed by the `setup-forge` workflow and persisted in `forge-tier.yaml`.
|
|
82
84
|
|
|
83
85
|
---
|
|
84
86
|
|
|
@@ -163,13 +165,13 @@ Analyze Source scans the project, identifies skillable units, maps exports, and
|
|
|
163
165
|
|
|
164
166
|
### I want the highest accuracy possible
|
|
165
167
|
|
|
166
|
-
Quick mode reads source files. Forge
|
|
168
|
+
Each tier builds on the previous one. Quick mode reads source files directly. Forge adds `ast-grep` for AST-verified structural truth. Forge+ adds `ccc` (cocoindex-code) to semantically rank source regions before AST extraction — on large codebases, this ensures the most relevant exports are discovered first. Deep adds `gh` + `qmd` for GitHub exploration and QMD knowledge search with historical context enrichment.
|
|
167
169
|
|
|
168
170
|
```
|
|
169
171
|
@Ferris SF # Setup detects your tools and sets tier automatically
|
|
170
172
|
```
|
|
171
173
|
|
|
172
|
-
|
|
174
|
+
Ferris detects your tools and sets the highest tier where all required tools pass verification. With `ast-grep` + `gh` + `qmd`, you get Deep mode — every skill gets AST-verified signatures (T1) enriched with temporal context from issues, PRs, and changelogs (T2). Add `ccc` alongside those three for maximum capability: semantic discovery plus full knowledge search.
|
|
173
175
|
|
|
174
176
|
### I maintain an OSS library and want official skills
|
|
175
177
|
|
|
@@ -184,6 +186,19 @@ You want maximum quality with full provenance for distribution. Use the full pip
|
|
|
184
186
|
|
|
185
187
|
Export with `source_authority: official`. Consumers get verified skills that update with each release.
|
|
186
188
|
|
|
189
|
+
### I'm planning a new project and want to verify my tech stack works together
|
|
190
|
+
|
|
191
|
+
You have an architecture document and want to verify feasibility before writing code. Generate skills for each library, run Verify Stack to check compatibility, refine the architecture with skill evidence, then compose a stack skill.
|
|
192
|
+
|
|
193
|
+
```
|
|
194
|
+
@Ferris CS # or QS — generate a skill per library
|
|
195
|
+
@Ferris VS # Verify Stack — feasibility check against architecture
|
|
196
|
+
@Ferris RA # Refine Architecture — fill gaps with API evidence
|
|
197
|
+
@Ferris SS # Stack Skill — compose-mode activates automatically
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
VS produces a feasibility report (FEASIBLE / CONDITIONALLY FEASIBLE / NOT FEASIBLE). RA enriches your architecture doc with verified API details. SS compose-mode synthesizes a stack skill from existing skills + architecture — no codebase needed.
|
|
201
|
+
|
|
187
202
|
### A dependency shipped breaking changes
|
|
188
203
|
|
|
189
204
|
Your existing skill is now out of date. Audit detects the drift, Update regenerates while preserving your manual additions.
|
|
@@ -194,13 +209,24 @@ Your existing skill is now out of date. Audit detects the drift, Update regenera
|
|
|
194
209
|
@Ferris TS # Verify the update
|
|
195
210
|
```
|
|
196
211
|
|
|
212
|
+
### I want scripts and assets included in my skills
|
|
213
|
+
|
|
214
|
+
Your source repo has CLI tools, setup scripts, or config templates that agents should use. SKF detects and packages them automatically.
|
|
215
|
+
|
|
216
|
+
```
|
|
217
|
+
@Ferris BS # Brief — scripts/assets auto-detected by default
|
|
218
|
+
@Ferris CS # Create — scripts/ and assets/ auto-detected
|
|
219
|
+
```
|
|
220
|
+
|
|
221
|
+
Scripts from `scripts/`, `bin/`, `tools/`, and `cli/` directories are copied with provenance. Config templates and schemas from `assets/`, `templates/`, `schemas/`, `configs/`, and `examples/` are included. Custom files you add to `scripts/[MANUAL]/` survive updates.
|
|
222
|
+
|
|
197
223
|
---
|
|
198
224
|
|
|
199
225
|
## What's Next?
|
|
200
226
|
|
|
201
|
-
- Check out the [Agents Reference](../agents
|
|
202
|
-
- Browse the [Workflows Reference](../workflows
|
|
203
|
-
- See [Examples](../examples
|
|
227
|
+
- Check out the [Agents Reference](../agents/) to learn about Ferris
|
|
228
|
+
- Browse the [Workflows Reference](../workflows/) to see all available commands
|
|
229
|
+
- See [Examples](../examples/) for real-world usage scenarios
|
|
204
230
|
|
|
205
231
|
---
|
|
206
232
|
|