pub struct AgentCard {
pub name: String,
pub description: String,
pub version: String,
pub skills: Vec<Skill>,
pub authentication: AuthConfig,
pub provider: ProviderInfo,
pub docs_url: Option<String>,
}Expand description
A2A Agent Card structure
Describes this agent’s capabilities to other agents.
Served at /.well-known/agent.json.
§Example
use vex_api::a2a::AgentCard;
let card = AgentCard::new("vex-verifier")
.with_description("VEX adversarial verification agent")
.with_skill("verify", "Verify claims with adversarial debate");Fields§
§name: StringAgent name (unique identifier)
description: StringHuman-readable description
version: StringProtocol version
skills: Vec<Skill>Agent capabilities (skills)
authentication: AuthConfigAuthentication configuration
provider: ProviderInfoProvider information
docs_url: Option<String>Optional URL for agent documentation
Implementations§
Source§impl AgentCard
impl AgentCard
Sourcepub fn with_description(self, desc: impl Into<String>) -> Self
pub fn with_description(self, desc: impl Into<String>) -> Self
Set the agent description
Sourcepub fn with_skill(
self,
id: impl Into<String>,
description: impl Into<String>,
) -> Self
pub fn with_skill( self, id: impl Into<String>, description: impl Into<String>, ) -> Self
Add a skill to the agent
Sourcepub fn with_skill_full(self, skill: Skill) -> Self
pub fn with_skill_full(self, skill: Skill) -> Self
Add a skill with full details
Sourcepub fn with_auth(self, auth: AuthConfig) -> Self
pub fn with_auth(self, auth: AuthConfig) -> Self
Set authentication config
Sourcepub fn vex_default() -> Self
pub fn vex_default() -> Self
Create the default VEX agent card
Trait Implementations§
Source§impl<'de> Deserialize<'de> for AgentCard
impl<'de> Deserialize<'de> for AgentCard
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 AgentCard
impl RefUnwindSafe for AgentCard
impl Send for AgentCard
impl Sync for AgentCard
impl Unpin for AgentCard
impl UnwindSafe for AgentCard
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
🔬This is a nightly-only experimental API. (
clone_to_uninit)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 more