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
7.9k
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
MCPとデザインシステムに立脚したデザインと実装の融合
yukukotani
6
2.2k
Scale out your Claude Code ~自社専用Agentで10xする開発プロセス~
yukukotani
10
4.3k
AI Coding Agent Enablement in TypeScript
yukukotani
21
13k
Expoによるアプリ開発の現在地とReact Server Componentsが切り開く未来
yukukotani
3
680
React 19でお手軽にCSS-in-JSを自作する
yukukotani
5
920
僕が思い描くTypeScriptの未来を勝手に先取りする
yukukotani
12
3.3k
Web技術を駆使してユーザーの画面を「録画」する
yukukotani
14
7.9k
Capacitor製のWebViewアプリからReact Native製のハイブリッドアプリへ
yukukotani
5
1.8k
Real World Type Puzzle and Code Generation
yukukotani
4
970
Other Decks in Programming
See All in Programming
pnpm に provenance のダウングレード を検出する PR を出してみた
ryo_manba
1
200
Designing Repeatable Edits: The Architecture of . in Vim
satorunooshie
0
250
ノーコードからの脱出 -地獄のデスロード- / Escape from Base44
keisuke69
0
620
Pythonに漸進的に型をつける
nealle
1
160
開発組織の戦略的な役割と 設計スキル向上の効果
masuda220
PRO
10
2.1k
実践Claude Code:20の失敗から学ぶAIペアプログラミング
takedatakashi
18
9.6k
ドメイン駆動設計のエッセンス
masuda220
PRO
15
7.5k
なんでRustの環境構築してないのにRust製のツールが動くの? / Why Do Rust-Based Tools Run Without a Rust Environment?
ssssota
14
47k
ボトムアップの生成AI活用を推進する社内AIエージェント開発
aku11i
0
1.5k
AsyncSequenceとAsyncStreamのプロポーザルを全部読む!!
s_shimotori
1
240
CSC509 Lecture 10
javiergs
PRO
0
170
O Que É e Como Funciona o PHP-FPM?
marcelgsantos
0
250
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
57
6k
Scaling GitHub
holman
463
140k
Java REST API Framework Comparison - PWX 2021
mraible
34
9k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
36
6.1k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Code Review Best Practice
trishagee
72
19k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
960
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
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 ' そしてコーディングエージェントからフルサイクル開発エージェントへ
ありがとうございました