Tools 工具组
TaskOutputTool:读取任务输出
这个工具做什么
TaskOutputTool 用来读取后台任务输出。
如果 AgentTool 或 BashTool 把工作放到后台,主线程后续通常就靠它拿结果。
关键源码
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:读到异常再停任务