zed-industries/zed · error · anyhow::Error
could not parse YAML frontmatter
Error message
could not parse YAML frontmatter
What it means
Error "could not parse YAML frontmatter" thrown in zed-industries/zed.
Source
Thrown at crates/agent_skills/agent_skills.rs:411
// terminator and ask `serde_yaml_ng` to parse it as a YAML stream. If the
// first document deserializes into `SkillMetadata`, that candidate is the
// real closer. Otherwise an earlier candidate may have cut the YAML in the
// middle of a scalar / quoted string; try the next one.
let mut last_error: Option<anyhow::Error> = None;
for end in candidates {
let prefix = &content[..end];
let mut docs = serde_yaml_ng::Deserializer::from_str(prefix);
let Some(first_doc) = docs.next() else {
continue;
};
match SkillMetadata::deserialize(first_doc) {
Ok(metadata) => return Ok((metadata, &content[end..])),
Err(e) => last_error = Some(anyhow::Error::new(e)),
}
}
Err(last_error
.unwrap_or_else(|| anyhow::anyhow!("could not parse YAML frontmatter"))
.context("Invalid YAML frontmatter"))
}
/// Maximum length for a valid skill name. Mirrors the upper bound enforced
/// by [`validate_name`].
pub const MAX_SKILL_NAME_LEN: usize = 64;
/// Maximum recommended length (in bytes) for a skill description. The
/// create-skill UI enforces this as a hard limit, while the loader emits a
/// warning and still loads longer descriptions.
///
/// Byte-based rather than char-based because that's what `.len()` returns
/// and what every caller currently measures; the UI also surfaces this
/// limit as a byte count so the editor's counter matches the validator.
pub const MAX_SKILL_DESCRIPTION_LEN: usize = 1024;
/// Convert an arbitrary human-readable string into a valid skill name, or
/// return `None` if no valid name can be produced (e.g. the input containsView on GitHub (pinned to bc538def45)
When it happens
Trigger: Thrown at crates/agent_skills/agent_skills.rs:411 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of zed-industries/zed@bc538def45 (2026-08-16).
Data as JSON: /api/errors/88a7e1cd8ba79efd.
Report an issue: GitHub.