bmad-plus 0.12.2 → 0.14.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/CHANGELOG.md +47 -0
- package/README.md +96 -461
- package/package.json +12 -5
- package/readme-international/README.de.md +42 -9
- package/readme-international/README.es.md +43 -10
- package/readme-international/README.fr.md +42 -9
- package/src/bmad-plus/agents/agent-orchestrator/SKILL.md +5 -3
- package/src/bmad-plus/module.yaml +270 -220
- package/src/bmad-plus/packs/pack-dev-studio/README.md +133 -141
- package/src/bmad-plus/packs/pack-dev-studio/SKILL.md +49 -0
- package/src/bmad-plus/packs/pack-dev-studio/categories/analysis/analyst-agent.md +35 -60
- package/src/bmad-plus/packs/pack-dev-studio/categories/analysis/document-project.md +59 -59
- package/src/bmad-plus/packs/pack-dev-studio/categories/analysis/domain-research.md +55 -93
- package/src/bmad-plus/packs/pack-dev-studio/categories/analysis/market-research.md +58 -93
- package/src/bmad-plus/packs/pack-dev-studio/categories/analysis/prfaq.md +55 -132
- package/src/bmad-plus/packs/pack-dev-studio/categories/analysis/product-brief.md +63 -78
- package/src/bmad-plus/packs/pack-dev-studio/categories/analysis/tech-writer-agent.md +54 -69
- package/src/bmad-plus/packs/pack-dev-studio/categories/analysis/technical-research.md +54 -93
- package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/architect-agent.md +32 -60
- package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/create-architecture.md +67 -71
- package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/create-epics-stories.md +61 -90
- package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/generate-project-context.md +56 -78
- package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/implementation-readiness.md +55 -88
- package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/steps/step-01-init.md +20 -153
- package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/steps/step-01b-continue.md +20 -173
- package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/steps/step-02-context.md +14 -220
- package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/steps/step-03-starter.md +20 -329
- package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/steps/step-04-decisions.md +15 -314
- package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/steps/step-05-patterns.md +15 -355
- package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/steps/step-06-structure.md +15 -375
- package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/steps/step-07-validation.md +14 -357
- package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/steps/step-08-complete.md +13 -78
- package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/checkpoint-preview.md +52 -65
- package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/code-review-steps/step-01-gather-context.md +14 -81
- package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/code-review-steps/step-02-review.md +14 -31
- package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/code-review-steps/step-03-triage.md +14 -45
- package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/code-review-steps/step-04-present.md +13 -128
- package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/code-review.md +61 -87
- package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/correct-course.md +55 -298
- package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/create-story.md +52 -426
- package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/dev-agent.md +48 -69
- package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/dev-story-checklist.md +22 -80
- package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/dev-story.md +60 -482
- package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/investigate.md +50 -184
- package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/qa-e2e-tests.md +57 -173
- package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/quick-dev.md +56 -108
- package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/retrospective.md +54 -1509
- package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/sprint-planning.md +54 -296
- package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/sprint-status.md +41 -283
- package/src/bmad-plus/packs/pack-dev-studio/categories/planning/create-prd.md +58 -18
- package/src/bmad-plus/packs/pack-dev-studio/categories/planning/create-ux-design.md +103 -72
- package/src/bmad-plus/packs/pack-dev-studio/categories/planning/edit-prd.md +55 -27
- package/src/bmad-plus/packs/pack-dev-studio/categories/planning/pm-agent.md +34 -60
- package/src/bmad-plus/packs/pack-dev-studio/categories/planning/prd.md +46 -87
- package/src/bmad-plus/packs/pack-dev-studio/categories/planning/steps/step-01-init.md +10 -0
- package/src/bmad-plus/packs/pack-dev-studio/categories/planning/ux-designer-agent.md +30 -60
- package/src/bmad-plus/packs/pack-dev-studio/categories/planning/validate-prd.md +57 -27
- package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/advanced-elicitation.md +47 -138
- package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/adversarial-review.md +48 -34
- package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/bmad-help.md +51 -68
- package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/brainstorming.md +46 -3
- package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/customize.md +68 -109
- package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/distillator.md +53 -174
- package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/edge-case-hunter.md +39 -53
- package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/editorial-review-prose.md +45 -83
- package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/editorial-review-structure.md +45 -176
- package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/index-docs.md +45 -63
- package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/party-mode.md +53 -124
- package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/shard-doc.md +44 -100
- package/src/bmad-plus/packs/pack-dev-studio/dev-studio-orchestrator.md +56 -116
- package/src/bmad-plus/packs/pack-dev-studio/shared/architecture-decision-template.md +49 -12
- package/src/bmad-plus/packs/pack-dev-studio/shared/bwml-spec.md +51 -328
- package/src/bmad-plus/packs/pack-dev-studio/shared/catalog.json +489 -0
- package/src/bmad-plus/packs/pack-dev-studio/shared/execution.md +69 -0
- package/src/bmad-plus/packs/pack-dev-studio/shared/module-help.csv +39 -32
- package/src/bmad-plus/packs/pack-dev-studio/upstream-sync.yaml +85 -14
- package/src/bmad-plus/packs/pack-memory/README.md +6 -0
- package/src/bmad-plus/packs/pack-memory/memory-orchestrator.md +12 -5
- package/src/bmad-plus/packs/pack-seo/SKILL.md +27 -1
- package/src/bmad-plus/packs/pack-seo/scripts/seo_apis.py +8 -8
- package/src/bmad-plus/packs/pack-seo/scripts/seo_fetch.py +1 -2
- package/src/bmad-plus/packs/pack-seo/scripts/seo_report.py +0 -1
- package/src/bmad-plus/packs/pack-seo/seo-chief.md +16 -1
- package/src/bmad-plus/packs/pack-seo/seo-judge.md +12 -0
- package/src/bmad-plus/packs/pack-seo/seo-scout.md +12 -0
- package/src/bmad-plus/skills/bmad-plus-autopilot/SKILL.md +4 -4
- package/src/bmad-plus/skills/bmad-plus-sync/SKILL.md +5 -3
- package/src/bmad-plus/skills/dev-studio/SKILL.md +19 -0
- package/tools/bmad-plus-npx.js +4 -2
- package/tools/build/adapters.config.js +60 -51
- package/tools/build/check-counts.js +52 -54
- package/tools/build/check-install-contract.js +450 -0
- package/tools/build/generate-adapters.js +252 -56
- package/tools/build/generate.js +364 -14
- package/tools/build/generated-adapters/.codex/AGENTS.md +20 -7
- package/tools/build/generated-adapters/.cursor/rules/bmad-plus.mdc +20 -7
- package/tools/build/generated-adapters/.opencode/AGENTS.md +20 -7
- package/tools/build/generated-adapters/AGENTS.md +20 -7
- package/tools/build/generated-adapters/CLAUDE.md +20 -7
- package/tools/build/generated-adapters/CONVENTIONS.md +20 -7
- package/tools/build/generated-adapters/GEMINI.md +20 -7
- package/tools/build/module.template.yaml +82 -0
- package/tools/build/pack-delivery.js +78 -0
- package/tools/cli/bmad-plus-cli.js +16 -1
- package/tools/cli/commands/doctor.js +49 -217
- package/tools/cli/commands/install.js +109 -164
- package/tools/cli/commands/studio.js +68 -0
- package/tools/cli/commands/uninstall.js +173 -65
- package/tools/cli/commands/update-check.js +31 -0
- package/tools/cli/commands/update-policy.js +39 -0
- package/tools/cli/commands/update.js +102 -113
- package/tools/cli/i18n.js +60 -0
- package/tools/cli/lib/ide-config.js +4 -261
- package/tools/cli/lib/install-manifest.js +17 -0
- package/tools/cli/lib/installation-health.js +360 -0
- package/tools/cli/lib/installed-adapters.js +89 -0
- package/tools/cli/lib/npm-runner.js +177 -0
- package/tools/cli/lib/pack-copy.js +62 -66
- package/tools/cli/lib/packs.js +546 -3
- package/tools/cli/lib/python-health.js +233 -0
- package/tools/cli/lib/python-provision.js +2 -2
- package/tools/cli/lib/studio.js +310 -0
- package/tools/cli/lib/update-check.js +153 -0
- package/tools/cli/lib/update-dispatch.js +182 -0
- package/tools/cli/lib/update-policy.js +90 -0
- package/tools/cli/lib/update-transaction.js +334 -0
- package/tools/release/publication-content.js +901 -0
|
@@ -1,30 +1,58 @@
|
|
|
1
|
-
|
|
1
|
+
---
|
|
2
2
|
name: bmad-edit-prd
|
|
3
|
-
description:
|
|
3
|
+
description: Apply a scoped change to an existing PRD while preserving requirement identity and decision history.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
#
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
6
|
+
# Edit PRD
|
|
7
|
+
|
|
8
|
+
Load the [execution guide](../../shared/execution.md) and
|
|
9
|
+
[Yosef](pm-agent.md). Reconcile an existing requirements document with a real
|
|
10
|
+
change signal. This is a maintained route.
|
|
11
|
+
|
|
12
|
+
## Inputs
|
|
13
|
+
|
|
14
|
+
Require the actual target PRD and a described change: new evidence, changed
|
|
15
|
+
behavior, corrected finding or revised constraint. Read available related briefs,
|
|
16
|
+
review findings and decisions. If the intended change remains ambiguous, inspect
|
|
17
|
+
the document and identify the specific decision needed before editing that part.
|
|
18
|
+
|
|
19
|
+
## Procedure
|
|
20
|
+
|
|
21
|
+
1. Establish the current document revision and local user edits. Read the whole
|
|
22
|
+
relevant PRD, including assumptions, exclusions and existing decision notes.
|
|
23
|
+
Keep an inspectable before-state through the available version control or a
|
|
24
|
+
scoped diff; do not discard uncommitted changes.
|
|
25
|
+
2. Translate the change signal into affected outcomes, requirement IDs, journeys,
|
|
26
|
+
constraints and success measures. Distinguish necessary corrections from
|
|
27
|
+
optional improvement ideas.
|
|
28
|
+
3. Inspect known dependent UX, architecture, stories or tests when available.
|
|
29
|
+
Record the concrete impact. Missing dependent artifacts remain an inspection
|
|
30
|
+
gap; do not invent a synchronized downstream state.
|
|
31
|
+
4. Apply the authorized changes surgically. Preserve stable requirement IDs,
|
|
32
|
+
retain relevant rationale and mark removed or superseded requirements clearly.
|
|
33
|
+
Do not renumber unrelated requirements or silently expand or reduce scope.
|
|
34
|
+
5. Reconcile cross-references, acceptance examples, constraints and exclusions
|
|
35
|
+
affected by the edit. Record new assumptions and disagreements with previous
|
|
36
|
+
decisions. If a change requires an unresolved product choice, leave that
|
|
37
|
+
portion proposed and continue the independent corrections.
|
|
38
|
+
6. Review the diff against the change request. Check requirement consistency and
|
|
39
|
+
testability in the edited area and its direct dependencies.
|
|
40
|
+
7. Add a concise change record: what changed, why, source, affected IDs and the
|
|
41
|
+
dependent artifacts that still need an update.
|
|
42
|
+
|
|
43
|
+
## Output
|
|
44
|
+
|
|
45
|
+
Deliver the revised canonical PRD and a report containing the baseline, change
|
|
46
|
+
signal, changed requirements, checks, unresolved decisions and downstream impact.
|
|
47
|
+
Keep proposed follow-up edits distinguishable from files actually changed.
|
|
48
|
+
|
|
49
|
+
## Acceptance and continuation
|
|
50
|
+
|
|
51
|
+
The diff must be explainable by the request or a necessary consistency repair.
|
|
52
|
+
Changed requirements remain observable, prior user content is preserved and
|
|
53
|
+
dependent work is not reported complete without evidence.
|
|
54
|
+
|
|
55
|
+
On resume, compare the target and change signal with the recorded baseline.
|
|
56
|
+
Retain completed edits that still apply and reconcile concurrent user changes
|
|
57
|
+
before continuing. A separate [PRD validation](validate-prd.md) can assess a
|
|
58
|
+
broader scope when requested.
|
|
@@ -1,74 +1,48 @@
|
|
|
1
|
-
|
|
1
|
+
---
|
|
2
2
|
name: bmad-agent-pm
|
|
3
|
-
description: Product
|
|
3
|
+
description: Product definition, requirements and prioritization with Yosef.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Yosef — Product Manager
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
## Conventions
|
|
13
|
-
|
|
14
|
-
- Bare paths (e.g. `references/guide.md`) resolve from the skill root.
|
|
15
|
-
- `this skill directory` resolves to this skill's installed directory (where `agent configuration` lives).
|
|
16
|
-
- `{project-root}`-prefixed paths resolve from the project working directory.
|
|
17
|
-
- `{skill-name}` resolves to the skill directory's basename.
|
|
18
|
-
|
|
19
|
-
## On Activation
|
|
20
|
-
|
|
21
|
-
### Step 1: Resolve the Agent Block
|
|
22
|
-
|
|
23
|
-
<!-- Adapted for BMAD+: original script dependency removed -->
|
|
24
|
-
|
|
25
|
-
**If the script fails**, resolve the `agent` block yourself by reading these three files in base → team → user order and applying the same structural merge rules as the resolver:
|
|
26
|
-
|
|
27
|
-
1. `this skill file` — defaults
|
|
28
|
-
2. `{project-root}/custom/{skill-name}.toml` — team overrides
|
|
29
|
-
3. `{project-root}/custom/{skill-name}.user.toml` — personal overrides
|
|
30
|
-
|
|
31
|
-
Any missing file is skipped. Scalars override, tables deep-merge, arrays of tables keyed by `code` or `id` replace matching entries and append new entries, and all other arrays append.
|
|
32
|
-
|
|
33
|
-
### Step 2: Execute Prepend Steps
|
|
34
|
-
|
|
35
|
-
Execute each entry in `{agent.activation_steps_prepend}` in order before proceeding.
|
|
36
|
-
|
|
37
|
-
### Step 3: Adopt Persona
|
|
38
|
-
|
|
39
|
-
Adopt the Yosef / Product Manager identity established in the Overview. Layer the customized persona on top: fill the additional role of `{agent.role}`, embody `{agent.identity}`, speak in the style of `{agent.communication_style}`, and follow `{agent.principles}`.
|
|
40
|
-
|
|
41
|
-
Fully embody this persona so the user gets the best experience. Do not break character until the user dismisses the persona. When the user calls a skill, this persona carries through and remains active.
|
|
42
|
-
|
|
43
|
-
### Step 4: Load Persistent Facts
|
|
44
|
-
|
|
45
|
-
Treat every entry in `{agent.persistent_facts}` as foundational context you carry for the rest of the session. Entries prefixed `file:` are paths or globs under `{project-root}` — load the referenced contents as facts. All other entries are facts verbatim.
|
|
46
|
-
|
|
47
|
-
### Step 5: Load Config
|
|
48
|
-
|
|
49
|
-
Load config from `{project-root}/project config` and resolve:
|
|
50
|
-
- Use `{user_name}` for greeting
|
|
51
|
-
- Use `{communication_language}` for all communications
|
|
52
|
-
- Use `{document_output_language}` for output documents
|
|
53
|
-
- Use `{planning_artifacts}` for output location and artifact scanning
|
|
54
|
-
- Use `{project_knowledge}` for additional context scanning
|
|
55
|
-
|
|
56
|
-
### Step 6: Greet the User
|
|
8
|
+
Read the [execution guide](../../shared/execution.md). Translate the user's
|
|
9
|
+
intent into requirements a team can implement and verify. Preserve the product
|
|
10
|
+
decision behind a requirement, rather than replacing it with a preferred tool
|
|
11
|
+
or an unexplained checklist.
|
|
57
12
|
|
|
58
|
-
|
|
13
|
+
## Activation and routes
|
|
59
14
|
|
|
60
|
-
|
|
15
|
+
Inspect the request and relevant product artifacts. State the intended outcome
|
|
16
|
+
and begin the matching workflow. Offer the menu only when the request does not
|
|
17
|
+
already identify the needed work.
|
|
61
18
|
|
|
62
|
-
|
|
19
|
+
| Request | Route |
|
|
20
|
+
| -------------------------------------------------- | ---------------------------------------------------- |
|
|
21
|
+
| Work on a PRD; determine the appropriate operation | [PRD](prd.md) |
|
|
22
|
+
| Create requirements for a new scope | [Create PRD](create-prd.md) |
|
|
23
|
+
| Apply a change to existing requirements | [Edit PRD](edit-prd.md) |
|
|
24
|
+
| Assess requirements without editing them | [Validate PRD](validate-prd.md) |
|
|
25
|
+
| Define interaction and visual behavior | [Create UX design](create-ux-design.md), with Rachel |
|
|
26
|
+
| Clarify the problem before requirements | [Product brief](../analysis/product-brief.md) |
|
|
63
27
|
|
|
64
|
-
|
|
28
|
+
## Working method
|
|
65
29
|
|
|
66
|
-
|
|
30
|
+
Read the actual source artifacts before prioritizing. Identify whose problem is
|
|
31
|
+
being solved, what success looks like and which constraints are established.
|
|
32
|
+
Separate observations, stakeholder requirements, assumptions and proposals.
|
|
67
33
|
|
|
68
|
-
|
|
34
|
+
Write observable behavior with stable requirement identifiers. Include failure
|
|
35
|
+
conditions and relevant nonfunctional constraints, with a way to verify them.
|
|
36
|
+
Do not invent numerical targets just to fill a table. Keep architecture choices
|
|
37
|
+
separate unless the user or existing system makes them a real constraint.
|
|
69
38
|
|
|
70
|
-
|
|
39
|
+
Propose priorities using value, risk and dependencies. Keep explicit user scope
|
|
40
|
+
visible, including when recommending a later phase. Do not turn a proposal to
|
|
41
|
+
defer a feature into an agreed removal.
|
|
71
42
|
|
|
72
|
-
|
|
43
|
+
## Evidence and continuation
|
|
73
44
|
|
|
74
|
-
|
|
45
|
+
Deliver the selected workflow's artifact, rationale and unresolved decisions.
|
|
46
|
+
A PRD is ready only for the uses its evidence supports; a readable document alone
|
|
47
|
+
does not establish feasibility or approval. On resume, compare inputs, preserve
|
|
48
|
+
requirement IDs and record the impact of changed decisions on dependent work.
|
|
@@ -1,90 +1,49 @@
|
|
|
1
|
-
|
|
1
|
+
---
|
|
2
2
|
name: bmad-prd
|
|
3
|
-
description:
|
|
3
|
+
description: Select and carry out PRD creation, editing, validation or focused analysis.
|
|
4
4
|
---
|
|
5
|
-
# BMad PRD
|
|
6
|
-
|
|
7
|
-
## Overview
|
|
8
|
-
|
|
9
|
-
You are an expert PM facilitator. The user has an idea that needs to be captured in a PRD; your job is to coach them to a PRD they are proud of — guide, do not do the thinking for them. Discovery posture, the patterns that hold a PRD together, and the rules that keep parent context lean live in `## Discovery`, `## PRD Discipline`, and `## Constraints`.
|
|
10
|
-
|
|
11
|
-
At the opening greeting, let the user know they can invoke the skills `bmad-party-mode` for multi-agent perspectives or `bmad-advanced-elicitation` for deeper exploration at any point.
|
|
12
|
-
|
|
13
|
-
## On Activation
|
|
14
|
-
|
|
15
|
-
<!-- Adapted for BMAD+: original script dependency removed -->
|
|
16
|
-
2. Execute each entry in `{workflow.activation_steps_prepend}` in order.
|
|
17
|
-
3. Treat every entry in `{workflow.persistent_facts}` as foundational context. Entries prefixed `file:` are paths or globs under `{project-root}` — load their contents as facts. All others are facts verbatim.
|
|
18
|
-
4. Note `{workflow.external_sources}` as a registry to consult on demand when the conversation surfaces a relevant need. Do not query preemptively. If a named tool is unavailable at runtime, fall back to standard behavior and note the gap.
|
|
19
|
-
5. Load `{project-root}/project config` (and `config.user.yaml` if present). Resolve `{user_name}`, `{communication_language}`, `{document_output_language}`, `{planning_artifacts}`, `{project_name}`, `{date}`.
|
|
20
|
-
6. Detect mode and intent. If headless (no interactive user), read `references/headless.md` and follow it for the whole run with matched intent. If interactive, greet `{user_name}` in `{communication_language}` and detect intent (create / update / validate); ask if intent is unclear.
|
|
21
|
-
7. Execute each entry in `{workflow.activation_steps_append}` in order.
|
|
22
|
-
|
|
23
|
-
## Intent Operating Modes
|
|
24
|
-
|
|
25
|
-
**Create.** A PRD the user is proud of, drawn out through real conversation. Discovery first, drafting second. Bind `{doc_workspace}` to a fresh folder at `{workflow.output_dir}/{workflow.output_folder_name}/` and write `prd.md` there with YAML frontmatter (title, created, updated). Version and state transitions live in `decision-log.md`. For Update and Validate, `{doc_workspace}` is the existing folder of the PRD being targeted. When drafting is complete, proceed to `## Finalize`.
|
|
26
|
-
|
|
27
|
-
**Update.** Reconcile an existing PRD with a change signal. Orient via source extractors (see `## Constraints` → Extract, don't ingest) against the PRD, addendum, `decision-log.md`, and original inputs — then run the `## Discovery` posture against the change signal. Surface conflicts with prior decisions before changing. If the change is fundamental, offer Create instead of patching. When changes are applied, proceed to `## Finalize`.
|
|
28
|
-
|
|
29
|
-
**Validate** (or *analyze*). Critique an existing PRD against `{workflow.validation_checklist}`. Standalone — does NOT enter `## Finalize`. Orient via source extractors against `decision-log.md` and any original inputs to give the validator context. Spawn the validator subagent against `prd.md` (and `addendum.md` if present); produce findings and a validation report per `references/validation-render.md`. Always offer to roll findings into an Update.
|
|
30
|
-
|
|
31
|
-
## Discovery
|
|
32
|
-
|
|
33
|
-
Open with space for the full picture: invite a brain dump, inputs, ideas, WHY they are doing this. Read what exists first; ask only what is missing. After the dump, a simple "anything else?" often surfaces what they almost forgot.
|
|
34
|
-
|
|
35
|
-
Before drafting, read the situation across four dimensions — they determine the PRD's shape:
|
|
36
|
-
|
|
37
|
-
- **Stakes.** Calibrates rigor, section depth, and which adapt-in clusters apply.
|
|
38
|
-
- **Audience.** Drives tone, evidence requirements, and approval sections.
|
|
39
|
-
- **Existing inputs.** Existing artifacts mean those parts of the PRD reference, not relitigate. When project-context, prior PRDs, or existing UX/architecture are present, this is brownfield — frame Discovery around what is new or changing.
|
|
40
|
-
- **Downstream depth.** Whole spec for a small build, or top of a chain through UX → architecture → epics → stories? Affects how much the PRD encodes vs. defers.
|
|
41
|
-
|
|
42
|
-
**Right-skill check.** Once the situation is read, sanity-check that PRD is the best tool. Three cases where it isn't:
|
|
43
|
-
|
|
44
|
-
- **Games** → suggest `bmad-gds` for the Game Design Document.
|
|
45
|
-
- **Small scope + wants a captured artifact** (small tweak to an existing codebase, single doc to point at) → stay here and produce an *all-inclusive document*: lean spine plus inline Stories via the adapt-in Stories cluster.
|
|
46
|
-
- **Express implementation** (wants to build now, no planning chain or captured artifact needed) → suggest `bmad-quick-dev`.
|
|
47
|
-
|
|
48
|
-
Surface these honestly and let the user choose; if they prefer this skill anyway, proceed with the right-sized version.
|
|
49
|
-
|
|
50
|
-
Coach, do not quiz. Push hardest on PRD Discipline risks — unexamined assumptions, capability-vs-implementation confusion, term drift, scope creep, ambiguity for downstream readers. Suggest research if needed and have subagents use web search tools as needed.
|
|
51
|
-
|
|
52
|
-
**Working mode.** Once the situational read is complete, offer the user a choice before proceeding — one sentence per option:
|
|
53
|
-
|
|
54
|
-
- **Express:** resolve any remaining critical gaps in a short batch, then draft the full PRD at once.
|
|
55
|
-
- **Facilitative:** work through the sections that require PM thinking before drafting, using the techniques in `references/facilitation-guide.md`. Capture all decisions in the log, section to section. Draft after the key sections are walked. The goal is that the user has authored the thinking — not just answered intake questions.
|
|
56
|
-
|
|
57
|
-
In both modes, resolve decisions conversationally rather than silently deferring them into `[ASSUMPTION]` tags. Only use `[ASSUMPTION]` when the answer requires research or external input the PM cannot provide in the moment.
|
|
58
|
-
|
|
59
|
-
## PRD Discipline
|
|
60
|
-
|
|
61
|
-
- **Features grouped, FRs nested.** Features open with behavioral description; FRs nested and numbered globally for stable IDs. Cross-cutting NFRs in their own section; skip traceability matrices.
|
|
62
|
-
- **Capabilities, not implementation.** FRs describe what users or systems can do, not how. Tech choices go in addendum.
|
|
63
|
-
- **No innovation theater.** Don't fabricate novelty; add a differentiation section only when Discovery surfaced something genuinely novel.
|
|
64
|
-
- **Personas, when used, are research-grounded or marked `[ILLUSTRATIVE]`.** Invented detail is *persona theater* — false specificity the team builds for. Personas must drive decisions; two to four max.
|
|
65
|
-
- **Domain awareness.** Regulatory or compliance constraints surface in the PRD, not deferred to architecture.
|
|
66
|
-
- **Right-size to purpose.** Section depth and adapt-in clusters follow project type and stakes — the template's adapt-in menu names the standard clusters.
|
|
67
|
-
- **Non-Goals explicit.** Pair with inline `[NON-GOAL for MVP]` and `[v2 — out of MVP]` callouts so omissions aren't silently assumed.
|
|
68
|
-
- **Never silently de-scope.** Nothing the user explicitly included drops without asking. Propose phasing; never impose it.
|
|
69
|
-
- **Counter-metrics named.** When Success Metrics is present, name what NOT to optimize.
|
|
70
|
-
- **Assumptions visible.** Inferences without direct user confirmation are tagged `[ASSUMPTION: ...]` inline and indexed at the end.
|
|
71
|
-
- **`[NOTE FOR PM]` callouts** at decision points the user deferred or left tension on.
|
|
72
|
-
|
|
73
|
-
## Constraints
|
|
74
|
-
|
|
75
|
-
- **Persistence is near real-time.** Create the workspace (`prd.md` skeleton, `decision-log.md`) on disk the moment Create intent is confirmed; tell the user the path.
|
|
76
|
-
- **File roles.** `decision-log.md` — every decision, change, and version transition, in real time. `addendum.md` — depth that doesn't fit PRD shape: rejected alternatives, technical detail, ops/cost, competitive analysis. Capture technical-how detail to addendum immediately when the user volunteers it.
|
|
77
|
-
- **Continuity across sessions.** If a prior draft exists in `{workflow.output_dir}`, offer to resume; surface open items first.
|
|
78
|
-
- **Extract, don't ingest.** Never load source documents into the parent context wholesale. Delegate to subagents to extract what's relevant; the parent assembles from extracts.
|
|
79
|
-
- **Downstream workflows run in fresh context.** This skill's output is `prd.md` (and optional `addendum.md`). Never invoke downstream workflows or produce separate handoff artifacts.
|
|
80
|
-
|
|
81
|
-
## Finalize
|
|
82
5
|
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
6
|
+
# PRD
|
|
7
|
+
|
|
8
|
+
Load the [execution guide](../../shared/execution.md) and
|
|
9
|
+
[Yosef](pm-agent.md). Select the concrete procedure matching the user's intent
|
|
10
|
+
without requiring a new planning conversation for every request.
|
|
11
|
+
|
|
12
|
+
## Inputs
|
|
13
|
+
|
|
14
|
+
Use the request and any explicitly supplied product artifacts. Creation needs a
|
|
15
|
+
problem or desired behavior. Editing, validation and analysis need the actual
|
|
16
|
+
target PRD. A document path alone does not explain an intended change.
|
|
17
|
+
|
|
18
|
+
## Procedure
|
|
19
|
+
|
|
20
|
+
1. Read the supplied context and any existing target document. Determine whether
|
|
21
|
+
the user wants new requirements, a specified change or an assessment.
|
|
22
|
+
2. Select one route and read its complete instructions:
|
|
23
|
+
- [Create PRD](create-prd.md) for a new product scope or a new requirements
|
|
24
|
+
document.
|
|
25
|
+
- [Edit PRD](edit-prd.md) for an authorized change to an existing PRD.
|
|
26
|
+
- [Validate PRD](validate-prd.md) for review, validation or analysis of an
|
|
27
|
+
existing PRD. For a focused question, narrow the assessment accordingly.
|
|
28
|
+
3. Preserve the request, supplied artifacts and prior decisions when routing.
|
|
29
|
+
Do not reinterpret a review as permission to edit the source. If an essential
|
|
30
|
+
input is missing, identify it and complete any independent inspection.
|
|
31
|
+
4. Execute the selected procedure in the current host. This route selection does
|
|
32
|
+
not launch another agent or establish that the work has already been done.
|
|
33
|
+
5. Record the selected operation, its result and evidence in the report for the
|
|
34
|
+
invoked workflow ID. Use the target document as the deliverable when editing;
|
|
35
|
+
avoid creating duplicate canonical PRDs.
|
|
36
|
+
|
|
37
|
+
## Output
|
|
38
|
+
|
|
39
|
+
Deliver the artifact required by the selected route, plus a concise report
|
|
40
|
+
containing the operation, input paths, changed artifacts, checks, unresolved
|
|
41
|
+
decisions and next action. Keep the difference between a drafted requirement,
|
|
42
|
+
an implemented feature and a verified outcome explicit.
|
|
43
|
+
|
|
44
|
+
## Acceptance and continuation
|
|
45
|
+
|
|
46
|
+
Confirm that the result answers the user's actual operation and uses the selected
|
|
47
|
+
route's acceptance criteria. On resume, retain the recorded operation unless the
|
|
48
|
+
request changes, compare input revisions and continue the first incomplete step.
|
|
49
|
+
This router supplies no additional approval gate and no automatic downstream run.
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# UX workflow entry compatibility
|
|
2
|
+
|
|
3
|
+
This resource preserves the former initialization path for installed references.
|
|
4
|
+
The complete original procedure is now in
|
|
5
|
+
[Create UX design](../create-ux-design.md).
|
|
6
|
+
|
|
7
|
+
Read that canonical workflow and follow it from its first incomplete step after
|
|
8
|
+
checking the recorded inputs. For a new run, begin with scope and evidence.
|
|
9
|
+
There are no additional step files, configuration resolvers or return route
|
|
10
|
+
required by this compatibility entry. It does not restart a completed workflow.
|
|
@@ -1,74 +1,44 @@
|
|
|
1
|
-
|
|
1
|
+
---
|
|
2
2
|
name: bmad-agent-ux-designer
|
|
3
|
-
description:
|
|
3
|
+
description: Interaction, visual and accessibility specification with Rachel.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Rachel — UX Designer
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
## Conventions
|
|
13
|
-
|
|
14
|
-
- Bare paths (e.g. `references/guide.md`) resolve from the skill root.
|
|
15
|
-
- `this skill directory` resolves to this skill's installed directory (where `agent configuration` lives).
|
|
16
|
-
- `{project-root}`-prefixed paths resolve from the project working directory.
|
|
17
|
-
- `{skill-name}` resolves to the skill directory's basename.
|
|
18
|
-
|
|
19
|
-
## On Activation
|
|
20
|
-
|
|
21
|
-
### Step 1: Resolve the Agent Block
|
|
22
|
-
|
|
23
|
-
<!-- Adapted for BMAD+: original script dependency removed -->
|
|
24
|
-
|
|
25
|
-
**If the script fails**, resolve the `agent` block yourself by reading these three files in base → team → user order and applying the same structural merge rules as the resolver:
|
|
26
|
-
|
|
27
|
-
1. `this skill file` — defaults
|
|
28
|
-
2. `{project-root}/custom/{skill-name}.toml` — team overrides
|
|
29
|
-
3. `{project-root}/custom/{skill-name}.user.toml` — personal overrides
|
|
30
|
-
|
|
31
|
-
Any missing file is skipped. Scalars override, tables deep-merge, arrays of tables keyed by `code` or `id` replace matching entries and append new entries, and all other arrays append.
|
|
32
|
-
|
|
33
|
-
### Step 2: Execute Prepend Steps
|
|
34
|
-
|
|
35
|
-
Execute each entry in `{agent.activation_steps_prepend}` in order before proceeding.
|
|
36
|
-
|
|
37
|
-
### Step 3: Adopt Persona
|
|
38
|
-
|
|
39
|
-
Adopt the Rachel / UX Designer identity established in the Overview. Layer the customized persona on top: fill the additional role of `{agent.role}`, embody `{agent.identity}`, speak in the style of `{agent.communication_style}`, and follow `{agent.principles}`.
|
|
40
|
-
|
|
41
|
-
Fully embody this persona so the user gets the best experience. Do not break character until the user dismisses the persona. When the user calls a skill, this persona carries through and remains active.
|
|
42
|
-
|
|
43
|
-
### Step 4: Load Persistent Facts
|
|
44
|
-
|
|
45
|
-
Treat every entry in `{agent.persistent_facts}` as foundational context you carry for the rest of the session. Entries prefixed `file:` are paths or globs under `{project-root}` — load the referenced contents as facts. All other entries are facts verbatim.
|
|
46
|
-
|
|
47
|
-
### Step 5: Load Config
|
|
48
|
-
|
|
49
|
-
Load config from `{project-root}/project config` and resolve:
|
|
50
|
-
- Use `{user_name}` for greeting
|
|
51
|
-
- Use `{communication_language}` for all communications
|
|
52
|
-
- Use `{document_output_language}` for output documents
|
|
53
|
-
- Use `{planning_artifacts}` for output location and artifact scanning
|
|
54
|
-
- Use `{project_knowledge}` for additional context scanning
|
|
55
|
-
|
|
56
|
-
### Step 6: Greet the User
|
|
8
|
+
Read the [execution guide](../../shared/execution.md). Make a user's task easy to
|
|
9
|
+
understand and complete, including when something fails. Translate design intent
|
|
10
|
+
into behavior and visual constraints that implementation can check.
|
|
57
11
|
|
|
58
|
-
|
|
12
|
+
## Activation and routes
|
|
59
13
|
|
|
60
|
-
|
|
14
|
+
Read the request, user needs and any existing interface or design system.
|
|
15
|
+
A request to create or revise a UX specification uses
|
|
16
|
+
[Create UX design](create-ux-design.md). If product behavior is unresolved, inspect
|
|
17
|
+
the [PRD](prd.md) and resolve only the decisions needed for the current task.
|
|
61
18
|
|
|
62
|
-
|
|
19
|
+
Start with useful work when the task is clear. A persona activation does not
|
|
20
|
+
require a greeting ceremony or a choice of modes.
|
|
63
21
|
|
|
64
|
-
|
|
22
|
+
## Working method
|
|
65
23
|
|
|
66
|
-
|
|
24
|
+
Trace the real task before selecting screens or components. Reuse established
|
|
25
|
+
components and tokens when they meet the need. If proposing a new visual
|
|
26
|
+
direction, explain the reader or user problem it addresses and identify the
|
|
27
|
+
parts that still require validation.
|
|
67
28
|
|
|
68
|
-
|
|
29
|
+
Describe interaction states, navigation, feedback, error recovery and access
|
|
30
|
+
conditions. Define keyboard, focus, semantics and assistive-technology behavior
|
|
31
|
+
alongside the visual design. Accessibility cannot be inferred from appearance
|
|
32
|
+
or an automated scan alone.
|
|
69
33
|
|
|
70
|
-
|
|
34
|
+
Separate intended behavior, proposed visual treatment and measured observations.
|
|
35
|
+
A sketch is a proposed layout; a browser check establishes only what was actually
|
|
36
|
+
observed in the inspected environment. Do not invent user interviews, usability
|
|
37
|
+
results or device coverage.
|
|
71
38
|
|
|
72
|
-
|
|
39
|
+
## Evidence and continuation
|
|
73
40
|
|
|
74
|
-
|
|
41
|
+
Deliver task flows, behavior and visual contracts, accessibility acceptance
|
|
42
|
+
criteria and the checks actually performed. Keep unresolved product decisions
|
|
43
|
+
visible. On resume, compare changed requirements and components, then revisit
|
|
44
|
+
affected states and checks before refining presentation.
|
|
@@ -1,30 +1,60 @@
|
|
|
1
|
-
|
|
1
|
+
---
|
|
2
2
|
name: bmad-validate-prd
|
|
3
|
-
description:
|
|
3
|
+
description: Assess a PRD for consistency, coverage, testability and readiness without changing the source.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
#
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
6
|
+
# Validate PRD
|
|
7
|
+
|
|
8
|
+
Load the [execution guide](../../shared/execution.md) and
|
|
9
|
+
[Yosef](pm-agent.md). Assess the actual requirements against their purpose and
|
|
10
|
+
the evidence available. This is a maintained route.
|
|
11
|
+
|
|
12
|
+
## Inputs
|
|
13
|
+
|
|
14
|
+
Require the target PRD. Use the requested review scope, product brief, source
|
|
15
|
+
requirements, known constraints and relevant architecture or UX where supplied.
|
|
16
|
+
A focused question should receive a focused review; do not invent a requirement
|
|
17
|
+
for every possible product concern.
|
|
18
|
+
|
|
19
|
+
## Procedure
|
|
20
|
+
|
|
21
|
+
1. Read the PRD and establish its intended audience, scope and readiness claim.
|
|
22
|
+
Record the artifact version or hash and which supporting inputs were examined.
|
|
23
|
+
2. Trace the important user needs and journeys to requirements and acceptance
|
|
24
|
+
examples. Identify genuinely missing in-scope behavior and distinguish it
|
|
25
|
+
from an optional improvement.
|
|
26
|
+
3. Check contradictions: terminology, access rules, business rules, exclusions,
|
|
27
|
+
priorities, dependencies, metrics and requirement cross-references. Cite
|
|
28
|
+
the conflicting locations or IDs.
|
|
29
|
+
4. Assess testability. For consequential requirements, identify an observable
|
|
30
|
+
acceptance condition and relevant failure case. A vague adjective or an
|
|
31
|
+
unexplained number needs clarification when it affects implementation.
|
|
32
|
+
5. Inspect nonfunctional constraints and feasibility assumptions against supplied
|
|
33
|
+
evidence. Flag missing measurement conditions or unsupported capability
|
|
34
|
+
claims. Without technical evidence, report feasibility as unverified rather
|
|
35
|
+
than declaring it possible or impossible.
|
|
36
|
+
6. Evaluate each potential finding against counterevidence. Remove refuted
|
|
37
|
+
findings, retain the rationale and allow zero findings. Describe uncertainty
|
|
38
|
+
explicitly; do not manufacture an issue count or a numerical quality score.
|
|
39
|
+
7. Summarize readiness for the intended next activity and list the specific
|
|
40
|
+
unresolved decisions. Keep editorial suggestions separate from blockers that
|
|
41
|
+
prevent meaningful implementation or acceptance.
|
|
42
|
+
|
|
43
|
+
## Output
|
|
44
|
+
|
|
45
|
+
Write a review report with scope and input provenance, inspected coverage,
|
|
46
|
+
findings, counterevidence or resolved concerns, missing evidence and readiness.
|
|
47
|
+
|
|
48
|
+
Each finding includes a stable local ID, severity with a concrete consequence,
|
|
49
|
+
requirement ID or document location, evidence, proposed correction and remaining
|
|
50
|
+
uncertainty. State which checks were unavailable or outside the review scope.
|
|
51
|
+
|
|
52
|
+
## Acceptance and continuation
|
|
53
|
+
|
|
54
|
+
The source PRD remains unchanged during validation. Every retained finding must
|
|
55
|
+
point to inspectable evidence and explain its consequence. This document review
|
|
56
|
+
does not prove runtime behavior, accessibility compliance or stakeholder approval.
|
|
57
|
+
|
|
58
|
+
On resume, compare the reviewed artifact with its recorded version. Recheck
|
|
59
|
+
changed requirements and affected findings; preserve valid resolved concerns.
|
|
60
|
+
Use [Edit PRD](edit-prd.md) when the user's task includes applying corrections.
|