#[non_exhaustive]pub struct ClientCapabilities {
pub fs: FileSystemCapabilities,
pub terminal: bool,
pub auth: AuthCapabilities,
pub elicitation: Option<ElicitationCapabilities>,
pub meta: Option<Map<String, Value>>,
}Expand description
Capabilities supported by the client.
Advertised during initialization to inform the agent about available features and methods.
See protocol docs: Client 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.fs: FileSystemCapabilitiesFile system capabilities supported by the client. Determines which file operations the agent can request.
terminal: boolWhether the Client support all terminal/* methods.
auth: AuthCapabilitiesunstable_auth_methods only.UNSTABLE
This capability is not part of the spec yet, and may be removed or changed at any point.
Authentication capabilities supported by the client.
Determines which authentication method types the agent may include
in its InitializeResponse.
elicitation: Option<ElicitationCapabilities>unstable_elicitation only.UNSTABLE
This capability is not part of the spec yet, and may be removed or changed at any point.
Elicitation capabilities supported by the client. Determines which elicitation modes the agent may use.
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 ClientCapabilities
impl ClientCapabilities
Sourcepub fn new() -> ClientCapabilities
pub fn new() -> ClientCapabilities
Builds an empty ClientCapabilities; use builder methods to advertise supported sub-capabilities.
Sourcepub fn fs(self, fs: FileSystemCapabilities) -> ClientCapabilities
pub fn fs(self, fs: FileSystemCapabilities) -> ClientCapabilities
File system capabilities supported by the client. Determines which file operations the agent can request.
Sourcepub fn terminal(self, terminal: bool) -> ClientCapabilities
pub fn terminal(self, terminal: bool) -> ClientCapabilities
Whether the Client support all terminal/* methods.
Sourcepub fn auth(self, auth: AuthCapabilities) -> ClientCapabilities
Available on crate feature unstable_auth_methods only.
pub fn auth(self, auth: AuthCapabilities) -> ClientCapabilities
unstable_auth_methods only.UNSTABLE
This capability is not part of the spec yet, and may be removed or changed at any point.
Authentication capabilities supported by the client.
Determines which authentication method types the agent may include
in its InitializeResponse.
Sourcepub fn elicitation(
self,
elicitation: impl IntoOption<ElicitationCapabilities>,
) -> ClientCapabilities
Available on crate feature unstable_elicitation only.
pub fn elicitation( self, elicitation: impl IntoOption<ElicitationCapabilities>, ) -> ClientCapabilities
unstable_elicitation only.UNSTABLE
This capability is not part of the spec yet, and may be removed or changed at any point.
Elicitation capabilities supported by the client. Determines which elicitation modes the agent may use.
Sourcepub fn meta(
self,
meta: impl IntoOption<Map<String, Value>>,
) -> ClientCapabilities
pub fn meta( self, meta: impl IntoOption<Map<String, Value>>, ) -> ClientCapabilities
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 ClientCapabilities
impl Clone for ClientCapabilities
Source§fn clone(&self) -> ClientCapabilities
fn clone(&self) -> ClientCapabilities
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 ClientCapabilities
impl Debug for ClientCapabilities
Source§impl Default for ClientCapabilities
impl Default for ClientCapabilities
Source§fn default() -> ClientCapabilities
fn default() -> ClientCapabilities
Source§impl<'de> Deserialize<'de> for ClientCapabilities
impl<'de> Deserialize<'de> for ClientCapabilities
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<ClientCapabilities, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<ClientCapabilities, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
impl Eq for ClientCapabilities
Source§impl IntoV2 for ClientCapabilities
impl IntoV2 for ClientCapabilities
Source§type Output = ClientCapabilities
type Output = ClientCapabilities
Source§fn into_v2(
self,
) -> Result<<ClientCapabilities as IntoV2>::Output, ProtocolConversionError>
fn into_v2( self, ) -> Result<<ClientCapabilities as IntoV2>::Output, ProtocolConversionError>
Source§impl JsonSchema for ClientCapabilities
impl JsonSchema for ClientCapabilities
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 ClientCapabilities
impl PartialEq for ClientCapabilities
Source§fn eq(&self, other: &ClientCapabilities) -> bool
fn eq(&self, other: &ClientCapabilities) -> bool
self and other values to be equal, and is used by ==.Source§impl Serialize for ClientCapabilities
impl Serialize for ClientCapabilities
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 ClientCapabilities
Auto Trait Implementations§
impl Freeze for ClientCapabilities
impl RefUnwindSafe for ClientCapabilities
impl Send for ClientCapabilities
impl Sync for ClientCapabilities
impl Unpin for ClientCapabilities
impl UnsafeUnpin for ClientCapabilities
impl UnwindSafe for ClientCapabilities
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.