mcpField
A
agents-build

agents-build

github.com/awsエージェントワークフロー3.3k2.0k 回インストール今日更新
リポジトリ

agents-build について

既存の AgentCore プロジェクトに機能を追加する開発者向けスキルです。メモリ、ネットワーク、マルチエージェント、移行、ブラウザー操作、コード実行、決済、リソース削除などの手順に振り分けます。

主な機能

  1. 01メモリとアプリ連携の追加
  2. 02VPC ネットワークの設定
  3. 03マルチエージェント構成の構築
  4. 04Bedrock Agent の移行支援
  5. 05ブラウザー・コード・決済機能の追加
  6. 06プロジェクトリソースの削除

活用シーン

  1. 01セッションをまたぐユーザーメモリの追加
  2. 02アプリからエージェントを呼び出す
  3. 03プライベートネットワークリソースへの接続
  4. 04デプロイ済みリソースの削除

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/aws/agent-toolkit-for-aws --skill agents-build

インストール後、Claude Code で/agents-buildを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
browser.md
code-interpreter.md
integrate.md
local-vs-deployed.md
memory.md
migrate.md
multi-agent.md
payments.md
request-headers.md
teardown.md
vpc.md
scripts/
process_payment_tool.py
setup_payment_user.py

詳細

構築

AgentCore エージェントプロジェクトに機能を追加します。

使用する場面

  • エージェントにセッションをまたいだメモリを追加する
  • Web アプリ、モバイルアプリ、またはバックエンドサービスからデプロイ済みエージェントを呼び出す
  • プライベートリソース(RDS、内部 API)向けに VPC ネットワークを設定する
  • オーケストレーター/専門家パターンでマルチエージェントシステムを構築する
  • 既存の Bedrock Agent を AgentCore に移行する
  • エージェントがウェブサイトを操作できるよう、Browser ツールを追加する
  • エージェントがサンドボックス内でコードを実行できるよう、Code Interpreter を追加する
  • エージェントが x402 または MPP で保護された API、ツール、コンテンツに支払えるよう、AgentCore Payments を追加する
  • プロジェクトからリソースを削除する、またはデプロイを完全に終了する

以下には使用しないでください。

  • Gateway 経由で外部ツール/API に接続する(OpenAPI 仕様、Lambda、MCP サーバー、認証情報、ポリシー) → agents-connect を使用してください
  • 新しいプロジェクトのひな形を作成する → agents-get-started を使用してください
  • デプロイする → agents-deploy を使用してください

入力

$ARGUMENTS には、次のいずれかを指定できます。

  • 機能:「memory」、「integrate」、「vpc」、「multi-agent」、「migrate」、「browser」、「code-interpreter」、「payments」、「teardown」
  • 実現したい内容の説明:「ユーザーの好みを記憶する」、「React アプリから呼び出す」、「ウェブサイトをスクレイピングする」、「エージェントで pandas を実行する」、「エージェントを削除する」、「リソースをクリーンアップする」
  • 空欄 — スキルがコンテキストからワークフローを判断します

手順

ステップ 0:CLI のバージョンを確認する

agentcore --version を実行します。このスキルには v0.9.0 以降が必要です。

古い場合:「最新バージョンを入手するには、agentcore update を実行してください。」

ステップ 1:プロジェクトのコンテキストを読み取る

agentcore/agentcore.json を読み取り、現在のプロジェクト(フレームワーク、既存のリソース、エージェントの設定)を把握します。

agentcore/agentcore.json が見つからない場合:

  1. 開発者が誤ったディレクトリにいるか確認します。 親ディレクトリを最大 3 階層まで調べ、agentcore/agentcore.json を探します。見つかった場合は、次のように伝えます:「<path> に AgentCore プロジェクトが見つかりました。このプロジェクトで作業していますか?」
  2. 近くにプロジェクトが見つからない場合は、追加したい機能を尋ねます。その後、次の 2 つの方法を提案します。
    • 「まずプロジェクトを作成してから、CAPABILITY を追加する手順をご案内できます。そうしますか?」(get-started の手順をその場で実行してから、build のワークフローを続行します)
    • 「すでに別の場所にプロジェクトがある場合は、cd でそのディレクトリに移動して、もう一度お試しください。」

「agents-get-started を使ってください」とだけ伝えて終了しないでください。そうすると、開発者が実際に行いたかったことに関するコンテキストが失われます。

ステップ 2:ワークフローを判断する

重要な判別事項 — ビルド用リファレンスに進む前に、プロンプトが実際には接続またはデバッグに関する内容ではないか確認してください。

  • 外部 API、Lambda 関数、OpenAPI 仕様、ゲートウェイ、認証情報、MCP サーバー、ポリシーに言及している場合 → これはビルドではなく agents-connect です
  • 開発者が何かが壊れている(回答が誤っている、エラーが出る、ツールが動作しない)と言っている場合 → これはビルドではなく agents-debug です
  • ビルドは、正常に動作しているプロジェクトに新しい機能を追加するためのもので、壊れた機能を修正するためのものではありません

開発者のプロンプトと $ARGUMENTS に基づいて、適切なリファレンスを読み込んでください。

開発者の意図読み込むリファレンス
メモリを追加する、情報を記憶する、ユーザー設定、セッションをまたぐ利用references/memory.md
アプリからエージェントを呼び出す、コードから実行する、ストリーミング、SDK クライアント、エージェント URL、セッション内でシェルを実行するreferences/integrate.md
VPC、プライベートネットワーク、RDS、内部 API、サブネット、セキュリティグループreferences/vpc.md
マルチエージェント、オーケストレーター、専門エージェント、A2A、委任、エージェントの引き継ぎreferences/multi-agent.md
呼び出し元からエージェントへのカスタムヘッダー、ヘッダー許可リスト、テナント ID/相関 ID/トレースの伝播references/request-headers.md
Bedrock Agent の移行、エージェントのインポート、AgentCore への移行references/migrate.md
ブラウザツール、ウェブナビゲーション、フォーム入力、スクレイピング、Nova Act、Playwright、ライブビューreferences/browser.md
Code Interpreter、コードの実行、サンドボックス、Python/JS/TS の実行、エージェントでのデータ分析、pandasreferences/code-interpreter.md
x402 または MPP コンテンツの支払い、402 Payment Required、Machine Payments Protocol、WWW-Authenticate: Payment、少額決済、有料 API/ツール、ペイメントマネージャー/コネクターreferences/payments.md
エージェントの削除、リソースの削除、リソースの停止、クリーンアップ、破棄、最初からやり直すreferences/teardown.md
モデルの変更、モデルの切り替え、Haiku/Sonnet/Nova の使用、別のモデルインライン — 以下の「モデルの変更」を参照してください

開発者がローカル開発とデプロイ後の違いについて尋ねている場合(例:「デプロイ後はメモリが動作するのに、ローカルでは動作しないのはなぜですか?」)、該当するワークフローのリファレンスに加えて references/local-vs-deployed.md も読み込んでください。

該当するファイルをコンテキストに読み込み、「Process」セクションの手順に従ってください — 要約しないでください。

意図が曖昧な場合は、追加したい機能を開発者に尋ねてください。

モデルの変更

モデルは app/<AgentName>/model/load.py(agentcore create によって生成)で設定します。変更するには:

  1. app/<AgentName>/model/load.py を開きます
  2. BedrockModel() コンストラクターの model_id パラメーターを変更します
# Default (scaffolded by CLI)
return BedrockModel(model_id="global.anthropic.claude-sonnet-4-5-20250929-v1:0")

# Switch to Haiku for cost savings
return BedrockModel(model_id="us.anthropic.claude-3-5-haiku-20241022-v1:0")

# Switch to Nova Lite
return BedrockModel(model_id="amazon.nova-lite-v1:0")

クロスリージョン推論プロファイルのプレフィックス(us.、eu.、apac.、global.)は、推論の実行場所を指定します。最大のスループットを得るには global. を、データレジデンシーの要件がある場合は地理的なプレフィックスを使用してください。すべてのモデルがすべてのプレフィックスに対応しているわけではありません — Bedrock の推論プロファイルのドキュメントを確認してください。

モデルを変更した後:

  • お使いのリージョンでモデルが有効になっていることを確認します:AWS Console → Amazon Bedrock → Model access
  • クロスリージョンプロファイルを使用する場合は、すべての宛先リージョンで有効にします
  • agents-harden を使用している場合は、新しいモデル ARN を対象とするよう IAM ポリシーを更新します
  • agentcore dev を実行してローカルでテストし、その後 agentcore deploy を実行してデプロイ済みのエージェントを更新します

モデルはプロジェクト設定ではなくコード内で設定されるため、agentcore.json の変更は必要ありません。

事前確認: CLI コマンドを生成する前に --name を検証する

どのリファレンスを読み込んだ場合でも、ほとんどの場合最終的に agentcore add <resource> --name <something> コマンドを生成することになります。CLI は無効な名前に対して遅い段階で失敗します。つまり、コマンドを実行する前ではなく、プロンプトを一通り進めた後にエラーが表示されます。事前に検証してください:

リソース最大文字数許可される文字先頭文字
エージェント (add agent)48英数字 + _英字
メモリ、ゲートウェイ、ゲートウェイターゲット、認証情報、評価器、オンライン評価、ポリシー、ポリシーエンジン、決済マネージャー、決済コネクター48英数字 + _英字

コマンドを構築する前に文字数を数えてください。名前が制限を超えている場合、またはハイフン、ドット、スペースを含む場合は、次のように指摘してください: 「<name> は N 文字です / - を使用していますが、これは CLI によって拒否されます。<suggestion> はいかがでしょうか?」 無効な名前でコマンドを実行し、CLI のメッセージが明確であることを期待してはいけません。

注意: agentcore create --name (プロジェクト名) にはより厳しい 23 文字の制限があり、アンダースコアは許可されていません。これについては agents-get-started で扱っています。開発者が create を再実行しているのを見かけたら、23 文字の制限を具体的に指摘してください。

出力

ワークフローによって異なります。具体的な出力については、読み込んだリファレンスを参照してください。

品質基準

  • 開発者の意図に基づいて正しいリファレンスが読み込まれている
  • すべての出力が、読み込んだリファレンスの品質基準に従っている
  • 関連する箇所で、他のスキル (agents-connect、agents-deploy) への相互参照が含まれている

コメント