Skip to main content

ToolExecutionFn

Type Alias ToolExecutionFn 

Source
pub type ToolExecutionFn = Arc<dyn Fn(&str, Json, ToolExecutionNextFn) -> Pin<Box<dyn Future<Output = Result<ToolExecutionInterceptOutcome>> + Send>> + Send + Sync>;
Expand description

Wrap or replace tool execution.

A tool execution intercept receives the tool name, the current argument payload, and the continuation representing the rest of the chain.

§Parameters

  • First argument: Tool name associated with the execution.
  • Second argument: Current JSON argument payload.
  • Third argument: Continuation for the remaining execution chain.

§Returns

A future resolving to the canonical tool execution outcome, containing the tool result and any pending lifecycle marks produced by this intercept.

§Errors

The future resolves to an error when the intercept or remaining execution chain fails.

Aliased Type§

pub struct ToolExecutionFn { /* private fields */ }