pub struct AgentSnapshot {
pub agent_id: String,
pub config: AgentConfig,
pub state: AgentState,
pub tool_manifest: ToolManifest,
pub parent_id: Option<String>,
pub created_at_ms: u64,
pub snapshot_at_ms: u64,
pub metrics: MetricsSnapshot,
pub metadata: HashMap<String, Value>,
}Expand description
A complete snapshot of an agent at a point in time.
Can be serialized to JSON and stored to disk for suspend/resume.
Fields§
§agent_id: StringUnique agent identifier.
config: AgentConfigConfiguration at time of snapshot.
state: AgentStateConversation state.
tool_manifest: ToolManifestTool manifest (names/schemas; closures cannot be serialized).
parent_id: Option<String>Parent agent ID, if this agent was spawned as a child.
created_at_ms: u64Wall-clock time when the agent was created (ms since epoch).
snapshot_at_ms: u64Wall-clock time when the snapshot was taken (ms since epoch).
metrics: MetricsSnapshotMetrics at time of snapshot.
metadata: HashMap<String, Value>Arbitrary extension metadata.
Implementations§
Source§impl AgentSnapshot
impl AgentSnapshot
Sourcepub fn from_agent(
agent_id: String,
config: &AgentConfig,
state: &AgentState,
tools: &ToolRegistry,
parent_id: Option<String>,
metadata: HashMap<String, Value>,
) -> Self
pub fn from_agent( agent_id: String, config: &AgentConfig, state: &AgentState, tools: &ToolRegistry, parent_id: Option<String>, metadata: HashMap<String, Value>, ) -> Self
Create a snapshot from a running agent.
Sourcepub fn from_bytes(bytes: &[u8]) -> Result<Self>
pub fn from_bytes(bytes: &[u8]) -> Result<Self>
Deserialize from a byte slice.
Sourcepub fn estimated_size_bytes(&self) -> usize
pub fn estimated_size_bytes(&self) -> usize
Estimate serialized size.
Trait Implementations§
Source§impl Clone for AgentSnapshot
impl Clone for AgentSnapshot
Source§fn clone(&self) -> AgentSnapshot
fn clone(&self) -> AgentSnapshot
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for AgentSnapshot
impl Debug for AgentSnapshot
Source§impl<'de> Deserialize<'de> for AgentSnapshot
impl<'de> Deserialize<'de> for AgentSnapshot
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 !RefUnwindSafe for AgentSnapshot
impl !UnwindSafe for AgentSnapshot
impl Freeze for AgentSnapshot
impl Send for AgentSnapshot
impl Sync for AgentSnapshot
impl Unpin for AgentSnapshot
impl UnsafeUnpin for AgentSnapshot
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