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 Coding Agent Enablement - エージェントを自走させよう
Search
Yuku Kotani
April 08, 2025
Programming
14
6.3k
AI Coding Agent Enablement - エージェントを自走させよう
AI Coding Meetup #1
https://layerx.connpass.com/event/347094/
https://youtu.be/Q783txBWcOM?t=1339
Yuku Kotani
April 08, 2025
Tweet
Share
More Decks by Yuku Kotani
See All by Yuku Kotani
Expoによるアプリ開発の現在地とReact Server Componentsが切り開く未来
yukukotani
3
420
React 19でお手軽にCSS-in-JSを自作する
yukukotani
5
740
僕が思い描くTypeScriptの未来を勝手に先取りする
yukukotani
11
3.1k
Web技術を駆使してユーザーの画面を「録画」する
yukukotani
14
7.5k
Capacitor製のWebViewアプリからReact Native製のハイブリッドアプリへ
yukukotani
5
1.5k
Real World Type Puzzle and Code Generation
yukukotani
4
910
Kuma UI が提唱する Hybrid Approach CSS-in-JS の仕組み
yukukotani
2
550
GraphQLスキーマ設計の勘所
yukukotani
42
18k
既存Webサービスのモバイルアプリ版を 1週間でリリースし、進化させてきた話
yukukotani
0
780
Other Decks in Programming
See All in Programming
Memory API : Patterns, Performance et Cas d'Utilisation
josepaumard
1
150
Road to RubyKaigi: Making Tinny Chiptunes with Ruby
makicamel
4
510
PHPバージョンアップから始めるOSSコントリビュート / how2oss-contribute
dmnlk
1
1.1k
GitHub Copilot for Azureを使い倒したい
ymd65536
1
270
Browser and UI #2 HTML/ARIA
ken7253
2
160
Thank you <💅>, What's the Next?
ahoxa
1
570
KawaiiLT 登壇資料 キャリアとモチベーション
hiiragi
0
160
Cursorを活用したAIプログラミングについて 入門
rect
0
120
파급효과: From AI to Android Development
l2hyunwoo
0
150
スモールスタートで始めるためのLambda×モノリス(Lambdalith)
akihisaikeda
2
310
一緒に働きたくなるプログラマの思想 #QiitaConference
mu_zaru
77
19k
PHP で学ぶ OAuth 入門
azuki
1
220
Featured
See All Featured
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Become a Pro
speakerdeck
PRO
28
5.3k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
227
22k
Rebuilding a faster, lazier Slack
samanthasiow
81
9k
Unsuck your backbone
ammeep
670
57k
StorybookのUI Testing Handbookを読んだ
zakiyama
29
5.7k
The Language of Interfaces
destraynor
157
25k
Designing for Performance
lara
608
69k
Fontdeck: Realign not Redesign
paulrobertlloyd
84
5.5k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
5
550
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Automating Front-end Workflow
addyosmani
1370
200k
Transcript
AI Coding Agent Enablement ~エージェントを させよう~ 自走 @yukukotani 2025/04/08 -
AI Coding Meetup #1
自己紹介 Yuku Kotani VP of Technology @ Ubie, Inc. @yukukotani
@yukukotani
今日の趣旨 コーディングエージェントをイネーブリングして自走させたい! ベースとなる考え方と、具体的なアプローチを紹介します
自走ってなんだろう?
自走 = Human-in-the-Loop をなるべくやらない Copilot時代はスニペット単位でHuman-in-the-Loopを回していた Agent時代にはできるだけ自律的に判断させて1ループの作業単位を大きくしたい
auto-run (Yolo) mode で自走完了ではない auto-run は検証をスキップしてくれる機能であって、 本質的に必要な検証を行ってくれる機能ではない
デフォルトの解空間は大きすぎる デフォルトでは「文法に適合するコード(=パーサー検証)」程度の制約しかなく、 極めて広い解空間でエージェントが動く → 精度が低い 解空間 生成対象の言語のSyntax全体
基本方針:可能な限り解空間を絞る 会社・プロジェクト固有の解空間は本来もっと狭いはず 解空間 会社・プロジェクト固有の アーキテクチャ・規約・デザインなど
どうやって?
(1) 機械的検査
機械的検査で定義した解空間に押し戻す LLMの出力を機械的に受け入れ検査し、NGの場合はフィードバックする 解空間 機械的にフィードバックを与えて 解空間へ押し戻す
古典的な静的解析・自動テスト エージェントにLinterや型チェック、自動テストを実行させ その結果をもとに自律改善して、passするまで勝手にルーr まずは既存Linterを使ってコーディング規約的な部分を整備するのが簡G その上でプロジェクト固有の具体的なLintルールが伸び9
Ubieの~ モジュラモノリスのモジュールを超えたDBアクセスを禁$ 特定ファイル以外でのLocalStorage読み書きを禁$ etc...
なぜ古典的手法? 7 LLM-as-a-judgeのように先進的な評価手法もあるが、 コーディングエージェントへのフィードバックには銀の弾丸ではなB 7 非決定論的であり、真の意味で”保証”できなB 7 実行速度が遅く、エージェントのPDCAのボトルネックになる → 古典的な静的解析・自動テストが有効
古典的手法でもやり方はアップデートできそう PRレビュー内容からLintルールを自動作成して漸進的に育てR PdMやQAEとの協働したテストファースト実装 w/ コーディングエージェン0 etc...
参考(ちょっと古い) https://zenn.dev/ubie_dev/articles/7bade4112054c8
(2) コンテキスト注入
解空間の定義をLLMに与える 何らかの方法でLLMに「解空間の定義」を与える 代表的には Cursor Rules / Cline Rules など 解空間
会社・プロジェクト固有の アーキテクチャ・規約・デザインなど
例:デザインシステム(Ubie Vitals)のMCP化 ユーザーはFigmaのURLを入力する
例:デザインシステム(Ubie Vitals)のMCP化 Figma MCP でデザインデータを取得 Ubie Vitals MCP で必要なコンポーネント、トークンを取得
例:デザインシステム(Ubie Vitals)のMCP化 デザインシステムの資産を参照して 完成度の高い実装ができる MCP実装は超ナイーブで、 コンポーネント実装(Reactコード)を返すだけ
参考 https://zenn.dev/ubie_dev/articles/f927aaff02d618
なんでMCP? Rulesじゃダメ? u MCPとRulesの違 u MCPはオンデマンドに情報を取ってきてコンテキストに入れ2 u Rulesは事前にすべての情報をコンテキストに入れてお0 u Figma
MCPは動的な外部リソースをフェッチするのでMCPがマッチす2 u Ubie Vitals MCPは静的コンテンツなので本質的にはRulesで良いはず
なんでMCP? Rulesじゃダメ? C 単に現行モデルやエージェントの性能特性として、MCPの方がうまくいったので Ubie VitalsではMCPを使ってい C 事前に全てをRulesに入れるとぼやけてしまい、使ってほしい情報を使わなかっ C ただし、ロングコンテキストの性能改善が著しいので、近いうちにこういうMCP
の使い方はなくなるかも ともかく、コンテキストへの入力方法は瑣末な問題で、 入力するに値する情報(ドキュメント、デザインシステム、etc...)の整備が重要
ところで開発の”loop”って コーディングだけ?
DevOps全部やってほしい!
DevOps全部やってほしい!
CursorにPdM機能も持たせる 次のようなデータソースを MCP or CLI で繋げB ユーザーログ、メトリクス (BigQuery,
Lightdash 事業戦略、OKR (Notion チケット (Jira Why/Whatの探索からAC設定まで壁打e 最後に「じゃあこれで」と実装開始
参考 https://note.com/guchey/n/n773a2efd78cf
DevOps全部やってほしい! メトリクスから次のPBIへの 示唆を自動的に抽出 ユーザーログなど参考に 探索的テスト システムメトリクス、ユーザーログなどから 問題検出して切り戻し まだやれてないことが無限に
まとめ ' エージェントを自走させるためにはEnablingが必3 ' ジュニアエンジニアのアナロジーで課題を拾いやす@ ' ソリューションは古典的手法を活かしつつも、 人間ではなくLLMの特性からゼロベースで考えU ' そしてコーディングエージェントからフルサイクル開発エージェントへ
ありがとうございました