Embabel AgentPlatform Integration
Replaces: #304 (please close that issue)
Incorporates changes from: PR #303 β architect review decisions
π Full plan: plans/embabel-integration-plan.md
π Deferred: Incremental Agent Task Processing (extracted to separate plan)
This is the tracking issue for integrating the Embabel AgentPlatform into the Akces agentic aggregate runtime. The integration connects the existing agentic module (main/agentic) with the Embabel Agent Framework, enabling AI-powered GOAP-based planning, LLM reasoning, and tool use within the command processing flow.
Key areas:
- Extend
@AgenticAggregateInfo with agentHandledCommands, agentHandledEvents, agentProducedErrors
- Inject
AgentPlatform into the runtime and create agentic handler adapters (no AgentTask/AgenticProcessHandler β deferred)
- Build reusable Embabel Goals, Actions, and Conditions (
@EmbabelComponent)
- Wire everything into
AgenticAggregatePartition with transactional boundaries
- Delete
StoreMemoryCommand/ForgetMemoryCommand (memory management moves entirely to Embabel Actions)
- Comprehensive testing (split by phase: unit tests for Phase 2, wiring tests for Phase 1, integration tests for Phase 4)
Changes from Architect Review (PR #303)
AgentTask, AgenticProcessHandler, proceedAgentTasks() β extracted to separate plan; removed from all issues
EmitDomainEventsAction (3.3) β REMOVED; AgentProcessResultTranslator collects DomainEvents from Blackboard directly
ManageKnowledgeGoal (3.9) β REMOVED; redundant with LearnFromProcessGoal
- Memory commands β
StoreMemoryCommand/ForgetMemoryCommand marked for deletion; capacity enforcement moves to agent
- Agent-handled commands cannot create state β
isCreate() always false; deterministic @CommandHandler(create=true) required
- Concrete goal selection per adapter β
AgenticCommandHandlerFunctionAdapter β ProcessCommandGoal, AgenticEventHandlerFunctionAdapter β ReactToExternalEventGoal
- Transactional boundaries (new section 4.4) β tick-to-completion loop inside Kafka transaction; increased
transaction.timeout.ms
- Section 1.4 (Expose Memories) β moved into adapter
apply() method
LearnFromProcessGoal β now responsible for memory capacity enforcement (replaces enforceMemorySlidingWindow())
- Testing split β 5.1 Phase 2 unit tests β 5.2 Phase 1 wiring tests β 5.3 test fixtures β 5.4 Phase 4 integration tests
Phase Overview and Dependency Graph
Phase 1 + Annotation Extensions: Foundation & Metadata
β
ββββββββββββββββββββββββ
βΌ βΌ
Phase 2: Akces Embabel Phase 3: Platform Development
Component (Goals, Goals, Actions, Conditions
Actions, Conditions)
β β
ββββββββββββββββββββββββ
β
βΌ
Phase 4: AgenticAggregatePartition
Integration
β
βΌ
Phase 5: Testing
Note on implementation order (from plan):
- Phase 1 + Annotation Extensions must be completed first β all other phases depend on these foundations.
- Phase 2 and Phase 3 can be implemented concurrently after Phase 1 + Annotation Extensions.
- Phase 4 requires Phase 2 and Phase 3 to be completed.
- Phase 5 requires Phase 4 to be completed (full integration testing).
Issues
| Phase |
Issue |
Replaces |
Can Start After |
Blocks |
| Phase 1 + Annotation Extensions |
#312 |
#305 |
β |
Phase 2, Phase 3, Phase 4, Phase 5 |
| Phase 2: Akces Embabel Component |
#313 |
#306 |
Phase 1 + Annotations |
Phase 4 |
| Phase 3: Platform Development Goals |
#314 |
#307 |
Phase 1 + Annotations |
Phase 4 |
| Phase 4: Partition Integration |
#315 |
#308 |
Phase 2 + Phase 3 |
Phase 5 |
| Phase 5: Testing |
#316 |
#309 |
Phase 4 |
β |
Embabel AgentPlatform Integration
π Full plan: plans/embabel-integration-plan.md
π Deferred: Incremental Agent Task Processing (extracted to separate plan)
This is the tracking issue for integrating the Embabel
AgentPlatforminto the Akces agentic aggregate runtime. The integration connects the existing agentic module (main/agentic) with the Embabel Agent Framework, enabling AI-powered GOAP-based planning, LLM reasoning, and tool use within the command processing flow.Key areas:
@AgenticAggregateInfowithagentHandledCommands,agentHandledEvents,agentProducedErrorsAgentPlatforminto the runtime and create agentic handler adapters (noAgentTask/AgenticProcessHandlerβ deferred)@EmbabelComponent)AgenticAggregatePartitionwith transactional boundariesStoreMemoryCommand/ForgetMemoryCommand(memory management moves entirely to Embabel Actions)Changes from Architect Review (PR #303)
AgentTask,AgenticProcessHandler,proceedAgentTasks()β extracted to separate plan; removed from all issuesEmitDomainEventsAction(3.3) β REMOVED;AgentProcessResultTranslatorcollectsDomainEvents from Blackboard directlyManageKnowledgeGoal(3.9) β REMOVED; redundant withLearnFromProcessGoalStoreMemoryCommand/ForgetMemoryCommandmarked for deletion; capacity enforcement moves to agentisCreate()alwaysfalse; deterministic@CommandHandler(create=true)requiredAgenticCommandHandlerFunctionAdapterβProcessCommandGoal,AgenticEventHandlerFunctionAdapterβReactToExternalEventGoaltransaction.timeout.msapply()methodLearnFromProcessGoalβ now responsible for memory capacity enforcement (replacesenforceMemorySlidingWindow())Phase Overview and Dependency Graph
Issues