010-archive/backups-20251108/plugin-enhancements/plugin-backups/skills-powerkit_20251020_012455/skills/marketplace-manager/SKILL.md
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.
npx skillsauth add intent-solutions-io/plugins-nixtla Marketplace ManagerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Automatically manages the claude-code-plugins marketplace catalog system, handling updates to marketplace.extended.json, syncing to marketplace.json, and ensuring catalog integrity.
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
When adding new plugin:
// 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:
npm run sync-marketplace
When bumping version:
plugins/category/plugin-name/.claude-plugin/plugin.jsonnpm run sync-marketplacegit diff .claude-plugin/marketplace.jsonAfter sync, verify:
# 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
Mark plugin as featured:
{
"name": "plugin-name",
"featured": true, // Add this field
// ... rest of fields
}
Featured plugins appear first in marketplace.
I automatically verify:
productivity, security, testing, deployment, documentation,
analysis, integration, ai, devops, debugging, code-quality,
design, example, api-development, database, crypto,
performance, ai-ml, other
When I sync marketplace:
Backup Current State
cp .claude-plugin/marketplace.json .claude-plugin/marketplace.json.backup
Run Sync Script
npm run sync-marketplace
# or: node scripts/sync-marketplace.cjs
Validate Output
# Check sync success
jq empty .claude-plugin/marketplace.json
# Verify plugins count
jq '.plugins | length' .claude-plugin/marketplace.json
Check Diff
git diff .claude-plugin/marketplace.json
Commit if Valid
git add .claude-plugin/marketplace.extended.json .claude-plugin/marketplace.json
git commit -m "chore: Update marketplace catalog"
These fields are REMOVED from marketplace.json (CLI):
featured - Extended metadatamcpTools - Extended metadatapluginCount - Extended metadatapricing - Extended metadatacomponents - Extended metadataOnly add these to marketplace.extended.json
Required fields for every plugin:
{
"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:
{
"repository": "string (GitHub URL)",
"homepage": "string (docs URL)",
"license": "string (MIT, Apache-2.0, etc.)",
"featured": "boolean (extended only)",
"mcpTools": "number (extended only)"
}
# Check marketplace.extended.json syntax
jq empty .claude-plugin/marketplace.extended.json
# Common errors:
# - Missing comma
# - Invalid field type
# - Duplicate plugin name
# Regenerate from source
npm run sync-marketplace
# If still fails, check git status
git status .claude-plugin/
# Verify entry exists
jq '.plugins[] | select(.name == "plugin-name")' .claude-plugin/marketplace.extended.json
# Check source path
ls -la ./plugins/category/plugin-name
I can automatically:
📦 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"
For claude-code-plugins repo:
claude-code-plugins-plus marketplaceUser says: "Add the new security-scanner plugin to marketplace"
I automatically:
User says: "Sync the marketplace catalog"
I automatically:
User says: "Update plugin version in marketplace"
I automatically:
testing
This skill enables Claude to manage isolated test environments using Docker Compose, Testcontainers, and environment variables. It is used to create consistent, reproducible testing environments for software projects. Claude should use this skill when the user needs to set up a test environment with specific configurations, manage Docker Compose files for test infrastructure, set up programmatic container management with Testcontainers, manage environment variables for tests, or ensure cleanup after tests. Trigger terms include "test environment", "docker compose", "testcontainers", "environment variables", "isolated environment", "env-setup", and "test setup".
tools
This skill uses the test-doubles-generator plugin to automatically create mocks, stubs, spies, and fakes for unit testing. It analyzes dependencies in the code and generates appropriate test doubles based on the chosen testing framework, such as Jest, Sinon, or others. Use this skill when you need to generate test doubles, mocks, stubs, spies, or fakes to isolate units of code during testing. Trigger this skill by requesting test double generation or using the `/gen-doubles` or `/gd` command.
tools
This skill enables Claude to generate realistic test data for software development. It uses the test-data-generator plugin to create users, products, orders, and custom schemas for comprehensive testing. Use this skill when you need to populate databases, simulate user behavior, or create fixtures for automated tests. Trigger phrases include "generate test data", "create fake users", "populate database", "generate product data", "create test orders", or "generate data based on schema". This skill is especially useful for populating testing environments or creating sample data for demonstrations.
development
This skill analyzes code coverage metrics to identify untested code and generate comprehensive coverage reports. It is triggered when the user requests analysis of code coverage, identification of coverage gaps, or generation of coverage reports. The skill is best used to improve code quality by ensuring adequate test coverage and identifying areas for improvement. Use trigger terms like "analyze coverage", "code coverage report", "untested code", or the shortcut "cov".