任务工具 (task)
本文档描述了用于 Qwen Code 的 task 工具。
描述
使用 task 启动一个专门的子代理来自动处理复杂的多步骤任务。任务工具将工作委托给可以独立工作的专业代理,这些代理拥有自己的一套工具,从而实现并行任务执行和专业技能的应用。
参数
task 接受以下参数:
description(字符串,必填):用于用户可见性和跟踪目的的任务简短描述(3-5个词)。prompt(字符串,必填):供子代理执行的详细任务提示。应包含自主执行所需的完整指令。subagent_type(字符串,必填):用于此任务的专业代理类型。必须与已配置的可用子代理之一匹配。
如何在 Qwen Code 中使用 task
Task 工具会根据你的配置动态加载可用的子代理,并将任务委派给它们。每个子代理独立运行,可以使用自己的一套工具,从而实现专业化的功能和并行执行。
当你使用 Task 工具时,子代理将会:
- 接收具有完全自主权的任务提示
- 使用其可用的工具执行任务
- 返回最终结果消息
- 终止(子代理是无状态且一次性使用的)
用法:
task(description="简要任务描述", prompt="提供给子代理的详细任务说明", subagent_type="代理名称")可用的子代理
可用的子代理取决于你的配置。常见的子代理类型可能包括:
- 通用型(general-purpose):用于需要多种工具的复杂多步骤任务
- 代码审查员(code-reviewer):用于审查和分析代码质量
- 测试运行器(test-runner):用于运行测试并分析结果
- 文档编写员(documentation-writer):用于创建和更新文档
你可以通过在 Qwen Code 中使用 /agents 命令查看可用的子代理。
任务工具功能
实时进度更新
任务工具提供实时更新,显示以下内容:
- 子代理执行状态
- 子代理调用的各个工具
- 工具调用结果及任何错误信息
- 整体任务进度与完成状态
并行执行
你可以在单条消息中多次调用任务工具来同时启动多个子代理,从而实现并行任务执行,提高效率。
专业化能力
每个子代理可以配置:
- 特定的工具访问权限
- 专业化的系统提示和指令
- 自定义模型配置
- 领域特定的知识和能力
task 示例
委派给通用代理
task(
description="代码重构",
prompt="请将 src/auth/ 中的身份验证模块重构为使用现代的 async/await 模式而不是回调。确保所有测试仍然通过,并更新任何相关文档。",
subagent_type="general-purpose"
)运行并行任务
# 并行启动代码审查和测试执行
task(
description="代码审查",
prompt="审查用户管理模块中的最新更改,确保代码质量、安全问题和最佳实践合规性。",
subagent_type="code-reviewer"
)
task(
description="运行测试",
prompt="执行完整的测试套件并分析任何失败。提供测试覆盖率摘要和改进建议。",
subagent_type="test-runner"
)文档生成
task(
description="更新文档",
prompt="为订单模块中新实现的REST端点生成全面的API文档。包括请求/响应示例和错误代码。",
subagent_type="documentation-writer"
)何时使用任务工具
在以下情况下使用任务工具:
- 复杂的多步骤任务 - 需要多个操作且可以自主处理的任务
- 专业领域知识 - 需要特定领域知识或工具的任务
- 并行执行 - 有多个可同时运行的独立任务时
- 委派需求 - 希望交出完整任务而非微观管理步骤时
- 资源密集型操作 - 可能需要大量时间或计算资源的任务
何时不使用任务工具
不要在以下情况使用任务工具:
- 简单、单步操作 - 直接使用读取、编辑等直接工具
- 交互式任务 - 需要来回沟通的任务
- 特定文件读取 - 直接使用读取工具以获得更好性能
- 简单搜索 - 直接使用Grep或Glob工具
重要说明
- 无状态执行:每次子代理调用都是独立的,不保留之前执行的记忆
- 单次通信:子代理只提供一次最终结果消息——不支持持续通信
- 全面提示:你的提示应包含自主执行所需的所有上下文和指令
- 工具访问:子代理只能访问其特定配置中配置的工具
- 并行能力:多个子代理可同时运行以提高效率
- 依赖配置:可用的子代理类型取决于你的系统配置
配置
子代理通过 Qwen Code 的代理配置系统进行配置。使用 /agents 命令来:
- 查看可用的子代理
- 创建新的子代理配置
- 修改现有的子代理设置
- 设置工具权限和功能
有关配置子代理的更多信息,请参阅子代理文档。
Last updated on