[BUG] VSCode extension SKILL.md schema missing multiple supported frontmatter fields

Resolved 💬 3 comments Opened Feb 14, 2026 by andreamk Closed Feb 18, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

The VSCode extension's schema validation for SKILL.md frontmatter rejects several fields that are officially documented and functional in the CLI.

The warning message reveals the schema only recognizes: argument-hint, compatibility, description, disable-model-invocation, license, metadata, name, user-invokable.

However, the official frontmatter reference documents these additional supported fields that the VSCode schema rejects:

| Field | Documented purpose | VSCode schema |
|---|---|---|
| allowed-tools | "Tools Claude can use without asking permission when this skill is active." | Missing |
| model | "Model to use when this skill is active." | Missing |
| context | "Set to fork to run in a forked subagent context." | Missing |
| agent | "Which subagent type to use when context: fork is set." | Missing |
| hooks | "Hooks scoped to this skill's lifecycle." | Missing |
| user-invocable | "Set to false to hide from the / menu." | Listed as user-invokable (typo, see #23723) |

The documentation even includes an explicit example using allowed-tools:

---
name: safe-reader
description: Read files without making changes
allowed-tools: Read, Grep, Glob
---

Additionally, the schema includes fields (compatibility, license, metadata) that are not in the official documentation, suggesting the schema may be based on a different or older spec.

What Should Happen?

The VSCode extension schema should match the official frontmatter reference exactly.

Error Messages/Logs

Attribute 'allowed-tools' is not supported in skill files. Supported: argument-hint, compatibility, description, disable-model-invocation, license, metadata, name, user-invokable.
Attribute 'model' is not supported in skill files. Supported: argument-hint, compatibility, description, disable-model-invocation, license, metadata, name, user-invokable.

Steps to Reproduce

  1. Create .claude/skills/my-skill/SKILL.md with:
---
description: Test skill
allowed-tools: Read, Grep, Glob
model: sonnet
---
  1. Open the file in VSCode with the Claude Code extension
  2. Observe warnings for allowed-tools and model
  3. Verify both fields work correctly when invoking the skill via CLI

Related Issues

  • #23723 — reports the user-invocable vs user-invokable typo (same schema issue)
  • #23329 — earlier schema fix that appears to have been incomplete

Claude Model

Opus

Is this a regression?

I don't know

Claude Code Version

Latest (2025-02-14)

Platform

Anthropic API

Operating System

Linux (WSL2)

Terminal/Shell

bash

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗