🤖
aicommitsでコミットメッセージを自動生成する
コミットメッセージを書くのが面倒、どう書けばいいか迷う...そんな悩みを解決するaicommitsを紹介します。AIが変更内容を解析して、適切なコミットメッセージを自動生成してくれるCLIツールです。
aicommitsとは
変更内容をAIが解析して、コミットメッセージを自動生成するCLIツールです。
- 使用モデル: GPT-3.5-turbo
- 特徴: 高精度なメッセージ生成
公式リポジトリ: https://github.com/Nutlope/aicommits
セットアップ
1. インストール
npm install -g aicommits
2. OpenAI APIキー取得
アカウント登録後、APIキーを取得します。
3. APIキー設定
aicommits config set OPENAI_KEY=<your token>
4. 使用方法
# 変更をステージング
git add -A
# aicommitsを実行
aicommits
使用例
2つの引数を受け取り、その合計を返す関数を追加した場合:
// src/utils/sum.ts
export const sum = (a: number, b: number): number => a + b;
実行:
git add -A
aicommits
出力:
Use this commit message?
Add sum function to utils
yes / no
内容に問題なければyesを選択してコミット完了です。
便利な機能
複数の候補を表示
デフォルトでは1つの候補のみですが、複数表示できます。
aicommits --generate 3
Conventional Commits形式
Conventional Commits形式でメッセージを生成できます。
aicommits --type conventional
出力例:
feat(utils): add sum function
エイリアス設定
毎回aicommitsと入力するのは面倒なので、エイリアスを設定します。
# .zshrc または .bashrc
alias aic='aicommits'
設定後:
aic
トラブルシューティング
API使用量エラー
You exceeded your current quota, please check your plan and billing details.
原因: OpenAIの支払い設定が未完了
解決方法:
- OpenAI管理画面にログイン
- Billing > Overviewを確認
- Credit balanceが$0の場合、"Add to credit balance"で入金
コミットメッセージが不正確
原因: 一度に多くのファイルを変更しているため、AIが解析しきれない
解決方法:
- 小さい単位でコミットする
- 1機能実装 = 1コミットの原則を守る
セキュリティ注意事項
重要: コミットメッセージに秘匿情報(APIキーなど)が含まれないよう注意してください。
- 変更内容はGPT-3.5-turboに送信されます
- 機密情報の漏洩リスクがあります
- 企業での使用時は特に注意が必要
まとめ
aicommitsを使うことで、コミットメッセージ作成の手間が大幅に削減されます。
利点:
- 適切なメッセージを自動生成
- 一貫性のあるコミット履歴
- 開発効率の向上
注意点:
- OpenAI APIの使用料が発生
- セキュリティリスクの考慮
- 大量の変更は小分けにする
個人開発での活用をおすすめします。企業での使用時はセキュリティポリシーを確認してください。
参考
Discussion