Java版-Manus-多Agent协作系统解析
摘要: Manus 代表了 AI 从"回答问题"到"执行任务"的范式转变,能自主完成复杂操作(如数据查询、旅行规划、文件翻译)。针对 Java 开发者生态,Spring AI Alibaba 推出 OpenManus 实现,通过三角色协作架构(规划 Agent、执行链 Agent、总结 Agent)在 Spring 生态内无缝集成。其优势包括原生 Java

Manus 的出现,让 AI 从"能说会道"进化到"能说会干"。而 Spring AI Alibaba 的 Java 实现,让 Java 开发者终于可以不用学 Python 也能玩转多 Agent 协作。
一、为什么所有人都在讨论 Manus?
2025 年初,Manus 这个名字在 AI 圈炸开了锅。
简单来说,Manus 是一个"能替你干活"的 AI 智能体。
以前的 AI,比如 ChatGPT、GPT-4,你会问它问题,它会给你答案。但它也仅仅停留在"回答问题"这个层面——它不会帮你真的去做什么。
Manus 不一样。它不只是回答问题,它会分析问题、制定计划、执行操作、交付结果。
举几个例子:
- 你说"帮我查一下阿里巴巴最近一周的股价,画个趋势图保存到本地",它会自己打开浏览器、搜索信息、画图、保存文件,全程不需要你动手。
- 你说"帮我规划一个五一韩国旅行行程,做成 HTML 手册",它会自己查资料、做攻略、生成网页,5 天后你直接打开手册出发就行。
- 你说"把 /tmp/docs 目录下的中文文档翻译成英文",它会自己遍历文件、调用翻译接口、保存结果。
这就是 Manus 带来的范式转变:AI 从"回答者"变成了"执行者"。
二、Python 有 Manus,Java 怎么办?
Manus 最开始是 Python 实现的。
这对于 Python 开发者来说是个好消息——他们可以直接把 Manus 集成到自己的项目中。
但对于 Java 开发者来说,情况有点尴尬:
- 公司技术栈是 Java,技术债堆积如山,不可能为了一个 AI 能力去重构整个后端
- 团队里 Java 开发者占大多数,为了用 Manus 再招一批 Python 工程师?不现实
- 现有的 Spring Boot 项目想要接入 AI 能力,最好是 Spring 生态内的解决方案
需求是真实存在的:Java 开发者需要一个"Java 版 Manus"。
Spring AI Alibaba 听到了这个呼声,发布了 spring-ai-alibaba-openmanus,这是 Manus 的 Java 实现。
三、OpenManus 的核心架构:三角色协作
Spring AI Alibaba OpenManus 的设计思路并不复杂,它把一个复杂任务拆解为三个关键角色:
用户输入
│
▼
┌─────────────────────────────────────┐
│ Planning Agent(规划 Agent) │
│ 分析任务、拆解步骤、生成执行计划 │
└──────────────┬──────────────────────┘
│
▼ 动态生成子工作流
┌─────────────────────────────────────┐
│ Manus Agent Chain(执行链路) │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐│
│ │ Agent 1 │→ │ Agent 2 │→ │ Agent 3 ││
│ │ (搜索) │ │ (处理) │ │ (输出) ││
│ └─────────┘ └─────────┘ └─────────┘│
└──────────────┬──────────────────────┘
│
▼
┌─────────────────────────────────────┐
│ Summary Agent(总结 Agent) │
│ 汇总结果、生成最终输出 │
└─────────────────────────────────────┘
3.1 Planning Agent:任务的"大脑"
当你给出一个复杂任务时,Planning Agent 会做两件事:
- 理解任务意图:比如你让它"查股价并画图",它需要理解这是一个需要多个步骤才能完成的复合任务
- 拆解执行步骤:把任务分解成可顺序执行的子步骤,比如"搜索股价" → “获取数据” → “绘制图表” → “保存文件”
Planning Agent 会动态生成一个由多个 Manus Agent 组成的执行链。
3.2 Manus Agent:任务的"双手"
每个 Manus Agent 都是一个 ReAct 架构的智能体:
- ReAct = Reasoning + Acting
也就是说,它不只会"想",还会"做"。
每个 Agent 都有能力调用各种工具:
- 浏览器工具:打开网页、点击按钮、输入文字、截图
- 代码执行工具:运行 Python、Java、Shell 脚本
- 文件系统工具:读取、写入、复制、移动文件
当 Planning Agent 生成的执行链运行时,每个 Agent 会根据自己负责的子任务,循环调用工具、直至完成。
3.3 Summary Agent:任务的"收尾"
当所有子任务完成后,Summary Agent 会汇总各个 Agent 的输出,生成一个结构化的最终结果返回给用户。
四、实际效果怎么样?
光说不练假把式。我们来看几个官方演示的案例:
案例一:股票查询与可视化
用户输入: “打开百度浏览器,在搜索框输入:阿里巴巴最近一周股价,根据搜索到的信息绘制最近一周的股价趋势图并保存到本地目录。”
执行过程:
- Planning Agent 拆解为:搜索股价 → 提取数据 → Python 画图 → 保存文件
- Agent 1 调用浏览器工具,打开百度搜索"阿里巴巴股价"
- Agent 2 解析搜索结果,提取最近 7 天的股价数据
- Agent 3 调用 Python 代码生成趋势图
- Agent 4 将图片保存到指定目录
最终输出: 一张完整的股价趋势图 + 确认保存成功
案例二:旅行规划
用户输入: “我计划在五一假期去韩国旅行,从杭州出发,总预算 10000 元,5 天行程,请帮我制作一个包含地图、景点、韩语短语的 HTML 旅行手册。”
执行过程:
- Planning Agent 拆解为:查航班酒店 → 查景点攻略 → 制作 HTML
- Agent 1 调用搜索工具,查询杭州到首尔的机票价格
- Agent 2 查询首尔热门景点和韩国民俗体验
- Agent 3 整合信息,生成包含地图、景点推荐、韩语常用语、注意事项的 HTML 文件
最终输出: 一个精美的 HTML 旅行手册,可以在手机或电脑上随时查看
案例三:批量文档翻译
用户输入: “将 /tmp/docs 目录下的中文文档翻译为英文,保存到 /tmp/endocs 目录。”
执行过程:
- Planning Agent 识别这是一个批量处理任务,需要遍历文件
- Agent 1 扫描目录,列出所有需要翻译的文件
- Agent 2 逐个读取文件内容
- Agent 3 调用翻译 API(或使用大模型翻译能力)
- Agent 4 将翻译后的内容写入新文件,保存到目标目录
五、Java 版 vs Python 版:有什么区别?
很多人会问:Python 版已经实现了,Java 版是不是"换汤不换药"?
区别确实存在,而且值得关注:
| 维度 | Python 版 | Java 版 |
|---|---|---|
| 技术栈 | Python | Java / Spring Boot |
| 集成方式 | 独立项目 | 可嵌入 Spring 应用 |
| 生态适配 | 需单独维护 | 无缝对接现有 Java 项目 |
| 企业友好度 | 一般 | 高(Java 工程师可直接上手) |
| 工具扩展 | 社区驱动 | Spring AI 生态内的 MCP 工具 |
对于已经拥有 Java 技术栈的企业来说,Java 版的优势是明显的:
- 不需要引入新的技术语言
- 现有的 Spring Boot 项目可以直接集成
- 团队不需要额外学习 Python
六、当前实现的局限性
坦诚地说,Spring AI Alibaba OpenManus 目前还有一些不足:
6.1 流程编排代码量大
当前的实现中,将近 80% 的代码在处理流程编排问题:串联 Agent 子流程、做消息记忆、转发工具调用、全局状态修改……
这些工作如果有一个成熟的 Agent 框架来抽象,开发效率可以提升 70% 以上。
6.2 工具覆盖度有限
浏览器自动化、脚本执行等工具的能力和效果还有提升空间。对于复杂场景,可能需要扩展更多工具。
6.3 缺乏人为介入机制
目前的实现中,任务一旦开始执行,就无法中途介入进行人工 review、动态修改或回退。这对于生产环境来说是个需要完善的地方。
6.4 调试困难
效果调试目前相对困难,缺少可视化的调试工具和日志追踪体系。
七、未来规划:Graph 框架 + MCP 生态
Spring AI Alibaba 团队已经看到了这些问题,并规划了下一代解决方案:
7.1 Spring AI Alibaba Graph
即将发布的多 Agent 框架,可以大幅简化 Agent 协作的开发。
基于 Graph 框架实现的强化版 OpenManus,代码量预计减少 70% 以上,整体易读性和效果都会显著提升。
7.2 MCP 工具生态
当前 OpenManus 已经支持 MCP 工具接入,未来会接入更多成熟的 MCP Server,进一步提升工具能力。
这意味着:你可以用统一的协议,把各种外部能力(搜索、数据库、文件存储、第三方 API)接入到 Agent 工作流中。
八、Java 开发者如何快速上手?
如果你想体验 Spring AI Alibaba OpenManus,可以通过以下方式:
项目地址: https://github.com/alibaba/spring-ai-alibaba/tree/main/community/openmanus
快速启动:
# 克隆项目
git clone https://github.com/alibaba/spring-ai-alibaba.git
# 进入 OpenManus 目录
cd spring-ai-alibaba/community/openmanus
# 按照 README 配置 API Key(通义千问或其他模型)
# 启动运行
九、写在最后
Manus 带来的最大变革,是 AI 从"回答问题"进化到"完成任务"。
而 Spring AI Alibaba 的 Java 实现,让这个能力对 Java 开发者不再遥远。
对于企业来说:
你可以把 OpenManus 集成到现有的 Java 项目中,让 AI 帮你完成那些繁琐的、重复性的工作——数据查询、报表生成、内容处理、客服应答……
对于开发者来说:
与其焦虑 AI 会不会取代程序员,不如学会如何"指挥" AI 工作。多 Agent 协作系统,就是下一个需要掌握的关键技能。
相关资源:
- 项目源码:https://github.com/alibaba/spring-ai-alibaba/tree/main/community/openmanus
🎁 福利时间
如果你正在备战面试或者想要学习其他知识,给大家推荐一个宝藏知识库,作者整理了一些列 Java 程序员需要掌握的核心知识,有需要的自取不谢。
知识库地址:https://farerboy.com/
更多推荐



所有评论(0)