pub struct SkillsManager { /* private fields */ }Expand description
Manages skill discovery and loading.
SkillsManager discovers skills from multiple directories (in priority order):
~/.claude/skills/(user-level Claude Code compatibility, lowest priority)~/.tycode/skills/(user-level).claude/skills/in each workspace (project-level Claude Code compatibility).tycode/skills/in each workspace (project-level, highest priority)
Later sources override earlier ones if the same skill name is found.
Implementations§
Source§impl SkillsManager
impl SkillsManager
Sourcepub fn discover(
workspace_roots: &[PathBuf],
home_dir: &Path,
config: &SkillsConfig,
) -> Self
pub fn discover( workspace_roots: &[PathBuf], home_dir: &Path, config: &SkillsConfig, ) -> Self
Discovers skills from all configured directories.
Sourcepub fn get_all_metadata(&self) -> Vec<SkillMetadata>
pub fn get_all_metadata(&self) -> Vec<SkillMetadata>
Returns metadata for all discovered skills.
Sourcepub fn get_enabled_metadata(&self) -> Vec<SkillMetadata>
pub fn get_enabled_metadata(&self) -> Vec<SkillMetadata>
Returns metadata for enabled skills only.
Sourcepub fn get_skill(&self, name: &str) -> Option<SkillInstructions>
pub fn get_skill(&self, name: &str) -> Option<SkillInstructions>
Gets a skill by name.
Sourcepub fn load_instructions(&self, name: &str) -> Result<SkillInstructions>
pub fn load_instructions(&self, name: &str) -> Result<SkillInstructions>
Loads full instructions for a skill.
Sourcepub fn is_enabled(&self, name: &str) -> bool
pub fn is_enabled(&self, name: &str) -> bool
Checks if a skill exists and is enabled.
Sourcepub fn enabled_count(&self) -> usize
pub fn enabled_count(&self) -> usize
Returns the number of enabled skills.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for SkillsManager
impl RefUnwindSafe for SkillsManager
impl Send for SkillsManager
impl Sync for SkillsManager
impl Unpin for SkillsManager
impl UnwindSafe for SkillsManager
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,
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 moreCreates a shared type from an unshared type.