VS Code agent host drops user skill descriptions, so skills never auto-activate
Skills in ~/.claude/skills/*/SKILL.md reach the model as bare names. The host strips the frontmatter description from the available-skills list, and that description is the only signal the model has for deciding a skill matches the current request, so model-initiated invocation never happens for any user skill. /name invocation works. Bundled skills (verify, dataviz, claude-api, run, deep-research) keep their descriptions and keep self-firing.
Setup: VS Code 1.131.0 on Arch Linux running Claude through agent sessions, no standalone CLI installed. 29 personal skills, all with valid frontmatter; the longest description is 1002 chars (under the 1024 cap), none set disable-model-invocation, and the break hits plain, quoted and folded YAML scalars alike, so it isn't a parser edge case in particular files.
Repro:
- Put a skill with an unmistakable description in
~/.claude/skills("MUST be used for Vue.js tasks" is literally how antfu'svue-best-practicesopens). - Open a session in the VS Code agent host and have the model print its available-skills list verbatim.
- Personal and synced plugin skills come out as names only; bundled skills come out with full descriptions.
- Ask for something squarely in a skill's lane; it never fires. Invoking
/vue-best-practicesby hand loads it fine.
Usage history says the same thing. skillUsage in ~/.claude.json, three days after installing these skills: the two my CLAUDE.md forces by name fired 24 and 18 times, while every description-dependent skill (nuxt, vue, pinia, vitest, nitro, vueuse-functions) sat at zero; the scattered 1-counts line up with manual slash tests.
Expected: user and plugin skills listed with their descriptions the way bundled ones are, or documentation that model-invocation isn't supported in the VS Code integration.