anthropics / anthropics/claude-code
[Bug] Session skill discovery doesn't reflect newly-added skills in already-enabled plugins
- 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