Agent Tool
data class AgentTool<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
Tool that can be used to execute an agent. Supports "Subagent" or "handoff" style usage.
This is the framework-agnostic version that implements Embabel's Tool interface.
Constructors
Link copied to clipboard
constructor(autonomy: Autonomy, agent: Agent, textCommunicator: TextCommunicator, objectMapper: <Error class: unknown class>, inputType: Class<I>, processOptionsCreator: (parentAgentProcess: AgentProcess) -> ProcessOptions)
Properties
Functions
Link copied to clipboard
Execute the tool with JSON input.
Link copied to clipboard
Extension function to convert an Embabel Tool to a Spring AI ToolCallback.
Link copied to clipboard
Wrap this tool to conditionally await before execution.
Link copied to clipboard
Wrap this tool to always require confirmation before execution.
Link copied to clipboard
Create a new tool with a different description. Useful for providing context-specific descriptions while keeping the same functionality.
Link copied to clipboard
fun Tool.withEventPublication(agentProcess: AgentProcess, action: Action?, llmOptions: <Error class: unknown class>): Tool
Extension function to wrap a Tool with event publication.