Commit Graph

35 Commits

Author SHA1 Message Date
Alex Verkhovsky b8b4b65c10
feat(discord): compact plain-text notifications with bug fixes (#1021)
- Fix esc() bracket expression (] must be first in POSIX regex)
- Fix delete job: inline helper to avoid checkout of deleted ref
- Fix issue notifications: attribute close/reopen to actor, not author
- Simplify trunc() comment (remove false Unicode-safe claim)
- Smart truncation with wall-of-text detection
- Escape markdown and @mentions for safe display

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Brian <bmadcode@gmail.com>
2025-12-03 20:22:59 -06:00
Murat K Ozcan 55fd621664
fix: enabled web bundles for test and dev (#948)
* fix: enabled web bundles for test and dev

* fix: only bundle non webskip agents

* fix: addressed pr comments

* fix: addressed pr comments

---------

Co-authored-by: Murat Ozcan <murat@mac.lan>
2025-11-20 13:44:48 -06:00
Brian Madison e6b4f3f051 update doc 2025-11-14 07:10:01 -06:00
Brian Madison 48cf5c8056 feat(workflows): Implement intelligent file discovery protocol and Phase 4 BMGD workflows
## Core Workflow Engine Enhancements

### discover_inputs Protocol (MAJOR)
- Added reusable `discover_inputs` protocol to workflow.xml for intelligent file loading
- Supports three loading strategies:
  - FULL_LOAD: Load all shards for PRD, Architecture, UX (changed pattern from /index.md to /*/*.md)
  - SELECTIVE_LOAD: Load specific shard via template variable (e.g., epic-{{epic_num}}.md)
  - INDEX_GUIDED: Load index, analyze TOC, intelligently load relevant docs (with "DO NOT BE LAZY" mandate)
- Auto-discovers whole vs sharded documents with proper fallback
- Provides transparent reporting of loaded content with file counts
- Invoked via <invoke-protocol name="discover_inputs" /> tag in workflow instructions

### Advanced Elicitation Improvements
- Renamed adv-elicit.xml to advanced-elicitation.xml for clarity
- Updated all references across agents and commands

### Shard Document Tool Enhancement
- Added Step 6: Handle Original Document with three options:
  - [d] Delete - Remove original (recommended, prevents confusion)
  - [m] Move to archive - Backup original to archive folder
  - [k] Keep - Warning about defeating sharding purpose
- Prevents issue where both whole and sharded versions exist, confusing discover_inputs protocol

## BMM Module - Input File Pattern Standardization

### Phase 1 - Analysis (1 workflow)
- product-brief: Added load_strategy (FULL_LOAD for research/brainstorming, INDEX_GUIDED for document_project)
- Updated instructions.md to use invoke-protocol, replaced manual fuzzy matching

### Phase 2 - Planning (4 workflows)
- prd: Added load_strategy, updated instructions to reference {product_brief_content}, {research_content}
- create-ux-design: Added load_strategy, removed fuzzy matching from instructions
- tech-spec: Added load_strategy for brownfield context discovery
- All epics patterns updated to support SELECTIVE_LOAD for specific epic shards

### Phase 3 - Solutioning (2 workflows)
- architecture: Added load_strategy, updated instructions to use pre-loaded {prd_content}, {epics_content}, {ux_design_content}
- solutioning-gate-check: Added load_strategy, replaced manual discovery with protocol invocation

### Phase 4 - Implementation (8 workflows)
- code-review: Added load_strategy, fixed sharded patterns to /*/*.md, added step 1.5 for protocol
- correct-course: Added complete input_file_patterns section (was missing), added step 0.5
- create-story: Added load_strategy, updated to SELECTIVE_LOAD for epics, added step 1.5
- dev-story: Added complete input_file_patterns section (was missing), added step 0.5
- epic-tech-context: Added load_strategy, updated PRD extraction to use {prd_content}, added step 1.5
- retrospective: Added load_strategy for architecture/prd (FULL_LOAD), epics (SELECTIVE_LOAD), added step 0.5
- sprint-planning: Fixed sharded pattern to load ALL epics (/*/*.md), added step 0.5
- story-context: Added load_strategy, updated doc collection to reference pre-loaded content, added step 1.5

### Sprint Artifacts Path Corrections
- story-done: Added missing sprint_artifacts variable, fixed sprint_status path from {context_dir} to {sprint_artifacts}
- story-ready: Added missing sprint_artifacts variable
- story-context: Fixed undefined {context_dir} -> {sprint_artifacts}
- correct-course: Added sprint_artifacts and sprint_status variables

## BMGD Module - Phase 4 Production Workflows (NEW)

Added complete Phase 4 implementation workflows for game development:
- code-review: Senior developer review for completed game features
- correct-course: Sprint change management for game projects
- create-story: Story generation for game mechanics/features
- dev-story: Feature implementation workflow
- epic-tech-context: Technical spec generation per game epic
- retrospective: Epic completion review and lessons learned
- sprint-planning: Game development sprint status tracking
- story-context: Dynamic context assembly for game stories
- story-done: Story completion workflow
- story-ready: Story readiness workflow

All BMGD workflows follow BMM patterns with game-specific adaptations.

## Agent Updates

### BMM Agents
- Updated all 7 BMM agents (analyst, architect, dev, pm, sm, tea, tech-writer, ux-designer)
- Standardized web bundle configurations

### BMGD Agents
- Updated 4 game development agents (game-architect, game-designer, game-dev, game-scrum-master)
- Aligned with BMM agent structure

### CIS Agents
- Updated 5 creative intelligence agents for consistency

## Documentation & Configuration

- Updated CHANGELOG.md with Phase 4 workflow additions
- Updated files-manifest.csv and task-manifest.csv
- Updated .claude commands for all agents
- Fixed formatting issues from previous commits

## Breaking Changes

NONE - All changes are backward compatible. Workflows without input_file_patterns continue to work.
Workflows with input_file_patterns now benefit from intelligent auto-loading.

## Migration Notes

Existing workflows can gradually adopt discover_inputs protocol by:
1. Adding load_strategy to existing input_file_patterns in workflow.yaml
2. Adding <invoke-protocol name="discover_inputs" /> step in instructions.md
3. Replacing manual file loading with references to {pattern_name_content} variables
2025-11-12 19:18:38 -06:00
Murat K Ozcan 280652566c
chore: fixed directory browsing + zip Downloads (#902)
Co-authored-by: Murat Ozcan <murat@mac.lan>
2025-11-11 16:48:03 -06:00
Murat K Ozcan 2ae99135a2
chore: fix bundle urls (#901)
Co-authored-by: Murat Ozcan <murat@mac.lan>
2025-11-11 16:37:03 -06:00
Murat K Ozcan 449b5b3d29
chore: github pages for web bundle (#898)
* chore: github pages for web bundle

* docs: updated Bundle distribution setup

* chore: addressed PR comments

---------

Co-authored-by: Murat Ozcan <murat@mac.lan>
2025-11-11 13:35:30 -06:00
Murat K Ozcan 1343859874
chore: CC PR review with GH token (#874)
* chore: CC PR review with GH token

* debug CC output

* turn off CC output

* turn off CC PR review

---------

Co-authored-by: Murat Ozcan <murat@mac.lan>
2025-11-06 13:05:36 -06:00
Murat K Ozcan bc76d25be6
chore: added CC PR review (#871)
* chore: added CC PR review

* remove CLAUDE.md

---------

Co-authored-by: Murat Ozcan <murat@mac.lan>
2025-11-05 14:14:31 -06:00
Alex Verkhovsky 31666c1f0f
feat: add agent schema validation with comprehensive testing (#774)
Introduce automated validation for agent YAML files using Zod to ensure
schema compliance across all agent definitions. This feature validates
17 agent files across core and module directories, catching structural
errors and maintaining consistency.

Schema Validation (tools/schema/agent.js):
- Zod-based schema validating metadata, persona, menu, prompts, and critical actions
- Module-aware validation: module field required for src/modules/**/agents/,
  optional for src/core/agents/
- Enforces kebab-case unique triggers and at least one command target per menu item
- Validates persona.principles as array (not string)
- Comprehensive refinements for data integrity

CLI Validator (tools/validate-agent-schema.js):
- Scans src/{core,modules/*}/agents/*.agent.yaml
- Parses with js-yaml and validates using Zod schema
- Reports detailed errors with file paths and field paths
- Exits 1 on failures, 0 on success
- Accepts optional project_root parameter for testing

Testing (679 lines across 3 test files):
- test/test-cli-integration.sh: CLI behavior and error handling tests
- test/unit-test-schema.js: Direct schema validation unit tests
- test/test-agent-schema.js: Comprehensive fixture-based tests
- 50 test fixtures covering valid and invalid scenarios
- ESLint configured to support CommonJS test files
- Prettier configured to ignore intentionally broken fixtures

CI Integration (.github/workflows/lint.yaml):
- Renamed from format-check.yaml to lint.yaml
- Added schema-validation job running npm run validate:schemas
- Runs in parallel with prettier and eslint jobs
- Validates on all pull requests

Data Cleanup:
- Fixed src/core/agents/bmad-master.agent.yaml: converted persona.principles
  from string to array format

Documentation:
- Updated schema-classification.md with validation section
- Documents validator usage, enforcement rules, and CI integration

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude <noreply@anthropic.com>
2025-10-20 07:14:50 -05:00
Brian Madison b4cc579009 create-agent now adds agent to ide agents list also 2025-10-10 09:27:50 -05:00
Brian Madison 0a6a3f3015 feat: v6.0.0-alpha.0 - the future is now 2025-09-28 23:17:07 -05:00
Brian Madison fb70c20067 feat: add PR validation workflow and contribution checks 2025-08-31 20:30:52 -05:00
Bragatte 052e84dd4a
feat: implement fork-friendly CI/CD with opt-in mechanism (#476)
- CI/CD disabled by default in forks to conserve resources
- Users can enable via ENABLE_CI_IN_FORK repository variable
- Added comprehensive Fork Guide documentation
- Updated README with Contributing section
- Created automation script for future implementations

Benefits:
- Saves GitHub Actions minutes across 1,600+ forks
- Cleaner fork experience for contributors
- Full control for fork owners
- PR validation still runs automatically

BREAKING CHANGE: CI/CD no longer runs automatically in forks.
Fork owners must set ENABLE_CI_IN_FORK=true to enable workflows.

Co-authored-by: Brian <bmadcode@gmail.com>
Co-authored-by: PinkyD <paulbeanjr@gmail.com>
2025-08-30 22:15:31 -05:00
Brian Madison c0899432c1 fix: simplify npm publishing to use latest tag only
- Remove stable tag complexity from workflow
- Publish directly to latest tag (default for npx)
- Update documentation to reflect single tag approach
2025-08-16 20:58:22 -05:00
Brian Madison 39437e9268 fix: handle protected branch in manual release workflow
- Allow workflow to continue even if push to main fails
- This is expected behavior with protected branches
- NPM publishing and GitHub releases will still work
2025-08-16 20:44:00 -05:00
Brian Madison 1772a30368 fix: enable version bumping in manual release workflow
- Fix version-bump.js to actually update package.json version
- Add tag existence check to prevent duplicate tag errors
- Remove semantic-release dependency from version bumping
2025-08-16 20:42:35 -05:00
Brian Madison 3eb706c49a feat: enhance manual release workflow with automatic release notes
- Add automatic release notes generation from commit history
- Categorize commits into Features, Bug Fixes, and Maintenance
- Include installation instructions and changelog links
- Add preview-release-notes script for testing
- Update GitHub release creation to use generated notes
2025-08-16 20:35:41 -05:00
Brian Madison 3f5abf347d feat: simplify installation to single @stable tag
- Remove automatic versioning and dual publishing strategy
- Delete release.yaml and promote-to-stable.yaml workflows
- Add manual-release.yaml for controlled releases
- Remove semantic-release dependencies and config
- Update all documentation to use npx bmad-method install
- Configure NPM to publish to @stable tag by default
- Users can now use simple npx bmad-method install command
2025-08-16 20:23:23 -05:00
manjaroblack ed539432fb
chore: add code formatting config and pre-commit hooks (#450) 2025-08-16 19:08:39 -05:00
Brian Madison 51284d6ecf fix: handle existing tags in promote-to-stable workflow
- Check for existing git tags when calculating new version
- Automatically increment version if tag already exists
- Prevents workflow failure when tag v5.1.0 already exists
2025-08-16 17:14:38 -05:00
Brian Madison 6cba05114e fix: stable tag 2025-08-16 17:10:10 -05:00
Brian Madison 93426c2d2f feat: publish stable release 5.0.0
BREAKING CHANGE: Promote beta features to stable release for v5.0.0

This commit ensures the stable release gets properly published to NPM and GitHub releases.
2025-08-15 23:06:28 -05:00
Brian Madison 7f016d0020 fix: add permissions and authentication for promotion workflow
- Add contents:write permission for GitHub Actions
- Configure git to use GITHUB_TOKEN for authentication
- Set remote URL with access token for push operations
- This should resolve the 403 permission denied error
2025-08-15 20:25:12 -05:00
Brian Madison fb02234b59 feat: add automated promotion workflow for stable releases
- Add GitHub Actions workflow for one-click promotion to stable
- Supports patch/minor/major version bumps
- Automatically merges main to stable and handles version updates
- Eliminates manual git operations for stable releases
2025-08-15 20:17:49 -05:00
Brian Madison d92ba835fa feat: implement dual NPM publishing strategy
- Configure semantic-release for @beta and @latest tags
- Main branch publishes to @beta (bleeding edge)
- Stable branch publishes to @latest (production)
- Enable CI/CD workflow for both branches
2025-08-15 19:03:48 -05:00
Brian Madison 3f7e19a098 fix: update Node.js version to 20 in release workflow and reduce Discord spam
- Update release workflow Node.js version from 18 to 20 to match package.json requirements
- Remove push trigger from Discord workflow to reduce notification spam

This should resolve the semantic-release content-length header error after org migration.
2025-08-09 15:49:13 -05:00
Brian Madison dd2b4ed5ac discord PR spam 2025-08-08 20:07:32 -05:00
Brian Madison a4c0b1839d fix: standardize on file extension .yaml instead of a mix of yml and yaml 2025-07-02 19:59:49 -05:00
Brian Madison 5aed8f7603 cleanup 2025-06-28 22:26:37 -05:00
Brian 929461a2fe
Create FUNDING.yml 2025-06-28 17:11:51 -05:00
Brian ead2c04b5b
Update issue templates 2025-06-28 16:05:26 -05:00
Brian b9970c9d73
Update issue templates 2025-06-28 15:57:17 -05:00
Brian Madison 11260e4395 fix: auto semantic versioning fix again 2025-06-14 20:12:29 -05:00
Brian Madison 0ea5e50aa7 feat: add versioning and release automation
- Add semantic-release with changelog and git plugins
- Add manual version bump script (patch/minor/major)
- Add GitHub Actions workflow for automated releases
- Add npm scripts for version management
- Setup .releaserc.json for semantic-release configuration
2025-06-14 18:19:44 -05:00