Package-level declarations
Types
Annotation to indicate a method implementing an Action. Methods can have any number of parameters, which represent necessary input types. Methods can return any type. The return type will become an effect.
Indicates that this class is an agent. It doesn't just contribute actions, goals and conditions: it is an agent in itself. This is a Spring stereotype annotation, so annotated classes will be picked up on the classpath and injected Either @Agent or @AgentCapabilities should be used: not both
Not an error, but gets special treatment in the platform.
Annotates a method that computes the dynamic cost or value of an action at planning time. Similar to @Condition, this method can take domain object parameters from the blackboard. Unlike @Condition, all domain object parameters must be nullable. If a parameter is not available on the blackboard, null will be passed.
Indicates that this class exposes actions, goals and conditions that may be used by agents, but is not an agent in itself. This is a Spring stereotype annotation, so annotated classes will be picked up on the classpath and injected
Marks a method as a tool that can be invoked by an LLM. Use with com.embabel.agent.api.tool.Tool.Companion.fromInstance or com.embabel.agent.api.tool.Tool.Companion.fromMethod to create Tool instances.
Annotation that can added to parameters of an @Action method to indicate that the parameter name must match the input binding. Otherwise, it can match the latest ("it") value. Must be combined with the outputBinding method on Action for the action producing the input
Convenience methods for nesting agents for use with annotation model.
Superclass for exceptions thrown by special return mechanisms like subagent execution. These exceptions are caught by the agent runtime to handle the special return. Throwing exceptions allows us to retain strong typing in the action method signatures.
Marks a class representing a state within a flow. States do not trigger subflows but hold a subset of actions. Returning a State from an action indicates a transition to that state and creates the effects of the state's ultimate goals.
Internal exception to signal sub-agent execution.