fischer-agentkit/docs/brainstorms/2026-06-15-autonomous-task-...

6.8 KiB
Raw Permalink Blame History

date topic
2026-06-15 autonomous-task-execution

Summary

打通 PlanExecEngine 和 TeamOrchestrator 的执行层,让 AgentKit 能真正自主拆解和执行多步任务。用户一句话描述复杂需求Agent 自主生成可执行计划、逐步调用工具、返回完整结果。

Problem Frame

AgentKit 已有完整的任务规划框架骨架——ReAct/PlanExec/ReWOO/Reflexion 四种推理引擎、TeamOrchestrator 多 Agent 协作、PipelineEngine DAG 编排——但执行层未跑通。TeamOrchestrator 的 _execute_phase 返回模拟字符串PlanExecEngine 的步骤执行器功能简单SharedWorkspace 未集成到执行层。结果是用户提出复杂需求后Agent 只能简单对话回复,无法真正拆解执行。当前最需要的是把已有框架跑通,而不是新建能力。


Key Decisions

执行层对接优先于新能力建设。 现有四种引擎和 TeamOrchestrator 框架已完整,最关键的差距是执行层模拟代码未替换为真实 Agent 调用。先跑通再迭代。

验证场景选多步研究任务。 "帮我分析竞品并生成报告"这类任务天然需要搜索→分析→生成三步闭环,且不依赖本地开发环境,最能体现自主执行能力。

步骤间状态通过 SharedWorkspace 传递。 PlanExecEngine 已有 dependency_results 机制但仅通过 prompt 注入需要结构化状态管理。SharedWorkspace 已存在但未在执行层集成。


Requirements

执行层打通

  • R1. TeamOrchestrator._execute_phase 调用 Agent.execute() 执行真实任务,替代当前返回模拟字符串的实现
  • R2. PlanExecEngine._LLMStepAgent 升级为完整 ReAct 循环执行器,支持工具调用和多步推理
  • R3. SharedWorkspace 集成到 PlanExecEngine 和 TeamOrchestrator 执行层,步骤间可读写结构化状态
  • R4. GoalPlanner 的 LLM prompt 调优,确保任务分解质量(子任务可执行、依赖关系正确、无遗漏)

执行闭环

  • R5. 每个执行步骤完成后,结果自动写入 SharedWorkspace 并通知下游依赖步骤
  • R6. 步骤执行失败时PlanExecEngine 触发重规划(已有 PipelineReflector/PipelineReplanner需集成
  • R7. TeamOrchestrator 的 COMPETITIVE_PARALLEL 模式下合并策略BEST/VOTE/FUSION从真实执行结果中选择

验证场景

  • R8. 多步研究任务端到端验证:用户输入"分析 X 竞品并生成报告"Agent 自主拆解为搜索→分析→生成三步,逐步执行并返回完整报告
  • R9. 执行过程通过 WebSocket 实时推送进度事件plan_created / step_started / step_completed / plan_completed

Key Flows

  • F1. 自主任务执行主流程

    • Trigger: 用户提交复杂任务(复杂度 > 0.7,路由到 TEAM_COLLAB 或 SKILL_REACT
    • Actors: 用户, CostAwareRouter, GoalPlanner, PlanExecEngine/TeamOrchestrator, SharedWorkspace
    • Steps:
      1. CostAwareRouter 路由到合适的执行模式
      2. GoalPlanner 将目标分解为子任务计划(含依赖关系)
      3. PlanExecEngine 按依赖拓扑执行子任务,每个子任务通过 ReAct 循环调用工具
      4. 每步结果写入 SharedWorkspace触发下游就绪检查
      5. 全部完成后综合结果返回用户
    • Outcome: 用户收到完整的任务执行结果,过程可观测
  • F2. 执行失败重规划

    • Trigger: 某步骤执行失败(工具调用异常/LLM 返回无效结果/超时)
    • Actors: PlanExecEngine, PipelineReflector, PipelineReplanner
    • Steps:
      1. PlanExecEngine 捕获步骤失败
      2. PipelineReflector 分析失败原因
      3. PipelineReplanner 生成修正后的计划片段
      4. PlanExecEngine 用修正计划替换失败步骤,继续执行
    • Outcome: 任务从失败中恢复,无需用户手动干预

Acceptance Examples

  • AE1. 多步研究任务成功执行

    • Covers R1, R2, R3, R5, R8.
    • Given: 用户输入"分析飞书和钉钉的竞品对比并生成报告"
    • When: Agent 自主执行搜索→分析→生成三步
    • Then: 返回包含竞品对比分析的完整报告,每步结果可在 SharedWorkspace 中追溯
  • AE2. 步骤失败自动重规划

    • Covers R6.
    • Given: Agent 执行"搜索竞品信息"步骤时搜索工具返回空结果
    • When: PlanExecEngine 触发重规划
    • Then: Agent 调整策略(如换搜索关键词/换搜索工具),重新执行该步骤
  • AE3. 团队竞争模式真实执行

    • Covers R1, R7.
    • Given: 两个 Expert 竞争执行同一分析任务
    • When: 各自独立执行并返回结果
    • Then: Lead Expert 根据合并策略选择/融合最佳结果

Success Criteria

  • 多步研究任务端到端成功率 > 80%(任务完成且结果包含所有子步骤输出)
  • 执行过程通过 WebSocket 实时可观测(每个步骤有 started/completed 事件)
  • 步骤失败时自动重规划成功率 > 50%(至少一次重规划后任务完成)

Scope Boundaries

Deferred for later:

  • 执行持久化与断点恢复(集成 PipelineState 到 PlanExecEngine
  • 自适应执行监控token 预算控制、耗时趋势、策略动态调整)
  • 人机协作规划 UI用户实时调整计划
  • 计划模板库(复用历史成功计划)

Outside this scope:

  • 动态工具发现与运行时组合Agent 自主发现新工具)
  • 跨任务长期记忆(任务间经验迁移)
  • 多层级嵌套计划(子计划递归分解)

Dependencies / Assumptions

  • LLM Gateway 已配置且可用(至少一个 provider 有有效 API key
  • 搜索工具WebSearchTool/BaiduSearchTool已注册且可用
  • SharedWorkspace 数据结构已定义(需确认与现有 expert_team.SharedWorkspace 的兼容性)
  • GoalPlanner 的 LLM 分解质量足够支撑多步任务(可能需要 prompt 迭代)

Outstanding Questions

  • Resolve Before Planning: SharedWorkspace 的现有实现(expert_team.SharedWorkspace)是否可直接复用于 PlanExecEngine还是需要新建
  • Deferred to Planning: TeamOrchestrator 的 _execute_phase 如何与 Agent.execute() 的异步签名对接execute 是 async 方法,当前 _execute_phase 也是 async

Sources / Research

  • src/agentkit/core/react.py — ReActEngine 完整实现think-act-observe 循环
  • src/agentkit/core/plan_exec_engine.py — PlanExecEngine含 _LLMStepAgent 和 dependency_results
  • src/agentkit/experts/orchestrator.py — TeamOrchestrator_execute_phase 为模拟代码
  • src/agentkit/experts/team.py — ExpertTeam 和 SharedWorkspace 定义
  • src/agentkit/orchestrator/pipeline_engine.py — PipelineEngine含反思-重规划闭环
  • src/agentkit/orchestrator/reflection.py — PipelineReflector / PipelineReplanner
  • src/agentkit/core/goal_planner.py — GoalPlanner规则+LLM混合分解