「チケット番号忘れた」
「プレフィックス間違えた」
開発中のコミットメッセージ、毎回手動でフォーマットを整えるのは正直面倒ではありませんか?
特に以下のようなチーム独自のルールがある場合、気をつけていてもミスは起きてしまうものです。
- チケット番号の記載必須
- プレフィックス指定(Feat, Fix...)
- 日本語の体言止め
今回は、IntelliJ IDEAのAI Assistant機能を使って、これら面倒な規約をAIに丸投げし、コミットメッセージをワンクリックで生成する設定を紹介します!
まず結論:AI設定に「特製プロンプト」をコピペするだけ
IntelliJ IDEAのAI Assistantを少しカスタマイズするだけで、「Prefix + 日本語 + (チケット番号)」のルールに沿ったコミットメッセージが1クリックで生成できるようになります。
▼ 生成されるメッセージ例
Feat: ログイン画面の実装 (PROJ-123)
▼ コピペする場所
Tools > AI Assistant >Prompt Library
にある
Built-in Actions > Commit Message Generationに以下のプロンプトをコピペ。
▼ コピペ用プロンプト
* Extract the Ticket ID (pattern `[A-Z]+-[0-9]+`) from `$GIT_BRANCH_NAME`
* Determine the commit prefix from the diff using the following 7 rules:
- `Feat`: New features or major additions
- `Fix`: Bug fixes and error resolutions
- `Refactor`: Code restructuring without behavior changes (formatting, renaming)
- `Perf`: Performance improvements
- `Test`: Adding missing tests or correcting existing tests
- `Docs`: Documentation only changes
- `Chore`: Maintenance tasks (build configs, dependency updates, auxiliary tools)
* Format: `Prefix: [Subject] ([Ticket ID])`
* Answer in Japanese
* Style Guidelines:
- Write the subject in Japanese.
- Use the "Taigendome" style (ending with a noun) or the plain/dictionary verb form (e.g., "機能の追加", "バグを修正").
- Do NOT use polite forms like "desu/masu" or past tense like "shimashita".
- Use bullet points for detailed changes in the body if necessary.
※ 適宜、ご自身のプロジェクトやコミットメッセージスタイルに合わせて修正しご活用ください!
「フォーマット整形の手間をゼロにしたい」
という方は、ぜひ本記事のプロンプトをコピーして試してみてください!
以上が結論となりますが、初めて設定する方のためにスクリーンショット付きの詳しい手順も用意しました。
設定画面の開き方や、実際にAIが生成したメッセージの挙動を確認したい方は、ぜひ続きをご覧ください!
はじめに:AI Assistantを利用したコミットメッセージ生成方法
まず、AI Assistantを活用してコミットメッセージを自動生成できる機能について、基本操作をご紹介します。
ワンクリックでコミットメッセージを自動生成!
- IntelliJの左側タブから Commit (Cmd + 0) を開く
- 入力欄の上部にある AI Assistantアイコンをクリック
- コミットメッセージが自動生成され、入力欄に反映される
例えば、FizzBuzzのコードを実装した変更に対して生成を実行すると、デフォルトでは以下のようなメッセージが作成されます。
add FizzBuzz implementationというメッセージは、確かに「FizzBuzzの実装を追加した」という事実を的確に表しています。
しかし、もしプロジェクトのルールで以下のように決まっていたらどうでしょうか?
- 言語: 日本語であること
- 形式: 何をしたのか一目でわかるようにプレフィックスをつけること
- 識別子: コミットメッセージの最後に (チケット番号) を記載すること
デフォルトのままでは、何度ボタンをクリックしても英語のシンプルなメッセージしか出ず、意図したフォーマットにはなりません。
結局、生成された英語を消して手動で書き直すことになってしまいます。
そこで次項からは、プロジェクト規約に沿ったコミットメッセージを一発で生成させるための設定を紹介します。
プロジェクト規約に沿ったコミットメッセージの生成方法
AI Assistantの設定を行う
IntelliJ IDEAのAI Assistant設定画面から、コミットメッセージ生成時に使用されるプロンプト(指示書)をカスタマイズします。
-
Settings(Cmd + ,)を開く -
Tools>AI Assistantを選択 - Prompt Libraryを確認し、
Built-in Actions>Commit Message Generationのプロンプトを編集する
以下のプロンプトを貼り付けて保存してください。
これが今回の肝となる設定です。
* Extract the Ticket ID (pattern `[A-Z]+-[0-9]+`) from `$GIT_BRANCH_NAME`
* Determine the commit prefix from the diff using the following 7 rules:
- `Feat`: New features or major additions
- `Fix`: Bug fixes and error resolutions
- `Refactor`: Code restructuring without behavior changes (formatting, renaming)
- `Perf`: Performance improvements
- `Test`: Adding missing tests or correcting existing tests
- `Docs`: Documentation only changes
- `Chore`: Maintenance tasks (build configs, dependency updates, auxiliary tools)
* Format: `[Prefix]: [Subject] ([Ticket ID])`
* Answer in Japanese
* Style Guidelines:
- Write the subject in Japanese.
- Use the "Taigendome" style (ending with a noun) or the plain/dictionary verb form (e.g., "機能の追加", "バグを修正").
- Do NOT use polite forms like "desu/masu" or past tense like "shimashita".
- Use bullet points for detailed changes in the body if necessary.
Prefixは以下の記事を参考にさせてもらいました。
https://qiita.com/muranakar/items/20a7927ffa63a5ca226a
設定のポイント:
-
Ticket IDの抽出:
ブランチ名($GIT_BRANCH_NAME)変数から正規表現でチケット番号(例: PROJ-123)を自動で抜き出すように指示 -
Prefixの定義:
変更内容(diff)を見て、Feat や Fix などを自動判定 -
Formatの指定:
Prefix: Subject (Ticket ID)という独自の順序を指定 -
文体の指定 (Style Guidelines):
AIが生成しがちな冗長な表現(丁寧語や過去形)を排除し、開発現場で好まれる簡潔な日本語を指定- "Taigendome" style: 「機能の追加」のように名詞で終わる「体言止め」を指示。
- Plain/Dictionary form: 「バグを修正」のように動詞の基本形(常体)も許可し、自然な表現に。
-
禁止事項:
desu/masu(です・ます)やshimashita(しました)を明示的に禁止することで、「修正しました」ではなく「修正」と出力させる。
AIは、指示がないと「〜を修正しました。」のように丁寧すぎる日本語を生成する傾向があります。
わかりやすいコミットメッセージにするために、Style Guidelinesで "Taigendome"(体言止め)という概念を導入させました。
実際にやってみた結果
シナリオ
- Gitブランチ名: feature/Project-123
この状態で、再度コミット画面のAI Assistantアイコンを押してみます。
[Feat]: FizzBuzzプログラムの実装(Project-123)
先ほどまでadd FizzBuzz implementationとしか出なかったのが、
- チケット番号を含める
- プレフィックスをつける
- 体言止めにする
とプロジェクト規約に沿うようになりました。
ただ、[Feat]と括弧がついているのがいけてないので、以下に変更してみます。
- * Format: `[Prefix]: [Subject] ([Ticket ID])`
+ * Format: `Prefix: [Subject] ([Ticket ID])`
シンプルにPrefixの[ ]を削除しただけです。
結果は以下の通り。
Feat: FizzBuzzプログラムの実装(Project-123)
と意図通りのコミットメッセージが生成されました。
仮にブランチ名をfeature/QAC-1207に変えたとしても、
- Extract the Ticket ID (pattern
[A-Z]+-[0-9]+) from$GIT_BRANCH_NAME
と正規表現で取得しているので以下の通り対応可能です。
まとめ
IntelliJ IDEAのAI Assistantにおけるプロンプト設定を少し工夫するだけで、日々の開発体験は大きく向上します。
- 形式の統一: チーム全員が同じフォーマットでコミットできる
- ミスの防止: チケット番号の書き忘れや、プレフィックスの揺れがなくなる
- 時短: 内容を考える時間を短縮し、開発そのものに集中できる
「うちは独自のルールがあるからAI生成は使えない」と諦めていた方も、ぜひプロジェクトの規約に合わせてプロンプトをカスタマイズしてみてください!
今回のコミットメッセージ自動化は、AI活用のほんの第一歩です。
「この便利さをチーム全体に広めたい」
「でも、いきなり有料プランの導入は説得が難しい…」
そんなふうに感じた方は、ぜひ以下の記事もあわせて読んでみてください。
「チームを疲弊させない」 ための段階的な導入戦略や、無料枠を賢く活用した実体験をまとめています!






