背景
アドベントカレンダーに参加するからには、新しいものに手を出さないと!
ってことで、今回は、CodeRabbit に挑戦してみることにした。
まずは、「やってみる」ってことで
やってみて感じた最初に設定したほうがよいもの
日本語化:但し、Review のみで、UIは未対応っぽい
途中で気付いて、設定したけど、英語勉強したいならその限りではない ![]()
ちなみに、UI 自体は、日本語版にする方法がなさそう。
とはいえ、ブラウザの翻訳機能で今時は十分っちゃ十分。
便利な世の中になりましたね ![]()
まずはインストールから
-
で、あらためて、Code Rabbit へ
なぜか、GitHub のページから、再ログインできず
とりあえず、ブラウザを変えたところログインできたので、なんらかのキャッシュ問題? ![]()
初期設定終わったんか、と思ったら、まだ 14% だった
で、何かしら PR 作ってこないとどうしようもないので、とりあえず、ちょっとした改修をあげてみることにする
- で、PR してみたら
ちょっと進んで 29% になった。
GitHub の PR へは、Checkout your first CodeRabbit review からも飛べる
PR したら 29% になったので、もうちょっとあげたい
ってことで、 Personalize CodeRabbit を進めることにしよう
Set your review profile
PR を動レビューするかの設定っぽい
Profile(Chill / Assertive)
個人開発なら、Assertive で十分か
Request Changes Workflow
Changes requrested になって、全部解消すると、Approved にしてくれるらしい
業務で使うには True のほうが断然よさそう
High Level Summary
まぁ、あえて Off にする必要はないかな。
人間が Summary 作るの面倒だし。
GitHub Copilot もSummary 作ってくれるけどほんとありがたい ![]()
High Level Summary Instructions
プロンプトで、サマリーの出し方を指示できるので、業務の場合、こういうのもありかも。
とはいえ、お任せでいいなら、空白のままで。
‘Create concise release notes as a bullet-point list, followed by a Markdown table showing lines added and removed by each contributing author.’
全部みていくと量があるので、以降は気になったのだけ
Default False になっているやつを中心に、かな。True のはそのままでもいいだろうし
Fail Commit Status
業務なら、迷わず On にしておいた方がよさそう。
Review 失敗した理由を調査した方がよさそうだし
今回は個人なので、Off のままか
Collapse Walkthrough
個人的にはこういうのは、全部 On 派
というのも、折りたたんでおいてくれた方が、気になった際に開けて、見通しが良いから。
まぁ、読んだ後で閉じるってのでもいいんだけど。
Auto Apply Labels
自動でラベルがつくってことで、一見便利そうだけど、
付け方の指示がないと動かないみたい
なので、使うときには、直前の Instructions を追加しておこう。
個人なので今回はパス
動かないって報告は以下
気が変わって設定してみた。
あとで、どうなるかはお楽しみ
Auto Assign Reviewers
なんか面白そうって思ったけど、 Instructions がないし、どうやって Assign 対象決めるのかがよくわからない。
preview 機能?? ![]()
まぁ、個人なら、設定しても無意味なので放置
Path Filters
レビュー対象を、Path で指定する感じ。 include/exclude 両面で
まぁ、今回はパスで
Review 設定をしたら、Apply Changes で Get Started へ
元の Getting Started へは、以下の部分をクリックして戻る
Personalize CodeRabbit セクションは、どうやら、Review Settings のことだったみたいだ
てっきりその項目ごとに設定群があるかと思ったが、
代表的な5点を説明し、それらの設定ページとして、Review.Settings を案内しているだけっぽい。UIって難しいよね
他に気になる設定を探してみる
Review.Auto Review
Review の On/Off を制御する軽なんかな。フィルター的な
個人だとあまり恩恵はないけど、業務ならめっちゃ便利な機能
Ignore Title Keywords
ドキュメントの修正だけとかの場合に、Review を除外したいようなと気に使えそう
Labels
Title Keywords でもフィルター出来るとはいえ、やっぱり Lables みたいな項目でフィルターはしたほうがいいね。こっちがあるのであれば
Title を自動でつけて対処するくらいならメタデータで管理した方がいい
Drafts
下書き状態で Review してくれるのは、PR出す前に✅して、Reviewer の負荷を下げるためにはよいよね。
GitHub Copilot Review でもこれ便利 ![]()
Tools
外部ツールの連携系かな。
Linterや性的解析ツールを追加して精度高くする感じにみえる
Kotlin 使うなら Detekt とか使うんかな?
Finishing Touches
レビュー後に、PR の説明欄を自動で整える機能らしい
ただ、この辺は、Review に頼るより、別途 CI で 自動生成や、TDD で開発すべきかな。漏れを防ぐために、最後のチェックとしては有効だけど。
Docstring
Docstring の提案もしてくれるっぽい
Unit Tests
Docstring と同様に、Unit Tests も提案してくれるっぽい
Pre-merge Checks
Merge Check をしてくれるっぽい。
GitHub がやってくれるものと違って、以下四点
一気に決めるのは大変なので、チームの状況に合わせて追加していくといい感じにはなりそう
- Docstring Coverage
- Pull Request Title
- Pull Request Description
- Issue Assessment
Save CHanges しても、2/3 が変わらなかったので、Skip して次へ
Setup Integrations and MCP servers
- CI
- MCP
の連携っぽいけど、GitHub 上のものとは違って、CodeRabbit がよりよく使えるようになるんかな?
とりあえず個人利用では、パスで。MCP は GitHub 側で設定できるけど、実際使うとなったら、何がよりよくなるのかは気になるね。
Build your first report
リポートを作成して、定期的に通知してくれる感じ
とりあえず、Teams に Incoming Webhook で設定してみた。
会社だと使えない機能なんで、会社でやるなら Mail に飛ばして、Automate とかで Adaptive Card 整形して、Teamsに飛ばす感じになるかな
Explore analytics dashboard
なんもない Dashboard ![]()
いよいよ、88%
長かったけど終わりが見えてきた
Boost productivity: Install CodeRabbit in your IDE/ CLI
普段の Editor との連携だね。
VSCode 用のマーケットプレースは以下。
100%!!
さて、設定回りは一通りみたことになるのかな ![]()
で、もう一度 GitHub に戻ると・・
いつの間にかReviewがついてた
⚠️ Outside diff range comments (2)
差分外だったので湖面後付けられなかったので、コメント内に説明があるって感じ。
見にくくはなるけど、GitHub の仕様上許可することはできないっぽい
🧹 Nitpick comments (3)
修正は不要だけど、直した方がいいんじゃないって話。
📜 Review details
Configuration used: defaults
設定前に動作したので、Default 動作だよって話か
指摘について
二件の指摘が素晴らしく完璧
cell index 間違ってない?
直さなきゃって思ってたやつを指摘してくれてた。
diff 外にも拘らず、コードを全部みて、内容を理解したうえで判断してそうで素敵 ![]()
table の Header と data が一致してないよ?
うん、その通り、これも直そうとおもってて後回しにしてたやつ
修正後の反応
push したら速攻で応答が返ってきた。
ここは、
使ってみた感想
効率化用のブックマークレットってこともあって、結構適当に作ってたわけで、まぁまぁ指摘をもらいました。
当初は、差分に対する指摘程度をもらって動作を見ようと思ってたんだけど、
- 差分以外もちゃんとみてくれる
- Dry 原則など、きちんと理由を説明してくれる
- GitHub Copilot Review と違って、動作の指示が豊富
- instructions で決めるのではないところが特に使いやすいと感じた
- bookmarklet という javascript としては微妙なものもちゃんと見てくれた。
- Copilot 君だと、コメント入れたり、そのままじゃ動かないものを結構作ってくるので、あまり期待してなかった
- Copilot 君だと、コメント入れたり、そのままじゃ動かないものを結構作ってくるので、あまり期待してなかった
今回、 Assertive にしたからそれほど煩わしく出なかったのかもしれないので、次は Chill で試してみたいところ
あとがき
GitHub Copilot Review で困ってるのが、ひたすら Review が続くので、そのイメージで使ってみたところ、かなり使いやすくは感じた。
カスタマイズすればもっといい感じに使えそうで、やっぱ Review 機能で勝負してるだけあるなと感じた。
参考:今回試した Repo































