[BUG] Plugin and marketplace source refs not surfaced in UI — users cannot see which channel or plugin version they are tracking

Status Open
Maintainer reply None cached
Activity 0 comments · opened Jul 17, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

Two distinct ref values can be specified in Claude Code's plugin/marketplace configuration but are never displayed in the UI:

1. Marketplace source ref (which channel of the marketplace the user is tracking)

When a user adds a marketplace pinned to a specific branch or tag (e.g. #stable), that
ref is persisted in settings.json under extraKnownMarketplaces.<name>.source.ref.
However it is not shown anywhere in the Marketplaces UI tab. Users cannot tell from the
UI whether they are on #stable, #main, or no ref at all (default branch).

2. Plugin source ref (which tag/branch of the plugin repo was fetched)

When a marketplace entry points to a plugin via a git source with a ref field (e.g.
"ref": "v1.0.1"), that ref is used to fetch the plugin content but is never displayed
in the Discover or Installed UI views. The internal SHA is used for update detection and
appears in plugin list CLI output, but the human-readable tag name is discarded for
display purposes.

Both pieces of information are meaningful to users and are already present in Claude
Code's local state — they are simply not surfaced.

What Should Happen?

Both refs should be independently surfaced in the UI, each in the appropriate context.
They serve different purposes and should be treated as distinct, complementary pieces
of information — not conflated with the version field.

1. Marketplace source ref — shown in the Marketplaces tab

The Marketplaces tab should display the ref a marketplace was added with (e.g. stable,
main), so users can see at a glance which channel they are tracking. Where no ref was
specified, this could be shown as the default branch or omitted.

2. Plugin source ref — shown in Discover and Installed views

When a plugin entry's git source includes a ref field, that value should be displayed
in the plugin UI alongside the version (if present) or in its absence. This is
independent of the version field — both could reasonably be shown together if both
are set:

  • version: "1.0.1" — display label set by the marketplace author
  • ref: "v1.0.1" — the git ref the plugin was fetched from

A plugin entry with only a ref and no version should still show the ref value
rather than nothing.

Neither ref is a substitute for the other, and neither is a substitute for version.
They answer different questions:

  • version — "what version did the author label this?"
  • plugin ref — "what tag/branch was this fetched from?"
  • marketplace ref — "which channel of this marketplace am I tracking?"

Error Messages/Logs

No error. The UI simply shows no version string or channel information where one would be expected.

`/plugin list` output (with no `version` field, plugin source has `ref: "v1.0.1"`):

  * ver-test-plugin@ver-test-marketplace (d4a6a963c383, user) enabled


`/plugin list` output (with explicit `version: "1.0.1"`):

  * ver-test-plugin@ver-test-marketplace (v1.0.1, user) enabled


The SHA is used internally for update detection but is not the same as a human-readable
version or ref.

Steps to Reproduce

Marketplace ref not shown:

  1. Add a marketplace pinned to a ref:

/plugin marketplace add git@gitlab.example.com:org/marketplace.git#stable

  1. Open /plugin → Marketplaces tab

Observed: No ref/channel information shown for the marketplace entry
Expected: The marketplace entry shows it is tracking stable

---

Plugin source ref not shown:

  1. Create a plugin repo with no version in plugin.json
  2. Tag a commit: git tag v1.0.1 && git push origin v1.0.1
  3. In a marketplace repo, create an entry:

``json
{
"name": "my-plugin",
"source": {
"source": "url",
"url": "git@gitlab.example.com:org/plugin-repo.git",
"ref": "v1.0.1"
},
"description": "My plugin"
}
`
(no
"version"` field)

  1. Add the marketplace and install the plugin
  2. Open /plugin → Discover tab, then Installed tab

Observed: No version or ref shown for the plugin in either view
Expected: The plugin shows v1.0.1 (from ref) in both views

Note: Adding "version": "1.0.1" to the marketplace entry causes v1.0.1 to display,
confirming the UI has the plumbing — it just does not fall back to or independently
show the ref value.

Claude Model

None

Is this a regression?

No, this never worked

Last Working Version

_No response_

Claude Code Version

2.1

Platform

AWS Bedrock

Operating System

Windows

Terminal/Shell

Windows Terminal

Additional Information

Related issue: #76467 — also concerns ref-pinned marketplaces, but that issue is about
inability to update a marketplace pinned to a version tag. This issue is solely about
display/visibility of ref values that are already present in local state.

These two gaps combine to make channel-based distribution (e.g. #stable vs #main
marketplace channels, with plugin entries pinned to semver tags) opaque to end users.
Users must read ~/.claude/settings.json and
~/.claude/plugins/marketplaces/<name>/.claude-plugin/marketplace.json directly to
determine what they are running.

Tested on Claude Code 2.1.x, Windows 11, GitLab SSH source.

View original on GitHub ↗