From claude-plugins-validation
Standard files, CI/CD, hooks, and release pipeline for Emasoft Claude Code plugins. Use when creating or auditing plugin repos. Loaded by plugin-creator, plugin-fixer, and marketplace-fixer agents.
npx claudepluginhub emasoft/emasoft-plugins --plugin claude-plugins-validationThis skill uses the workspace's default tool permissions.
Defines the standard files, workflows, hooks, and release pipeline that every Emasoft Claude Code plugin repository MUST have. Covers Python, JavaScript/TypeScript, Rust, Go, and Shell plugins. Pipeline supports all three CPV layouts (A: separate plugin and marketplace repos; B: nested monorepo; C: marketplace-in-plugin self-referential single repo).
Suggests manual /compact at logical task boundaries in long Claude Code sessions and multi-phase tasks to avoid arbitrary auto-compaction losses.
Share bugs, ideas, or general feedback.
Defines the standard files, workflows, hooks, and release pipeline that every Emasoft Claude Code plugin repository MUST have. Covers Python, JavaScript/TypeScript, Rust, Go, and Shell plugins. Pipeline supports all three CPV layouts (A: separate plugin and marketplace repos; B: nested monorepo; C: marketplace-in-plugin self-referential single repo).
Layout C (marketplace-in-plugin) needs a different release pipeline:
publish.py bumps THREE version slots atomically: plugin.json::version, marketplace.json::metadata.version, AND the self-entry's version in marketplace.json::plugins[].notify-marketplace.yml is NOT installed (no separate marketplace repo).vX.Y.Z covers both manifest changes.validate_marketplace.py --strict runs alongside validate_plugin.py --strict in CI.git, uv, gh CLI on PATHclaude-plugins-validation)repo scope PAT (for marketplace notification)generate_plugin_repo.py or use /cpv-createci.yml (consolidated lint + validate + test), release.yml, notify-marketplace.yml in .github/workflows/. validate.yml was merged into ci.yml in v2.12.32.uv run python scripts/publish.py --install-hookuvx --from git+https://github.com/Emasoft/claude-plugins-validation --with pyyaml cpv-remote-validate plugin . --strictCopy this checklist and track your progress:
A fully configured plugin repository with:
plugin.json) and project configpublish.py --gate (4-gate quality enforcement)publish.py (auto-bump via git-cliff; --patch/--minor/--major override the auto-detection)| Error | Resolution |
|---|---|
| Missing required file | Run standardize_plugin.py --fix to generate missing files |
| Pre-push hook not blocking | Run publish.py --install-hook to reinstall |
CI failing on uv sync | Use uv sync --extra dev for ruff/pytest/mypy |
| Marketplace notification fails | Check MARKETPLACE_PAT secret and owner/repo placeholders |
Create and publish:
/cpv-create
> Choose: Create a new plugin → then Publish to GitHub
Standardize existing:
/cpv-create
> Choose: Standardize an existing plugin
Standard Plugin Files · Standard CI/CD Workflows · Git Hooks · Release Pipeline (
scripts/publish.py) · Marketplace Standard · Language-Specific Additions
Pre-Push Hook: The Quality Gate · Fix-All Mandate · Running CPV Scripts · Processing Validation Output · GitHub Secrets · CI Workflow Dependencies · Marketplace Notification · All Scripts Are Python · Binary Plugins · README Requirements · Pre-Publish Local Dry-Run · Post-Push CI Verification · Mega-Linter Configuration · Common Fixes Reference
Overview · Whole-repo lint via cpv_lint_engine · Idempotent publish.py · validate_pipeline_script_refs rule · Migrating a legacy plugin
Monitor tool · userConfig (plugin.json) · channels (plugin.json) · CLAUDE_PLUGIN_OPTION_ env vars · Inline marketplace (settings.json) · managed-settings.d/ drop-in directory · Plugin skill
namefield (v2.1.98)
references/canonical-pipeline-migration-checklist.md