embabel-agent
Embabel is a JVM-based agent framework written in Kotlin that lets you build AI agents by mixing LLM interactions with your own code and domain models. It uses dynamic planning (GOAP or Utility AI) to figure out action sequences at runtime rather than hardcoding workflows, and integrates cleanly with Spring and existing Java ecosystems.
Key facts
Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.
| Field | Value |
|---|---|
| Repository | embabel/embabel-agent |
| Owner | embabel |
| Primary language | Kotlin |
| License | Apache-2.0 — OSI-approved |
| Stars | 3.7k |
| Forks | 363 |
| Open issues | 54 |
| Latest release | Unknown |
| Last updated | 2026-07-07 |
| Source | https://github.com/embabel/embabel-agent |
What embabel-agent is
Agent framework for JVM targeting agentic flows via Actions, Goals, Conditions, and a Domain Model. Supports Goal-Oriented Action Planning (GOAP) and Utility AI for dynamic planning. Offers annotation-based (@Agent, @Goal, @Action) and Kotlin DSL authoring styles. Execution modes: Focused (user-driven), Closed (agent-selected), and Open (platform-wide resource utilization). Built on Spring, supports strong typing, and designed for testability.
Get the embabel-agent source
Clone the repository and explore it locally.
git clone https://github.com/embabel/embabel-agent.gitcd embabel-agent# follow the project's README for install & configurationNeed it deployed, integrated, or customized instead? DEV.co ships production installs.
Best use cases
Implementation considerations
- Requires JVM 8+ and Kotlin/Spring ecosystem expertise; Java developers should be comfortable with Kotlin or use annotation-based style for familiarity.
- Dynamic planning via GOAP is pluggable; validate that default planning algorithm aligns with your domain logic and goal structure.
- Strong typing via Domain Model is a feature and requirement; upfront design of Actions, Goals, Conditions, and backing objects is essential to avoid costly refactors.
- Two authoring styles (annotation-based vs. Kotlin DSL); choose one early and apply consistently across the codebase to maintain readability.
- Testing is designed-in; write unit tests for Actions/Conditions and integration tests for end-to-end agent flows from the start.
When to avoid it — and what to weigh
- Greenfield Non-JVM Project — If your stack is Python, Node.js, or another non-JVM ecosystem, the JVM requirement and Spring dependency overhead may not justify adoption versus Python-native frameworks like LangChain or AutoGen.
- Simple, Sequential Task Execution — If your workflows are linear and deterministic (no replanning needed), the overhead of a planning engine adds complexity without benefit. A simpler orchestration layer would suffice.
- Very Early-Stage or Experimental Projects — Created April 2025 with no stable release yet (0.1.2-SNAPSHOT). Production use without vendor support or battle-tested stability carries risk; evaluate maturity and community traction first.
- Strict Latency or Resource Constraints — JVM startup overhead and planning computation may not meet real-time or edge-device requirements. Profile thoroughly before committing to latency-sensitive workloads.
License & commercial use
Apache License 2.0 (Apache-2.0). A permissive open-source license allowing commercial use, modification, and distribution, with liability disclaimers and attribution requirements.
Apache-2.0 is a permissive OSI-approved license that permits commercial use without royalties. However, verify license compliance obligations (attribution, patent grants) in your legal and procurement workflows. No commercial support, SLA, or warranty is evident from the data; evaluate vendor support separately if required.
DEV.co evaluation signals
Editorial assessment — not user reviews. Directional, with an explicit confidence level.
| Signal | Assessment |
|---|---|
| Maintenance | Active |
| Documentation | Adequate |
| License clarity | Clear |
| Deployment complexity | Moderate |
| DEV.co fit | Strong |
| Assessment confidence | Medium |
Data: LLM prompt injection and model output validation must be handled in Action implementations; framework does not appear to provide built-in prompt sanitization. Agent-controlled resource access (via Actions) should be restricted via Spring Security or domain logic. No mention of authentication, authorization, or secrets management in excerpt; assume responsibility lies with application code. Review dependency security via Maven or SCA tools. JVM runtime and Spring framework security posture should be monitored independently.
Alternatives to consider
LangChain (Python)
Mature, widely adopted multi-language framework for LLM orchestration with extensive integrations. Simpler for Python-native stacks but lacks JVM integration and sophisticated planning algorithms.
AutoGen (Microsoft, Python)
Multi-agent conversation framework with built-in role-playing agents and groupchat. Strong for collaborative multi-agent scenarios but less suitable for structured enterprise domain models and typed Java/Spring integration.
Spring AI (Spring Community, Java)
JVM-native, Spring-integrated, lightweight AI library. Simpler than Embabel but lacks dynamic planning and sophisticated agentic flow design; better for straightforward LLM integration in Spring apps.
Build on embabel-agent with DEV.co software developers
Embabel is a mature agent framework with active development, but is pre-release (0.1.2-SNAPSHOT). If you're building sophisticated agentic workflows on the JVM with Spring, start with a proof-of-concept. Engage the community via Discord, review the roadmap, and verify planning behavior matches your domain logic.
Talk to DEV.coRelated open-source tools
Surfaced by semantic similarity across the DEV.co open-source index.
Related on DEV.co
Explore the category and the services that help you build with it.
embabel-agent FAQ
Does Embabel support calling external LLM APIs (OpenAI, Anthropic, etc.)?
Is there a stable release, or is it safe for production?
Can I use Embabel without Spring?
What is GOAP, and can I use a different planning algorithm?
Work with a software development agency
DEV.co is a software development agency delivering custom software development services to companies building on open source. Our software developers and web developers design, integrate, and ship production systems — spanning web development, APIs, AI, data, and cloud. If embabel-agent is part of your ai frameworks roadmap, our team can implement, customize, migrate, and maintain it.
Evaluate Embabel for Your Agentic AI Project
Embabel is a mature agent framework with active development, but is pre-release (0.1.2-SNAPSHOT). If you're building sophisticated agentic workflows on the JVM with Spring, start with a proof-of-concept. Engage the community via Discord, review the roadmap, and verify planning behavior matches your domain logic.