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.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
AI Coding Agent Enablement in TypeScript
yukukotani
19
9.9k
Expoによるアプリ開発の現在地とReact Server Componentsが切り開く未来
yukukotani
3
500
React 19でお手軽にCSS-in-JSを自作する
yukukotani
5
800
僕が思い描くTypeScriptの未来を勝手に先取りする
yukukotani
12
3.2k
Web技術を駆使してユーザーの画面を「録画」する
yukukotani
14
7.7k
Capacitor製のWebViewアプリからReact Native製のハイブリッドアプリへ
yukukotani
5
1.6k
Real World Type Puzzle and Code Generation
yukukotani
4
940
Kuma UI が提唱する Hybrid Approach CSS-in-JS の仕組み
yukukotani
2
570
GraphQLスキーマ設計の勘所
yukukotani
42
18k
Other Decks in Programming
See All in Programming
たった 1 枚の PHP ファイルで実装する MCP サーバ / MCP Server with Vanilla PHP
okashoi
1
240
AIエージェントはこう育てる - GitHub Copilot Agentとチームの共進化サイクル
koboriakira
0
520
Code as Context 〜 1にコードで 2にリンタ 34がなくて 5にルール? 〜
yodakeisuke
0
120
ISUCON研修おかわり会 講義スライド
arfes0e2b3c
1
440
20250628_非エンジニアがバイブコーディングしてみた
ponponmikankan
0
670
都市をデータで見るってこういうこと PLATEAU属性情報入門
nokonoko1203
1
610
#kanrk08 / 公開版 PicoRubyとマイコンでの自作トレーニング計測装置を用いたワークアウトの理想と現実
bash0c7
1
720
生成AI時代のコンポーネントライブラリの作り方
touyou
1
180
Result型で“失敗”を型にするPHPコードの書き方
kajitack
5
610
Hypervel - A Coroutine Framework for Laravel Artisans
albertcht
1
110
“いい感じ“な定量評価を求めて - Four Keysとアウトカムの間の探求 -
nealle
1
9.3k
Google Agent Development Kit でLINE Botを作ってみた
ymd65536
2
240
Featured
See All Featured
GraphQLとの向き合い方2022年版
quramy
49
14k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
181
53k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Mobile First: as difficult as doing things right
swwweet
223
9.7k
Adopting Sorbet at Scale
ufuk
77
9.4k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.4k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
126
52k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.6k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
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 ' そしてコーディングエージェントからフルサイクル開発エージェントへ
ありがとうございました