mcpField
C
conventional-commit

conventional-commit

github.com/jkappers開発0197 回インストール37 週間前に更新
リポジトリ

conventional-commit について

conventional-commitは、Conventional Commits v1.0.0に準拠したGitコミットメッセージを作成するスキルです。ステージ済みの変更を調べて種類と任意のスコープを決め、ステージ済みのファイルだけをコミットします。

主な機能

  1. 01ステージ済み差分の確認
  2. 02コミット種類とスコープの選択
  3. 03仕様に沿ったメッセージ形式
  4. 04本文とフッターへの対応
  5. 05ファイルをステージしない

活用シーン

  1. 01ステージ済み変更のコミットメッセージ作成
  2. 02差分に応じた種類とスコープの選定
  3. 03背景や破壊的変更の注記の追加

インストール

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

$npx skills add https://github.com/jkappers/agent-skills --skill conventional-commit

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

詳細

コミットメッセージの作成

Conventional Commits v1.0.0 に従って Git コミットを作成します。

引数が指定されている場合は、ステージ済みの変更をコミットし、次の内容についてメッセージを作成します:$ARGUMENTS

このスキルは Git のコミットメッセージにのみ適用されます。明示的に求められない限り、これらの規約を PR タイトル、ブランチ名、変更履歴の項目、リリースノートに適用しないでください。

ワークフロー

  1. git diff --cached を実行して、ステージ済みの変更を確認します
  2. ステージ済みの変更がない場合は、その旨を報告して終了します
  3. 差分を分析し、適切なタイプ、スコープ、説明を決定します
  4. 以下のルールに従ってコミットメッセージを作成します
  5. git commit -m "<message>" を実行します(複数行のメッセージには HEREDOC を使用します)
  6. ファイルをステージしないでください。すでにステージされている内容のみをコミットします。

メッセージの構成

<type>[optional scope]: <description>

[optional body]

[optional footer(s)]

タイプ

タイプ用途
feat新機能
fixバグ修正
docsドキュメントのみ
style書式、空白
refactor修正でも機能追加でもない変更
perfパフォーマンス改善
testテストの追加または更新
buildビルドシステムまたは依存関係
ciCI 設定
choreメンテナンスタスク

スコープ

スコープは任意です。使用する場合は、影響を受けるコードベースのモジュール、コンポーネント、領域を指定します。

プロジェクトの構造からスコープを判断します。ファイル名ではなく、ディレクトリ名またはモジュール名を使用します。

例:feat(auth):、fix(api):、docs(readme):、refactor(db):

変更が複数の領域にまたがる場合や、プロジェクトルートに影響する場合は、スコープを省略します。

説明

命令形を使用します。「added feature」や「adds feature」ではなく、「add feature」のように記述します。 タイプの接頭辞に続く最初の文字は小文字にします。 末尾にピリオドを付けません。 50 文字以内に収めます。

本文

72 文字で折り返します。変更内容とその理由を説明し、方法は説明しません。

本文と説明の間には空行を 1 行入れます。

差分だけでは伝わらない背景、つまりアプローチに影響した動機、トレードオフ、制約を本文に記載します。

禁止事項

コミットメッセージには、以下の内容を含めないでください。

  • AI のクレジット表記(「Generated with Claude Code」や、AI に関する「Co-authored-by」行)
  • タイプの接頭辞や説明に含める絵文字
  • 所要時間の見積もりや日付
  • TODO 項目や今後の作業への言及
  • ファイル一覧(変更内容は差分で確認できます)
  • 謝罪や曖昧な表現(「修正を試みる」「解決できるとよい」など)

例

シンプルな例:

docs: correct spelling of CHANGELOG

スコープあり:

feat(lang): add Polish language

破壊的変更:

feat!: send email to customer when product ships

BREAKING CHANGE: customers now receive emails by default.

本文あり:

fix: prevent duplicate form submissions

Disables submit button after first click and adds
debounce to the handler.

フッターあり:

fix: resolve race condition in auth flow

Refs: #123
Reviewed-by: Alice

コメント