ai-commit から乗り換え
ai-commit の代替:aic
ai-commit は OpenAI 互換エンドポイントか Claude Code で Conventional Commits を書きます — Claude Code を使っているなら便利。原子履歴が欲しいなら aic が代替案:hunk レベルのバッチング、コンフリクト解決、ガイド付きセットアップウィザード、Node 依存なし。
ai-commit から乗り換える理由
ai-commit はファイル粒度で環境変数設定:ステージした diff ごとに1メッセージ、分割なし、コンフリクト対応なし、そして Node.js ≥ 22 が必要。
機能ごとの比較
| 能力 | aic | ai-commit |
|---|---|---|
| 未ステージの作業を複数コミットに自動バッチング | あり — 未ステージの変更を論理的なアトミックコミットに分割 | なし — ステージした diff ごとに1メッセージ |
| 単一ファイルを複数コミットに分割(per-hunk) | あり — 各 hunk を意図に応じて自分のコミットへ | なし — せいぜいファイル粒度 |
| マージコンフリクトの解決 | あり — `aic resolve` が diff を提案し、ファイルごとに確認 | なし — コミットメッセージのみ |
| Claude Code の文脈 | なし | あり — ソースファイルを読んで文脈を得る |
| プロバイダー網羅 | 11の一級プロバイダー + OpenAI 互換 | 任意の OpenAI 互換エンドポイント + Claude Code |
| ランタイムと依存 | Rust バイナリ — Node.js 不要 | Node.js ≥ 22.19 — Homebrew / curl |
| Windows 対応 | あり — PowerShell インストーラー、CI テスト済み | なし — macOS/Linux のみ |
| コミットメッセージの言語 | 英語(サイトは4言語) | あり — `-l en` / `-l zh` |
| メッセージ内の絵文字 | なし | あり — `--emoji` |
| 複数のメッセージ候補 | なし | なし |
| コミュニティ規模 | 若い(約8★) | 若い(約8★) |
以下なら aic へ:
…未ステージの作業を論理コミットに分割し、マージコンフリクトを解決し、ガイド付きウィザードが欲しい — Node.js なし。
以下なら ai-commit に留まる:
…Claude Code を日常的に使い、中国語のコミットメッセージ(`-l zh`)が欲しい、または絵文字付きの conventional コミットが欲しい。
乗り換え方
- aic をインストール:
brew install CaicoLeung/aic/aic - 一度だけ設定:`aic setup` を実行 — プロバイダー・キー・モデルを1つのウィザードで
- コミット:作業をステージして `aic` を実行;aic が未ステージの作業を自動バッチします