bmad-method 4.37.0 → 4.39.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/.github/ISSUE_TEMPLATE/bug_report.md +3 -3
- package/.github/ISSUE_TEMPLATE/feature_request.md +3 -3
- package/.github/workflows/discord.yaml +11 -2
- package/.github/workflows/format-check.yaml +42 -0
- package/.github/workflows/manual-release.yaml +173 -0
- package/.husky/pre-commit +3 -0
- package/.vscode/settings.json +26 -1
- package/CHANGELOG.md +2 -23
- package/README.md +2 -0
- package/bmad-core/agent-teams/team-all.yaml +1 -1
- package/bmad-core/agents/analyst.md +16 -15
- package/bmad-core/agents/architect.md +11 -11
- package/bmad-core/agents/bmad-master.md +23 -22
- package/bmad-core/agents/bmad-orchestrator.md +13 -17
- package/bmad-core/agents/dev.md +14 -11
- package/bmad-core/agents/pm.md +15 -14
- package/bmad-core/agents/po.md +9 -8
- package/bmad-core/agents/qa.md +42 -22
- package/bmad-core/agents/sm.md +7 -6
- package/bmad-core/agents/ux-expert.md +6 -5
- package/bmad-core/core-config.yaml +2 -0
- package/bmad-core/data/bmad-kb.md +1 -1
- package/bmad-core/data/test-levels-framework.md +146 -0
- package/bmad-core/data/test-priorities-matrix.md +172 -0
- package/bmad-core/tasks/apply-qa-fixes.md +148 -0
- package/bmad-core/tasks/facilitate-brainstorming-session.md +1 -1
- package/bmad-core/tasks/nfr-assess.md +343 -0
- package/bmad-core/tasks/qa-gate.md +161 -0
- package/bmad-core/tasks/review-story.md +234 -74
- package/bmad-core/tasks/risk-profile.md +353 -0
- package/bmad-core/tasks/test-design.md +174 -0
- package/bmad-core/tasks/trace-requirements.md +264 -0
- package/bmad-core/templates/architecture-tmpl.yaml +49 -49
- package/bmad-core/templates/brainstorming-output-tmpl.yaml +5 -5
- package/bmad-core/templates/brownfield-architecture-tmpl.yaml +31 -31
- package/bmad-core/templates/brownfield-prd-tmpl.yaml +13 -13
- package/bmad-core/templates/competitor-analysis-tmpl.yaml +19 -6
- package/bmad-core/templates/front-end-architecture-tmpl.yaml +21 -9
- package/bmad-core/templates/front-end-spec-tmpl.yaml +24 -24
- package/bmad-core/templates/fullstack-architecture-tmpl.yaml +122 -104
- package/bmad-core/templates/market-research-tmpl.yaml +2 -2
- package/bmad-core/templates/prd-tmpl.yaml +9 -9
- package/bmad-core/templates/project-brief-tmpl.yaml +4 -4
- package/bmad-core/templates/qa-gate-tmpl.yaml +102 -0
- package/bmad-core/templates/story-tmpl.yaml +12 -12
- package/bmad-core/workflows/brownfield-fullstack.yaml +9 -9
- package/bmad-core/workflows/brownfield-service.yaml +1 -1
- package/bmad-core/workflows/brownfield-ui.yaml +1 -1
- package/bmad-core/workflows/greenfield-fullstack.yaml +1 -1
- package/bmad-core/workflows/greenfield-service.yaml +1 -1
- package/bmad-core/workflows/greenfield-ui.yaml +1 -1
- package/common/utils/bmad-doc-template.md +5 -5
- package/dist/agents/analyst.txt +1086 -1079
- package/dist/agents/architect.txt +1534 -1526
- package/dist/agents/bmad-master.txt +646 -632
- package/dist/agents/bmad-orchestrator.txt +40 -18
- package/dist/agents/dev.txt +158 -19
- package/dist/agents/pm.txt +1082 -1107
- package/dist/agents/po.txt +314 -332
- package/dist/agents/qa.txt +1754 -151
- package/dist/agents/sm.txt +88 -98
- package/dist/agents/ux-expert.txt +80 -87
- package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-designer.txt +109 -146
- package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-developer.txt +75 -86
- package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-sm.txt +41 -48
- package/dist/expansion-packs/bmad-2d-phaser-game-dev/teams/phaser-2d-nodejs-game-team.txt +1903 -1941
- package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-architect.txt +15 -50
- package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-designer.txt +149 -195
- package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-developer.txt +0 -15
- package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.txt +20 -37
- package/dist/expansion-packs/bmad-2d-unity-game-dev/teams/unity-2d-game-team.txt +2660 -2752
- package/dist/expansion-packs/bmad-creative-writing/agents/beta-reader.txt +871 -0
- package/dist/expansion-packs/bmad-creative-writing/agents/book-critic.txt +78 -0
- package/dist/expansion-packs/bmad-creative-writing/agents/character-psychologist.txt +839 -0
- package/dist/expansion-packs/bmad-creative-writing/agents/cover-designer.txt +85 -0
- package/dist/expansion-packs/bmad-creative-writing/agents/dialog-specialist.txt +861 -0
- package/dist/expansion-packs/bmad-creative-writing/agents/editor.txt +796 -0
- package/dist/expansion-packs/bmad-creative-writing/agents/genre-specialist.txt +927 -0
- package/dist/expansion-packs/bmad-creative-writing/agents/narrative-designer.txt +842 -0
- package/dist/expansion-packs/bmad-creative-writing/agents/plot-architect.txt +1126 -0
- package/dist/expansion-packs/bmad-creative-writing/agents/world-builder.txt +864 -0
- package/dist/expansion-packs/bmad-creative-writing/teams/agent-team.txt +5917 -0
- package/dist/expansion-packs/bmad-infrastructure-devops/agents/infra-devops-platform.txt +25 -27
- package/dist/teams/team-all.txt +5541 -3768
- package/dist/teams/team-fullstack.txt +3014 -2987
- package/dist/teams/team-ide-minimal.txt +2219 -469
- package/dist/teams/team-no-ui.txt +2993 -2966
- package/docs/enhanced-ide-development-workflow.md +220 -15
- package/docs/user-guide.md +271 -18
- package/docs/versioning-and-releases.md +122 -44
- package/docs/working-in-the-brownfield.md +264 -31
- package/eslint.config.mjs +119 -0
- package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-developer.md +4 -4
- package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-sm.md +1 -1
- package/expansion-packs/bmad-2d-phaser-game-dev/config.yaml +1 -1
- package/expansion-packs/bmad-2d-phaser-game-dev/data/development-guidelines.md +26 -28
- package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-architecture-tmpl.yaml +50 -50
- package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-brief-tmpl.yaml +23 -23
- package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-design-doc-tmpl.yaml +24 -24
- package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-story-tmpl.yaml +42 -42
- package/expansion-packs/bmad-2d-phaser-game-dev/templates/level-design-doc-tmpl.yaml +65 -65
- package/expansion-packs/bmad-2d-phaser-game-dev/workflows/game-dev-greenfield.yaml +5 -5
- package/expansion-packs/bmad-2d-phaser-game-dev/workflows/game-prototype.yaml +1 -1
- package/expansion-packs/bmad-2d-unity-game-dev/agents/game-developer.md +3 -3
- package/expansion-packs/bmad-2d-unity-game-dev/config.yaml +1 -1
- package/expansion-packs/bmad-2d-unity-game-dev/data/bmad-kb.md +1 -1
- package/expansion-packs/bmad-2d-unity-game-dev/templates/game-brief-tmpl.yaml +23 -23
- package/expansion-packs/bmad-2d-unity-game-dev/templates/game-design-doc-tmpl.yaml +63 -63
- package/expansion-packs/bmad-2d-unity-game-dev/templates/game-story-tmpl.yaml +20 -20
- package/expansion-packs/bmad-2d-unity-game-dev/templates/level-design-doc-tmpl.yaml +65 -65
- package/expansion-packs/bmad-2d-unity-game-dev/workflows/game-dev-greenfield.yaml +5 -5
- package/expansion-packs/bmad-2d-unity-game-dev/workflows/game-prototype.yaml +1 -1
- package/expansion-packs/bmad-creative-writing/README.md +132 -0
- package/expansion-packs/bmad-creative-writing/agent-teams/agent-team.yaml +19 -0
- package/expansion-packs/bmad-creative-writing/agents/beta-reader.md +91 -0
- package/expansion-packs/bmad-creative-writing/agents/book-critic.md +35 -0
- package/expansion-packs/bmad-creative-writing/agents/character-psychologist.md +90 -0
- package/expansion-packs/bmad-creative-writing/agents/cover-designer.md +41 -0
- package/expansion-packs/bmad-creative-writing/agents/dialog-specialist.md +89 -0
- package/expansion-packs/bmad-creative-writing/agents/editor.md +90 -0
- package/expansion-packs/bmad-creative-writing/agents/genre-specialist.md +92 -0
- package/expansion-packs/bmad-creative-writing/agents/narrative-designer.md +90 -0
- package/expansion-packs/bmad-creative-writing/agents/plot-architect.md +92 -0
- package/expansion-packs/bmad-creative-writing/agents/world-builder.md +91 -0
- package/expansion-packs/bmad-creative-writing/checklists/beta-feedback-closure-checklist.md +16 -0
- package/expansion-packs/bmad-creative-writing/checklists/character-consistency-checklist.md +16 -0
- package/expansion-packs/bmad-creative-writing/checklists/comedic-timing-checklist.md +16 -0
- package/expansion-packs/bmad-creative-writing/checklists/cyberpunk-aesthetic-checklist.md +16 -0
- package/expansion-packs/bmad-creative-writing/checklists/ebook-formatting-checklist.md +15 -0
- package/expansion-packs/bmad-creative-writing/checklists/epic-poetry-meter-checklist.md +16 -0
- package/expansion-packs/bmad-creative-writing/checklists/fantasy-magic-system-checklist.md +16 -0
- package/expansion-packs/bmad-creative-writing/checklists/foreshadowing-payoff-checklist.md +15 -0
- package/expansion-packs/bmad-creative-writing/checklists/genre-tropes-checklist.md +15 -0
- package/expansion-packs/bmad-creative-writing/checklists/historical-accuracy-checklist.md +16 -0
- package/expansion-packs/bmad-creative-writing/checklists/horror-suspense-checklist.md +16 -0
- package/expansion-packs/bmad-creative-writing/checklists/kdp-cover-ready-checklist.md +18 -0
- package/expansion-packs/bmad-creative-writing/checklists/line-edit-quality-checklist.md +16 -0
- package/expansion-packs/bmad-creative-writing/checklists/marketing-copy-checklist.md +16 -0
- package/expansion-packs/bmad-creative-writing/checklists/mystery-clue-trail-checklist.md +16 -0
- package/expansion-packs/bmad-creative-writing/checklists/orbital-mechanics-checklist.md +16 -0
- package/expansion-packs/bmad-creative-writing/checklists/plot-structure-checklist.md +49 -0
- package/expansion-packs/bmad-creative-writing/checklists/publication-readiness-checklist.md +16 -0
- package/expansion-packs/bmad-creative-writing/checklists/romance-emotional-beats-checklist.md +16 -0
- package/expansion-packs/bmad-creative-writing/checklists/scene-quality-checklist.md +16 -0
- package/expansion-packs/bmad-creative-writing/checklists/scifi-technology-plausibility-checklist.md +15 -0
- package/expansion-packs/bmad-creative-writing/checklists/sensitivity-representation-checklist.md +16 -0
- package/expansion-packs/bmad-creative-writing/checklists/steampunk-gadget-checklist.md +16 -0
- package/expansion-packs/bmad-creative-writing/checklists/thriller-pacing-stakes-checklist.md +16 -0
- package/expansion-packs/bmad-creative-writing/checklists/timeline-continuity-checklist.md +16 -0
- package/expansion-packs/bmad-creative-writing/checklists/world-building-continuity-checklist.md +16 -0
- package/expansion-packs/bmad-creative-writing/checklists/ya-appropriateness-checklist.md +16 -0
- package/expansion-packs/bmad-creative-writing/config.yaml +11 -0
- package/expansion-packs/bmad-creative-writing/data/bmad-kb.md +197 -0
- package/expansion-packs/bmad-creative-writing/data/story-structures.md +58 -0
- package/expansion-packs/bmad-creative-writing/docs/brief.md +183 -0
- package/expansion-packs/bmad-creative-writing/tasks/advanced-elicitation.md +117 -0
- package/expansion-packs/bmad-creative-writing/tasks/analyze-reader-feedback.md +16 -0
- package/expansion-packs/bmad-creative-writing/tasks/analyze-story-structure.md +55 -0
- package/expansion-packs/bmad-creative-writing/tasks/assemble-kdp-package.md +22 -0
- package/expansion-packs/bmad-creative-writing/tasks/brainstorm-premise.md +16 -0
- package/expansion-packs/bmad-creative-writing/tasks/build-world.md +17 -0
- package/expansion-packs/bmad-creative-writing/tasks/character-depth-pass.md +15 -0
- package/expansion-packs/bmad-creative-writing/tasks/create-doc.md +101 -0
- package/expansion-packs/bmad-creative-writing/tasks/create-draft-section.md +19 -0
- package/expansion-packs/bmad-creative-writing/tasks/critical-review.md +19 -0
- package/expansion-packs/bmad-creative-writing/tasks/develop-character.md +17 -0
- package/expansion-packs/bmad-creative-writing/tasks/execute-checklist.md +93 -0
- package/expansion-packs/bmad-creative-writing/tasks/expand-premise.md +16 -0
- package/expansion-packs/bmad-creative-writing/tasks/expand-synopsis.md +16 -0
- package/expansion-packs/bmad-creative-writing/tasks/final-polish.md +16 -0
- package/expansion-packs/bmad-creative-writing/tasks/generate-cover-brief.md +18 -0
- package/expansion-packs/bmad-creative-writing/tasks/generate-cover-prompts.md +19 -0
- package/expansion-packs/bmad-creative-writing/tasks/generate-scene-list.md +16 -0
- package/expansion-packs/bmad-creative-writing/tasks/incorporate-feedback.md +18 -0
- package/expansion-packs/bmad-creative-writing/tasks/outline-scenes.md +16 -0
- package/expansion-packs/bmad-creative-writing/tasks/provide-feedback.md +17 -0
- package/expansion-packs/bmad-creative-writing/tasks/publish-chapter.md +16 -0
- package/expansion-packs/bmad-creative-writing/tasks/quick-feedback.md +15 -0
- package/expansion-packs/bmad-creative-writing/tasks/select-next-arc.md +16 -0
- package/expansion-packs/bmad-creative-writing/tasks/workshop-dialog.md +51 -0
- package/expansion-packs/bmad-creative-writing/templates/beta-feedback-form.yaml +96 -0
- package/expansion-packs/bmad-creative-writing/templates/chapter-draft-tmpl.yaml +81 -0
- package/expansion-packs/bmad-creative-writing/templates/character-profile-tmpl.yaml +92 -0
- package/expansion-packs/bmad-creative-writing/templates/cover-design-brief-tmpl.yaml +97 -0
- package/expansion-packs/bmad-creative-writing/templates/premise-brief-tmpl.yaml +77 -0
- package/expansion-packs/bmad-creative-writing/templates/scene-list-tmpl.yaml +54 -0
- package/expansion-packs/bmad-creative-writing/templates/story-outline-tmpl.yaml +96 -0
- package/expansion-packs/bmad-creative-writing/templates/world-guide-tmpl.yaml +88 -0
- package/expansion-packs/bmad-creative-writing/workflows/book-cover-design-workflow.md +176 -0
- package/expansion-packs/bmad-creative-writing/workflows/novel-greenfield-workflow.yaml +58 -0
- package/expansion-packs/bmad-creative-writing/workflows/novel-serial-workflow.yaml +51 -0
- package/expansion-packs/bmad-creative-writing/workflows/novel-snowflake-workflow.yaml +69 -0
- package/expansion-packs/bmad-creative-writing/workflows/novel-writing.yaml +92 -0
- package/expansion-packs/bmad-creative-writing/workflows/screenplay-development.yaml +86 -0
- package/expansion-packs/bmad-creative-writing/workflows/series-planning.yaml +79 -0
- package/expansion-packs/bmad-creative-writing/workflows/short-story-creation.yaml +65 -0
- package/expansion-packs/bmad-infrastructure-devops/config.yaml +1 -1
- package/expansion-packs/bmad-infrastructure-devops/templates/infrastructure-architecture-tmpl.yaml +20 -20
- package/expansion-packs/bmad-infrastructure-devops/templates/infrastructure-platform-from-arch-tmpl.yaml +7 -7
- package/package.json +62 -39
- package/prettier.config.mjs +32 -0
- package/sync-version.sh +23 -0
- package/tools/bmad-npx-wrapper.js +10 -10
- package/tools/builders/web-builder.js +124 -130
- package/tools/bump-all-versions.js +42 -33
- package/tools/bump-expansion-version.js +23 -16
- package/tools/cli.js +10 -12
- package/tools/flattener/aggregate.js +10 -10
- package/tools/flattener/binary.js +44 -17
- package/tools/flattener/discovery.js +19 -18
- package/tools/flattener/files.js +6 -6
- package/tools/flattener/ignoreRules.js +125 -125
- package/tools/flattener/main.js +426 -70
- package/tools/flattener/projectRoot.js +186 -25
- package/tools/flattener/prompts.js +9 -9
- package/tools/flattener/stats.helpers.js +395 -0
- package/tools/flattener/stats.js +64 -14
- package/tools/flattener/test-matrix.js +413 -0
- package/tools/flattener/xml.js +33 -31
- package/tools/installer/bin/bmad.js +156 -113
- package/tools/installer/config/ide-agent-config.yaml +1 -1
- package/tools/installer/config/install.config.yaml +13 -3
- package/tools/installer/lib/config-loader.js +46 -42
- package/tools/installer/lib/file-manager.js +91 -113
- package/tools/installer/lib/ide-base-setup.js +57 -56
- package/tools/installer/lib/ide-setup.js +545 -399
- package/tools/installer/lib/installer.js +875 -714
- package/tools/installer/lib/memory-profiler.js +54 -53
- package/tools/installer/lib/module-manager.js +19 -15
- package/tools/installer/lib/resource-locator.js +26 -28
- package/tools/installer/package.json +19 -19
- package/tools/lib/dependency-resolver.js +26 -30
- package/tools/lib/yaml-utils.js +7 -7
- package/tools/preview-release-notes.js +66 -0
- package/tools/shared/bannerArt.js +3 -3
- package/tools/sync-installer-version.js +7 -9
- package/tools/update-expansion-version.js +14 -15
- package/tools/upgraders/v3-to-v4-upgrader.js +203 -294
- package/tools/version-bump.js +41 -26
- package/tools/yaml-format.js +56 -43
- package/.github/workflows/release.yaml +0 -60
- package/.releaserc.json +0 -21
- package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/Complete AI Agent System - Flowchart.svg +0 -102
- package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/PART 1 - Google Cloud Vertex AI Setup Documentation/1.1 Google Cloud Project Setup/1.1.1 - Initial Project Configuration - bash copy.txt +0 -13
- package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/PART 1 - Google Cloud Vertex AI Setup Documentation/1.1 Google Cloud Project Setup/1.1.1 - Initial Project Configuration - bash.txt +0 -13
- package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/PART 1 - Google Cloud Vertex AI Setup Documentation/1.2 Agent Development Kit Installation/1.2.2 - Basic Project Structure - txt.txt +0 -25
- package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/PART 1 - Google Cloud Vertex AI Setup Documentation/1.3 Core Configuration Files/1.3.1 - settings.py +0 -34
- package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/PART 1 - Google Cloud Vertex AI Setup Documentation/1.3 Core Configuration Files/1.3.2 - main.py - Base Application.py +0 -70
- package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/PART 1 - Google Cloud Vertex AI Setup Documentation/1.4 Deployment Configuration/1.4.2 - cloudbuild.yaml +0 -26
- package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/README.md +0 -109
- package/tools/semantic-release-sync-installer.js +0 -30
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
# 1. Create new Google Cloud Project
|
|
2
|
-
gcloud projects create {{PROJECT_ID}} --name="{{COMPANY_NAME}} AI Agent System"
|
|
3
|
-
|
|
4
|
-
# 2. Set default project
|
|
5
|
-
gcloud config set project {{PROJECT_ID}}
|
|
6
|
-
|
|
7
|
-
# 3. Enable required APIs
|
|
8
|
-
gcloud services enable aiplatform.googleapis.com
|
|
9
|
-
gcloud services enable storage.googleapis.com
|
|
10
|
-
gcloud services enable cloudfunctions.googleapis.com
|
|
11
|
-
gcloud services enable run.googleapis.com
|
|
12
|
-
gcloud services enable firestore.googleapis.com
|
|
13
|
-
gcloud services enable secretmanager.googleapis.com
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
# 1. Create new Google Cloud Project
|
|
2
|
-
gcloud projects create {{PROJECT_ID}} --name="{{COMPANY_NAME}} AI Agent System"
|
|
3
|
-
|
|
4
|
-
# 2. Set default project
|
|
5
|
-
gcloud config set project {{PROJECT_ID}}
|
|
6
|
-
|
|
7
|
-
# 3. Enable required APIs
|
|
8
|
-
gcloud services enable aiplatform.googleapis.com
|
|
9
|
-
gcloud services enable storage.googleapis.com
|
|
10
|
-
gcloud services enable cloudfunctions.googleapis.com
|
|
11
|
-
gcloud services enable run.googleapis.com
|
|
12
|
-
gcloud services enable firestore.googleapis.com
|
|
13
|
-
gcloud services enable secretmanager.googleapis.com
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
{{company_name}}-ai-agents/
|
|
2
|
-
├── agents/
|
|
3
|
-
│ ├── __init__.py
|
|
4
|
-
│ ├── {{team_1}}/
|
|
5
|
-
│ │ ├── __init__.py
|
|
6
|
-
│ │ ├── {{agent_1}}.py
|
|
7
|
-
│ │ └── {{agent_2}}.py
|
|
8
|
-
│ └── {{team_2}}/
|
|
9
|
-
├── tasks/
|
|
10
|
-
│ ├── __init__.py
|
|
11
|
-
│ ├── {{task_category_1}}/
|
|
12
|
-
│ └── {{task_category_2}}/
|
|
13
|
-
├── templates/
|
|
14
|
-
│ ├── {{document_type_1}}/
|
|
15
|
-
│ └── {{document_type_2}}/
|
|
16
|
-
├── checklists/
|
|
17
|
-
├── data/
|
|
18
|
-
├── workflows/
|
|
19
|
-
├── config/
|
|
20
|
-
│ ├── settings.py
|
|
21
|
-
│ └── agent_config.yaml
|
|
22
|
-
├── main.py
|
|
23
|
-
└── deployment/
|
|
24
|
-
├── Dockerfile
|
|
25
|
-
└── cloudbuild.yaml
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import os
|
|
2
|
-
from pydantic import BaseSettings
|
|
3
|
-
|
|
4
|
-
class Settings(BaseSettings):
|
|
5
|
-
# Google Cloud Configuration
|
|
6
|
-
project_id: str = "{{PROJECT_ID}}"
|
|
7
|
-
location: str = "{{LOCATION}}" # e.g., "us-central1"
|
|
8
|
-
|
|
9
|
-
# Company Information
|
|
10
|
-
company_name: str = "{{COMPANY_NAME}}"
|
|
11
|
-
industry: str = "{{INDUSTRY}}"
|
|
12
|
-
business_type: str = "{{BUSINESS_TYPE}}"
|
|
13
|
-
|
|
14
|
-
# Agent Configuration
|
|
15
|
-
default_model: str = "gemini-1.5-pro"
|
|
16
|
-
max_iterations: int = 10
|
|
17
|
-
timeout_seconds: int = 300
|
|
18
|
-
|
|
19
|
-
# Storage Configuration
|
|
20
|
-
bucket_name: str = "{{COMPANY_NAME}}-ai-agents-storage"
|
|
21
|
-
database_name: str = "{{COMPANY_NAME}}-ai-agents-db"
|
|
22
|
-
|
|
23
|
-
# API Configuration
|
|
24
|
-
session_service_type: str = "vertex" # or "in_memory" for development
|
|
25
|
-
artifact_service_type: str = "gcs" # or "in_memory" for development
|
|
26
|
-
memory_service_type: str = "vertex" # or "in_memory" for development
|
|
27
|
-
|
|
28
|
-
# Security
|
|
29
|
-
service_account_path: str = "./{{COMPANY_NAME}}-ai-agents-key.json"
|
|
30
|
-
|
|
31
|
-
class Config:
|
|
32
|
-
env_file = ".env"
|
|
33
|
-
|
|
34
|
-
settings = Settings()
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
import asyncio
|
|
2
|
-
from google.adk.agents import LlmAgent
|
|
3
|
-
from google.adk.runners import Runner
|
|
4
|
-
from google.adk.sessions import VertexAiSessionService
|
|
5
|
-
from google.adk.artifacts import GcsArtifactService
|
|
6
|
-
from google.adk.memory import VertexAiRagMemoryService
|
|
7
|
-
from google.adk.models import Gemini
|
|
8
|
-
|
|
9
|
-
from config.settings import settings
|
|
10
|
-
from agents.{{primary_team}}.{{main_orchestrator}} import {{MainOrchestratorClass}}
|
|
11
|
-
|
|
12
|
-
class {{CompanyName}}AISystem:
|
|
13
|
-
def __init__(self):
|
|
14
|
-
self.settings = settings
|
|
15
|
-
self.runner = None
|
|
16
|
-
self.main_orchestrator = None
|
|
17
|
-
|
|
18
|
-
async def initialize(self):
|
|
19
|
-
"""Initialize the AI agent system"""
|
|
20
|
-
|
|
21
|
-
# Create main orchestrator
|
|
22
|
-
self.main_orchestrator = {{MainOrchestratorClass}}()
|
|
23
|
-
|
|
24
|
-
# Initialize services
|
|
25
|
-
session_service = VertexAiSessionService(
|
|
26
|
-
project=self.settings.project_id,
|
|
27
|
-
location=self.settings.location
|
|
28
|
-
)
|
|
29
|
-
|
|
30
|
-
artifact_service = GcsArtifactService(
|
|
31
|
-
bucket_name=self.settings.bucket_name
|
|
32
|
-
)
|
|
33
|
-
|
|
34
|
-
memory_service = VertexAiRagMemoryService(
|
|
35
|
-
rag_corpus=f"projects/{self.settings.project_id}/locations/{self.settings.location}/ragCorpora/{{COMPANY_NAME}}-knowledge"
|
|
36
|
-
)
|
|
37
|
-
|
|
38
|
-
# Create runner
|
|
39
|
-
self.runner = Runner(
|
|
40
|
-
app_name=f"{self.settings.company_name}-AI-System",
|
|
41
|
-
agent=self.main_orchestrator,
|
|
42
|
-
session_service=session_service,
|
|
43
|
-
artifact_service=artifact_service,
|
|
44
|
-
memory_service=memory_service
|
|
45
|
-
)
|
|
46
|
-
|
|
47
|
-
print(f"✅ {self.settings.company_name} AI Agent System initialized successfully!")
|
|
48
|
-
|
|
49
|
-
async def run_agent_interaction(self, user_id: str, session_id: str, message: str):
|
|
50
|
-
"""Run agent interaction"""
|
|
51
|
-
if not self.runner:
|
|
52
|
-
await self.initialize()
|
|
53
|
-
|
|
54
|
-
async for event in self.runner.run_async(
|
|
55
|
-
user_id=user_id,
|
|
56
|
-
session_id=session_id,
|
|
57
|
-
new_message=message
|
|
58
|
-
):
|
|
59
|
-
yield event
|
|
60
|
-
|
|
61
|
-
# Application factory
|
|
62
|
-
async def create_app():
|
|
63
|
-
ai_system = {{CompanyName}}AISystem()
|
|
64
|
-
await ai_system.initialize()
|
|
65
|
-
return ai_system
|
|
66
|
-
|
|
67
|
-
if __name__ == "__main__":
|
|
68
|
-
# Development server
|
|
69
|
-
import uvicorn
|
|
70
|
-
uvicorn.run("main:app", host="0.0.0.0", port=8000, reload=True)
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
steps:
|
|
2
|
-
# Build the container image
|
|
3
|
-
- name: 'gcr.io/cloud-builders/docker'
|
|
4
|
-
args: ['build', '-t', 'gcr.io/{{PROJECT_ID}}/{{COMPANY_NAME}}-ai-agents:$COMMIT_SHA', '.']
|
|
5
|
-
|
|
6
|
-
# Push the container image to Container Registry
|
|
7
|
-
- name: 'gcr.io/cloud-builders/docker'
|
|
8
|
-
args: ['push', 'gcr.io/{{PROJECT_ID}}/{{COMPANY_NAME}}-ai-agents:$COMMIT_SHA']
|
|
9
|
-
|
|
10
|
-
# Deploy container image to Cloud Run
|
|
11
|
-
- name: 'gcr.io/google.com/cloudsdktool/cloud-sdk'
|
|
12
|
-
entrypoint: gcloud
|
|
13
|
-
args:
|
|
14
|
-
- 'run'
|
|
15
|
-
- 'deploy'
|
|
16
|
-
- '{{COMPANY_NAME}}-ai-agents'
|
|
17
|
-
- '--image'
|
|
18
|
-
- 'gcr.io/{{PROJECT_ID}}/{{COMPANY_NAME}}-ai-agents:$COMMIT_SHA'
|
|
19
|
-
- '--region'
|
|
20
|
-
- '{{LOCATION}}'
|
|
21
|
-
- '--platform'
|
|
22
|
-
- 'managed'
|
|
23
|
-
- '--allow-unauthenticated'
|
|
24
|
-
|
|
25
|
-
images:
|
|
26
|
-
- 'gcr.io/{{PROJECT_ID}}/{{COMPANY_NAME}}-ai-agents:$COMMIT_SHA'
|
package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/README.md
DELETED
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
# BMad Expansion Pack: Google Cloud Vertex AI Agent System
|
|
2
|
-
|
|
3
|
-
[](https://opensource.org/licenses/MIT)
|
|
4
|
-
[](https://www.google.com/search?q=https://github.com/antmikinka/BMAD-METHOD)
|
|
5
|
-
[](https://cloud.google.com/)
|
|
6
|
-
|
|
7
|
-
This expansion pack provides a complete, deployable starter kit for building and hosting sophisticated AI agent systems on Google Cloud Platform (GCP). It bridges the gap between the BMad Method's natural language framework and a production-ready cloud environment, leveraging Google Vertex AI, Cloud Run, and the Google Agent Development Kit (ADK).
|
|
8
|
-
|
|
9
|
-
## Features
|
|
10
|
-
|
|
11
|
-
- **Automated GCP Setup**: `gcloud` scripts to configure your project, service accounts, and required APIs in minutes.
|
|
12
|
-
- **Production-Ready Deployment**: Includes a `Dockerfile` and `cloudbuild.yaml` for easy, repeatable deployments to Google Cloud Run.
|
|
13
|
-
- **Rich Template Library**: A comprehensive set of BMad-compatible templates for Teams, Agents, Tasks, Workflows, Documents, and Checklists.
|
|
14
|
-
- **Pre-configured Agent Roles**: Includes powerful master templates for key agent archetypes like Orchestrators and Specialists.
|
|
15
|
-
- **Highly Customizable**: Easily adapt the entire system with company-specific variables and industry-specific configurations.
|
|
16
|
-
- **Powered by Google ADK**: Built on the official Google Agent Development Kit for robust and native integration with Vertex AI services.
|
|
17
|
-
|
|
18
|
-
## Prerequisites
|
|
19
|
-
|
|
20
|
-
Before you begin, ensure you have the following installed and configured:
|
|
21
|
-
|
|
22
|
-
- A Google Cloud Platform (GCP) Account with an active billing account.
|
|
23
|
-
- The [Google Cloud SDK (`gcloud` CLI)](<https://www.google.com/search?q=%5Bhttps://cloud.google.com/sdk/docs/install%5D(https://cloud.google.com/sdk/docs/install)>) installed and authenticated.
|
|
24
|
-
- [Docker](https://www.docker.com/products/docker-desktop/) installed on your local machine.
|
|
25
|
-
- Python 3.11+
|
|
26
|
-
|
|
27
|
-
## Quick Start Guide
|
|
28
|
-
|
|
29
|
-
Follow these steps to get your own AI agent system running on Google Cloud.
|
|
30
|
-
|
|
31
|
-
### 1\. Configure Setup Variables
|
|
32
|
-
|
|
33
|
-
The setup scripts use placeholder variables. Before running them, open the files in the `/scripts` directory and replace the following placeholders with your own values:
|
|
34
|
-
|
|
35
|
-
- `{{PROJECT_ID}}`: Your unique Google Cloud project ID.
|
|
36
|
-
- `{{COMPANY_NAME}}`: Your company or project name (used for naming resources).
|
|
37
|
-
- `{{LOCATION}}`: The GCP region you want to deploy to (e.g., `us-central1`).
|
|
38
|
-
|
|
39
|
-
### 2\. Run the GCP Setup Scripts
|
|
40
|
-
|
|
41
|
-
Execute the setup scripts to prepare your Google Cloud environment.
|
|
42
|
-
|
|
43
|
-
```bash
|
|
44
|
-
# Navigate to the scripts directory
|
|
45
|
-
cd scripts/
|
|
46
|
-
|
|
47
|
-
# Run the project configuration script
|
|
48
|
-
sh 1-initial-project-config.sh
|
|
49
|
-
|
|
50
|
-
# Run the service account setup script
|
|
51
|
-
sh 2-service-account-setup.sh
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
These scripts will enable the necessary APIs, create a service account, assign permissions, and download a JSON key file required for authentication.
|
|
55
|
-
|
|
56
|
-
### 3\. Install Python Dependencies
|
|
57
|
-
|
|
58
|
-
Install the required Python packages for the application.
|
|
59
|
-
|
|
60
|
-
```bash
|
|
61
|
-
# From the root of the expansion pack
|
|
62
|
-
pip install -r requirements.txt
|
|
63
|
-
```
|
|
64
|
-
|
|
65
|
-
### 4\. Deploy to Cloud Run
|
|
66
|
-
|
|
67
|
-
Deploy the entire agent system as a serverless application using Cloud Build.
|
|
68
|
-
|
|
69
|
-
```bash
|
|
70
|
-
# From the root of the expansion pack
|
|
71
|
-
gcloud builds submit --config deployment/cloudbuild.yaml .
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
This command will build the Docker container, push it to the Google Container Registry, and deploy it to Cloud Run. Your agent system is now live\!
|
|
75
|
-
|
|
76
|
-
## How to Use
|
|
77
|
-
|
|
78
|
-
Once deployed, the power of this system lies in its natural language templates.
|
|
79
|
-
|
|
80
|
-
1. **Define Your Organization**: Go to `/templates/teams` and use the templates to define your agent teams (e.g., Product Development, Operations).
|
|
81
|
-
2. **Customize Your Agents**: In `/templates/agents`, use the `Master-Agent-Template.yaml` to create new agents or customize the existing Orchestrator and Specialist templates. Define their personas, skills, and commands in plain English.
|
|
82
|
-
3. **Build Your Workflows**: In `/templates/workflows`, link agents and tasks together to create complex, automated processes.
|
|
83
|
-
|
|
84
|
-
The deployed application reads these YAML and Markdown files to dynamically construct and run your AI workforce. When you update a template, your live agents automatically adopt the new behaviors.
|
|
85
|
-
|
|
86
|
-
## What's Included
|
|
87
|
-
|
|
88
|
-
This expansion pack has a comprehensive structure to get you started:
|
|
89
|
-
|
|
90
|
-
```
|
|
91
|
-
/
|
|
92
|
-
├── deployment/ # Dockerfile and cloudbuild.yaml for deployment
|
|
93
|
-
├── scripts/ # GCP setup scripts (project config, service accounts)
|
|
94
|
-
├── src/ # Python source code (main.py, settings.py)
|
|
95
|
-
├── templates/
|
|
96
|
-
│ ├── agents/ # Master, Orchestrator, Specialist agent templates
|
|
97
|
-
│ ├── teams/ # Team structure templates
|
|
98
|
-
│ ├── tasks/ # Generic and specialized task templates
|
|
99
|
-
│ ├── documents/ # Document and report templates
|
|
100
|
-
│ ├── checklists/ # Quality validation checklists
|
|
101
|
-
│ ├── workflows/ # Workflow definition templates
|
|
102
|
-
│ └── ...and more
|
|
103
|
-
├── config/ # Customization guides and variable files
|
|
104
|
-
└── requirements.txt # Python package dependencies
|
|
105
|
-
```
|
|
106
|
-
|
|
107
|
-
## Contributing
|
|
108
|
-
|
|
109
|
-
Contributions are welcome\! Please follow the main project's `CONTRIBUTING.md` guidelines. For major changes or new features for this expansion pack, please open an issue or discussion first.
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Semantic-release plugin to sync installer package.json version
|
|
3
|
-
*/
|
|
4
|
-
|
|
5
|
-
const fs = require('fs');
|
|
6
|
-
const path = require('path');
|
|
7
|
-
|
|
8
|
-
// This function runs during the "prepare" step of semantic-release
|
|
9
|
-
function prepare(_, { nextRelease, logger }) {
|
|
10
|
-
// Define the path to the installer package.json file
|
|
11
|
-
const file = path.join(process.cwd(), 'tools/installer/package.json');
|
|
12
|
-
|
|
13
|
-
// If the file does not exist, skip syncing and log a message
|
|
14
|
-
if (!fs.existsSync(file)) return logger.log('Installer package.json not found, skipping');
|
|
15
|
-
|
|
16
|
-
// Read and parse the package.json file
|
|
17
|
-
const pkg = JSON.parse(fs.readFileSync(file, 'utf8'));
|
|
18
|
-
|
|
19
|
-
// Update the version field with the next release version
|
|
20
|
-
pkg.version = nextRelease.version;
|
|
21
|
-
|
|
22
|
-
// Write the updated JSON back to the file
|
|
23
|
-
fs.writeFileSync(file, JSON.stringify(pkg, null, 2) + '\n');
|
|
24
|
-
|
|
25
|
-
// Log success message
|
|
26
|
-
logger.log(`Synced installer package.json to version ${nextRelease.version}`);
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
// Export the prepare function so semantic-release can use it
|
|
30
|
-
module.exports = { prepare };
|