release

star 1.7k

Create a new release for grepai. Checks CI, determines version type, updates CHANGELOG and documentation, credits contributors, and creates GitHub release.

yoanbernabeu By yoanbernabeu schedule Updated 2/7/2026

name: release description: "Create a new release for grepai. Checks CI, determines version type, updates CHANGELOG and documentation, credits contributors, and creates GitHub release."

Release Process for grepai

This skill guides you through creating a new release. All output must be in English.

When to Use This Skill

Invoke this skill when:

  • User asks to "create a release"
  • User asks to "publish a new version"
  • User asks to "bump the version"
  • User mentions "release" in the context of versioning

Release Workflow

Step 1: Verify CI on Main

Check that all CI checks pass on main:

gh run list --branch main --limit 1 --json status,conclusion,name

STOP if CI is not green. Ask the user to fix issues first.

Step 2: Get Current Version and Changes

Get the latest release:

gh release list --limit 1

List merged PRs since last release:

gh pr list --state merged --base main --json number,title,author,mergedAt,labels --limit 50

Display a summary of changes categorized by type (feat, fix, docs, etc.).

Step 3: Determine Version Type

Change Type Version Bump
Breaking changes Major (vX+1.0.0)
New features (feat) Minor (vX.Y+1.0)
Bug fixes (fix) Patch (vX.Y.Z+1)
Docs/chore only Usually no release needed

Ask user confirmation before proceeding.

Step 4: Update Version Files

4.1 CHANGELOG.md

Add new section after ## [Unreleased]:

## [X.Y.Z] - YYYY-MM-DD

### Added
- **Feature Name**: Description (#PR) - @author

### Fixed
- **Fix Name**: Description (#PR) - @author

Update comparison links at bottom:

[Unreleased]: https://github.com/yoanbernabeu/grepai/compare/vX.Y.Z...HEAD
[X.Y.Z]: https://github.com/yoanbernabeu/grepai/compare/vPREVIOUS...vX.Y.Z

4.2 Documentation Hero

Update version in docs/src/components/homepage/HeroAnimated.astro line 6:

const { version = "X.Y.Z" } = Astro.props;

4.3 Nix Flake

Update flake.nix:

  1. Update version (line 13):
version = "X.Y.Z";
  1. Update vendorHash:
    • Set vendorHash = ""; temporarily in flake.nix
    • Run make nix-hash to compute the correct hash (requires Docker)
    • Replace with the new hash: vendorHash = "sha256-XXXXX";
    • If Docker is not available, ask the user to provide the hash or skip this step

Step 5: Commit and Push

git add CHANGELOG.md docs/src/components/homepage/HeroAnimated.astro flake.nix
git commit -m "chore(release): bump version to X.Y.Z

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>"
git push origin main

Step 6: Wait for CI

gh run list --branch main --limit 1 --json status,conclusion --watch

Step 7: Create GitHub Release

gh release create vX.Y.Z --generate-notes --title "vX.Y.Z"

Step 8: Verify

gh release view vX.Y.Z

Contributor Credits

IMPORTANT: Always credit PR authors in CHANGELOG:

- **Pascal/Delphi Support**: Add `.pas` and `.dpr` file support (#71) - @yoanbernabeu

GitHub --generate-notes automatically credits contributors in release notes.

Checklist

  • CI green on main before starting
  • Version type matches changes (major/minor/patch)
  • CHANGELOG.md updated with all PRs
  • All contributors credited with @username
  • Hero version updated in docs
  • Nix flake version and vendorHash updated in flake.nix
  • CI passed after version commit
  • GitHub release created

Keywords

release, version, bump, publish, changelog, semver, semantic versioning

Install via CLI
npx skills add https://github.com/yoanbernabeu/grepai --skill release
Repository Details
star Stars 1,733
call_split Forks 140
navigation Branch main
article Path SKILL.md
More from Creator
yoanbernabeu
yoanbernabeu Explore all skills →