👋
Claude Code のレビューを Claude Code で自動的に対処する
前提
- Claude Code GitHub Actions を利用している
問題
- Claude Code が書いたコードを Claude Code が実施したレビューについて、Claude Code にそのレビューへの対処を指示するのが手間
- Claude Code 的にヨシとなったコードを人間がコードレビューしたい
対応
- レビュー対処用のworkflow(
@claudeで実行されるworkflow )でallowed_bots: 'claude'を指定する - レビューのworkflowで
@claudeへの指示も実行する- 下記(実際に利用しているpromptの抜粋)のようなpromptをactions workflowに追加する
- step5が今回の問題についての主な対応
- 下記(実際に利用しているpromptの抜粋)のようなpromptをactions workflowに追加する
## レビュー提出前のチェックリスト
レビュー提出前に必ず以下を確認してください:
- [ ] ステップ3でインラインコメントを追加したか?
- はい → ステップ5を**必ず**実行する
- いいえ → ステップ5はスキップ可能
## GitHub Actions環境でのレビュープロセス
以下の手順で必ずレビューを実施してください:
1. **レビューを開始する:** `mcp__github__create_pending_pull_request_review` を使って、保留中のレビューを開始します。
2. **変更内容を確認する:** `mcp__github__get_pull_request_diff` を使って、コードの変更点や行番号を把握します。
3. **インラインコメントを追加する:** 改善点や懸念事項があるコードの行には `mcp__github__add_comment_to_pending_review` を使ってコメントを追加してください。修正方針が明確な場合には積極的にsuggestionを利用してください。
4. **レビューを提出する:** `mcp__github__submit_pending_pull_request_review` を使って、イベントタイプを「COMMENT」に設定してレビューを提出してください。
- 注意: 「REQUEST_CHANGES」は使わないでください
5. **対処依頼コメントを追加する(インラインコメントを追加した場合は必須):** ステップ3でインラインコメントを追加した場合(つまり修正や検討が必要な指摘を行った場合)、以下を実行してください:
- ステップ3で追加したすべてのインラインコメントの内容を確認し、各指摘事項を簡潔にまとめる
- `mcp__github__add_issue_comment` を使用して、PRに対してトップレベルコメントを追加
- コメント内容の構成:
1. 「レビューで以下の項目について指摘しました:」という導入文
2. 各インラインコメントの指摘内容を箇条書きで列挙(ファイル名と行番号も含める)
3. 最後に「@claude これらの指摘事項に対応してください」という指示
- 例: 「レビューで以下の項目について指摘しました:\n- src/example.py:42 - エラーハンドリングが不足しています\n- src/test_example.py:10 - このケースのテストが必要です\n\n@claude これらの指摘事項に対応してください」
-
## レビュー提出前のチェックリストは、step5が実行されないことがあったため追加した - inline レビューコメントに
@claudeをつけるpromptを試したが、複数コメントが原因で複数のClaude Actionsが走り、コンフリクトが発生したのでまとめて依頼するようにした
なお、上記 prompt の step 1〜4は下記記事を参考に(というかそのまま利用)させていただいています。
実例
inline レビューコメント

step 5 に起因する対処依頼コメント


claude の対処後のコメント

claude の再レビュー時のコメント

リスク
- 対処役の Claude が適切に対処できない場合、無限ループの懸念がある
- 例
- Claude レビュー: 指摘
- Claude 対処: 不完全な対処
- Claude レビュー: 指摘
- Claude 対処: 不完全な対処
- ...
- 今のところ自分の環境では発生していない
- いつか発生するはずなので何らかの備えは必要
- 例
- Claude のレビューが適切でない場合、無限ループの懸念がある
- 例
- Claude レビュー: 適切でない指摘
- Claude 対処: 適切でない対応
- Claude レビュー: 修正ヨシ
- 人間: 適切でない対応を修正
- Claude レビュー: 適切でない指摘(①)
- Claude 対処: 適切でない対応
- Claude レビュー: 修正ヨシ
- 人間: 適切でない対応を修正
- ...
- ①の時点でClaudeが適切でなかったことに気づいてくれればいいが、そうでない場合、適切でない指摘をskipする手立てや知見の共有が必要そう
- 例
Discussion