#[non_exhaustive]pub enum SessionUpdate {
Show 13 variants
UserMessageChunk(ContentChunk),
AgentMessageChunk(ContentChunk),
AgentThoughtChunk(ContentChunk),
ToolCall(ToolCall),
ToolCallUpdate(ToolCallUpdate),
Plan(Plan),
PlanUpdate(PlanUpdate),
PlanRemoved(PlanRemoved),
AvailableCommandsUpdate(AvailableCommandsUpdate),
CurrentModeUpdate(CurrentModeUpdate),
ConfigOptionUpdate(ConfigOptionUpdate),
SessionInfoUpdate(SessionInfoUpdate),
UsageUpdate(UsageUpdate),
}Expand description
Different types of updates that can be sent during session processing.
These updates provide real-time feedback about the agent’s progress.
See protocol docs: Agent Reports Output
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
UserMessageChunk(ContentChunk)
A chunk of the user’s message being streamed.
AgentMessageChunk(ContentChunk)
A chunk of the agent’s response being streamed.
AgentThoughtChunk(ContentChunk)
A chunk of the agent’s internal reasoning being streamed.
ToolCall(ToolCall)
Notification that a new tool call has been initiated.
ToolCallUpdate(ToolCallUpdate)
Update on the status or results of a tool call.
Plan(Plan)
The agent’s execution plan for complex tasks. See protocol docs: Agent Plan
PlanUpdate(PlanUpdate)
unstable_plan_operations only.UNSTABLE
This capability is not part of the spec yet, and may be removed or changed at any point.
A content update for a plan identified by ID.
PlanRemoved(PlanRemoved)
unstable_plan_operations only.UNSTABLE
This capability is not part of the spec yet, and may be removed or changed at any point.
Removal notice for a plan identified by ID.
AvailableCommandsUpdate(AvailableCommandsUpdate)
Available commands are ready or have changed
CurrentModeUpdate(CurrentModeUpdate)
The current mode of the session has changed
See protocol docs: Session Modes
ConfigOptionUpdate(ConfigOptionUpdate)
Session configuration options have been updated.
SessionInfoUpdate(SessionInfoUpdate)
Session metadata has been updated (title, timestamps, custom metadata)
UsageUpdate(UsageUpdate)
Context window and cost update for the session.
Trait Implementations§
Source§impl Clone for SessionUpdate
impl Clone for SessionUpdate
Source§fn clone(&self) -> SessionUpdate
fn clone(&self) -> SessionUpdate
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SessionUpdate
impl Debug for SessionUpdate
Source§impl<'de> Deserialize<'de> for SessionUpdate
impl<'de> Deserialize<'de> for SessionUpdate
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl IntoV2 for SessionUpdate
Available on crate feature unstable_protocol_v2 only.
impl IntoV2 for SessionUpdate
unstable_protocol_v2 only.Source§impl JsonSchema for SessionUpdate
impl JsonSchema for SessionUpdate
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read moreSource§impl PartialEq for SessionUpdate
impl PartialEq for SessionUpdate
Source§fn eq(&self, other: &SessionUpdate) -> bool
fn eq(&self, other: &SessionUpdate) -> bool
self and other values to be equal, and is used by ==.