View a markdown version of this page

AgentCore CLI の使用を開始する - Amazon Bedrock AgentCore

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AgentCore CLI の使用を開始する

このクイックスタートでは、AgentCore CLI を使用して、数分以内にゼロから実行中のエージェントに移動します。CLI のインストール、プロジェクトのスキャフォールド、ローカルでのテスト、エージェントへのデプロイ AWS、および呼び出しを行います。

AgentCore でエージェントを構築する 2 つの方法、同じ CLI:

  • マネージドハーネス。エージェントを 設定ファイル (モデル、プロンプト、ツール、メモリ) で宣言すると、AgentCore はループを実行します。フレームワークやオーケストレーションコードはありません。アイデアから実行中のエージェントへの最速ルートが必要な場合に適しています。詳細はこちら。

  • コードベースのエージェント。エージェントループは、既に知っているフレームワーク (ストランド、LangGraph、Google ADK、または OpenAI エージェント) を使用して Python で記述し、AgentCore ランタイムにデプロイします。オーケストレーションロジックを完全に制御します。

このページでは、コードベースのフローについて説明します。ハーネスについては、AgentCore ハーネスとは」を参照してください。

AWS アカウントにサインアップする

AWS アカウントにサインアップする

の使用を開始するには AWS、 AWS アカウントが必要です。 AWS アカウントの作成の詳細については、「 AWS アカウント管理リファレンスガイド」の「 アカウントの開始方法」を参照してください。 AWS

前提条件

  • Node.js 20 以降。AgentCore CLI は npm パッケージとして配布されています。で を確認しますnode --version。必要に応じて、nodejs.org から をインストールします。

  • npm。Node.js に含まれています。

  • 認証情報が設定された AWS アカウント。 AWS CLI、環境変数、または AWS プロファイルを使用して を設定します。「 CLI AWS の設定」を参照してください。

  • Python 3.10 以降 (エージェントコード用)。で を確認しますpython3 --version。

  • [IAM アクセス許可]。ID には、AgentCore API コールを行い、デプロイ中に使用される CDK ブートストラップロールを引き受けるアクセス許可が必要です。AgentCore CLI を使用する」を参照してください。

  • モデルアクセス。Amazon Bedrock は、デフォルトで基盤モデルへのアクセスを有効にします。利用可能なモデルには、Amazon Nova、Anthropic Claude、Meta Llama、Mistral AI モデルなどがあります。非基盤モデルを使用するには、モデルアクセスステップに従います。

  • Docker。Container ビルドタイプを選択した場合にのみ必要です。デフォルトのCodeZipビルドタイプには Docker は必要ありません。

ステップ 1: AgentCore CLI をインストールする

npm install -g @aws/agentcore

検証:

agentcore --version
注記

バージョン番号の代わりにエラーが報告された場合、古い Python agentcore コマンドが npm をシャドウしていますPATH。これは、以前に pip bedrock-agentcore-starter-toolkit パッケージをインストールしていて、Windows で最も一般的である場合に発生します。を実行してからpip uninstall bedrock-agentcore-starter-toolkit、新しいターミナルを開き、もう一度試してください。

後で更新するには、インストールコマンド または を再実行しますagentcore update。ソースと問題: GitHub の agentcore-cli。

ステップ 2: プロジェクトを作成する

agentcore create

インタラクティブウィザードは、最初にビルドする内容を尋ねます。

  • ハーネス - マネージド設定ベースのエージェントループ。フレームワークやオーケストレーションコードは必要ありません。AgentCore ハーネスとは」を参照してください。

  • エージェント - 選択したフレームワークを使用するコードベースのエージェント。AgentCore ランタイムにデプロイされます。

  • スキップ - エージェントなしでプロジェクト構造を作成します。で後で追加しますagentcore add。

エージェントを選択すると、ウィザードは次の操作を続行します。

  • フレームワーク - Strands エージェント (推奨)、LangChain/LangGraph、Google エージェント開発キット、または OpenAI エージェント SDK

  • モデルプロバイダー - Amazon Bedrock、Anthropic、OpenAI、または Gemini

  • メモリ - なし、短期のみ、または長期と短期

  • ビルドタイプ - CodeZip (デフォルト) またはコンテナ

フラグを直接渡してコードベースのエージェントを作成することもできます。

agentcore create \ --project-name MyProject \ --name MyAgent \ --language Python \ --framework Strands \ --model-provider Bedrock \ --memory none \ --build CodeZip

使用可能なすべてのコマンドとオプションについては、AgentCore CLI リファレンス」を参照してください。

ビルドタイプ

  • CodeZip (デフォルト) はコードを zip ファイルにパッケージ化し、Amazon S3 にアップロードします。このビルドタイプには Docker は必要ありません。

  • Container はコンテナイメージを構築してデプロイします。このビルドタイプには、実行中の Docker デーモンが必要です。

プロジェクトの構造

agentcore create は、共有プロジェクト設定と、コードベースのエージェントとハーネス用の異なるアプリケーション構造を生成します。

例
Code-based agent
MyProject/ ├── AGENTS.md ├── README.md ├── agentcore/ │ ├── agentcore.json │ ├── aws-targets.json │ └── cdk/ └── app/ └── MyAgent/ ├── main.py ├── pyproject.toml ├── README.md ├── model/ ├── mcp_client/ └── skills/
Harness
MyHarnessProject/ ├── AGENTS.md ├── README.md ├── agentcore/ │ ├── agentcore.json │ ├── aws-targets.json │ └── cdk/ └── app/ └── MyHarness/ ├── harness.json └── system-prompt.md

キーファイル:

  • agentcore/agentcore.json - メイン設定ファイル。エージェント、ハーネス、メモリストア、ゲートウェイ、認証情報、その他のリソースを定義します。agentcore add および agentcore remove コマンドはこのファイルを管理します。

  • agentcore/aws-targets.json - デプロイする AWS アカウントとリージョン。

  • agentcore/.env.local - モデルプロバイダーの API キーなどのローカルシークレット。

  • app/ - アプリケーションディレクトリ。コードベースのエージェントには、エントリポイントと依存関係が含まれています。ハーネスには harness.jsonと が含まれていますsystem-prompt.md。

ステップ 3: ローカルでテストする

cd MyProject agentcore dev

agentcore dev は、Python 仮想環境を作成し、依存関係をインストールして、ホットリロードでローカルサーバーを起動し、ブラウザでエージェントインスペクターを開いて、エージェントとチャットしたり、トレースを検査したり、プロジェクトリソースを参照したりできます。コードの変更は自動的に取得されます。

ステップ 4: エージェントをデプロイする

agentcore deploy

デプロイ:

  1. コードを zip アーティファクトにパッケージ化 (または の場合はコンテナを構築--build Container)

  2. 内部で AWS CDK を使用してリソースを合成およびプロビジョニングする

  3. エージェントの AgentCore ランタイムエンドポイントを作成します。

  4. CloudWatch のログ記録とオブザーバビリティを設定します

最初のデプロイには、CDK がアカウントをブートストラップするまでに数分かかります。後続のデプロイはより高速です。

デプロイせずに変更内容をプレビューします。

agentcore deploy --dry-run

ステータスを確認します。

agentcore status

ステップ 5: デプロイされたエージェントを呼び出す

agentcore invoke --prompt "Hello, what can you do?"

エージェントが支払いを設定している場合は、呼び出し時に支払いコンテキストを指定します。

agentcore invoke \ --prompt "Access https://example-x402-merchant.com/paid-api" \ --payment-instrument-id <INSTRUMENT_ID> \ --auto-session \ --payment-user-id user@example.com

これがループです。で反復処理しapp/MyAgent/main.py、 でテストしagentcore dev、 でデプロイしagentcore deploy、 で呼び出しますagentcore invoke。

プログラムでエージェントを呼び出す

AWS SDK InvokeAgentRuntime オペレーションを使用して、デプロイされたエージェントを呼び出すことができます。エージェントランタイム ARN を取得します。

agentcore status

invoke_agent.py という名前のファイルを作成します。エージェント ARN をエージェントの ARN に置き換えます。

import json import uuid import boto3 agent_arn = "Agent ARN" prompt = "Tell me a joke" client = boto3.client("bedrock-agentcore") response = client.invoke_agent_runtime( agentRuntimeArn=agent_arn, runtimeSessionId=str(uuid.uuid4()), payload=json.dumps({"prompt": prompt}).encode(), qualifier="DEFAULT", ) content = [] for chunk in response.get("response", []): content.append(chunk.decode("utf-8")) print(json.loads("".join(content)))

コードを実行します。

python invoke_agent.py

ID には アクセスbedrock-agentcore:InvokeAgentRuntime許可が必要です。

注記

OAuth を使用するエージェントの場合は、 AWS SDK InvokeAgentRuntimeを使用する代わりに に HTTPS リクエストを行います。詳細については、「インバウンド認可とアウトバウンド認可による認証と認可」を参照してください。

プロジェクトに機能を追加する

agentcore add は のリソースを管理しますagentcore.json。インタラクティブメニューの引数なしで実行するか、リソースを直接ターゲットにします。

agentcore add memory # Store conversation context agentcore add agent # Add a second agent to the same project agentcore add gateway # Connect external APIs/tools through Gateway agentcore add credential # Add an API key for a non-Bedrock provider agentcore add evaluator # Quality evaluation agentcore add payment-manager # Payments: create a payment manager agentcore add payment-connector # Payments: link a payment provider

Add コマンドはそれぞれ、設定を足場し、必要な値の入力を求めます。追加したら、 を実行してプロビジョニングagentcore deployします。

アタッチできる機能の詳細な説明:

ログとトレースを表示する

# Stream recent logs agentcore logs # Filter agentcore logs --since 30m --level error agentcore logs --query "timeout" # List recent traces agentcore traces list # Get a specific trace agentcore traces get <trace-id>

トラブルシューティング

アクセス許可拒否エラー

で認証情報を確認しますaws sts get-caller-identity。AgentCore CLI を使用するで、ID に アクセス許可があることを確認します。

モデルアクセスが拒否されました

Amazon Bedrock は、デフォルトで基盤モデルへのアクセスを有効にします。非基盤モデルを使用するには、モデルアクセスステップに従います。

デプロイエラー

を実行してagentcore deploy --verbose、リソースレベルのデプロイイベントを表示します。CLI は AWS CDK ブートストラップのステータスをチェックします。ブートストラップが必要な場合は、インタラクティブデプロイで確認を求められます。 は、プロンプトなしでブートストラップオペレーションagentcore deploy --yesを承認します。

ポートは既に使用されています

agentcore dev --port 3000 を実行して、別のローカルポートを使用します。

設定検証エラー

を実行してagentcore validate、プロジェクト設定を確認します。

詳細については、「Amazon Bedrock AgentCore ランタイムのトラブルシューティング」を参照してください。

クリーンアップ

agentcore remove all agentcore deploy

remove all は設定をリセットします。フォローアップは空の状態deployを検出し、アカウントのリソースを破棄します。

次の手順

  • AgentCore ハーネスとは - 実行中のエージェントへの設定ベースのパス。任意のモデルを使用し、ツールに接続し、状態を維持し、VPC にデプロイし、必要に応じてコードを段階的に作成します。

  • AgentCore コードサンプル - end-to-endの例。