Package-level declarations

Types

Link copied to clipboard
data class AgentToolCallback<I : Any>(autonomy: Autonomy, val agent: Agent, val textCommunicator: TextCommunicator, val objectMapper: <Error class: unknown class>, val inputType: Class<I>, val processOptionsCreator: (parentAgentProcess: AgentProcess) -> ProcessOptions)

Tool callback that can be used to execute an agent. Supports "Subagent" or "handoff" style usage.

Link copied to clipboard

Prefix tool names with the application name.

Link copied to clipboard
class DefaultProcessCallbackTools(val autonomy: Autonomy, val textCommunicator: TextCommunicator)

Default tools for handling agent processes

Link copied to clipboard
data class GoalToolCallback<I : Any>(val autonomy: Autonomy, val textCommunicator: TextCommunicator, val name: String, val description: String = goal.description, val goal: Goal, val inputType: Class<I>, val listeners: List<AgenticEventListener> = emptyList())

Spring AI ToolCallback implementation for a specific goal.

Link copied to clipboard

Names published tools.

Link copied to clipboard
class Handoffs(autonomy: Autonomy, val outputTypes: List<Class<*>>, applicationName: String) : ToolCallbackPublisher

Handoffs to local agents.

Link copied to clipboard
class PerGoalToolCallbackFactory(autonomy: Autonomy, applicationName: String, textCommunicator: TextCommunicator = PromptedTextCommunicator, goalToolNamingStrategy: GoalToolNamingStrategy = ApplicationNameGoalToolNamingStrategy( applicationName ))

Generic tool callback provider that publishes a tool callback for each goal. Each invocation will result in a distinct AgentProcess being executed. Multiple instances of this class can be created, each with different configuration, for different purposes. Tools can be exposed to actions or via an MCP server etc. Return a tool callback for each goal taking user input. If the goal specifies startingInputTypes, add a tool for each of those input types. Add a continue tool for any process that requires user input and is waiting for a form submission.

Link copied to clipboard

Prompted awaitable communicator

Link copied to clipboard

A simple naming strategy that uses the last two segments of the goal name to create a tool name. For example, "com.myco.MyAgent.myGoal" becomes "MyAgent_myGoal".

Link copied to clipboard

Communicator for awaiting user input.

Link copied to clipboard
class ToolGroupFactory(autonomy: Autonomy, goalToolNamingStrategy: GoalToolNamingStrategy = SanitizedGoalNameToolNamingStrategy)
Link copied to clipboard
data class TypeWrappingToolDefinition(name: String, description: String, type: Class<*>)

Tool definition that wraps an input type, generating a JSON schema for it.

Properties

Link copied to clipboard
Link copied to clipboard