Skip to content

エージェント型AIダンジョンゲーム

このチュートリアルでは、AIエージェントを活用したダンジョンアドベンチャーゲームを構築します。@aws/nx-pluginや関連技術の事前知識は必要ありません。ここで学ぶテクニックは@aws/nx-pluginベースのアプリケーション開発の基礎となるもので、本チュートリアルを完了することで@aws/nx-pluginの深い理解とNXの基本的な使用方法を習得できます。

チュートリアルを完了すると、以下の知識が得られます:

  • @aws/nx-pluginを使用した新規アプリケーションの作成
  • NXを使ったコードベースの管理/ビルド
  • tRPCを使用したAPIの構築
  • Strandsを使ったエージェントの構築
  • TypeScriptでのMCPサーバー構築
  • Tanstack Routerを使ったページ作成
  • Tanstack Queryを使ったバックエンドAPI呼び出し
  • CDKインフラの作成とデプロイ

このチュートリアルでは、@aws/nx-pluginを使用してAIエージェントを活用したダンジョンアドベンチャーゲームを構築します。

完成形は以下のようになります:

game-select.png
game-conversation.png

AIエージェントを活用したダンジョンアドベンチャーゲームは、以下のコンポーネントアーキテクチャで構築されます:

dungeon-game-architecture.png
  • React/Viteフロントエンド(以下を活用):
    • セキュアなAPI呼び出しのためのAmazon Cognito/Identity Pools
    • タイプセーフなファイルベースルーティングをサポートするTanstack router
    • Game API呼び出し用生成SDK
  • ゲーム状態管理にElectroDB/DynamoDBを使用するtRPC API
  • Amazon Bedrock AgentCore上で動作するStrandsエージェント
  • エージェントがプレイヤーのインベントリを管理するためのTypeScript MCPサーバー(Amazon Bedrock AgentCore上でホスト)
  • アプリケーションデプロイ用CDKインフラ

開始前に以下のグローバル依存関係が必要です:

  • Git
  • Node >= 22 (ノードのバージョン管理にはNVMなどの使用を推奨します)
    • node --version を実行して確認
  • PNPM >= 10 (代替としてYarn >= 4Bun >= 1、またはNPM >= 10も使用可能)
    • pnpm --versionyarn --versionbun --version または npm --version を実行して確認
  • UV >= 0.5.29
    1. 以下のコマンドを実行して Python 3.12 をインストール: uv python install 3.12.0
    2. uv python list --only-installed でインストール済みバージョンを確認
  • ターゲットとなるAWSアカウント(アプリケーションをデプロイする環境)に設定されたAWS Credentials
  • AgentCoreコンポーネントのビルドにDockerが必要
  • AWSアカウントで対象リージョンのBedrock内でStrandsデフォルトモデルへのアクセスが有効化されていること(このガイドの手順に従う)。執筆時点ではAnthropic Claude Sonnet 4