release
Manages GitHub release processes including tagging, branch verification, and generating release notes.
Install
mkdir -p .claude/skills/release-ponkotuy && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/12531" && unzip -o skill.zip -d .claude/skills/release-ponkotuy && rm skill.zipInstalls to .claude/skills/release-ponkotuy
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Create GitHub releases for this project or similar GitHub repositories. Use when the user asks to release the current master/main branch, create a version tag, publish a GitHub Release, write release notes, check release workflow status, or follow the repository's release process.Key capabilities
- →Confirm target branch, version, and tag style
- →Verify local and remote state
- →Review changes since the previous release
- →Write curated release notes
- →Create GitHub Release
- →Confirm creation and report deployment status policy
How it works
The skill confirms release parameters, verifies repository state, and reviews changes. It then writes release notes and creates a GitHub Release, confirming its creation and reporting deployment status.
Inputs & outputs
When to use release
- →Releasing a new version
- →Creating a git tag
- →Drafting release notes
About this skill
Release
Workflow
-
Confirm the target branch, version, and tag style.
- Prefer the current branch only when the user explicitly asks for it. For this repository, releases are cut from
master. - Inspect existing tags with
git tag --sort=-version:refnameandgit ls-remote --tags origin. - Match the existing tag format. This repository uses plain versions such as
1.5.5, notv1.5.5.
- Prefer the current branch only when the user explicitly asks for it. For this repository, releases are cut from
-
Verify local and remote state.
- Run
git status --short; do not release from a dirty worktree unless the user explicitly approves. - Run
git rev-parse HEADandgit ls-remote origin refs/heads/<branch>; confirm the requested release target matches the remote branch tip. - If local is behind or differs from remote, stop and ask the user how to proceed.
- Run
-
Review changes since the previous release.
- Identify the previous tag from existing releases/tags.
- Use
git log --oneline <previous-tag>..HEAD. - Inspect meaningful commits with
git show --statorgit show --name-onlyas needed. - Prefer release notes based on actual changes over generated notes alone.
-
Write curated release notes.
- Do not rely only on
--generate-noteswhen the user expects readable Changes. - Match the established format used by older releases such as
1.5.3:
- Do not rely only on
## Changes
- **Short change title** - Concrete user-facing or operational impact
- **Another change title** - Concrete impact
- Keep bullets concise, accurate, and grounded in commits.
- Include only notable changes; avoid noisy internal churn unless it affects users or operations.
-
Create the GitHub Release.
- Verify the tag/release does not already exist with
gh release view <version>. - Use
gh release create <version> --target <branch> --title <version> --notes-file <file>when writing notes from a temp file. - If a release already exists, ask before editing, deleting, or recreating it.
- Verify the tag/release does not already exist with
-
Confirm creation and report deployment status policy.
- Verify the release with
gh release view <version> --json tagName,name,url,targetCommitish. - Verify the tag points at the intended commit with
git ls-remote --tags origin refs/tags/<version>. - If the repository triggers deployment or publish workflows, check that they started with
gh run list. - Do not wait for deploy/publish completion by default. Tell the user the workflow has started and ask whether they want you to wait or inspect progress.
- Verify the release with
Safety
- Release commands affect shared GitHub state. Use exact version and branch names from the user or repository history.
- Do not invent release notes from memory. Read commits and existing release style first.
- Do not create a different tag prefix than existing releases without asking.
- Do not wait on long-running deployment workflows unless the user asks you to monitor them.
When not to use it
- →When the user does not ask to release the current master/main branch
- →When the user does not ask to create a version tag
- →When the user does not ask to publish a GitHub Release
Limitations
- →Requires explicit user approval for editing, deleting, or recreating existing releases
- →Does not wait for deploy/publish completion by default
- →Requires exact version and branch names from the user or repository history
How it compares
This workflow emphasizes reviewing actual changes and curating release notes based on commits, rather than relying solely on auto-generated notes.
Compared to similar skills
release side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| release (this skill) | 0 | 1mo | No flags | Intermediate |
| github-release-management | 4 | 6mo | Review | Advanced |
| agent-release-swarm | 1 | 6mo | Review | Advanced |
| magerun-release | 1 | 5mo | No flags | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
You might also like
github-release-management
ruvnet
Comprehensive GitHub release orchestration with AI swarm coordination for automated versioning, testing, deployment, and rollback management
agent-release-swarm
ruvnet
Agent skill for release-swarm - invoke with $agent-release-swarm
magerun-release
netz98
Technical release process for n98-magerun2
release
ziggy42
Use this skill when the user wants to cut a new release.
release-branch
mono
Create a release branch for SkiaSharp. Use when user says "release X", "start release X", "create release branch for X", "I want to release", or "release now". This is the FIRST step of releasing - creates branch and pushes to trigger CI. Can auto-detect next preview version from main branch.
release-minor
knuckleswtf
Automates the process of tagging a new minor release for Scribe by analyzing commit messages, updating the changelog, and creating a GitHub release.