Auto-generated skill.md frontmatter is invalid YAML (unquoted description with a colon) - breaks npx skills add
Site: https://docs.reap.video
Summary
The auto-generated skill.md frontmatter emits the description value unquoted, and the generated text contains a colon-space (: ). A plain (unquoted) YAML scalar may not contain : , so the frontmatter is invalid YAML. Every spec-compliant parser rejects it, which means npx skills add https://docs.reap.video fails with "No skills found" even though the index, the artifact, and the sha256 digest are all served correctly.
What is served today
GET https://docs.reap.video/.well-known/agent-skills/reap/skill.md begins:
---
name: Reap
description: Use when building video automation workflows: creating AI-powered short clips from long-form videos, adding captions, reframing for different aspect ratios, dubbing audio into multiple languages, generating transcriptions, or publishing clips to social media platforms (YouTube, Instagram, TikTok, LinkedIn, X).
metadata:
mintlify-proj: reap
version: "1.0"
---
The : in ...workflows: creating ... is the problem.
Reproduction
// Both parsers throw on the generated frontmatter:
require("yaml").parse('description: a: b') // eemeli/yaml (used by the skills CLI)
// -> "Nested mappings are not allowed in compact mappings"
require("js-yaml").load('description: a: b') // js-yaml
// -> "bad indentation of a mapping entry"
The skills CLI fetches the artifact, verifies the digest (passes), then calls parseFrontmatter, which throws. The exception is swallowed and the skill is dropped, producing "No skills found".
Impact
Any project whose auto-generated skill description happens to contain : (or other plain-scalar hazards like #) ships a broken skill, with no signal to the site owner — all server-side checks pass.
Requested fix
When serializing generated skill.md frontmatter, quote string values (or otherwise escape them) so values containing :, #, etc. remain valid YAML. For example:
description: "Use when building video automation workflows: creating AI-powered short clips ..."
This is content-independent and fixes it for every customer.
Auto-generated skill.md frontmatter is invalid YAML (unquoted
descriptionwith a colon) - breaksnpx skills addSite: https://docs.reap.video
Summary
The auto-generated
skill.mdfrontmatter emits thedescriptionvalue unquoted, and the generated text contains a colon-space (:). A plain (unquoted) YAML scalar may not contain:, so the frontmatter is invalid YAML. Every spec-compliant parser rejects it, which meansnpx skills add https://docs.reap.videofails with "No skills found" even though the index, the artifact, and the sha256 digest are all served correctly.What is served today
GET https://docs.reap.video/.well-known/agent-skills/reap/skill.mdbegins:The
:in...workflows: creating ...is the problem.Reproduction
The
skillsCLI fetches the artifact, verifies the digest (passes), then callsparseFrontmatter, which throws. The exception is swallowed and the skill is dropped, producing "No skills found".Impact
Any project whose auto-generated skill description happens to contain
:(or other plain-scalar hazards like#) ships a broken skill, with no signal to the site owner — all server-side checks pass.Requested fix
When serializing generated
skill.mdfrontmatter, quote string values (or otherwise escape them) so values containing:,#, etc. remain valid YAML. For example:This is content-independent and fixes it for every customer.