#[non_exhaustive]pub struct AgentCapabilities {
pub load_session: bool,
pub prompt_capabilities: PromptCapabilities,
pub mcp_capabilities: McpCapabilities,
pub session_capabilities: SessionCapabilities,
pub auth: AgentAuthCapabilities,
pub meta: Option<Map<String, Value>>,
}Expand description
Capabilities supported by the agent.
Advertised during initialization to inform the client about available features and content types.
See protocol docs: Agent Capabilities
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.load_session: boolWhether the agent supports session/load.
prompt_capabilities: PromptCapabilitiesPrompt capabilities supported by the agent.
mcp_capabilities: McpCapabilitiesMCP capabilities supported by the agent.
session_capabilities: SessionCapabilitiesSession lifecycle and prompt capabilities advertised by the agent.
auth: AgentAuthCapabilitiesAuthentication-related capabilities supported by the agent.
meta: Option<Map<String, Value>>The _meta property is reserved by ACP to allow clients and agents to attach additional metadata to their interactions. Implementations MUST NOT make assumptions about values at these keys.
See protocol docs: Extensibility
Implementations§
Source§impl AgentCapabilities
impl AgentCapabilities
Sourcepub fn new() -> AgentCapabilities
pub fn new() -> AgentCapabilities
Builds an empty AgentCapabilities; use builder methods to advertise supported sub-capabilities.
Sourcepub fn load_session(self, load_session: bool) -> AgentCapabilities
pub fn load_session(self, load_session: bool) -> AgentCapabilities
Whether the agent supports session/load.
Sourcepub fn prompt_capabilities(
self,
prompt_capabilities: PromptCapabilities,
) -> AgentCapabilities
pub fn prompt_capabilities( self, prompt_capabilities: PromptCapabilities, ) -> AgentCapabilities
Prompt capabilities supported by the agent.
Sourcepub fn mcp_capabilities(
self,
mcp_capabilities: McpCapabilities,
) -> AgentCapabilities
pub fn mcp_capabilities( self, mcp_capabilities: McpCapabilities, ) -> AgentCapabilities
MCP capabilities supported by the agent.
Sourcepub fn session_capabilities(
self,
session_capabilities: SessionCapabilities,
) -> AgentCapabilities
pub fn session_capabilities( self, session_capabilities: SessionCapabilities, ) -> AgentCapabilities
Session capabilities supported by the agent.
Sourcepub fn auth(self, auth: AgentAuthCapabilities) -> AgentCapabilities
pub fn auth(self, auth: AgentAuthCapabilities) -> AgentCapabilities
Authentication-related capabilities supported by the agent.
Sourcepub fn meta(
self,
meta: impl IntoOption<Map<String, Value>>,
) -> AgentCapabilities
pub fn meta( self, meta: impl IntoOption<Map<String, Value>>, ) -> AgentCapabilities
The _meta property is reserved by ACP to allow clients and agents to attach additional metadata to their interactions. Implementations MUST NOT make assumptions about values at these keys.
See protocol docs: Extensibility
Trait Implementations§
Source§impl Clone for AgentCapabilities
impl Clone for AgentCapabilities
Source§fn clone(&self) -> AgentCapabilities
fn clone(&self) -> AgentCapabilities
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for AgentCapabilities
impl Debug for AgentCapabilities
Source§impl Default for AgentCapabilities
impl Default for AgentCapabilities
Source§fn default() -> AgentCapabilities
fn default() -> AgentCapabilities
Source§impl<'de> Deserialize<'de> for AgentCapabilities
impl<'de> Deserialize<'de> for AgentCapabilities
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<AgentCapabilities, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<AgentCapabilities, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
impl Eq for AgentCapabilities
Source§impl IntoV2 for AgentCapabilities
impl IntoV2 for AgentCapabilities
Source§type Output = AgentCapabilities
type Output = AgentCapabilities
Source§fn into_v2(
self,
) -> Result<<AgentCapabilities as IntoV2>::Output, ProtocolConversionError>
fn into_v2( self, ) -> Result<<AgentCapabilities as IntoV2>::Output, ProtocolConversionError>
Source§impl JsonSchema for AgentCapabilities
impl JsonSchema for AgentCapabilities
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read moreSource§impl PartialEq for AgentCapabilities
impl PartialEq for AgentCapabilities
Source§fn eq(&self, other: &AgentCapabilities) -> bool
fn eq(&self, other: &AgentCapabilities) -> bool
self and other values to be equal, and is used by ==.Source§impl Serialize for AgentCapabilities
impl Serialize for AgentCapabilities
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl StructuralPartialEq for AgentCapabilities
Auto Trait Implementations§
impl Freeze for AgentCapabilities
impl RefUnwindSafe for AgentCapabilities
impl Send for AgentCapabilities
impl Sync for AgentCapabilities
impl Unpin for AgentCapabilities
impl UnsafeUnpin for AgentCapabilities
impl UnwindSafe for AgentCapabilities
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.