Tools 工具组

TaskOutputTool:读取任务输出

这个工具做什么

TaskOutputTool 用来读取后台任务输出。
如果 AgentToolBashTool 把工作放到后台,主线程后续通常就靠它拿结果。

关键源码

tools/TaskOutputTool/TaskOutputTool.tsx

const inputSchema = z.strictObject({
  task_id: z.string().describe('The task ID to get output from'),
  block: z.boolean().default(true),
  timeout: z.number().min(0).max(600000).default(30000),
})

这个工具同时兼容多种任务类型:

type TaskOutput = {
  task_id: string;
  task_type: TaskType;
  status: string;
  description: string;
  output: string;
}

调用链

加载图表中...

实现重点

它最有价值的地方是把不同任务类型统一了:

  • local bash
  • local agent
  • remote agent

主线程不用关心底层实现差异,只要看统一结果。

它和相邻工具的关系

  • AgentTool:子 Agent 输出读取
  • TaskStopTool:读到异常再停任务