资讯详情

spring-ai-agent-utils 多智能体实战:用 TaskTool 把复杂任务委派给 4 个内置子代理

📅 2026/11/5 1:40:03 | 华诺云谱 👁 阅读
spring-ai-agent-utils 多智能体实战:用 TaskTool 把复杂任务委派给 4 个内置子代理
人工智能AI Agent工具调用AI 技能代码智能体后端【免费下载链接】spring-ai-agent-utilsA Spring AI library that brings Claude Code-inspired tools and agent skills to your AI applications.项目地址https://gitcode.com/gh_mirrors/sp/spring-ai-agent-utils点击查看免费下载spring-ai-agent-utils 是一个面向 Spring AI 的多智能体工具库把 Claude Code 风格的工具与 Agent 技能带入你的 AI 应用。本文带你上手它最核心的TaskTool只需一行 Builder 配置主 Agent 就能把探索代码库、制定实现计划、执行终端命令等复杂任务自动委派给4 个内置子代理并行完成同时保持主对话上下文干净。为什么需要子代理委派直接让一个大 Agent 包办所有任务很快就会遇到两个问题上下文污染搜索代码、读文件、跑命令产生的海量中间结果会把主对话窗口塞满模型注意力被稀释工具权限失控一个只想查资料的任务却握有写文件、删文件的工具。子代理Sub-agent正是解法。在 spring-ai-agent-utils 中每个子代理都拥有特性说明独立上下文窗口与主对话隔离结果只回传一条摘要专属系统提示词针对探索、规划、执行等场景定制可配置的工具白名单只开放完成任务所需的最小能力独立执行自主工作完成后把结果交回父 Agent这套设计参考了 Claude Code 的子代理机制完整文档见 TaskTools.md。认识 4 个内置子代理 当你注册了 Claude 子代理类型后TaskTool.Builder.build() 会自动注册 4 个内置子代理无需任何额外配置子代理定位工具权限典型场景general-purpose全能研究员全部工具复杂研究、多步骤代码搜索Explore快速代码库探索只读按模式找文件、正则搜代码Plan软件架构师只读设计分步实现方案Bash命令执行专家仅 Bashgit 操作、构建、测试、DevOps四个子代理的完整定义都是可读的 Markdown 文件存放在 agent/ 目录下GENERAL_PURPOSE_SUBAGENT.md —— 擅长跨大代码库搜索配置与代码模式、分析多个文件理解系统架构要求返回绝对路径和代码片段EXPLORE_SUBAGENT.md —— 严格只读模式调用时还可以指定探索深度quick基础搜索、medium多策略探索、very thorough全面分析PLAN_SUBAGENT.md —— 规划专用输出固定包含摘要、待修改文件、实现步骤、权衡分析、风险五个部分并明确禁止修改任何文件BASH_SUBAGENT.md —— 内置 git 安全规则不擅自 force push、破坏性命令需确认文件读写交由父 Agent 处理。 提示TaskTool 的工具描述里还明确告诉模型什么时候不该用 Task——比如已知具体文件路径就直接用 Read找某个类定义直接用 Glob避免无谓的委派开销。三步配置 TaskTool 子代理委派第一步添加依赖dependency groupIdorg.springaicommunity/groupId artifactIdspring-ai-agent-utils/artifactId version0.13.0/version /dependency第二步构建 TaskTool核心就一句 Builder注册ClaudeSubagentType后4 个内置子代理自动就位。ToolCallback taskTool TaskTool.builder() .subagentTypes(ClaudeSubagentType.builder() .chatClientBuilder(default, chatClientBuilder) .build()) .build();ClaudeSubagentType 是便捷构建器子代理默认自带 Grep、Glob、Shell、文件系统、WebFetch、TodoWrite 等工具还可按需开启 Brave 网页搜索。第三步挂到 ChatClientChatClient chatClient chatClientBuilder .defaultToolCallbacks(taskTool) .build();配置完成主 Agent 看到 Task 工具后会根据各子代理的描述自动决定何时委派。实战四种委派方式1️⃣ 自然语言自动委派直接提问主 Agent 识别出这是探索类任务自动交给Explore认证模块是怎么工作的2️⃣ 显式指定子代理用 Bash 子代理跑一下项目的测试并汇报结果3️⃣ 后台运行 TaskOutput 取结果设置run_in_background: true后TaskTool 立即返回task_id主 Agent 可以一边继续工作一边等子代理。任务完成后通过 TaskOutputTool 用该 id 检索结果。4️⃣ 并行委派性能关键需要同时跑多个任务时主 Agent 会在一条消息里发出多个 Task 调用。例如让Explore找所有 API 端点、同时让Plan起草重构方案互不阻塞。子代理调用的输入结构定义在 TaskCall.java参数说明description3-5 个词的简短描述prompt交给子代理的完整任务说明subagent_type要调用的子代理名称model可选覆盖指定模型resume可选按 agent ID 恢复之前的会话完整保留上下文run_in_background可选后台异步执行多步任务的推进由 TodoWriteTool 配合完成下面的时序图展示了它在 Spring AI 多智能体中的编排流程运行官方 subagent-demo 示例 项目内置了可运行的多智能体示例克隆仓库后即可体验git clone https://gitcode.com/gh_mirrors/sp/spring-ai-agent-utils cd spring-ai-agent-utils mvn -pl examples/subagent-demo -am spring-boot:run示例入口 Application.java 演示了完整装配TaskTool 技能工具 TodoWrite 任务编排 Grep/Glob/Shell/FileSystem 通用工具最后进入交互式对话循环。启动后直接问帮我梳理一下这个项目的模块结构就能看到主 Agent 委派general-purpose子代理工作的日志[TASK]前缀标识。进阶自定义子代理与多模型路由 自定义子代理只需写一个带 YAML frontmatter 的 Markdown 文件如放在.claude/agents/目录然后通过ClaudeSubagentReferences.fromRootDirectory(...)加载--- name: code-reviewer description: 代码审查专家写完代码后主动使用 tools: Read, Grep, Glob, Bash disallowedTools: Edit, Write model: sonnet --- 你是一名资深代码审查员关注代码质量与安全……多模型路由通过 frontmatter 的model字段实现简单任务配haiku省钱提速复杂分析配opus也支持provider:model格式如openai:gpt-4o、ollama:llama3把不同子代理路由到不同厂商的模型。远程 A2AAgent-to-Agent协议子代理则由独立的 spring-ai-agent-utils-a2a 模块提供可与本地子代理混用。最佳实践清单 ✅单一职责每个子代理只做一件事描述里写清何时使用最小权限只读场景务必用disallowedTools显式拒绝写操作模型分级快速搜索用便宜模型深度分析用强模型并行优先无依赖的子任务一次性并行委派提示词要具体子代理看不到用户意图要明说只做研究还是要写代码。延伸阅读TaskTools.md —— TaskTool 完整文档背景任务、自定义 TaskRepository、API 参考Subagent.md —— 子代理 SPI 框架如何接入 A2A、MCP 等自定义协议spring-ai-agent-utils-common —— 子代理核心抽象SubagentDefinition / Resolver / Executor所在模块赞分享人工智能AI Agent工具调用AI 技能代码智能体后端【免费下载链接】spring-ai-agent-utilsA Spring AI library that brings Claude Code-inspired tools and agent skills to your AI applications.项目地址https://gitcode.com/gh_mirrors/sp/spring-ai-agent-utils点击查看免费下载相关推荐Pi Agent子智能体用内置Agent工具把复杂任务委派给AIPi Agent子智能体用内置Agent工具把复杂任务委派给AI Pi AgentPi Agent Desktop是一款跨平台 AI 编程智能体桌面应用Pydantic AI Harness多Agent协作教程Subagents委托实战把大任务拆给AI子代理团队Pydantic AI Harness多Agent协作教程Subagents委托实战把大任务拆给AI子代理团队 想让 AI Agent 独力扛起调研 CrewAI 如何用 A2A 协议让 Agent 委派任务给远程 A2A 智能体CrewAI 如何用 A2A 协议让 Agent 委派任务给远程 A2A 智能体 CrewAI 把 A2AAgent to Agent协议作为一等委派原语人工智能大模型AI AgentAgent 框架多智能体Agent 编排RAGAgent 记忆工具调用上一篇终极指南3步让老旧Mac免费升级到最新macOS系统下一篇XUnity.AutoTranslator终极指南5分钟实现Unity游戏自动翻译创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
📝

华诺云谱内容团队

资深建站顾问 · 行业研究员

10年+企业数字化服务经验,专注智能建站、SEO优化与品牌营销,持续输出建站技巧、行业洞察与营销干货,已帮助5000+企业实现数字化增长。

你可能需要的服务

订阅华诺云谱资讯周报

每周一封,精选建站技巧、SEO与营销干货,直达邮箱。已有 8,000+ 企业主订阅,助你少走弯路。

↑