概要
AWS Blocksの内部構造を解析し、Infrastructure from Code(IFC)が単一のTypeScriptコードからローカルモック、CDK構成、Lambdaランタイムを動的に生成する仕組みを解説しています。
詳細内容
2026年6月にパブリックプレビューされた『AWS Blocks』のソースコードを詳細に分析した解説記事です。AWS Blocksは、TypeScriptでバックエンドを記述することでインフラを自動導出するInfrastructure from Code(IFC)フレームワークであり、本記事では特に『KVStore』や『Agent』といったBlockの最小構成から、複雑なコンポジションの仕組みまでを追っています。
鍵となるのはNode.jsのConditional Exportsを利用した設計で、`import`される同一のコードが、実行環境(ローカル、CDK、AWSランタイム)に応じて自動的に実装を切り替える仕組み(index.mock.ts / index.cdk.ts / index.aws.ts)を明らかにしています。また、AIコーディングエージェント(CursorやClaude Code等)に最適化された『AGENTS.md』の同梱や、LLMなしでエージェントをテストできる『CannedProvider』の存在など、開発イテレーションを高速化するための工夫が随所に凝らされています。さらに、Amplify Gen2との統合方法やNested Stackを用いた既存CDK資産との共存についても具体例を挙げて解説されています。