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
10k
Expoによるアプリ開発の現在地とReact Server Componentsが切り開く未来
yukukotani
3
510
React 19でお手軽にCSS-in-JSを自作する
yukukotani
5
810
僕が思い描くTypeScriptの未来を勝手に先取りする
yukukotani
12
3.3k
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
580
GraphQLスキーマ設計の勘所
yukukotani
42
19k
Other Decks in Programming
See All in Programming
“いい感じ“な定量評価を求めて - Four Keysとアウトカムの間の探求 -
nealle
2
12k
코딩 에이전트 체크리스트: Claude Code ver.
nacyot
0
930
20250708_JAWS_opscdk
takuyay0ne
2
130
Hack Claude Code with Claude Code
choplin
7
2.5k
おやつのお供はお決まりですか?@WWDC25 Recap -Japan-\(region).swift
shingangan
0
140
はじめてのWeb API体験 ー 飲食店検索アプリを作ろうー
akinko_0915
0
140
初学者でも今すぐできる、Claude Codeの生産性を10倍上げるTips
s4yuba
16
13k
可変変数との向き合い方 $$変数名が踊り出す$$ / php conference Variable variables
gunji
0
180
オンコール⼊⾨〜ページャーが鳴る前に、あなたが備えられること〜 / Before The Pager Rings
yktakaha4
2
990
「App Intent」よくわからんけどすごい!
rinngo0302
1
100
Android 16KBページサイズ対応をはじめからていねいに
mine2424
0
440
レベル1の開発生産性向上に取り組む − 日々の作業の効率化・自動化を通じた改善活動
kesoji
0
300
Featured
See All Featured
Designing for Performance
lara
610
69k
Making the Leap to Tech Lead
cromwellryan
134
9.4k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
47
9.6k
Why You Should Never Use an ORM
jnunemaker
PRO
58
9.5k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.8k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
990
How GitHub (no longer) Works
holman
314
140k
A Modern Web Designer's Workflow
chriscoyier
695
190k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.6k
Unsuck your backbone
ammeep
671
58k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
126
53k
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 ' そしてコーディングエージェントからフルサイクル開発エージェントへ
ありがとうございました