pub struct Skill {
pub name: String,
pub description: String,
pub path: PathBuf,
pub mode: SkillMode,
pub triggers: Vec<String>,
pub hint: String,
pub depends_on: Vec<String>,
pub refs: Vec<SkillRef>,
pub params: Vec<SkillParam>,
pub scripts: Vec<SkillScript>,
pub sections: Vec<SkillSection>,
}Expand description
A discovered skill with metadata.
Fields§
§name: StringHuman-readable name, e.g., “rust-traits”.
description: StringBrief description for the skill index.
path: PathBufAbsolute path to the SKILL.md file.
mode: SkillModeInjection mode.
triggers: Vec<String>Trigger words (only relevant when mode == Trigger).
hint: StringHint string for trigger-mode skills (short description for injection). Auto-generated from description if absent for trigger mode.
depends_on: Vec<String>Skills that should be auto-loaded before this one.
refs: Vec<SkillRef>Reference documents found in <skill_dir>/refs/
params: Vec<SkillParam>Parameters declared in frontmatter.
scripts: Vec<SkillScript>Executable scripts found in <skill_dir>/scripts/
sections: Vec<SkillSection>Named sections within the skill body (parsed from ## headings).
Trait Implementations§
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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>
Converts
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>
Converts
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