AIエージェント時代における TypeScriptスキーマ駆動開発の新たな役割
by
おおいし
×
Copy
Open
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Slide 1
Slide 1 text
おおいし (@bicstone) AIエージェント時代における TypeScriptスキーマ駆動開発 の新たな役割 (C) 2025 Oishi Takanori 2025/09/22 | Findy TECH BATON『TypeScriptのスキーマ駆動開発』実践事例 LT
Slide 2
Slide 2 text
Certified ScrumMaster® is a certification mark of Scrum Alliance, Inc. Any unauthorized use is strictly prohibited. 自己紹介 おおいし (@bicstone) SaaS大好きWebエンジニア ピクミンブルームをはじめました 明日、大阪・関西万博にいきます 2
Slide 3
Slide 3 text
アンケート 3 AIエージェント を活用している方 🖐️🤖 (Claude Code, Codex, Cursor, Devin, GitHub Copilot, etc...)
Slide 4
Slide 4 text
コンテキストとしての役割 フィードバックとしての役割 エージェント境界としての役割 まとめ TypeScriptによるスキーマ駆動開発は 3つの役割でAIエージェントを支える 1 2 3 → AIの自律した開発を実現するハブになる 4
Slide 5
Slide 5 text
スキーマ駆動開発の役割とは はじめに フロントエンド ユーザーと接点を持ち体験を創る バックエンド ビジネスロジックに向き合う データを守る基盤と仕組みを創る → 責務が異なる領域での分離をスキーマが支える 5
Slide 6
Slide 6 text
モバイル アプリ Web アプリ 管理用 アプリ サービス A サービス B サービス C スキーマ駆動開発の役割とは はじめに etc... フロントエンド サーバーサイド 6
Slide 7
Slide 7 text
スキーマ駆動開発の役割とは はじめに 境界に対しての信頼できる唯一の情報源として 扱う(TypeScriptでは型制約に変換) 分離したシステムに対して相互作用 境界を定義し、型安全な開発やチーム連携の円 滑化を実現 → 複数領域へ疎結合で相互作用し持続可能にする 7
Slide 8
Slide 8 text
はじめに コードベース全体を理解し、自律的に作業を計 画・実行し複雑な課題を解決するAI サブエージェント活用でより複雑な課題に対応 Claude Code, Codex, Cursor, Devin, GitHub Copilot など 2023年頃からAIエージェントが実用的に → 全てを理解したAIなら領域の分離は不要? つまりスキーマ駆動開発は不要? 8
Slide 9
Slide 9 text
AIエージェントの理想と現実 「あらゆるTypeScript」という森羅万象 から、最適解を探し出す 解の候補が多過ぎると精度が低下 コンテキストやガイドレールにより制約 を与えることが重要 AIエージェントは"広すぎる世界"を見ている → “解の候補“をいかに絞り込むかが鍵になる 9
Slide 10
Slide 10 text
抽象度の高い定義を事前にコンテキストとして 与えることで候補が減り、正解に近づける スキーマからのコード生成による自動化も推進 エージェントによる無駄な推測をなくし、精度 を向上させる スキーマという共通言語を与えられる → AIの無駄な推測をなくし精度が向上 コンテキストとしての役割 1 10
Slide 11
Slide 11 text
TypeScriptの型を用いることで、出力を機械 的に検査しエージェントに伝えることができる 人間レビュー前のガイドレールとしての役割も エージェントが解から外れた時のフィードバッ クループを可能にする 型を活用してフィードバックループを可能に → エージェントが自律的にコード品質を向上 フィードバックとしての役割 2 11
Slide 12
Slide 12 text
分離したシステム間の相互作用が働きながら コンテキストを分断可能 各エージェントは担当領域に集中可能 サブエージェントの活用により精度が向上 大規模開発でもAIの能力を最大限に引き出す エージェント境界間の相互作用を支える → 特化エージェント間の協調開発を実現 エージェントの境界としての役割 3 12
Slide 13
Slide 13 text
まとめ コンテキストとしての役割 フィードバックとしての役割 エージェント境界としての役割 1 2 3 TypeScriptによるスキーマ駆動開発は 3つの役割でAIエージェントを支える → AIの自律した開発を実現するハブになる 13
Slide 14
Slide 14 text
大石 貴則 (@bicstone) 登壇資料 & SNS (bicstone.me) 「Findy 大石」 で検索! 最後に フィードバックお待ちしております! 懇親会で情報交換できると嬉しいです! 14