feat: config-base イメージに AI レビューフックと Gemini CLI を追加 - #369
Conversation
config-base イメージを使用するリポジトリでAIレビューフックが自動的に有効になるように設定を更新。 ## 変更内容 ### AIレビューフックの設定追加 - PostToolUse: `post_pr_ai_review.py` (PR作成後の自動AIレビュー) - PreToolUse: `pre_exit_plan_ai_review.py` (ExitPlanMode前のプランレビュー) ### フックパスの絶対パス化 - 相対パス `.claude/hooks/` から絶対パス `/home/vscode/.claude/hooks/` に変更 - これによりconfig-baseイメージを使用するすべてのリポジトリでフックが動作 ### Gemini CLI のインストール - `@google/gemini-cli@0.25.0` をイメージに追加 - Codex と Gemini の両方でAIレビューが実行可能に Closes #368 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
📝 WalkthroughWalkthroughThe changes integrate Google Gemini CLI into the development container, add a new pre-execution AI review hook for ExitPlanMode, convert relative hook paths to absolute paths, and extend Claude's hook configuration sequence with additional tool-use handlers. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related PRs
Suggested labels
Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
PR Review - AI レビューフックと Gemini CLI の追加概要このPRは、config-base イメージにAIレビューフック機能とGemini CLIを追加し、config-baseを使用するすべてのリポジトリで自動的にAIレビューが実行されるようにする重要な改善です。 ✅ 良い点1. アーキテクチャの改善
2. 複数AIツールのサポート
3. 適切なフック設計
4. バージョン管理の一貫性
🔍 指摘事項1. セキュリティ: Diff サイズ制限.claude/hooks/post_pr_ai_review.py:150 でdiffを50,000文字に制限していますが、切り詰めが発生した場合の警告がありません。 推奨: 切り詰め時に警告を追加することで、レビューが部分的であることを明示 2. エラーハンドリング: タイムアウト設定すべてのAIレビュー実行で timeout=600 (10分) が設定されていますが、タイムアウト値がハードコードされています。 推奨: タイムアウト値を定数化して保守性を向上 3. パフォーマンス: シーケンシャル実行.claude/hooks/post_pr_ai_review.py:175-179 でCodexとGeminiのレビューが順次実行され、両方が利用可能な場合は最大20分かかる可能性があります。 推奨: 並行実行を検討(ただし、現在の実装でも機能的には問題なし) 4. ロバスト性: Git マージベース取得の失敗ハンドリング.claude/hooks/post_pr_ai_review.py:115-125 でマージベース取得失敗時は警告して終了していますが、フォールバックがありません。 推奨: origin/main との直接diffをフォールバックとして試みる 5. テストカバレッジ: フックスクリプトのテスト不在.claude/hooks/*.py に対応するテストファイルが見つかりません。 推奨: Pythonフックスクリプトの単体テストを追加(正常系・異常系) 6. ドキュメント: AIレビュー機能の説明不足READMEやCLAUDE.mdにAIレビューフックに関する説明がありません。 推奨: .claude/hooks/README.md に各フックの目的、セットアップ方法、トラブルシューティングを追加 📊 CI/CD Status現在実行中のチェック:
🎯 総合評価
✅ 承認推奨度: APPROVE with minor suggestionsこのPRは以下の理由で承認を推奨します:
指摘事項は改善提案であり、現在の実装でも十分に動作します。Issue #368の解決を優先し、テストやドキュメントの追加は後続のPRで対応することを推奨します。 レビュー実施者: Claude Sonnet 4.5 |
Summary
Changes
AIレビューフックの設定追加
post_pr_ai_review.py- PR作成後にCodex/GeminiによるAIレビューを自動実行pre_exit_plan_ai_review.py- ExitPlanMode前にプランをAIでレビューフックパスの絶対パス化
.claude/hooks/→ 絶対パス/home/vscode/.claude/hooks/Gemini CLI のインストール
@google/gemini-cli@0.25.0をイメージに追加npm/global.jsonでバージョン管理Test plan
Closes #368
🤖 Generated with Claude Code
Summary by CodeRabbit
✏️ Tip: You can customize this high-level summary in your review settings.