bmad-plus 0.9.2 → 0.12.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 +39 -0
- package/README.md +1 -1
- package/osint-agent-package/skills/bmad-osint-investigate/osint/SKILL.md +30 -0
- package/osint-agent-package/skills/bmad-osint-investigate/osint/assets/dossier-template.md +10 -0
- package/osint-agent-package/skills/bmad-osint-investigate/osint/assets/lawful-basis-record.md +48 -0
- package/osint-agent-package/skills/bmad-osint-investigate/osint/references/gdpr-osint.md +48 -0
- package/package.json +3 -1
- package/tools/build/README.md +78 -0
- package/tools/build/adapters.config.js +117 -0
- package/tools/build/generate-adapters.js +485 -0
- package/tools/build/generate.js +284 -0
- package/tools/build/generated-adapters/.codex/AGENTS.md +121 -0
- package/tools/build/generated-adapters/.cursor/rules/bmad-plus.mdc +126 -0
- package/tools/build/generated-adapters/.opencode/AGENTS.md +121 -0
- package/tools/build/generated-adapters/AGENTS.md +119 -0
- package/tools/build/generated-adapters/CLAUDE.md +122 -0
- package/tools/build/generated-adapters/CONVENTIONS.md +121 -0
- package/tools/build/generated-adapters/GEMINI.md +126 -0
- package/tools/build/generated-adapters/README.md +79 -0
- package/tools/cli/bmad-plus-cli.js +11 -0
- package/tools/cli/commands/install.js +46 -0
- package/tools/cli/commands/memory-journal-cmd.js +311 -0
- package/tools/cli/lib/README-memory-journal.md +125 -0
- package/tools/cli/lib/memory-journal.js +0 -0
- package/tools/cli/lib/packs.js +195 -108
- package/tools/cli/lib/python-provision.js +508 -0
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
<!-- AUTO-GENERATED by tools/build/generate-adapters.js — DO NOT EDIT. -->
|
|
2
|
+
<!-- Sources of truth: registry.yaml (facts) + tools/build/adapters.config.js (hand-authored sections). -->
|
|
3
|
+
<!-- Regenerate: node tools/build/generate-adapters.js --adopt -->
|
|
4
|
+
|
|
5
|
+
# BMAD+ — Agent Spine
|
|
6
|
+
|
|
7
|
+
This file is the SPINE: the single source of truth for agents, packs, skills,
|
|
8
|
+
and workflows, following the AGENTS.md open standard (https://agents.md/).
|
|
9
|
+
Tool-specific adapter files (CLAUDE.md, GEMINI.md, .cursor/rules/, .codex/,
|
|
10
|
+
.opencode/, CONVENTIONS.md) are generated from the same registry and only add
|
|
11
|
+
tool-specific invocation notes.
|
|
12
|
+
|
|
13
|
+
## Project Context
|
|
14
|
+
|
|
15
|
+
This project uses BMAD+, an augmented AI-driven development framework.
|
|
16
|
+
Based on BMAD-METHOD v6.6.0 with multi-role agents, autopilot mode, and parallel execution.
|
|
17
|
+
|
|
18
|
+
<!-- Hand-authored project instructions — single source: tools/build/adapters.config.js. -->
|
|
19
|
+
<!-- Edit the config, then regenerate; never edit this file directly. -->
|
|
20
|
+
|
|
21
|
+
## Agents
|
|
22
|
+
|
|
23
|
+
To activate an agent, say its name or persona:
|
|
24
|
+
|
|
25
|
+
- **Atlas** (Strategist) — Business analysis + Product management
|
|
26
|
+
- **Forge** (Architect-Dev) — Architecture + Development + Documentation
|
|
27
|
+
- **Sentinel** (Quality) — QA + UX review
|
|
28
|
+
- **Nexus** (Orchestrator) — Sprint management + Autopilot + Parallel execution
|
|
29
|
+
- **Shadow** (OSINT) — Investigation + Scraping + Psychoprofiling (if OSINT pack installed)
|
|
30
|
+
- **Maker** (Agent Creator) — Design, build, validate, and package new BMAD+ agents
|
|
31
|
+
- **Shield** (GRC) — Compliance agents for GDPR, ISO 27001, SOC 2, HIPAA, EU AI Act, DORA, NIS2 and more (derived counts: see Registry facts below)
|
|
32
|
+
- **Miriam** (מרים) — Business Analyst — Strategic analysis, research, product briefs (Dev Studio)
|
|
33
|
+
- **Huldah** (חולדה) — Technical Writer — Documentation, diagrams, editorial review (Dev Studio)
|
|
34
|
+
- **Yosef** (יוסף) — Product Manager — PRD, requirements, feature prioritization (Dev Studio)
|
|
35
|
+
- **Rachel** (רחל) — UX Designer — User experience, wireframes, empathy mapping (Dev Studio)
|
|
36
|
+
- **Bezalel** (בצלאל) — System Architect — Architecture, ADRs, epics & stories (Dev Studio)
|
|
37
|
+
- **Oholiab** (אהליאב) — Senior Engineer — TDD, sprint, code review, implementation (Dev Studio)
|
|
38
|
+
- **Zecher** (זכר, Memory Guardian) — Memory Archivist — Persistent cross-session memory, consolidation, project scanning, context recall, session handoffs
|
|
39
|
+
|
|
40
|
+
## Skills
|
|
41
|
+
|
|
42
|
+
- Installed projects load skills from `.agents/skills/`; in this repository the sources live in `src/bmad-plus/skills/` and `src/bmad-plus/agents/`.
|
|
43
|
+
- Each agent has a SKILL.md with capabilities, activation protocol, and role-switching rules.
|
|
44
|
+
- Auto-activation triggers: `.agents/data/role-triggers.yaml` (source: `src/bmad-plus/data/role-triggers.yaml`).
|
|
45
|
+
|
|
46
|
+
## Project Structure
|
|
47
|
+
|
|
48
|
+
- `src/bmad-plus/` — Custom module (agents, skills, data)
|
|
49
|
+
- `monitor/` — Upstream monitoring system (VPS)
|
|
50
|
+
- `mcp-server/` — Audit 360° MCP Server
|
|
51
|
+
- `osint-agent-package/` — OSINT package
|
|
52
|
+
- `upstream/` — BMAD-METHOD reference clone
|
|
53
|
+
|
|
54
|
+
## Communication
|
|
55
|
+
|
|
56
|
+
- User name: laurent
|
|
57
|
+
- Default language: Français for user-facing content, English for code and technical docs.
|
|
58
|
+
|
|
59
|
+
## Commit Rules
|
|
60
|
+
|
|
61
|
+
- NEVER add "Co-Authored-By: Claude" or any AI co-author attribution.
|
|
62
|
+
- The sole author is Laurent Rochetta.
|
|
63
|
+
|
|
64
|
+
## Repository Maintenance Rule
|
|
65
|
+
|
|
66
|
+
When updating the main README.md (English), you MUST synchronously update all translations in the readme-international/ directory (fr, es, de).
|
|
67
|
+
|
|
68
|
+
## Memory Protocol (Karpathy Guardrails)
|
|
69
|
+
|
|
70
|
+
Agents MUST follow these behavioral principles:
|
|
71
|
+
|
|
72
|
+
### G1 — Think Before Coding
|
|
73
|
+
|
|
74
|
+
- State assumptions explicitly. If uncertain, ask.
|
|
75
|
+
- Check `.agents/memory/decisions.md` for prior decisions before re-deciding.
|
|
76
|
+
|
|
77
|
+
### G2 — Simplicity First
|
|
78
|
+
|
|
79
|
+
- Minimum code that solves the problem. Nothing speculative.
|
|
80
|
+
- Check `.agents/memory/patterns.md` for existing solutions.
|
|
81
|
+
|
|
82
|
+
### G3 — Surgical Changes
|
|
83
|
+
|
|
84
|
+
- Touch only what you must. Match existing style.
|
|
85
|
+
- Log surprises in `.agents/memory/lessons.md`.
|
|
86
|
+
|
|
87
|
+
### G4 — Goal-Driven Execution
|
|
88
|
+
|
|
89
|
+
- Define success criteria before implementing.
|
|
90
|
+
- Log non-obvious decisions in `.agents/memory/decisions.md`.
|
|
91
|
+
|
|
92
|
+
### Memory Files
|
|
93
|
+
|
|
94
|
+
- `.agents/memory/decisions.md` — Read at session start, write when making decisions
|
|
95
|
+
- `.agents/memory/lessons.md` — Write when something unexpected happens
|
|
96
|
+
- `.agents/memory/patterns.md` — Write when a reusable pattern is validated
|
|
97
|
+
- `.agents/memory/context.md` — Update at session end with project state
|
|
98
|
+
|
|
99
|
+
## Registry facts (computed from registry.yaml — never hand-typed)
|
|
100
|
+
|
|
101
|
+
- Product: BMAD+ v0.12.0 (derived from BMAD-METHOD v6.6.0)
|
|
102
|
+
- Models supported: claude, gpt, gemini, local (model-agnostic by contract)
|
|
103
|
+
- Packs (9): Core, OSINT, Maker, Shield, SEO, Memory, Dev Studio, Backup, Animated
|
|
104
|
+
- Installer agents (14 across all packs):
|
|
105
|
+
- Core (required): 4 installer agents — Core agents & skills
|
|
106
|
+
- OSINT: 1 installer agent — OSINT & investigation — 2 compliance frameworks
|
|
107
|
+
- Maker: 1 installer agent — Agent creation toolkit
|
|
108
|
+
- Shield: 1 installer agent — GRC compliance (25+ frameworks) — 27 specialized agents, 11 workflows, 26 compliance frameworks
|
|
109
|
+
- SEO: 3 installer agents — SEO audit & optimization — 1 compliance frameworks
|
|
110
|
+
- Memory: 1 installer agent — Persistent cross-session memory
|
|
111
|
+
- Dev Studio: 1 installer agent — SDLC automation (6 agents, 56+ skills) — 6 sub-agents, 38 workflows
|
|
112
|
+
- Backup: 1 installer agent — Backup & restore
|
|
113
|
+
- Animated: 1 installer agent — Animated website agents
|
|
114
|
+
|
|
115
|
+
## Key commands
|
|
116
|
+
|
|
117
|
+
- `bmad-help` — Show all available agents and skills
|
|
118
|
+
- `autopilot` — Launch the orchestrator (Nexus) in full pipeline mode
|
|
119
|
+
- `parallel` — Enable parallel multi-agent execution
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
<!-- AUTO-GENERATED by tools/build/generate-adapters.js — DO NOT EDIT. -->
|
|
2
|
+
<!-- Source of truth: registry.yaml → spine AGENTS.md. Regenerate: node tools/build/generate-adapters.js -->
|
|
3
|
+
|
|
4
|
+
# BMAD+ — Adapter for claude-code
|
|
5
|
+
|
|
6
|
+
This file is a THIN adapter. The single source of truth for agents, packs,
|
|
7
|
+
skills, and workflows is the spine file: **AGENTS.md** (project root).
|
|
8
|
+
Read AGENTS.md first; this adapter only adds tool-specific invocation notes.
|
|
9
|
+
|
|
10
|
+
## Tool notes — claude-code
|
|
11
|
+
|
|
12
|
+
- Claude Code loads `CLAUDE.md` from the project root automatically.
|
|
13
|
+
- Activate an agent by saying its name (see the spine for the full roster).
|
|
14
|
+
- Skills are loaded from `.agents/skills/`; auto-activation triggers live in `.agents/data/role-triggers.yaml`.
|
|
15
|
+
|
|
16
|
+
## Project Context
|
|
17
|
+
|
|
18
|
+
This project uses BMAD+, an augmented AI-driven development framework.
|
|
19
|
+
Based on BMAD-METHOD v6.6.0 with multi-role agents, autopilot mode, and parallel execution.
|
|
20
|
+
|
|
21
|
+
<!-- Hand-authored project instructions — single source: tools/build/adapters.config.js. -->
|
|
22
|
+
<!-- Edit the config, then regenerate; never edit this file directly. -->
|
|
23
|
+
|
|
24
|
+
## Agents
|
|
25
|
+
|
|
26
|
+
To activate an agent, say its name or persona:
|
|
27
|
+
|
|
28
|
+
- **Atlas** (Strategist) — Business analysis + Product management
|
|
29
|
+
- **Forge** (Architect-Dev) — Architecture + Development + Documentation
|
|
30
|
+
- **Sentinel** (Quality) — QA + UX review
|
|
31
|
+
- **Nexus** (Orchestrator) — Sprint management + Autopilot + Parallel execution
|
|
32
|
+
- **Shadow** (OSINT) — Investigation + Scraping + Psychoprofiling (if OSINT pack installed)
|
|
33
|
+
- **Maker** (Agent Creator) — Design, build, validate, and package new BMAD+ agents
|
|
34
|
+
- **Shield** (GRC) — Compliance agents for GDPR, ISO 27001, SOC 2, HIPAA, EU AI Act, DORA, NIS2 and more (derived counts: see Registry facts below)
|
|
35
|
+
- **Miriam** (מרים) — Business Analyst — Strategic analysis, research, product briefs (Dev Studio)
|
|
36
|
+
- **Huldah** (חולדה) — Technical Writer — Documentation, diagrams, editorial review (Dev Studio)
|
|
37
|
+
- **Yosef** (יוסף) — Product Manager — PRD, requirements, feature prioritization (Dev Studio)
|
|
38
|
+
- **Rachel** (רחל) — UX Designer — User experience, wireframes, empathy mapping (Dev Studio)
|
|
39
|
+
- **Bezalel** (בצלאל) — System Architect — Architecture, ADRs, epics & stories (Dev Studio)
|
|
40
|
+
- **Oholiab** (אהליאב) — Senior Engineer — TDD, sprint, code review, implementation (Dev Studio)
|
|
41
|
+
- **Zecher** (זכר, Memory Guardian) — Memory Archivist — Persistent cross-session memory, consolidation, project scanning, context recall, session handoffs
|
|
42
|
+
|
|
43
|
+
## Skills
|
|
44
|
+
|
|
45
|
+
- Installed projects load skills from `.agents/skills/`; in this repository the sources live in `src/bmad-plus/skills/` and `src/bmad-plus/agents/`.
|
|
46
|
+
- Each agent has a SKILL.md with capabilities, activation protocol, and role-switching rules.
|
|
47
|
+
- Auto-activation triggers: `.agents/data/role-triggers.yaml` (source: `src/bmad-plus/data/role-triggers.yaml`).
|
|
48
|
+
|
|
49
|
+
## Project Structure
|
|
50
|
+
|
|
51
|
+
- `src/bmad-plus/` — Custom module (agents, skills, data)
|
|
52
|
+
- `monitor/` — Upstream monitoring system (VPS)
|
|
53
|
+
- `mcp-server/` — Audit 360° MCP Server
|
|
54
|
+
- `osint-agent-package/` — OSINT package
|
|
55
|
+
- `upstream/` — BMAD-METHOD reference clone
|
|
56
|
+
|
|
57
|
+
## Communication
|
|
58
|
+
|
|
59
|
+
- User name: laurent
|
|
60
|
+
- Default language: Français for user-facing content, English for code and technical docs.
|
|
61
|
+
|
|
62
|
+
## Commit Rules
|
|
63
|
+
|
|
64
|
+
- NEVER add "Co-Authored-By: Claude" or any AI co-author attribution.
|
|
65
|
+
- The sole author is Laurent Rochetta.
|
|
66
|
+
|
|
67
|
+
## Repository Maintenance Rule
|
|
68
|
+
|
|
69
|
+
When updating the main README.md (English), you MUST synchronously update all translations in the readme-international/ directory (fr, es, de).
|
|
70
|
+
|
|
71
|
+
## Memory Protocol (Karpathy Guardrails)
|
|
72
|
+
|
|
73
|
+
Agents MUST follow these behavioral principles:
|
|
74
|
+
|
|
75
|
+
### G1 — Think Before Coding
|
|
76
|
+
|
|
77
|
+
- State assumptions explicitly. If uncertain, ask.
|
|
78
|
+
- Check `.agents/memory/decisions.md` for prior decisions before re-deciding.
|
|
79
|
+
|
|
80
|
+
### G2 — Simplicity First
|
|
81
|
+
|
|
82
|
+
- Minimum code that solves the problem. Nothing speculative.
|
|
83
|
+
- Check `.agents/memory/patterns.md` for existing solutions.
|
|
84
|
+
|
|
85
|
+
### G3 — Surgical Changes
|
|
86
|
+
|
|
87
|
+
- Touch only what you must. Match existing style.
|
|
88
|
+
- Log surprises in `.agents/memory/lessons.md`.
|
|
89
|
+
|
|
90
|
+
### G4 — Goal-Driven Execution
|
|
91
|
+
|
|
92
|
+
- Define success criteria before implementing.
|
|
93
|
+
- Log non-obvious decisions in `.agents/memory/decisions.md`.
|
|
94
|
+
|
|
95
|
+
### Memory Files
|
|
96
|
+
|
|
97
|
+
- `.agents/memory/decisions.md` — Read at session start, write when making decisions
|
|
98
|
+
- `.agents/memory/lessons.md` — Write when something unexpected happens
|
|
99
|
+
- `.agents/memory/patterns.md` — Write when a reusable pattern is validated
|
|
100
|
+
- `.agents/memory/context.md` — Update at session end with project state
|
|
101
|
+
|
|
102
|
+
## Registry facts (computed from registry.yaml — never hand-typed)
|
|
103
|
+
|
|
104
|
+
- Product: BMAD+ v0.12.0 (derived from BMAD-METHOD v6.6.0)
|
|
105
|
+
- Models supported: claude, gpt, gemini, local (model-agnostic by contract)
|
|
106
|
+
- Packs (9): Core, OSINT, Maker, Shield, SEO, Memory, Dev Studio, Backup, Animated
|
|
107
|
+
- Installer agents (14 across all packs):
|
|
108
|
+
- Core (required): 4 installer agents — Core agents & skills
|
|
109
|
+
- OSINT: 1 installer agent — OSINT & investigation — 2 compliance frameworks
|
|
110
|
+
- Maker: 1 installer agent — Agent creation toolkit
|
|
111
|
+
- Shield: 1 installer agent — GRC compliance (25+ frameworks) — 27 specialized agents, 11 workflows, 26 compliance frameworks
|
|
112
|
+
- SEO: 3 installer agents — SEO audit & optimization — 1 compliance frameworks
|
|
113
|
+
- Memory: 1 installer agent — Persistent cross-session memory
|
|
114
|
+
- Dev Studio: 1 installer agent — SDLC automation (6 agents, 56+ skills) — 6 sub-agents, 38 workflows
|
|
115
|
+
- Backup: 1 installer agent — Backup & restore
|
|
116
|
+
- Animated: 1 installer agent — Animated website agents
|
|
117
|
+
|
|
118
|
+
## Key commands
|
|
119
|
+
|
|
120
|
+
- `bmad-help` — Show all available agents and skills
|
|
121
|
+
- `autopilot` — Launch the orchestrator (Nexus) in full pipeline mode
|
|
122
|
+
- `parallel` — Enable parallel multi-agent execution
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
<!-- AUTO-GENERATED by tools/build/generate-adapters.js — DO NOT EDIT. -->
|
|
2
|
+
<!-- Source of truth: registry.yaml → spine AGENTS.md. Regenerate: node tools/build/generate-adapters.js -->
|
|
3
|
+
|
|
4
|
+
# BMAD+ — Adapter for aider
|
|
5
|
+
|
|
6
|
+
This file is a THIN adapter. The single source of truth for agents, packs,
|
|
7
|
+
skills, and workflows is the spine file: **AGENTS.md** (project root).
|
|
8
|
+
Read AGENTS.md first; this adapter only adds tool-specific invocation notes.
|
|
9
|
+
|
|
10
|
+
## Tool notes — aider
|
|
11
|
+
|
|
12
|
+
- Aider does not auto-load convention files: add `read: CONVENTIONS.md` to `.aider.conf.yml` or run `/read CONVENTIONS.md`.
|
|
13
|
+
- Treat the spine as the single source of truth; this file only adds Aider-specific notes.
|
|
14
|
+
|
|
15
|
+
## Project Context
|
|
16
|
+
|
|
17
|
+
This project uses BMAD+, an augmented AI-driven development framework.
|
|
18
|
+
Based on BMAD-METHOD v6.6.0 with multi-role agents, autopilot mode, and parallel execution.
|
|
19
|
+
|
|
20
|
+
<!-- Hand-authored project instructions — single source: tools/build/adapters.config.js. -->
|
|
21
|
+
<!-- Edit the config, then regenerate; never edit this file directly. -->
|
|
22
|
+
|
|
23
|
+
## Agents
|
|
24
|
+
|
|
25
|
+
To activate an agent, say its name or persona:
|
|
26
|
+
|
|
27
|
+
- **Atlas** (Strategist) — Business analysis + Product management
|
|
28
|
+
- **Forge** (Architect-Dev) — Architecture + Development + Documentation
|
|
29
|
+
- **Sentinel** (Quality) — QA + UX review
|
|
30
|
+
- **Nexus** (Orchestrator) — Sprint management + Autopilot + Parallel execution
|
|
31
|
+
- **Shadow** (OSINT) — Investigation + Scraping + Psychoprofiling (if OSINT pack installed)
|
|
32
|
+
- **Maker** (Agent Creator) — Design, build, validate, and package new BMAD+ agents
|
|
33
|
+
- **Shield** (GRC) — Compliance agents for GDPR, ISO 27001, SOC 2, HIPAA, EU AI Act, DORA, NIS2 and more (derived counts: see Registry facts below)
|
|
34
|
+
- **Miriam** (מרים) — Business Analyst — Strategic analysis, research, product briefs (Dev Studio)
|
|
35
|
+
- **Huldah** (חולדה) — Technical Writer — Documentation, diagrams, editorial review (Dev Studio)
|
|
36
|
+
- **Yosef** (יוסף) — Product Manager — PRD, requirements, feature prioritization (Dev Studio)
|
|
37
|
+
- **Rachel** (רחל) — UX Designer — User experience, wireframes, empathy mapping (Dev Studio)
|
|
38
|
+
- **Bezalel** (בצלאל) — System Architect — Architecture, ADRs, epics & stories (Dev Studio)
|
|
39
|
+
- **Oholiab** (אהליאב) — Senior Engineer — TDD, sprint, code review, implementation (Dev Studio)
|
|
40
|
+
- **Zecher** (זכר, Memory Guardian) — Memory Archivist — Persistent cross-session memory, consolidation, project scanning, context recall, session handoffs
|
|
41
|
+
|
|
42
|
+
## Skills
|
|
43
|
+
|
|
44
|
+
- Installed projects load skills from `.agents/skills/`; in this repository the sources live in `src/bmad-plus/skills/` and `src/bmad-plus/agents/`.
|
|
45
|
+
- Each agent has a SKILL.md with capabilities, activation protocol, and role-switching rules.
|
|
46
|
+
- Auto-activation triggers: `.agents/data/role-triggers.yaml` (source: `src/bmad-plus/data/role-triggers.yaml`).
|
|
47
|
+
|
|
48
|
+
## Project Structure
|
|
49
|
+
|
|
50
|
+
- `src/bmad-plus/` — Custom module (agents, skills, data)
|
|
51
|
+
- `monitor/` — Upstream monitoring system (VPS)
|
|
52
|
+
- `mcp-server/` — Audit 360° MCP Server
|
|
53
|
+
- `osint-agent-package/` — OSINT package
|
|
54
|
+
- `upstream/` — BMAD-METHOD reference clone
|
|
55
|
+
|
|
56
|
+
## Communication
|
|
57
|
+
|
|
58
|
+
- User name: laurent
|
|
59
|
+
- Default language: Français for user-facing content, English for code and technical docs.
|
|
60
|
+
|
|
61
|
+
## Commit Rules
|
|
62
|
+
|
|
63
|
+
- NEVER add "Co-Authored-By: Claude" or any AI co-author attribution.
|
|
64
|
+
- The sole author is Laurent Rochetta.
|
|
65
|
+
|
|
66
|
+
## Repository Maintenance Rule
|
|
67
|
+
|
|
68
|
+
When updating the main README.md (English), you MUST synchronously update all translations in the readme-international/ directory (fr, es, de).
|
|
69
|
+
|
|
70
|
+
## Memory Protocol (Karpathy Guardrails)
|
|
71
|
+
|
|
72
|
+
Agents MUST follow these behavioral principles:
|
|
73
|
+
|
|
74
|
+
### G1 — Think Before Coding
|
|
75
|
+
|
|
76
|
+
- State assumptions explicitly. If uncertain, ask.
|
|
77
|
+
- Check `.agents/memory/decisions.md` for prior decisions before re-deciding.
|
|
78
|
+
|
|
79
|
+
### G2 — Simplicity First
|
|
80
|
+
|
|
81
|
+
- Minimum code that solves the problem. Nothing speculative.
|
|
82
|
+
- Check `.agents/memory/patterns.md` for existing solutions.
|
|
83
|
+
|
|
84
|
+
### G3 — Surgical Changes
|
|
85
|
+
|
|
86
|
+
- Touch only what you must. Match existing style.
|
|
87
|
+
- Log surprises in `.agents/memory/lessons.md`.
|
|
88
|
+
|
|
89
|
+
### G4 — Goal-Driven Execution
|
|
90
|
+
|
|
91
|
+
- Define success criteria before implementing.
|
|
92
|
+
- Log non-obvious decisions in `.agents/memory/decisions.md`.
|
|
93
|
+
|
|
94
|
+
### Memory Files
|
|
95
|
+
|
|
96
|
+
- `.agents/memory/decisions.md` — Read at session start, write when making decisions
|
|
97
|
+
- `.agents/memory/lessons.md` — Write when something unexpected happens
|
|
98
|
+
- `.agents/memory/patterns.md` — Write when a reusable pattern is validated
|
|
99
|
+
- `.agents/memory/context.md` — Update at session end with project state
|
|
100
|
+
|
|
101
|
+
## Registry facts (computed from registry.yaml — never hand-typed)
|
|
102
|
+
|
|
103
|
+
- Product: BMAD+ v0.12.0 (derived from BMAD-METHOD v6.6.0)
|
|
104
|
+
- Models supported: claude, gpt, gemini, local (model-agnostic by contract)
|
|
105
|
+
- Packs (9): Core, OSINT, Maker, Shield, SEO, Memory, Dev Studio, Backup, Animated
|
|
106
|
+
- Installer agents (14 across all packs):
|
|
107
|
+
- Core (required): 4 installer agents — Core agents & skills
|
|
108
|
+
- OSINT: 1 installer agent — OSINT & investigation — 2 compliance frameworks
|
|
109
|
+
- Maker: 1 installer agent — Agent creation toolkit
|
|
110
|
+
- Shield: 1 installer agent — GRC compliance (25+ frameworks) — 27 specialized agents, 11 workflows, 26 compliance frameworks
|
|
111
|
+
- SEO: 3 installer agents — SEO audit & optimization — 1 compliance frameworks
|
|
112
|
+
- Memory: 1 installer agent — Persistent cross-session memory
|
|
113
|
+
- Dev Studio: 1 installer agent — SDLC automation (6 agents, 56+ skills) — 6 sub-agents, 38 workflows
|
|
114
|
+
- Backup: 1 installer agent — Backup & restore
|
|
115
|
+
- Animated: 1 installer agent — Animated website agents
|
|
116
|
+
|
|
117
|
+
## Key commands
|
|
118
|
+
|
|
119
|
+
- `bmad-help` — Show all available agents and skills
|
|
120
|
+
- `autopilot` — Launch the orchestrator (Nexus) in full pipeline mode
|
|
121
|
+
- `parallel` — Enable parallel multi-agent execution
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
<!-- AUTO-GENERATED by tools/build/generate-adapters.js — DO NOT EDIT. -->
|
|
2
|
+
<!-- Source of truth: registry.yaml → spine AGENTS.md. Regenerate: node tools/build/generate-adapters.js -->
|
|
3
|
+
|
|
4
|
+
# BMAD+ — Adapter for gemini-cli + antigravity
|
|
5
|
+
|
|
6
|
+
This file is a THIN adapter. The single source of truth for agents, packs,
|
|
7
|
+
skills, and workflows is the spine file: **AGENTS.md** (project root).
|
|
8
|
+
Read AGENTS.md first; this adapter only adds tool-specific invocation notes.
|
|
9
|
+
|
|
10
|
+
## Tool notes — gemini-cli
|
|
11
|
+
|
|
12
|
+
- Gemini CLI loads `GEMINI.md` from the project root automatically.
|
|
13
|
+
- Activate an agent by saying its name (see the spine for the full roster).
|
|
14
|
+
|
|
15
|
+
## Tool notes — antigravity
|
|
16
|
+
|
|
17
|
+
- Antigravity reads the same `GEMINI.md` file (detected via `.gemini/antigravity`).
|
|
18
|
+
- Concurrency rule: coordinate with other agentic CLIs before writing — never edit the same files simultaneously.
|
|
19
|
+
|
|
20
|
+
## Project Context
|
|
21
|
+
|
|
22
|
+
This project uses BMAD+, an augmented AI-driven development framework.
|
|
23
|
+
Based on BMAD-METHOD v6.6.0 with multi-role agents, autopilot mode, and parallel execution.
|
|
24
|
+
|
|
25
|
+
<!-- Hand-authored project instructions — single source: tools/build/adapters.config.js. -->
|
|
26
|
+
<!-- Edit the config, then regenerate; never edit this file directly. -->
|
|
27
|
+
|
|
28
|
+
## Agents
|
|
29
|
+
|
|
30
|
+
To activate an agent, say its name or persona:
|
|
31
|
+
|
|
32
|
+
- **Atlas** (Strategist) — Business analysis + Product management
|
|
33
|
+
- **Forge** (Architect-Dev) — Architecture + Development + Documentation
|
|
34
|
+
- **Sentinel** (Quality) — QA + UX review
|
|
35
|
+
- **Nexus** (Orchestrator) — Sprint management + Autopilot + Parallel execution
|
|
36
|
+
- **Shadow** (OSINT) — Investigation + Scraping + Psychoprofiling (if OSINT pack installed)
|
|
37
|
+
- **Maker** (Agent Creator) — Design, build, validate, and package new BMAD+ agents
|
|
38
|
+
- **Shield** (GRC) — Compliance agents for GDPR, ISO 27001, SOC 2, HIPAA, EU AI Act, DORA, NIS2 and more (derived counts: see Registry facts below)
|
|
39
|
+
- **Miriam** (מרים) — Business Analyst — Strategic analysis, research, product briefs (Dev Studio)
|
|
40
|
+
- **Huldah** (חולדה) — Technical Writer — Documentation, diagrams, editorial review (Dev Studio)
|
|
41
|
+
- **Yosef** (יוסף) — Product Manager — PRD, requirements, feature prioritization (Dev Studio)
|
|
42
|
+
- **Rachel** (רחל) — UX Designer — User experience, wireframes, empathy mapping (Dev Studio)
|
|
43
|
+
- **Bezalel** (בצלאל) — System Architect — Architecture, ADRs, epics & stories (Dev Studio)
|
|
44
|
+
- **Oholiab** (אהליאב) — Senior Engineer — TDD, sprint, code review, implementation (Dev Studio)
|
|
45
|
+
- **Zecher** (זכר, Memory Guardian) — Memory Archivist — Persistent cross-session memory, consolidation, project scanning, context recall, session handoffs
|
|
46
|
+
|
|
47
|
+
## Skills
|
|
48
|
+
|
|
49
|
+
- Installed projects load skills from `.agents/skills/`; in this repository the sources live in `src/bmad-plus/skills/` and `src/bmad-plus/agents/`.
|
|
50
|
+
- Each agent has a SKILL.md with capabilities, activation protocol, and role-switching rules.
|
|
51
|
+
- Auto-activation triggers: `.agents/data/role-triggers.yaml` (source: `src/bmad-plus/data/role-triggers.yaml`).
|
|
52
|
+
|
|
53
|
+
## Project Structure
|
|
54
|
+
|
|
55
|
+
- `src/bmad-plus/` — Custom module (agents, skills, data)
|
|
56
|
+
- `monitor/` — Upstream monitoring system (VPS)
|
|
57
|
+
- `mcp-server/` — Audit 360° MCP Server
|
|
58
|
+
- `osint-agent-package/` — OSINT package
|
|
59
|
+
- `upstream/` — BMAD-METHOD reference clone
|
|
60
|
+
|
|
61
|
+
## Communication
|
|
62
|
+
|
|
63
|
+
- User name: laurent
|
|
64
|
+
- Default language: Français for user-facing content, English for code and technical docs.
|
|
65
|
+
|
|
66
|
+
## Commit Rules
|
|
67
|
+
|
|
68
|
+
- NEVER add "Co-Authored-By: Claude" or any AI co-author attribution.
|
|
69
|
+
- The sole author is Laurent Rochetta.
|
|
70
|
+
|
|
71
|
+
## Repository Maintenance Rule
|
|
72
|
+
|
|
73
|
+
When updating the main README.md (English), you MUST synchronously update all translations in the readme-international/ directory (fr, es, de).
|
|
74
|
+
|
|
75
|
+
## Memory Protocol (Karpathy Guardrails)
|
|
76
|
+
|
|
77
|
+
Agents MUST follow these behavioral principles:
|
|
78
|
+
|
|
79
|
+
### G1 — Think Before Coding
|
|
80
|
+
|
|
81
|
+
- State assumptions explicitly. If uncertain, ask.
|
|
82
|
+
- Check `.agents/memory/decisions.md` for prior decisions before re-deciding.
|
|
83
|
+
|
|
84
|
+
### G2 — Simplicity First
|
|
85
|
+
|
|
86
|
+
- Minimum code that solves the problem. Nothing speculative.
|
|
87
|
+
- Check `.agents/memory/patterns.md` for existing solutions.
|
|
88
|
+
|
|
89
|
+
### G3 — Surgical Changes
|
|
90
|
+
|
|
91
|
+
- Touch only what you must. Match existing style.
|
|
92
|
+
- Log surprises in `.agents/memory/lessons.md`.
|
|
93
|
+
|
|
94
|
+
### G4 — Goal-Driven Execution
|
|
95
|
+
|
|
96
|
+
- Define success criteria before implementing.
|
|
97
|
+
- Log non-obvious decisions in `.agents/memory/decisions.md`.
|
|
98
|
+
|
|
99
|
+
### Memory Files
|
|
100
|
+
|
|
101
|
+
- `.agents/memory/decisions.md` — Read at session start, write when making decisions
|
|
102
|
+
- `.agents/memory/lessons.md` — Write when something unexpected happens
|
|
103
|
+
- `.agents/memory/patterns.md` — Write when a reusable pattern is validated
|
|
104
|
+
- `.agents/memory/context.md` — Update at session end with project state
|
|
105
|
+
|
|
106
|
+
## Registry facts (computed from registry.yaml — never hand-typed)
|
|
107
|
+
|
|
108
|
+
- Product: BMAD+ v0.12.0 (derived from BMAD-METHOD v6.6.0)
|
|
109
|
+
- Models supported: claude, gpt, gemini, local (model-agnostic by contract)
|
|
110
|
+
- Packs (9): Core, OSINT, Maker, Shield, SEO, Memory, Dev Studio, Backup, Animated
|
|
111
|
+
- Installer agents (14 across all packs):
|
|
112
|
+
- Core (required): 4 installer agents — Core agents & skills
|
|
113
|
+
- OSINT: 1 installer agent — OSINT & investigation — 2 compliance frameworks
|
|
114
|
+
- Maker: 1 installer agent — Agent creation toolkit
|
|
115
|
+
- Shield: 1 installer agent — GRC compliance (25+ frameworks) — 27 specialized agents, 11 workflows, 26 compliance frameworks
|
|
116
|
+
- SEO: 3 installer agents — SEO audit & optimization — 1 compliance frameworks
|
|
117
|
+
- Memory: 1 installer agent — Persistent cross-session memory
|
|
118
|
+
- Dev Studio: 1 installer agent — SDLC automation (6 agents, 56+ skills) — 6 sub-agents, 38 workflows
|
|
119
|
+
- Backup: 1 installer agent — Backup & restore
|
|
120
|
+
- Animated: 1 installer agent — Animated website agents
|
|
121
|
+
|
|
122
|
+
## Key commands
|
|
123
|
+
|
|
124
|
+
- `bmad-help` — Show all available agents and skills
|
|
125
|
+
- `autopilot` — Launch the orchestrator (Nexus) in full pipeline mode
|
|
126
|
+
- `parallel` — Enable parallel multi-agent execution
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
# Generated Multi-CLI Adapters (Pillar 5 — portability lock)
|
|
2
|
+
|
|
3
|
+
Everything in this directory **except this README** is generated by:
|
|
4
|
+
|
|
5
|
+
```
|
|
6
|
+
node tools/build/generate-adapters.js
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
from the root `registry.yaml` (`targets.adapters[]` + pack declarations) plus
|
|
10
|
+
the hand-authored sections in `tools/build/adapters.config.js`.
|
|
11
|
+
|
|
12
|
+
## ADOPTED — the root files are now generated too
|
|
13
|
+
|
|
14
|
+
Since v0.11.0 the generated adapters are **load-bearing**: the live repo-root
|
|
15
|
+
`AGENTS.md` (spine), `CLAUDE.md`, `GEMINI.md`, `.cursor/rules/bmad-plus.mdc`,
|
|
16
|
+
`.codex/AGENTS.md`, `.opencode/AGENTS.md` and `CONVENTIONS.md` are written by
|
|
17
|
+
|
|
18
|
+
```
|
|
19
|
+
node tools/build/generate-adapters.js --adopt
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
and drift-gated by
|
|
23
|
+
|
|
24
|
+
```
|
|
25
|
+
node tools/build/generate-adapters.js --check --adopt
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
(also enforced by `tests/unit/generate-adapters.test.js`). This directory
|
|
29
|
+
remains as a PREVIEW target so you can inspect what a registry/config change
|
|
30
|
+
produces before adopting it (`git diff` on this dir vs the root files).
|
|
31
|
+
|
|
32
|
+
## Where content comes from
|
|
33
|
+
|
|
34
|
+
- **Derived facts** (product/version, pack list, every count) — `registry.yaml`.
|
|
35
|
+
No human ever types a count, so adapters cannot drift or lie.
|
|
36
|
+
- **Hand-authored project instructions** (agent roster, skills paths, project
|
|
37
|
+
structure, communication, commit rules, README i18n rule, Karpathy memory
|
|
38
|
+
protocol) — `tools/build/adapters.config.js`. The pre-adoption root
|
|
39
|
+
CLAUDE.md/GEMINI.md/AGENTS.md content was folded there verbatim (union of
|
|
40
|
+
all three, nothing dropped).
|
|
41
|
+
- **Tool notes** — `TOOL_NOTES` in `tools/build/generate-adapters.js`.
|
|
42
|
+
|
|
43
|
+
## How to change the root configs
|
|
44
|
+
|
|
45
|
+
1. Edit `tools/build/adapters.config.js` (instructions) or `registry.yaml`
|
|
46
|
+
(facts/targets) — NEVER the generated files themselves.
|
|
47
|
+
2. Regenerate: `node tools/build/generate-adapters.js --adopt` (previews:
|
|
48
|
+
run without `--adopt`).
|
|
49
|
+
3. `node tools/build/generate-adapters.js --check --adopt` must pass.
|
|
50
|
+
|
|
51
|
+
A safety guard refuses `--adopt` over a root file that lacks the
|
|
52
|
+
`AUTO-GENERATED` marker (i.e. hand-written content that was never folded in);
|
|
53
|
+
override only with `--force` after folding the content into the config.
|
|
54
|
+
|
|
55
|
+
## What each file is
|
|
56
|
+
|
|
57
|
+
One generated file per unique `targets.adapters[].file` entry, plus the spine
|
|
58
|
+
(`targets.spine`). Tools that share a file (e.g. `gemini-cli` + `antigravity`
|
|
59
|
+
→ `GEMINI.md`) are grouped into a single adapter with one "Tool notes" block
|
|
60
|
+
per tool. Every adapter:
|
|
61
|
+
|
|
62
|
+
- points the tool at the **spine** (`targets.spine`, currently `AGENTS.md`) as
|
|
63
|
+
the single source of truth,
|
|
64
|
+
- adds tool-specific invocation notes,
|
|
65
|
+
- inlines the full hand-authored project instructions (most tools auto-load
|
|
66
|
+
only their own file, so a thin pointer would silently lose behavior),
|
|
67
|
+
- lists pack/agent facts **computed** from `registry.yaml`.
|
|
68
|
+
|
|
69
|
+
## Drift check
|
|
70
|
+
|
|
71
|
+
```
|
|
72
|
+
node tools/build/generate-adapters.js --check # this preview dir
|
|
73
|
+
node tools/build/generate-adapters.js --check --adopt # the live root files
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
Each exits 1 if any file no longer matches what the registry + config generate
|
|
77
|
+
(same contract as `tools/build/generate.js --check` for `packs.js`). Both are
|
|
78
|
+
suitable for CI. Comparisons are EOL-insensitive so Windows checkouts do not
|
|
79
|
+
false-positive.
|
|
@@ -90,6 +90,17 @@ for (const option of memory.options || []) {
|
|
|
90
90
|
}
|
|
91
91
|
memoryCmd.action(memory.action);
|
|
92
92
|
|
|
93
|
+
// Mem command (Karpathy memory loop — journal recall/write/reinforce)
|
|
94
|
+
const memJournal = require('./commands/memory-journal-cmd');
|
|
95
|
+
const memJournalCmd = program
|
|
96
|
+
.command(memJournal.command)
|
|
97
|
+
.description(memJournal.description);
|
|
98
|
+
|
|
99
|
+
for (const option of memJournal.options || []) {
|
|
100
|
+
memJournalCmd.option(...option);
|
|
101
|
+
}
|
|
102
|
+
memJournalCmd.action(memJournal.action);
|
|
103
|
+
|
|
93
104
|
// Autoconfig command
|
|
94
105
|
const autoconfig = require('./commands/autoconfig');
|
|
95
106
|
const autoconfigCmd = program
|
|
@@ -17,6 +17,21 @@ const { copyPackFiles } = require('../lib/pack-copy');
|
|
|
17
17
|
const { initMemory } = require('../lib/memory-init');
|
|
18
18
|
const { generateIDEConfig, IDE_CONFIGS } = require('../lib/ide-config');
|
|
19
19
|
const { validateUserName } = require('../lib/validate');
|
|
20
|
+
const { provisionPack } = require('../lib/python-provision');
|
|
21
|
+
|
|
22
|
+
// Packs whose runtime includes Python (registry.yaml: runtime includes "python").
|
|
23
|
+
// Provisioned only when the user opts in with --provision-python, so the default
|
|
24
|
+
// install (and the test suite) never spawns Python. Kills SEO "broken on arrival".
|
|
25
|
+
const PYTHON_PACKS = {
|
|
26
|
+
seo: {
|
|
27
|
+
requirements: ['oveanet-pack', 'seo-audit-360', 'requirements.txt'],
|
|
28
|
+
verifyModules: ['requests', 'bs4', 'defusedxml', 'lxml'],
|
|
29
|
+
},
|
|
30
|
+
memory: {
|
|
31
|
+
requirements: ['mcp-server', 'requirements.txt'],
|
|
32
|
+
verifyModules: ['chromadb'],
|
|
33
|
+
},
|
|
34
|
+
};
|
|
20
35
|
|
|
21
36
|
// Pack definitions are imported from the shared module: require('../lib/packs').PACKS
|
|
22
37
|
|
|
@@ -29,6 +44,7 @@ module.exports = {
|
|
|
29
44
|
['-y, --yes', 'Accept all defaults, skip prompts'],
|
|
30
45
|
['-l, --lang <code>', 'Language code: en, fr, es, de, pt-br, ru, zh, he, ja, it (overrides auto-detection)'],
|
|
31
46
|
['--tools <tools>', 'Comma-separated IDE IDs (default: auto-detect)'],
|
|
47
|
+
['--provision-python', 'Provision an isolated Python env for packs that need one (seo, memory)'],
|
|
32
48
|
],
|
|
33
49
|
action: async (options) => {
|
|
34
50
|
const projectDir = path.resolve(options.directory || process.cwd());
|
|
@@ -225,6 +241,36 @@ module.exports = {
|
|
|
225
241
|
}
|
|
226
242
|
}
|
|
227
243
|
|
|
244
|
+
// ── Python provisioning (opt-in) — for packs whose runtime needs Python ──
|
|
245
|
+
// Off by default so `install` never spawns Python unless asked. Closes the
|
|
246
|
+
// "SEO pack ships prompts that call scripts never installed" gap (PROD-02).
|
|
247
|
+
if (options.provisionPython) {
|
|
248
|
+
const pythonPacks = selectedPacks.filter((p) => PYTHON_PACKS[p]);
|
|
249
|
+
for (const packId of pythonPacks) {
|
|
250
|
+
const cfg = PYTHON_PACKS[packId];
|
|
251
|
+
const requirementsPath = path.join(projectRoot, ...cfg.requirements);
|
|
252
|
+
if (!fs.existsSync(requirementsPath)) {
|
|
253
|
+
clack.log.warn(`Python provisioning skipped for ${packId}: ${requirementsPath} not found.`);
|
|
254
|
+
continue;
|
|
255
|
+
}
|
|
256
|
+
const pySpinner = clack.spinner();
|
|
257
|
+
pySpinner.start(`Provisioning Python runtime for ${PACKS[packId].name}…`);
|
|
258
|
+
const res = provisionPack({
|
|
259
|
+
envDir: path.join(projectDir, '.bmad', 'venv', packId),
|
|
260
|
+
requirementsPath,
|
|
261
|
+
verifyModules: cfg.verifyModules,
|
|
262
|
+
});
|
|
263
|
+
pySpinner.stop(
|
|
264
|
+
res.ok
|
|
265
|
+
? `${PACKS[packId].name}: Python runtime ready (${res.tool}).`
|
|
266
|
+
: `${PACKS[packId].name}: Python not provisioned — ${res.messages[res.messages.length - 1] || 'see guidance'}`
|
|
267
|
+
);
|
|
268
|
+
if (!res.ok) {
|
|
269
|
+
clack.log.warn(`Run \`${PACKS[packId].name}\` Python tools after installing Python ≥3.11; the pack's prompts still work, only the local scripts need the runtime.`);
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
|
|
228
274
|
// Copy module config
|
|
229
275
|
const moduleYaml = path.join(bmadSrc, 'module.yaml');
|
|
230
276
|
if (fs.existsSync(moduleYaml)) {
|