pub struct PluginConfig {Show 14 fields
pub name: String,
pub on_user_message: Option<OnUserMessageCallback>,
pub on_event: Option<OnEventCallback>,
pub before_run: Option<BeforeRunCallback>,
pub after_run: Option<AfterRunCallback>,
pub before_agent: Option<BeforeAgentCallback>,
pub after_agent: Option<AfterAgentCallback>,
pub before_model: Option<BeforeModelCallback>,
pub after_model: Option<AfterModelCallback>,
pub on_model_error: Option<OnModelErrorCallback>,
pub before_tool: Option<BeforeToolCallback>,
pub after_tool: Option<AfterToolCallback>,
pub on_tool_error: Option<OnToolErrorCallback>,
pub close_fn: Option<Box<dyn Fn() -> Pin<Box<dyn Future<Output = ()> + Send>> + Send + Sync>>,
}Expand description
Fields§
§name: StringUnique name for this plugin
on_user_message: Option<OnUserMessageCallback>Called when a user message is received (can modify)
on_event: Option<OnEventCallback>Called for each event (can modify)
before_run: Option<BeforeRunCallback>Called before the run starts (can skip run)
after_run: Option<AfterRunCallback>Called after the run completes (cleanup)
before_agent: Option<BeforeAgentCallback>Called before agent execution
after_agent: Option<AfterAgentCallback>Called after agent execution
before_model: Option<BeforeModelCallback>Called before LLM call (can modify request or skip)
after_model: Option<AfterModelCallback>Called after LLM call (can modify response)
on_model_error: Option<OnModelErrorCallback>Called when LLM returns an error
before_tool: Option<BeforeToolCallback>Called before tool execution
after_tool: Option<AfterToolCallback>Called after tool execution
on_tool_error: Option<OnToolErrorCallback>Called when tool returns an error
close_fn: Option<Box<dyn Fn() -> Pin<Box<dyn Future<Output = ()> + Send>> + Send + Sync>>Cleanup function called when plugin is closed
Trait Implementations§
Auto Trait Implementations§
impl Freeze for PluginConfig
impl !RefUnwindSafe for PluginConfig
impl Send for PluginConfig
impl Sync for PluginConfig
impl Unpin for PluginConfig
impl UnsafeUnpin for PluginConfig
impl !UnwindSafe for PluginConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more