AIコーディングでレビュワーとコーダーの戦いをみる

AIコーディングでレビュワーとコーダーの戦いをみる
この記事の操作
Markdownで見る

Chrome(最新版)のBuilt-in AIが必要です。

Chrome(最新版)のBuilt-in AIが必要です。

AIによるコーディングとレビューを行っていると、たまに意見の衝突を見かけます。ちょっと面白かったので、スクショでまとめてみました。

以下の記事でもAIによるコードレビューの紹介がありましたが、個人開発の方でも同じようにClaude Code on the Webで開発し、CodeRabbitがレビューする開発フローを進めています。

https://zenn.dev/chiilog/articles/2530bfb1c73554

Claude CodeがGeminiのレビューを棄却した

個人開発中のアプリでClaude Code on the Webに開発を任せていました。いつものようにPRが作成され、Gemini Code Assistがレビューを行います。

レビュー内容を翻訳ツール経由で読み、特に違和感もない内容だったので、そのままClaude Codeへ共有します。するとClaude Codeは変更作業の代わりに以下のような返答を出してきました。内容自体は結構長いので、冒頭だけ共有します。ポイントはユーザー入力に対してほぼ即時に返答を返していることです。コードの調査してから回答することはよく見かけたのですが、今回はほぼ即答でpush backしてきました。

このアプリは多言語化をスクラッチでやっていたため、ちょっと変わったレイアウト構成になっていました。その辺りをClaude Codeは補足して、「だからこの実装で問題ない」と返答してくれていました。

反論を共有・第三者としての別エージェントを召喚

内容を読んでこちらも「一理ある」と思ったので、これをコピペしてGeminiのレビューに返信します。とはいえコーディング・レビューエージェントは自説に拘りがちな時もあります。そこで第三者としてCodeRabbitにもメンションして裁定をやらせます。

CodeRabbitの方がコードの調査などを必ずやる仕組みになっている・・・のか、大体返答には時間がかかります。今回はいきなり呼び出されたので、状況把握とかもしていたのかもしれません。

反論を共有すると、まずGeminiが納得したという回答を出してきました。その後CodeRabbitがコードの分析を行って別視点からも反論内容が適切であると認定を行います。

CodeRabbitは会話からナレッジを自動追加する

ここで面白かったのは呼び出されたCodeRabbitの振る舞いです。仲介・裁定だけやって終わりかと思いきや、今回の議論内容をきっちりナレッジに追加していました。

Gemini Code Assistにもメモリ機能が追加されたらしいですが、このようにレビューエージェントがやり取りの記録を覚えてくれるのはありがたいですね。「また説明しないといけないのか?」とうんざりすることもなくなりますし、「覚えてくれるなら、今ここでちゃんと説明しておこう」というモチベーションも湧きます。

レビューエージェントは2つ欲しい

紹介したZennの記事でもレビューエージェントは2つ出てきました。エージェントごとにコードやPRのチェック方法やOKとするラインが微妙に異なる感じがあります。そのため、見落としを防ぐという意味でも、今回のようにコーダーとレビュワーで異なる意見が出た場合の審判役をやらせる意味でも、レビューエージェントは2つ用意しておいた方がいいかなと思います。

シェア:

Hidetaka Okamoto profile photo

Hidetaka Okamoto

Developer Experience Engineer

Developer Experience Engineer。AWSやCloudflare上へのサーバーレスなアプリ開発を得意とする開発者。元Stripe Developer Advocate / AWS Samurai 2017など、サービスの使い方や活用Tipsを紹介するコンテンツ作成や登壇などを得意とする。

⭐ この記事への反応

はてなアカウントでスターを付けることができます

関連記事