pub struct ToolDescriptor {
pub id: CapabilityId,
pub name: String,
pub version: String,
pub description: String,
pub input_schema: Value,
pub output_schema: Value,
pub effect: EffectClass,
pub risk: RiskLevel,
pub metadata: BTreeMap<String, Value>,
}Expand description
Versioned model-facing and policy-facing description of a tool.
Fields§
§id: CapabilityIdStable capability identity.
name: StringModel-facing tool name.
version: StringSemantic contract version.
description: StringModel-facing description.
input_schema: ValueJSON Schema for invocation input.
output_schema: ValueJSON Schema for successful output.
effect: EffectClassExternal side-effect classification.
risk: RiskLevelRisk classification used by policy and approval middleware.
metadata: BTreeMap<String, Value>Host-only namespaced metadata.
Implementations§
Source§impl ToolDescriptor
impl ToolDescriptor
Sourcepub fn capability(&self) -> CapabilityDescriptor
pub fn capability(&self) -> CapabilityDescriptor
Converts this descriptor into a grantable runtime capability.
Sourcepub fn model_spec(&self) -> ToolSpec
pub fn model_spec(&self) -> ToolSpec
Converts this descriptor into the subset exposed to a model.
Trait Implementations§
Source§impl Clone for ToolDescriptor
impl Clone for ToolDescriptor
Source§fn clone(&self) -> ToolDescriptor
fn clone(&self) -> ToolDescriptor
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 ToolDescriptor
impl Debug for ToolDescriptor
Source§impl<'de> Deserialize<'de> for ToolDescriptor
impl<'de> Deserialize<'de> for ToolDescriptor
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 ToolDescriptor
impl PartialEq for ToolDescriptor
Source§impl Serialize for ToolDescriptor
impl Serialize for ToolDescriptor
impl StructuralPartialEq for ToolDescriptor
Auto Trait Implementations§
impl Freeze for ToolDescriptor
impl RefUnwindSafe for ToolDescriptor
impl Send for ToolDescriptor
impl Sync for ToolDescriptor
impl Unpin for ToolDescriptor
impl UnsafeUnpin for ToolDescriptor
impl UnwindSafe for ToolDescriptor
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