Trait Middleware
Source pub trait Middleware: Send + Sync {
// Provided methods
fn before_model_call(
&self,
_request: &ProviderRequest,
) -> Result<(), CoreError> { ... }
fn after_model_call(
&self,
_request: &ProviderRequest,
_response: &ModelTurn,
) -> Result<(), CoreError> { ... }
fn pre_tool_call(
&self,
_context: &ToolContext,
_call: &ToolCall,
) -> Result<(), CoreError> { ... }
fn post_tool_call(
&self,
_context: &ToolContext,
_result: &ToolResult,
) -> Result<(), CoreError> { ... }
fn on_run_finished(&self, _output: &RunOutput) -> Result<(), CoreError> { ... }
}