pub struct AgentCallbacks {
pub on_iteration_start: Option<Arc<dyn Fn(&AgentEvent) + Send + Sync>>,
pub on_llm_request: Option<Arc<dyn Fn(&AgentEvent) + Send + Sync>>,
pub on_llm_response: Option<Arc<dyn Fn(&AgentEvent) + Send + Sync>>,
pub on_thinking: Option<Arc<dyn Fn(&AgentEvent) + Send + Sync>>,
pub on_code_generated: Option<Arc<dyn Fn(&AgentEvent) + Send + Sync>>,
pub on_code_executed: Option<Arc<dyn Fn(&AgentEvent) + Send + Sync>>,
pub on_tool_call: Option<Arc<dyn Fn(&AgentEvent) + Send + Sync>>,
pub on_tool_result: Option<Arc<dyn Fn(&AgentEvent) + Send + Sync>>,
pub on_finish: Option<Arc<dyn Fn(&AgentEvent) + Send + Sync>>,
pub on_error: Option<Arc<dyn Fn(&AgentEvent) + Send + Sync>>,
pub on_event: Option<Arc<dyn Fn(&AgentEvent) + Send + Sync>>,
/* private fields */
}Expand description
Storage for agent callbacks
Fields§
§on_iteration_start: Option<Arc<dyn Fn(&AgentEvent) + Send + Sync>>§on_llm_request: Option<Arc<dyn Fn(&AgentEvent) + Send + Sync>>§on_llm_response: Option<Arc<dyn Fn(&AgentEvent) + Send + Sync>>§on_thinking: Option<Arc<dyn Fn(&AgentEvent) + Send + Sync>>§on_code_generated: Option<Arc<dyn Fn(&AgentEvent) + Send + Sync>>§on_code_executed: Option<Arc<dyn Fn(&AgentEvent) + Send + Sync>>§on_tool_call: Option<Arc<dyn Fn(&AgentEvent) + Send + Sync>>§on_tool_result: Option<Arc<dyn Fn(&AgentEvent) + Send + Sync>>§on_finish: Option<Arc<dyn Fn(&AgentEvent) + Send + Sync>>§on_error: Option<Arc<dyn Fn(&AgentEvent) + Send + Sync>>§on_event: Option<Arc<dyn Fn(&AgentEvent) + Send + Sync>>Catch-all callback for any event
Implementations§
Source§impl AgentCallbacks
impl AgentCallbacks
Sourcepub fn emit(&self, event: &AgentEvent)
pub fn emit(&self, event: &AgentEvent)
Emit an event to the appropriate callback(s)
Trait Implementations§
Source§impl Clone for AgentCallbacks
impl Clone for AgentCallbacks
Source§fn clone(&self) -> AgentCallbacks
fn clone(&self) -> AgentCallbacks
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Default for AgentCallbacks
impl Default for AgentCallbacks
Source§fn default() -> AgentCallbacks
fn default() -> AgentCallbacks
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for AgentCallbacks
impl !RefUnwindSafe for AgentCallbacks
impl Send for AgentCallbacks
impl Sync for AgentCallbacks
impl Unpin for AgentCallbacks
impl UnsafeUnpin for AgentCallbacks
impl !UnwindSafe for AgentCallbacks
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more