Claude Code Plugins

Community-maintained marketplace

Feedback

Publish a new version via GitHub Actions. Use when user says "publish", "release", or "bump version".

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name publish
description Publish a new version via GitHub Actions. Use when user says "publish", "release", or "bump version".

Publish Release

Automate version bumping and release via GitHub Actions workflow.

Arguments

/publish [version-type]
  • /publish - Auto-detect version type from commits (default: patch)
  • /publish patch - Bug fixes (0.0.X)
  • /publish minor - New features (0.X.0)
  • /publish major - Breaking changes (X.0.0)
  • /publish 1.2.3 - Specific version number

Workflow

1. PRE-FLIGHT CHECK    →  Verify clean working tree, on main branch
       ↓
2. ANALYZE CHANGES     →  Review commits since last tag to suggest version
       ↓
3. BUMP VERSION        →  Update package.json version
       ↓
4. COMMIT & TAG        →  Create release commit and git tag
       ↓
5. PUSH                →  Push commit and tag to trigger CI/CD

Instructions

1. Pre-flight Check

# Verify clean state
git status --porcelain
git branch --show-current

# Get current version and last tag
cat packages/cli/package.json | grep '"version"'
git describe --tags --abbrev=0 2>/dev/null || echo "No tags yet"

STOP if:

  • Working tree has uncommitted changes
  • Not on main branch (unless user confirms)

2. Analyze Changes Since Last Release

# Show commits since last tag
git log $(git describe --tags --abbrev=0 2>/dev/null || echo "HEAD~10")..HEAD --oneline

# Look for version indicators
# - "feat:" or "feat!:" → minor or major
# - "fix:" → patch
# - "BREAKING CHANGE" → major

Suggest version type based on conventional commits:

Commit Type Version Bump
fix: PATCH
feat: MINOR
feat!: or BREAKING CHANGE MAJOR

3. Bump Version

# Read current version
CURRENT=$(grep '"version"' packages/cli/package.json | sed 's/.*"version": "\(.*\)".*/\1/')
echo "Current version: $CURRENT"

# Calculate new version (or use user-specified)
# For patch: 0.1.5 → 0.1.6
# For minor: 0.1.5 → 0.2.0
# For major: 0.1.5 → 1.0.0

Edit packages/cli/package.json to update the version.

4. Commit and Tag

Use conventional commit format:

git add packages/cli/package.json
git commit -m "chore(cli): bump version to X.Y.Z"
git tag vX.Y.Z

DO NOT add Claude Code references or co-author tags.

5. Push to Trigger Release

git push origin main vX.Y.Z

Provide the GitHub Actions URL for monitoring:

https://github.com/skilluse/skilluse/actions

Version Calculation Helper

// Parse semver: "0.1.5" → [0, 1, 5]
const [major, minor, patch] = version.split('.').map(Number);

// Bump logic
patch: `${major}.${minor}.${patch + 1}`
minor: `${major}.${minor + 1}.0`
major: `${major + 1}.0.0`

Error Handling

Issue Action
Uncommitted changes Ask user to commit or stash first
Not on main Warn and ask for confirmation
Tag already exists Suggest next version
Push fails Check remote access, show error

Post-Publish

After workflow completes, users can verify:

npm install -g skilluse
skilluse --version