ehmetlabs

release-branch-notes

0
0
# Install this skill:
npx skills add ehmetlabs/release-branch-notes-skill

Or install specific skill: npx add-skill https://github.com/ehmetlabs/release-branch-notes-skill

# Description

Create a release/x.y.z branch in a Git repo and generate Release Notes from the latest tag to HEAD, grouped as Features/Fixes/Breaking and written to CHANGELOG.md. Use for automated release branch creation, release notes generation, and changelog updates.

# SKILL.md


name: release-branch-notes
description: Create a release/x.y.z branch in a Git repo and generate Release Notes from the latest tag to HEAD, grouped as Features/Fixes/Breaking and written to CHANGELOG.md. Use for automated release branch creation, release notes generation, and changelog updates.


Release Branch Notes

Overview

Create a release branch and generate release notes from the latest tag, updating CHANGELOG.md.

Workflow

  1. Ensure the repo is on the correct base branch, or plan to pass --base.
  2. Run scripts/release_branch_notes.py --version x.y.z [--base main] [--tag vX.Y.Z].
  3. Review CHANGELOG.md and the newly created branch.
  4. Request explicit confirmation before any git commit or git push.

Notes generation rules

  • Start tag: default git describe --tags --abbrev=0, override with --tag.
  • Breaking: subject has ! or body has BREAKING CHANGE.
  • Features: feat type.
  • Fixes: fix type.
  • Ignore other types.
  • Empty category outputs - None.

Output template

## x.y.z - YYYY-MM-DD

### Breaking
- None

### Features
- Add new behavior

### Fixes
- Fix a bug

Script

  • scripts/release_branch_notes.py creates release/x.y.z, then updates CHANGELOG.md.
  • No network operations (no fetch or pull).
  • Exit non-zero if no tag exists or branch already exists.

# README.md

Release Branch Notes

Create a release/x.y.z branch and generate release notes from the latest tag to HEAD, then update CHANGELOG.md.

What This Skill Does

  • Create a release branch: release/x.y.z
  • Generate release notes from the latest tag
  • Prepend the new section to CHANGELOG.md

Prerequisites

  • Run inside a Git repository
  • At least one tag exists (or provide --tag)
  • Python 3 is available

Installation

Place this folder under your Codex skills directory:

  • Default location: $CODEX_HOME/skills/release-branch-notes
  • Common default for CODEX_HOME: $HOME/.codex

Example (copy):

cp -R "./release-branch-notes" "$CODEX_HOME/skills/release-branch-notes"

Example (symlink):

ln -s "$(pwd)" "$CODEX_HOME/skills/release-branch-notes"

Restart Codex CLI (or reload skills if your environment supports it) to pick up the new skill.

Using This Skill in Codex

Mention the skill name in your prompt and provide a version:

Use release-branch-notes to create release/1.2.3 and update CHANGELOG.md

You can also specify --base and --tag if needed:

Use release-branch-notes with version 1.2.3, base main, tag v1.2.2

Usage

./scripts/release_branch_notes.py --version x.y.z

Optional arguments:

  • --base <branch>: create the release branch from the specified base branch
  • --tag <tag>: override the default start tag

Example:

./scripts/release_branch_notes.py --version 1.2.3 --base main --tag v1.2.2

Release Notes Rules

  • Breaking: subject contains ! or body includes BREAKING CHANGE
  • Features: feat commits
  • Fixes: fix commits
  • All other types are ignored
  • Empty categories output - None

Output Format

## x.y.z - YYYY-MM-DD

### Breaking
- None

### Features
- Add new behavior

### Fixes
- Fix a bug

Notes

  • A dirty working tree prints a warning but does not abort
  • Fails fast if the branch already exists or no tags are found
  • Does not run git commit / git push / git fetch

# Supported AI Coding Agents

This skill is compatible with the SKILL.md standard and works with all major AI coding agents:

Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.