mcpField
C
changelog-generator

changelog-generator

github.com/borghei開発1.1k89 回インストール2 週間前に更新
リポジトリ

changelog-generator について

changelog-generator は、Conventional Commits から変更履歴とリリースノートを作成するスキルで、リリース記録を標準化する開発チーム向けです。セマンティックバージョン判定、複数形式の出力、monorepo のスコープ指定、コミットメッセージ検査に対応します。

主な機能

  1. 01Conventional Commit メッセージの解析
  2. 02major、minor、patch の判定
  3. 03複数形式での変更履歴生成
  4. 04monorepo スコープでの絞り込み
  5. 05CI とフックによるコミット形式の検査

活用シーン

  1. 01リリース前のバージョンノート作成
  2. 02CI でのリリースノート自動生成
  3. 03PR チェックでのコミット規約検証
  4. 04monorepo パッケージ別の変更履歴作成

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/borghei/claude-skills --skill changelog-generator

インストール後、Claude Code で/changelog-generatorを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
commit-format-and-rendering.md
generation-and-linting.md
quality-and-troubleshooting.md
scripts/
breaking_change_detector.py
changelog_formatter.py
commit_parser.py

詳細

変更履歴ジェネレーター

Conventional Commits から、一貫性があり監査可能な変更履歴とリリースノートを生成します。コミットメッセージを解析し、セマンティックバージョニングの更新レベル(major/minor/patch)を検出して、Keep a Changelog の各セクションを出力します。モノレポのスコープ別変更履歴に対応し、CI と連携してリリースノートを自動生成し、リンティングでコミット形式を徹底します。コミット解析、バージョン更新ロジック、出力処理を分離しているため、編集上の管理を損なうことなくリリースを自動化できます。

キーワード

変更履歴、リリースノート、Conventional Commits、セマンティックバージョニング、semver、Keep a Changelog、コミットのリンティング、リリースの自動化、モノレポの変更履歴

主な機能

  • コミット解析 — Conventional Commit のメッセージを構造化データ(type、scope、description、body、footer)に解析します。! と BREAKING CHANGE: から破壊的変更を検出します。
  • セマンティックバージョニングの検出 — コミットの種類をバージョン更新レベルに対応付けます(breaking→major、feat→minor、その他→patch)。プレリリースバージョンにも対応します。
  • 変更履歴の出力 — Keep a Changelog、GitHub リリースノート、プレーンな Markdown、JSON 形式で、種類ごとにまとめて出力します。
  • 品質の徹底 — CI や pre-commit フック向けのコミットメッセージリンター、厳格モード、スコープの検証、破壊的変更の文書化要件に対応します。

使用する場面

  • リリースタグを公開する前
  • CI でリリースノートを自動生成するとき
  • PR のチェックでコミットメッセージの規約を徹底するとき
  • パッケージごとにスコープを指定して変更履歴を作成する必要があるモノレポで
  • 生の Git 履歴をユーザー向けのリリースノートに変換するとき
  • リリース前チェックリストの手順として

最初に確認すること

変更履歴を生成する前に、次の入力を確認してください。不明または曖昧な項目があれば、推測せずに質問してください。

  • コミット範囲 — どのタグまたはコミット以降を対象にするか(含める履歴を指定します)
  • 出力形式 — Keep a Changelog、GitHub リリースノート、プレーンな Markdown、JSON のいずれか(changelog_formatter.py --format に設定します)
  • バージョンとスコープ — リリースバージョン、およびモノレポの場合は絞り込むパッケージのスコープ(--version とスコープによる絞り込みに設定します)

停止ルール:出力に最も影響する 2~3 項目だけを質問してください。ユーザーが「とりあえず下書きを作って」と言った場合は作成を進め、成果物の冒頭に前提を列挙してください。

ツール

ツール目的コマンド
commit_parser.pygit log(---COMMIT_END--- 区切り)を解析し、構造化された変更履歴エントリーに変換しますgit log --pretty=format:'%H%n%s%n%b%n---COMMIT_END---' --no-merges | python scripts/commit_parser.py --json
breaking_change_detector.pyコミットメッセージと差分をスキャンして、破壊的変更の指標を検出しますpython scripts/breaking_change_detector.py -f gitlog.txt --severity high
changelog_formatter.py解析済みのコミットを Keep a Changelog または GitHub Markdown 形式に整えますpython scripts/changelog_formatter.py -f parsed.json --version 1.4.0 --format keepachangelog

リファレンス

タスクに合ったリファレンスを読み込んでください。このファイルは簡潔に保ち、必要な詳細をその都度参照します。

  • references/commit-format-and-rendering.md — Conventional Commit の文法、種類とセクション/semver の対応表、破壊的変更のルール、Keep a Changelog と GitHub リリースノートの出力形式を説明します。コミット規約や出力スタイルを定めるときに読んでください。
  • references/generation-and-linting.md — Python コードを使った 4 ステップの解析→バージョン更新→出力ワークフロー、pre-commit フックと CI の commitlint 設定、モノレポのスコープ別変更履歴の方針、リリースワークフローとの連携図を説明します。パイプラインの構築や形式の徹底を行うときに読んでください。
  • references/quality-and-troubleshooting.md — 公開前の品質チェックリスト、よくある落とし穴、ベストプラクティス、トラブルシューティング表、成功基準をまとめています。変更履歴を公開する前や問題の診断時に読んでください。

範囲と制限事項

このスキルで扱う内容:

  • Conventional Commit メッセージを解析し、変更履歴生成用の構造化データに変換する
  • コミット履歴からセマンティックバージョンの更新(major/minor/patch)を決定する
  • Keep a Changelog、GitHub Release Notes、プレーンな Markdown、JSON 形式で変更履歴を生成する
  • pre-commit フックと CI リンティングによってコミットメッセージの標準を適用する

このスキルでは扱わない内容:

  • 実際のリリース公開やデプロイパイプラインの実行 — engineering/ci-cd-pipeline-design を参照
  • Git タグ管理、ブランチ戦略、マージワークフロー — engineering/git-workflow-automation を参照
  • コミットメッセージ自体の作成や改善 — standards/git/git-workflow-standards.md を参照
  • Changesets や Lerna などのツールを使った複数パッケージの協調的なバージョン管理 — モノレポ戦略で言及されていますが、ここでは実装されていません

統合ポイント

スキル統合内容データフロー
engineering/ci-cd-pipeline-design変更履歴生成は、リリース公開前の CI ステージとして実行されます解析済みコミットと生成された変更履歴が、アーティファクトとしてリリースパイプラインに渡されます
engineering/git-workflow-automationコミットが変更履歴ジェネレーターに到達する前に、コミットリンティングフックで形式を検証しますpre-commit 検証により、解析可能なコミットだけが git 履歴に追加されます
engineering/code-review-automationPR チェックでは、マージ前にコミットメッセージが Conventional Commits に準拠していることを確認しますリンティング結果が PR の承認を制御し、解析できないコミットが main に到達するのを防ぎます
engineering/api-versioning-strategy破壊的変更の検出により、API のバージョン更新と変更履歴の major リリースを連動させますBREAKING CHANGE コミットによって、変更履歴の項目追加と API のバージョン更新がどちらも行われます
project-management/release-managementリリース計画では、生成された変更履歴を関係者とのコミュニケーションに使用します生成されたリリースノートが、リリースチェックリストや関係者への告知に反映されます
standards/git/git-workflow-standards.mdコミット形式の標準によって、このスキルが解析する文法が定義されます標準の定義が、コミットの正規表現パターンの信頼できる情報源になります

コメント