Agent skill

Changelog Generator

by Sma1lboy in Sma1lboy/rove

Draft Rove release notes as Changesets. An agent skill from Sma1lboy/rove.

MITAuto-check passedDevelopment

Install Changelog Generator

skills CLI
$ npx skills add Sma1lboy/rove --skill changelog-generator -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install Sma1lboy/rove changelog-generator --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/Sma1lboy/rove.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/changelog-generator .claude/skills/changelog-generator && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
changelog-generator
GitHub stars
171
Token cost
~1.5k tokens
SKILL.md length
669 words
Files
1
Skills in repo
13
Repo updated
First seen
Licence
MIT

At a glance

Draft Rove release notes as Changesets. An agent skill from Sma1lboy/rove.

  • Works in 5 steps: Find the cut point: the latest ## []… → Run git log --no-merges ..HEAD… → Group the un-covered user-facing… → …
  • The user asks for changelog
  • SKILL.md covers When to use, Rove project conventions…, How to draft and Example output (a changeset…, plus 1 more section
  • Calls bun, changeset and git

What it does

Changelog Generator is an agent skill from Sma1lboy/rove. Draft Rove release notes as Changesets. Writes user-facing entries as .changeset/.md files for @sma1lboy/rove (consumed into packages/rove/CHANGELOG.md at release time). Use when the user asks for "changelog", "release notes", "what changed", "add a changeset", or before cutting a version. Enforces Rove's no-soft-wrap rule so GitHub release pages render flowing text.

Its SKILL.md is about 1.5k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development, covering Changelog and release notes. It works with GitHub. The repository describes itself as: Rove — the agent multiplexer for your terminal. Run coding agents on parallel tasks with isolated worktrees and persistent sessions. The licence is MIT.

When your agent uses it

  • The user asks for changelog
  • Add a changeset
  • Before cutting a version

Example prompts

  • “changelog”
  • “release notes”
  • “what changed”
  • “/changelog-generator”

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Find the cut point: the latest ## [] heading in packages/rove/CHANGELOG.md, or the last v* tag.
  2. Run git log --no-merges ..HEAD --pretty=format:'%h %s%n%b%n---' to get the commit set, and check .changeset/*.md for changes that already…
  3. Group the un-covered user-facing changes. Write one changeset file per coherent change, each with the right bump type and a single-line…
  4. Prefer bun run changeset so the CLI writes the file; only hand-author the .changeset/.md if scripting a batch.
  5. Commit each changeset with the change it describes, and list the files in your report.

What it can do on your machine

Read from SKILL.md and the folder at commit 23c1cf9. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • bun
    • changeset
    • git

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • github.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Changelog Generator loads about 1.5k tokens when it runs. Until then it costs about 99 tokens; SKILL.md has 669 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~99
When it runs · the whole SKILL.md, loaded when a task matches
~1.5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from Sma1lboy/rove at commit 23c1cf9, republished under its MIT licence (© Sma1lboy). 669 words, ~1,481 tokens.

Download SKILL.mdSave it as .claude/skills/changelog-generator/SKILL.md (or your agent's skills folder).
name
changelog-generator
description
Draft Rove release notes as Changesets. Writes user-facing entries as `.changeset/*.md` files for `@sma1lboy/rove` (consumed into `packages/rove/CHANGELOG.md` at release time). Use when the user asks for "changelog", "release notes", "what changed", "add a changeset", or before cutting a version. Enforces Rove's no-soft-wrap rule so GitHub release pages render flowing text.
metadata.internal
true
<!-- Adapted from https://github.com/ComposioHQ/awesome-claude-skills/blob/master/changelog-generator/SKILL.md -->

Changelog Generator (Rove)

Drafts release notes as Changesets — one .changeset/<name>.md file per change — in Rove's house style. The release (via changeset version) later consumes them into packages/rove/CHANGELOG.md and the GitHub release body. See docs/RELEASING.md for the full flow.

When to use

  • The user says "draft changelog", "write release notes", "add a changeset", "what changed since v0.X.Y", or similar.
  • After landing a user-facing change that has no changeset yet (e.g. it was committed before this skill existed, or in a batch that skipped them).
  • Before cutting a release tag — to backfill changesets for anything user-facing that slipped through, so the generated notes are complete.

Rove project conventions (load-bearing)

File format — a changeset, not a CHANGELOG edit
  • Do not hand-edit packages/rove/CHANGELOG.md or invent a ## [Unreleased] section — that file is generated.

  • Each change is a new file .changeset/<two-words-random>.md (the changeset CLI names it; if writing by hand, any unique kebab name works). Shape:

    markdown
    ---
    "@sma1lboy/rove": patch
    ---
    
    Single-line user-facing summary. This text lands verbatim under the next release and in the GitHub release body.
  • The canonical frontmatter bump key is @sma1lboy/rove, with value patch | minor | major.

  • Default to patch for every change, including features and pre-1.0 breaking changes. Use minor or major only when the user explicitly requests that bump in the current turn.

  • The bump type is the category — Changesets groups output under ### Minor Changes / ### Patch Changes automatically. Don't write ### Added/### Fixed headings yourself.

  • One changeset per coherent change. A batch that did three user-visible things → three changesets (or one with three bullets if they're one feature). Prefer the changeset CLI: bun run changeset (interactive) writes the file for you.

HARD RULE — no soft wraps

Every bullet, every paragraph in a changeset body must be on a single line. Do not wrap at column 70/80/whatever. The line can be 400 chars long; that's fine.

Why: GitHub renders release bodies with GFM's hard-break extension. Each newline inside a list item or paragraph becomes a <br> tag. Soft-wrapped text renders as a narrow column broken every ~70 chars on the live release page, which looks broken.

Voice
  • Present tense, user-perspective. "Add X", "Fix Y", "Move Z" — not "Added X", not "I added X".
  • Lead with what changed, not why. The why goes in a follow-up clause if it's non-obvious.
  • Short bold lead-in for headlines (**The thing** — explanation...) is the established pattern.
  • Reference internal anchors with backticks (`task.new`, `ctrl+,`, `packages/rove/src/foo.ts`) rather than prose.
Show full SKILL.md (292 more words)Show less
Filtering

Pull in: features, behaviour changes the user can see/feel, bug fixes affecting user-visible behaviour, distribution / packaging / install changes.

Skip: pure refactors, internal test additions (UNLESS a milestone), CLAUDE.md / docs / skills / memory / agent-config tweaks, dependency bumps with no behaviour delta, CI tweaks (unless a new gate the user cares about). A change that needs no release can still record that explicitly with bun run changeset -- --empty.

When in doubt, ask "would a Rove user reading this on github.com/Sma1lboy/rove/releases care?" If no → skip (or empty changeset).

How to draft

  1. Find the cut point: the latest ## [<version>] heading in packages/rove/CHANGELOG.md, or the last v* tag.
  2. Run git log --no-merges <last-tag>..HEAD --pretty=format:'%h %s%n%b%n---' to get the commit set, and check .changeset/*.md for changes that already have one (don't duplicate).
  3. Group the un-covered user-facing changes. Write one changeset file per coherent change, each with the right bump type and a single-line summary per the rules above.
  4. Prefer bun run changeset so the CLI writes the file; only hand-author the .changeset/<name>.md if scripting a batch.
  5. Commit each changeset with the change it describes, and list the files in your report.

Example output (a changeset file)

.changeset/swift-pandas-cheer.md:

markdown
---
"@sma1lboy/rove": patch
---

**The Tasks pane fills its tmux pane and adapts to its width** — the task list now stretches to 100% of the pane as you drag the tmux split. On a narrow pane the secondary columns step aside so the task name stays readable: the branch label drops first, then the changes chip, and the title ellipsises only when it must.

Note: the summary is one long line. No newlines inside it. That's the only reliable way to make the GitHub release page render flowing text.

What to avoid

  • ❌ Hand-editing packages/rove/CHANGELOG.md or recreating a ## [Unreleased] section — it's generated from changesets.
  • ❌ Soft-wrapping a changeset summary at column 70 because "it looks nicer in the editor". Render-time soft-wrap exists for a reason.
  • ❌ Changesets like "Refactor X to use Y pattern" — internal change, skip (or --empty).
  • ❌ Auto-generating from git log without filtering. Most commits are noise.
  • ❌ Touching the version number in package.json — changeset version (run at release time) owns that.

© Sma1lboy, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .claude/skills/changelog-generator of Sma1lboy/rove.

Open the folder on GitHubat commit 23c1cf9

Compare with similar skills

Changelog Generator next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Changelog Generator compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Changelog Generator this skillSma1lboy/rove171—~1.5kAutomated safety check: PassMIT
Cutting A ReleaseTriliumNext/Trilium38k—~3.2kAutomated safety check: PassAGPL-3.0
Rea Changelog Updatemorluto/rea80k—~1.9kAutomated safety check: PassMIT
Mole CLI Release Flowtw93/Mole70k—~2.6kAutomated safety check: PassGPL-3.0
Draft Release Notesjamiepine/voicebox57k—~941Automated safety check: PassMIT
Mole Release Notes Publishertw93/Mole70k—~1.9kAutomated safety check: PassGPL-3.0

Similar skills

  • Cutting A Release

    TriliumNext/Trilium

    A skill your agent uses when cutting, preparing, or debugging a Trilium release — bumping the monorepo version, tagging, or diagnosing a failed "Release" workflow run.

    38k GitHub stars~3.2k tokensUpdated today
    DevelopmentAuto-check passed
  • Prepare or rewrite REA release changelogs and GitHub release notes from pinned Git history, with verified contributor thanks and Release Please synchronization.

    80k GitHub stars~1.9k tokensUpdated today
    DevelopmentAuto-check passed
  • Runbook for assessing and executing a Mole CLI release: distribution channels, pre-flight checks, capital-V tags, build artifacts and the handoff to curated release notes.

    70k GitHub stars~2.6k tokensUpdated today
    DevelopmentAuto-check passed
  • Draft Release Notes

    jamiepine/voicebox

    Writes or refreshes the Unreleased section of CHANGELOG.md as a themed narrative built from the commits, PRs and diff since the last version tag.

    57k GitHub stars~941 tokensUpdated 4 days ago
    DevelopmentAuto-check passed
  • Publishes curated, bilingual release notes for an existing Mole version tag with gh release edit, including contributor thanks and reactions, after the release workflow finishes.

    70k GitHub stars~1.9k tokensUpdated today
    DevelopmentAuto-check passed
  • Release Bump

    jamiepine/voicebox

    Ends a release cycle by moving the Unreleased changelog notes under a dated version heading, bumping version files with bumpversion and tagging the commit.

    57k GitHub stars~1.1k tokensUpdated 4 days ago
    DevelopmentAuto-check passed

More from Sma1lboy/rove

All 13 skills in this repo
  • Image Gen

    Sma1lboy/rove

    Generate a single image from a text prompt using the MiniMax image generation API.

    171 GitHub stars~927 tokensUpdated today
    Auto-check passed
  • Hyperframes Design

    Sma1lboy/rove

    Non-animation creative direction for HyperFrames videos. An agent skill from Sma1lboy/rove.

    171 GitHub stars~1.2k tokensUpdated today
    Auto-check passed
  • File Issue

    Sma1lboy/rove

    Turn a rough idea, a bug, or a batch of unsolved problems into well-structured GitHub issue(s) and file them with gh, auto-classifying type + labels from the content (recommend, then confirm) and…

    171 GitHub stars~2.4k tokensUpdated today
    Auto-check passed
  • Rove

    Sma1lboy/rove

    A skill your agent uses when controlling Rove tasks, parallel coding attempts, hosted agent sessions, task lifecycle, or the daemon-owned issue tracker from a shell.

    171 GitHub stars~8.9k tokensUpdated today
    Auto-check passed
  • Unslop

    Sma1lboy/rove

    Strip AI writing tells from Rove's user-facing prose — README, the docs/ pages that sync to docs.rove.run, landing copy, and release notes.

    171 GitHub stars~1.3k tokensUpdated today
    Auto-check passed
  • Why

    Sma1lboy/rove

    A skill your agent uses for 'why does X work this way', 'why we picked Y', '为什么这么设计', design rationale, regressions, or where a magic number came from.

    171 GitHub stars~5.6k tokensUpdated today
    Auto-check passed

Works with

Categories

Questions about Changelog Generator

What does Changelog Generator do?

Draft Rove release notes as Changesets. An agent skill from Sma1lboy/rove. Changelog Generator is an agent skill from Sma1lboy/rove. Draft Rove release notes as Changesets.

When should I use Changelog Generator?

Changelog Generator fits situations like: the user asks for changelog; add a changeset; before cutting a version.

How do I install Changelog Generator in Claude Code?

Run `npx skills add Sma1lboy/rove --skill changelog-generator -a claude-code`. Or copy the skill folder (.claude/skills/changelog-generator in Sma1lboy/rove) into .claude/skills/changelog-generator in your project. Claude Code loads it when a task matches its description.

How do I install Changelog Generator in Codex?

Run `npx skills add Sma1lboy/rove --skill changelog-generator -a codex`. Or copy the skill folder (.claude/skills/changelog-generator in Sma1lboy/rove) into .agents/skills/changelog-generator in your project. Codex loads it when a task matches its description.

Can I use Changelog Generator in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Sma1lboy/rove --skill changelog-generator -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/changelog-generator, .gemini/skills/changelog-generator, .github/skills/changelog-generator and .opencode/skills/changelog-generator in your project.

What does Changelog Generator need to run?

Going by SKILL.md and its folder, Changelog Generator needs the command-line tools its instructions call (bun, changeset and git).

Does Changelog Generator access the network?

SKILL.md names 1 domain. As links in the text: github.com. This is read from the text; nothing was executed.

Is Changelog Generator safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Changelog Generator use?

Changelog Generator is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Changelog Generator use?

About 1.5k tokens (SKILL.md is roughly 5.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Changelog Generator?

Skills that share tags, products or a category with Changelog Generator: Cutting A Release (TriliumNext/Trilium, 38k stars), Rea Changelog Update (morluto/rea, 80k stars), Mole CLI Release Flow (tw93/Mole, 70k stars) and Draft Release Notes (jamiepine/voicebox, 57k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Changelog Generator?

Sma1lboy (a GitHub user) maintains it in Sma1lboy/rove, which has 171 GitHub stars. The repository holds 13 skills in this directory. The repository was last updated on October 10, 2026.

Source: Sma1lboy/rove on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.