TaskOutputTool:读取任务输出
它把后台任务输出统一成同一种可读结果
TaskOutputTool 用来读取后台任务的输出。
它最重要的价值是统一:
- shell 任务输出
- 本地 agent 输出
- 远程 agent 输出
所以主线程不需要关心底层任务类型差异,只要关心统一返回结构。
关键源码
输入定义:
const inputSchema = z.strictObject({
task_id: z.string(),
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;
}
它还有一个很有意思的现状
源码 prompt 明写了:
DEPRECATED: Prefer using the Read tool on the task’s output file path instead.
也就是说,它仍然存在,但 Anthropic 已经在把“读任务输出”引导到更通用的 Read 工具。
这对学习源码很有价值,因为你能看到 Claude Code 运行时能力如何逐步收敛。
调用链
加载图表中…
小结
TaskOutputTool 是后台任务链路里的“统一读口”,即使它未来可能被更通用的 Read 替代。