版本: 2.0.0
作者: OpenClaw Community
创建: 2026-03-28
更新: 2026-03-29
Auto Revolution 是一个自动化的 AI 自动进化系统,通过 Cron 心跳定时执行任务队列:
任务创建 → Cron 心跳 → 审阅→执行→审核 → 循环迭代 → 任务完成
与 Test-Driven Revolution (TDR) 的关系:
- Auto Revolution = 底层执行引擎(Cron 心跳自动执行)
- TDR = 用户 interface(AgentSkills 技能包,手动触发)
- 两者共享同一套配置和脚本,只是触发方式不同
触发方式对比:
| 系统 | 触发方式 | 适用场景 |
|---|---|---|
| Auto Revolution | Cron 定时任务(每 5 分钟) | 后台自动执行任务队列 |
| TDR | 用户说"用 TDR 创建 XX" | 主动开发新功能 |
- 自动评估复杂度/风险/时间要求
- 4 个评估维度:代码量/文件数/依赖/风险
- 自动推荐合适流程
| 流程 | 步骤 | 耗时 | 适用 |
|---|---|---|---|
| 简化流程 ⚡ | Executor | ~5m | 文档/简单 Bug |
| 完整流程 📊 | 审阅→执行→审核 | ~15m | 新功能/重构 |
| 高级流程 🏆 | 审阅→执行→审核 | ~15m | 核心/安全 |
- 分析后推荐流程
- 用户确认最终选择
- 支持手动覆盖
- 默认:
默认模型(代码能力强) - 除非: 用户特殊要求
enforceAudit: true- Executor 完成后必须经过 Auditor
- 审核失败打回重做(最多 3 次)
# 主 Agent 心跳 - 每 5 分钟
openclaw cron add --agent main \
--name "evolution-heartbeat" \
--schedule "*/5 * * * *" \
--message "node <workspace>/evolution/scripts/heartbeat-coordinator.js"
# 审计 Agent 心跳 - 每 5 分钟
openclaw cron add --agent auditor \
--name "evolution-auditor-heartbeat" \
--schedule "*/5 * * * *" \
--message "node <workspace>/evolution/scripts/auditor-heartbeat.js"cat > tasks/task-001.json << 'EOF'
{
"task_id": "task-001",
"title": "创建 HTTP 服务器",
"description": "创建一个 HTTP 服务器,监听 3000 端口",
"priority": "P1",
"status": "pending",
"flow": "full",
"subtasks": [
{"id": 0, "title": "创建 server.js", "description": "基础 HTTP 服务器"},
{"id": 1, "title": "添加路由", "description": "GET /health, GET /api/data"},
{"id": 2, "title": "编写测试", "description": "单元测试覆盖率>80%"}
]
}
EOF# 心跳每 5 分钟执行一次
# 或手动触发
node scripts/heartbeat-coordinator.js# 查看任务状态
cat tasks/task-001.json | jq '.status, .current_subtask'
# 查看事件日志
tail -f logs/events.log | jqevolution/
├── config/
│ └── models.json # 模型配置(超时/回退/强制审核)
├── tasks/
│ └── task-*.json # 任务队列
├── scripts/
│ ├── heartbeat-coordinator.js # 心跳协调器
│ ├── apply-review.js # 应用审阅结果
│ ├── security-scan.js # 安全扫描
│ └── ...
├── logs/
│ └── events.log # 事件日志(JSONL)
├── outputs/
│ └── ... # 执行输出
└── README.md # 本文档
位置: config/models.json
{
"roles": {
"reviewer": {
"primary": "高级模型",
"fallback": "备用模型"
},
"executor": "默认模型",
"auditor": {
"primary": "高级模型",
"fallback": "备用模型"
}
},
"timeouts": {
"reviewer": 300,
"executor": 300,
"auditor": 180
},
"enforceAudit": true,
"executorDefault": "默认模型"
}触发: 心跳检测到 status: pending 的任务
操作:
- 读取任务 JSON
- 评估复杂度/风险/时间要求
- 推荐流程(简化/完整/高级)
- 等待用户确认(如未指定 flow 字段)
超时: 300 秒
模型: 高级模型 → fallback → 备用模型
操作:
- 读取所有 reference_files
- 技术选型审查(依赖/场景/复杂度/集成)
- 判断 verdict(approve/revise/reject)
- 生成详细执行指令
超时: 300 秒
模型: 默认模型
操作:
- 严格按 Reviewer 指令执行
- 每步修改后运行验证命令
- 失败时尝试修复(最多 3 次)
- 输出 JSON 结果
超时: 180 秒
模型: 高级模型 → fallback → 备用模型
操作:
- 对比原始指令与执行结果
- 审核标准:指令遵循/代码质量/测试验证/技术选型
- 判断 verdict(pass/fail)
结果:
- pass → 更新任务 JSON,标记 completed
- fail → current_iteration++,打回重做(最多 3 次)
| 资源 | 位置 | 说明 |
|---|---|---|
| 任务队列 | tasks/ |
两个系统共享同一任务队列 |
| 模型配置 | config/models.json |
共享模型配置 |
| 执行脚本 | scripts/ |
共享执行逻辑 |
| 事件日志 | logs/events.log |
共享日志文件 |
| 输出目录 | outputs/ |
共享输出文件 |
好:
{
"subtasks": [
{"title": "创建 HTTP 服务器", "description": "监听 3000 端口"},
{"title": "添加路由", "description": "GET /health, GET /api/data"},
{"title": "编写测试", "description": "单元测试覆盖率>80%"}
]
}不好:
{
"subtasks": [
{"title": "完成整个项目"} // 太笼统
]
}- 文档更新 → 简化流程(快速、免费)
- 新功能 → 完整流程(有审核、免费)
- 安全修复 → 高级流程(顶级模型审核、付费)
- 建议间隔:5 分钟
- 避免过短:防止 API 限流
- 避免过长:任务执行延迟
- REVOLUTION-CONFIG.md - 完整流程说明
- MODEL-CONFIG.md - 模型配置详情
- AUTO-REVOLUTION-FLOW-DECISION.md - 流程选择指南
- Test-Driven Revolution (ClawHub) - TDR 技能页面
最后更新: 2026-03-29
维护者: OpenClaw Community