release

Automates version bumps, changelog updates, commits, tags, and pushes for project releases.

Updated May 26, 2026
One-click install
npx skills add https://github.com/cagriy/dev-skills --skill release-cagriy
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: release
Source: https://github.com/cagriy/dev-skills/tree/main/skills/release
Command: npx skills add https://github.com/cagriy/dev-skills --skill release-cagriy

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Releasing a project involves many error-prone manual steps: bumping version numbers in multiple files, updating the changelog, committing, tagging, and pushing. This Skill runs the entire release procedure end-to-end with language-aware rules, preventing stale lockfiles, mismatched versions, and tag conflicts. ## Core Features & Use Cases - Language Detection: Automatically detects Python, Swift, or generic projects (Node, Rust, PHP, Dart) and applies the correct version-source and pre-commit rules. - Semantic Versioning: Accepts major, minor, or patch arguments, validates the current version, and computes the new one without inventing base versions. - Safe Git Operations: Stages only touched files, checks for existing tags before creating new ones, and pushes the branch and tag without rolling back on failure. - Use Case: Run /release minor in a Python repo to bump pyproject.toml from 1.4.2 to 1.5.0, refresh uv.lock, move Unreleased changelog entries into a dated section, commit, tag v1.5.0, and push. ## Quick Start Ask the assistant to release the current project with a patch version bump using the release skill.

Frequently Asked Questions about release

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I release a new version of my project with git tags?▼

Invoke the release skill with major, minor, or patch as the argument. It bumps the version in the appropriate manifest, updates CHANGELOG.md, commits only the touched files, creates a vX.Y.Z tag, and pushes both the branch and tag.

How to bump a version in pyproject.toml and keep uv.lock in sync?▼

The Python language section updates the static version in pyproject.toml plus any __version__ files, then runs uv lock when uv.lock exists so the lockfile's pinned project version stays in sync with the bump.

Does the release skill support Swift and Xcode projects?▼

Yes, it detects Package.swift or xcodeproj/xcworkspace markers and updates every MARKETING_VERSION entry in project.pbxproj. X.Y values are normalized to X.Y.0, and a CHANGELOG.md is created from git history if missing.

What happens if the git tag already exists during a release?▼

The skill checks local tags and remote tags via git ls-remote before tagging. If vX.Y.Z already exists, it stops before tagging and surfaces the conflict rather than force-overwriting the existing tag.

What happens when no version manifest is found in the repository?▼

The skill stops and reports that no version manifest was found, listing the files it looked for: .claude-plugin/plugin.json, package.json, Cargo.toml, composer.json, and pubspec.yaml. It never invents a base version.