Skip to content

Claude Desktop skill upload rejects disable-model-invocation frontmatter key #24826

Description

@uniqueNY85

Description

The disable-model-invocation frontmatter key is valid and functional in Claude Code CLI — it hides a skill from the model unless explicitly invoked by the user with /skill-name. However, when uploading the same skill to the Claude Desktop application, the upload fails with:

unexpected key in SKILL.md frontmatter: properties must be in ('name', 'description', 'license', 'allowed-tools', 'compatibility', 'metadata')

Steps to Reproduce

  1. Create a skill with disable-model-invocation: true in the SKILL.md frontmatter:
    ---
    name: sync
    description: Update CLAUDE.md if appropriate, then commit and push
    disable-model-invocation: true
    ---
  2. Confirm it works correctly in Claude Code CLI (skill is hidden from model, only invocable via /sync)
  3. Attempt to upload the same skill to Claude Desktop
  4. Upload fails with the frontmatter validation error

Expected Behavior

Claude Desktop should accept the same frontmatter keys that Claude Code CLI supports, or at minimum allow unknown keys to pass through gracefully (perhaps with a warning rather than a hard error).

Environment

  • Claude Code CLI: skill works as expected
  • Claude Desktop: upload rejected
  • OS: Windows

Metadata

Metadata

Assignees

No one assigned

    Labels

    duplicateThis issue or pull request already exists

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions