Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AIによるコードレビューで 開発体験を向上させよう!
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Atsushi Nakatsugawa
PRO
December 16, 2025
Technology
0
56
AIによるコードレビューで 開発体験を向上させよう!
AI Engineering Summit Tokyo 2025
https://ai-engineering-summit-tokyo.findy-tools.io/2025
の発表資料です。
Atsushi Nakatsugawa
PRO
December 16, 2025
Tweet
Share
More Decks by Atsushi Nakatsugawa
See All by Atsushi Nakatsugawa
プロダクト開発の品質を守るAIコードレビュー:事例に見る導入ポイント
moongift
PRO
1
1k
AIで急増した生産量の荒波をCodeRabbitで乗りこなそう
moongift
PRO
1
74
レビュー負債を解消する ― CodeRabbitが支えるAI駆動開発
moongift
PRO
0
620
個人開発からエンプラまで。AIコードレビューで開発を楽しもう
moongift
PRO
0
430
AIで急増した生産「量」の荒波をCodeRabbitで乗りこなそう
moongift
PRO
1
1.6k
Codexとも仲良く。CodeRabbit CLIの紹介
moongift
PRO
1
940
リレーションからマーケティングへ。継続するDevRelのために行うべきこと
moongift
PRO
0
41
開発スピードとスキル向上を両立するAIコードレビューの活かし方
moongift
PRO
0
94
個人開発にAIレビューを導入しよう
moongift
PRO
0
81
Other Decks in Technology
See All in Technology
型を書かないRuby開発への挑戦
riseshia
0
210
Kubernetesにおける推論基盤
ry
1
180
JAWS DAYS 2026 楽しく学ぼう!ストレージ 入門
yoshiki0705
2
130
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
8
7.1k
SaaSからAIへの過渡期の中で現在、組織内で起こっている変化 / SaaS to AI Paradigm Shift
aeonpeople
0
120
Claude Codeの進化と各機能の活かし方
oikon48
21
11k
生成AIの利用とセキュリティ /gen-ai-and-security
mizutani
1
1.5k
越境する組織づくり ─ 多様性を前提にしたチームビルディングとリードの実践知
kido_engineer
2
160
[AEON TECH HUB #24] お客様の長期的興味の理解に向けて
alpicola
0
130
EMからVPoEを経てCTOへ:マネジメントキャリアパスにおける葛藤と成長
kakehashi
PRO
9
1.4k
20260305_【白金鉱業】分析者が地理情報を武器にするための軽量なアドホック分析環境
yucho147
2
210
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
5
1.1k
Featured
See All Featured
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
The Curse of the Amulet
leimatthew05
1
9.7k
The Language of Interfaces
destraynor
162
26k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
89
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Being A Developer After 40
akosma
91
590k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Designing Experiences People Love
moore
143
24k
Design in an AI World
tapps
0
160
Balancing Empowerment & Direction
lara
5
940
A Modern Web Designer's Workflow
chriscoyier
698
190k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
380
Transcript
$PEFYͱྑ͘ɻ $PEF3BCCJU$-*ͷհ ɹ$PEFY.FFUVQ+BQBO "*ʹΑΔίʔυϨϏϡʔͰ ։ൃମݧΛ্ͤ͞Α͏ʂ $PEF3BCCJUσϕϩούʔΞυϘέΠτதಞ࢘ "*&OHJOFFSJOH4VNNJU5PLZP
@goofmint fb.me/goofmint த ಞ࢘ גࣜձࣾMOONGIFT දऔక ΞυϘέΠτ ίϛϡχςΟ ओ࠵ CodeRabbit
σϕϩούʔΞυϘέΠτ Ұൠࣾஂ๏ਓDevRel දཧࣄ ࣗݾհ
$PEF3BCCJU"*ίʔυϨϏϡʔαʔϏε 044ɺ$-*ɺ74$PEFػೳ֦ுແྉ ΩϟϥΫλʔͷ໊લ)PQQZ ֮͑ͯ΄͍ͭ͠ͷ͜ͱ ϘΫϗοϐʔʂ
։ൃʹ"*Λಋೖ͍ͯ͠·͔͢ʁ
طଘγεςϜͷಋೖ ਓࡐͷ֬อ ৴པੑɾݕূɾ࣭ͷ֬อ ίετ "*ۦಈ։ൃΛߦ͏্Ͱਏ͍͜ͱ
طଘγεςϜͷಋೖ ਓࡐͷ֬อ ৴པੑɾݕূɾ࣭ͷ֬อ ίετ "*ۦಈ։ൃΛߦ͏্Ͱਏ͍͜ͱ
࠷ۙͷಈ͖
$PEF3BCCJU74$PEFػೳ֦ுϦϦʔε (JU)VC$PQJMPU$PEJOH"HFOUొ $MBVEF$PEF͕1SPϓϥϯ͔Βར༻Մೳʹ ,JSPϦϦʔε (" $PEFY$-*͕$IBU(15αϒεΫϦϓγϣϯରԠ $PEF3BCCJU$-*ϦϦʔε (JU)VC$PQJMPU$-*1SFWJFXϦϦʔε (PPHMF"OUJHSBWJUZϦϦʔε
ͳΜͱͳ͘ͷྲྀΕ (6* *%& $6* 74
ࢲ͕ͨͪཉ͔ͬͨ͠"*ۦಈ։ൃ
ࢲ͕ͨͪखʹೖΕͨ"*ۦಈ։ൃ
ίʔυੜ࢈ྔ͕૿͑ͯɺίʔυ࣭ɾཧղੑɾอकੑͳ Ͳผͷ࣍ݩͰτϨʔυΦϑ͕͋Δͱ͍͏ݒ೦ใࠂ͞Εͯ ͍·͢ɻͨͱ͑ɺϨϏϡʔ࣌ؒ౷߹͕࣌ؒ͘ͳͬͨ ͱ͍͏࣮ݧ݁Ռ͋Γɻ 5IF*NQBDUPG(FOFSBUJWF"*PO$PMMBCPSBUJWF 0QFO4PVSDF4PGUXBSF%FWFMPQNFOU&WJEFODF GSPN(JU)VC$PQJMPU IUUQTBSYJWPSHBCT
"*૿෯ثͰ͋Δ ߴύϑΥʔϚϯεͷ৫ΛΑΓߴ͘ ۤઓ͢Δ৫ͷػೳෆશΛ֦େ͢Δ "*ہॴతͳੜ࢈ੑ্ΛͨΒ͕͢ɺԼྲྀͷࠞཚʹ ҿΈࠐ·Ε͕ͪͩ %03"4UBUFPG"*BTTJTUFE4PGUXBSF %FWFMPQNFOUΑΓ IUUQTDMPVEHPPHMFDPNSFTPVSDFTDPOUFOUEPSBBJBTTJTUFE
TPGUXBSFEFWFMPQNFOUSFQPSU IMKBΑΓ
ͭ·Γͷࠜݯʜ
ͭ·Γͷࠜݯʜ ͔ͯ͠͠ɿࢲ ͨͪʣʁ
ϓϥοτϑΥʔϜ৫Λ࣋ͭҎ্Ͱ"*ಋೖࡁΈʢͨͩ͠ɺ ׂͷ৫ίʔυੜΛ৴པ͍ͯ͠ͳ͍ʣ "*ʹΑͬͯίʔυͷੜमਖ਼্͕ΔҰํɺϨϏϡʔɾ ςετɾ࿈ܞମ੍͕͍͔ͭͳ͍ͱɺϦϦʔε࣭͕༳Β͙ %03"4UBUFPG"*BTTJTUFE4PGUXBSF %FWFMPQNFOUΑΓ IUUQTDMPVEHPPHMFDPNSFTPVSDFTDPOUFOUEPSBBJBTTJTUFE TPGUXBSFEFWFMPQNFOUSFQPSU
IMKBΑΓ
コードレ ビ ューの課題
ίʔυϨϏϡʔͷΑ͋͘Δ త ؔॴԽ ϘτϧωοΫ "*ίʔυ
ϨϏϡʔͷత WJBΰʔϧͷεςοϓΛॻ͖ग़͢ਓʮࣸਅ"$ʯ
ίʔυϨϏϡʔͱʁ w ଞͷ։ൃऀ͕ॻ͍ͨίʔυΛୈࡾऀͷࢹͰνΣοΫ͠ɺ࣭ɾՄಡੑɾอ कੑɾ҆શੑΛߴΊΔͨΊͷϓϩηε w νʔϜ͕ΑΓྑ͍ίʔυΛॻͨ͘Ίͷֶशɾڞ༗ɾ࣭อূͷΈ
ίʔυϨϏϡʔΨΠυϥΠϯͷ༗ແ w ҙ֎ͱͳ͍৫ଟ͍ w ϨϏϡΞʔʹΑͬͯɺݟΔࢹ͕όϥόϥ "͞Μݫ͍͔͠Βɺ"͞Μ͕͍ͳ͍࣌ʹ#͞Μʹग़ͦ͏ w ϨϏϡʔˠमਖ਼ˠϨϏϡʔˠमਖ਼ˠʜͷແݶϧʔϓ
ϨϏϡʔͷؔॴԽ WJBؔͷؔॴ/Pʮࣸਅ"$ʯ
͜ΜͳϨϏϡʔϓϩηεʹͳ͍ͬͯ·ͤΜ͔ʁ w ৬ڃɺܦݧ্͕ͷਓ͕νΣοΫ͢Δඞཁ͕͋Δ w ίʔυϨϏϡʔ௨աෆ۩߹ͳ͠อূ w ઃܭࢥͳͲΛࡉ͔͘٧ΊΒΕΔ
͜ΜͳϨϏϡʔϓϩηεʹͳ͍ͬͯ·ͤΜ͔ʁ w ৬ڃɺܦݧ্͕ͷਓ͕νΣοΫ͢Δඞཁ͕͋Δ w ίʔυϨϏϡʔ௨աෆ۩߹ͳ͠อূ w ઃܭࢥͳͲΛࡉ͔͘٧ΊΒΕΔ Ұ൪্ͷਓͷίʔυ୭͕νΣοΫ͢Δʁ
͜ΜͳϨϏϡʔϓϩηεʹͳ͍ͬͯ·ͤΜ͔ʁ w ৬ڃɺܦݧ্͕ͷਓ͕νΣοΫ͢Δඞཁ͕͋Δ w ίʔυϨϏϡʔ௨աෆ۩߹ͳ͠อূ w ઃܭࢥͳͲΛࡉ͔͘٧ΊΒΕΔ όάͳ͠ςετͷׂ
͜ΜͳϨϏϡʔϓϩηεʹͳ͍ͬͯ·ͤΜ͔ʁ w ৬ڃɺܦݧ্͕ͷਓ͕νΣοΫ͢Δඞཁ͕͋Δ w ίʔυϨϏϡʔ௨աෆ۩߹ͳ͠อূ w ઃܭࢥͳͲΛࡉ͔͘٧ΊΒΕΔ 13ఏग़ΛҤॖ͠ɺ৺ཧత҆શੑΛଛͳ͏
ϨϏϡʔͷϘτϧωοΫԽ WJBۀϑϩʔɾϓϩηεͷࢿྉʮࣸਅ"$ʯ
ϨϏϡʔ୲ऀͷݻఆԽ w ϨϏϡʔ͕γχΞΤϯδχΞɺ$50ͷׂʹͳ͍ͬͯΔ w ৬Ґ্͕ͩͱɺλεΫଟ͍ɻͳͷʹϨϏϡʔ·ͰՃΘΔ w ϛʔςΟϯά֎ग़ͰϨϏϡʔ͕ࢭ·Δ IUUQTXXXZPVUVCFDPNXBUDI WHMG#,-23&
"*ίʔυ
$PEF3BCCJUͷϒϩάΑΓ WJBίʔυΛॻ͘ΑΓಡΉ΄͏͕͍͠ಛʹ"*͕ॻ͍ͨίʔυ "*͕ॻ͍ͨίʔυΛಡΉ͜ͱͷ͠͞ ϨϏϡʔͷաͳґଘ "*ʹΑΔग़ྗͷٗᛋతͳਖ਼֬ੑ
#SJBO,FSOJHIBOʢ6OJYڞಉ։ൃऀɺ5IF $1SPHSBNNJOH-BOHVBHF ͷڞஶऀʣ σόοάίʔυΛॻ͘ͱ͖ͷഒ͍͠ɻ͕ͨ͠ ͬͯͦͷఆٛʹै͏ͳΒɺίʔυΛͰ͖ΔݶΓෳࡶ ʹॻ͚ɺͦͷίʔυΛσόοάͰ͖Δ΄Ͳࣗݡ ͘ͳ͍͜ͱʹͳΔɻ
"*ʹΑΔίʔυϨϏϡʔ
ίʔυͷอकੑɺύϑΥʔϚϯεɺνʔϜͷίʔσΟϯά ΨΠυϥΠϯʹԊ͍ͬͯΔ͔Ͳ͏͔ ࣮͕Ϗδωεཁ݅ʹ߹͍ͬͯΔ͔Ͳ͏͔ ίʔυΛ௨ͨ͡φϨοδͷڞ༗ ϨϏϡʔͱʁ
-JOUπʔϧɾϧʔϧϕʔε ϕετϓϥΫςΟεʹԊͬͨϨϏϡʔ $-"6%&NEɺνʔϜͷίϯςΩετʹԊͬͨϨϏϡʔ ίʔυϨϏϡʔͷਐԽ
--.ͷਐԽʹΑͬͯѻ͑ΔίϯςΩετྔ૿͍͑ͯΔ ใ͕૿͑Δͱɺݟͳͯ͘ྑ͍ॴͷ·Ͱݟ͑Δ ϨϏϡʔൣғ͕΅͚ɺࢦఠ͕͘ͳΔ ίϯςΩετͷ՝
--.ɺϢʔβʔ͔Βʮྑ͍ʯͱݴΘΕΔͱใु্͕͕Δ ๙ΊΔ͚ͩɺϙδςΟϒͳ͚ͩͷํ͕--.ʹͱͬͯྑ͍ ϨϏϡʔɺϢʔβʔ͕ݏͬͨͱͯ͠ඞཁͳ͜ͱΛࢦఠ͢Δ --.ͷ՝
ίϯςΩετΛ͍͔ʹߜΓࠐΉ͔ ඵͷճͰͳ͘ɺ࣌ؒΛ͔͚ͭͭదͳճʢεϩʔ"*ʣ νϟοτʹΑΔϑΟʔυόοΫΛੵ͠ɺΑΓνʔϜʹϑΟ οτ͍ͯ͘͠ $PEF3BCCJUͷࢦ͢ํ
ɿϨϏϡΞʔৗʹඞཁͰ͢ "*ίʔυϨϏϡʔΛऔΕ·ͤΜ ϨϏϡΞʔΛ௨աόάθϩͰ͋Γ·ͤΜ "*ίʔυϨϏϡʔɺਓͷϨϏϡʔ࣌ؒɾෛՙΛܰݮ͢ ΔଘࡏͰ͢
"*ίʔυϨϏϡʔʹΑΔ ։ൃମݧͷ্
ɿਓͷॻ͍ͨίʔυΛಡΉͷ͠ΜͲ͍ ҎલݴͬͨࢦఠΛ܁Γฦ͞ΕΔ ཁ݅Λཧղ͠ɺదͳϨϏϡʔΛߦΘͳ͍ͱ͍͚ͳ͍ͱ͍͏ ࣗͷλεΫผʹʢͬͱʣ͋Δͷʹ࣌ؒΛऔΒΕΔ ݏͳ͜ͱΛݴΘΕΔɺݴΘͳ͍ͱ͍͚ͳ͍
ղɿ໘ͳ͜ͱ"*ʹΒͤΑ͏ جຊతͳߏจϛεʢλΠϙɺΠϯσϯτʣͷݕग़ ϕετϓϥΫςΟεʹجͮ͘ࢦఠ ίʔσΟϯάΨΠυϥΠϯʹ߹Θͤͨࢦఠ ཁ݅ɾࣗࣾΨΠυϥΠϯʹ߹Θͤͨࢦఠ
։ൃମݧͷ্ͱʁ ετϨεͳ͘։ൃΛଓ͚ΒΕΔ ࣗͷࣄʹूதͰ͖Δ Δ͖͜ͱ͕खؒͳ͘खʹೖΔ
ϨϏϡʔ͔ΒมΘΔ։ൃମݧ ਓͷϨϏϡʔલʹ໌Β͔ͳ͕ղܾࡁ ύϑΥʔϚϯεɾηΩϡϦςΟͷ՝͕ղܾࡁ ਓɺίϛϡχέʔγϣϯΛҙࣝͨ͠ϨϏϡʔʹઐ೦
$PEF3BCCJUʹ͍ͭͯ
"*ίʔυϨϏϡʔαʔϏε ੈքҰΠϯετʔϧ͞Ε͍ͯΔ"*(JU)VC"QQ Ҏ্ͷ৫Ͱར༻த $PEF3BCCJUʁ
ΦʔϓϯͳϦϙδτϦͰ͋Εແྉ 74$PEFػೳ֦ுແྉ $-*൛ແྉ ແྉͰ͑Δ$PEF3BCCJU
૬ҧ ڥ ର ྉۚ ίϯςΩετ 13൛ ϒϥβ 13͞Εͨίʔυ 044ແྉ ϓϥΠϕʔτ༗ྉ
ৄࡉͳઃఆ ৫ͷઃఆ $-*൛ $-* ϩʔΧϧͷमਖ਼ίʔυ ʢະίϛοτؚΉʣ ແྉ 1SPܖͰϨʔτVQ جຊతͳ ϕετϓϥΫςΟε 74$PEF൛ (6*
ίʔυϨϏϡʔઐۀΏ͑ͷࡉ͔ͳΧελϚΠζ ࠷৽ɾෳͷ"*ϞσϧΛར༻ɾΧελϚΠζͨ͠ϨϏϡʔ σʔλΛֶशͤͣɺϨϏϡʔʹར༻ͨ͠ίʔυଈഁغ $PEF3BCCJUͷಛ
13֓ཁɾαϚϦʔɾγʔέϯεਤͷࣗಈੜ 'JYXJUI"*ʢ"*ΤʔδΣϯτ͚ϓϩϯϓτੜʣ .$1ΫϥΠΞϯτࡌ "*ۦಈ։ൃº$PEF3BCCJU
CodeRabbitの効果
$PEF3BCCJUಋೖޮՌ Ұ࣍ϨϏϡʔࣗಈԽͰͱ࣌ؒΛେ෯ॖ w δϟϯϘ w ΫϥυαΠϯ ਓతͱ࣌ؒͷݮ w 40,6%"/ w
ϩάϥϑ ػցతνΣοΫ"*ʹͤɺຊ࣭ٞʹूத w 3065& w ΧϯλʔϫʔΫε ϨϏϡʔ࣭ͷ্ w 3FMJD w ΫϥυαΠϯ ϘτϧωοΫղফͱૣظϑΟʔυόοΫͷ࣮ݱ w ΧϯλʔϫʔΫε w 4BMFT/PX ։ൃϓϩηεϫʔΫϑϩʔมֵ w 3ZP)*("4)*("8" w ϑΟϤϧυϒʔτΩϟϯϓ ਫ਼ਆతෛ୲ݮͱφϨοδڞ༗จԽ͕ఆண w δϟϯϘ w 4BMFT/PX ৺ཧෛՙܰݮͱֶशଅਐ w ·ͩ͠ w 3FMJD
"*ͱਓͷϨϏϡʔͷ୲ "*ίʔυϨϏϡʔ͕ਐԽͯ͠ਓͷϨϏϡʔͳ͘ͳΓ·ͤΜ͕ɺ"*͕ସͰ͖Δ ྖҬ૿͍͑ͯ·͢ 🐰 🕺 ਓ͕ݟΔલͷίʔυ࣭Λ͑Δׂ ཁ݅Λຬ͍ͨͯ͠Δ͔ɺاۀͷίʔσ ΟϯάΨΠυϥΠϯʹԊ͍ͬͯΔ͔֬ ೝ ࠶ར༻ੑɺՄಡੑɺอकੑɺҰ؏ੑ
Λ֬ೝ ΑΓνʔϜʹద߹ͨ͠ίʔυʹͳͬ ͍ͯΔ͔Λ֬ೝ
ਓͷϨϏϡʔͷҐஔ͚ͮΛݟͦ͏ ্࣭ ϝϯςφϯεੑ ڭҭɾ φϨοδڞ༗ νʔϜͷ৴པߏங ৺ཧత҆શੑɾจԽ
·ͱΊ w ϨϏϡʔେࣄ͚ͩΕͲɺ՝ଟ͍ w "*ϨϏϡʔΛ׆༻͠ɺ։ൃମݧΛ্͠·͠ΐ͏ w $PEF3BCCJU"*ίʔυϨϏϡʔαʔϏε
🐰🐰͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠🐰🐰 ϘΫͷ໊લʁ
Α͋͘Δ࣭5JQT
2"*ԿΛ͍ͬͯ·͔͢ʁ 0QFO"*·ͨ"OUISPQJDͰ͢ʢͨͩ͠(FNJOJͳͲධՁ͍ͯ͠·͢ʣ IUUQTTUBUVTDPEFSBCCJUBJ
2ಠࣗͷ"*ͷ"1*Ωʔ͑·͔͢ʁ ͪΖΜ͑·͢ɻͨͩ͠ηϧϑϗετʢ Ϣʔβʔʣʹͯ w 0QFO"* w "[VSF0QFO"* w "84#FESPDL w
"OUISPQJD
2ॻ͖खʹΑͬͯ͠·͔͢ʁ ͠·ͤΜɻͨͱ͑$50૬खͰλΠϙΛࢦఠ͠·͢💪🐰
2ϓϩάϥϛϯά͚Ͱ͔͢ʁ ͍͑ɺΠϯϑϥʢ5FSSBGPSNɺLTɺ%PDLFSɺ$MPVE'PSNBUJPOͳͲʣ ରԠ͍ͯ͠·͢ υΩϡϝϯτϨϏϡʔʹ͑·͢
ϨϏϡΞʔΛΧελϚΠζͰ͖·͢ ΦϏϫϯɾέϊʔϏ෩ ϧϑΟ෩ αΪ෩