bmad-module-skill-forge 0.6.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 +2 -2
- package/docs/agents.md +9 -5
- package/docs/concepts.md +17 -13
- package/docs/examples.md +19 -4
- package/docs/getting-started.md +34 -19
- package/docs/how-it-works.md +85 -84
- package/docs/index.md +1 -1
- package/docs/workflows.md +88 -40
- package/package.json +1 -1
- package/src/agents/forger.agent.yaml +17 -5
- package/src/forger/README.md +1 -1
- package/src/forger/forge-tier.yaml +2 -1
- package/src/forger/preferences.yaml +5 -7
- package/src/knowledge/agentskills-spec.md +1 -1
- package/src/knowledge/architecture-verification.md +102 -0
- package/src/knowledge/ccc-bridge.md +1 -1
- package/src/knowledge/confidence-tiers.md +12 -1
- package/src/knowledge/doc-fetcher.md +1 -1
- package/src/knowledge/manual-section-integrity.md +2 -2
- package/src/knowledge/overview.md +10 -7
- package/src/knowledge/progressive-capability.md +3 -2
- package/src/knowledge/qmd-registry.md +4 -1
- package/src/knowledge/skf-knowledge-index.csv +1 -0
- 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 +3 -0
- package/src/workflows/README.md +35 -17
- package/src/workflows/analyze-source/data/skill-brief-schema.md +18 -5
- package/src/workflows/analyze-source/steps-c/step-01-init.md +2 -2
- 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 +1 -1
- 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/severity-rules.md +1 -1
- package/src/workflows/audit-skill/steps-c/step-01-init.md +1 -0
- package/src/workflows/audit-skill/steps-c/step-02-re-index.md +5 -0
- package/src/workflows/audit-skill/steps-c/step-04-semantic-diff.md +1 -1
- package/src/workflows/audit-skill/workflow.md +2 -1
- 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 +1 -1
- package/src/workflows/brief-skill/steps-c/step-05-write-brief.md +3 -0
- package/src/workflows/create-skill/data/skill-sections.md +12 -11
- package/src/workflows/create-skill/data/source-resolution-protocols.md +1 -1
- package/src/workflows/create-skill/steps-c/step-01-load-brief.md +13 -9
- package/src/workflows/create-skill/steps-c/step-03-extract.md +15 -19
- package/src/workflows/create-skill/steps-c/step-03b-fetch-temporal.md +3 -3
- 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 +1 -1
- package/src/workflows/create-skill/steps-c/step-05-compile.md +4 -3
- package/src/workflows/create-skill/steps-c/step-06-validate.md +2 -2
- package/src/workflows/create-skill/steps-c/step-07-generate-artifacts.md +33 -44
- package/src/workflows/create-skill/steps-c/step-08-report.md +25 -11
- package/src/workflows/create-skill/workflow.md +2 -2
- package/src/workflows/create-stack-skill/data/compose-mode-rules.md +65 -0
- package/src/workflows/create-stack-skill/data/stack-skill-template.md +28 -6
- package/src/workflows/create-stack-skill/steps-c/step-01-init.md +23 -7
- 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 +30 -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 +3 -3
- package/src/workflows/create-stack-skill/steps-c/step-09-report.md +8 -2
- package/src/workflows/create-stack-skill/workflow.md +2 -2
- 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-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 +18 -6
- 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/steps-c/step-01-detect-and-tier.md +2 -1
- package/src/workflows/setup-forge/steps-c/step-01b-ccc-index.md +1 -1
- package/src/workflows/setup-forge/steps-c/step-02-write-config.md +15 -16
- package/src/workflows/setup-forge/steps-c/step-03-auto-index.md +1 -1
- package/src/workflows/setup-forge/steps-c/step-04-report.md +2 -2
- package/src/workflows/setup-forge/workflow.md +3 -2
- package/src/workflows/test-skill/data/scoring-rules.md +3 -0
- package/src/workflows/test-skill/data/source-access-protocol.md +1 -1
- package/src/workflows/test-skill/steps-c/step-01-init.md +1 -0
- package/src/workflows/test-skill/steps-c/step-02-detect-mode.md +2 -0
- package/src/workflows/test-skill/workflow.md +2 -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 +5 -2
- package/src/workflows/update-skill/steps-c/step-05-validate.md +7 -11
- package/src/workflows/update-skill/steps-c/step-06-write.md +5 -2
- 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/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 -525
- 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 -430
- 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
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
## Principle
|
|
4
4
|
|
|
5
|
-
The
|
|
5
|
+
The 12 SKF workflows form an end-to-end pipeline from source discovery through verified export, with a pre-code architecture verification path. Each workflow produces artifacts consumed by downstream workflows. Understanding the lifecycle enables Ferris to recommend the right workflow for a user's situation and to maintain artifact continuity across the pipeline.
|
|
6
6
|
|
|
7
7
|
## Rationale
|
|
8
8
|
|
|
@@ -26,6 +26,7 @@ With lifecycle awareness:
|
|
|
26
26
|
| Discovery | AN (Analyze Source) | Scan project, identify skillable units | Analysis report, skill briefs |
|
|
27
27
|
| Design | BS (Brief Skill) | Interactive scope definition for one skill | `skill-brief.yaml` |
|
|
28
28
|
| Compilation | CS, QS, SS (Create/Quick/Stack) | Extract source and compile skill | `SKILL.md`, metadata, provenance, `scripts/`, `assets/` (when source contains them) |
|
|
29
|
+
| Architecture Verification | VS, RA (Verify Stack, Refine Architecture) | Pre-code feasibility check and architecture refinement | Feasibility report, refined architecture doc |
|
|
29
30
|
| Maintenance | US, AS (Update/Audit) | Detect drift and refresh skills | Updated `SKILL.md`, drift report |
|
|
30
31
|
| Verification | TS (Test Skill) | Quality gate — completeness scoring | Test report, pass/fail decision |
|
|
31
32
|
| Distribution | EX (Export Skill) | Package and inject into agent context | agentskills.io bundle, snippets |
|
|
@@ -66,6 +67,20 @@ SF → QS → EX
|
|
|
66
67
|
2. **QS** resolves a package name or URL to source and compiles directly — no brief needed
|
|
67
68
|
3. **EX** packages for distribution (optional TS between QS and EX for quality assurance)
|
|
68
69
|
|
|
70
|
+
### Pre-Code Stack Verification
|
|
71
|
+
|
|
72
|
+
```
|
|
73
|
+
SF → CS×N (per library) → VS → RA → SS (compose) → TS → EX
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
1. **SF** ensures environment is configured
|
|
77
|
+
2. **CS** compiles individual skills for each library in the stack
|
|
78
|
+
3. **VS** cross-references skills against architecture and PRD — produces a feasibility report with verdicts
|
|
79
|
+
4. **RA** refines the architecture document using skill API evidence and VS findings
|
|
80
|
+
5. **SS** (compose-mode) synthesizes the stack skill from individual skills + refined architecture
|
|
81
|
+
6. **TS** verifies the composed stack skill
|
|
82
|
+
7. **EX** packages for distribution
|
|
83
|
+
|
|
69
84
|
### Maintenance
|
|
70
85
|
|
|
71
86
|
```
|
|
@@ -92,6 +107,7 @@ AS → US → TS → EX
|
|
|
92
107
|
| User has a package name, wants fast results | QS |
|
|
93
108
|
| User wants to skill their entire project | AN → CS (batch) |
|
|
94
109
|
| User has an existing skill that may be outdated | AS → US |
|
|
110
|
+
| User wants to verify tech stack before building | CS×N → VS → RA → SS (compose) |
|
|
95
111
|
|
|
96
112
|
**Key Points:**
|
|
97
113
|
- SF is always prerequisite (but only needs to run once per project)
|
|
@@ -113,12 +129,19 @@ CS → SKILL.md + metadata.json + provenance-map.json + scripts/ + assets/ (when
|
|
|
113
129
|
TS → test-report.md (pass/fail gate)
|
|
114
130
|
↓ (passing skill consumed by EX)
|
|
115
131
|
EX → agentskills.io bundle + context snippets
|
|
132
|
+
|
|
133
|
+
VS → feasibility-report-{project_name}.md (verdict + integration verdicts)
|
|
134
|
+
↓ (report consumed by RA)
|
|
135
|
+
RA → refined-architecture-{project_name}.md (gaps filled, issues flagged, improvements suggested)
|
|
136
|
+
↓ (refined doc consumed by SS compose-mode)
|
|
137
|
+
SS (compose) → SKILL.md (stack skill synthesized from individual skills + architecture)
|
|
116
138
|
```
|
|
117
139
|
|
|
118
140
|
**Key Points:**
|
|
119
141
|
- `forge-tier.yaml` is the universal dependency — all workflows read it
|
|
120
142
|
- Skill briefs are the handoff between discovery/design and compilation
|
|
121
143
|
- TS acts as a gate — failing skills do not proceed to EX
|
|
144
|
+
- VS/RA form a pre-code verification loop — rerun after architecture changes
|
|
122
145
|
|
|
123
146
|
### Example 3: Stack Skill vs. Individual Skills
|
|
124
147
|
|
|
@@ -139,6 +162,7 @@ EX → agentskills.io bundle + context snippets
|
|
|
139
162
|
- **Analyze Source** and **Brief Skill** are alternative entry points to compilation
|
|
140
163
|
- **Test Skill** is optional but recommended — the quality gate before export
|
|
141
164
|
- **Audit Skill** and **Update Skill** form the maintenance loop
|
|
165
|
+
- **Verify Stack** and **Refine Architecture** form the pre-code verification path
|
|
142
166
|
- **Export Skill** is the terminal workflow — it produces the distributable artifact
|
|
143
167
|
|
|
144
168
|
## Related Fragments
|
|
@@ -147,4 +171,4 @@ EX → agentskills.io bundle + context snippets
|
|
|
147
171
|
- [agentskills-spec.md](agentskills-spec.md) — the output format that export-skill packages
|
|
148
172
|
- [provenance-tracking.md](provenance-tracking.md) — how provenance flows through the pipeline
|
|
149
173
|
|
|
150
|
-
_Source: synthesized from all
|
|
174
|
+
_Source: synthesized from all 12 workflow.md files (including VS, RA) and module-help.csv_
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
## Principle
|
|
4
4
|
|
|
5
|
-
Selective split is the recommended strategy when `split-body` is needed. Extract only the largest Tier 2 section(s) to stay under the
|
|
5
|
+
Selective split is the recommended strategy when `split-body` is needed. Extract only the largest Tier 2 section(s) to stay under the 500-line body guideline — keep all actionable Tier 1 content inline. Full split-body reduces agent accuracy because on-demand retrieval underperforms inline passive context.
|
|
6
6
|
|
|
7
7
|
## Rationale
|
|
8
8
|
|
|
@@ -28,9 +28,15 @@ A split-body skill is identified by:
|
|
|
28
28
|
|
|
29
29
|
When processing a split-body skill, any workflow step that reads SKILL.md content must also traverse `references/*.md` to get the complete picture.
|
|
30
30
|
|
|
31
|
+
## Anti-Patterns
|
|
32
|
+
|
|
33
|
+
- Running `skill-check split-body --write` without first attempting selective split
|
|
34
|
+
- Moving Tier 1 sections (Quick Start, Key API Summary) to references/ — these must stay inline
|
|
35
|
+
- Splitting before checking whether context snippet anchors will break
|
|
36
|
+
|
|
31
37
|
## Recommended Approach
|
|
32
38
|
|
|
33
|
-
When
|
|
39
|
+
When the 500-line body guideline is exceeded:
|
|
34
40
|
1. Identify which Tier 2 section(s) are largest (usually `## Full API Reference`)
|
|
35
41
|
2. Extract only those specific sections to `references/`
|
|
36
42
|
3. Keep all Tier 1 sections and smaller Tier 2 sections inline
|
|
@@ -39,3 +45,11 @@ When `body.max_lines` is exceeded:
|
|
|
39
45
|
## Scripts and Assets Interaction
|
|
40
46
|
|
|
41
47
|
Split-body affects only SKILL.md content movement to `references/`. The `scripts/` and `assets/` directories are unaffected — they remain as top-level siblings of SKILL.md regardless of split-body decisions. They do not count toward the body line limit.
|
|
48
|
+
|
|
49
|
+
## Related Fragments
|
|
50
|
+
|
|
51
|
+
- [agentskills-spec.md](agentskills-spec.md) — 500-line guideline for SKILL.md body size and the `references/` directory structure
|
|
52
|
+
- [skill-lifecycle.md](skill-lifecycle.md) — where split-body decisions fit in the compilation pipeline
|
|
53
|
+
- `test-skill/data/scoring-rules.md` — tessl/split-body interaction and the pre-split baseline recommendation during test reporting
|
|
54
|
+
|
|
55
|
+
_Source: derived from agentskills.io split-body guidance and Vercel agent accuracy research (inline vs on-demand retrieval)_
|
|
@@ -62,14 +62,17 @@ With zero hallucination enforcement:
|
|
|
62
62
|
|
|
63
63
|
**Implementation:** Extraction relies on source reading and pattern matching. All citations use `[SRC:file:Lnn]` format (T1-low confidence). The skill clearly states its extraction tier so consuming agents understand the confidence level.
|
|
64
64
|
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
65
|
+
```json
|
|
66
|
+
// metadata.json (excerpt)
|
|
67
|
+
{
|
|
68
|
+
"confidence_tier": "Quick",
|
|
69
|
+
"confidence_distribution": {
|
|
70
|
+
"t1": 0,
|
|
71
|
+
"t1_low": 47,
|
|
72
|
+
"t2": 0,
|
|
73
|
+
"t3": 3
|
|
74
|
+
}
|
|
75
|
+
}
|
|
73
76
|
```
|
|
74
77
|
|
|
75
78
|
**Key Points:**
|
package/src/module-help.csv
CHANGED
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
module,phase,name,code,sequence,workflow-file,command,required,agent,options,description,output-location,outputs,
|
|
2
|
-
skf,anytime,Setup Forge,SF,,_bmad/skf/workflows/skillforge/setup-forge/workflow.md,skf_setup_forge,false,ferris,Create Mode,"Initialize forge environment — detect tools and set capability tier (Quick/Forge/Forge+/Deep)",,forge-
|
|
2
|
+
skf,anytime,Setup Forge,SF,,_bmad/skf/workflows/skillforge/setup-forge/workflow.md,skf_setup_forge,false,ferris,Create Mode,"Initialize forge environment — detect tools and set capability tier (Quick/Forge/Forge+/Deep)",,forge-tier.yaml,
|
|
3
3
|
skf,anytime,Analyze Source,AN,,_bmad/skf/workflows/skillforge/analyze-source/workflow.md,skf_analyze_source,false,ferris,Create Mode,"Discover what to skill in a large repo — produces recommended skill briefs",forge_data_folder,skill-brief.yaml,
|
|
4
4
|
skf,anytime,Brief Skill,BS,,_bmad/skf/workflows/skillforge/brief-skill/workflow.md,skf_brief_skill,false,ferris,Create Mode,"Design a skill scope through guided discovery",forge_data_folder,skill-brief.yaml,
|
|
5
5
|
skf,anytime,Create Skill,CS,,_bmad/skf/workflows/skillforge/create-skill/workflow.md,skf_create_skill,false,ferris,Create Mode,"Compile a skill from a brief — supports --batch for multiple briefs",skills_output_folder,SKILL.md,
|
|
6
6
|
skf,anytime,Quick Skill,QS,,_bmad/skf/workflows/skillforge/quick-skill/workflow.md,skf_quick_skill,false,ferris,Create Mode,"Fast skill from a package name or GitHub URL — no brief needed",skills_output_folder,SKILL.md,
|
|
7
|
-
skf,anytime,Stack Skill,SS,,_bmad/skf/workflows/skillforge/create-stack-skill/workflow.md,skf_create_stack_skill,false,ferris,Create Mode,"Consolidated project stack skill with integration patterns",skills_output_folder,SKILL.md,
|
|
8
|
-
skf,anytime,Update Skill,US,,_bmad/skf/workflows/skillforge/update-skill/workflow.md,skf_update_skill,false,ferris,
|
|
9
|
-
skf,anytime,Audit Skill,AS,,_bmad/skf/workflows/skillforge/audit-skill/workflow.md,skf_audit_skill,false,ferris,
|
|
10
|
-
skf,anytime,Test Skill,TS,,_bmad/skf/workflows/skillforge/test-skill/workflow.md,skf_test_skill,false,ferris,
|
|
11
|
-
skf,anytime,Export Skill,EX,,_bmad/skf/workflows/skillforge/export-skill/workflow.md,skf_export_skill,false,ferris,
|
|
7
|
+
skf,anytime,Stack Skill,SS,,_bmad/skf/workflows/skillforge/create-stack-skill/workflow.md,skf_create_stack_skill,false,ferris,Create Mode,"Consolidated project stack skill with integration patterns — code-mode (analyzes manifests) or compose-mode (synthesizes from existing skills + architecture doc)",skills_output_folder,SKILL.md,
|
|
8
|
+
skf,anytime,Update Skill,US,,_bmad/skf/workflows/skillforge/update-skill/workflow.md,skf_update_skill,false,ferris,Surgeon Mode,"Smart regeneration preserving [MANUAL] sections after source changes",skills_output_folder,SKILL.md,
|
|
9
|
+
skf,anytime,Audit Skill,AS,,_bmad/skf/workflows/skillforge/audit-skill/workflow.md,skf_audit_skill,false,ferris,Audit Mode,"Drift detection between skill and current source code",,"drift report",
|
|
10
|
+
skf,anytime,Test Skill,TS,,_bmad/skf/workflows/skillforge/test-skill/workflow.md,skf_test_skill,false,ferris,Audit Mode,"Cognitive completeness verification — quality gate before export",,"completeness score",
|
|
11
|
+
skf,anytime,Export Skill,EX,,_bmad/skf/workflows/skillforge/export-skill/workflow.md,skf_export_skill,false,ferris,Delivery Mode,"Package for distribution and inject context into CLAUDE.md/AGENTS.md/.cursorrules",skills_output_folder,"agentskills.io package",
|
|
12
|
+
skf,anytime,Verify Stack,VS,,_bmad/skf/workflows/skillforge/verify-stack/workflow.md,skf_verify_stack,false,ferris,Audit Mode,"Pre-code stack feasibility verification against architecture and PRD documents",forge_data_folder,"feasibility-report-{project_name}.md",
|
|
13
|
+
skf,anytime,Refine Architecture,RA,,_bmad/skf/workflows/skillforge/refine-architecture/workflow.md,skf_refine_architecture,false,ferris,Architect Mode,"Improve architecture doc using verified skill data and VS feasibility findings",output_folder,"refined-architecture-{project_name}.md",
|
|
14
|
+
skf,anytime,Workflow Status,WS,,,skf_workflow_status,false,ferris,Reference,"Show current lifecycle position, active skill briefs, and forge tier status",,lifecycle status,
|
|
12
15
|
skf,anytime,Knowledge Index,KI,,_bmad/skf/knowledge/skf-knowledge-index.csv,skf_knowledge_index,false,ferris,Reference,"Cross-cutting principles and patterns — JiT loaded by workflows via index lookup",,"knowledge fragments",
|
package/src/module.yaml
CHANGED
package/src/workflows/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# SKF Workflows
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Twelve workflows covering the full skill lifecycle — from source discovery through verified export, with pre-code architecture verification.
|
|
4
4
|
|
|
5
5
|
All workflows are triggered via Ferris (`@Ferris <code>`) and execute as step-by-step sequences with just-in-time step loading.
|
|
6
6
|
|
|
@@ -8,15 +8,17 @@ All workflows are triggered via Ferris (`@Ferris <code>`) and execute as step-by
|
|
|
8
8
|
|
|
9
9
|
| Code | Workflow | Steps | Mode | Purpose |
|
|
10
10
|
| --- | --- | --- | --- | --- |
|
|
11
|
-
| SF | [setup-forge](setup-forge/workflow.md) |
|
|
11
|
+
| SF | [setup-forge](setup-forge/workflow.md) | 5 | Architect | Initialize environment, detect tools, set capability tier |
|
|
12
12
|
| AN | [analyze-source](analyze-source/workflow.md) | 7 | Architect | Discover skillable units in a repo, produce recommended briefs |
|
|
13
13
|
| BS | [brief-skill](brief-skill/workflow.md) | 5 | Architect | Design a skill scope through guided discovery |
|
|
14
|
-
| CS | [create-skill](create-skill/workflow.md) | 8 |
|
|
15
|
-
| QS | [quick-skill](quick-skill/workflow.md) | 6 |
|
|
16
|
-
| SS | [create-stack-skill](create-stack-skill/workflow.md) | 9 |
|
|
14
|
+
| CS | [create-skill](create-skill/workflow.md) | 8 | Architect | Compile a skill from brief with provenance (supports --batch) |
|
|
15
|
+
| QS | [quick-skill](quick-skill/workflow.md) | 6 | Architect | Fast skill from package name or GitHub URL — no brief needed |
|
|
16
|
+
| SS | [create-stack-skill](create-stack-skill/workflow.md) | 9 | Architect | Consolidated project stack skill with integration patterns (code-mode + compose-mode) |
|
|
17
|
+
| VS | [verify-stack](verify-stack/workflow.md) | 6 | Audit | Validate tech stack feasibility against architecture and PRD |
|
|
18
|
+
| RA | [refine-architecture](refine-architecture/workflow.md) | 6 | Architect | Improve architecture doc using verified skill data |
|
|
17
19
|
| US | [update-skill](update-skill/workflow.md) | 7 | Surgeon | Regenerate after source changes, preserving \[MANUAL\] sections |
|
|
18
20
|
| AS | [audit-skill](audit-skill/workflow.md) | 6 | Audit | Drift detection between skill and current source code |
|
|
19
|
-
| TS | [test-skill](test-skill/workflow.md) |
|
|
21
|
+
| TS | [test-skill](test-skill/workflow.md) | 7 | Audit | Cognitive completeness verification — quality gate before export |
|
|
20
22
|
| EX | [export-skill](export-skill/workflow.md) | 6 | Delivery | Package for distribution, inject into CLAUDE.md/AGENTS.md |
|
|
21
23
|
|
|
22
24
|
## Typical Flows
|
|
@@ -39,6 +41,12 @@ SF → BS → CS → TS → EX
|
|
|
39
41
|
SF → QS → EX
|
|
40
42
|
```
|
|
41
43
|
|
|
44
|
+
**Pre-code stack verification:**
|
|
45
|
+
|
|
46
|
+
```
|
|
47
|
+
SF → CS×N (per library) → VS → RA → SS (compose) → TS → EX
|
|
48
|
+
```
|
|
49
|
+
|
|
42
50
|
**Maintenance:**
|
|
43
51
|
|
|
44
52
|
```
|
|
@@ -75,10 +83,8 @@ Each workflow follows a consistent structure:
|
|
|
75
83
|
│ └── ...
|
|
76
84
|
├── data/ # Reference data — schemas, rules, patterns
|
|
77
85
|
│ └── *.md
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
├── workflow-plan-*.md # Design plan (build artifact)
|
|
81
|
-
└── validation-report.md # BMAD validation results (build artifact)
|
|
86
|
+
└── templates/ # Output skeletons (only analyze-source, test-skill)
|
|
87
|
+
└── *-template.md
|
|
82
88
|
```
|
|
83
89
|
|
|
84
90
|
### Step Loading
|
|
@@ -89,7 +95,7 @@ Steps execute sequentially via just-in-time loading. Only the current step is in
|
|
|
89
95
|
|
|
90
96
|
### setup-forge (SF)
|
|
91
97
|
|
|
92
|
-
**
|
|
98
|
+
**5 steps** | **Data:** tier-rules.md
|
|
93
99
|
|
|
94
100
|
Detects available tools (ast-grep, gh, QMD), determines the capability tier (Quick/Forge/Forge+/Deep), writes `forge-tier.yaml` to the sidecar, and optionally indexes the project. Run this first — all other workflows adapt behavior to the detected tier.
|
|
95
101
|
|
|
@@ -101,13 +107,13 @@ Brownfield onboarding entry point. Scans project structure, identifies skillable
|
|
|
101
107
|
|
|
102
108
|
### brief-skill (BS)
|
|
103
109
|
|
|
104
|
-
**5 steps** | **Data:** skill-brief-schema.md
|
|
110
|
+
**5 steps** | **Data:** skill-brief-schema.md, scope-templates.md
|
|
105
111
|
|
|
106
112
|
Interactive guided discovery. Gathers user intent (target repo, language, what to skill), analyzes the target to understand boundaries, walks through scope definition with the user, confirms the brief, then writes a validated `skill-brief.yaml`.
|
|
107
113
|
|
|
108
114
|
### create-skill (CS)
|
|
109
115
|
|
|
110
|
-
**8 steps** | **Data:** extraction-patterns.md, skill-sections.md
|
|
116
|
+
**8 primary steps (11 step files including sub-steps)** | **Data:** extraction-patterns.md, extraction-patterns-tracing.md, skill-sections.md, tier-degradation-rules.md, compile-assembly-rules.md, source-resolution-protocols.md
|
|
111
117
|
|
|
112
118
|
The core compilation engine. Loads a brief, checks ecosystem context, extracts source with AST-backed provenance (T1 confidence when ast-grep available), enriches with usage patterns, compiles into agentskills.io-compliant sections, validates structural integrity, generates the `SKILL.md` artifact, and produces an evidence report. Supports `--batch` for processing multiple briefs.
|
|
113
119
|
|
|
@@ -119,13 +125,25 @@ Fastest path to a skill. Accepts a GitHub URL or package name, resolves to sourc
|
|
|
119
125
|
|
|
120
126
|
### create-stack-skill (SS)
|
|
121
127
|
|
|
122
|
-
**9 steps** | **Data:** integration-patterns.md, manifest-patterns.md, stack-skill-template.md
|
|
128
|
+
**9 steps** | **Data:** integration-patterns.md, manifest-patterns.md, stack-skill-template.md, compose-mode-rules.md
|
|
129
|
+
|
|
130
|
+
Two modes: **Code-mode** analyzes dependency manifests and co-import patterns from actual source code. **Compose-mode** synthesizes a stack skill from pre-generated individual skills + architecture document (no codebase required). Both produce the same output format — consolidated stack skill with integration patterns.
|
|
131
|
+
|
|
132
|
+
### verify-stack (VS)
|
|
133
|
+
|
|
134
|
+
**6 steps** | **Data:** integration-verification-rules.md, coverage-patterns.md, feasibility-report-template.md
|
|
135
|
+
|
|
136
|
+
Pre-code verification engine. Cross-references generated skills against architecture and PRD documents. Three passes: coverage verification (does a skill exist for each tech?), integration verification (do the APIs actually connect?), and requirements verification (does the stack cover the PRD?). Produces a feasibility report with evidence-backed verdicts and prescriptive recommendations. Re-runnable — swap libraries, regenerate skills, re-verify.
|
|
137
|
+
|
|
138
|
+
### refine-architecture (RA)
|
|
139
|
+
|
|
140
|
+
**6 steps** | **Data:** refinement-rules.md
|
|
123
141
|
|
|
124
|
-
|
|
142
|
+
Architecture improvement engine. Takes the original architecture document and refines it using verified skill data and VS feasibility findings. Fills gaps, flags issues, suggests improvements — all backed by specific API evidence from the generated skills. Produces a refined architecture document.
|
|
125
143
|
|
|
126
144
|
### update-skill (US)
|
|
127
145
|
|
|
128
|
-
**7 steps** | **Data:** manual-section-rules.md, merge-conflict-rules.md
|
|
146
|
+
**7 steps** | **Data:** manual-section-rules.md, merge-conflict-rules.md, remote-source-resolution.md (tier-degradation-rules shared from create-skill)
|
|
129
147
|
|
|
130
148
|
Surgical update engine. Loads the existing skill, detects what changed in source since last compilation, re-extracts only affected exports with fresh provenance, merges new extractions while preserving all `[MANUAL]` developer-authored content, validates the merged result, writes the updated skill, and produces a change report.
|
|
131
149
|
|
|
@@ -137,7 +155,7 @@ Drift detection engine. Loads the skill under audit, re-indexes current source t
|
|
|
137
155
|
|
|
138
156
|
### test-skill (TS)
|
|
139
157
|
|
|
140
|
-
**
|
|
158
|
+
**7 steps** | **Data:** output-section-formats.md, scoring-rules.md, source-access-protocol.md | **Templates:** test-report-template.md
|
|
141
159
|
|
|
142
160
|
Quality gate before export. Loads the skill, detects test mode (naive for Quick tier, contextual for Forge/Deep), runs coverage checks against source, runs coherence checks for internal consistency, scores using weighted rubric, and produces a completeness report with pass/fail gate decision.
|
|
143
161
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
Defines the output contract for skill-brief.yaml files generated by analyze-source. Each generated brief must conform to this schema to be consumable by brief-skill and create-skill downstream workflows.
|
|
6
6
|
|
|
7
|
-
## Required Fields
|
|
7
|
+
## Required Fields
|
|
8
8
|
|
|
9
9
|
| Field | Type | Constraint | Description |
|
|
10
10
|
|-------|------|------------|-------------|
|
|
@@ -14,7 +14,7 @@ Defines the output contract for skill-brief.yaml files generated by analyze-sour
|
|
|
14
14
|
| language | string | Recognized language | Primary programming language |
|
|
15
15
|
| scope | object | See Scope Object below | Boundary definition |
|
|
16
16
|
| description | string | 1-3 sentences | What the skill covers |
|
|
17
|
-
| forge_tier | string | `
|
|
17
|
+
| forge_tier | string | `Quick` / `Forge` / `Forge+` / `Deep` | Inherited from forge-tier.yaml (Title Case) |
|
|
18
18
|
| created | string | ISO date `YYYY-MM-DD` | Generation date |
|
|
19
19
|
| created_by | string | user_name from config | Who generated the brief |
|
|
20
20
|
|
|
@@ -26,6 +26,13 @@ Defines the output contract for skill-brief.yaml files generated by analyze-sour
|
|
|
26
26
|
| doc_urls | array | `{url, label}` objects | Documentation URLs for T3 content. Required when `source_type: "docs-only"` |
|
|
27
27
|
| `scripts_intent` | string | `detect` / `none` / free-text | Describes whether scripts should be extracted. Values: `detect` (auto-detect from source — default when absent), `none` (skip scripts), or a free-text description of expected scripts (e.g., "CLI validation tools in bin/"). |
|
|
28
28
|
| `assets_intent` | string | `detect` / `none` / free-text | Describes whether assets should be extracted. Values: `detect` (auto-detect from source — default when absent), `none` (skip assets), or a free-text description of expected assets (e.g., "JSON schemas in schemas/"). |
|
|
29
|
+
| `source_authority` | string | `official` / `community` / `internal` | Default `community`. Set to `official` only when the skill creator is the library maintainer. Forced to `community` when `source_type: "docs-only"`. |
|
|
30
|
+
|
|
31
|
+
When `source_type: "docs-only"`:
|
|
32
|
+
- `source_repo` becomes optional (set to doc site URL for reference)
|
|
33
|
+
- `doc_urls` must have at least one entry
|
|
34
|
+
- `source_authority` is forced to `community` (T3 external documentation cannot be `official`)
|
|
35
|
+
- All extracted content gets `[EXT:{url}]` citations
|
|
29
36
|
|
|
30
37
|
## Version Detection
|
|
31
38
|
|
|
@@ -36,8 +43,12 @@ During brief generation, attempt to auto-detect the source version before defaul
|
|
|
36
43
|
- **Rust:** `Cargo.toml` `[package] version` (static) → if `version = { workspace = true }`, resolve from workspace root `Cargo.toml` → `git describe --tags --abbrev=0`
|
|
37
44
|
- **Go:** version tag from `go.mod` or `git describe --tags --abbrev=0`
|
|
38
45
|
|
|
46
|
+
If the source is a remote GitHub repo, use `gh api repos/{owner}/{repo}/contents/{file}` to read the version file. If the source is local, read the file directly.
|
|
47
|
+
|
|
39
48
|
If detection succeeds, use the detected version. If it fails or returns a non-semver value, fall back to `"1.0.0"`.
|
|
40
49
|
|
|
50
|
+
The create-skill workflow (step-03-extract) also performs version reconciliation at extraction time — if the source version has changed since the brief was created, the extraction step warns and uses the source version.
|
|
51
|
+
|
|
41
52
|
## Scope Object
|
|
42
53
|
|
|
43
54
|
```yaml
|
|
@@ -57,6 +68,7 @@ scope:
|
|
|
57
68
|
| full-library | Entire codebase of a unit |
|
|
58
69
|
| specific-modules | Selected components or packages |
|
|
59
70
|
| public-api | Only exported interfaces |
|
|
71
|
+
| docs-only | When source_type is docs-only — no source code available, all content from doc_urls |
|
|
60
72
|
|
|
61
73
|
## YAML Template
|
|
62
74
|
|
|
@@ -74,7 +86,7 @@ scope:
|
|
|
74
86
|
- '{exclude_pattern}'
|
|
75
87
|
notes: '{scope_rationale}'
|
|
76
88
|
description: '{1-3 sentence description}'
|
|
77
|
-
forge_tier: '{
|
|
89
|
+
forge_tier: '{Quick|Forge|Forge+|Deep}'
|
|
78
90
|
created: '{current_date}'
|
|
79
91
|
created_by: '{user_name}'
|
|
80
92
|
```
|
|
@@ -84,10 +96,11 @@ created_by: '{user_name}'
|
|
|
84
96
|
1. **Name uniqueness**: No duplicate names within forge_data_folder
|
|
85
97
|
2. **Source accessibility**: source_repo path must exist or be reachable
|
|
86
98
|
3. **Language recognized**: Must be a known programming language
|
|
87
|
-
4. **Scope type valid**: Must match one of the
|
|
88
|
-
5. **Include patterns**: At least one include glob pattern required
|
|
99
|
+
4. **Scope type valid**: Must match one of the four defined types (full-library, specific-modules, public-api, docs-only)
|
|
100
|
+
5. **Include patterns**: At least one include glob pattern required (exception: `docs-only` scope, where include patterns are optional since no source code is available)
|
|
89
101
|
6. **Forge tier match**: Must match value in forge-tier.yaml
|
|
90
102
|
7. **Docs-only mode**: When `source_type: "docs-only"`, `doc_urls` required (>= 1), `source_repo` optional
|
|
103
|
+
8. Each `doc_urls` entry must have a valid `url` field
|
|
91
104
|
|
|
92
105
|
## Output Location
|
|
93
106
|
|
|
@@ -4,7 +4,7 @@ description: 'Initialize analysis workflow — load config, detect continuation,
|
|
|
4
4
|
|
|
5
5
|
nextStepFile: './step-02-scan-project.md'
|
|
6
6
|
continueFile: './step-01b-continue.md'
|
|
7
|
-
outputFile: '{
|
|
7
|
+
outputFile: '{forge_data_folder}/analyze-source-report-{project_name}.md'
|
|
8
8
|
templateFile: '../templates/analysis-report-template.md'
|
|
9
9
|
---
|
|
10
10
|
|
|
@@ -118,7 +118,7 @@ Wait for user input. Document any hints provided.
|
|
|
118
118
|
|
|
119
119
|
### 5. Check for Existing Skills
|
|
120
120
|
|
|
121
|
-
Scan `{forge_data_folder}
|
|
121
|
+
Scan `{forge_data_folder}/*/skill-brief.yaml` (one level deep — each skill has its own subdirectory) for existing skill briefs.
|
|
122
122
|
|
|
123
123
|
**IF existing skills found:**
|
|
124
124
|
"**Existing skills detected:**
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
name: 'step-01b-continue'
|
|
3
3
|
description: 'Handle workflow continuation from previous session'
|
|
4
4
|
|
|
5
|
-
outputFile: '{
|
|
5
|
+
outputFile: '{forge_data_folder}/analyze-source-report-{project_name}.md'
|
|
6
6
|
nextStepOptions:
|
|
7
7
|
step-02: './step-02-scan-project.md'
|
|
8
8
|
step-03: './step-03-identify-units.md'
|
|
@@ -3,7 +3,7 @@ name: 'step-02-scan-project'
|
|
|
3
3
|
description: 'Map project structure, detect service boundaries, and identify package manifests'
|
|
4
4
|
|
|
5
5
|
nextStepFile: './step-03-identify-units.md'
|
|
6
|
-
outputFile: '{
|
|
6
|
+
outputFile: '{forge_data_folder}/analyze-source-report-{project_name}.md'
|
|
7
7
|
heuristicsFile: '../data/unit-detection-heuristics.md'
|
|
8
8
|
---
|
|
9
9
|
|
|
@@ -3,7 +3,7 @@ name: 'step-03-identify-units'
|
|
|
3
3
|
description: 'Classify discrete skillable units from scan results using detection heuristics and assign scope types'
|
|
4
4
|
|
|
5
5
|
nextStepFile: './step-04-map-and-detect.md'
|
|
6
|
-
outputFile: '{
|
|
6
|
+
outputFile: '{forge_data_folder}/analyze-source-report-{project_name}.md'
|
|
7
7
|
heuristicsFile: '../data/unit-detection-heuristics.md'
|
|
8
8
|
---
|
|
9
9
|
|
|
@@ -3,7 +3,7 @@ name: 'step-04-map-and-detect'
|
|
|
3
3
|
description: 'Map exports per unit and detect cross-unit integration points, flag stack skill candidates'
|
|
4
4
|
|
|
5
5
|
nextStepFile: './step-05-recommend.md'
|
|
6
|
-
outputFile: '{
|
|
6
|
+
outputFile: '{forge_data_folder}/analyze-source-report-{project_name}.md'
|
|
7
7
|
heuristicsFile: '../data/unit-detection-heuristics.md'
|
|
8
8
|
---
|
|
9
9
|
|
|
@@ -3,7 +3,7 @@ name: 'step-05-recommend'
|
|
|
3
3
|
description: 'Present unit recommendations with rationale for user confirmation or rejection'
|
|
4
4
|
|
|
5
5
|
nextStepFile: './step-06-generate-briefs.md'
|
|
6
|
-
outputFile: '{
|
|
6
|
+
outputFile: '{forge_data_folder}/analyze-source-report-{project_name}.md'
|
|
7
7
|
schemaFile: '../data/skill-brief-schema.md'
|
|
8
8
|
advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml'
|
|
9
9
|
partyModeWorkflow: '{project-root}/_bmad/core/workflows/party-mode/workflow.md'
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
name: 'step-06-generate-briefs'
|
|
3
3
|
description: 'Generate skill-brief.yaml per confirmed unit, write analysis summary, recommend next workflow'
|
|
4
4
|
|
|
5
|
-
outputFile: '{
|
|
5
|
+
outputFile: '{forge_data_folder}/analyze-source-report-{project_name}.md'
|
|
6
6
|
schemaFile: '../data/skill-brief-schema.md'
|
|
7
7
|
---
|
|
8
8
|
|
|
@@ -218,7 +218,7 @@ nextWorkflow: '{primary recommendation}'
|
|
|
218
218
|
### ✅ SUCCESS:
|
|
219
219
|
|
|
220
220
|
- Every confirmed unit has a skill-brief.yaml generated and validated
|
|
221
|
-
- All
|
|
221
|
+
- All required schema fields present and all 8 validation rules passed in each brief
|
|
222
222
|
- Files written to correct paths in forge_data_folder
|
|
223
223
|
- User confirmed before files were written
|
|
224
224
|
- Next workflow recommended per unit
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
name: analyze-source
|
|
3
3
|
description: Decomposition engine — discover what to skill, recommend stack skill
|
|
4
4
|
web_bundle: true
|
|
5
|
-
installed_path: '{project-root}/_bmad/skf/workflows/analyze-source'
|
|
5
|
+
installed_path: '{project-root}/_bmad/skf/workflows/skillforge/analyze-source'
|
|
6
6
|
---
|
|
7
7
|
|
|
8
8
|
# Analyze Source
|
|
@@ -24,7 +24,7 @@ installed_path: '{project-root}/_bmad/skf/workflows/analyze-source'
|
|
|
24
24
|
- **Sequential Enforcement**: Sequence within the step files must be completed in order, no skipping or optimization allowed
|
|
25
25
|
- **State Tracking**: Document progress in output file frontmatter using `stepsCompleted` array
|
|
26
26
|
- **Append-Only Building**: Build the analysis report by appending content as directed to the output file
|
|
27
|
-
- **Tier-Aware Analysis**: Scanning depth adapts to forge tier — Quick (file structure), Forge (AST), Deep (AST+QMD)
|
|
27
|
+
- **Tier-Aware Analysis**: Scanning depth adapts to forge tier — Quick (file structure), Forge (AST), Forge+ (AST + CCC semantic pre-ranking), Deep (AST+QMD)
|
|
28
28
|
|
|
29
29
|
### Step Processing Rules
|
|
30
30
|
|
|
@@ -48,5 +48,5 @@
|
|
|
48
48
|
|-------|--------|-------------|
|
|
49
49
|
| T1 | AST extraction (ast-grep) | High — structural truth |
|
|
50
50
|
| T1-low | Text pattern matching (no AST) | Moderate — pattern-based |
|
|
51
|
-
| T2 | QMD
|
|
51
|
+
| T2 | QMD semantic context | High — evidence-backed temporal context |
|
|
52
52
|
| T3 | External documentation reference | Variable — secondary source |
|
|
@@ -152,6 +152,7 @@ Create `{outputFile}` from `{templateFile}`:
|
|
|
152
152
|
**Analysis plan based on tier:**
|
|
153
153
|
- {Quick: text-diff comparison (T1-low confidence)}
|
|
154
154
|
- {Forge: AST structural comparison (T1 confidence)}
|
|
155
|
+
- {Forge+: AST structural comparison + CCC-assisted rename detection (T1 confidence)}
|
|
155
156
|
- {Deep: AST structural + QMD semantic comparison (T1 + T2 confidence)}
|
|
156
157
|
|
|
157
158
|
**Ready to begin drift analysis?**"
|
|
@@ -68,6 +68,11 @@ Based on forge tier detected in Step 01:
|
|
|
68
68
|
- Extract: export name, type (function/class/type/const), full signature, file path, line number
|
|
69
69
|
- Confidence label: T1
|
|
70
70
|
|
|
71
|
+
**Forge+ tier (ast-grep + ccc available):**
|
|
72
|
+
- Identical extraction to Forge tier: use ast_bridge for AST extraction per source file
|
|
73
|
+
- Confidence label: T1
|
|
74
|
+
- CCC rename detection available (see section 4b)
|
|
75
|
+
|
|
71
76
|
**Deep tier (ast-grep + QMD available):**
|
|
72
77
|
- Forge extraction (above) PLUS
|
|
73
78
|
- Query qmd_bridge for temporal context: when exports were added, modification history, usage frequency
|
|
@@ -82,7 +82,7 @@ Continue to section 2.
|
|
|
82
82
|
### 2. Query Original Knowledge Context
|
|
83
83
|
|
|
84
84
|
Launch a subprocess (Pattern 3 — data operations) that:
|
|
85
|
-
1.
|
|
85
|
+
1. Read the `qmd_collections` registry from `{sidecar_path}/forge-tier.yaml`. Find the entry where `skill_name` matches `{skill_name}` AND `type` is `"extraction"`. Use the `name` field from that entry as the collection to query. If no matching entry exists, log: "No QMD extraction collection found for {skill_name}. Semantic diff skipped." → Auto-proceed to {nextStepFile}.
|
|
86
86
|
2. Queries for knowledge context around each export documented in the skill
|
|
87
87
|
3. Retrieves: usage patterns, conventions, architectural context, dependency relationships
|
|
88
88
|
4. Returns structured findings to parent
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
name: audit-skill
|
|
3
3
|
description: "Drift detection. Forge tier: structural. Deep tier: full."
|
|
4
4
|
web_bundle: true
|
|
5
|
-
installed_path: '{project-root}/_bmad/skf/workflows/audit-skill'
|
|
5
|
+
installed_path: '{project-root}/_bmad/skf/workflows/skillforge/audit-skill'
|
|
6
6
|
---
|
|
7
7
|
|
|
8
8
|
# Audit Skill
|
|
@@ -57,6 +57,7 @@ Load and read full config from {project-root}/_bmad/skf/config.yaml and resolve:
|
|
|
57
57
|
|
|
58
58
|
- `project_name`, `output_folder`, `user_name`, `communication_language`, `document_output_language`
|
|
59
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.
|
|
60
61
|
|
|
61
62
|
### 2. First Step Execution
|
|
62
63
|
|
|
@@ -59,6 +59,16 @@ Prompt: "Which of these would you like to include? (Enter numbers, or 'all'):"
|
|
|
59
59
|
Exclusions will include all internal implementation files, tests, and utilities.
|
|
60
60
|
Prompt: "Any additional items you'd like to include or exclude?"
|
|
61
61
|
|
|
62
|
+
### Docs-Only Boundaries
|
|
63
|
+
|
|
64
|
+
**No source code access.** Scope is defined by the `doc_urls` collected during intent gathering.
|
|
65
|
+
|
|
66
|
+
- All content derived from external documentation
|
|
67
|
+
- No include/exclude patterns — coverage determined by fetched documentation
|
|
68
|
+
- All extractions labeled T3 (`[EXT:{url}]` citations)
|
|
69
|
+
|
|
70
|
+
Prompt: "Any additional documentation URLs to include? Or URLs to exclude from the ones collected?"
|
|
71
|
+
|
|
62
72
|
## Scripts & Assets Detection (Optional Refinement)
|
|
63
73
|
|
|
64
74
|
When `scripts_intent` or `assets_intent` is `detect` (default), SKF auto-detects from source directories matching: `scripts/`, `bin/`, `tools/`, `cli/` (for scripts) and `assets/`, `templates/`, `schemas/`, `configs/`, `examples/` (for assets). Detection applies to all scope types except `docs-only`.
|