pub enum RpcEvent {
AgentStart,
TextChunk {
text: String,
},
Thinking,
ThinkingEnd,
ToolCallDelta {
tool_call_id: String,
args_delta: String,
},
ToolStart {
tool: String,
},
ToolEnd {
tool: String,
},
AgentEnd,
Error {
message: String,
},
ExtensionError {
extension_path: String,
event: String,
error: String,
},
}Expand description
Events emitted by the RPC server to the client during streaming.
Variants§
AgentStart
Agent started processing
TextChunk
Streaming text chunk
Thinking
Agent is thinking
ThinkingEnd
A reasoning/thinking span ended — the model is about to produce the answer or start another content block. Signal-only. Fires per span for interleaved-reasoning models (Claude 4, o-series).
ToolCallDelta
Partial tool-call arguments streamed while the LLM is still
constructing a tool call (before tool_start). Each args_delta is
a raw JSON fragment — accumulate per tool_call_id.
Fields
ToolStart
Tool execution started
ToolEnd
Tool execution finished
AgentEnd
Agent finished processing
Error
Error occurred
ExtensionError
Extension error
Trait Implementations§
Auto Trait Implementations§
impl Freeze for RpcEvent
impl RefUnwindSafe for RpcEvent
impl Send for RpcEvent
impl Sync for RpcEvent
impl Unpin for RpcEvent
impl UnsafeUnpin for RpcEvent
impl UnwindSafe for RpcEvent
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> GetSetFdFlags for T
impl<T> GetSetFdFlags for T
Source§fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
Query the “status” flags for the
self file descriptor.Source§fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
Source§fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: Sized + AsFilelike,
fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: Sized + AsFilelike,
Set the “status” flags for the
self file descriptor. Read moreSource§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