Agent Registry では、サポートされているGoogle Cloud ランタイムでホストされているエージェントを登録できます。Agent Registry API を手動で呼び出す必要はありません。ランタイムによっては、この登録プロセスは自動的に行われるか、デプロイ時にオプトイン構成の手順が必要になります。
このドキュメントでは、サポートされているランタイムでエージェントの検出を有効にする方法について説明します。エージェントを外部またはサポートされていないランタイムでホストする場合は、手動登録を使用するをご覧ください。
登録時にエージェント用にインデックス登録されるメタデータと機能は、エージェントが Agent2Agent(A2A)プロトコルを実装しているかどうかによって異なります。詳細については、エージェントを登録するをご覧ください。
始める前に
エージェントを登録する前に、Agent Registry を設定します。登録を確認するには、プロジェクト ID が必要です。
このドキュメントの Google Cloud CLI コマンドを使用するには、gcloud CLI 環境を設定していることを確認してください。
Agent Runtime からエージェントを登録する
Gemini Enterprise Agent Platform の Agent Runtime を使用してエージェントを開発してデプロイする場合、Agent Registry への登録は自動的に行われます。
Agent2Agent(A2A)プロトコルは、エージェントが機能と ID を宣言できるようにするオープン スタンダードです。次の例は、A2A プロトコルを実装するエージェントを Agent Runtime にデプロイする方法を示しています。詳細については、エージェントをデプロイするをご覧ください。
# Create and deploy the agent
# This action automatically registers the agent in Agent Registry
remote_agent = client.agent_engines.create(
agent=my_a2a_agent, # Your defined A2A object
config={
"display_name": "my-support-agent",
"description": "An agent that handles support tickets.",
"requirements": ["google-cloud-aiplatform[agent_engines,langchain]"],
},
)
Agent Runtime でエージェントを更新または削除すると、Agent Registry はそれらの変更を自動的に同期します。
組み込みの Google エージェントを登録する
Google Workspace エージェントや Gemini Enterprise エージェントなどの組み込みの Google エージェントは、Agent Registry に自動的に登録されます。構成やデプロイの手順を行う必要はありません。これらのエージェントは取り込まれ、レジストリ内で検出に使用できます。
GKE からエージェントを登録する
Google Kubernetes Engine(GKE)にデプロイされたエージェントを登録するには、デプロイに registry.gke.io/functional-type: "AGENT" ラベルを追加します。このラベルは、デプロイを AI エージェント ワークロードとして識別します。これにより、GKE クラスタ ランタイム コントローラはクラスタ内イントロスペクション スキャンを実行し、エージェントを Agent Registry に登録します。
エージェントのスキルを自動的に検出できるようにするには、a2a-protocol.org/agent-card アノテーションも指定する必要があります。GKE 取り込みコントローラは、このアノテーションを使用して A2A エージェントカードをクエリします。
次の例は、これらの構成を使用する GKE エージェントのデプロイ マニフェストを示しています。詳細については、AI エージェントをデプロイしてオーケストレートするをご覧ください。
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-agent
labels:
# GKE takes this label and registers the agent to Agent Registry
registry.gke.io/functional-type: "AGENT"
annotations:
# A2A protocol metadata annotation for automated Agent Card discovery
a2a-protocol.org/agent-card: |
card:
endpoint: /.well-known/agent-card.json
protocol: HTTP
port: 8080
spec:
selector:
matchLabels:
app: my-agent
template:
metadata:
labels:
app: my-agent
spec:
containers:
- name: server
image: gcr.io/my-project/my-agent:1.0.0
ports:
- containerPort: 8080
env:
- name: PORT
value: "8080"
---
apiVersion: v1
kind: Service
metadata:
name: my-agent-service
labels:
app: my-agent
spec:
type: ClusterIP
ports:
- port: 8080
targetPort: 8080
protocol: TCP
name: http
selector:
app: my-agent
デプロイが適用されると、GKE クラスタ ランタイム コントローラはワークロード コンテナを自動的にイントロスペクトし、アノテーションで宣言されたエージェント カード エンドポイントをクエリして、エージェントのメタデータと A2A スキルを Agent Registry データモデルに直接同期します。
Cloud Run からエージェントを登録する
Cloud Run にデプロイされたエージェントを登録するには、デプロイ時に --functional-type=agent フラグと --identity-type=agent-identity フラグを指定します。--functional-type=agent フラグは、Cloud Run ワークロードを標準のコンテナ化されたアプリケーションではなく AI エージェントとして識別し、エージェントを Agent Registry に登録するように Cloud Run に指示します。
--functional-type=agent で構成されたワークロードは、--identity-type=agent-identity フラグを指定する必要があります。他の ID タイプでデプロイすると、エラーが発生します。
エージェントは、Cloud Run サービスまたはジョブとしてデプロイできます。Cloud Run でエージェントをサービスまたはジョブとしてデプロイする方法については、Cloud Run 用の Agent Platform 機能を構成するをご覧ください。
登録時に、Cloud Run はエージェントの名前、URL エンドポイント、タイプ(AGENT)をレジストリに自動的に追加します。Cloud Run への A2A エージェントのデプロイの詳細については、A2A エージェントを Cloud Run にデプロイするをご覧ください。
自動登録では、同じGoogle Cloud プロジェクト内にデプロイされたリソースのみが検出されます。異なるプロジェクトにデプロイされたエージェントを登録するには、手動登録をご覧ください。
登録を確認する
エージェントを一覧表示することで、エージェント レジストリがエージェントを正常に登録したことを確認できます。
コンソール
Google Cloud コンソールで、[Agent Registry] に移動します。
プロジェクト選択ツールから、Agent Registry を設定した Google Cloud プロジェクトを選択します。
[エージェント] タブを選択します。
このページには、登録されているすべてのエージェントのリストと、名前、識別子、説明、ランタイム、ロケーションなどの詳細が表示されます。
エージェントのロケーションまたはランタイム リソースでリストをフィルタします。
- 地域でフィルタするには、[地域] メニューをクリックし、フィルタする地域を選択して、[適用] をクリックします。
- ランタイムでフィルタするには、[ランタイム] メニューをクリックし、フィルタするランタイムを選択して、[適用] をクリックします。
このページには、選択した条件に一致する登録済みエージェントのフィルタされたリストが表示されます。
gcloud
エージェントのメタデータでリストをフィルタできます。Agent Registry 用に Google Cloud CLI 環境を設定し、次のコマンドを実行します。
gcloud agent-registry agents list \
--project=PROJECT_ID \
--location=REGION \
--filter="FILTER_EXPRESSION"
次のように置き換えます。
PROJECT_ID: プロジェクト ID。REGION: レジストリ リージョン。FILTER_EXPRESSION: フィルタするエージェントのフィルタ式。たとえば、表示名でフィルタリングするには、displayName='DISPLAY_NAME'を使用します。グローバルに一意の識別子(URN)でフィルタするには、agentId='urn:agent:AGENT_URN'を使用します。
組み込みの Google エージェントは、エージェントのデプロイ場所に応じて URN 形式を使用します。たとえば、--filter="agentId:'urn:agent:googleapis.com:*'" を使用して googleapis.com パブリッシャーのリストをフィルタリングすると、組み込みの Google Workspace エージェントを見つけることができます。
Terraform
google_agent_registry_agent データソースを使用して、他の Terraform 構成で登録済みエージェントを参照します。
data "google_agent_registry_agent" "my_agent" {
location = "REGION"
filter = "displayName=\"DISPLAY_NAME\""
}
output "agent_urn" {
value = data.google_agent_registry_agent.my_agent.urn
}
次のように置き換えます。
REGION: レジストリ リージョン。DISPLAY_NAME: エージェントの人が読める表示名。