SuperAPI AI 工具集

agent-orchestrator

智能体与模型

查看项目

更新于 10-16 04:20

技能介绍

用途

Agent Orchestrator 是一个元智能体(meta-agent)技能,用于编排复杂任务。它把宏观任务分解为子任务,生成自主的子智能体,并整合它们的工作成果。

主要能力

该技能围绕六个阶段的工作流展开:

阶段一:任务分解 分析宏观任务,将其拆分为独立、可并行的子任务。步骤包括:确定最终目标与成功标准;列出所需的主要组件或交付物;确定组件之间的依赖关系;将独立工作归入并行子任务;为顺序工作创建依赖图。分解原则:每个子任务应能独立完成;尽量减少智能体之间的依赖;优先选择范围较广的自主任务,而非狭窄且相互依赖的任务;为每个子任务设定明确的成功标准。

阶段二:智能体生成 为每个子任务创建子智能体工作区,命令为:

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。

阶段三:智能体派发 初始化每个智能体:将任务指令写入 inbox/instructions.md;将所需输入文件复制到 inbox/;将 status.json 设为 {"state": "pending", "started": null};使用 Task 工具生成智能体:

Task( description=f"{agent_name}: {brief_description}", prompt=f""" Read the skill at {agent_path}/SKILL.md and follow its instructions. Your workspace is {agent_path}/workspace/ Read your task from {agent_path}/inbox/instructions.md Write all outputs to {agent_path}/outbox/ Update {agent_path}/status.json when complete. """, subagent_type="general-purpose" )

阶段四:监控(基于检查点) 对于完全自主的智能体,只需最少的监控。可周期性检查每个智能体的 status.json,智能体完成时会更新该文件。示例:

def check_agent_status(agent_path): status = read_json(f"{agent_path}/status.json") return status.get("state") == "completed"

阶段五:整合 所有智能体完成后:从每个智能体的 outbox/ 收集输出;根据成功标准验证交付物;按需合并或集成输出;若多个智能体涉及共享关注点则解决冲突;生成所有已完成工作的总结。整合模式示例:

for agent in agents: outputs = glob(f"{agent.path}/outbox/*") validate_outputs(outputs, agent.success_criteria) consolidated_results.extend(outputs)

阶段六:解散与总结 整合之后:归档智能体工作区(可选);清理临时文件;生成最终总结,包括每个智能体完成了什么、遇到的问题、最终交付物位置、时间/资源指标。命令为:

python3 scripts/dissolve_agents.py --workspace <path> --archive

使用方式

基于文件的通信协议(详见 references/communication-protocol.md):

  • inbox/ —— 对智能体只读,由编排器写入
  • outbox/ —— 对智能体只写,由编排器读取
  • status.json —— 智能体更新状态:pending → running → completed | failed

示例:研究报报任务

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

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

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

适用场景

适合需要将复杂任务拆解为多个可并行或按依赖顺序执行的子任务,并由多个自主子智能体分工完成的场景,例如市场分析报告、多组件交付物等。

子智能体模板

references/sub-agent-templates.md 中提供常见智能体类型的预置模板:

  • Research Agent —— 网络搜索、数据收集
  • Code Agent —— 实现、测试
  • Analysis Agent —— 数据处理、模式发现
  • Writer Agent —— 内容创作、文档编写
  • Review Agent —— 质量保证、编辑
  • Integration Agent —— 合并输出、解决冲突

最佳实践

  • 从小处着手 —— 先从 2-3 个智能体开始,随模式出现再扩展
  • 边界清晰 —— 每个智能体负责特定的交付物
  • 显式交接 —— 使用结构化文件进行智能体通信
  • 优雅失败 —— 智能体报告失败,编排器处理恢复
  • 记录一切 —— 状态文件跟踪进度以便调试

限制

资料未提供关于收费、价格、平台支持范围、性能效果等方面的信息,暂未提供。