多代理工作流导航器
启动并行Claude代理以实现具有编排、实施、测试、审查和文档编制阶段的任务。
何时调用
自动调用当用户说:
- “为TASK-XX运行多代理工作流”
- “为此功能使用并行代理”
- “多Claude用于实现X”
- “为此任务生成代理”
- “在TASK-XX上启动多代理”
不要调用如果:
- 多Claude脚本未安装(先使用nav-install-multi-claude)
- 用户询问多代理的信息问题
- 任务微不足道(单一文件更改)
先决条件
运行前检查:
navigator-multi-claude.sh在PATH中- Git仓库干净(无未提交更改)
- Navigator初始化(
.agent/存在)
执行步骤
第1步:验证先决条件
# 检查脚本是否安装
if ! command -v navigator-multi-claude.sh &> /dev/null; then
echo "❌ 多Claude脚本未安装"
echo ""
echo "首先安装:"
echo ' “安装多Claude工作流”'
exit 1
fi
# 检查Navigator初始化
if [ ! -d ".agent" ]; then
echo "❌ 此项目中未初始化Navigator"
echo ""
echo "首先初始化:"
echo ' “在此项目中初始化Navigator”'
exit 1
fi
# 检查git干净
if [ -n "$(git status --porcelain)" ]; then
echo "⚠️ 检测到未提交更改"
echo ""
git status --short
echo ""
echo "多代理工作流最好在干净的git状态下工作。"
echo "提交或暂存更改后再继续?"
fi
echo "✅ 验证先决条件"
第2步:解析任务信息
从用户请求中提取:
- 任务ID:TASK-XX(如果提到)
- 任务描述:要实现什么
如果提到TASK-XX,读取任务文件:
if [ -n "$TASK_ID" ]; then
TASK_FILE=".agent/tasks/${TASK_ID}*.md"
if ls $TASK_FILE 1> /dev/null 2>&1; then
TASK_DESC=$(head -1 $TASK_FILE | sed 's/# //')
echo "📋 任务:$TASK_DESC"
fi
fi
第3步:选择工作流类型
向用户展示选项:
哪种工作流类型?
1. **POC(2阶段)** - 快速验证
- 规划 → 实施
- ~3分钟
- 最适合:简单功能,实用工具
2. **标准(4阶段)** - 完整的质量门
- 规划 → 实施 → 测试 + 文档 → 审查
- ~6分钟
- 最适合:生产功能
3. **完整(6阶段)** - 带简化
- 规划 → 实施 → 简化 → 测试 + 文档 → 审查 → 集成
- ~8分钟
- 最适合:复杂功能,重构
第4步:生成会话ID
TASK_NUM=$(echo "$TASK_ID" | grep -oE '[0-9]+' || echo "0")
SESSION_ID="task-${TASK_NUM}-$(date +%s)"
echo "📌 会话:$SESSION_ID"
第5步:创建状态文件
cat > ".agent/tasks/${SESSION_ID}-state.json" << EOF
{
"session_id": "${SESSION_ID}",
"task": "${TASK_DESC}",
"task_id": "${TASK_ID}",
"workflow_type": "${WORKFLOW_TYPE}",
"phases_completed": [],
"current_phase": "init",
"started_at": "$(date -u +%Y-%m-%dT%H:%M:%SZ)",
"status": "in_progress"
}
EOF
第6步:启动工作流
echo "🚀 启动多代理工作流..."
echo ""
case $WORKFLOW_TYPE in
poc)
navigator-multi-claude-poc.sh "$TASK_DESC"
;;
standard)
navigator-multi-claude.sh "$TASK_DESC"
;;
full)
navigator-multi-claude.sh "$TASK_DESC" --with-simplify
;;
esac
第7步:提供仪表板
echo ""
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
echo "使用仪表板监控进度?"
echo ""
echo "在另一个终端中运行:"
echo " ./scripts/multi-claude-dashboard.sh $SESSION_ID"
echo ""
echo "或查看标记日志:"
echo " tail -f .agent/.marker-log"
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
输出格式
┌─────────────────────────────────────────────────────┐
│ 多代理工作流:task-36-1705123456 │
├─────────────────────────────────────────────────────┤
│ 任务:实现用户认证 │
│ 类型:标准(4阶段) │
├─────────────────────────────────────────────────────┤
│ 阶段: │
│ 1. 规划 → 协调者 │
│ 2. 实施 → 实施者 │
│ 3. 测试 → 测试者(并行) │
│ 3. 文档 → 文档编写者(并行) │
│ 4. 审查 → 审查者 │
├─────────────────────────────────────────────────────┤
│ 监控:./scripts/multi-claude-dashboard.sh │
│ 日志:tail -f .agent/.marker-log │
└─────────────────────────────────────────────────────┘
🚀 启动工作流...
错误处理
脚本未安装
❌ 多Claude脚本未安装
多代理工作流需要编排脚本。
安装方法:
"安装多Claude工作流"
然后重试:
"为TASK-XX运行多代理工作流"
未提交更改
⚠️ 检测到未提交更改
M src/auth/login.ts
?? src/utils/temp.ts
多代理工作流创建分支和并行更改。
处理未提交更改可能会导致冲突。
选项:
1. 首先提交更改:git add -A && git commit -m "WIP"
2. 暂存更改:git stash
3. 无论如何继续(有风险)
哪个选项?[1/2/3]
工作流已在进行中
⚠️ 工作流已在进行中
会话:task-35-1705120000
状态:IMPL阶段运行中
开始时间:5分钟前
选项:
1. 恢复现有工作流
2. 取消现有并开始新的
3. 等待完成
哪个选项?[1/2/3]
配置
在.agent/.nav-config.json中:
{
"multi_agent": {
"enabled": true,
"default_workflow": "standard",
"auto_dashboard": false,
"parallel_limit": 3,
"retry_attempts": 2,
"phase_timeout_seconds": 180
}
}
成功标准
当以下条件满足时,工作流启动成功:
- [ ] 验证先决条件
- [ ] 生成会话ID
- [ ] 创建状态文件
- [ ] 启动工作流脚本
- [ ] 显示仪表板指示
工作流阶段
POC(2阶段)
规划 ─────► 实施 ─────► 完成
标准(4阶段)
┌─► 测试 ────┐
规划 ─► 实施 ───┤ ├─► 审查 ─► 完成
└─► 文档 ───────┘
完整(6阶段)
┌─► 测试 ────┐
规划 ─► 实施 ─► 简化 ───┤ ├─► 审查 ─► 集成 ─► 完成
└─► 文档 ───────┘
角色模板
templates/multi-claude/orchestrator-claude.md(~4k令牌)templates/multi-claude/implementer-claude.md(~5k令牌)templates/multi-claude/tester-claude.md(~4k令牌)templates/multi-claude/reviewer-claude.md(~4k令牌)templates/multi-claude/documenter-claude.md(~4k令牌)templates/multi-claude/simplifier-claude.md(~5k令牌)
总计:~27k令牌跨6个角色(与每个角色加载整个项目上下文50k+相比)
示例
示例1:使用POC快速功能
用户:“为添加注销按钮运行多代理POC”
✅ 验证先决条件
📋 任务:添加注销按钮
📌 会话:task-0-1705123456
🚀 启动POC工作流(2阶段)...
第1阶段:规划(协调者)
第2阶段:实施(实施者)
监控:./scripts/multi-claude-dashboard.sh task-0-1705123456
示例2:TASK-XX的标准工作流
用户:“为此TASK-36使用并行代理”
✅ 验证先决条件
📋 任务:多代理生产抛光(来自TASK-36)
📌 会话:task-36-1705123456
🚀 启动标准工作流(4阶段)...
第1阶段:规划
第2阶段:实施
第3阶段:测试 + 文档(并行)
第4阶段:审查
在另一个终端中可用仪表板。
示例3:带简化的完整工作流
用户:“多Claude完整工作流用于身份验证重构”
✅ 验证先决条件
📋 任务:身份验证重构
📌 会话:task-0-1705123456
🚀 启动完整工作流(6阶段)...
包括代码简化阶段以改进清晰度。
预期持续时间:~8分钟
监控进度:
./scripts/multi-claude-dashboard.sh task-0-1705123456
相关技能
- nav-install-multi-claude:安装编排脚本
- nav-task:创建任务文档
- nav-marker:上下文保留在阶段之间
- nav-simplify:代码简化(在完整工作流中使用)
注释
- 多代理工作流生成无头Claude实例
- 每个角色获得新的上下文(无交叉污染)
- 标记文件协调阶段转换
- 仪表板提供实时可见性
- 状态文件在中断后启用恢复