
- SQLスキーマからER図を自動生成するエージェントの実装例
- Python/Javaのコード解析とCVE・ポリシー違反の検出を自動化する例
- 人間のレビューを残したまま開発を加速するAI-DLCの設計指針
発表の概要
AWSの公式ブログで、AI駆動開発ライフサイクル(AI-DLC)の構築フェーズを具体的なコードで示す2つのリファレンス実装が公開されました。どちらも、エージェントを大規模に構築・接続・最適化できるマネージドサービス「Amazon Bedrock AgentCore」を基盤にしています。AI-DLCは、開発工程全体でAIを中心的な共同作業者とし、定型的な実行を任せながら、重要な決定には人間の監督を残す考え方です。
1つ目の実装はSQLスキーマからMermaid形式のER図を自動生成するもので、2つ目はCI/CDパイプラインから送られてきたコードをマルチエージェント構成で解析するものです。どちらも、AIが生成した成果物を人間がレビューできる形で保存し、ガバナンスを保ちながら開発を加速することを狙っています。ブログには、アーキテクチャ図や主要な実装コード、GitHub上のデプロイ手順が含まれています。
SQLスキーマからER図を生成
1つ目の実装が対象にするのは、データベーススキーマのドキュメント管理です。SQLスキーマの変更が入るたびにER図を手作業で更新するのは時間がかかり、実際のスキーマと文書が徐々に乖離していく問題があります。開発者がSQLファイルをS3のバケットにアップロードすると、Lambda関数がそれを検知し、AgentCore上で動く解析エージェントを起動する仕組みです。
エージェントはDDL文からテーブルや列、制約、外部キーを抽出し、Mermaid記法のER図(.mmdファイル)を生成してS3へ保存します。読み取るのはスキーマのメタデータだけで、テーブル内のデータにはアクセスしない設計です。生成された解析セッションはAgentCore memoryに保存され、セマンティック検索で過去の分析結果を参照できるため、スキーマ変更の履歴も把握しやすくなっています。
大規模なスキーマを扱うための工夫もあります。数百テーブルに及ぶSQLファイルは分割して解析し、得られた結果を最後に統合することで、モデルのコンテキスト上限に達しにくくしています。各処理にはOpenTelemetryによるトレースが設定され、処理時間や分割数、エラー発生箇所の確認が可能です。
コードセキュリティ解析の自動化
2つ目の実装は、コードのセキュリティ品質を継続的に確認するための仕組みです。GitLabのCI/CDパイプラインからS3にプッシュされたPythonまたはJavaのコードを、AgentCore上の解析エージェントが受け取り、構造、ロジック、メモリ・性能の使い方、セキュリティ問題、ベストプラクティスの順守状況を多面的に評価します。
評価の過程では、AgentCore GatewayがMCPツールの呼び出しを仲介します。ポリシーチェック用のLambdaが組織固有のポリシー違反を調べ、CVEデータベース検索用のLambdaが依存関係の既知の脆弱性をチェックします。こうした外部ツールの呼び出しをエージェント本体に書き込まずに済むため、後からツールを追加しやすくなっています。
結果は品質スコア(1〜10)と推奨事項の形でAgentCore memoryに保存されます。memoryはセマンティック(詳細な分析結果の検索)、サマリー(集計値とトレンド)、ユーザー設定(ダッシュボードの表示設定)という3つの戦略を使い分け、履歴との比較や傾向分析を可能にします。
共通する設計パターン
2つの実装に共通するのは、S3イベントを起点にLambdaが処理を始めるサーバーレス構成と、Amazon CognitoによるOAuth2(M2M)認証です。認証に使うクライアントの資格情報はAWS Systems Manager Parameter Storeで管理されます。ObservabilityやCloudWatchといったモニタリング機能も組み込まれ、本番運用を意識した作りになっています。
さらに、エージェントの判断は最終的に人間のレビューを経る設計です。生成されたER図はS3上で確認でき、セキュリティ解析の結果はWebダッシュボードから閲覧できます。ブログは、人間が全体を監督しながらAIを開発工程に組み込む方法として、これらの例を位置づけています。
現時点での注意点
あくまで参考実装なので、自社環境への適用には追加の検討が必要です。記事のコード例では us-west-2 が指定されていますが、リージョンごとに利用可能なモデルは異なる可能性があり、AWSのドキュメントでの確認が促されています。料金についても記事内には記載がありません。
2つ目の実装はGitLabを想定していますが、ほかのCI/CDツールで使う場合の手順や、大規模リポジトリでどれだけ処理時間がかかるかは記事からは不明です。導入を検討する際は、公開されたサンプルを実際に動かし、自社のコードやポリシー定義に合わせて調整する作業が必要になるとみられます。
| 項目 | SQL→ER図生成 | コードセキュリティ解析 |
|---|---|---|
| 目的 | SQLスキーマからER図を自動生成 | コードのセキュリティ解析を自動化 |
| 入力 | SQLのDDLファイル | Python/Javaのコードと依存ファイル |
| トリガー | S3へのSQLファイルのアップロード | GitLabのCI/CDからS3へのコードのアップロード |
| 主なAgentCore機能 | AgentCore runtimeとmemory | AgentCore runtime、Gateway、memory、Observability |
| 成果物 | Mermaid ER図(.mmd)をS3に保存 | 品質スコア(1〜10)と違反報告を保存しWeb UIで表示 |
Engineering teams adopting the AI-Driven Development Lifecycle (AI-DLC) with Amazon Bedrock AgentCore and coding agents like Kiro often struggle with the gap between conceptual frameworks and working code.
AI-DLCをAmazon Bedrock AgentCoreやKiroのようなコーディングエージェントとともに導入する開発チームは、概念的な枠組みと実際に動くコードの間にあるギャップにしばしば苦労します。
今後の見通し
今回の公開は、AgentCoreが「AI駆動開発」を現実のワークフローに載せるための部品として使えることを示した実例とみられます。次の判断材料になるのは、AgentCoreの各機能がどのリージョンで利用でき、どのような料金体系になるのかという情報です。また、GitHub上のサンプルが実際のプロジェクトでどのように使われ、どのような改善が加えられるかも注目されます。AI-DLCの構想から実装までの隔たりを埋める動きが、より多くの開発チームで検証されるかが今後の焦点になるでしょう。
日本の開発者・IT企業にとっての意味
日本のIT企業にとって、この記事の意味は、AIエージェントをソフトウェア開発の現場に組み込む際の「ひな型」が、AWS公式ブログで具体的なコードとともに示されたことにあります。特に、SQLスキーマ文書の更新やコードレビューのセキュリティチェックは、日本の開発現場でも人手がかかり、属人化しやすい領域です。2つの実装例は、既存のGitLabやS3といったインフラと組み合わせやすく、人間のレビュー工程を残したまま自動化したい企業にとって出発点になり得ます。一方で、社内のポリシーをLambdaのツールに落とし込む作業や、コードを基盤モデルへ送る際のセキュリティ基準は、各社で別途検討する必要があります。
気になる点
- 利用にあたっての料金はどのくらいかかりますか?
- 記事には具体的な料金は記載されていません。構成要素となるAmazon Bedrock AgentCoreとAmazon Bedrock上のClaudeモデル、Lambda、S3などは従量課金になるとみられますが、現時点ではAWSの料金表やコスト見積もりツールで個別に確認する必要があります。
- 既存のCI/CD環境に組み込めますか?
- 2つ目の例はGitLabのパイプラインからS3へコードをアップロードする流れを想定しています。処理の起点はS3イベントなので、GitLab以外のCI/CDツールでも「成果物をS3に置く」という同じ導線を作れば応用できる可能性はありますが、記事ではGitLab以外の検証結果は示されていません。
- 日本国内のリージョンでも使えますか?
- 記事内にはリージョン別の利用可否の一覧がなく、コード例では us-west-2 が指定されています。AWSのドキュメントでモデルのリージョン別提供状況を確認するよう促しているため、利用できるモデルはリージョンごとに異なる可能性があります。現時点では東京リージョンでの動作は記事から確認できません。
用語解説
- Amazon Bedrock AgentCore
- AWSが提供する、エージェントの構築・接続・最適化を担うマネージドサービス。任意のフレームワークやモデルと組み合わせられる。
- AI-DLC
- AI-Driven Development Lifecycleの略。ソフトウェア開発工程全体にAIを組み込み、定型的な作業はAI、重要な決定は人間が担う開発手法。
- AgentCore memory
- AgentCoreの機能の1つで、セッション状態や分析結果を保持する。セマンティック検索や要約など複数の記憶戦略を持つ。
- MCP(Model Context Protocol)
- AIエージェントが外部ツールやデータソースを利用するための標準プロトコル。AgentCore Gateway経由でLambda上のツールを呼ぶ際に使われる。
- CVE
- Common Vulnerabilities and Exposuresの略。公開済みソフトウェア脆弱性に割り当てられる識別子。依存パッケージの既知の脆弱性を確認するために使われる。
- Mermaid
- テキストから図を描画する記法。ER図を.mmdファイルとしてコード管理できる。開発ドキュメントの自動生成に向いている。
出典
AI-driven development lifecycle using Amazon Bedrock AgentCore
AI導入も顧問も、お任せください
何から手をつけるか、どこまでAIに任せるか。自社の業務に合わせて整理し、導入から運用まで伴走します。相談だけでも構いません。
AI導入について相談する