git の履歴からタグ間の CHANGELOG を作成
Changelog section from git history between tags
2 つのタグやブランチの間のコミットを、破壊的変更・新機能・バグ修正などの種類ごとにまとめて、CHANGELOG やリリースノートの 1 セクションを作ります。見出しは日本語にも対応。
できること
タグ(またはブランチ・コミット)の間の git log から、CHANGELOG の 1 セクションを作ります。
- Conventional Commits(
feat:・fix(auth):・feat!:など)を解析し、種類ごとに見出しを分けて整理 BREAKING CHANGE:の記述や!を「破壊的変更」として先頭に掲載- 開始タグを省略すると、直前のタグを自動で使用
- GitHub・GitLab の URL を渡すと、比較・コミット・Issue へのリンクを付与
- 同じ範囲で取り消された(revert された)変更は両方とも除外
- style・chore・ci・test は既定で非表示にして件数だけ表示。Conventional でないコミットは「その他」に入れて件数を報告
- 見出しは英語または日本語(
--lang ja)
使い方
python scripts/changelog_from_git.py --from v1.3.0 --to v1.4.0 --url https://github.com/owner/repo
できた下書きをエージェントが読みやすい表現に整え、頼まれた場合だけ CHANGELOG.md に追記します。
必要な環境
- Python 3(標準ライブラリのみ)
- Git 2.25 以上
注意点
- スクリプトは履歴を読むだけで、タグの作成・プッシュ・ファイルの編集はしません。
- Conventional Commits を使っていないリポジトリでは、ほとんどが「その他」に入ります。その場合はエージェントが件名と差分から分類します。
- 日付は
--toのコミット日です(タグを作った日ではありません)。
English description
Groups the commits between two tags or refs into breaking changes, features, fixes and more, producing a CHANGELOG or release-notes section. Headings in English or Japanese.
What it does
Builds one CHANGELOG section from the git log between tags (or branches or commits).
- Parses Conventional Commits (
feat:,fix(auth):,feat!:and so on) and groups them under headings by type - Puts
BREAKING CHANGE:footers and!commits first under breaking changes - Uses the previous tag automatically when the start ref is omitted
- Adds compare, commit and issue links when given a GitHub or GitLab URL
- Drops a commit and its revert when both are in the range
- Hides style, chore, ci and test by default and reports their counts; non-conventional commits go under Other with a count
- Headings in English or Japanese (
--lang ja)
How to use
python scripts/changelog_from_git.py --from v1.3.0 --to v1.4.0 --url https://github.com/owner/repo
The agent rewrites the draft into reader-friendly wording and edits CHANGELOG.md only when asked.
Requirements
- Python 3 (standard library only)
- Git 2.25+
Caveats
- The script only reads history; it never creates tags, pushes, or edits files.
- In repositories that do not use Conventional Commits, most commits land under Other; the agent then classifies them from subjects and diffs.
- The date is the commit date of
--to, not the tag creation date.
インストール方法
- ダウンロードしたZIPを展開します(中に
changelog-from-git/フォルダとSKILL.mdがあります)。 - フォルダごと、使うエージェントのスキル置き場にコピーします。
- Claude:
~/.claude/skills/(プロジェクト単位なら.claude/skills/) - Hermes Agent:
~/.hermes/skills/ - Codex:
~/.agents/skills//Cursor:~/.cursor/skills/ - Claude アプリ(claude.ai):「カスタマイズ → スキル」からZIPをアップロード
- Claude:
- エージェントを再起動し、スキル一覧に表示されることを確認します。
出品者
AI Skill Market 公式
出品スキル 44 件