#[non_exhaustive]pub struct AgentContext {
pub args: Value,
pub session: IndexMap<String, Value>,
}Expand description
Structured context for an agent request.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.args: ValueTool arguments as a JSON object. Flattened to top level on serialization.
session: IndexMap<String, Value>Free-form session metadata: ip, user_agent, mfa, ts, etc.
Implementations§
Source§impl AgentContext
impl AgentContext
Sourcepub fn with_arg(self, k: impl Into<String>, v: impl Into<Value>) -> Self
pub fn with_arg(self, k: impl Into<String>, v: impl Into<Value>) -> Self
Add a tool argument and return self for chaining.
Sourcepub fn with_session(self, k: impl Into<String>, v: impl Into<Value>) -> Self
pub fn with_session(self, k: impl Into<String>, v: impl Into<Value>) -> Self
Add a session metadata field and return self for chaining.
Sourcepub fn to_json_object(&self) -> Map<String, Value>
pub fn to_json_object(&self) -> Map<String, Value>
Serialize to a JSON object suitable for Context::from_json_str.
Args are flattened into the top-level so they match the action’s
declared schema fields. Session metadata is grouped under a
session record so it doesn’t collide with action-specific fields.
Trait Implementations§
Source§impl Clone for AgentContext
impl Clone for AgentContext
Source§fn clone(&self) -> AgentContext
fn clone(&self) -> AgentContext
Returns a duplicate of the value. Read more
1.0.0 · 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 AgentContext
impl Debug for AgentContext
Source§impl Default for AgentContext
impl Default for AgentContext
Source§fn default() -> AgentContext
fn default() -> AgentContext
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for AgentContext
impl<'de> Deserialize<'de> for AgentContext
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
Source§impl PartialEq for AgentContext
impl PartialEq for AgentContext
Source§impl Serialize for AgentContext
impl Serialize for AgentContext
impl StructuralPartialEq for AgentContext
Auto Trait Implementations§
impl Freeze for AgentContext
impl RefUnwindSafe for AgentContext
impl Send for AgentContext
impl Sync for AgentContext
impl Unpin for AgentContext
impl UnwindSafe for AgentContext
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,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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