pub struct SkillManifest {
pub version: String,
pub defaults: ManifestDefaults,
pub skills: HashMap<String, SkillDefinition>,
pub base_dir: PathBuf,
}Expand description
Root manifest structure
Fields§
§version: StringManifest version (for future compatibility)
defaults: ManifestDefaultsGlobal defaults applied to all skills
skills: HashMap<String, SkillDefinition>Skill definitions
base_dir: PathBufBase directory for resolving relative paths (set during load)
Implementations§
Source§impl SkillManifest
impl SkillManifest
Sourcepub fn find(start_dir: &Path) -> Option<PathBuf>
pub fn find(start_dir: &Path) -> Option<PathBuf>
Find manifest file in current or parent directories
Sourcepub fn skill_names(&self) -> Vec<&str>
pub fn skill_names(&self) -> Vec<&str>
Get all skill names defined in the manifest
Sourcepub fn get_skill(&self, name: &str) -> Option<&SkillDefinition>
pub fn get_skill(&self, name: &str) -> Option<&SkillDefinition>
Get skill definition by name
Sourcepub fn resolve_instance(
&self,
skill_name: &str,
instance_name: Option<&str>,
) -> Result<ResolvedInstance>
pub fn resolve_instance( &self, skill_name: &str, instance_name: Option<&str>, ) -> Result<ResolvedInstance>
Resolve a skill’s instance configuration
This expands environment variable references and merges with defaults.
Sourcepub fn list_skills(&self) -> Vec<SkillInfo>
pub fn list_skills(&self) -> Vec<SkillInfo>
List all skills with their resolved sources
Trait Implementations§
Source§impl Clone for SkillManifest
impl Clone for SkillManifest
Source§fn clone(&self) -> SkillManifest
fn clone(&self) -> SkillManifest
Returns a duplicate of the value. Read more
1.0.0 · 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 SkillManifest
impl Debug for SkillManifest
Source§impl Default for SkillManifest
impl Default for SkillManifest
Source§fn default() -> SkillManifest
fn default() -> SkillManifest
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for SkillManifest
impl<'de> Deserialize<'de> for SkillManifest
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
Auto Trait Implementations§
impl Freeze for SkillManifest
impl RefUnwindSafe for SkillManifest
impl Send for SkillManifest
impl Sync for SkillManifest
impl Unpin for SkillManifest
impl UnwindSafe for SkillManifest
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> GetSetFdFlags for T
impl<T> GetSetFdFlags for T
Source§fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
Query the “status” flags for the
self file descriptor.Source§fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
Source§fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: AsFilelike,
fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: AsFilelike,
Set the “status” flags for the
self file descriptor. Read moreSource§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> 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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
Read this value from the supplied reader. Same as
ReadEndian::read_from_little_endian().