Amazon Q DeveloperのMemory Bank生成機能を実行してみた
1. はじめに
ITアーキテクトを務めています松本と申します。
私が普段から利用しているのAmazon Q Developerなのですが、
Amazon Q Developer (IDE版)で、Memory Bankを生成する機能が利用可能となっておりました。
この機能は既存のコードから、以下の4つのMDファイルを自動で作成してくれる機能になります。
- product.md:プロジェクトと機能の概要
- structure.md:プロジェクトのアーキテクチャ、フォルダ構成、主要コンポーネント
- tech.md:テクノロジースタック、フレームワーク、依存関係、コーディング標準
- guidelines.md:プロジェクトの開発標準とパターン
これらのMDファイルは「.amazonq/rules/memory-bank」の配下に作成されており、
毎回コンテキストとしてAmazon Q Developerが読み込むことになります。
つまり、簡易的なリバースエンジニアリングを実行してくれる機能かと思います。
AI駆動開発を最初から実行しているプロジェクトでは、READMEファイルなどコンテキストを与えるファイルを作成してプロジェクトを進めていると思います。プロジェクトによっては、要件定義書や設計書をMDファイルで作成し、AIコーディングツールに入力している場合もあるかもしれません。
しかし、プロジェクトの途中からAIコーディングツールを導入し始めた場合や既存のシステムにAIコーディングツールを導入した場合では、要件定義書や設計書などがAIが読み込みづらい形式で作成されており、十分なコンテキストをAIに与えられていないことがあります。
そこでMemory Bank生成機能を利用し、適切な粒度のコンテキストを作成すると、AI駆動開発を始めやすくなります。
本記事でVSCodeを用いて、Memory Bankを生成した例をご紹介をしたいと思います。
2. Amazon Q Developerとは?
Amazon Q Developerは、AWSが開発しているAIコードアシスタントです。VSCodeの拡張機能でも利用でき、LLMとしてClaudeが利用可能です。プロンプトを入力するとプロダクションコードを作成してくれることに加え、テストケースの作成、既存コードの解析にも利用できます。Amazon Q Developerにはコーディングを支援する様々な機能がありますが、今回はその中でもMemory Bankの生成機能を実行してみました。
Amazon Q DeveloperにはVSCode版以外にもCLI版などがありますが、今回はVSCode版を利用しております。
3. Memory Bankの生成
生成手順
生成手順自体は非常に簡単で、VSCodeのAmazon Q Developerのサイドメニューを開き、「Rules」をクリックします。
「Generate Memory Bank」の項目をクリックします。これだけで既存のコードからMemory Bankが生成されます。生成されたMDファイルは「.amazonq/rules/memory-bank」の配下に配置されます。

内容確認
サンプルのプロジェクトとして書籍貸出システムを作成してみたので、こちらのMemory Bankを確認してみましょう。出力されたMDファイルは英語で書かれているので日本語に翻訳してからみてみます。
量が多いので一部だけ表示しておりますが、内容自体は問題ないかと思っています。
product.md
プロジェクト全体と機能レベルの概要を記載できており、読みやすい粒度感かと思います。
プロジェクト目的やユースケースも記載されます。

structure.md
リポジトリ構成、ディレクトリ構成、業務ドメインというなどが記載されておりました。

tech.md
プログラミング言語、フレームワーク、Linter、パッケージ管理ツールなどが記載されています。

guidelines.md
命名規則などのコーディング規約、目標のテストカバレッジ、サンプル実装などが記載されておりました。

4. まとめ
Memory Bankを生成する機能を利用してみました。
既存コードから生成でき、良い粒度のMDファイルになっているかと思います。
LLMのコンテキストサイズにはまだ限界があるので、Memory BankのようなAIにも人にも読みやすい粒度でまとめてくれる機能はかなり助かります。
運用保守フェーズからAIコーディングツールを導入すると要件定義書や設計書がAIが読みづらい形式で書かれていることもあるかと思います。そんな時はMemory Bankを生成すれば、コードから読み取れる範囲ではありますが、MDファイルとしてリバースしてくれる機能は非常に助かります。
皆さんも既存システムにAmazon Q Developerを導入する際には、ぜひご活用ください。
Discussion