pub struct ToolOutputEvent {
pub tool_name: ToolName,
pub display: String,
pub diff: Option<DiffData>,
pub filter_stats: Option<String>,
pub kept_lines: Option<Vec<usize>>,
pub locations: Option<Vec<String>>,
pub tool_call_id: String,
pub is_error: bool,
pub terminal_id: Option<String>,
pub parent_tool_use_id: Option<String>,
pub raw_response: Option<Value>,
pub started_at: Option<Instant>,
}Expand description
Event carrying data for a completed tool output, emitted after execution.
Passed by value to Channel::send_tool_output and carried by
LoopbackEvent::ToolOutput. All fields are owned — no lifetime parameters.
Fields§
§tool_name: ToolNameName of the tool that produced this output.
display: StringHuman-readable output text.
diff: Option<DiffData>Optional diff for file-editing tools.
filter_stats: Option<String>Optional filter statistics from output filtering.
kept_lines: Option<Vec<usize>>Kept line indices after filtering (for display).
locations: Option<Vec<String>>Source locations for code search results.
tool_call_id: StringOpaque tool call ID matching the corresponding ToolStartEvent.
is_error: boolWhether this output represents an error.
terminal_id: Option<String>Terminal ID for shell tool calls routed through the IDE terminal.
parent_tool_use_id: Option<String>Set when this tool output belongs to a subagent; identifies the parent’s tool_call_id.
raw_response: Option<Value>Structured tool response payload for ACP intermediate tool_call_update notifications.
started_at: Option<Instant>Wall-clock instant when the corresponding ToolStartEvent was emitted.
Trait Implementations§
Source§impl Clone for ToolOutputEvent
impl Clone for ToolOutputEvent
Source§fn clone(&self) -> ToolOutputEvent
fn clone(&self) -> ToolOutputEvent
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for ToolOutputEvent
impl RefUnwindSafe for ToolOutputEvent
impl Send for ToolOutputEvent
impl Sync for ToolOutputEvent
impl Unpin for ToolOutputEvent
impl UnsafeUnpin for ToolOutputEvent
impl UnwindSafe for ToolOutputEvent
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
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>
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>
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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request