Tool
A tool with a no-metadata execute shape. The runtime dispatches it through ToolBase.execute; this subclass's final override forwards to execute and discards any per-call ToolCallMetadata supplied by the caller or contributed by features.
Existing tool implementations subclass this type. Implementations that need typed access to the live AIAgentContext should extend ai.koog.agents.core.agent.tools.AgentContextAwareTool (in agents-core) instead; implementations that need raw ToolCallMetadata entries (for example a tracing span id contributed by a feature) should extend ToolBase directly.
Type Parameters
The type of arguments the tool accepts.
The type of result the tool returns.
Inheritors
Constructors
Convenience constructor that generates ToolDescriptor from the provided name, description and argsType.
Properties
A ToolDescriptor representing the tool's schema, including its name, description, and parameters.
The name of the tool from the descriptor.
Type token representing result type TResult.
Functions
Decodes the provided raw JSON arguments into an instance of the specified arguments type.
Decodes the provided raw JSON element into an instance of the specified result type.
Encodes the given arguments into a JSON representation.
Encodes the provided arguments into a JSON string representation.
Encodes the provided arguments into a JSON string representation without type safety checks.
Encodes the given arguments into a JSON representation without type safety checks.
Encodes the given result into a JSON representation.
Encodes the given result of type TResult to its string representation. This is used to provide the LLM with the result of the tool execution. It can be overridden to customize the string representation the LLM will see.
Encodes the provided result object into a JSON string representation without type safety checks.
Encodes the given result object into a JSON representation without type safety checks.
Executes the tool with the provided arguments without type safety checks.
Executes the tool with the provided arguments and metadata without type safety checks.