This is a GitHub template repository for creating high-quality Claude Code plugins.
✅ Complete Plugin Structure
.claude-plugin/marketplace.json- Marketplace configuration (required).claude-plugin/plugin.json- Plugin metadataskills/example-skill/- Example skill demonstrating formathooks/- Git hooks for validationscripts/- Validation and setup scriptsdocs/- Comprehensive documentation
✅ Validation Framework
- Naming convention validation (
validate-naming.sh) - JSON schema validation (
validate-json.sh) - YAML frontmatter validation (
validate-frontmatter.sh) - Comprehensive validation runner (
validate-all.sh)
✅ CI/CD Automation
- GitHub Actions for plugin validation
- Security scanning workflow
- ShellCheck integration
- Automated testing framework
✅ Development Tools
- Interactive setup script (
setup.sh) - Pre-commit git hooks
- ShellCheck configuration
- Line ending enforcement (.gitattributes)
✅ Documentation
- Installation guide
- Contributing guide
- Changelog template
- Marketplace configuration guide
Click "Use this template" button on GitHub, or:
gh repo create your-plugin-name --template ZenterFlow/claude-code-plugin-template --public
cd your-plugin-namechmod +x scripts/setup.sh
./scripts/setup.shThe script will prompt you for:
- Plugin name (lowercase-with-hyphens)
- Plugin description
- Your name and email
- GitHub username
- Repository name
It will automatically replace all {{PLACEHOLDERS}} throughout the codebase.
# Remove example skill
rm -rf skills/example-skill
# Create your skills
mkdir -p skills/your-skill-name
nano skills/your-skill-name/skill.md
# Validate
./scripts/validate-all.sh# Add your marketplace
/plugin marketplace add /absolute/path/to/your-plugin
# Install your plugin
/plugin install your-plugin@your-plugin-marketplace
# Test skills
# (use activation triggers from your skill.md)git add .
git commit -m "feat: Initial plugin implementation"
git pushGitHub Actions will automatically validate your plugin.
The following placeholders will be replaced by setup.sh:
{{PLUGIN_NAME}}- Your plugin name{{PLUGIN_DESCRIPTION}}- Brief description{{AUTHOR_NAME}}- Your name{{AUTHOR_EMAIL}}- Your email{{GITHUB_USERNAME}}- Your GitHub username{{REPO_NAME}}- Repository name{{CURRENT_YEAR}}- Current year{{KEYWORD_1}},{{KEYWORD_2}}- Plugin keywords
After setup, customize these files:
- README.md - Replace template content with your plugin description
- .claude-plugin/plugin.json - Review and adjust metadata
- docs/CHANGELOG.md - Start your version history
- skills/ - Replace example-skill with your real skills
- .github/workflows/*.yml - Update badge URLs
TEMPLATE_INFO.md(this file)skills/example-skill/(after creating real skills)docs/MARKETPLACE.md(if you're keeping single-plugin structure)
This template enforces:
- ✅ ShellCheck: Zero warnings on all scripts
- ✅ Naming: lowercase-with-hyphens for all directories
- ✅ JSON: Valid schema for plugin.json and marketplace.json
- ✅ Frontmatter: Valid YAML in all skill.md files
- ✅ Security: No hardcoded secrets, LF line endings
- ✅ Compliance: OWASP, CIS, NIST best practices
- Documentation: See
docs/directory - Issues: https://github.com/ZenterFlow/claude-code-plugin-template/issues
- Examples: https://github.com/ZenterFlow/claude-priority
This template is MIT licensed. Your plugin can use any license you choose (update LICENSE file).
Version: 1.0.0 Maintained by: ZenterFlow Quality: 10/10 (100% compliance, zero warnings)