Multi Team Coding
完整的 AI 驱动编程工作流。包含:(1) 多团队并行开发(OpenClaw + Claude Code/Codex/OpenCode),(2) 一人公司模式(单日 90+ 提交),(3) Playwright 自动化测试(E2E/API/视觉/性能),(4) 自动 PR 管理和合并。适用于独立开发者、初创团队、开源项目维护。
安装 / 下载方式
TotalClaw CLI推荐
totalclaw install skilldb:longfer~multi-team-codingcURL直接下载,无需登录
curl -fsSL https://skills.taituai.com/api/skills/skilldb%3Alongfer~multi-team-coding/file -o multi-team-coding.mdGit 仓库获取源码
git clone https://github.com/openclaw/skills/commit/a99d241aca0c35560fecfcd42324df2a7a84f675# AI 驱动编程工作流
完整的自动化编程解决方案,从任务分配到测试、部署全流程自动化。
## 📚 目录
1. [多团队并行开发](#多团队并行开发)
2. [一人公司模式](#一人公司模式)
3. [Playwright 自动化测试](#playwright-自动化测试)
4. [快速开始](#快速开始)
5. [完整示例](#完整示例)
---
# 多团队并行开发
基于 OpenClaw + OpenCode 的自主工程团队模式,通过主 agent 编排多个 coding agent 并行工作,实现代码自动化。
## 核心理念
**编排器模式(Orchestrator Pattern)**:
- 主 agent(你)作为编排器,负责任务分解、分配和协调
- 多个 coding agent(Claude Code/Codex/OpenCode)作为工作团队
- 每个团队在独立的 git worktree 中工作,互不干扰
- 自动追踪进度、处理依赖、合并结果
**关键优势**:
- 并行执行,速度提升 2-5 倍
- 智能任务分解,自动识别依赖关系
- 实时进度监控,异常自动告警
- 自动冲突检测和解决建议
## 架构设计
```
主 Agent(编排器)
├── 任务分析器:分解需求为独立子任务
├── 任务调度器:分配任务给可用团队
├── 进度监控器:实时追踪各团队状态
├── 冲突检测器:识别潜在代码冲突
└── 结果集成器:合并各团队成果
工作团队(Coding Agents)
├── Team A: 独立 worktree + coding agent
├── Team B: 独立 worktree + coding agent
├── Team C: 独立 worktree + coding agent
└── Team N: 独立 worktree + coding agent
```
## 工作流程
### 1. 智能任务分解
主 agent 分析用户需求,自动识别:
- 独立模块(可并行)
- 依赖关系(需串行)
- 共享资源(需协调)
- 优先级排序
```bash
# 示例:构建电商系统
任务树:
├── [P0] 数据库设计(基础,其他依赖)
├── [P1] 并行组
│ ├── Team A: 用户认证模块
│ ├── Team B: 商品管理 API
│ └── Team C: 订单系统
└── [P2] 前端集成(依赖 P1 完成)
```
### 2. 动态工作空间创建
为每个团队自动创建隔离的工作环境:
```bash
# 主项目目录
PROJECT_ROOT=$(pwd)
WORKSPACE_BASE=/tmp/multi-team-$(date +%s)
# 创建任务状态追踪文件
cat > $WORKSPACE_BASE/status.json << 'EOF'
{
"project": "电商系统",
"started": "2026-03-09T07:00:00Z",
"teams": {},
"dependencies": {}
}
EOF
# 为每个团队创建 worktree
create_team_workspace() {
local team_name=$1
local task_desc=$2
local branch_name="team-${team_name}"
local work_dir="${WORKSPACE_BASE}/${team_name}"
git worktree add -b $branch_name $work_dir main
# 记录团队信息
echo "{\"status\": \"created\", \"task\": \"$task_desc\", \"dir\": \"$work_dir\"}" \
> $WORKSPACE_BASE/teams/${team_name}.json
}
```
### 3. 启动工作团队
使用统一的启动模板,支持多种 coding agent:
```bash
# 启动函数(支持 Claude Code/Codex/OpenCode)
start_team() {
local team_name=$1
local agent_type=$2 # claude, codex, opencode
local task_prompt=$3
local work_dir="${WORKSPACE_BASE}/${team_name}"
# 构建完整提示词
local full_prompt="
【团队】: $team_name
【任务】: $task_prompt
【要求】:
1. 遵循项目代码规范(参考 .editorconfig)
2. 编写单元测试(覆盖率 > 80%)
3. 更新相关文档
4. 提交前运行 lint 和 format
5. 提交信息格式:feat($team_name): 简短描述
【完成标准】:
- 所有测试通过
- 代码审查通过
- 文档完整
【完成后执行】:
git add . && git commit -m 'feat($team_name): 完成任务'
openclaw system event --text '✅ $team_name 完成:$task_prompt' --mode now
"
# 根据 agent 类型选择命令
case $agent_type in
claude)
bash pty:true workdir:$work_dir background:true \
command:"claude '$full_prompt'"
;;
codex)
bash pty:true workdir:$work_dir background:true \
command:"codex exec --full-auto '$full_prompt'"
;;
opencode)
bash pty:true workdir:$work_dir background:true \
command:"opencode run '$full_prompt'"
;;
esac
# 记录 session ID
echo $! > $WORKSPACE_BASE/teams/${team_name}.pid
}
# 示例:启动多个团队
start_team "auth" "claude" "实现用户认证模块:注册、登录、JWT、密码加密"
start_team "products" "codex" "实现商品管理 API:CRUD、分类、搜索、库存"
start_team "orders" "opencode" "实现订单系统:创建、支付、状态管理、历史"
```
### 4. 实时进度监控
主 agent 持续监控各团队状态:
```bash
# 监控脚本
monitor_teams() {
local workspace=$1
while true; do
echo "=== 团队状态 $(date +%H:%M:%S) ==="
for team_file in $workspace/teams/*.json; do
team_name=$(basename $team_file .json)
pid_file="$workspace/teams/${team_name}.pid"
if [ -f "$pid_file" ]; then
pid=$(cat $pid_file)
# 检查进程状态
if ps -p $pid > /dev/null; then
# 获取最新输出
process action:log sessionId:$pid limit:5
echo " [$team_name] 🟢 运行中"
else
echo " [$team_name] ✅ 已完成"
fi
fi
done
echo ""
sleep 30
done
}
# 后台启动监控
monitor_teams $WORKSPACE_BASE &
MONITOR_PID=$!
```
### 5. 智能冲突检测
在合并前自动检测潜在冲突:
```bash
# 冲突检测函数
detect_conflicts() {
local workspace=$1
local conflicts=()
echo "🔍 检测潜在冲突..."
# 收集所有团队修改的文件
declare -A file_teams
for team_dir in $workspace/*/; do
team_name=$(basename $team_dir)
# 获取该团队修改的文件
cd $team_dir
modified_files=$(git diff --name-only main)
for file in $modified_files; do
if [ -n "${file_teams[$file]}" ]; then
conflicts+=("⚠️ 冲突:$file 被 ${file_teams[$file]} 和 $team_name 同时修改")
else
file_teams[$file]=$team_name
fi
done
done
# 报告冲突
if [ ${#conflicts[@]} -gt 0 ]; then
echo "❌ 发现 ${#conflicts[@]} 个潜在冲突:"
printf '%s\n' "${conflicts[@]}"
return 1
else
echo "✅ 无冲突,可以安全合并"
return 0
fi
}
```
### 6. 自动结果集成
智能合并各团队成果:
```bash
# 集成函数
integrate_results() {
local workspace=$1
local project_root=$2
cd $project_root
echo "🔄 开始集成各团队成果..."
# 按依赖顺序合并
local merge_order=("auth" "products" "orders" "frontend")
for team_name in "${merge_order[@]}"; do
echo " 合并 $team_name..."
# 合并分支
if git merge --no-ff team-${team_name} -m "feat: 集成 $team_name 模块"; then
echo " ✅ $team_name 合并成功"
else
echo " ❌ $team_name 合并失败,需要手动解决"
git merge --abort
# 调用 AI 辅助解决冲突
bash pty:true command:"claude '解决以下合并冲突:
$(git diff --name-only --diff-filter=U)
要求:
1. 分析冲突原因
2. 保留正确的代码
3. 确保功能完整
4. 提交解决方案
'"
return 1
fi
done
echo "✅ 所有模块集成完成"
}
```
### 7. 自动化测试验证
集成后自动运行测试套件:
```bash
# 验证函数
validate_integration() {
local project_root=$1
cd $project_root
echo "🧪 运行集成测试..."
# 安装依赖
if [ -f "package.json" ]; then
npm install
elif [ -f "requirements.txt" ]; then
pip install -r requirements.txt
fi
# 运行测试
if npm test; then
echo "✅ 所有测试通过"
return 0
else
echo "❌ 测试失败,回滚集成"
git reset --hard HEAD~1
return 1
fi
}
```
---
# 一人公司模式
基于 Elvis Sun 的实战经验:**单日 94 次提交,30 分钟合并 7 个 PR,完全不打开编辑器**。
## 核心理念
**本地优先 + 自动化 + 批量处理**
- AI 跑在本地,不依赖云端网页
- 不需要一直盯着屏幕
- 不需要频繁点击权限弹窗
- 让 AI 团队自主工作,你只需要审查结果
## 快速启动
```bash
cd your-project
bash ~/.openclaw/workspace/skills/multi-team-coding/examples/one-person-company.sh
```
详细文档:[ONE-PERSON-COMPANY.md](./ONE-PERSON-COMPANY.md)
---
# Playwright 自动化测试
基于 Claude Code + Playwright CLI 实现端到端测试自动化。
## 核心优势
- **高效**:26K tokens vs 114K tokens (MCP)
- **可靠**:基于可访问性树,不依赖截图
- **并行**:多浏览器、多测试同时运行
- **持久化**:保存认证状态,避免重复登录
## 快速启动
```bash
cd your-project
bash ~/.openclaw/workspace/skills/multi-team-coding/examples/playwright-test-workflow.sh
```
详细文档:[PLAYWRIGHT-AUTOMATION.md](./PLAYWRIGHT-AUTOMATION.md)
---
# 快速开始
## 场景 1:批量修复 Bug
```bash
# 自动从 GitHub Issues 获取所有 bug
# 并行启动多个 Claude Code 团队修复
cd your-project
bash ~/.openclaw/workspace/skills/multi-team-coding/examples/claude-code-teams.sh 5
```
## 场景 2:开发新功能 + 自动测试
```bash
# 1. 开发功能
bash ~/.openclaw/workspace/skills/multi-team-coding/examples/claude-code-teams.sh
# 2. 生成并运行测试
bash ~/.openclaw/workspace/skills/multi-team-coding/examples/playwright-test-workflow.sh
```
## 场景 3:一人公司全自动模式
```bash
# 早上启动,下午收获
bash ~/.openclaw/workspace/skills/multi-team-coding/examples/one-person-company.sh
```
---
# 完整示例
## 电商系统开发(端到端)
```bash
#!/bin/bash
# 完整的电商系统开发流程
PROJECT_ROOT=~/Projects/ecommerce
cd $PROJECT_ROOT
echo "🚀 启动电商系统开发"
# 1. 并行开发核心功能
echo "📝 Step 1: 并行开发功能模块..."
bash ~/.openclaw/workspace/skills/multi-team-coding/examples/claude-code-teams.sh 5
# 等待开发完成
echo "⏳ 等待开发完成..."
wait
# 2. 生成自动化测试
echo "🧪 Step 2: 生成自动化测试..."
bash ~/.openclaw/workspace/skills/multi-team-coding/examples/playwright-test-workflow.sh << EOF
1
EOF
# 等待测试生成
wait
# 3. 运行测试
echo "🚀 Step 3: 运行测试..."
bash ~/.openclaw/workspace/skills/multi-team-coding/examples/playwright-test-workflow.sh << EOF
2
EOF
# 4. 自动合并 PR
echo "🔄 Step 4: 合并通过的 PR..."
gh pr list --state open --json number,statusCheckRollup | \
jq -r '.[] | select(.statusCheckRollup[0].state == "SUCCESS") | .number' | \
while read pr; do
gh pr merge $pr --squash --delete-branch
done
echo "🎉 完成!"
echo "📊 查看报告:"
echo " - 开发报告: /tmp/claude-teams-*/report-*.md"
echo " - 测试报告: playwright-report/index.html"
```
--