pub struct IndexedSkill {
pub name: String,
pub namespace: Option<String>,
pub description: String,
pub source: String,
pub tags: Vec<String>,
pub score: Option<f64>,
}Fields§
§name: String§namespace: Option<String>Vendor-scoping prefix added at materialize time so two skills
sharing a bare name (e.g. find-skills exists in both
vercel-labs/skills and ajac-zero/knack) can coexist in one
registry without colliding. None means “unscoped” — supported
for backward compatibility with pre-namespacing index files;
new entries written by knack-registry build-static or
materialize always carry one. Validated against the same
kebab-case rules as name.
description: String§source: StringThe install command suffix that follows <registry>:. For
namespaced entries this is <namespace>/<name>; for legacy
unscoped entries it’s just <name>. Always matches what
qualified_name() returns.
score: Option<f64>Relevance score assigned by RegistryIndex::search. Only ever
set on results returned from a search — never persisted in
knack.index.toml and never present on entries read from
/index, so this is skipped on serialization whenever None.
Kept #[serde(default)] on the way in so index files written
before this field existed (and any registry that hasn’t
upgraded yet) still deserialize cleanly.
Implementations§
Source§impl IndexedSkill
impl IndexedSkill
Trait Implementations§
Source§impl Clone for IndexedSkill
impl Clone for IndexedSkill
Source§fn clone(&self) -> IndexedSkill
fn clone(&self) -> IndexedSkill
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more