Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
AIコードレビューがチームの"文脈"を 読めるようになるまで
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Takumi Maruyama
November 27, 2025
Programming
530
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
AIコードレビューがチームの"文脈"を 読めるようになるまで
Takumi Maruyama
November 27, 2025
Other Decks in Programming
See All in Programming
Omarchy Tokyo やると聞いて UMPC 買ってセットアップしてきた
mtsmfm
0
150
数年滞っていたダークモード対応をおよそ2週間で完了させる
chigichan24
0
730
動作中のプログラムの中身をリアルタイムに覗く / Realtime Debugger for CSharp with Roslyn
prota
1
480
マイコン向けの軽量Ruby「PicoRuby」で各種デバイスを制御するネイティブアプリの実現手法
bash0c7
0
420
巨大モノリシックアプリ モダン化大作戦
ktcryomm
1
1k
UnityでSystem.Net.WebSocketsなWebSocketサーバが動かないのでUnity Monoのコードを覗いてみた / about implementing websocket server with unity mono
drumath2237
1
150
Go × SIMDで高速化するベクトル検索 ~ルーフラインモデルでSIMDが効く境界を探れ! ~
po3rin
1
1.8k
Snowflakeで業務アプリを作ろう。 Snowflakeのアプリ機能解説&実践ガイド
ayumu_yamaguchi
1
280
世界の中心で、AI(App Intents)をさけぶ ー App Intents中心設計の実践ガイド
touyou
0
610
wkhtmltopdfの次どうするか問題2026
willnet
2
1.4k
Jetpack Compose メカニズム
skydoves
0
440
LoopHub - ローカルで動く GitHub で、AI と共同開発
jugyo
1
560
Featured
See All Featured
The Pragmatic Product Professional
lauravandoore
37
7.4k
Building Flexible Design Systems
yeseniaperezcruz
330
41k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.6k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
203
76k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Mobile First: as difficult as doing things right
swwweet
225
10k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
12k
GraphQLとの向き合い方2022年版
quramy
50
15k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
680
The SEO Collaboration Effect
kristinabergwall1
1
570
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
320
Fashionably flexible responsive web design (full day workshop)
malarkey
409
67k
Transcript
AIコードレビューがチームの"文脈"を 読めるようになるまで エムスリー株式会社 丸山拓己
自己紹介 • 丸山拓己 / Takumi Maruyama • 2024/01入社 • リサーチプロダクトチーム所属
(※) 2025年11月時点 日本の医師のエムスリー会員率 エムスリーが事業展開している国の数 エムスリーが占める全世界で医師会員の割合 全世界で医師会員合計 18 カ国 (※) 50
%以上 (※) 700 万人以上 (※) 90 %以上 エムスリー が展開する医療従事者向け情報 サイト「m3.com」は34万人を突破、日本 の医師の9割以上が会員。(※) 日本の医師の9割が登録するm3.comを開発 圧倒的な医療業界へのアクセス基盤
エムスリーが製薬企業と医療業界の間に入りリサーチプロダクトを提供 製薬企業の適切なマーケティング、医師や患者へのアクセス、スムーズな薬剤開発を実現 リサーチプロダクトが実現する世界 4
目次 • AIコードレビューまでの経緯 • AIレビューの課題感 • AIに文脈を教える”育成コマンド” • 今後の展望・まとめ Nano
Banana Proで作った画像
エンジニアリンググループでのAI活用 • 2023年以降、生成AI関連のツールを積極的に活用 • 開発生産性は大きく向上したと感じている https://speakerdeck.com/vaaaaanquish/llmgaji-jie-xue-xi-fen-ye-tota-fen-ye-niqi-kositakiyazumukarajian-ji-meruenzinianowei-lai-xiang?slide=7
予測されたスピード向上による副作用 • 開発は効率化されたが、レビューは引き続き人間が行っていた • AIの書くコードを完全に信用できないため、レビューは必須 • アウトプットが増えても、レビューがボトルネックになる レビューでもAIの力を使いたい
AIコードレビューの導入 • 有志によってAIコードレビューのテンプレートが整備される • Claude CodeをGitLab CI上で動かしてレビュー ◦ GitLab MCPを使用して、マージリクエスト(MR)にコメントを作成
• チームごとにレビュー用のプロンプトを設定できる ◦ プロンプトの他に、MCPやClaude Codeの設定なども
チーム内での運用 • 開発が頻繁に行われているリポジトリに導入 • まずは、人間がトリガーする形で運用 ◦ MR作成 → AIコードレビュー →
レビュー依頼 • Pushごとにレビューするとノイズになる可能性があった
AIコードレビューの効果 • Typoが今まで以上に検出されるようになった • ベストプラクティスに沿った書き方を提案してくれる • テストの抜け漏れを教えてくれる より本質的なロジックや設計に集中できるようになった
使ってわかった AIコードレビューの課題
見えてきたAIレビューの限界 得意 • タイポの検出 • ベスプラからの逸脱 • セキュリティ上まずいコードの 指摘 苦手
• 周辺コードと体裁を揃える • コンポーネントの粒度を揃える • より良いファイル配置の提案
更新すればいい...でも... • レビュー用のプロンプトを都度更新すればいい • 都度更新しても整理されないプロンプトになってしまう • (正直めんどくさい) MRのコメントに書いてるから 覚えて欲しいな... 🤔
メンバーのコメントは生きたドキュメント • メンバーは持っているドメイン知識を元にコメントをしてくれている ◦ みんな自分の考えをわかりやすく整理してコメントくれている • 議論も活発なので、そこから学べることも多い • GitLab上のコメントであれば、関連するコードも一緒に参照できる 人間のコメント・議論から
プロンプトを更新すれば良さそう!
AIに文脈を教える”育成コマンド”
AIレビュアー育成コマンド • Claude Codeのコマンドとして作成 • MRのコメントから、自動的にレビュー用プロンプトを更新する • 現状は各自のローカルで動かすように作られている
育成コマンドの全体像 直近のMRを取得 各MRのレビュー観点整理 観点をプロンプトに反映
直近のMRを取得 • 2週間以内のMRを取得 • 取得したMRをフィルタ ◦ 複雑性が高い ◦ 議論が活発に行われている ◦
コメントが多くついている 直近のMRを取得 観点をプロンプトに反映 レビュー観点整理
レビュー観点の整理・要約 直近のMRを取得 観点をプロンプトに反映 レビュー観点整理 • サブエージェントで行う • コメントからレビュー観点を整理 ◦ 人間のコメントのみを取得
◦ AIレビュー・無関係な会話は除外 • MRごとにmdファイルにまとめる
プロンプトへの反映 直近のMRを取得 観点をプロンプトに反映 レビュー観点整理 • ファイルを元にプロンプトを更新 • 元のプロンプトは更新しない • 必要に応じて人間が調整
◦ 更新履歴が書かれていることがある
工夫1: サブエージェントの活用 • 全てのステップを行うとすぐAuto Compactが走る • サブエージェントを使うことでコンテキストの消費を抑えられる ◦ Claude Codeのサブエージェントは別のコンテキストで実行される
◦ https://code.claude.com/docs/en/sub-agents • サブエージェントは並列実行できるので、実行時間も短縮できる ◦ 直列: 約20分 → 並列: 10分
工夫2: ハルシネーションの防止 • AIがコメントの整理中にレビューや自分のコメントをつけていた ◦ コメントのついたコードをレビューしたり、コメントを評価したり • コメントをつけたメンバーのIDを一緒に出力するようにした ◦ これによりAIが勝手にレビューを行わずに人間のコメントのみを要約してくれる
**実際についたコメントとコメントをつけたユーザ名も併記すること。** ↑実際にプロンプトに書いてある文言
詳しいプロンプトはブログをチェック!
実際にAIが学んだルール(抜粋) 見た目の類似性だけでなく、ビジネス責務や利 用条件の違いを考慮してコンポーネント分離・ 統合を判断する コンポーネント設計 外部システムとの連携は必要時のみ実行し、パ フォーマンスとコストを考える 外部システムとの連携 外部システム連携時はマスターデータの所在を 明確にし、整合性と同期タイミングを設計する
データの整合性 自動で重要なレビュー観点が追記されるようになった
現在の課題・今後の展望
現在の課題 • AIがコメントしなくてもいい内容を、コメントしないようにしたい ◦ プロンプトには入れているが、あまり効果がない • レビュー用のプロンプトが長くなっていく ◦ コンテキストが長くなることで、他の重要な指示・知識が薄れる ◦
どこかで必要な情報・不要な情報を取捨選択する必要がある
今後の展望 • 定期実行できるようにしたい ◦ ローカルで実行するよりも仕組み化したい • レビュー用のプロンプトだけでなく、CLAUDE.mdも更新したい ◦ レビュー時の観点は、開発時点でも持っておくべき •
うまく動くようになれば、テンプレート化したい
まとめ コードレビュー効率化のた めにAIレビューを導入 Typoやベスプラ逸脱などは 検知可能になる プロジェクト固有の事情は レビューに反映されづらい AIレビュー導入 過去のレビューから レビュー用プロンプト生成
メンバーのコメントから プロジェクト独自の観点を 学習 育成コマンド作成 レビュー観点から CLAUDE.mdをよくする 定期的に実行されるように 改良予定 今後の展望
エムスリー公式テックチャンネル https://www.youtube.com/channel/UC_DkAOcwgmtQnJLDctci4rQ 社内勉強会やブログなど面白い話題がたくさん! エンジニア公式Xアカウント https://x.com/m3_engineering