[FEATURE] per-plugin `lastUpdated` field in marketplace.json
Preflight Checklist
- [x] I have searched existing requests and this feature hasn't been requested yet
- [x] This is a single feature request (not multiple features)
Problem Statement
Summary
Plugin marketplaces that aggregate multiple plugins behind one marketplace.json cannot expose accurate per-plugin "last updated" dates in the Claude Code UI. When one plugin updates, every plugin in that marketplace appears to update at the same time — because Claude infers the date from marketplace-level metadata (the marketplace repo's HEAD commit time or marketplace.json mtime), not from per-plugin data.
Repro
- Build a
marketplace.jsonlisting 5+ plugins behind a marketplace repo that receives plugin updates viarepository_dispatchfrom per-plugin source repos. - Update only 1 plugin (bump its version + replace its plugin directory via dispatch, single PR merged to the marketplace repo).
- Open the marketplace in Claude Code's
/pluginUI.
Observed: all 5 plugins show today as the "last updated" date.
Expected: only the plugin that actually changed shows today; the others retain their previous dates.
Proposed Solution
Add an optional lastUpdated field (ISO 8601 timestamp) to the plugin entry schema in marketplace.json:
{
"plugins": [
{
"name": "pax8-brand-voice",
"source": "./plugins/pax8-brand-voice",
"version": "1.2.3",
"lastUpdated": "2026-05-11T19:30:00Z"
}
]
}
Maintainers set this in their dispatch/publish automation. Claude Code's UI displays it when present; falls back to the current inferred date otherwise. Fully backwards-compatible.
Alternative Solutions
_No response_
Priority
Medium - Would be very helpful
Feature Category
Configuration and settings
Use Case Example
Users browsing the marketplace can't tell which plugin actually got the update. The signal that "this plugin was just refreshed" is lost, and stale plugins look freshly maintained — eroding trust in the marketplace's "last updated" column as a real signal.
Additional Context
_No response_
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗