Skip to content
Development
Command

/release-notes

Generate release notes for this project and save them to CHANGELOG.md.

From plugin
vibeyard
1.4k3 skills3 commands
$ npx -y skills add elirantutia/vibeyard --agent claude-code

Command definition

release-notes.md

Generate release notes for this project and save them to CHANGELOG.md.

Instructions

1. **Determine the target version:**

  • If an argument was provided (e.g., `v0.3.0`), use that as the version. Strip any leading `v` for display but use the `v`-prefixed form for tags.
  • If no argument was provided, read the version from `package.json` and prefix it with `v` for the tag name.

2. **Find the previous version tag:**

  • Run `git tag --list 'v*' --sort=-version:refname` to list all version tags sorted descending.
  • The previous tag is the first tag that is NOT the current version's tag.
  • If no previous tag exists, use the root commit (`git rev-list --max-parents=0 HEAD`).

3. **Collect commits:**

  • If the current version tag exists: collect commits between the previous tag and the current tag.
  • If the current version tag does NOT exist: collect commits between the previous tag and HEAD.
  • Use `git log <range> --pretty=format:"%s" --no-merges` to get commit subjects.

4. **Categorize commits into sections:**

  • **Features:** commits starting with `add`, `feat`, `implement`, `introduce`, `support` (case-insensitive)
  • **Fixes:** commits starting with `fix`, `resolve`, `patch`, `correct` (case-insensitive)
  • **Changes:** everything else
  • Strip the prefix keyword from the message for cleaner display (e.g., "add dark mode" → "Dark mode")
  • Capitalize the first letter of each entry.

5. **Format the release notes entry:**

   ## [<version>] - <YYYY-MM-DD>

   ### Features
   - Entry 1
   - Entry 2

   ### Fixes
   - Entry 1

   ### Changes
   - Entry 1
  • Omit any section that has zero entries.
  • Use today's date.

6. **Update CHANGELOG.md:**

  • If `CHANGELOG.md` does not exist, create it with this header:
     # Changelog

     All notable changes to this project will be documented in this file.
  • Prepend the new release entry after the header (after the blank line following the description).
  • Do NOT duplicate an entry if one for this version already exists — warn the user instead.

7. **Output a summary** of what was generated (number of commits categorized, sections included).

$ARGUMENTS

Read more
@elirantutia
Ships withvibeyard

The IDE built for AI coding agents.

Stars on GitHub

Momentum

stars in total
1.4k
Star history of elirantutia/vibeyard on GitHub, a chart by star-history.com

Other commands on vibeyard.

commit

commit

Command

Create a git commit for the current staged (or unstaged) changes using a structured commit message convention.

@elirantutia@elirantutiaInstall Command
release

release

Command

Perform a full release: generate release notes, bump version, commit, tag, and push.

@elirantutia@elirantutiaInstall Command

More commands from other plugins.

build
Auto-invoked

build

Command

Implement tasks incrementally — build, test, verify, commit. Add "auto" to run the whole plan in one approved pass.

@addyosmani@addyosmaniInstall Command