[BUG] Marketplace with plugin "source": "." passes `claude plugin validate` but fails to sync on claude.ai

Status Open
Reported on v2.1.296
Maintainer reply None cached
Activity 0 comments · opened Oct 13, 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?

A marketplace whose plugin entries use "source": "." is accepted by claude plugin validate (no error, no warning), but adding it on claude.ai (Customize → Plugins → Add marketplace → Add from a repository) fails with a generic sync error that wrongly suggests the repository URL is the problem.

Changing "source": "." to "source": "./" fixes the claude.ai sync. No other change was needed.

The repository was created with Claude Code, so Claude Code's own tooling produced/accepted a manifest that claude.ai rejects.

What Should Happen?

One of:

  1. claude.ai accepts "." as the marketplace root, like Claude Code does; or
  2. claude plugin validate warns that "." is not accepted by claude.ai and suggests "./".

Also, the claude.ai error should name the actual problem (the invalid source value and its plugin entry) instead of suggesting the repository URL is wrong.

Error Messages/Logs

claude.ai (French UI):
Échec de la synchronisation du marketplace. Vérifiez l'URL du dépôt et réessayez.
(≈ "Failed to sync marketplace. Check the repository URL and try again.")

claude plugin validate:
√ Validation passed

Steps to Reproduce

  1. Use a public GitHub repo whose .claude-plugin/marketplace.json has plugin entries of this form:

``json
{ "name": "go-doc-src", "source": ".", "strict": false,
"skills": ["./skills/go-doc-src"] }
``
(real example: https://github.com/dolmen-go/dolmen-golang-skills before the fix)

  1. Run claude plugin validate . → √ Validation passed.
  2. On claude.ai: Customize → Plugins → Add marketplace → Add from a repository → dolmen-go/dolmen-golang-skills → sync error above.
  3. Change "source": "." to "source": "./" on every entry, push, retry on claude.ai → marketplace added successfully.

For comparison, https://github.com/anthropics/skills uses the same shape (strict: false + skills) with "source": "./".

Claude Model

Not sure / Multiple models

Is this a regression?

I don't know

Last Working Version

_No response_

Claude Code Version

2.1.296 (Claude Code)

Platform

Anthropic API

Operating System

Ubuntu/Debian Linux

Terminal/Shell

Other

Additional Information

The mismatch is between Claude Code (claude plugin validate, which accepts .) and the claude.ai marketplace importer (which only accepts ./). Fixing either side would resolve it.

View original on GitHub ↗