ExternalConfigs.Skill (fnord v0.9.23)

View Source

A parsed Agent Skill from a SKILL.md file.

The SKILL.md format is shared between Claude Code and Cursor: a directory containing a required SKILL.md with YAML frontmatter (name + description at minimum) and a markdown body. The flavor field distinguishes which ecosystem the skill came from (:claude or :cursor) so we can present them under separate headings to the coordinator.

Summary

Functions

Load a skill from a directory containing SKILL.md.

Types

flavor()

@type flavor() :: :claude | :cursor

source()

@type source() :: :global | :project

t()

@type t() :: %ExternalConfigs.Skill{
  body: String.t(),
  description: String.t() | nil,
  flavor: flavor(),
  name: String.t(),
  path: String.t(),
  source: source(),
  when_to_use: String.t() | nil
}

Functions

from_dir(dir, flavor, source)

@spec from_dir(String.t(), flavor(), source()) :: {:ok, t()} | {:error, term()}

Load a skill from a directory containing SKILL.md.