AIエージェント時代における TypeScriptスキーマ駆動開発の新たな役割
by
おおいし
×
Copy
Open
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
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