anthropics / anthropics/claude-code

[Bug] Session skill discovery doesn't reflect newly-added skills in already-enabled plugins

Open
#95,430 0 comments 0 reactions 0 assignees View on GitHub
area:plugins area:skills bug has repro platform:windows
Dominant language
Python
Stars
145k
Forks
23.1k
PR merge metrics
PR metrics pending

Description

**Bug Description**
Bug Report: Newly-added skills in an already-enabled plugin never appear in a session's available-skills list

Summary

When a plugin already enabled in Claude Code is updated (version bump) to add new skills, those new skills never appear in a session's available-skills list — not after restarting the app, not after a full disable/enable cycle of the plugin, and not in a genuinely fresh (non-resumed) session. The plugin manifest, cache, and marketplace resolution are all correct; the bug is isolated to session-level skill discovery.

Environment

- Marketplace: ai-skills (https://github.com/Recognia/ai-skills), registered via extraKnownMarketplaces in ~/.claude/settings.json
- Affected plugins:
- tc-frontend@ai-skills, version 0.6.0 — originally shipped tradingcentral-developer, tradingcentral-new-lib, wire-usage-tracking; version bump added audit-packages, write-tests
- tc-common@ai-skills, version 0.2.0 — added commit, write-pr (both disable-model-invocation: true, user-invoked only)
- Both plugins confirmed enabled in ~/.claude/settings.json → enabledPlugins
- Platform: Windows 11, Claude Code CLI

Expected behavior

Once a plugin is enabled and its cached files on disk include the new skills, any session (especially a fresh one) should list all skills the plugin currently ships, matching what claude plugin details @ reports.

Actual behavior

A session's available-skills list only ever shows the original skill set from when the plugin was first enabled. New skills added in a later version of an already-enabled plugin are silently missing — indefinitely, across restarts.

Reproduction steps

1. Enable a plugin from a marketplace that ships skill set A.
2. Bump the plugin's version upstream to add new skills, producing skill set A + B, without changing the plugin's name.
3. Update/sync so the local cache reflects the new version.
4. Run claude plugin details @ from a standalone CLI (outside any session) — confirms all of A + B are correctly enumerated, with files present on disk in the plugin cache.
5. Start a brand-new Claude Code session (not a resumed one) — its available-skills list shows only A, never B.

Evidence collected

- installed_plugins.json versions match the marketplace exactly (tc-frontend 0.6.0, tc-common 0.2.0) — not a version-mismatc
- Skill files for audit-packages, write-tests, commit, write-pr exist on disk at ~/.claude/plugins/cache/ai-skills///.
- claude plugin details tc-frontend@ai-skills and claude plugin details tc-common@ai-skills (standalone CLI) both correctly enumerate all skills, including the missing ones.
- Re-verified in a genuinely fresh session on 2026-09-18: still only tradingcentral-developer, tradingcentral-new-lib, wire-rontend; commit/write-pr still absent for tc-common.

Remediations attempted (none worked)

- Restarting the Claude Code app, multiple times
- Full disable/enable cycle of both plugins via standalone CLI (claude plugin disable @ then enable)
- Starting a completely fresh session rather than resuming an existing one

Root cause (as far as verified)

Plugin manifest, marketplace resolution, and local cache are all correct and reflect the latest version — confirmed independently via the standalone CLI. The defect is specifically that a live session's available-skills enumeration does not pick up newly-added skills inside aplugin that was already enabled before the skills existed. This points to a caching or discovery step that keys off "plugin -scanning its current skill manifest, rather than a data/config problem.

Impact

Any plugin that iterates by adding skills to an existing plugin (rather than shipping a new plugin) will have those new skills permanently invisible to users who enabled the plugin before the update, with no known user-side workaround short of possibly removing and re-adding the plugin from scratch (untested).

**Environment Info**
- Platform: win32
- Terminal: windows-terminal
- Version: 2.1.277
- Feedback ID: ac58a79c-c8fe-401e-b3d7-d0c3ea448ab5

**Errors**
```json
[]
```

Contributor guide

No contributing guide indexed for this repository

Research direction

Reproduce the issue with the ai-skills plugin cache under ~/.claude/plugins/cache and compare a fresh session's available-skills list with `claude plugin details @`. Trace the session-level skill discovery or caching path using the listed plugin versions and skill files as inputs. Done means newly added skills such as audit-packages, write-tests, commit, and write-pr appear in a fresh session after the cache is updated.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
cli
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.