Team marketplace plugin skills not loaded — cache directories empty despite plugin appearing installed

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

Describe the Bug

Skills from a team marketplace plugin are never loaded into the agent context, even though the plugin appears correctly installed in the Cursor UI (showing the plugin name, description, and skill count). The plugin cache directories are created but remain completely empty — no files are ever downloaded from the private GitHub repository.

The plugin UI shows everything looks fine, but the skill cannot be found via /skill-name in Agent chat, does not appear in Settings → Rules → Agent Decides, and is never injected into the agent’s system prompt.

Steps to Reproduce

Steps to Reproduce

  1. Set up a team marketplace backed by a private GitHub repository, with the following structure:
marketplace-repo/q
├── .cursor-plugin/
│   └── marketplace.json       # lists plugins
└── plugins/
    └── my-plugin/
        ├── .cursor-plugin/
        │   └── plugin.json    # declares "skills": "./skills/"
        └── skills/
            └── my-skill/
                └── SKILL.md   # valid frontmatter (name + description)
  1. Add the team marketplace in Dashboard → Settings → Plugins → Team Marketplaces
  2. Install the plugin from the team marketplace panel in Cursor
  3. Observe: the plugin appears as installed, shows “Skills 1” with the skill name
  4. Try to invoke the skill via /my-skill in Agent chat → skill not found
  5. Check Settings → Rules → Agent Decides → skill not listed

Expected Behavior

Diagnostic Evidence

Plugin cache comparison — team marketplace vs official:

# Team marketplace plugin → EMPTY (no files downloaded)
~/.cursor/plugins/cache/marketplace-ai-marketplace/devx-platform/
  (empty directory)

# Official plugin (Stripe) → files correctly populated
~/.cursor/plugins/cache/cursor-public/stripe/887cfc.../
  ├── .cursor-plugin/plugin.json
  ├── skills/stripe-best-practices/SKILL.md    ← files present
  └── skills/upgrade-stripe/SKILL.md           ← files present

Marketplace directories are also empty:

~/.cursor/plugins/marketplaces/marketplace-ai-marketplace-539/
  (empty directory)

The directory structure is created, but no content is fetched from the private GitHub repository. The plugin metadata displayed in the UI likely comes from a remote API call, not from the local cache — which explains why the UI looks correct while the skill never actually loads.

Plugin Configuration (verified correct)

marketplace.json (.cursor-plugin/marketplace.json at repo root):

{
  "name": "marketplace-ai-marketplace",
  "owner": { "name": "marketplace", "email": "[email protected]" },
  "repository": "https://github.com/marketplacegroup/marketplace-ai-marketplace",
  "plugins": [
    {
      "name": "devx-platform",
      "source": "./plugins/devx-platform",
      "description": "DevX Platform plugin"
    }
  ]
}

plugin.json (plugins/devx-platform/.cursor-plugin/plugin.json):

{
  "name": "devx-platform",
  "version": "0.2.0",
  "description": "DevX Platform plugin",
  "author": { "name": "marketplace" },
  "skills": "./skills/"
}

SKILL.md (plugins/devx-platform/skills/devx-infrastructure-design/SKILL.md):

---
name: devx-infrastructure-design
description: >
  Generates C4-model infrastructure diagrams...
---

All files follow the documented format from the Plugins Reference.

Operating System

MacOS

Version Information

Environment

Field Value
Cursor Version 2.6.18 (arm64)
Commit 68fbec5aed9da587d1c6a64172792f505bafa250
OS macOS Darwin 25.3.0 (arm64)
Marketplace type Team marketplace (private GitHub repository)
Plan Teams (team marketplace feature)

Additional Information

Workaround

Manually copying the skill folder to ~/.cursor/skills/ makes it discoverable by the agent, confirming the skill format itself is correct and only the plugin → cache → skill loading pipeline is broken for team marketplaces.

Does this stop you from using Cursor

No — Cursor works, but team marketplace plugins with skills are effectively non-functional. This defeats the purpose of the team marketplace feature for distributing skills across an organization.

Does this stop you from using Cursor

No - Cursor works, but with this issue

3 Likes

Hey, thanks for the detailed report. That’s really thorough diagnostic work.

This is a confirmed bug. Team Marketplace plugins that use private GitHub repos fail to clone because the client runs git clone without auth credentials. Also, the empty folder left after the failed clone gets treated as already cached, so it never retries the download.

The team knows about this and is looking into it. No ETA yet, but your report helps us prioritize it.

For now, your workaround of manually copying skills into ~/.cursor/skills/ is the right move. One more thing you can try is deleting the empty cache folders under ~/.cursor/plugins/cache/ and ~/.cursor/plugins/marketplaces/ before reinstalling. This probably won’t help long-term since the auth issue will just recreate empty folders.

I’ll update this thread if there’s any news on a fix. Let me know if anything changes on your end.

4 Likes

+1 as I ran into this exact same issue as well. I’ve followed the repository structure and marketplace configuration as per GitHub - fieldsphere/cursor-team-marketplace-template: A set of plugins to get you started on Cursor · GitHub and verified that there are no errors with regards to either the marketplace.json or the plugin.json and the directory structure for skills.

I configured the Cursor Github App to be added to my Github organisation thinking that that would suffice with regards to the cloning/copying of the skill but that didn’t help.

I did try deleting the empty cache folders under ~/.cursor/plugins/cache/ and ~/.cursor/plugins/marketplaces/ before reinstalling and that did not help. I’ve raised the following ticket with Cursor’s helpdesk T-B38213

We’d ideally like to be in a position where this is resolved at the earliest before people go about their own unique ways of trying to install skills in a fairly large enterprise. Least favourable approach being the suggested copy paste method.

This topic was automatically closed 22 days after the last reply. New replies are no longer allowed.