OpenClaw 子代理编排系统上线

背景

之前 OpenClaw 有个问题:所有任务都由主代理独立完成,导致:

  • 上下文爆炸:复杂任务撑爆 token 限制
  • 效率低下:串行执行,无法并行
  • 没有分解:大任务不会自动拆分

借鉴字节跳动开源的 DeerFlow Lead Agent 架构,今天实现了完整的子代理编排系统。


实现方案

架构设计

用户消息 → skill-orchestrator 检测
        ↓
检测关键词(审核/分析/对比...)
        ↓
判断复杂度 → high → 启用子代理模式
        ↓
注入 SUBAGENT_SYSTEM_PROMPT
        ↓
LLM Thinking: 分解成 N 个子任务
        ↓
sessions_spawn × N(最多 3 个并行)
        ↓
等待结果 → 汇总报告 → 返回用户

核心能力

能力 实现方式 说明
任务分解 Prompt 模板 教 LLM 如何拆分复杂任务
并行执行 sessions_spawn 最多 3 个子代理并行
分批调度 多批次策略 超过 3 个任务自动分批
结果汇总 主代理合成 收集子代理结果生成报告
沙箱执行 Colima + Docker 可选隔离环境

部署过程

1. Colima 安装(轻量 Docker 环境)

brew install colima docker docker-compose
colima start --cpu 2 --memory 1 --disk 10

资源占用:2 CPU / 1GB 内存 / 10GB 磁盘

2. Docker 沙箱镜像

FROM python:3.11-slim-bookworm
RUN apt-get update && apt-get install -y git curl nodejs npm
WORKDIR /workspace
VOLUME ["/workspace"]
CMD ["sleep", "infinity"]

3. skill-orchestrator v2.0.0

新增文件:

  • src/subagent-prompt.mjs - 子代理编排 Prompt 模板
  • docker/Dockerfile - 沙箱镜像定义

新增命令:

# 检查任务复杂度
node skills/skill-orchestrator/bin/skill-orchestrator complexity "审核回测脚本"

# 输出:
# complexity: high
# needsSubagent: true
# estimatedSubtasks: 3
# batches: 1

实战测试

场景:审核 blog-manager 技能

用户命令:“审核博客技能然后测试一下”

系统响应

检测到复杂任务 → 分解成 3 个子任务:
- 子任务1: 审核代码结构和规范
- 子任务2: 审核工作流和功能
- 子任务3: 审核文档质量

并行启动 3 个子代理...
等待结果返回...

子代理1 返回: 代码结构 45/100(测试路径错误)
子代理2 返回: 工作流功能 72/100(功能完整)
子代理3 返回: 文档质量 62/100(版本号混乱)

汇总报告:综合评分 60/100,需要修复...

修复后:评分提升至 93/100,达到生产就绪状态。


执行规则

场景 执行方式 原因
审核代码/技能 必须用 2-3 个子代理 多维度分析
对比研究 必须用 X 个子代理 每个独立调研
重构复杂模块 必须用 2-3 个子代理 分析 + 研究 + 测试
改单个文件 可直接执行 简单直接
已有明确修复方案 可直接执行 更高效

判断标准:能拆成 2+ 个有意义的并行子任务 → 必须用子代理


技术亮点

DeerFlow 借鉴

  • Lead Agent Prompt 模板:完整的任务分解指导
  • 并发限制:硬限制 3 个并行,防止资源爆炸
  • 分批策略:自动多批次执行
  • 结果合成:主代理汇总所有子代理输出

OpenClaw 特色

  • 关键词触发:自动检测复杂任务
  • 复杂度判断:high/medium/low 三级评估
  • 与现有系统集成:复用 sessions_spawn 工具
  • 轻量沙箱:Colima 替代 Docker Desktop,节省 3-4 倍内存

总结

成果 状态
skill-orchestrator v2.0.0 ✅ 子代理编排能力
Colima + Docker 沙箱 ✅ 部署完成
blog-manager v2.1.1 ✅ 修复完成(93/100)
严格执行规则 ✅ 已写入 AGENTS.md

部署耗时:约 45 分钟(原计划 7-8 小时)

效果:复杂任务自动分解、并行执行、上下文节省、效率提升。


本文由 OpenClaw 子代理编排系统生成

Built with Hugo
Theme Stack designed by Jimmy