pub struct Capability {Show 17 fields
pub id: CapabilityId,
pub module: ModuleId,
pub kind: CapabilityKind,
pub title: String,
pub description: String,
pub input: CanonicalSchema,
pub output: CanonicalSchema,
pub provenance: Provenance,
pub exposure: Exposure,
pub availability: Availability,
pub visibility: Visibility,
pub stability: Stability,
pub tags: Vec<String>,
pub benchmark: BenchmarkPolicy,
pub cache: CachePolicy,
pub execution: ExecutionPolicy,
pub skill: Option<SkillExposure>,
}Expand description
The canonical descriptor. Everything a projection may say about a capability is here.
Fields§
§id: CapabilityIdThe canonical identity.
module: ModuleIdThe module that composes it: the id’s namespace for a builtin, the kind for a declarative object.
kind: CapabilityKindQuery, command or resource.
title: StringThe short name every projection shows.
description: StringThe one-paragraph description every projection shows.
input: CanonicalSchemaThe canonical schema of the input; an empty object for a resource.
output: CanonicalSchemaThe canonical schema of the output; the object view for a resource.
provenance: ProvenanceWhere it came from.
exposure: ExposureWhere it is projected; absence is explicit.
availability: AvailabilityWhere it means anything: classified from the kind and the transports above, so that a projection reads a field instead of deciding for itself.
visibility: VisibilityWho it is for: classified from the same transports.
stability: StabilityWhere it stands.
Free tags, from the declarative object’s tags or the descriptor.
benchmark: BenchmarkPolicyWhether it is a benchmark target; the cases come from the input type.
cache: CachePolicyWhether the executor keeps its results.
execution: ExecutionPolicyWhat running it as an execution means: classified from the kind, so that a client reads a fact rather than deciding for itself.
skill: Option<SkillExposure>The short name a person invokes it by from an agent’s prompt, when it has one.
Trait Implementations§
Source§impl Clone for Capability
impl Clone for Capability
Source§fn clone(&self) -> Capability
fn clone(&self) -> Capability
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 Capability
impl Debug for Capability
Source§impl<'de> Deserialize<'de> for Capability
impl<'de> Deserialize<'de> for Capability
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>,
impl Eq for Capability
Source§impl From<&Capability> for CapabilitySummary
impl From<&Capability> for CapabilitySummary
Source§fn from(c: &Capability) -> Self
fn from(c: &Capability) -> Self
Source§impl JsonSchema for Capability
impl JsonSchema for Capability
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 Ordered for Capability
A capability is presented by its id: the command line’s table, the site’s registry pages
and the closure matrix all list it that way, and a title is neither unique nor stable
enough to be the thing a reader navigates by.
impl Ordered for Capability
A capability is presented by its id: the command line’s table, the site’s registry pages and the closure matrix all list it that way, and a title is neither unique nor stable enough to be the thing a reader navigates by.
Source§impl PartialEq for Capability
impl PartialEq for Capability
Source§fn eq(&self, other: &Capability) -> bool
fn eq(&self, other: &Capability) -> bool
self and other values to be equal, and is used by ==.Source§impl Serialize for Capability
impl Serialize for Capability
impl StructuralPartialEq for Capability
Auto Trait Implementations§
impl Freeze for Capability
impl RefUnwindSafe for Capability
impl Send for Capability
impl Sync for Capability
impl Unpin for Capability
impl UnsafeUnpin for Capability
impl UnwindSafe for Capability
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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>,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.