
AgentScope Java 2.0.0 正式发布 GA 版本了。我之前写过好几篇这个系列——框架入门、Middleware 怎么用、Memory 系统、跟 LangChain4j 怎么选。每次写的时候都会在文末加一句RC 版本不代表正式 GA生产环境自己掂量。现在这句话终于可以删了。这篇文章不是把 release notes 翻译一遍。聊聊 GA 版本到底意味着什么以及 2.0 整套架构走到今天哪些设计是我觉得真正值得关注的。GA 和 RC 的区别在哪RC 是功能做完了你们帮忙试试有没有坑。GA 是我们认为这个东西可以上生产了。从 RC4 到 GA 这一步功能层面没有大的新增。更多是稳定性收尾、文档补齐、API 定稿。但心理上的意义不一样——团队内部敢在自己的业务系统上用了你给老板汇报的时候也不用加目前还在 RC 阶段这个免责条款了。2.0 的架构到底长什么样我从 RC1 一路跟过来现在回头看2.0 的核心设计可以用一句话概括让 Agent 可靠地完成任务。不是让 Agent 能聊天不是让 Agent 能调工具——这些 1.x 就能干。2.0 要解决的是在生产环境里Agent 接到一个任务能不能稳定地跑完出了问题能不能兜住。围绕这个目标架构分成了几层。双层 Agent推理归推理工程归工程2.0 把 Agent 拆成了两层ReActAgent 是推理核心。它只做一件事reason → tool call → respond 的 ReAct 循环。2.0 里它彻底无状态了所有可变状态通过 Reactor Context 透传。一个实例可以并发服务多个用户和会话不用每次 new。HarnessAgent 在 ReActAgent 外面套了一层工程基础设施。比如Workspace、Memory、沙箱、子 Agent、Skill、Plan Mode——这些跟推理本身无关但在生产环境里缺一不可的东西全在这一层。事件流Agent 不再是黑盒2.0 统一了消息模型ContentBlock 体系下有 TextBlock、DataBlock、ToolUseBlock、ToolResultBlock、HintBlock 等类型每种消息都能结构化表达。更重要的是 streamEvents() 接口可以触发 28 种 AgentEvent。从 Agent 开始执行、每轮推理、每次工具调用、用户确认、到最终结果全生命周期可观测。前端 UI 可以实时跟进文本增量、工具调用进度、HITL 审批请求。我之前写 RC3 那篇专门聊过事件流的演进——从 RC1 引入基础架构到 RC2 让子 Agent 事件也能流出来到 RC3 补上结果事件和自定义事件。GA 版本在这块没有新增事件类型但把之前几个 RC 里的事件时序问题都修了。权限系统不是所有工具都能随便调这个是我觉得 2.0 里最容易被忽略但最重要的设计之一。PermissionEngine 对每次工具调用做一个三态判定允许、需要用户审批、拒绝。判定依据包括静态规则、工具类型、输入内容分析。敏感操作自动走 Human-in-the-Loop 审批流程。在 demo 里你不需要这个——反正就你一个人在用。但在生产环境里你的 Agent 可能会调到一个删除数据库的 API或者给用户发一封邮件。没有一个权限层挡着出事是早晚的。Middleware五个位置想插哪插哪这个我之前写了一整篇,可以翻回去看看。说的是五阶段洋葱 流水线混合模型onAgent、onReasoning、onActing、onModelCall、onSystemPrompt。日志、追踪、限流、安全检查、主备模型切换——都可以依赖 Middleware 实现Agent 本身的代码完全可以一行不用动。GA 版本里 Middleware 接口稳定了RC 阶段那几个关于执行时序的 bug 都修了。其他还有好几个地方值得说一说的Context Engineering上下文超长的时候做结构化压缩保留任务目标、当前状态、关键发现和下一步计划把超大的工具结果落盘只留占位符。文件工具强制先读再改策略内置缓存减少重复 IO。Workspace 抽象本地文件系统、Docker、Kubernetes、E2B 云沙箱一套接口。还内置了预热池支持并行 RL rollout 场景。模型容错统一的 Credential ModelRegistry覆盖 QwenOpenAI AnthropicGemini DeepSeek 也支持Ollama的自建模型。同时可配置最大重试次数和备用模型主模型挂了自动 failover。分布式部署一行 DistributedBackend 配置支持 RedisOSSMySQL PostgreSQLCOS。AgentStateStore 依据 (userId, sessionId) 自动进行分桶隔离同时还支持跨副本 session 恢复、沙箱快照、子 Agent 跨副本路由。协议互通内置 A2AMCPAG-UI 协议适配。Agent 之间的标准化通信和前端渲染需求都覆盖了。多 Agent 编排声明式子Agent 定义(YAMLMarkdown)运行时 agent_spawnagent_send支持同步阻塞和后台委派两种模式。子Agent 的事件流可以实时转发到父 Agent。Skill 系统四层Skill组合ClasspathFileSystemNacos Marketplace SkillFilter 细粒度过滤 自学习闭环。从 RC1 到 GA提供了哪些功能RC12026-06-03核心架构落地HarnessAgent、Workspace、Middleware、分布式 Session、多租户隔离RC22026-06-09Agent 无状态改造、DistributedBackend、子 Agent 事件流转发、运行时权限切换RC32026-06-11AgentResultEventCustomEventcallstreamEvents 统一执行核心RC42026-06-18异步工具执行和通知、持久化子 Agent 注册表、跨副本路由GA2026-07-10稳定性收尾、API 定稿、文档补齐每个 RC 都在补一个生产场景的缺口。异步执行、权限热切、子 Agent 持久化、事件流完善——这些不是酷炫的新 feature是真正长期跑在服务器上才会遇到的问题。谁应该关注这个版本之前因为还在 RC 阶段而没敢用现在可以认真评估了特别适合的几个场景如下核心系统是 Java不想为了 Agent 引入一个 Python 服务Agent 需要自主规划多步任务不是简单的问答需要生产级的安全控制——权限、沙箱、审计要上 K8s 做分布式部署需要 session 恢复和跨副本路由想做多 Agent 协作需要标准化的 Agent 间通信如果只是给 Spring Boot 项目加个 AI 问答LangChain4j 或 Spring AI 可能更轻量。选型的事我在对比那篇里聊过了这里就不赘述了。升级指南官方提供了 V1 迁移指南从 1.x 升上来的建议先好好看一遍架构变化非常大。从 RC4 升 GA 应该很平滑核心 API 没有 breaking change。如果新入坑的话直接看 Quickstart版本号写 2.0.0。Going to Production 那篇文档建议也读一下里面讲了分布式部署、权限配置、模型容错这些生产相关的话题。dependencygroupIdio.agentscope/groupIdartifactIdagentscope-harness/artifactIdversion2.0.0/version/dependency写这个系列大半年了。从第一篇文章Java 也能做 AI Agent的疑问到现在2.0 GA 了可以上生产了的确认看着一个框架从骨架到血肉一步步成型这种体验挺好的。Java 生态的 AI Agent 基础设施去年这时候还是荒漠现在至少有一条成熟的路可以走了。至于这条路能走多远就看社区和生态能不能跟上。