pub trait EventSink: Send {
Show 20 methods
// Required methods
fn on_text(&mut self, text: &str);
fn on_tool_call(&mut self, name: &str, arguments: &str);
fn on_tool_result(&mut self, name: &str, result: &str, is_error: bool);
fn on_confirmation_request(&mut self, prompt: &str) -> bool;
// Provided methods
fn on_turn_start(&mut self) { ... }
fn on_command_started(&mut self, _command: &str) { ... }
fn on_command_output(&mut self, _stream: &str, _chunk: &str) { ... }
fn on_command_finished(
&mut self,
_success: bool,
_exit_code: i32,
_duration_ms: u64,
) { ... }
fn on_preview_started(&mut self, _path: &str, _port: u16) { ... }
fn on_preview_ready(&mut self, _url: &str, _port: u16) { ... }
fn on_preview_failed(&mut self, _message: &str) { ... }
fn on_preview_stopped(&mut self, _reason: &str) { ... }
fn on_swarm_started(&mut self, _description: &str) { ... }
fn on_swarm_progress(&mut self, _status: &str) { ... }
fn on_swarm_finished(&mut self, _summary: &str) { ... }
fn on_swarm_failed(&mut self, _message: &str) { ... }
fn on_text_chunk(&mut self, _chunk: &str) { ... }
fn on_task_plan(&mut self, _tasks: &[Task]) { ... }
fn on_task_progress(
&mut self,
_task_id: u32,
_completed: bool,
_tasks: &[Task],
) { ... }
fn on_clarification_request(
&mut self,
_request: &ClarificationRequest,
) -> ClarificationResponse { ... }
}Expand description
Event sink trait for different output targets (CLI, RPC, SDK).
Required Methods§
Sourcefn on_tool_call(&mut self, name: &str, arguments: &str)
fn on_tool_call(&mut self, name: &str, arguments: &str)
Called when a tool is about to be invoked.
Sourcefn on_tool_result(&mut self, name: &str, result: &str, is_error: bool)
fn on_tool_result(&mut self, name: &str, result: &str, is_error: bool)
Called when a tool returns a result.
Sourcefn on_confirmation_request(&mut self, prompt: &str) -> bool
fn on_confirmation_request(&mut self, prompt: &str) -> bool
Called when the agent needs user confirmation (L3 security). Returns true if the user approves.
Provided Methods§
Sourcefn on_turn_start(&mut self)
fn on_turn_start(&mut self)
Called at the start of each conversation turn (before any other events).
Sourcefn on_command_started(&mut self, _command: &str)
fn on_command_started(&mut self, _command: &str)
Called when a command tool starts execution.
Sourcefn on_command_output(&mut self, _stream: &str, _chunk: &str)
fn on_command_output(&mut self, _stream: &str, _chunk: &str)
Called when a command tool emits incremental stdout/stderr output.
Sourcefn on_command_finished(
&mut self,
_success: bool,
_exit_code: i32,
_duration_ms: u64,
)
fn on_command_finished( &mut self, _success: bool, _exit_code: i32, _duration_ms: u64, )
Called when a command tool finishes execution.
Sourcefn on_preview_started(&mut self, _path: &str, _port: u16)
fn on_preview_started(&mut self, _path: &str, _port: u16)
Called when preview server startup begins.
Sourcefn on_preview_ready(&mut self, _url: &str, _port: u16)
fn on_preview_ready(&mut self, _url: &str, _port: u16)
Called when preview server is ready.
Sourcefn on_preview_failed(&mut self, _message: &str)
fn on_preview_failed(&mut self, _message: &str)
Called when preview server startup fails.
Sourcefn on_preview_stopped(&mut self, _reason: &str)
fn on_preview_stopped(&mut self, _reason: &str)
Called when preview server stops.
Sourcefn on_swarm_started(&mut self, _description: &str)
fn on_swarm_started(&mut self, _description: &str)
Called when swarm delegation starts.
Sourcefn on_swarm_progress(&mut self, _status: &str)
fn on_swarm_progress(&mut self, _status: &str)
Called with lightweight swarm progress updates.
Sourcefn on_swarm_finished(&mut self, _summary: &str)
fn on_swarm_finished(&mut self, _summary: &str)
Called when swarm delegation finishes with a summary.
Sourcefn on_swarm_failed(&mut self, _message: &str)
fn on_swarm_failed(&mut self, _message: &str)
Called when swarm delegation fails or falls back.
Sourcefn on_text_chunk(&mut self, _chunk: &str)
fn on_text_chunk(&mut self, _chunk: &str)
Called for streaming text chunks.
Sourcefn on_task_plan(&mut self, _tasks: &[Task])
fn on_task_plan(&mut self, _tasks: &[Task])
Called when a task plan is generated. (Phase 2)
Sourcefn on_task_progress(&mut self, _task_id: u32, _completed: bool, _tasks: &[Task])
fn on_task_progress(&mut self, _task_id: u32, _completed: bool, _tasks: &[Task])
Called when a task’s status changes. (Phase 2)
tasks contains the full updated task list for progress rendering.
Sourcefn on_clarification_request(
&mut self,
_request: &ClarificationRequest,
) -> ClarificationResponse
fn on_clarification_request( &mut self, _request: &ClarificationRequest, ) -> ClarificationResponse
Called when the agent is about to stop and wants user clarification.
Returns Continue(hint) to keep going or Stop to terminate.