vercel login repeatedly prompts to update the Claude Code plugin and reports false success (never persists)
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 287
- Forks
- 58
- Avg merge
- 1d 1h
- Merged PRs (30d)
- 17
Description
Summary
vercel login repeatedly offers to update the Claude Code Vercel plugin (e.g. "update from 0.44.0 to 0.45.1"), reports Success! Updated the Vercel plugin, but the update never persists. The next vercel login prompts again with the identical version pair — an endless loop with a false success message.
Steps to reproduce
- Install the Vercel plugin in Claude Code via the official marketplace (
vercel@claude-plugins-official), which currently resolves to0.44.0. - Run
vercel loginwith the Vercel CLI (observed on54.6.0). - Accept the prompt:
Working with Vercel is easier with the latest Vercel Plugin for Claude Code. Would you like to update from 0.44.0 to 0.45.1?→yes. - CLI prints
Success! Updated the Vercel plugin. - Run
vercel loginagain later → the same prompt reappears, unchanged.
Expected
Either the plugin is actually updated (and the prompt stops), or — if the CLI cannot update a plugin that Claude Code installed from a pinned marketplace source — the CLI should detect that and not claim success / not re-prompt on every login.
Actual
The "update" is a no-op against Claude Code's plugin registry, but is reported as success.
Root cause (from inspecting the local Claude Code plugin state)
The plugin the Vercel CLI is trying to update is not owned by the Vercel CLI — it's installed and version-pinned by Anthropic's marketplace:
~/.claude/plugins/installed_plugins.jsonpinsvercel@claude-plugins-officialtoversion: 0.44.0, installed from theclaude-plugins-officialmarketplace. Accepting the CLI prompt does not change this entry —versionstays0.44.0and no0.45.xbuild ever lands in~/.claude/plugins/cache/claude-plugins-official/vercel/(only0.43.0and0.44.0are present).- That marketplace pins the plugin to a frozen git SHA of this repo:
"source": "url", "url": "https://github.com/vercel/vercel-plugin.git", "sha": "5f3f0ad7931ad49d6a4c6ed43ab4bf4781a69f6d" // == 0.44.0claude plugin marketplace update claude-plugins-official+claude plugin update vercel@claude-plugins-officialboth confirmvercel is already at the latest version (0.44.0)— i.e. the marketplace hasn't advanced past 0.44.0, so 0.45.1 is unreachable through the channel Claude Code actually uses. - The CLI appears to write its "update" to a different path than the one Claude Code loads. On this machine it left behind an empty
~/.claude/plugins/data/vercel-claude-plugins-official/directory (created at first plugin install), which is not referenced byknown_marketplaces.jsonorinstalled_plugins.json— a strong sign the CLI's update targets a location Claude Code doesn't read.
Net effect: the CLI compares the user's install (0.44.0, pinned by Anthropic's marketplace) against the latest upstream plugin release (0.45.1), tries to bridge the gap through a path Claude Code ignores, and so re-prompts forever while reporting success.
Suggested fixes (either/both)
- Make the success message truthful: verify the plugin version actually changed in
installed_plugins.jsonbefore printingSuccess!; if it didn't, say so. - When the plugin was installed from a pinned marketplace source the CLI can't mutate (
vercel@claude-plugins-official), don't attempt the update or re-prompt — point the user atclaude plugin update, or coordinate with Anthropic to bump the pinned SHA inanthropics/claude-plugins-officialwhen a new plugin version ships.
Environment
- Vercel CLI: 54.6.0 (macOS, Darwin arm64)
- Claude Code plugin:
vercel@claude-plugins-official0.44.0 (user scope) - Marketplace SHA pin:
5f3f0ad7931ad49d6a4c6ed43ab4bf4781a69f6d
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the loop with vercel login, then inspect ~/.claude/plugins/installed_plugins.json, known_marketplaces.json, and the plugin cache to compare the pinned version and update target. Done means the CLI either updates the plugin Claude Code loads or detects the pinned marketplace installation and avoids a false success message and repeated prompt.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- tooling
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100