/reload-skills does not refresh the slash-command autocomplete menu
Environment: Claude Code desktop app, macOS (Darwin 25.3.0), Opus 4.8
What happens:
When user-invocable skills become available after a session has started, running /reload-skills correctly registers them for the Skill tool — they appear in the reloaded skills list and can be invoked programmatically — but they do not appear in the / slash-command autocomplete menu in the input box.
Expected: After /reload-skills, newly available user-invocable skills appear in the slash-command autocomplete, not just in the Skill tool registry.
Actual: Autocomplete continues to reflect the skill set captured at session startup. The skill only shows in autocomplete after a full session restart.
Repro:
- Start a session, then make new user-invocable skills available — e.g. install skills into the skills dir after the session started, OR have a
SessionStarthook bootstrap config on first run in a fresh git worktree. - Run
/reload-skills— confirm the new skills are listed and invocable. - Type
/— the newly added skills are absent from autocomplete. - Restart the session — they now appear.
Impact: Users rely on autocomplete to discover/invoke skills; skills added mid-session are effectively hidden from the menu despite being loaded.
Showing cached comments. Read the full discussion on GitHub ↗
3 Comments
I was about to report this, but I'll just add to this one.
Version: 2.1.220
Reproduction:
Notes:
Workaround:
Could not reproduce on v2.1.233 (macOS, terminal CLI) with project-level skills.
Steps:
claudein a fresh git repo with no.claude/directory..claude/skills/zebrafish-repro/SKILL.md(withname+descriptionfrontmatter)./zebraf— autocomplete showsNo commands match "/zebraf"(the skills dir didn't exist at startup, so nothing was watching it)./reload-skills→Reloaded skills: 25 skills available (1 added)./zebrafagain.Observed: autocomplete now lists
/zebrafish-repro … (project)— the menu refreshed without a restart, which is the expected behavior. (If.claude/skills/already exists at startup, new skills show up in autocomplete even without/reload-skills.)Assessment: In the terminal CLI this works as designed —
/reload-skillsre-scans skill directories and the slash menu is rebuilt from the same list, and in SDK/desktop mode the CLI sends a "commands changed" update to the host app after each reload. We can't tell from this issue whether the desktop app applied that update at the time; if you still see the stale menu on a current desktop build, please share the app/CLI version and where the skills live (project.claude/skills, user~/.claude/skills, plugin).The follow-up case (
/plugin marketplace updatebumping an installed plugin) is intended behavior: a marketplace update only refreshes what's on disk and marks the session as needing a reload — new plugin components (including skills) become active, and appear in autocomplete, after you run/reload-plugins. See https://code.claude.com/docs/en/discover-plugins#update-plugins./reload-skillsonly re-scans skill directories; for plugin changes the command to run is/reload-plugins.🤖 Generated with Claude Code
Thanks for the detailed repro. I tried this on 2.1.233 (Linux, tmux): started a session, created
~/.claude/skills/late-probe/SKILL.md(with a description) after the session was already running, then ran/reload-skills— it reported the new skill as added, and typing/lateimmediately offered/late-probein the slash-command autocomplete with its description. Before the reload it was correctly absent, so the menu is now refreshed by/reload-skillsas expected.This was a real bug when you filed it, but it was fixed in 2.1.216: "Fixed skills and commands changed during a session not appearing in the slash menu until restart" — see the changelog.
Closing as fixed — if you still see stale autocomplete after
/reload-skillson 2.1.216 or later, reply here and we'll reopen.🤖 Generated with Claude Code