[BUG] claude.ai skills (anthropic-skills:*) missing from new-chat slash-command autocomplete until first message (regression ~Aug 2026)
Environment
- Claude desktop app (macOS): 1.40609.0, code mode
- Claude Code CLI: 2.1.169
- macOS: Darwin 24.6.0
Summary
Skills enabled on claude.ai (Settings > Capabilities > Skills) are injected into desktop-app code-mode sessions as plugin-namespaced skills (anthropic-skills:<name>). Until roughly early-to-mid August 2026 these appeared in the composer's slash-command autocomplete of a brand-new chat. Since then, the autocomplete of a new, not-yet-started chat no longer lists them at all: typing /<name> matches nothing until after the first message has been sent and the session has started.
The skill itself is still fully available to the model in that same fresh session (ListSkills shows it enabled, and invoking Skill(anthropic-skills:<name>) loads it fine). Only the pre-first-message autocomplete is affected.
Steps to reproduce
- Enable/upload a skill on claude.ai (Settings > Capabilities > Skills), e.g. a custom skill named
emil-design-eng. - Ensure there is no copy of it in
~/.claude/skills(so the claude.ai injection is the only source). - In the desktop app, open a brand-new code-mode chat (do not send a message).
- Type
/emil(or any prefix of the skill name) in the composer.
Expected: the autocomplete lists anthropic-skills:emil-design-eng (this was the behavior until ~3 weeks ago).
Actual: no match. After sending the first message, typing /emil in the same chat matches the skill normally.
What I could verify locally
- The skills are cached on disk across sessions at
~/Library/Application Support/Claude/local-agent-mode-sessions/skills-plugin/<uuid>/<uuid>/skills/, with a siblingmanifest.jsonwhoselastUpdatedis refreshed at session start. The cache is present and current even while the new-chat menu shows nothing, so the data exists locally; the menu just does not read it pre-session. - Local skills in
~/.claude/skillsstill appear in the new-chat autocomplete immediately, so the menu itself works; only the claude.ai/plugin pipeline is deferred. - The 2.1.169 changelog mentions a slash-command/skill scan regression introduced in 2.1.161 (fixed there for
claude -pon Windows). The timing of that regression roughly matches when this started, but I cannot confirm the connection.
Impact / workaround
Users who rely on a claude.ai-managed skill lose slash-command discoverability exactly where they most use it (starting a new chat). The only workaround is duplicating the skill into ~/.claude/skills, which then produces two autocomplete entries for the same skill (bare and anthropic-skills:-prefixed), since namespaced skills do not dedupe against local ones.
Related
- #82732 describes cloud-shared skills inheriting plugin load semantics (no mid-session reload). This issue is different: it is about the plugin pipeline not populating the new-chat autocomplete at all before session start.