Skip to content

SkillSource

type SkillSource =
| SkillEntry
| ReadonlyArray<SkillEntry>;

Skills for an agent: one entry, or an ordered array mixing inline skills, stores, workspace paths, and resolvers. Later entries win on a name collision, so layering reads in the order you write it:

skills: ['/.agents/skills/org', '/.agents/skills/team', defineSkill({ name: 'override', … })]

Two SkillResolver entries producing the same skill name is different: there is no ordering the author intended between two per-tenant resolutions, so it throws instead of picking a winner.