AgentStack
SKILL verified MIT Self-run

Release

skill-fabis94-universal-ai-config-release · by fabis94

Create a new git release with changelog generation and GitHub release

No reviews yet
0 installs
19 views
0.0% view→install

Install

$ agentstack add skill-fabis94-universal-ai-config-release

✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access Used
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

Are you the author of Release? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Release

Create a new versioned release. This includes generating a changelog, creating a git tag, and publishing a GitHub release.

Parse $ARGUMENTS for:

  • ` — semver version (e.g. 1.2.0, 2.0.0-beta.1`)
  • --draft — create the GitHub release as a draft
  • --prerelease — mark the GitHub release as a prerelease

Step 1: Validate Prerequisites

Run ALL checks upfront before doing any release work. If any check fails, stop immediately and print the remediation instructions.

1a. Git state

  • Run git status — working directory must be clean (no uncommitted changes)
  • Verify the current branch is the main/default branch (git symbolic-ref refs/remotes/origin/HEAD or check for main/master)
  • Run git pull to ensure the branch is up to date

1b. GitHub authentication

Check in order:

  1. which gh && gh auth status — gh CLI installed and authenticated
  2. If gh is unavailable or not authed, check: [ -n "$GITHUB_TOKEN" ] || [ -n "$GH_TOKEN" ]

If neither is available, stop and tell the user:

> GitHub authentication is required for creating releases. Set up one of: > > 1. Run gh auth login for interactive GitHub CLI login > 2. Set export GITHUB_TOKEN= with a personal access token that has repo scope > > Create a token at: https://github.com/settings/tokens/new?scopes=repo

1c. Git remote

  • Run git remote get-url origin — must have a remote configured

Step 2: Determine Version

If a version was provided in $ARGUMENTS, validate it's valid semver.

If no version was provided:

  1. Read the current version from package.json (if it exists) or the latest git tag (git describe --tags --abbrev=0)
  2. Present the user with options for the next version (patch, minor, major) using AskUserQuestion
  3. Use the selected version

Ensure the version doesn't already exist as a tag (git tag -l "v").

Step 3: Generate Changelog

Generate a changelog from commits since the last tag:

git log ..HEAD --pretty=format:"%s (%h)" --no-merges

If there is no previous tag, use all commits.

Group commits by conventional commit type prefix:

  • Breaking Changes — commits with "!" suffix or "BREAKING CHANGE" in body
  • Featuresfeat: commits
  • Bug Fixesfix: commits
  • Other — everything else (chore, docs, refactor, style, test, ci, perf, build)

Format as markdown:

## What's Changed

### Breaking Changes

- description (hash)

### Features

- description (hash)

### Bug Fixes

- description (hash)

### Other

- description (hash)

Omit empty sections.

Step 4: Confirm with User

Present the user with a summary before proceeding:

  • Version: v
  • Changelog (the generated markdown)
  • Actions that will be performed:
  • Update package.json version (if applicable)
  • Create git tag v
  • Push tag to origin
  • Create GitHub release (draft/prerelease if flagged)

Ask the user to confirm before continuing.

Step 5: Execute Release

Perform these steps in order:

5a. Update version files

If package.json exists, update the version field to the new version (use npm version --no-git-tag-version).

Commit the version bump:

git add package.json
git commit -m "chore: release v"

5b. Create and push git tag

git tag -a "v" -m "Release v"
git push origin HEAD
git push origin "v"

5c. Create GitHub release

If gh CLI is available and authed:

gh release create "v" --title "v" --notes "" [--draft] [--prerelease]

Otherwise, use curl:

curl -X POST "https://api.github.com/repos/{owner}/{repo}/releases" \
  -H "Authorization: token $GITHUB_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"tag_name":"v","name":"v","body":"","draft":,"prerelease":}'

Parse {owner}/{repo} from git remote get-url origin.

Step 6: Summary

Print a summary of everything that was done:

  • Git tag created
  • GitHub release URL

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet — be the first.

Versions

  • v0.1.0 Imported from the upstream source.