Agent skill

Changelog Generator for Games

by Donchitos in Donchitos/Claude-Code-Game-Studios

Generates an internal or player-facing changelog from git commits and sprint data, filtering out framework maintenance commits so that only work on the game itself reaches release copy.

MITAuto-check: notesDevelopment

Install Changelog Generator for Games

skills CLI
$ npx skills add Donchitos/Claude-Code-Game-Studios --skill changelog -a claude-code

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

GitHub CLI
$ gh skill install Donchitos/Claude-Code-Game-Studios changelog --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/Donchitos/Claude-Code-Game-Studios.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/changelog .claude/skills/changelog && 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
GitHub stars
26k
Token cost
~2.6k tokens
SKILL.md length
1,157 words
Files
1
Skills in repo
73
Repo updated
First seen
Licence
MIT

At a glance

Generates an internal or player-facing changelog from git commits and sprint data, filtering out framework maintenance commits so that only work on the game itself reaches release copy.

  • Works in 8 steps: Parse Arguments → Gather Change Data → Categorize Changes → …
  • Writing release notes for a game from the commits since the last tag
  • SKILL.md covers Recent History, Provenance check — before…, Phase 1: Parse Arguments and Phase 2: Gather Change Data, plus 6 more sections
  • Calls git and bash

What it does

The skill reads the last 30 commits and the five newest tags, and follows the project's automation mode (collaborative, guided or autonomous) to decide how often to ask and what to log. Because the history is read before the skill body runs, a provenance check comes first: each commit subject is classed as Game (mechanics, content, balance, art, audio, UI or bugs in those), Framework or maintenance (skills, hooks, agents, the test plan, CI or framework docs) or Unclear, and Unclear counts as Framework.

With at least one Game commit it carries on using only those and states how many of how many it used. With none it stops and says so, and it also stops if Game commits name a product that the design folder and code root never mention. A repository that contains maintenance work is not treated as the wrong one. The same rule is shared with the patch-notes skill, which reads this history for a different audience. Tools allowed include Read, Glob, Grep, Bash and Write.

When your agent uses it

  • Writing release notes for a game from the commits since the last tag
  • Producing both an internal changelog and a player-facing one for a sprint
  • Keeping hook, CI and skill commits out of public-facing notes

Example prompts

  • “Write the changelog for the commits since the last tag, with internal and player-facing versions.”
  • “Generate release notes for this sprint from the git history.”
  • “Produce a player-facing changelog and leave out hook and CI changes.”
  • “Why did you skip some commits when building the changelog?”

Requirements

  • A git repository with commit history
  • Pre-approved tools (allowed-tools): Read, Glob, Grep, Bash, Write, Bash(bash "*/.claude/skills/changelog/../../hooks/yaml-helper.sh" resolve_config *)

Workflow steps

8 steps, taken from the step headings in SKILL.md.

  1. Parse Arguments
  2. Gather Change Data
  3. Categorize Changes
  4. Generate Internal Changelog
  5. Generate Player-Facing Changelog
  6. Output
  7. Offer File Write
  8. Next Steps

What it can do on your machine

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

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Read
    • Glob
    • Grep
    • Bash
    • Write
    • Bash(bash "*/.claude/skills/changelog/../../hooks/yaml-helper.sh" resolve_config *)

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • git
    • bash

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

  • Network

    No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.

    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 for Games loads about 2.6k tokens when it runs. Until then it costs about 27 tokens; SKILL.md has 1,157 words of instructions outside code blocks.

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

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: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: Read, Glob, Grep, Bash, Write, Bash(bash "*/.claude/skills/changelog/../../hooks/yaml-helper.sh" res

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 Donchitos/Claude-Code-Game-Studios at commit be8993b, republished under its MIT licence (© Donchitos). 1,157 words, ~2,553 tokens.

Download SKILL.mdSave it as .claude/skills/changelog/SKILL.md (or your agent's skills folder).
name
changelog
description
Auto-generate a changelog from git commits and sprint data. Internal and player-facing versions.
allowed-tools
Read, Glob, Grep, Bash, Write, Bash(bash "*/.claude/skills/changelog/../../hooks/yaml-helper.sh" resolve_config *)
argument-hint
[version|sprint-number]
user-invocable
true
model
sonnet

!bash "${CLAUDE_SKILL_DIR}/../../hooks/yaml-helper.sh" resolve_config --keys automation

Automation mode: Resolve modes.automation (project.local.yaml → project.yaml → default collaborative). Every AskUserQuestion call and every file write follows .claude/docs/automation-modes.md (collaborative asks always · guided major-only · autonomous logs and proceeds; automation_always_ask categories always prompt).

Changelog

Recent History

Recent commits:

!git log --oneline -30 2>/dev/null || true

Recent tags (newest first):

!git tag --list --sort=-v:refname 2>/dev/null | head -5

Provenance check — before trusting the history above

The commits above may not belong to this game. This skill's history blocks are auto-resolved before the body runs, so the read has already happened — what this check governs is whether that output is usable, not whether it is fetched.

  1. Read the injected commit subjects above. If there are none — the log is empty or git is unavailable — skip this check: there is nothing to classify, and Phase 1's no-history branch is the right stop.
  2. Classify each one as Game (mechanics, content, balance, art, audio, UI, or a bug in those), Framework / maintenance (subjects naming skills, hooks, agents, the test plan, CI, or the framework's own docs), or Unclear — and treat Unclear as Framework.
  3. Decide from the counts:
    • At least one Game commit → proceed using only those, and state how many of how many you used.
    • Zero Game commits → stop, using the message below.

Filter per commit; a repo containing maintenance work is not a wrong repo. Every project on this framework accumulates commits touching hooks, CI and skills — the game repo is the framework repo. Listing those as a hard STOP fires on virtually every real project and contradicts step 2 whenever the history is mostly the game's. The harm is those commits becoming release copy, and excluding them prevents that precisely.

This rule is kept identical to /patch-notes' on purpose — the two read the same history for different audiences, and they must not disagree about whose history it is. Change both together.

The genuine wrong-history signal is different: Game commits naming a product that design/ and the code root (src/, Assets/ or Source/) never mention. If you see that, stop.

If no commit in the range is this game's, say so and stop:

"The git history in this repo does not appear to belong to [game]: 0 of the [N] recent commits are Game commits. The recent commits describe [what they actually describe]. I cannot generate a changelog from it — point me at the right history, or supply the change list directly."

Verdict: BLOCKED — stop here without generating a changelog.

Why this is a hard stop, not a warning. This exact failure is real, not hypothetical: a batch of framework-internal commits produced player-facing copy reading "Fixed an issue where progress from your last session could be lost on launch" — a session-hook timeout rendered as a gameplay fix for a game with no save system. It was fluent, plausible, and entirely false. A reader cannot tell the difference; only this check can.

Do not treat the preamble's existence as evidence. Injected output means the command ran, never that its subject is your game.


Both blocks are resolved before this skill runs. Use them as the starting point for Phase 2 rather than re-running the same commands.


Phase 1: Parse Arguments

Read the argument for the target version or sprint number. If a version is given, use the corresponding git tag. If a sprint number is given, use the sprint date range.

Verify the repository is initialized: run git rev-parse --is-inside-work-tree to confirm git is available. If not a git repo, inform the user and abort gracefully.

If there is no history to read — not a git repository, or no commits yet:

"No git history found. A changelog is built from commits — commit the work first, or supply the change list directly."

Verdict: BLOCKED — stop here without generating a changelog.


Phase 2: Gather Change Data

Read the git log since the last tag or release:

git log --oneline [last-tag]..HEAD

If no tags exist, bound the range explicitly — git log --oneline -n 100. Do not fall back to the full log: on an established repo that is thousands of lines for a changelog covering one release, and the oldest of them are the least relevant. If 100 commits does not reach far enough back, say so and ask for a start ref rather than widening blindly.

Read sprint reports from production/sprints/ for the relevant period to understand planned work and context behind changes.

Read completed design documents from design/gdd/ for any new features implemented during this period.


Show full SKILL.md (418 more words)Show less

Phase 3: Categorize Changes

Categorize every change into one of these categories:

  • New Features: Entirely new gameplay systems, modes, or content
  • Improvements: Enhancements to existing features, UX improvements, performance gains
  • Bug Fixes: Corrections to broken behavior
  • Balance Changes: Tuning of gameplay values, difficulty, economy
  • Technical Debt / Refactoring: Refactors and cleanup of the game's code that change nothing the player sees — a commit that says it refactors, cleans up or tidies, and names no fix, feature or tuning. Internal changelog only; never in the player-facing one
  • Known Issues: Issues the team is aware of but have not yet resolved
  • Miscellaneous: Changes that do not fit the above categories, or commits whose messages are too vague to classify confidently

For each commit, check whether the message contains a task ID or story reference (e.g. [STORY-123], TR-, #NNN, or similar). Count commits that lack any task reference and include this count in the Phase 4 Metrics section as: Commits without task reference: [N].


Phase 4: Generate Internal Changelog

markdown
# Internal Changelog: [Version]
Date: [Date]
Sprint(s): [Sprint numbers covered]
Commits: [Count] ([first-hash]..[last-hash])

## New Features
- [Feature Name] -- [Technical description, affected systems]
  - Commits: [hash1], [hash2]
  - Owner: [who implemented it]
  - Design doc: [link if applicable]

## Improvements
- [Improvement] -- [What changed technically and why]
  - Commits: [hashes]
  - Owner: [who]

## Bug Fixes
- [BUG-ID] [Description of bug and root cause]
  - Fix: [What was changed]
  - Commits: [hashes]
  - Owner: [who]

## Balance Changes
- [What was tuned] -- [Old value -> New value] -- [Design intent]
  - Owner: [who]

## Technical Debt / Refactoring
- [What was cleaned up and why]
  - Commits: [hashes]

## Miscellaneous
- [Change that didn't fit other categories, or vague commit message]
  - Commits: [hashes]

## Known Issues
- [Issue description] -- [Severity] -- [ETA for fix if known]

## Metrics
- Total commits: [N]
- Files changed: [N]
- Lines added: [N]
- Lines removed: [N]
- Commits without task reference: [N]

Phase 5: Generate Player-Facing Changelog

markdown
# What is New in [Version]

## New Features
- **[Feature Name]**: [Player-friendly description of what they can now do
  and why it is exciting. Focus on the experience, not the implementation.]

## Improvements
- **[What improved]**: [How this makes the game better for the player.
  Be specific but avoid jargon.]

## Bug Fixes
- Fixed an issue where [describe what the player experienced, not what was
  wrong in the code]
- Fixed [player-visible symptom]

## Balance Changes
- [What changed in player-understandable terms and the design intent.
  Example: "Healing potions now restore 50 HP (up from 30) -- we felt
  players needed more recovery options in late-game encounters."]

## Known Issues
- We are aware of [issue description in player terms] and are working on a
  fix. [Workaround if one exists.]

---
Thank you for playing! Your feedback helps us make the game better.
Report issues at [link].

Phase 6: Output

Output both changelogs to the user. The internal changelog is the primary working document. The player-facing changelog is ready for community posting after review.


Phase 7: Offer File Write

After presenting the changelogs, ask the user:

"May I write this changelog to docs/CHANGELOG.md? [A] Yes, append this entry (recommended if the file already exists) [B] Yes, overwrite the file entirely [C] No — I'll copy it manually"

  • Check whether docs/CHANGELOG.md exists before asking. If it does, default the recommendation to [A] append.
  • If the user selects [A]: append the new internal changelog entry to the top of the existing file (newest entries first).
  • If the user selects [B]: overwrite the file with the new changelog.
  • If the user selects [C]: stop here without writing.

After a successful write: Verdict: CHANGELOG WRITTEN — changelog saved to docs/CHANGELOG.md. If the user declines: Verdict: COMPLETE — changelog generated.


Phase 7: Next Steps

  • Use /patch-notes [version] to generate a styled, saved version for public release.
  • Use /release-checklist before publishing the changelog externally.
Guidelines
  • Never expose internal code references, file paths, or developer names in the player-facing changelog
  • Group related changes together rather than listing individual commits
  • If a commit message is unclear, check the associated files and sprint data for context
  • Balance changes should always include the design reasoning, not just the numbers
  • Known issues should be honest — players appreciate transparency
  • If the git history is messy (merge commits, reverts, fixup commits), clean up the narrative rather than listing every commit literally

© Donchitos, 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 of Donchitos/Claude-Code-Game-Studios.

Open the folder on GitHubat commit be8993b

Compare with similar skills

Changelog Generator for Games 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 for Games compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Changelog Generator for Games this skillDonchitos/Claude-Code-Game-Studios26k—~2.6kAutomated safety check: NotesMIT
React Router Release Notes Prepremix-run/react-router57k—~1.1kAutomated safety check: PassMIT
Git Workflow and Versioningaddyosmani/agent-skills103k2 repos~3.5kAutomated safety check: NotesMIT
Verdaccio Pull Request Workflowverdaccio/verdaccio18k—~1.9kAutomated safety check: PassMIT
Commitizencommitizen-tools/commitizen3.5k—~839Automated safety check: PassMIT
PR Pushicebear0828/codex-proxy1.8k—~2.2kAutomated safety check: NotesCustom licence

Similar skills

  • React Router Release Notes Prep

    remix-run/react-router

    Polishes pending React Router change files before the versioning scripts run, and decides whether a long-form What's Changed section is warranted.

    57k GitHub stars~1.1k tokensUpdated today
    DevelopmentAuto-check passed
  • Git Workflow and Versioning

    addyosmani/agent-skills

    Sets git habits for every change: short-lived branches, atomic commits with descriptive messages, clean pull requests, plus versioning, tagging and changelogs for releases.

    103k GitHub starsUsed in 2 repos~3.5k tokens
    DevelopmentAuto-check: notes
  • Takes a change through a verdaccio pull request: branch, local checks, changeset, title and body, labels, CI and review rounds, and ports to other release lines.

    18k GitHub stars~1.9k tokensUpdated today
    DevelopmentAuto-check passed
  • Commitizen

    commitizen-tools/commitizen

    A skill your agent uses for tasks involving Conventional Commits, commit message validation, Commitizen configuration, semantic version bumps, changelog generation, or CI/release automation with the…

    3.5k GitHub stars~839 tokensUpdated yesterday
    DevelopmentAuto-check passed
  • PR Push

    icebear0828/codex-proxy

    Package the current working changes into a standards-compliant codex-proxy pull request: branch hygiene, commit message linting, CHANGELOG prompt, conventional commit, push, and gh pr create against…

    1.8k GitHub stars~2.2k tokensUpdated today
    DevelopmentAuto-check: notes
  • PR Push

    icebear0828/codex-proxy

    Package the current working changes into a standards-compliant codex-proxy pull request: branch hygiene, commit message linting, CHANGELOG prompt, conventional commit, push, and gh pr create against…

    1.8k GitHub stars~2.3k tokensUpdated today
    DevelopmentAuto-check: notes

More from Donchitos/Claude-Code-Game-Studios

All 73 skills in this repo
  • Architecture Decision

    Donchitos/Claude-Code-Game-Studios

    Create an ADR documenting a technical decision: context, alternatives considered, consequences.

    26k GitHub stars~1.7k tokensUpdated yesterday
    Auto-check passed
  • Dev Story

    Donchitos/Claude-Code-Game-Studios

    Implement a story: ADR guidelines, right programmer agent, code plus test.

    26k GitHub stars~2.4k tokensUpdated yesterday
    Auto-check: notes
  • Game Asset Audit

    Donchitos/Claude-Code-Game-Studios

    Audits game assets against naming conventions, file size budgets and format standards, and finds orphaned assets and missing references.

    26k GitHub stars~2k tokensUpdated yesterday
    Auto-check passed
  • Game Asset Spec Writer

    Donchitos/Claude-Code-Game-Studios

    Writes per-asset visual specs and AI image-generation prompts for a game's characters, enemies and screens, driven by the GDD, art bible and an entity inventory.

    26k GitHub stars~5k tokensUpdated yesterday
    Auto-check passed
  • Game Balance Check

    Donchitos/Claude-Code-Game-Studios

    Checks game data and formulas for balance outliers, broken progression, degenerate strategies and economy problems, and answers 'could not run' when the data is missing.

    26k GitHub stars~2.2k tokensUpdated yesterday
    Auto-check passed
  • Structured Bug Reports

    Donchitos/Claude-Code-Game-Studios

    Turns a description into a structured bug report, or scans code for likely bugs, then verifies and closes reports through four modes.

    26k GitHub stars~2.5k tokensUpdated yesterday
    Auto-check: notes

Works with

Questions about Changelog Generator for Games

What does Changelog Generator for Games do?

Generates an internal or player-facing changelog from git commits and sprint data, filtering out framework maintenance commits so that only work on the game itself reaches release copy. The skill reads the last 30 commits and the five newest tags, and follows the project's automation mode (collaborative, guided or autonomous) to decide how often to ask and what to log. Because the history is read before the skill body runs, a provenance check comes first: each commit subject is classed as Game (mechanics, content, balance, art, audio, UI or bugs in those), Framework or maintenance (skills, hooks, agents, the test plan, CI or framework docs) or Unclear, and Unclear counts as Framework.

When should I use Changelog Generator for Games?

Changelog Generator for Games fits situations like: writing release notes for a game from the commits since the last tag; producing both an internal changelog and a player-facing one for a sprint; keeping hook, CI and skill commits out of public-facing notes.

How do I install Changelog Generator for Games in Claude Code?

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

How do I install Changelog Generator for Games in Codex?

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

Can I use Changelog Generator for Games 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 Donchitos/Claude-Code-Game-Studios --skill changelog -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, .gemini/skills/changelog, .github/skills/changelog and .opencode/skills/changelog in your project.

What does Changelog Generator for Games need to run?

Going by SKILL.md and its folder, Changelog Generator for Games needs the command-line tools its instructions call (git and bash). Our summary lists: A git repository with commit history. Its frontmatter pre-approves these tools: Read, Glob, Grep, Bash, Write, Bash(bash "*/.claude/skills/changelog/../../hooks/yaml-helper.sh" resolve_config *).

Does Changelog Generator for Games access the network?

SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Changelog Generator for Games safe to install?

Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Changelog Generator for Games use?

Changelog Generator for Games 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 for Games use?

About 2.6k tokens (SKILL.md is roughly 10k 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 for Games?

Skills that share tags, products or a category with Changelog Generator for Games: React Router Release Notes Prep (remix-run/react-router, 57k stars), Git Workflow and Versioning (addyosmani/agent-skills, 103k stars), Verdaccio Pull Request Workflow (verdaccio/verdaccio, 18k stars) and Commitizen (commitizen-tools/commitizen, 3.5k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Changelog Generator for Games?

Donchitos (a GitHub user) maintains it in Donchitos/Claude-Code-Game-Studios, which has 25,951 GitHub stars. The repository holds 73 skills in this directory. The repository was last updated on October 8, 2026.

Source: Donchitos/Claude-Code-Game-Studios on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.