Why Use This This skill provides specialized capabilities for jeremylongshore's codebase.
Use Cases Developing new features in the jeremylongshore repository Refactoring existing code to follow jeremylongshore standards Understanding and working with jeremylongshore's codebase structure
Install Guide 2 steps 1 2 Install inside Ananke
Click Install Skill, paste the link below, then press Install.
https://github.com/jeremylongshore/claude-code-plugins-plus-skills/tree/main/backups/skill-structure-cleanup-20251108-073936/plugins/examples/skills-powerkit/skills/marketplace-manager Skill Snapshot Auto scan of skill assets. Informational only.
Valid SKILL.md Checks against SKILL.md specification
Source & Community
Updated At Nov 8, 2025, 07:44 AM
Skill Stats
SKILL.md 304 Lines
Total Files 1
Total Size 7.0 KB
License NOASSERTION
---
name: marketplace-manager
description: |
Automatically manages marketplace catalog updates, syncs marketplace.json, and handles plugin distribution when user mentions marketplace update, sync catalog, or add to marketplace. Specific to claude-code-plugins two-catalog system.
allowed-tools: Read, Write, Edit, Grep, Bash
version: 1.0.0
---
# Marketplace Manager
## Purpose
Automatically manages the claude-code-plugins marketplace catalog system, handling updates to marketplace.extended.json, syncing to marketplace.json, and ensuring catalog integrity.
## Trigger Keywords
- "update marketplace"
- "sync marketplace" or "sync catalog"
- "add to marketplace"
- "marketplace catalog"
- "update catalog"
- "regenerate marketplace"
## Two-Catalog System
**Critical Understanding:**
```
marketplace.extended.json (SOURCE OF TRUTH)
├── Full metadata
├── Extended fields (featured, mcpTools, etc.)
└── Edit THIS file manually
↓ npm run sync-marketplace
marketplace.json (GENERATED)
├── CLI-compatible subset
├── Sanitized fields
└── NEVER edit directly
```
## Marketplace Management Tasks
### 1. Add Plugin to Catalog
When adding new plugin:
```json
// Add to marketplace.extended.json
{
"name": "plugin-name",
"source": "./plugins/category/plugin-name",
"description": "Clear one-line description",
"version": "1.0.0",
"category": "productivity",
"keywords": ["keyword1", "keyword2"],
"author": {
"name": "Author Name",
"email": "[email protected]"
},
"repository": "https://github.com/user/repo",
"featured": false // true for featured plugins
}
```
Then:
```bash
npm run sync-marketplace
```
### 2. Update Plugin Version
When bumping version:
1. Update `plugins/category/plugin-name/.claude-plugin/plugin.json`
2. Update marketplace.extended.json entry
3. Run `npm run sync-marketplace`
4. Validate sync worked: `git diff .claude-plugin/marketplace.json`
### 3. Sync Validation
After sync, verify:
```bash
# Check marketplace.json was regenerated
git status .claude-plugin/marketplace.json
# Validate JSON syntax
jq empty .claude-plugin/marketplace.extended.json
jq empty .claude-plugin/marketplace.json
# Check specific plugin entry
jq '.plugins[] | select(.name == "plugin-name")' .claude-plugin/marketplace.json
```
### 4. Featured Plugin Management
Mark plugin as featured:
```json
{
"name": "plugin-name",
"featured": true, // Add this field
// ... rest of fields
}
```
Featured plugins appear first in marketplace.
### 5. Catalog Integrity Checks
I automatically verify:
- ✅ No duplicate plugin names
- ✅ All source paths exist
- ✅ All plugins have required fields
- ✅ Versions are semantic (x.y.z)
- ✅ Categories are valid
- ✅ JSON is valid
- ✅ Sync is current (no uncommitted changes to marketplace.json)
## Valid Categories
```
productivity, security, testing, deployment, documentation,
analysis, integration, ai, devops, debugging, code-quality,
design, example, api-development, database, crypto,
performance, ai-ml, other
```
## Sync Process
When I sync marketplace:
1. **Backup Current State**
```bash
cp .claude-plugin/marketplace.json .claude-plugin/marketplace.json.backup
```
2. **Run Sync Script**
```bash
npm run sync-marketplace
# or: node scripts/sync-marketplace.cjs
```
3. **Validate Output**
```bash
# Check sync success
jq empty .claude-plugin/marketplace.json
# Verify plugins count
jq '.plugins | length' .claude-plugin/marketplace.json
```
4. **Check Diff**
```bash
git diff .claude-plugin/marketplace.json
```
5. **Commit if Valid**
```bash
git add .claude-plugin/marketplace.extended.json .claude-plugin/marketplace.json
git commit -m "chore: Update marketplace catalog"
```
## Sanitized Fields
These fields are REMOVED from marketplace.json (CLI):
- `featured` - Extended metadata
- `mcpTools` - Extended metadata
- `pluginCount` - Extended metadata
- `pricing` - Extended metadata
- `components` - Extended metadata
**Only add these to marketplace.extended.json**
## Marketplace Schema
**Required fields for every plugin:**
```json
{
"name": "string (kebab-case)",
"source": "string (relative path from repo root)",
"description": "string (clear, concise)",
"version": "string (semver: x.y.z)",
"category": "string (from valid list)",
"keywords": "array (at least 2)",
"author": {
"name": "string",
"email": "string (valid email)"
}
}
```
**Optional fields:**
```json
{
"repository": "string (GitHub URL)",
"homepage": "string (docs URL)",
"license": "string (MIT, Apache-2.0, etc.)",
"featured": "boolean (extended only)",
"mcpTools": "number (extended only)"
}
```
## Common Issues & Fixes
### Issue: Sync fails with schema error
```bash
# Check marketplace.extended.json syntax
jq empty .claude-plugin/marketplace.extended.json
# Common errors:
# - Missing comma
# - Invalid field type
# - Duplicate plugin name
```
### Issue: marketplace.json out of sync
```bash
# Regenerate from source
npm run sync-marketplace
# If still fails, check git status
git status .claude-plugin/
```
### Issue: Plugin not appearing
```bash
# Verify entry exists
jq '.plugins[] | select(.name == "plugin-name")' .claude-plugin/marketplace.extended.json
# Check source path
ls -la ./plugins/category/plugin-name
```
## Automation
I can automatically:
1. Add plugin entries with all required fields
2. Update version across plugin + catalog
3. Sync marketplace.json
4. Validate catalog integrity
5. Check for duplicates
6. Fix common issues
## Output Format
```
📦 MARKETPLACE UPDATE REPORT
Action: Add plugin "new-plugin"
Location: plugins/productivity/new-plugin/
✅ COMPLETED STEPS:
1. Added entry to marketplace.extended.json
2. Ran npm run sync-marketplace
3. Validated marketplace.json
4. Checked for duplicates: NONE
5. Verified source path exists
📊 MARKETPLACE STATS:
Total plugins: 227 (+1)
Categories: 14
Featured: 3
Latest sync: 2025-10-16 14:30 UTC
✨ Ready to commit:
git add .claude-plugin/marketplace.extended.json .claude-plugin/marketplace.json
git commit -m "feat: Add new-plugin to marketplace"
```
## Repository-Specific Features
**For claude-code-plugins repo:**
- Manages `claude-code-plugins-plus` marketplace
- Handles both extended and CLI catalogs
- Validates against repository structure
- Checks plugin count accuracy
- Ensures featured plugins are quality plugins
## Examples
**User says:** "Add the new security-scanner plugin to marketplace"
**I automatically:**
1. Read plugin.json for metadata
2. Add entry to marketplace.extended.json
3. Run npm run sync-marketplace
4. Validate both catalogs
5. Check no duplicates
6. Report success
**User says:** "Sync the marketplace catalog"
**I automatically:**
1. Run npm run sync-marketplace
2. Validate marketplace.json generated
3. Check git diff
4. Report changes
**User says:** "Update plugin version in marketplace"
**I automatically:**
1. Find plugin entry
2. Update version in marketplace.extended.json
3. Sync marketplace.json
4. Validate versions match
5. Report success