Skip to main content

parse_frontmatter

Function parse_frontmatter 

Source
pub fn parse_frontmatter(content: &str) -> Option<(String, String, Vec<String>)>
Expand description

Extract name, description, and keywords/aliases from a leading --- ... --- YAML frontmatter block. Intentionally minimal — not the full YAML grammar (no nested maps, anchors, flow maps) — but it covers every shape real skills ship: single-line key: value, quoted values, inline lists, block scalars (description: >- + indented lines — common in community skills, and previously parsed as the literal description ">-"), multi-line plain scalars (indented continuation lines), and indented - item lists.

Keys are matched at column 0 only, so an indented key nested under another map is never mistaken for a top-level one.