Release Plugin
Package source files into plugin directories based on release-mapping.yaml.
Arguments
patch— Bump patch version (0.1.0 → 0.1.1). Default if no argument.minor— Bump minor version (0.1.0 → 0.2.0).major— Bump major version (0.1.0 → 1.0.0).
Steps
Read
release-mapping.yamlfrom the repository root. This file defines which source files map to which plugin directories.For each plugin in the mapping, process each component type:
Skills — for each skill entry:
- Read the source file (e.g.,
skills/validate/SKILL.md) - Determine the destination path in the plugin:
plugins/<plugin>/skills/<skill-name>/SKILL.md - The skill directory name comes from the source path (e.g.,
skills/validate/SKILL.md→skills/validate/SKILL.md) - Copy the file, preserving directory structure
- For skills with supporting files (templates, references), copy the entire skill directory
Agents — for each agent entry:
- Read the source file (e.g.,
agents/core/sdlc-enforcer.md) - Copy to
plugins/<plugin>/agents/<filename>
Scripts — for each script entry:
- Read the source file (e.g.,
plugins/sdlc-core/scripts/session-banner.sh) - Copy to
plugins/<plugin>/scripts/<filename> - The validation pipeline itself runs through the
validateskill, not via wrapper scripts. Only hook-invoked scripts (e.g.,session-banner.sh,check-tmp-usage.py) belong here.
Hooks — hooks are plugin-native, no copy needed (they reference
${CLAUDE_PLUGIN_ROOT})- Read the source file (e.g.,
Bump version in each non-stub plugin's
plugin.json:- Read the current version from
.claude-plugin/plugin.json - Apply the version bump (patch/minor/major)
- Write the updated version back
- Also update the version in
.claude-plugin/marketplace.json(at the repo root) for this plugin
- Read the current version from
Validate the result:
- Verify every source file in the mapping exists
- Verify every destination file was written
- Check that
plugin.jsonis valid JSON for each plugin - Report any missing source files as errors
Report what was packaged:
Release packaged: sdlc-core v0.1.1: Skills: 7 (validate, new-feature, commit, pr, rules, setup-team, release-plugin) Agents: 3 (sdlc-enforcer, critical-goal-reviewer, code-review-specialist) Scripts: 6 Hooks: 1 Stub plugins unchanged: sdlc-team-ai (0.1.0-stub) sdlc-team-fullstack (0.1.0-stub) ... Next steps: 1. Review changes: git diff plugins/ 2. Commit: git add plugins/ && git commit -m "release: sdlc-core v0.1.1" 3. Tag for stable: git tag v0.1.1