[DOCS] Plugin update docs still describe npm-sourced plugins as `unknown`
Documentation Type
Incorrect/outdated documentation
Documentation Location
https://code.claude.com/docs/en/plugins-reference
Section/Topic
Version management for /plugin update, plus the npm-source version-resolution guidance referenced by plugin marketplace docs
Current Documentation
The docs currently say:
Claude Code uses the plugin's version as the cache key that determines whether an update is available. When you run/plugin updateor auto-update fires, Claude Code computes the current version and skips the update if it matches what's already installed. The version is resolved from the first of these that is set: 1. Theversionfield in the plugin'splugin.json2. Theversionfield in the plugin's marketplace entry inmarketplace.json3. The git commit SHA of the plugin's source, forgithub,url,git-subdir, and relative-path sources in a git-hosted marketplace 4.unknown, fornpmsources or local directories not inside a git repository
The marketplace docs also say:
Plugins distributed as npm packages are installed using npm install.
and later:
Plugin versions determine cache paths and update detection: if the resolved version matches what a user already has,/plugin updateand auto-update skip the plugin. Claude Code resolves a plugin's version from the first of these that is set: 1.versionin the plugin'splugin.json2.versionin the plugin's marketplace entry 3. The git commit SHA of the plugin's source
What's Wrong or Missing?
As of v2.1.128, the changelog says Claude Code fixed /plugin update so it no longer misses newer versions of npm-sourced plugins.
The reference docs are still outdated for that behavior:
A. The current version-resolution docs still say npm sources resolve to unknown
That implies /plugin update cannot reliably compare installed vs newer npm releases, which contradicts the v2.1.128 fix.
B. The npm marketplace docs explain install syntax, but not npm update detection
plugin-marketplaces documents npm sources and supports version / semver ranges in the npm source object, but the version-resolution section never explains how npm-sourced plugins are checked during /plugin update or auto-update.
Readers are left without current guidance on whether npm plugins update correctly, what version metadata Claude Code uses, and how pinned vs ranged npm versions affect update checks.
Suggested Improvement
Update the plugin versioning docs to reflect the post-v2.1.128 behavior for npm sources.
Specifically:
- Replace the
unknownstatement for npm sources inplugins-referencewith the actual npm-specific version source Claude Code now uses for update detection. - In
plugin-marketplaces, add a short npm-specific note explaining how/plugin updateand auto-update determine whether a newer npm package version is available. - Clarify how exact npm pins vs semver ranges in the npm source object affect update behavior.
- Cross-link the npm packages section and the version-management section so readers can find the update rules from either page.
Impact
Medium - Makes feature difficult to understand
Additional Context
Affected Pages:
| Page | Line(s) | Context |
|------|---------|---------|
| https://code.claude.com/docs/en/plugins-reference | 981-995 | Version management says npm sources resolve to unknown and only describes explicit-version or git-SHA update paths |
| https://code.claude.com/docs/en/plugin-marketplaces | 368-413 | npm packages section documents npm sources, including exact versions and semver ranges |
| https://code.claude.com/docs/en/plugin-marketplaces | 702-716 | Version resolution section explains update detection but omits npm-specific behavior |
Total scope: 2 pages affected
Cross-reference:
The changelog for v2.1.128 says Fixed /plugin update never detecting new versions of npm-sourced plugins: https://code.claude.com/docs/en/changelog
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗