pub enum AgentEventType {
Show 26 variants
DiagnosticLog {
message: String,
},
RunStarted {},
RunFinished {
success: bool,
total_steps: usize,
failed_steps: usize,
usage: Option<RunUsage>,
context_budget: Option<ContextBudget>,
},
RunError {
message: String,
code: Option<String>,
usage: Option<RunUsage>,
},
PlanStarted {
initial_plan: bool,
},
PlanFinished {
total_steps: usize,
},
PlanPruned {
removed_steps: Vec<String>,
},
StepStarted {
step_id: String,
step_index: usize,
},
StepCompleted {
step_id: String,
success: bool,
context_budget: Option<ContextBudget>,
usage: Option<RunUsage>,
},
ReflectStarted {},
ReflectFinished {
should_retry: bool,
reason: Option<String>,
},
ToolExecutionStart {
step_id: String,
tool_call_id: String,
tool_call_name: String,
input: Value,
},
ToolExecutionEnd {
step_id: String,
tool_call_id: String,
tool_call_name: String,
success: bool,
},
TextMessageStart {
message_id: String,
step_id: String,
role: MessageRole,
is_final: Option<bool>,
},
TextMessageContent {
message_id: String,
step_id: String,
delta: String,
stripped_content: Option<Vec<(usize, String)>>,
},
TextMessageEnd {
message_id: String,
step_id: String,
},
ToolCalls {
step_id: String,
parent_message_id: Option<String>,
tool_calls: Vec<ToolCall>,
},
ToolResults {
step_id: String,
parent_message_id: Option<String>,
results: Vec<ToolResponse>,
},
AgentHandover {
from_agent: String,
to_agent: String,
reason: Option<String>,
},
LiveView {
view_id: String,
url: String,
title: Option<String>,
display_mode: Option<String>,
width: Option<u32>,
height: Option<u32>,
},
BrowserSessionStarted {
session_id: String,
viewer_url: Option<String>,
stream_url: Option<String>,
},
InlineHookRequested {
request: InlineHookRequest,
},
TodosUpdated {
formatted_todos: String,
action: String,
todo_count: usize,
changes: Vec<TodoChange>,
},
ContextCompaction {
tier: CompactionTier,
tokens_before: usize,
tokens_after: usize,
entries_affected: usize,
context_limit: usize,
usage_ratio: f64,
summary: Option<String>,
reinjected_skills: Vec<String>,
context_budget: Option<ContextBudget>,
},
ContextBudgetUpdate {
budget: ContextBudget,
is_warning: bool,
is_critical: bool,
},
ChannelReply {
reply: ChannelReply,
},
}Variants§
DiagnosticLog
Verbose diagnostic message streamed from server to client (only emitted when verbose=true).
RunStarted
RunFinished
Fields
context_budget: Option<ContextBudget>RunError
Fields
PlanStarted
PlanFinished
PlanPruned
StepStarted
StepCompleted
Fields
context_budget: Option<ContextBudget>ReflectStarted
ReflectFinished
ToolExecutionStart
ToolExecutionEnd
TextMessageStart
TextMessageContent
Fields
TextMessageEnd
ToolCalls
ToolResults
AgentHandover
LiveView
A live, embeddable view produced by a tool (e.g. browsr viewer, Grafana dashboard, map widget). The channel renders it inline as an iframe (web) or as a clickable link (Telegram, WhatsApp, CLI).
Fields
BrowserSessionStarted
InlineHookRequested
Fields
request: InlineHookRequestTodosUpdated
Fields
changes: Vec<TodoChange>Per-call diff: which items got added, had their status
changed, or were removed. Empty when the renderer can’t
or didn’t compute it (e.g. the very first write_todos
call has no prior list to diff against — every item is
Added). Renderers should prefer rendering this list
when non-empty and fall back to formatted_todos.
ContextCompaction
ContextBudgetUpdate
Emitted each turn with the current context budget breakdown.
ChannelReply
A structured channel reply emitted by a workflow StepKind::Reply
step. The gateway renders it per channel; non-channel consumers
(CLI, web) render reply.text and ignore buttons they can’t show.
Fields
reply: ChannelReplyTrait Implementations§
Source§impl Clone for AgentEventType
impl Clone for AgentEventType
Source§fn clone(&self) -> AgentEventType
fn clone(&self) -> AgentEventType
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more