# review-plugin-submission

Audits a Cursor plugin for marketplace readiness: manifest, component metadata, discovery paths, docs quality.

- skill · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 1200 installs · ★ 14099
- Author: cursor
- License: not stated · policy=link-only · description only; the file stays with the author
- Source: https://github.com/cursor/plugins/tree/HEAD/create-plugin/skills/review-plugin-submission/SKILL.md
- Updated: 2026-10-25
- HTML: https://affpapa.org/en/nevibecode/skills/review-plugin-submission

## What it does

The skill fires when a plugin is already built and needs a last check before release. It walks the sections, then returns a pass/fail report, a prioritized fix list and a submission recommendation.

Five blocks get checked. First the manifest at `.cursor-plugin/plugin.json`: the file exists, the name is lowercase kebab-case, and `description`, `version`, `author` and `license` stay coherent. Then component discovery — skills under `skills/*/SKILL.md`, rules in `rules/` as `.mdc` or markdown, agents in `agents/`, commands in `commands/`, hooks in `hooks/hooks.json`, MCP config in `mcp.json` or via an `mcpServers` override. Metadata comes next: skills need `name` and `description` in frontmatter, agents and commands too. In a multi-plugin repo the plugin entry must exist in `.cursor-plugin/marketplace.json`, with `source` resolving to the plugin directory and names staying unique. The last block is `README.md` covering purpose, installation and component coverage.

The skill checks structure, not what your plugin actually does. If the repo has no `marketplace.json`, the registration step has nothing to work with — worth checking where you plan to publish.

## Install

### Claude Code (native platform)

1. **Skills CLI (Vercel)**
```bash
npx skills add cursor/plugins --skill review-plugin-submission -a claude-code
```

2. **Manually: put the files in place**
- File: `~/.claude/skills/review-plugin-submission/SKILL.md` — Copy the whole skill folder; for one project use .claude/skills/review-plugin-submission/

### Codex

1. **Skills CLI (Vercel)**
```bash
npx skills add cursor/plugins --skill review-plugin-submission -a codex
```

2. **Manually: put the files in place**
- File: `.agents/skills/review-plugin-submission/SKILL.md` — For all projects use ~/.agents/skills/

### Cursor

1. **Skills CLI (Vercel)**
```bash
npx skills add cursor/plugins --skill review-plugin-submission -a cursor
```

2. **Manually: put the files in place**
- File: `.cursor/skills/review-plugin-submission/SKILL.md` — Cursor also reads .agents/skills/ and .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install cursor/plugins review-plugin-submission
```

2. **Manually: put the files in place**
- File: `.github/skills/review-plugin-submission/SKILL.md`

### Gemini CLI

1. **Skills CLI (Vercel)**
```bash
npx skills add cursor/plugins --skill review-plugin-submission -a gemini-cli
```

2. **Platform CLI**
```bash
gemini skills install https://github.com/cursor/plugins --path create-plugin/skills/review-plugin-submission
```

### Windsurf (Devin Desktop)

**Manually: put the files in place**
- File: `.devin/skills/review-plugin-submission/SKILL.md` — The legacy .windsurf/skills/ path still works

### OpenCode

**Skills CLI (Vercel)**
```bash
npx skills add cursor/plugins --skill review-plugin-submission -a opencode
```

### Claude.ai

**Claude.ai**
- Zip the folder and upload it in Settings → Capabilities → Skills

Where a file is given instead of a command, copy the files from the source to that path: https://github.com/cursor/plugins/tree/HEAD/create-plugin/skills/review-plugin-submission/SKILL.md

## When to use it
- check a plugin manifest before submitting to a marketplace
- catch components that won't load because of wrong paths
- verify frontmatter on skills, rules, agents and commands
- confirm the plugin is registered in marketplace.json
- get a prioritized fix list instead of walking files by hand

## Example prompts
- review my plugin before I submit it to the marketplace
- run review-plugin-submission on the plugin repo
- audit the plugin: manifest, components, README

## Similar
- [app-marketplace-review](https://affpapa.org/en/nevibecode/skills/app-marketplace-review.md) — skill · 8100 installs
- [chatgpt-app-submission](https://affpapa.org/en/nevibecode/skills/chatgpt-app-submission.md) — skill · 29 installs
- [conference-cfp-submission](https://affpapa.org/en/nevibecode/skills/conference-cfp-submission.md) — skill · 10300 installs
- [gaia-submission](https://affpapa.org/en/nevibecode/skills/gaia-submission.md) — skill · 435 installs
- [marketplace-health-check](https://affpapa.org/en/nevibecode/skills/marketplace-health-check.md) — skill · 389 installs
- [asc-submission-health](https://affpapa.org/en/nevibecode/skills/asc-submission-health.md) — skill · 8000 installs

From the same set: [cursor/plugins](https://affpapa.org/en/nevibecode/by/cursor/plugins.md) — 47 cards

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
