Documentation
¶
Overview ¶
Package skills provides an agentic skills system where the model can autonomously invoke specialized capabilities based on task context. Skills are packaged as directories containing a SKILL.md file with YAML frontmatter describing the skill's purpose and instructions.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func FilterByAllowlist ¶
FilterByAllowlist filters skills by an allowlist of names If the allowlist is empty, all skills are returned
func Initialize ¶
Initialize discovers and configures skills based on configuration and CLI flags. It reads skills.enabled from config and respects the --no-skills flag (bound to no_skills in viper). Returns the discovered skills and whether skills are enabled.
Types ¶
type Discovery ¶
type Discovery struct {
// contains filtered or unexported fields
}
Discovery handles skill discovery from configured directories
func NewDiscovery ¶
NewDiscovery creates a new skill discovery instance
func (*Discovery) DiscoverSkills ¶
DiscoverSkills finds all available skills from configured directories
func (*Discovery) ListSkillNames ¶
ListSkillNames returns the names of all available skills
type Option ¶
Option is a function that configures a Discovery
func WithDefaultDirs ¶
func WithDefaultDirs() Option
WithDefaultDirs initializes with default skill directories
func WithSkillDirs ¶
WithSkillDirs sets custom skill directories
type Skill ¶
type Skill struct {
Name string // Unique name from frontmatter
Description string // Brief description for model decision-making
Directory string // Full path to the skill directory
Content string // Full content of SKILL.md (body, not frontmatter)
}
Skill represents a discovered skill with its metadata