Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 15 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,23 @@ Two starter plugins are included:

1. `.cursor-plugin/marketplace.json`: set marketplace `name`, `owner`, and `metadata`.
2. `plugins/*/.cursor-plugin/plugin.json`: set `name` (lowercase kebab-case), `displayName`, `author`, `description`, `keywords`, `license`, and `version`.
3. Replace placeholder rules, skills, agents, commands, hooks, scripts, and logos.
3. Replace `assets/avatar.png` with your own plugin avatar (PNG, recommended 128x128 or larger).
4. Replace placeholder rules, skills, agents, commands, hooks, and scripts.

To add more plugins, see `docs/add-a-plugin.md`.

## Plugin avatar

Each plugin includes an `assets/avatar.png` that is displayed in the Cursor Marketplace. The `logo` field in `.cursor-plugin/plugin.json` points to this file:

```json
{
"logo": "assets/avatar.png"
}
```

Replace the default avatar with your own PNG image. Keep it square and at least 128x128 pixels for best results.

## Single plugin vs multi-plugin

This template defaults to **multi-plugin** (multiple plugins in one repo).
Expand All @@ -29,6 +42,6 @@ For a **single plugin**, move your plugin folder contents to the repository root
- Plugin names are unique, lowercase, and kebab-case.
- `.cursor-plugin/marketplace.json` entries map to real plugin folders.
- All frontmatter metadata is present in rule, skill, agent, and command files.
- Logos are committed and referenced with relative paths.
- Each plugin has an `assets/avatar.png` referenced by the `logo` field in its manifest.
- `node scripts/validate-template.mjs` passes.
- Repository link is ready for submission to the Cursor team (Slack or `kniparko@anysphere.com`).
4 changes: 2 additions & 2 deletions docs/add-a-plugin.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ Example manifest:
"author": {
"name": "Your Org"
},
"logo": "assets/logo.svg"
"logo": "assets/avatar.png"
}
```

Expand All @@ -41,7 +41,7 @@ Add only the components you need:
- `commands/*.(md|mdc|markdown|txt)` (frontmatter recommended)
- `hooks/hooks.json` and `scripts/*` for automation hooks
- `mcp.json` for MCP server definitions
- `assets/logo.svg` for marketplace display
- `assets/avatar.png` for marketplace display

## 3. Register in marketplace manifest

Expand Down
13 changes: 11 additions & 2 deletions plugins/starter-advanced/.cursor-plugin/plugin.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,15 @@
"email": "plugins@example.com"
},
"license": "MIT",
"keywords": ["cursor", "plugin", "rules", "skills", "agents", "commands", "hooks", "mcp"],
"logo": "assets/logo.svg"
"keywords": [
"cursor",
"plugin",
"rules",
"skills",
"agents",
"commands",
"hooks",
"mcp"
],
"logo": "assets/avatar.png"
}
Binary file added plugins/starter-advanced/assets/avatar.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
7 changes: 0 additions & 7 deletions plugins/starter-advanced/assets/logo.svg

This file was deleted.

9 changes: 7 additions & 2 deletions plugins/starter-simple/.cursor-plugin/plugin.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,11 @@
"email": "plugins@example.com"
},
"license": "MIT",
"keywords": ["cursor", "plugin", "rules", "skills"],
"logo": "assets/logo.svg"
"keywords": [
"cursor",
"plugin",
"rules",
"skills"
],
"logo": "assets/avatar.png"
}
Binary file added plugins/starter-simple/assets/avatar.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
7 changes: 0 additions & 7 deletions plugins/starter-simple/assets/logo.svg

This file was deleted.