بنقرة واحدة
release
Create a new git release with changelog generation and GitHub release
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Create a new git release with changelog generation and GitHub release
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
First example skill for add-skill tests
Second example skill with a non-kebab name
Validate uac's assumptions about supported AI tools (Claude Code, Copilot, Cursor, etc.) against current upstream documentation and produce a written report of drift — renamed fields, new events, deprecated features, schema changes — so the user can plan follow-up changes. Does not modify source code.
Import existing AI tool configurations (from Claude, Copilot, Cursor, or Codex) into universal-ai-config templates. Converts target-specific files into universal templates.
Draft a pull request description from either the current chat session or the full feature branch (committed + uncommitted). Use when the user asks to write a PR description, prep a PR, or summarize changes for review.
Create, update, or manage universal-ai-config agent templates. Handles finding existing agents, deciding whether to create or modify, and writing the template.
| name | release |
| description | Create a new git release with changelog generation and GitHub release |
| userInvocable | true |
| argumentHint | <version> [--draft] [--prerelease] |
| allowedTools | {"claude":["Bash","Read","Grep","Glob","Write","WebSearch","AskUserQuestion"]} |
Create a new versioned release. This includes generating a changelog, creating a git tag, and publishing a GitHub release.
Parse $ARGUMENTS for:
<version> — 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 prereleaseRun ALL checks upfront before doing any release work. If any check fails, stop immediately and print the remediation instructions.
git status — working directory must be clean (no uncommitted changes)git symbolic-ref refs/remotes/origin/HEAD or check for main/master)git pull to ensure the branch is up to dateCheck in order:
which gh && gh auth status — gh CLI installed and authenticated[ -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:
- Run
gh auth loginfor interactive GitHub CLI login- Set
export GITHUB_TOKEN=<token>with a personal access token that hasreposcopeCreate a token at: https://github.com/settings/tokens/new?scopes=repo
git remote get-url origin — must have a remote configuredIf a version was provided in $ARGUMENTS, validate it's valid semver.
If no version was provided:
package.json (if it exists) or the latest git tag (git describe --tags --abbrev=0)Ensure the version doesn't already exist as a tag (git tag -l "v<version>").
Generate a changelog from commits since the last tag:
git log <last-tag>..HEAD --pretty=format:"%s (%h)" --no-merges
If there is no previous tag, use all commits.
Group commits by conventional commit type prefix:
feat: commitsfix: commitsFormat as markdown:
## What's Changed
### Breaking Changes
- description (hash)
### Features
- description (hash)
### Bug Fixes
- description (hash)
### Other
- description (hash)
Omit empty sections.
Present the user with a summary before proceeding:
v<version>package.json version (if applicable)v<version>Ask the user to confirm before continuing.
Perform these steps in order:
If package.json exists, update the version field to the new version (use npm version <version> --no-git-tag-version).
Commit the version bump:
git add package.json
git commit -m "chore: release v<version>"
git tag -a "v<version>" -m "Release v<version>"
git push origin HEAD
git push origin "v<version>"
If gh CLI is available and authed:
gh release create "v<version>" --title "v<version>" --notes "<changelog>" [--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<version>","name":"v<version>","body":"<changelog>","draft":<bool>,"prerelease":<bool>}'
Parse {owner}/{repo} from git remote get-url origin.
Print a summary of everything that was done: