Skip to content

fix(skills): add YAML frontmatter to 41 SKILL.md files#201

Open
darwin7381 wants to merge 1 commit into
anthropics:mainfrom
darwin7381:fix/skill-frontmatter
Open

fix(skills): add YAML frontmatter to 41 SKILL.md files#201
darwin7381 wants to merge 1 commit into
anthropics:mainfrom
darwin7381:fix/skill-frontmatter

Conversation

@darwin7381
Copy link
Copy Markdown

Summary

  • 41 SKILL.md files across vertical and agent plugins ship with the description as a plain markdown line below the heading instead of proper YAML frontmatter between `---` delimiters.
  • Without frontmatter, the skill name and description are not extracted by the plugin loader, so the skill cannot be auto-triggered by Claude from natural-language queries.
  • Adds proper frontmatter (`name` derived from directory, `description` copied verbatim from the existing line) so skills can be auto-discovered and auto-triggered.

Before

```markdown

Thesis Tracker

description: Maintain and update investment theses for portfolio positions and watchlist names. Track key data points, catalysts, and thesis milestones over time. Use when updating a thesis with new information, reviewing position rationale, or checking if a thesis is still intact. Triggers on "update thesis for [company]", ...

Workflow

```

`claude plugin validate` warns:
```
⚠ frontmatter: No frontmatter block found. Add YAML frontmatter between --- delimiters at the top of the file to set description and other metadata.
```

After

```markdown

name: thesis-tracker
description: Maintain and update investment theses for portfolio positions and watchlist names. ...

Thesis Tracker

Workflow

```

`claude plugin validate` → `✔ Validation passed` (no warnings).

Impact

  • Skills become auto-triggerable on natural-language queries that match their description's trigger phrases
  • Analysts no longer need to memorize exact slash-command identifiers
  • Brings these 41 skills in line with the SKILL.md files that already had correct frontmatter (e.g., `financial-analysis/skills/dcf-model/SKILL.md`)

Affected plugins

  • vertical-plugins: equity-research (7), private-equity (10), wealth-management (6), investment-banking (6)
  • agent-plugins: earnings-reviewer (3), market-researcher (2), meeting-prep-agent (3), pitch-agent (1), valuation-reviewer (3)

Transformation rule

  • Skill `name` = parent directory name (already kebab-case)
  • `description` = the existing `description:` line verbatim
  • Title (`# Foo`) and body content preserved unchanged
  • Blank line preserved between frontmatter and title for readability

Test plan

  • Ran `claude plugin validate` on every affected plugin — all pass without warnings
  • Spot-checked rendered output: title remains the H1, description metadata available to loader
  • No content changes — only frontmatter added

🤖 Generated with Claude Code

41 SKILL.md files across vertical and agent plugins ship with the
description as a plain markdown line below the heading instead of
proper YAML frontmatter between `---` delimiters:

  # Thesis Tracker

  description: Maintain and update investment theses ...

  ## Workflow

`claude plugin validate` warns:

  ⚠ frontmatter: No frontmatter block found. Add YAML frontmatter
    between --- delimiters at the top of the file to set description
    and other metadata.

Consequences:
- Skill name and description are not extracted by the plugin loader
- Skill cannot be auto-triggered by Claude from natural-language
  queries (no description to match against user intent)
- Skill must be invoked by exact slash command or skill name, which
  breaks the discoverability story for analysts who don't memorize
  every skill identifier

Affected plugins:
- vertical-plugins: equity-research (7), private-equity (10),
  wealth-management (6), investment-banking (6)
- agent-plugins: earnings-reviewer (3), market-researcher (2),
  meeting-prep-agent (3), pitch-agent (1), valuation-reviewer (3)

Transformation:
- Skill name derived from the parent directory name (kebab-case)
- Description copied verbatim from the existing `description:` line
- Title and body content preserved unchanged

After fix:
- `claude plugin validate` → all four vertical and five agent plugins
  pass without warnings
- Skills are now auto-triggerable on natural-language queries that
  match their description's trigger phrases
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant