ma-agents 3.15.0-beta.0 → 3.15.0-beta.1

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.
@@ -10,28 +10,39 @@ triggers:
10
10
 
11
11
  # Knowledge Atlas Skill
12
12
 
13
- Generate a self-contained, offline-ready Knowledge Atlas HTML site from the project's `_bmad-output` planning and implementation artifacts. No network access is required at generation or view time.
13
+ Generate a self-contained, offline-ready Knowledge Atlas HTML site from the project's planning and implementation artifacts. No network access is required at generation or view time.
14
14
 
15
15
  ## Prerequisites
16
16
 
17
- - The project must have a `_bmad-output/` directory (created by BMAD install).
17
+ - The project must have a `_bmad-output/` directory (created by BMAD install) and/or a `_bmad/bmm/config.yaml` pointing at where its knowledge actually lives.
18
18
  - `ma-agents` must be installed (globally via `npx ma-agents` or as a local dependency).
19
19
  - Node.js >= 18 must be available.
20
20
 
21
+ ## Source discovery (engine-side — nothing for this skill to configure)
22
+
23
+ The engine itself resolves WHICH folders to scan — this skill just passes `projectRoot` (Step 1) and lets `atlas.cjs` do the rest:
24
+
25
+ - It always scans `<projectRoot>/<output_folder>` (`output_folder` defaults to `_bmad-output`).
26
+ - If the project has `_bmad/bmm/config.yaml`, it ALSO scans any configured `planning_artifacts`, `implementation_artifacts`, and `knowledgebase_path` folders that exist on disk — even when they live OUTSIDE `_bmad-output` (a common real-world setup: e.g. `planning_artifacts` pointing at a sibling knowledge folder). All of these are unioned and deduplicated automatically.
27
+ - A project with no `_bmad/bmm/config.yaml` (or none of the above keys) behaves exactly as before: scan `_bmad-output` only.
28
+ - The generated site is written to `<projectRoot>/<output_folder>/knowledge-site/` (so if `output_folder` is customized, the site follows it).
29
+ - Before writing, the engine purges the DEFAULT `<output_folder>/knowledge-site/` dir so removed/renamed docs leave no orphaned pages. It never touches a configured knowledge source, and it skips the purge entirely if a source resolves at/under that output dir (a warning is printed). A caller-supplied `--out` override is intentionally NOT purged — the engine only ever clears the default site dir.
30
+
21
31
  ---
22
32
 
23
33
  ## Workflow
24
34
 
25
35
  ### Step 1 — Resolve the project root
26
36
 
27
- The project root is the directory containing `_bmad-output/`. Locate it by walking up from the current working directory until `_bmad-output/` is found, or use the directory the agent is operating in.
37
+ The project root is the directory containing `_bmad-output/` (and/or `_bmad/bmm/config.yaml`). Locate it by walking up from the current working directory until either is found, or use the directory the agent is operating in.
28
38
 
29
39
  ```
30
- projectRoot = <directory containing _bmad-output/>
31
- bmadOutputDir = <projectRoot>/_bmad-output
32
- outputSite = <projectRoot>/_bmad-output/knowledge-site/index.html
40
+ projectRoot = <directory containing _bmad-output/ and/or _bmad/bmm/config.yaml>
41
+ outputSite = <projectRoot>/<output_folder>/knowledge-site/index.html (output_folder defaults to _bmad-output)
33
42
  ```
34
43
 
44
+ This skill does NOT need to know which knowledge folders exist or where `output_folder` points — the engine reads `_bmad/bmm/config.yaml` itself and reports the real output path on stdout/stderr in Step 3.
45
+
35
46
  ### Step 2 — Locate the engine bundle
36
47
 
37
48
  The Knowledge Atlas engine is a pre-bundled CJS file committed inside the `ma-agents` package. Resolve it in this order:
@@ -103,16 +114,18 @@ arg-array element to the platform opener:
103
114
  - **macOS:** `execFile('open', [indexHtmlPath])`
104
115
  - **Linux:** `execFile('xdg-open', [indexHtmlPath])`
105
116
 
106
- Report the output path to the user regardless of whether the browser opens:
117
+ Report the output path to the user regardless of whether the browser opens
118
+ (the ARGV output printed by the engine in Step 3 is the source of truth — it
119
+ reflects the real `output_folder`, which may differ from `_bmad-output`):
107
120
  ```
108
- Knowledge Atlas generated: <projectRoot>/_bmad-output/knowledge-site/index.html
121
+ Knowledge Atlas generated: <projectRoot>/<output_folder>/knowledge-site/index.html
109
122
  ```
110
123
 
111
124
  ---
112
125
 
113
126
  ## Gitignore policy
114
127
 
115
- The `_bmad-output/knowledge-site/` directory is automatically gitignored when BMAD installs into a project (via `ensureKnowledgeSiteIgnored`). If it is not already ignored, add the following line to `.gitignore`:
128
+ The `<output_folder>/knowledge-site/` directory (default `_bmad-output/knowledge-site/`) is automatically gitignored when BMAD installs into a project (via `ensureKnowledgeSiteIgnored`). If it is not already ignored, add the following line to `.gitignore` (adjusted for a customized `output_folder`):
116
129
 
117
130
  ```
118
131
  _bmad-output/knowledge-site/
@@ -37,7 +37,7 @@
37
37
  "name": "ma-skills",
38
38
  "source": "./",
39
39
  "description": "ma-agents extension module providing enterprise SDLC personas and operational workflow skills.",
40
- "version": "3.15.0-beta.0",
40
+ "version": "3.15.0-beta.1",
41
41
  "author": {
42
42
  "name": "Alon Mayaffit"
43
43
  },
@@ -10,28 +10,39 @@ triggers:
10
10
 
11
11
  # Knowledge Atlas Skill
12
12
 
13
- Generate a self-contained, offline-ready Knowledge Atlas HTML site from the project's `_bmad-output` planning and implementation artifacts. No network access is required at generation or view time.
13
+ Generate a self-contained, offline-ready Knowledge Atlas HTML site from the project's planning and implementation artifacts. No network access is required at generation or view time.
14
14
 
15
15
  ## Prerequisites
16
16
 
17
- - The project must have a `_bmad-output/` directory (created by BMAD install).
17
+ - The project must have a `_bmad-output/` directory (created by BMAD install) and/or a `_bmad/bmm/config.yaml` pointing at where its knowledge actually lives.
18
18
  - `ma-agents` must be installed (globally via `npx ma-agents` or as a local dependency).
19
19
  - Node.js >= 18 must be available.
20
20
 
21
+ ## Source discovery (engine-side — nothing for this skill to configure)
22
+
23
+ The engine itself resolves WHICH folders to scan — this skill just passes `projectRoot` (Step 1) and lets `atlas.cjs` do the rest:
24
+
25
+ - It always scans `<projectRoot>/<output_folder>` (`output_folder` defaults to `_bmad-output`).
26
+ - If the project has `_bmad/bmm/config.yaml`, it ALSO scans any configured `planning_artifacts`, `implementation_artifacts`, and `knowledgebase_path` folders that exist on disk — even when they live OUTSIDE `_bmad-output` (a common real-world setup: e.g. `planning_artifacts` pointing at a sibling knowledge folder). All of these are unioned and deduplicated automatically.
27
+ - A project with no `_bmad/bmm/config.yaml` (or none of the above keys) behaves exactly as before: scan `_bmad-output` only.
28
+ - The generated site is written to `<projectRoot>/<output_folder>/knowledge-site/` (so if `output_folder` is customized, the site follows it).
29
+ - Before writing, the engine purges the DEFAULT `<output_folder>/knowledge-site/` dir so removed/renamed docs leave no orphaned pages. It never touches a configured knowledge source, and it skips the purge entirely if a source resolves at/under that output dir (a warning is printed). A caller-supplied `--out` override is intentionally NOT purged — the engine only ever clears the default site dir.
30
+
21
31
  ---
22
32
 
23
33
  ## Workflow
24
34
 
25
35
  ### Step 1 — Resolve the project root
26
36
 
27
- The project root is the directory containing `_bmad-output/`. Locate it by walking up from the current working directory until `_bmad-output/` is found, or use the directory the agent is operating in.
37
+ The project root is the directory containing `_bmad-output/` (and/or `_bmad/bmm/config.yaml`). Locate it by walking up from the current working directory until either is found, or use the directory the agent is operating in.
28
38
 
29
39
  ```
30
- projectRoot = <directory containing _bmad-output/>
31
- bmadOutputDir = <projectRoot>/_bmad-output
32
- outputSite = <projectRoot>/_bmad-output/knowledge-site/index.html
40
+ projectRoot = <directory containing _bmad-output/ and/or _bmad/bmm/config.yaml>
41
+ outputSite = <projectRoot>/<output_folder>/knowledge-site/index.html (output_folder defaults to _bmad-output)
33
42
  ```
34
43
 
44
+ This skill does NOT need to know which knowledge folders exist or where `output_folder` points — the engine reads `_bmad/bmm/config.yaml` itself and reports the real output path on stdout/stderr in Step 3.
45
+
35
46
  ### Step 2 — Locate the engine bundle
36
47
 
37
48
  The Knowledge Atlas engine is a pre-bundled CJS file committed inside the `ma-agents` package. Resolve it in this order:
@@ -103,16 +114,18 @@ arg-array element to the platform opener:
103
114
  - **macOS:** `execFile('open', [indexHtmlPath])`
104
115
  - **Linux:** `execFile('xdg-open', [indexHtmlPath])`
105
116
 
106
- Report the output path to the user regardless of whether the browser opens:
117
+ Report the output path to the user regardless of whether the browser opens
118
+ (the ARGV output printed by the engine in Step 3 is the source of truth — it
119
+ reflects the real `output_folder`, which may differ from `_bmad-output`):
107
120
  ```
108
- Knowledge Atlas generated: <projectRoot>/_bmad-output/knowledge-site/index.html
121
+ Knowledge Atlas generated: <projectRoot>/<output_folder>/knowledge-site/index.html
109
122
  ```
110
123
 
111
124
  ---
112
125
 
113
126
  ## Gitignore policy
114
127
 
115
- The `_bmad-output/knowledge-site/` directory is automatically gitignored when BMAD installs into a project (via `ensureKnowledgeSiteIgnored`). If it is not already ignored, add the following line to `.gitignore`:
128
+ The `<output_folder>/knowledge-site/` directory (default `_bmad-output/knowledge-site/`) is automatically gitignored when BMAD installs into a project (via `ensureKnowledgeSiteIgnored`). If it is not already ignored, add the following line to `.gitignore` (adjusted for a customized `output_folder`):
116
129
 
117
130
  ```
118
131
  _bmad-output/knowledge-site/