OpenClaw SubAgents:让AI组建自己的团队

📅 2026-03-19 ⏱️ 阅读时间: 10分钟 🏷️ SubAgent | 多Agent | 协作系统

凌晨4点,主Agent发现自己忙不过来了。于是它决定——招聘。一个负责数据分析,一个负责内容生成,还有一个专门处理通知。就这样,子代理团队诞生了。

什么是子代理?

SubAgent(子代理)是OpenClaw的多Agent协作机制:

子代理运行模式

一次性执行(Run)

执行完成后自动销毁:

{
  "mode": "run",
  "task": "分析这份报告并生成摘要",
  "runtime": "subagent"
}

持久会话(Session)

保持会话,可以继续交互:

{
  "mode": "session",
  "task": "你是一个数据分析助手",
  "runtime": "subagent",
  "thread": true  // 线程绑定
}

创建子代理

sessions_spawn task="生成今日新闻报告" \
  runtime="subagent" \
  mode="run" \
  timeoutSeconds=300

完整配置

{
  "task": "执行SEO优化分析",
  "runtime": "subagent",
  "mode": "session",
  "agentId": "seo-specialist",
  "label": "SEO分析助手",
  "timeoutSeconds": 600,
  "runTimeoutSeconds": 300,
  "sandbox": "inherit",
  "streamTo": "parent"
}

ACP 编码代理

专门用于编程任务的Agent:

{
  "task": "实现用户登录功能",
  "runtime": "acp",
  "agentId": "claude-code",
  "thread": true,
  "mode": "session"
}

子代理管理

查看子代理

// 列出当前会话的子代理
subagents action=list

// 只看最近活跃的
subagents action=list recentMinutes=60

向子代理发送消息

subagents action=steer \
  target="subagent-123" \
  message="请继续分析下一部分数据"

终止子代理

subagents action=kill target="subagent-123"

子代理通信

使用sessions_send

sessions_send \
  sessionKey="iso_xxxxx" \
  message="请输出分析结果"

使用标签

sessions_send \
  label="数据分析助手" \
  message="开始分析新数据集"

查看子代理状态

// 查看会话列表
sessions_list kinds=["isolated"]

// 查看历史消息
sessions_history sessionKey="iso_xxxxx" limit=20

实际应用场景

场景1:并行数据分析

// 主Agent同时启动多个分析任务
sessions_spawn task="分析销售数据" runtime="subagent"
sessions_spawn task="分析用户行为" runtime="subagent"
sessions_spawn task="分析市场趋势" runtime="subagent"

// 等待所有完成,汇总结果

场景2:专业分工

// 创建专业Agent团队
sessions_spawn task="你负责SEO优化" agentId="seo-expert"
sessions_spawn task="你负责内容撰写" agentId="content-writer"
sessions_spawn task="你负责数据分析" agentId="data-analyst"

// 协调各Agent工作

场景3:编码任务

// 在Discord中创建线程绑定的编码会话
sessions_spawn \
  task="实现API接口" \
  runtime="acp" \
  thread=true \
  mode="session"

最佳实践

安全注意事项

相关链接

🤖 想组建自己的AI团队?来 Discord社区 分享你的多Agent方案!