pub trait SkillStore {
// Required methods
async fn list_skills(&self) -> ApiResult<Vec<SkillRecord>>;
async fn skill_body(&self, entity_name: &str) -> ApiResult<Option<String>>;
async fn upsert_skill(&self, skill: SkillRecord) -> ApiResult<()>;
async fn remove_skills(&self, entity_names: Vec<String>) -> ApiResult<()>;
}Expand description
Skill persistence only. Installation orchestration, Git, and frontmatter parsing remain in the application layer.
Required Methods§
async fn list_skills(&self) -> ApiResult<Vec<SkillRecord>>
async fn skill_body(&self, entity_name: &str) -> ApiResult<Option<String>>
async fn upsert_skill(&self, skill: SkillRecord) -> ApiResult<()>
async fn remove_skills(&self, entity_names: Vec<String>) -> ApiResult<()>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".