OA0 = Omni AI 0
OA0 是一个探索 AI 的论坛
现在注册
已注册用户请  登录
OA0  ›  技能包  ›  agent-orchestrator:用于协调与拆解复杂任务的元智能体技能

agent-orchestrator:用于协调与拆解复杂任务的元智能体技能

 
  ocmuuu ·  2026-02-05 13:50:53 · 3 次点击  · 0 条评论  

名称: agent-orchestrator
描述: |
用于通过自主子智能体编排复杂任务的元智能体技能。将宏观任务分解为子任务,生成带有动态创建 SKILL.md 文件的专用子智能体,协调基于文件的通信,整合结果,并在完成后解散智能体。

强制触发词:编排、多智能体、任务分解、生成智能体、子智能体、并行智能体、智能体协调、任务拆解、元智能体、智能体工厂、任务委派

智能体编排器

通过将复杂任务分解为子任务、生成自主子智能体并整合其工作成果,来编排复杂任务。

核心工作流

阶段 1:任务分解

分析宏观任务,并将其分解为独立的、可并行执行的子任务:

1. 确定最终目标和成功标准
2. 列出所有需要的主要组件/交付物
3. 确定组件间的依赖关系
4. 将独立工作分组为并行子任务
5. 为顺序性工作创建依赖关系图

分解原则:
- 每个子任务应能独立完成
- 最小化智能体间的依赖
- 优先选择宽泛、自主的任务,而非狭窄、相互依赖的任务
- 为每个子任务包含清晰的完成标准

阶段 2:智能体生成

为每个子任务创建一个子智能体工作空间:

python3 scripts/create_agent.py <agent-name> --workspace <path>

这将创建:

<workspace>/<agent-name>/
├── SKILL.md          # 为该智能体生成的技能文件
├── inbox/            # 接收输入文件和指令
├── outbox/           # 交付完成的工作成果
├── workspace/        # 智能体的工作区
└── status.json       # 智能体状态跟踪文件

动态生成 SKILL.md,包含:
- 智能体的具体角色和目标
- 所需的工具和能力
- 输入/输出规范
- 成功标准
- 通信协议

预置模板请参见 references/sub-agent-templates.md

阶段 3:智能体派遣

通过以下步骤初始化每个智能体:

  1. 将任务指令写入 inbox/instructions.md
  2. 将所需的输入文件复制到 inbox/
  3. status.json 设置为 {"state": "pending", "started": null}
  4. 使用 Task 工具生成智能体:
# 使用生成的技能生成智能体
Task(
    description=f"{agent_name}: {brief_description}",
    prompt=f"""
    请阅读位于 {agent_path}/SKILL.md 的技能文件并遵循其指示。
    您的工作空间是 {agent_path}/workspace/
    从 {agent_path}/inbox/instructions.md 读取您的任务
    将所有输出写入 {agent_path}/outbox/
    完成后更新 {agent_path}/status.json。
    """,
    subagent_type="general-purpose"
)

阶段 4:监控(基于检查点)

对于完全自主的智能体,只需最小程度的监控:

# 检查智能体完成状态
def check_agent_status(agent_path):
    status = read_json(f"{agent_path}/status.json")
    return status.get("state") == "completed"

定期检查每个智能体的 status.json。智能体在完成时会更新此文件。

阶段 5:结果整合

当所有智能体完成后:

  1. 收集输出:从每个智能体的 outbox/ 收集输出
  2. 验证交付物:根据成功标准验证交付物
  3. 合并/集成:根据需要合并或集成输出
  4. 解决冲突:如果多个智能体处理了共享内容,则解决冲突
  5. 生成摘要:生成所有已完成工作的摘要
# 整合模式示例
for agent in agents:
    outputs = glob(f"{agent.path}/outbox/*")
    validate_outputs(outputs, agent.success_criteria)
    consolidated_results.extend(outputs)

阶段 6:解散与总结

整合完成后:

  1. 归档智能体工作空间(可选)
  2. 清理临时文件
  3. 生成最终总结
    • 每个智能体完成了什么
    • 遇到的任何问题
    • 最终交付物的位置
    • 时间/资源指标
python3 scripts/dissolve_agents.py --workspace <path> --archive

基于文件的通信协议

详细规范请参见 references/communication-protocol.md

快速参考:
- inbox/ - 智能体只读,由编排器写入
- outbox/ - 智能体只写,由编排器读取
- status.json - 智能体更新状态:pendingrunningcompleted | failed

示例:研究报告任务

宏观任务:"创建一份全面的市场分析报告"

分解:
├── 智能体:data-collector
│   └── 收集市场数据、竞争对手信息、趋势
├── 智能体:analyst
│   └── 分析收集的数据,识别模式
├── 智能体:writer
│   └── 根据分析起草报告章节
└── 智能体:reviewer
    └── 审查、编辑并最终确定报告

依赖关系:data-collector → analyst → writer → reviewer

子智能体模板

常见智能体类型的预置模板位于 references/sub-agent-templates.md

  • 研究型智能体 - 网络搜索、数据收集
  • 代码型智能体 - 实现、测试
  • 分析型智能体 - 数据处理、模式发现
  • 写作型智能体 - 内容创作、文档编写
  • 审查型智能体 - 质量保证、编辑
  • 集成型智能体 - 合并输出、解决冲突

最佳实践

  1. 从小规模开始 - 从 2-3 个智能体开始,随着模式出现再扩展
  2. 明确边界 - 每个智能体负责特定的交付物
  3. 显式交接 - 使用结构化文件进行智能体间通信
  4. 优雅处理失败 - 智能体报告失败;编排器处理恢复
  5. 记录一切 - 状态文件跟踪进度以便调试
3 次点击  ∙  0 人收藏  
登录后收藏  
目前尚无回复
0 条回复
About   ·   Help   ·    
OA0 - Omni AI 0 一个探索 AI 的社区
沪ICP备2024103595号-2
Developed with Cursor