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