pub enum Event {
Show 14 variants
NewTask {
actor_id: ActorID,
task: Task,
},
TaskStarted {
sub_id: SubmissionId,
actor_id: ActorID,
actor_name: String,
task_description: String,
},
TaskComplete {
sub_id: SubmissionId,
actor_id: ActorID,
actor_name: String,
result: String,
},
TaskError {
sub_id: SubmissionId,
actor_id: ActorID,
error: String,
},
PublishMessage {
topic_name: String,
topic_type: TypeId,
message: Arc<dyn Any + Send + Sync>,
},
SendMessage {
message: String,
actor_id: ActorID,
},
ToolCallRequested {
id: String,
tool_name: String,
arguments: String,
},
ToolCallCompleted {
id: String,
tool_name: String,
result: Value,
},
ToolCallFailed {
id: String,
tool_name: String,
error: String,
},
TurnStarted {
turn_number: usize,
max_turns: usize,
},
TurnCompleted {
turn_number: usize,
final_turn: bool,
},
StreamChunk {
sub_id: SubmissionId,
chunk: StreamChunk,
},
StreamToolCall {
sub_id: SubmissionId,
tool_call: Value,
},
StreamComplete {
sub_id: SubmissionId,
},
}Expand description
Protocol events represent the various events that can occur during actor execution
Variants§
NewTask
TaskStarted
A task has started execution
TaskComplete
A task has been completed
TaskError
A task encountered an error
PublishMessage
SendMessage
ToolCallRequested
Tool call requested (with ID)
ToolCallCompleted
Tool call completed (with ID and result)
ToolCallFailed
Tool call has failed
TurnStarted
A turn has started
TurnCompleted
A turn has completed
StreamChunk
Streaming chunk from agent
StreamToolCall
Streaming tool call chunk
StreamComplete
Streaming completed
Fields
§
sub_id: SubmissionIdTrait Implementations§
Source§impl<'de> Deserialize<'de> for Event
impl<'de> Deserialize<'de> for Event
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>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for Event
impl !RefUnwindSafe for Event
impl Send for Event
impl Sync for Event
impl Unpin for Event
impl !UnwindSafe for Event
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
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>
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 moreSource§impl<T> Message for T
impl<T> Message for T
Source§fn from_boxed(m: BoxedMessage) -> Result<Self, BoxedDowncastErr>
fn from_boxed(m: BoxedMessage) -> Result<Self, BoxedDowncastErr>
Convert a BoxedMessage to this concrete type
Source§fn box_message(self, pid: &ActorId) -> Result<BoxedMessage, BoxedDowncastErr>
fn box_message(self, pid: &ActorId) -> Result<BoxedMessage, BoxedDowncastErr>
Convert this message to a BoxedMessage