OpenFlow-用于OpenCode的BMAD方法
备注 :本项目实施了该方法 BMAD (建造更多,建筑师梦想)倾倒 开源代码 ❤️
配置存储库使用专门的代理、技能和MCP服务器实现BMAD方法,用于AI驱动的敏捷开发。
快速开始
# Clone the repository
git clone ~/Projects/open-flow
cd ~/Projects/open-flow
# Install everything (agents, skills, MCP servers)
./install.sh
# Or install in a specific language
./install.sh install --lang=en # English
./install.sh install --lang=fr # French (default)结构
open-flow/
├── agents/ # Custom agents (i18n)
│ ├── fr/ # French agents
│ │ ├── executeur.md
│ │ ├── quality.md
│ │ └── ...
│ └── en/ # English agents
│ ├── executor.md
│ ├── quality.md
│ └── ...
├── skills/ # Custom skills (i18n)
│ ├── fr/ # French skills
│ │ └── /SKILL.md
│ └── en/ # English skills
│ └── /SKILL.md
├── servers/ # MCP servers
│ ├── notify/ # Notification MCP server
│ │ ├── server.py # MCP server (tool: ask_user)
│ │ ├── notifier.py # PyObjC native notifications
│ │ └── configure.py # Auto-configuration script
│ └── screenshot/ # Screenshot MCP server
│ ├── server.py # MCP server (tool: screenshot)
│ ├── screenshotter.py # PyObjC screen capture
│ └── configure.py # Auto-configuration script
├── roadmap/ # Project roadmap
│ ├── README.md # Task tracking + methodology
│ └── plan-XX-*.md # Immutable implementation plans
├── maintenance/ # Project health monitoring
│ ├── reports/ # Generated health reports
│ ├── templates/ # Report templates
│ └── metrics/ # Metrics history (JSON)
├── install.sh # Installation script
├── AGENTS.fr.md # Global rules (French)
└── AGENTS.en.md # Global rules (English)BMAD方法论(4个阶段)
BMAD =构建更多,建筑师梦想-人工智能驱动的敏捷开发方法
Phase 1: ANALYSIS (Optional)
└─> Analyst → Product Brief, Research
Phase 2: PLANNING
└─> PM → PRD (Product Requirements Document)
Phase 3: SOLUTIONING
├─> UX Designer → UX Design
├─> Architect → Architecture Document
└─> PM → Epics & User Stories
Phase 4: IMPLEMENTATION
├─> SM (Scrum Master) → Sprint Planning, Stories
├─> Dev (Developer) → Implementation (TDD)
├─> TEA (Test Architect) → Test Framework, Automation
└─> Tech Writer → Documentation
QUICK FLOW (Alternative rapide)
└─> Quick Flow → Tech Spec → Quick Dev → Code ReviewBMAD生命周期
- 分析 (可选):头脑风暴、研究、产品简报
- 规划 :用户访谈→ PRD创建
- 固溶 : UX → 建筑→ 史诗与故事
- 实施 :Sprint计划→ 故事创作→ TDD → 测试→ 审查
- 快速流动 :技术规格→ 实施→ 评论(倾倒娇小特征)
验证阶段
当Executeur完成实现时,它:
- 启动应用程序(
make run &) - 产生 测试场景 以具体行动
- 向用户呈现验证清单
- 通过以下方式通知 主控程序
ask_user - 迭代直到所有场景都通过
验证输出示例:
### Scenario 1 : [Main behavior]
1. Click on [element]
2. Enter [value] in field
3. **Expected** : [visible result]
### Scenario 2 : [Edge case]
1. [concrete action]
2. **Expected** : [expected behavior]代理商BMAD
| 代理 | 角色 | 阶段 | 关键工作流 |
|---|---|---|---|
| 分析师 | 业务分析 | 1-分析 | 头脑风暴、研究、产品简报 |
| 项目经理 | 产品经理 | 2-策划 | PRD创作、史诗和故事 |
| 用户体验设计师 | 用户体验 | 3-解决方案 | UX设计,线框 |
| 建筑师 | 系统架构 | 3-解决方案 | 架构文档 |
| SM | Scrum Master | 4-实施 | Sprint计划、故事创建 |
| 开发 | 开发人员 | 4-实施 | TDD实施,故事执行 |
| 茶 | 测试架构师 | 4-实现 | 测试框架、自动化、CI/CD |
| 技术撰稿人 | 文档 | 所有阶段 | 项目文档、图表、说明 |
| 快速流动 | 全栈独奏 | 快速流程 | 技术规格→ 实施→ 回顾 |
| BMad大师 | 编排器 | 所有阶段 | 任务/工作流列表,指导 |
如何调用
# Analysis Phase
/analyst # Business analysis, research, product brief
# Planning Phase
/pm # Create PRD, epics & stories
# Solutioning Phase
/ux-designer # UX design and wireframes
/architect # Architecture document
# Implementation Phase
/sm # Sprint planning, story creation
/dev # TDD implementation
/tea # Test framework, automation
# Documentation
/tech-writer # Documentation, diagrams
# Quick Flow (alternative)
/quick-flow # Rapid tech spec → implementation → review
# Orchestration
/bmad-master # Guidance, task lists, workflow orchestrationMCP服务器
通知服务器(ask_user)
用于代理用户通信的本地macOS通知工具。
工具: ask_user
参数:
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
title | string | 是 | 短标题(通知标题) |
question | string | 是 | 要问的问题 |
options | array | 否 | 可能选项列表 |
urgency | string | 否 | low, normal, high |
repo | string | 否 | 存储库名称 |
branch | string | 否 | 当前分支 |
agent | string | 否 | 代理名称 |
task | string | 否 | 任务标识符 |
使用策略:仅在代理说明中明确指示时使用。
安装:
./install.sh mcp这将:
- 在中创建虚拟环境
servers/notify/.venv - 安装依赖项(
mcp,pyobjc) - 配置
~/.config/opencode/opencode.json
屏幕截图服务器
用于捕获屏幕和窗口的原生macOS屏幕截图工具。
工具: screenshot
参数:
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
mode | string | 否 | screen 或 window (默认:屏幕) |
window_title | string | 如果模式=窗口 | 要捕获的窗口标题 |
screen_index | integer | 否 | 多监视器的屏幕索引(默认值:0) |
format | string | 否 | png 或 jpg (默认值:png) |
delay | number | 否 | 捕获前等待的秒数 |
需求:macOS屏幕录制权限。
技能BMAD
技能提供专业知识和通过以下方式加载的工作流程 /skill .
BMAD核心技能
| 技能 | 描述 | 使用人 |
|---|---|---|
bmad-workflow-status | 通过BMAD阶段跟踪项目进度 | 所有代理 |
bmad-prd | 创建产品需求文档 | PM |
bmad-architecture | 设计可扩展架构 | 架构师 |
bmad-ux-design | UX设计和UI规划 | UX设计师 |
bmad-epics-stories | 创建史诗和用户故事 | PM |
bmad-sprint-planning | 从史诗生成冲刺状态 | SM |
bmad-create-story | 创建开发人员就绪的故事 | SM |
bmad-dev-story | TDD实施工作流程 | 开发 |
bmad-code-review | 全面的代码审查流程 | 开发,快速流程 |
bmad-tech-spec | 创建技术规范 | 快速流程 |
bmad-quick-dev | 快速实施工作流程 | 快速流程 |
OpenFlow基础架构技能
| 技能 | 描述 |
|---|---|
clean-code | 清洁代码原则(命名、干燥、KISS) |
testability-patterns | SOLID,依赖注入模式 |
git-conventions | 常规提交、分支策略 |
notify | 何时使用ask_user MCP工具 |
命令
| 命令 | 描述 |
|---|---|
./install.sh | 安装所有(代理、技能、MCP服务器) |
./install.sh install --lang=en | 用英语安装 |
./install.sh install --lang=fr | 以法语安装(默认) |
./install.sh agents | 仅安装代理 |
./install.sh skills | 仅安装技能 |
./install.sh mcp | 仅配置MCP服务器 |
./install.sh status | 显示当前安装 |
./install.sh diff | 与已安装的版本进行比较 |
./install.sh backup | 创建当前配置的备份 |
./install.sh restore | 从备份还原 |
安装路径
| 类型 | 位置 |
|---|---|
| 代理商 | ~/.config/opencode/agent/ |
| 技能 | ~/.config/opencode/skill/ |
| 配置 | ~/.config/opencode/opencode.json |
| 备份 | ~/.opencode-backups/ |
发展
改进代理
- 编辑
.md文件在agents/ - 跑
./install.sh diff查看更改 - 跑
./install.sh agents安装 - 在OpenCode中测试
- 满意时承诺
提高技能
- 编辑
SKILL.md在skills// - 跑
./install.sh skills安装 - 测试用
/skill在OpenCode中
改进MCP服务器
- 编辑文件
servers/notify/ - 跑
./install.sh mcp重新配置 - 重新启动OpenCode以重新加载MCP服务器
备份系统
每次安装前都会自动创建备份:
~/.opencode-backups/
├── agents-YYYYMMDD_HHMMSS/
├── skills-YYYYMMDD_HHMMSS/
└── config-YYYYMMDD_HHMMSS/最大备份大小:20MB(先删除最旧的)。
许可证
个性化配置-适应您的需求。
