pub struct Skill {Show 15 fields
pub name: String,
pub description: String,
pub trigger: Vec<String>,
pub body: String,
pub source_file: String,
pub usage_count: u32,
pub created_at: String,
pub score: f64,
pub auto_generated: bool,
pub references: Vec<String>,
pub templates: Vec<String>,
pub scripts: Vec<String>,
pub assets: Vec<String>,
pub manifest_version: Option<String>,
pub allowed_tools: Vec<String>,
}Expand description
A reusable capability: a SKILL.md file loaded into agent context when relevant.
Fields§
§name: String§description: String§trigger: Vec<String>Keywords used to match this skill against a task context
body: StringThe body/content loaded into the agent’s system prompt or context
source_file: StringSource file path (relative to skills dir)
usage_count: u32How many times this skill was used/loaded
created_at: StringCreation timestamp
score: f64Quality score (0.0–1.0), used by curator for pruning
auto_generated: boolWhether this skill was auto-generated (by Curator) or user-created
references: Vec<String>Optional references loaded only when the skill is explicitly invoked.
templates: Vec<String>Optional templates loaded only when explicitly requested.
scripts: Vec<String>Optional scripts advertised by the skill.
assets: Vec<String>Optional assets advertised by the skill.
manifest_version: Option<String>Optional manifest version for permission-aware skills.
allowed_tools: Vec<String>Optional allow-list of tools while this skill is active.
Implementations§
Source§impl Skill
impl Skill
Sourcepub fn from_markdown(content: &str, source_file: &str) -> Option<Self>
pub fn from_markdown(content: &str, source_file: &str) -> Option<Self>
Parse a SKILL.md file into a Skill struct. Format:
# Skill: <name>
**Trigger:** comma, separated, keywords
## Body
<content>Sourcepub fn to_markdown(&self) -> String
pub fn to_markdown(&self) -> String
Convert a Skill back to SKILL.md markdown format
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Skill
impl<'de> Deserialize<'de> for Skill
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>,
Auto Trait Implementations§
impl Freeze for Skill
impl RefUnwindSafe for Skill
impl Send for Skill
impl Sync for Skill
impl Unpin for Skill
impl UnsafeUnpin for Skill
impl UnwindSafe for Skill
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<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
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>
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>
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