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.
Generates structured changelogs and release notes from git history and PRs, classifying breaking changes, features, fixes, performance, docs.
$ npx skills add Mathews-Tom/armory --skill changelog-composer -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install Mathews-Tom/armory changelog-composer --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/Mathews-Tom/armory.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/changelog-composer .claude/skills/changelog-composer && rm -rf skills-srcUse ~/.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/
Install the "changelog-composer" agent skill from https://github.com/Mathews-Tom/armory/tree/main/skills/changelog-composer into .claude/skills/changelog-composer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "changelog-composer", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/Mathews-Tom/armory/tree/main/skills/changelog-composerType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add Mathews-Tom/armory --skill changelog-composer -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install Mathews-Tom/armory changelog-composer --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Mathews-Tom/armory.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/changelog-composer .agents/skills/changelog-composer && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "changelog-composer" agent skill from https://github.com/Mathews-Tom/armory/tree/main/skills/changelog-composer into .agents/skills/changelog-composer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "changelog-composer", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Mathews-Tom/armory --skill changelog-composer -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install Mathews-Tom/armory changelog-composer --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Mathews-Tom/armory.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/changelog-composer .cursor/skills/changelog-composer && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "changelog-composer" agent skill from https://github.com/Mathews-Tom/armory/tree/main/skills/changelog-composer into .cursor/skills/changelog-composer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "changelog-composer", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/Mathews-Tom/armory.git --path skills/changelog-composer--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add Mathews-Tom/armory --skill changelog-composer -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install Mathews-Tom/armory changelog-composer --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Mathews-Tom/armory.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/changelog-composer .gemini/skills/changelog-composer && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "changelog-composer" agent skill from https://github.com/Mathews-Tom/armory/tree/main/skills/changelog-composer into .gemini/skills/changelog-composer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "changelog-composer", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install Mathews-Tom/armory changelog-composerInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add Mathews-Tom/armory --skill changelog-composer -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/Mathews-Tom/armory.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/changelog-composer .github/skills/changelog-composer && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "changelog-composer" agent skill from https://github.com/Mathews-Tom/armory/tree/main/skills/changelog-composer into .github/skills/changelog-composer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "changelog-composer", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Mathews-Tom/armory --skill changelog-composer -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install Mathews-Tom/armory changelog-composer --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Mathews-Tom/armory.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/changelog-composer .opencode/skills/changelog-composer && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "changelog-composer" agent skill from https://github.com/Mathews-Tom/armory/tree/main/skills/changelog-composer into .opencode/skills/changelog-composer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "changelog-composer", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
changelog-composerGenerates structured changelogs and release notes from git history and PRs, classifying breaking changes, features, fixes, performance, docs.
Changelog Composer is an agent skill from Mathews-Tom/armory. Generates structured changelogs and release notes from git history and PRs, classifying breaking changes, features, fixes, performance, docs. Triggers on: "generate changelog", "write release notes", "what changed since", "prepare release", "release notes for", "diff since tag".
Its SKILL.md is about 2.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 7 other files, including reference files (for example `evals/cases.yaml`, `references/audience-filter.md` and `references/categorization-rules.md`).
It sits in Development, covering Changelog and release notes. It works with Git. The repository describes itself as: Curated, production-grade skills for AI coding agents. Battle-tested workflows for developers who use AI seriously. The licence is MIT.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 4594fb7. It shows what the files ask for, not the result of running them.
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.
Shell commands in SKILL.md call:
gitghFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use git and gh, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Changelog Composer loads about 2.2k tokens when it runs, and up to ~6.5k if it reads all its reference files. Until then it costs about 75 tokens; SKILL.md has 777 words of instructions outside code blocks.
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.
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.
The full file from Mathews-Tom/armory at commit 4594fb7, republished under its MIT licence (© Mathews-Tom). 777 words, ~2,152 tokens.
.claude/skills/changelog-composer/SKILL.md (or your agent's skills folder). This skill also uses 5 other files; get the full folder from GitHub.Transforms raw git history and PR descriptions into polished, audience-appropriate changelogs. Parses conventional commits, classifies changes by impact category, filters internal-only modifications, and produces structured release notes with PR links — following Keep a Changelog conventions.
| File | Contents | Load When |
|---|---|---|
references/conventional-commits.md | Commit type parsing, scope extraction, breaking change indicators | Repository uses conventional commits |
references/categorization-rules.md | Change classification logic, audience filtering, severity ordering | Always |
references/audience-filter.md | User-facing vs internal change detection, exclusion patterns | Always |
references/changelog-formats.md | Keep a Changelog, GitHub Releases, announcement copy templates | Format selection needed |
Collect all changes between the previous release and the current state:
git describe --tags --abbrev=0.
If no tags exist, use the initial commit or a user-specified starting point.git log <last-tag>..HEAD --oneline --no-mergesgh pr list --state merged --base main --search "merged:>YYYY-MM-DD"
or parse merge commit messages.feat:, fix:, docs:, etc.), extract type, scope, and description. See
references/conventional-commits.md.BREAKING CHANGE: in commit
bodies, ! after type (feat!:), or explicit annotations in PR descriptions.Categorize each change by its impact:
| Category | Conventional Commit Type | Indicators |
|---|---|---|
| Breaking Changes | feat!:, BREAKING CHANGE: | API removal, signature change, behavior change |
| Features | feat: | New capability, new endpoint, new command |
| Fixes | fix: | Bug correction, error handling improvement |
| Performance | perf: | Speed improvement, memory reduction |
| Documentation | docs: | README, API docs, guides |
| Internal | chore:, ci:, refactor:, test:, build: | No user-facing impact |
For repositories without conventional commits, classify by reading the commit message and changed files. Code changes to public API → Feature or Fix. Test-only changes → Internal.
Exclude internal changes by default:
Include internal changes only when:
Highlight breaking changes prominently — always at the top, always with migration guidance.
For each included change, write a human-readable description:
Assemble the changelog in the requested format, ordered by severity:
## [{version}] - {YYYY-MM-DD}
### Breaking Changes
- **`function_name` parameter renamed** — `old_param` is now `new_param`.
Migration: find/replace `old_param=` with `new_param=` in all call sites. ([#{pr}]({url}))
### Features
- **{Feature name}** — {What it enables and why it matters}. ([#{pr}]({url}))
### Fixes
- Fixed {symptom} when {condition}. ([#{pr}]({url}))
### Performance
- {Operation} is now {X}x faster / uses {X}% less memory. ([#{pr}]({url}))
### Documentation
- Added {guide/reference} for {topic}. ([#{pr}]({url}))| Mode | Input | Output | When to Use |
|---|---|---|---|
release | Tag-to-HEAD | Full changelog entry | Preparing a versioned release |
sprint | Date range or commit range | Summary of changes | Sprint review, status update |
pr | Single PR | One-line changelog entry | PR description template |
| Problem | Resolution |
|---|---|
| No tags exist in repository | Ask for a starting commit or date. Default to the initial commit if the repository is small. |
| Repository doesn't use conventional commits | Classify by reading commit messages and changed files. Note reduced classification accuracy. |
| PR descriptions are empty or low-quality | Fall back to commit messages. Flag entries that may need manual review. |
| Ambiguous change classification | Default to "Features" for additions, "Fixes" for modifications. Mark uncertain entries for review. |
| Too many changes for a single release | Group by component/module. Consider whether the release should be split. |
| Merge commits obscure individual changes | Use --no-merges to skip merge commits. Parse individual commits within merged PRs. |
Push back if:
© Mathews-Tom, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 5 other files (references) in skills/changelog-composer of Mathews-Tom/armory.
Open the folder on GitHubat commit 4594fb7
Changelog Composer 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Changelog Composer this skillMathews-Tom/armory | 329 | — | ~2.2k | Automated safety check: Pass | MIT | |
| React Router Release Notes Prepremix-run/react-router | 57k | — | ~1.1k | Automated safety check: Pass | MIT | |
| Draft Release Notesjamiepine/voicebox | 57k | — | ~941 | Automated safety check: Pass | MIT | |
| Mole Release Notes Publishertw93/Mole | 70k | — | ~1.9k | Automated safety check: Pass | GPL-3.0 | |
| Release Bumpjamiepine/voicebox | 57k | — | ~1.1k | Automated safety check: Pass | MIT | |
| Git Workflow and Versioningaddyosmani/agent-skills | 104k | 2 repos | ~3.5k | Automated safety check: Notes | MIT |
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.
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.
tw93/Mole
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.
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.
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.
verdaccio/verdaccio
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.
Mathews-Tom/armory
Architecture reviews across 7 dimensions (structural, scalability, enterprise readiness, performance, security, ops, data) with scored reports.
Mathews-Tom/armory
Turn concepts into static HTML visuals exported as PNG or SVG files via HTML/CSS/SVG.
Mathews-Tom/armory
A skill your agent uses when analyzing an existing video URL or local recording: "watch this video", "analyze youtube video", "summarize this video", "youtube transcript", "find this moment", "what…
Mathews-Tom/armory
Deep code simplification and refactoring preserving behavior across Python, Go, TypeScript, Rust.
Mathews-Tom/armory
Turn concepts into animated explainer videos using Manim (Python) with MP4/GIF output, audio overlay, multi-scene composition.
Mathews-Tom/armory
Maps the unresolved architecture, policy, and scope decisions that must be answered before planning can start: one durable decision ticket per question on the issue tracker, typed and blocker-linked…
Works with
Categories
Generates structured changelogs and release notes from git history and PRs, classifying breaking changes, features, fixes, performance, docs. Changelog Composer is an agent skill from Mathews-Tom/armory. Generates structured changelogs and release notes from git history and PRs, classifying breaking changes, features, fixes, performance, docs.
Changelog Composer fits situations like: : generate changelog; write release notes; what changed since; prepare release.
Run `npx skills add Mathews-Tom/armory --skill changelog-composer -a claude-code`. Or copy the skill folder (skills/changelog-composer in Mathews-Tom/armory) into .claude/skills/changelog-composer in your project. Claude Code loads it when a task matches its description.
Run `npx skills add Mathews-Tom/armory --skill changelog-composer -a codex`. Or copy the skill folder (skills/changelog-composer in Mathews-Tom/armory) into .agents/skills/changelog-composer in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Mathews-Tom/armory --skill changelog-composer -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-composer, .gemini/skills/changelog-composer, .github/skills/changelog-composer and .opencode/skills/changelog-composer in your project.
Going by SKILL.md and its folder, Changelog Composer needs the command-line tools its instructions call (git and gh).
SKILL.md contains no URLs. Its commands use git and gh, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
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.
Changelog Composer is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.2k tokens (SKILL.md is roughly 8.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 4.4k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Changelog Composer: React Router Release Notes Prep (remix-run/react-router, 57k stars), Draft Release Notes (jamiepine/voicebox, 57k stars), Mole Release Notes Publisher (tw93/Mole, 70k stars) and Release Bump (jamiepine/voicebox, 57k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Mathews-Tom (a GitHub user) maintains it in Mathews-Tom/armory, which has 329 GitHub stars. The repository holds 80 skills in this directory. The repository was last updated on October 6, 2026.
Source: Mathews-Tom/armory on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.