Install
$ agentstack add skill-jbdamask-john-claude-skills-plugin-marketplace-creator ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Plugin Marketplace Creator
Create Claude Code plugin marketplaces—catalogs that distribute plugins to teams and communities via GitHub.
Quick Start
- Run
scripts/init_marketplace.py --pathto scaffold - Edit
.claude-plugin/marketplace.jsonto add plugins - Push to GitHub
- Users install via
/plugin marketplace add owner/repo
Marketplace Structure
marketplace-repo/
├── .claude-plugin/
│ └── marketplace.json # Required: marketplace definition
├── plugins/ # Optional: local plugins
│ └── my-plugin/
│ └── .claude-plugin/
│ └── plugin.json
└── README.md
Plugin Structure with Skills
Plugins containing skills should have this structure:
plugins/my-plugin/
├── .claude-plugin/
│ └── plugin.json # NO "skills" field - skills are auto-discovered
└── skills/
└── my-skill/
└── SKILL.md
Important: Do NOT add a skills field to plugin.json. Skills are automatically discovered from the skills/ directory.
Marketplace JSON Schema
Required Fields
{
"name": "marketplace-name",
"owner": {
"name": "Team Name",
"email": "team@example.com"
},
"plugins": []
}
Optional Metadata
{
"metadata": {
"description": "Brief description",
"version": "1.0.0",
"pluginRoot": "./plugins"
}
}
Reserved Names (cannot use)
claude-code-marketplace, claude-code-plugins, claude-plugins-official, anthropic-marketplace, anthropic-plugins, agent-skills, life-sciences
Plugin Entry Schema
| Field | Type | Required | Description | |-------|------|----------|-------------| | name | string | Yes | Kebab-case identifier | | source | string\|object | Yes | Where to fetch plugin | | description | string | No | Brief description | | version | string | No | Semantic version | | author | object | No | {name, email} | | category | string | No | For organization | | keywords | array | No | Search tags | | strict | boolean | No | Require plugin.json (default: true) |
Source Types
Local path:
{"source": "./plugins/my-plugin"}
GitHub:
{"source": {"source": "github", "repo": "owner/repo"}}
Git URL:
{"source": {"source": "url", "url": "https://gitlab.com/team/plugin.git"}}
Complete Example
{
"name": "company-tools",
"owner": {
"name": "DevTools Team",
"email": "devtools@company.com"
},
"metadata": {
"description": "Internal development tools",
"version": "1.0.0"
},
"plugins": [
{
"name": "code-formatter",
"source": "./plugins/formatter",
"description": "Auto-format code on save",
"version": "1.0.0",
"category": "development"
},
{
"name": "deploy-tools",
"source": {"source": "github", "repo": "company/deploy-plugin"},
"description": "Deployment automation",
"category": "devops"
}
]
}
Team Configuration
Add to project's .claude/settings.json for automatic installation:
{
"extraKnownMarketplaces": {
"team-tools": {
"source": {"source": "github", "repo": "org/claude-plugins"}
}
},
"enabledPlugins": {
"code-formatter@team-tools": true
}
}
Scripts
- init_marketplace.py - Create new marketplace with proper structure
- validate_marketplace.py - Validate marketplace.json and plugin sources
- add_plugin.py - Add plugin entries to existing marketplace
Workflow
Creating a New Marketplace
Pre-flight checks (REQUIRED before running init script):
- Check git config for user identity:
``bash git config --get user.name git config --get user.email ``
- If either is not set, ASK THE USER for their name and email before proceeding. Use these values with
--owner-nameand--owner-emailflags.
- Check if target directory already has a git repo:
``bash ls -la /.git 2>/dev/null ` If .git exists, do NOT run git init` when setting up the repository.
# 1. Initialize (script auto-detects git config for owner info)
python scripts/init_marketplace.py my-marketplace --path ./output
# Or with explicit owner info if git config is not set:
python scripts/init_marketplace.py my-marketplace --path ./output \
--owner-name "Your Name" --owner-email "you@example.com"
# 2. Validate
python scripts/validate_marketplace.py ./output
# 3. Push to GitHub (skip git init if .git already exists)
cd output
# Only run 'git init' if there's no existing .git directory
git add -A && git commit -m "Initial"
# Create repo on GitHub and push
# 4. Test in Claude Code
# /plugin marketplace add owner/my-marketplace
Adding Plugins
# Add local plugin
python scripts/add_plugin.py ./marketplace --name my-plugin --source ./plugins/my-plugin
# Add GitHub plugin
python scripts/add_plugin.py ./marketplace --name external --source github:org/repo
Troubleshooting
Marketplace not loading: Verify .claude-plugin/marketplace.json exists at repo root.
Plugin install fails: Check source is accessible. For private repos, ensure authentication.
Team can't see marketplace: Verify extraKnownMarketplaces in .claude/settings.json.
References
references/plugin-schema.md- Complete plugin.json schemareferences/examples.md- Additional marketplace examples
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: jbdamask
- Source: jbdamask/john-claude-skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.