BMAD-METHOD™ 是一个为敏捷AI驱动开发设计的通用AI代理框架。它提供了一个结构化的环境,用于创建、管理和协调AI代理以执行复杂的软件开发任务。
本项目旨在帮助开发者和团队更高效地利用AI进行敏捷开发。通过预定义的代理(Agents)和工作流程(Workflows),将复杂的软件开发任务分解为可管理的步骤,并由专门的AI代理执行和监控,从而显著提高软件开发的速度和质量。
框架的核心是 BMAD Orchestrator,一个作为中央控制器的AI代理。Orchestrator可以根据任务需求,动态转变为各种具有特定技能的专业代理。
-
BMAD Orchestrator (主协调器)
- 作为系统的入口点和总指挥,负责解析用户需求。
- 根据指令(如
*agent pm)动态加载并转变为特定的专业代理(如项目经理)。 - 协调不同的代理和工作流程,确保任务顺利完成。
-
Specialized Agents (专业代理)
- 每个代理都在一个独立的Markdown文件中定义(例如
dev.md,qa.md)。 - 拥有特定的角色、技能和预设任务。例如,
dev代理负责编码,qa代理负责测试。 - 代理的定义包括其工作指令、依赖的任务和模板。
- 每个代理都在一个独立的Markdown文件中定义(例如
-
Workflows (工作流程)
- 预定义了一系列步骤和代理协作的模式,用于完成常见的开发任务(例如,
greenfield-fullstack.yaml用于新项目的全栈开发)。 - 工作流程将多个代理的任务串联起来,形成自动化的开发流水线。
- 预定义了一系列步骤和代理协作的模式,用于完成常见的开发任务(例如,
-
CLI (命令行工具)
- 项目的主要交互界面 (
tools/cli.js)。 - 提供了构建、验证和列出可用代理及扩展包的功能。
- 开发者可以使用CLI来管理和打包AI代理,为特定项目创建定制的开发环境。
- 项目的主要交互界面 (
-
Expansion Packs (扩展包)
- 提供了一种模块化的方式来扩展框架的功能,以适应不同的开发领域(如游戏开发、创意写作等)。
- 每个扩展包都可以包含自己的代理、工作流程和工具集。
- 动态代理转换: 主协调器可以根据需要无缝切换到任何专业代理角色。
- 敏捷开发流程: 内置了敏捷开发的核心理念,通过AI代理执行需求分析、架构设计、开发、测试等任务。
- 高度可扩展: 可以通过创建新的代理、任务和工作流程,或通过扩展包来适应任何开发需求。
- 任务自动化: 将重复性和流程化的开发任务自动化,让开发者专注于创造性工作。
- 命令行驱动: 提供了强大的命令行工具,方便集成到现有的开发环境中。
- 结构化与模块化: 所有代理、任务和配置都以清晰的YAML和Markdown文件定义,易于理解和维护。