Agent Skill
2/7/2026

publish

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

S
skilluse
40GitHub Stars
1Views
npx skills add skilluse/skilluse

SKILL.md

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

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 TypeVersion Bump
fix:PATCH
feat:MINOR
feat!: or BREAKING CHANGEMAJOR

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

IssueAction
Uncommitted changesAsk user to commit or stash first
Not on mainWarn and ask for confirmation
Tag already existsSuggest next version
Push failsCheck remote access, show error

Post-Publish

After workflow completes, users can verify:

npm install -g skilluse
skilluse --version
Skills Info
Original Name:publishAuthor:skilluse