📌 项目:https://github.com/blendi-remade/agentcraft | 星数:656 | 语言:Java | 协议:MIT | 更新:2026-10-09
AgentCraft是一个用Java编写的Agent开发框架和创作工具,提供Agent定义、技能编排和多Agent协作的基础设施。项目由blendi-remade开发,在GitHub获得656颗星,采用MIT协议,面向Java/JVM生态的开发者,将Agent开发抽象为可组合的技能模块。
AgentCraft将Agent能力分解为可复用的技能单元,开发者通过组合技能定义Agent行为。如果你想了解Agent技能机制的底层原理,可以参考我们的Agent技能机制指南,深入理解技能定义与调用的设计模式。
技能定义与组合:通过注解或YAML配置定义Agent技能(输入/输出schema、执行逻辑、前置条件),技能可声明依赖其他技能形成执行DAG,框架自动解析依赖顺序并行调度无冲突技能,支持技能版本管理和热更新。
多Agent编排引擎:内置Agent间通信协议(基于消息队列),支持Pipeline(串行)、Router(条件分发)、Fan-out/Fan-in(并行聚合)三种编排模式,Agent可动态注册和发现,支持运行时增减Agent实例。
JVM生态集成:原生集成Spring Boot依赖注入、与LangChain4j互操作支持LLM调用、通过MCP协议连接外部工具服务,提供JMX监控Agent运行状态(技能执行耗时、消息队列深度、错误率),支持打包为Fat JAR或Docker镜像部署。
| ✅ 优势 | ❌ 劣势 |
|---|---|
| 技能定义通过注解或YAML配置,声明式定义输入输出和前置条件,降低开发门槛 | README文档信息有限,API文档和学习资源不够完善 |
| 多Agent编排引擎支持Pipeline/Router/Fan-out三种模式,覆盖常见协作模式 | Java/JVM启动开销大于Python/Node.js的Agent框架,不适合轻量场景 |
| 原生集成Spring Boot和LangChain4j,Java企业开发者无需学习新框架 | 技能热更新机制缺乏版本兼容性保证,生产环境需谨慎使用 |
| JMX监控Agent运行状态(技能耗时/队列深度/错误率),运维可视化 | 多Agent通信基于消息队列,未提供分布式部署的开箱支持 |
| 技能DAG自动解析依赖并行调度,提升多技能Agent的执行效率 | 社区规模较小,与Spring AI等主流框架的集成需要自行适配 |
两者定位不同。Spring AI提供LLM调用抽象和基础工具集成,AgentCraft构建在LLM调用层之上提供Agent技能定义、多Agent编排和记忆管理。两者可配合使用,AgentCraft原生集成LangChain4j而非直接绑定Spring AI。
通过LangChain4j集成支持OpenAI、Anthropic Claude、Google Gemini、本地Ollama等主流LLM提供商。切换模型只需修改配置,Agent技能代码无需改动。
编排引擎支持重试策略(可配置重试次数和退避间隔)、超时熔断和降级Agent(主Agent失败时切换到简化版Agent)。Pipeline模式中某节点失败可配置是否中断整条链路或跳过继续。