You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The path standards scanner incorrectly enforced that {project-root} was
only valid before /_bmad. The correct semantic is that {project-root} is
valid for ANY project-scope path — the distinction is project-scope vs
skill-internal, not _bmad vs everything else.
Changes across workflow-builder and agent-builder (12 files):
Scanner scripts (scan-path-standards.py):
- Removed PROJECT_ROOT_NOT_BMAD_RE (false-positive on valid paths like
{project-root}/docs/report.md)
- Added DOUBLE_PREFIX_RE to catch {project-root}/{config-var} where
config variables already contain {project-root} at runtime
- Updated category from project-root-not-bmad to double-prefix
- Bumped version to 2.1.0
Reference docs (standard-fields.md, quality-dimensions.md):
- Renamed "Project _bmad Paths" to "Project-Scope Paths"
- Added non-_bmad example ({project-root}/docs/report.md)
- Changed rule from "Only use {project-root} for _bmad paths" to
"Use {project-root} for any project-scope path"
Build process docs (build-process.md):
- Updated path conventions section in both builders
Additional docs:
- convert-process.md: updated change-signal table
- script-opportunities-reference.md: fixed comment in script example
- builder-commands.md: updated scanner description
- skill-authoring-best-practices.md: updated path construction rule
Copy file name to clipboardExpand all lines: docs/explanation/skill-authoring-best-practices.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -33,7 +33,7 @@ Six dimensions to keep in mind during the build phase. The quality scanners chec
33
33
|**Intelligence Placement**| Scripts handle plumbing (fetch, transform, validate). Prompts handle judgment (interpret, classify, decide). If a script contains an `if` that decides what content _means_, intelligence has leaked |
34
34
|**Progressive Disclosure**| SKILL.md stays focused; stage instructions go in `prompts/`, reference data in `resources/`|
35
35
|**Description Format**| Two parts: `[5-8 word summary]. [Use when user says 'X' or 'Y'.]` — default to conservative triggering |
36
-
|**Path Construction**| Never use `{skill-root}`. Only use `{project-root}` for `_bmad` paths. Config variables used directly — they already contain `{project-root}`|
36
+
|**Path Construction**| Never use `{skill-root}`. Use `{project-root}` for any project-scope path, `./` for skill-internal. Config variables used directly — they already contain `{project-root}`|
Copy file name to clipboardExpand all lines: skills/bmad-agent-builder/references/quality-dimensions.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -45,7 +45,7 @@ Default to conservative triggering. See `./references/standard-fields.md` for fu
45
45
46
46
## 6. Path Construction
47
47
48
-
Only use `{project-root}` for `_bmad` paths. Config variables used directly — they already contain `{project-root}`.
48
+
Use `{project-root}` for any project-scope path. Use `./` for skill-internal paths. Config variables used directly — they already contain `{project-root}`.
49
49
50
50
See `./references/standard-fields.md` for correct/incorrect patterns.
Copy file name to clipboardExpand all lines: skills/bmad-agent-builder/references/standard-fields.md
+7Lines changed: 7 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -75,6 +75,13 @@ Always use `{project-root}` prefix: `{project-root}/_bmad/memory/{skillName}-sid
75
75
76
76
The sidecar `index.md` is the single entry point to the agent's memory system — it tells the agent what else to load (boundaries, logs, references, etc.). Load it once on activation; don't duplicate load instructions for individual memory files.
77
77
78
+
### Project-Scope Paths
79
+
80
+
Use `{project-root}/...` for any path relative to the project root:
81
+
82
+
-`{project-root}/_bmad/planning/prd.md`
83
+
-`{project-root}/docs/report.md`
84
+
78
85
### Config Variables
79
86
80
87
Use directly — they already contain `{project-root}` in their resolved values:
Copy file name to clipboardExpand all lines: skills/bmad-workflow-builder/references/quality-dimensions.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -44,7 +44,7 @@ Default to conservative triggering. See `./references/standard-fields.md` for fu
44
44
45
45
## 6. Path Construction
46
46
47
-
Only use `{project-root}` for `_bmad` paths. Config variables used directly — they already contain `{project-root}`.
47
+
Use `{project-root}` for any project-scope path. Use `./` for skill-internal paths. Config variables used directly — they already contain `{project-root}`.
48
48
49
49
See `./references/standard-fields.md` for correct/incorrect patterns.
0 commit comments