From release
Create a new release by bumping versions, tagging, pushing, and generating release notes. Use when the user wants to release a new version.
How this skill is triggered — by the user, by Claude, or both
Slash command
/release:releaseThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Create a new versioned release of the project. This skill uses `$SKILL_DIR/release.sh` as the release engine.
Create a new versioned release of the project. This skill uses $SKILL_DIR/release.sh as the release engine.
The user's input is in $ARGUMENTS (a semver version like 1.2.3 or v1.2.3, optionally followed by flags).
--dry-run: Perform all validation steps but make no changes. Report what would happen.--no-push: Create the commit and tag locally but do not push to remote.Parse arguments: Extract the version from $ARGUMENTS. Strip any leading v prefix. If no version is provided, ask the user for one.
Validate version format: Must be valid semver (e.g., 0.1.0, 1.2.3, 2.0.0-beta.1).
Pre-flight validation:
git status --porcelain — if there are uncommitted changes, stop and tell the user to commit or stash first.git fetch origin and verify local/remote are in sync.If --dry-run, stop here and report that validation passed.
Generate release notes from the commit history since the last tag:
git log $(git describe --tags --abbrev=0 HEAD~1 2>/dev/null || git rev-list --max-parents=0 HEAD)..HEAD --pretty=format:"- %s" --no-merges
Don't use these raw commit messages as the release notes. Instead, investigate what each commit/task actually did (read task files, check diffs) and write polished, user-facing release notes grouped by category (e.g., Features, Improvements, Bug Fixes, Documentation, Breaking Changes). Present the release notes to the user before proceeding.
Write the release notes to a file at /tmp/release-notes-X.Y.Z.md using the Write tool.
If --no-push, run the script without pushing:
echo "y" | $SKILL_DIR/release.sh --no-push --notes-file /tmp/release-notes-X.Y.Z.md X.Y.Z
Report what was created locally and stop.
Run the release script to handle the full release lifecycle:
echo "y" | $SKILL_DIR/release.sh --notes-file /tmp/release-notes-X.Y.Z.md X.Y.Z
The script has an interactive confirmation prompt — piping echo "y" auto-confirms it. The user already approved the release when they confirmed the release notes, so no second confirmation is needed. The script handles everything: version bumps, commit, tag, push, CI workflow monitoring, and applying release notes after CI creates the release.
Report success with the release tag and a link to the GitHub releases page.
npx claudepluginhub driangle/ai-powers --plugin releaseValidates and executes software releases with changelog generation, version bumping, git tagging, and CI verification.
Creates a GitHub release with semantic versioning, changelog generation, release notes, and optional build artifacts via tags and GitHub CLI.
Automates releases on GitHub, GitLab, or Gitea: detects platform, computes semver bump, generates notes from PRs/commits, previews before tagging/publishing.