feat(skills): update analyst manifest and simplify bmad-init instructions

Switch analyst's create-brief menu entry to the new product-brief-preview
skill. Simplify bmad-init SKILL.md by removing hardcoded code fences and
making the script path relative to the skill directory.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Brian Madison 2026-03-16 00:36:58 -05:00
parent d37898c565
commit e6b54edc9a
2 changed files with 13 additions and 37 deletions

View File

@ -31,8 +31,8 @@
{ {
"name": "create-brief", "name": "create-brief",
"menu-code": "CB", "menu-code": "CB",
"description": "Guided experience to nail down your product idea into an executive brief.", "description": "NEW PREVIEW — Create or update product briefs through guided, autonomous, or yolo discovery modes. Try it and share feedback!",
"skill-name": "bmad-create-product-brief" "skill-name": "bmad-product-brief-preview"
}, },
{ {
"name": "document-project", "name": "document-project",

View File

@ -13,25 +13,16 @@ This skill is the configuration entry point for all BMad skills. It has two mode
Every BMad skill should call this on activation to get its config vars. The caller never needs to know whether init happened — they just get their config back. Every BMad skill should call this on activation to get its config vars. The caller never needs to know whether init happened — they just get their config back.
The script `bmad_init.py` is located in this skill's `scripts/` directory. Locate and run it using python for all commands below.
## On Activation — Fast Path ## On Activation — Fast Path
Run the loader script. If a module code was provided by the calling skill, include it. Otherwise core vars are returned. Run the `bmad_init.py` script with the `load` subcommand. Pass `--project-root` set to the project root directory.
```bash - If a module code was provided by the calling skill, include `--module {module_code}`
python scripts/bmad_init.py load --module {module_code} --all --project-root {project-root} - To load all vars, include `--all`
``` - To request specific variables with defaults, use `--vars var1:default1,var2`
- If no module was specified, omit `--module` to get core vars only
Or for core only (no module specified):
```bash
python scripts/bmad_init.py load --all --project-root {project-root}
```
To request specific variables with defaults:
```bash
python scripts/bmad_init.py load --module {module_code} --vars var1:default1,var2 --project-root {project-root}
```
**If the script returns JSON vars** — store them as `{var-name}` and return to the calling skill. Done. **If the script returns JSON vars** — store them as `{var-name}` and return to the calling skill. Done.
@ -43,9 +34,7 @@ When the fast path fails (config missing for a module), run this init flow.
### Step 1: Check what needs setup ### Step 1: Check what needs setup
```bash Run `bmad_init.py` with the `check` subcommand, passing `--module {module_code}`, `--skill-path {calling_skill_path}`, and `--project-root`.
python scripts/bmad_init.py check --module {module_code} --skill-path {calling_skill_path} --project-root {project-root}
```
The response tells you what's needed: The response tells you what's needed:
@ -73,21 +62,14 @@ The check response includes `core_module` with header, subheader, and variable d
The check response includes `target_module` with the module's questions. Variables may reference core answers in their defaults (e.g., `{output_folder}`). The check response includes `target_module` with the module's questions. Variables may reference core answers in their defaults (e.g., `{output_folder}`).
1. Resolve defaults using core answers: 1. Resolve defaults by running `bmad_init.py` with the `resolve-defaults` subcommand, passing `--module {module_code}`, `--core-answers '{core_answers_json}'`, and `--project-root`
```bash
python scripts/bmad_init.py resolve-defaults --module {module_code} --core-answers '{core_answers_json}' --project-root {project-root}
```
2. Show the module's `header` and `subheader` 2. Show the module's `header` and `subheader`
3. For each variable, present the prompt with resolved default 3. For each variable, present the prompt with resolved default
4. For `single-select` variables, show options as a numbered list 4. For `single-select` variables, show options as a numbered list
### Step 4: Write config ### Step 4: Write config
Collect all answers and write them: Collect all answers and run `bmad_init.py` with the `write` subcommand, passing `--answers '{all_answers_json}'` and `--project-root`.
```bash
python scripts/bmad_init.py write --answers '{all_answers_json}' --project-root {project-root}
```
The `--answers` JSON format: The `--answers` JSON format:
@ -115,10 +97,4 @@ The script:
### Step 5: Return vars ### Step 5: Return vars
After writing, re-run the fast-path loader to return resolved vars: After writing, re-run `bmad_init.py` with the `load` subcommand (same as the fast path) to return resolved vars. Store returned vars as `{var-name}` and return them to the calling skill.
```bash
python scripts/bmad_init.py load --module {module_code} --all --project-root {project-root}
```
Store returned vars as `{var-name}` and return them to the calling skill.