Merge branch 'main' into main
This commit is contained in:
commit
4c0b3ce318
|
|
@ -60,6 +60,7 @@ npm run build
|
|||
### Pull Request CI
|
||||
|
||||
When you open a Pull Request to the main repository:
|
||||
|
||||
- All CI/CD workflows automatically run
|
||||
- You get full validation of your changes
|
||||
- No configuration needed
|
||||
|
|
@ -67,6 +68,7 @@ When you open a Pull Request to the main repository:
|
|||
### GitHub Codespaces
|
||||
|
||||
Use GitHub Codespaces for a full development environment:
|
||||
|
||||
- All tools pre-configured
|
||||
- Same environment as CI/CD
|
||||
- No local setup required
|
||||
|
|
@ -101,4 +103,4 @@ Use GitHub Codespaces for a full development environment:
|
|||
|
||||
---
|
||||
|
||||
> 💡 **Pro Tip**: This fork-friendly approach is particularly valuable for projects using AI/LLM tools that create many experimental commits, as it prevents unnecessary CI runs while maintaining code quality standards.
|
||||
> 💡 **Pro Tip**: This fork-friendly approach is particularly valuable for projects using AI/LLM tools that create many experimental commits, as it prevents unnecessary CI runs while maintaining code quality standards.
|
||||
|
|
|
|||
|
|
@ -0,0 +1,55 @@
|
|||
name: PR Validation
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches: [main]
|
||||
types: [opened, synchronize, reopened]
|
||||
|
||||
jobs:
|
||||
validate:
|
||||
runs-on: ubuntu-latest
|
||||
if: github.event.repository.fork != true || vars.ENABLE_CI_IN_FORK == 'true'
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Setup Node.js
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: "20"
|
||||
cache: npm
|
||||
|
||||
- name: Install dependencies
|
||||
run: npm ci
|
||||
|
||||
- name: Run validation
|
||||
run: npm run validate
|
||||
|
||||
- name: Check formatting
|
||||
run: npm run format:check
|
||||
|
||||
- name: Run linter
|
||||
run: npm run lint
|
||||
|
||||
- name: Run tests (if available)
|
||||
run: npm test --if-present
|
||||
|
||||
- name: Comment on PR if checks fail
|
||||
if: failure()
|
||||
uses: actions/github-script@v7
|
||||
with:
|
||||
script: |
|
||||
github.rest.issues.createComment({
|
||||
issue_number: context.issue.number,
|
||||
owner: context.repo.owner,
|
||||
repo: context.repo.repo,
|
||||
body: `❌ **PR Validation Failed**
|
||||
|
||||
This PR has validation errors that must be fixed before merging:
|
||||
- Run \`npm run validate\` to check agent/team configs
|
||||
- Run \`npm run format:check\` to check formatting (fix with \`npm run format\`)
|
||||
- Run \`npm run lint\` to check linting issues (fix with \`npm run lint:fix\`)
|
||||
|
||||
Please fix these issues and push the changes.`
|
||||
})
|
||||
|
|
@ -17,6 +17,47 @@ Also note, we use the discussions feature in GitHub to have a community to discu
|
|||
|
||||
By participating in this project, you agree to abide by our Code of Conduct. Please read it before participating.
|
||||
|
||||
## Before Submitting a PR
|
||||
|
||||
**IMPORTANT**: All PRs must pass validation checks before they can be merged.
|
||||
|
||||
### Required Checks
|
||||
|
||||
Before submitting your PR, run these commands locally:
|
||||
|
||||
```bash
|
||||
# Run all validation checks
|
||||
npm run pre-release
|
||||
|
||||
# Or run them individually:
|
||||
npm run validate # Validate agent/team configs
|
||||
npm run format:check # Check code formatting
|
||||
npm run lint # Check for linting issues
|
||||
```
|
||||
|
||||
### Fixing Issues
|
||||
|
||||
If any checks fail, use these commands to fix them:
|
||||
|
||||
```bash
|
||||
# Fix all issues automatically
|
||||
npm run fix
|
||||
|
||||
# Or fix individually:
|
||||
npm run format # Fix formatting issues
|
||||
npm run lint:fix # Fix linting issues
|
||||
```
|
||||
|
||||
### Setup Git Hooks (Optional but Recommended)
|
||||
|
||||
To catch issues before committing:
|
||||
|
||||
```bash
|
||||
# Run this once after cloning
|
||||
chmod +x tools/setup-hooks.sh
|
||||
./tools/setup-hooks.sh
|
||||
```
|
||||
|
||||
## How to Contribute
|
||||
|
||||
### Reporting Bugs
|
||||
|
|
|
|||
16
README.md
16
README.md
|
|
@ -243,19 +243,3 @@ BMAD™ and BMAD-METHOD™ are trademarks of BMad Code, LLC. All rights reserved
|
|||
[](https://github.com/bmadcode/bmad-method/graphs/contributors)
|
||||
|
||||
<sub>Built with ❤️ for the AI-assisted development community</sub>
|
||||
|
||||
#### Codex (CLI & Web)
|
||||
|
||||
- Two modes are supported:
|
||||
- Codex (local only): `npx bmad-method install -f -i codex -d .` — keeps `.bmad-core/` ignored via `.gitignore` for local development.
|
||||
- Codex Web Enabled: `npx bmad-method install -f -i codex-web -d .` — ensures `.bmad-core/` is tracked (not ignored) so it can be committed for Codex Web.
|
||||
- For Codex Web, commit both `.bmad-core/` and `AGENTS.md` to the repository.
|
||||
- Codex CLI: run `codex` at your project root; reference agents naturally, e.g., “As dev, implement …”.
|
||||
- Codex Web: open your repo in Codex and prompt the same way — it reads `AGENTS.md` automatically.
|
||||
- Refresh after changes: rerun the appropriate install command (`codex` or `codex-web`) to regenerate the BMAD section inside `AGENTS.md`.
|
||||
|
||||
If a `package.json` exists in your project, the installer will add helpful scripts:
|
||||
|
||||
- `bmad:refresh` → `bmad-method install -f -i codex`
|
||||
- `bmad:list` → `bmad-method list:agents`
|
||||
- `bmad:validate` → `bmad-method validate`
|
||||
|
|
|
|||
|
|
@ -160,7 +160,7 @@ workflow:
|
|||
- Dev Agent (New Chat): Address remaining items
|
||||
- Return to QA for final approval
|
||||
|
||||
- repeat_development_cycle:
|
||||
- step: repeat_development_cycle
|
||||
action: continue_for_all_stories
|
||||
notes: |
|
||||
Repeat story cycle (SM → Dev → QA) for all epic stories
|
||||
|
|
@ -177,7 +177,7 @@ workflow:
|
|||
- Validate epic was completed correctly
|
||||
- Document learnings and improvements
|
||||
|
||||
- workflow_end:
|
||||
- step: workflow_end
|
||||
action: project_complete
|
||||
notes: |
|
||||
All stories implemented and reviewed!
|
||||
|
|
|
|||
|
|
@ -106,7 +106,7 @@ workflow:
|
|||
- Dev Agent (New Chat): Address remaining items
|
||||
- Return to QA for final approval
|
||||
|
||||
- repeat_development_cycle:
|
||||
- step: repeat_development_cycle
|
||||
action: continue_for_all_stories
|
||||
notes: |
|
||||
Repeat story cycle (SM → Dev → QA) for all epic stories
|
||||
|
|
@ -123,7 +123,7 @@ workflow:
|
|||
- Validate epic was completed correctly
|
||||
- Document learnings and improvements
|
||||
|
||||
- workflow_end:
|
||||
- step: workflow_end
|
||||
action: project_complete
|
||||
notes: |
|
||||
All stories implemented and reviewed!
|
||||
|
|
|
|||
|
|
@ -113,7 +113,7 @@ workflow:
|
|||
- Dev Agent (New Chat): Address remaining items
|
||||
- Return to QA for final approval
|
||||
|
||||
- repeat_development_cycle:
|
||||
- step: repeat_development_cycle
|
||||
action: continue_for_all_stories
|
||||
notes: |
|
||||
Repeat story cycle (SM → Dev → QA) for all epic stories
|
||||
|
|
@ -130,7 +130,7 @@ workflow:
|
|||
- Validate epic was completed correctly
|
||||
- Document learnings and improvements
|
||||
|
||||
- workflow_end:
|
||||
- step: workflow_end
|
||||
action: project_complete
|
||||
notes: |
|
||||
All stories implemented and reviewed!
|
||||
|
|
|
|||
|
|
@ -65,12 +65,12 @@ workflow:
|
|||
condition: po_checklist_issues
|
||||
notes: "If PO finds issues, return to relevant agent to fix and re-export updated documents to docs/ folder."
|
||||
|
||||
- project_setup_guidance:
|
||||
- step: project_setup_guidance
|
||||
action: guide_project_structure
|
||||
condition: user_has_generated_ui
|
||||
notes: "If user generated UI with v0/Lovable: For polyrepo setup, place downloaded project in separate frontend repo alongside backend repo. For monorepo, place in apps/web or packages/frontend directory. Review architecture document for specific guidance."
|
||||
|
||||
- development_order_guidance:
|
||||
- step: development_order_guidance
|
||||
action: guide_development_sequence
|
||||
notes: "Based on PRD stories: If stories are frontend-heavy, start with frontend project/directory first. If backend-heavy or API-first, start with backend. For tightly coupled features, follow story sequence in monorepo setup. Reference sharded PRD epics for development order."
|
||||
|
||||
|
|
@ -138,7 +138,7 @@ workflow:
|
|||
- Dev Agent (New Chat): Address remaining items
|
||||
- Return to QA for final approval
|
||||
|
||||
- repeat_development_cycle:
|
||||
- step: repeat_development_cycle
|
||||
action: continue_for_all_stories
|
||||
notes: |
|
||||
Repeat story cycle (SM → Dev → QA) for all epic stories
|
||||
|
|
@ -155,7 +155,7 @@ workflow:
|
|||
- Validate epic was completed correctly
|
||||
- Document learnings and improvements
|
||||
|
||||
- workflow_end:
|
||||
- step: workflow_end
|
||||
action: project_complete
|
||||
notes: |
|
||||
All stories implemented and reviewed!
|
||||
|
|
|
|||
|
|
@ -114,7 +114,7 @@ workflow:
|
|||
- Dev Agent (New Chat): Address remaining items
|
||||
- Return to QA for final approval
|
||||
|
||||
- repeat_development_cycle:
|
||||
- step: repeat_development_cycle
|
||||
action: continue_for_all_stories
|
||||
notes: |
|
||||
Repeat story cycle (SM → Dev → QA) for all epic stories
|
||||
|
|
@ -131,7 +131,7 @@ workflow:
|
|||
- Validate epic was completed correctly
|
||||
- Document learnings and improvements
|
||||
|
||||
- workflow_end:
|
||||
- step: workflow_end
|
||||
action: project_complete
|
||||
notes: |
|
||||
All stories implemented and reviewed!
|
||||
|
|
|
|||
|
|
@ -64,7 +64,7 @@ workflow:
|
|||
condition: po_checklist_issues
|
||||
notes: "If PO finds issues, return to relevant agent to fix and re-export updated documents to docs/ folder."
|
||||
|
||||
- project_setup_guidance:
|
||||
- step: project_setup_guidance
|
||||
action: guide_project_structure
|
||||
condition: user_has_generated_ui
|
||||
notes: "If user generated UI with v0/Lovable: For polyrepo setup, place downloaded project in separate frontend repo. For monorepo, place in apps/web or frontend/ directory. Review architecture document for specific guidance."
|
||||
|
|
@ -133,7 +133,7 @@ workflow:
|
|||
- Dev Agent (New Chat): Address remaining items
|
||||
- Return to QA for final approval
|
||||
|
||||
- repeat_development_cycle:
|
||||
- step: repeat_development_cycle
|
||||
action: continue_for_all_stories
|
||||
notes: |
|
||||
Repeat story cycle (SM → Dev → QA) for all epic stories
|
||||
|
|
@ -150,7 +150,7 @@ workflow:
|
|||
- Validate epic was completed correctly
|
||||
- Document learnings and improvements
|
||||
|
||||
- workflow_end:
|
||||
- step: workflow_end
|
||||
action: project_complete
|
||||
notes: |
|
||||
All stories implemented and reviewed!
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ Each expansion pack provides deep, specialized knowledge without bloating the co
|
|||
|
||||
Anyone can create and share expansion packs, fostering a ecosystem of AI-powered solutions across all industries and interests.
|
||||
|
||||
## Technical Expansion Packs
|
||||
## Technical Expansion Packs (Examples of possible expansions to come)
|
||||
|
||||
### Game Development Pack
|
||||
|
||||
|
|
@ -191,90 +191,10 @@ Research acceleration tools:
|
|||
|
||||
## Creating Your Own Expansion Pack
|
||||
|
||||
### Step 1: Define Your Domain
|
||||
|
||||
What expertise are you capturing? What problems will it solve?
|
||||
|
||||
### Step 2: Design Your Agents
|
||||
|
||||
Each agent should have:
|
||||
|
||||
- Clear expertise area
|
||||
- Specific personality traits
|
||||
- Defined capabilities
|
||||
- Knowledge boundaries
|
||||
|
||||
### Step 3: Create Tasks
|
||||
|
||||
Tasks should be:
|
||||
|
||||
- Step-by-step procedures
|
||||
- Reusable across scenarios
|
||||
- Clear and actionable
|
||||
- Domain-specific
|
||||
|
||||
### Step 4: Build Templates
|
||||
|
||||
Templates need:
|
||||
|
||||
- Structured output format
|
||||
- Embedded LLM instructions
|
||||
- Placeholders for customization
|
||||
- Professional formatting
|
||||
|
||||
### Step 5: Test & Iterate
|
||||
|
||||
- Use with real scenarios
|
||||
- Gather user feedback
|
||||
- Refine agent responses
|
||||
- Improve task clarity
|
||||
|
||||
### Step 6: Package & Share
|
||||
|
||||
- Create clear documentation
|
||||
- Include usage examples
|
||||
- Add to expansion-packs directory
|
||||
- Share with community
|
||||
|
||||
## The Future of Expansion Packs
|
||||
|
||||
### Marketplace Potential
|
||||
|
||||
Imagine a future where:
|
||||
|
||||
- Professional expansion packs are sold
|
||||
- Certified packs for regulated industries
|
||||
- Community ratings and reviews
|
||||
- Automatic updates and improvements
|
||||
|
||||
### AI Agent Ecosystems
|
||||
|
||||
Expansion packs could enable:
|
||||
|
||||
- Cross-pack agent collaboration
|
||||
- Industry-standard agent protocols
|
||||
- Interoperable AI workflows
|
||||
- Universal agent languages
|
||||
|
||||
### Democratizing Expertise
|
||||
|
||||
Every expansion pack:
|
||||
|
||||
- Makes expert knowledge accessible
|
||||
- Reduces barriers to entry
|
||||
- Enables solo entrepreneurs
|
||||
- Empowers small teams
|
||||
|
||||
## Getting Started
|
||||
|
||||
1. **Browse existing packs**: Check `expansion-packs/` directory
|
||||
2. **Install what you need**: Use the installer's expansion pack option
|
||||
3. **Create your own**: Use the expansion-creator pack
|
||||
4. **Share with others**: Submit PRs with new packs
|
||||
5. **Build the future**: Help shape AI-assisted work
|
||||
The next major release will include a new agent and expansion pack builder and a new expansion format.
|
||||
|
||||
## Remember
|
||||
|
||||
The BMad Method is more than a development framework - it's a platform for structuring human expertise into AI-accessible formats. Every expansion pack you create makes specialized knowledge more accessible to everyone.
|
||||
The BMad Method is more than a Software Development Agile Framework! Every expansion pack makes specialized knowledge and workflows more accessible to everyone.
|
||||
|
||||
**What expertise will you share with the world?**
|
||||
|
|
|
|||
|
|
@ -1,12 +1,12 @@
|
|||
{
|
||||
"name": "bmad-method",
|
||||
"version": "4.40.1",
|
||||
"version": "4.42.1",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "bmad-method",
|
||||
"version": "4.40.1",
|
||||
"version": "4.42.1",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@kayvan/markdown-tree-parser": "^1.6.1",
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"$schema": "https://json.schemastore.org/package.json",
|
||||
"name": "bmad-method",
|
||||
"version": "4.40.1",
|
||||
"version": "4.42.1",
|
||||
"description": "Breakthrough Method of Agile AI-driven Development",
|
||||
"keywords": [
|
||||
"agile",
|
||||
|
|
@ -27,6 +27,7 @@
|
|||
"build": "node tools/cli.js build",
|
||||
"build:agents": "node tools/cli.js build --agents-only",
|
||||
"build:teams": "node tools/cli.js build --teams-only",
|
||||
"fix": "npm run format && npm run lint:fix",
|
||||
"flatten": "node tools/flattener/main.js",
|
||||
"format": "prettier --write \"**/*.{js,cjs,mjs,json,md,yaml}\"",
|
||||
"format:check": "prettier --check \"**/*.{js,cjs,mjs,json,md,yaml}\"",
|
||||
|
|
@ -34,12 +35,14 @@
|
|||
"lint": "eslint . --ext .js,.cjs,.mjs,.yaml --max-warnings=0",
|
||||
"lint:fix": "eslint . --ext .js,.cjs,.mjs,.yaml --fix",
|
||||
"list:agents": "node tools/cli.js list:agents",
|
||||
"pre-release": "npm run validate && npm run format:check && npm run lint",
|
||||
"prepare": "husky",
|
||||
"preview:release": "node tools/preview-release-notes.js",
|
||||
"release:major": "gh workflow run \"Manual Release\" -f version_bump=major",
|
||||
"release:minor": "gh workflow run \"Manual Release\" -f version_bump=minor",
|
||||
"release:patch": "gh workflow run \"Manual Release\" -f version_bump=patch",
|
||||
"release:watch": "gh run watch",
|
||||
"setup:hooks": "chmod +x tools/setup-hooks.sh && ./tools/setup-hooks.sh",
|
||||
"validate": "node tools/cli.js validate",
|
||||
"version:all": "node tools/bump-all-versions.js",
|
||||
"version:all:major": "node tools/bump-all-versions.js major",
|
||||
|
|
|
|||
|
|
@ -1,12 +1,12 @@
|
|||
{
|
||||
"name": "bmad-method",
|
||||
"version": "4.37.0-beta.4",
|
||||
"version": "4.42.1",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "bmad-method",
|
||||
"version": "4.37.0-beta.4",
|
||||
"version": "4.42.1",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"chalk": "^4.1.2",
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "bmad-method",
|
||||
"version": "4.39.1",
|
||||
"version": "4.42.1",
|
||||
"description": "BMad Method installer - AI-powered Agile development framework",
|
||||
"keywords": [
|
||||
"bmad",
|
||||
|
|
|
|||
|
|
@ -0,0 +1,37 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Setup script for git hooks
|
||||
echo "Setting up git hooks..."
|
||||
|
||||
# Install husky
|
||||
npm install --save-dev husky
|
||||
|
||||
# Initialize husky
|
||||
npx husky init
|
||||
|
||||
# Create pre-commit hook
|
||||
cat > .husky/pre-commit << 'EOF'
|
||||
#!/usr/bin/env sh
|
||||
. "$(dirname -- "$0")/_/husky.sh"
|
||||
|
||||
# Run validation checks before commit
|
||||
echo "Running pre-commit checks..."
|
||||
|
||||
npm run validate
|
||||
npm run format:check
|
||||
npm run lint
|
||||
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "❌ Pre-commit checks failed. Please fix the issues before committing."
|
||||
echo " Run 'npm run format' to fix formatting issues"
|
||||
echo " Run 'npm run lint:fix' to fix some lint issues"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "✅ Pre-commit checks passed!"
|
||||
EOF
|
||||
|
||||
chmod +x .husky/pre-commit
|
||||
|
||||
echo "✅ Git hooks setup complete!"
|
||||
echo "Now commits will be validated before they're created."
|
||||
Loading…
Reference in New Issue