Utiliser l'enregistrement manuel

Vous devez procéder à un enregistrement manuel dans Agent Registry pour les agents hébergés en dehors de Google Cloud. Ce document explique comment enregistrer manuellement des agents dans Agent Registry.

Avant de commencer

Avant de commencer, configurez Agent Registry. Vous avez besoin de l'ID du projet pour effectuer ces tâches.

Pour utiliser les commandes gcloud CLI de ce document, assurez-vous d'avoir configuré votre environnement Google Cloud CLI.

Rôles requis

Pour obtenir les autorisations nécessaires pour enregistrer manuellement des agents dans Agent Registry, demandez à votre administrateur de vous accorder le rôle IAM Éditeur de l'API Agent Registry (roles/agentregistry.editor) sur le projet. Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.

Vous pouvez également obtenir les autorisations requises avec des rôles personnalisés ou d'autres rôles prédéfinis.

Enregistrer un agent compatible A2A

Si votre agent distant implémente la spécification Agent2Agent (A2A), dirigez Agent Registry vers la charge utile agent-card.json de l'agent. Le registre synchronise automatiquement la carte d'agent et indexe les compétences disponibles de l'agent pour la découverte.

Pour enregistrer l'agent, procédez comme suit :

Console

  1. Dans la Google Cloud console, accédez à Agent Registry:

    Accéder à Agent Registry

  2. Dans l'outil de sélection de projets, sélectionnez le Google Cloud projet dans lequel vous avez configuré Agent Registry.

  3. Sélectionnez l'onglet Agents.

  4. Cliquez sur Ajouter un agent.

  5. Dans le panneau Détails de l'agent , saisissez un nom à afficher et une description, puis sélectionnez la région géographique.

  6. Pour le type d'agent, sélectionnez A2A.

  7. Dans la section de spécification de l'agent, sélectionnez l'onglet Coller JSON , puis collez l'intégralité du contenu de votre fichier agent-card.json.

  8. Cliquez sur Enregistrer.

gcloud

Pour enregistrer un agent A2A, enregistrez sa carte d'agent en tant que fichier JSON local, par exemple agent-card.json, puis procédez comme suit :

gcloud alpha agent-registry services create AGENT_NAME \
  --project=PROJECT_ID \
  --location=REGION \
  --display-name="DISPLAY_NAME" \
  --agent-spec-type=a2a-agent-card \
  --agent-spec-content=@agent-card.json

Remplacez les éléments suivants :

  • AGENT_NAME: nom que vous souhaitez attribuer à votre agent, par exemple my-support-agent.
  • PROJECT_ID : ID du projet.
  • REGION : région du registre.
  • DISPLAY_NAME: nom lisible que vous souhaitez attribuer à votre agent, par exemple Support Agent.

Enregistrer un agent REST standard

Les agents REST standards peuvent être découverts par leur nom et leur description, mais ne disposent pas de compétences pouvant faire l'objet d'une recherche, sauf s'ils adoptent le protocole A2A.

Si vous souhaitez enregistrer un agent distant qui n'implémente pas la spécification A2A, tel qu'un point de terminaison d'API REST ou SaaS standard, l'API Agent Registry crée une ressource Service sans spécification de protocole d'agent.

Pour enregistrer l'agent, procédez comme suit :

Console

  1. Dans la Google Cloud console, accédez à Agent Registry:

    Accéder à Agent Registry

  2. Dans l'outil de sélection de projets, sélectionnez le Google Cloud projet dans lequel vous avez configuré Agent Registry.

  3. Sélectionnez l'onglet Agents.

  4. Cliquez sur Ajouter un agent.

  5. Dans le panneau Détails de l'agent , saisissez un nom à afficher et une description, puis sélectionnez la région géographique.

  6. Pour le type d'agent, sélectionnez l'option indiquant qu'aucune spécification n'est requise, par exemple Non-A2A.

  7. Saisissez le point de terminaison où l'agent est hébergé et sélectionnez la liaison de protocole si nécessaire, par exemple HTTP_JSON.

  8. Cliquez sur Enregistrer.

gcloud

Vous pouvez éventuellement fournir l'interface de point de terminaison HTTP/JSON définie avec l'option --interfaces afin que le registre établisse une connexion avec l'agent.

Pour enregistrer un agent REST standard, procédez comme suit :

gcloud alpha agent-registry services create AGENT_NAME \
  --project=PROJECT_ID \
  --location=REGION \
  --display-name="DISPLAY_NAME" \
  --agent-spec-type=no-spec \
  --interfaces=url=ENDPOINT_URL,protocolBinding=PROTOCOL

Remplacez les éléments suivants :

  • AGENT_NAME: nom que vous souhaitez attribuer à votre agent, par exemple my-remote-rest-agent.
  • PROJECT_ID : ID du projet.
  • REGION : région du registre.
  • DISPLAY_NAME: nom lisible que vous souhaitez attribuer à votre agent, par exemple Remote REST Agent.
  • ENDPOINT_URL: URL du point de terminaison du service d'agent, par exemple https://api.remote-service.com/v1/agents/1234.
  • PROTOCOL : liaison de protocole pour le point de terminaison. Les valeurs valides sont HTTP_JSON, GRPC ou JSONRPC.

Vérifier l'enregistrement

Après avoir enregistré votre agent, vérifiez qu'Agent Registry a bien traité le Service et créé la ressource Agent correspondante :

Console

  1. Dans la Google Cloud console, accédez à Agent Registry:

    Accéder à Agent Registry

  2. Dans l'outil de sélection de projets, sélectionnez le Google Cloud projet dans lequel vous avez configuré Agent Registry.

  3. Sélectionnez l'onglet Agents.

    La page doit afficher la liste de tous les agents enregistrés et leurs détails.

gcloud

gcloud alpha agent-registry agents list \
  --project=PROJECT_ID \
  --location=REGION

Si vous avez plusieurs agents ou si vous souhaitez confirmer l'enregistrement d'un seul agent, vous pouvez filtrer la liste par métadonnées de l'agent :

gcloud alpha agent-registry agents list \
  --project=PROJECT_ID \
  --location=REGION \
  --filter="FILTER_EXPRESSION"

Remplacez les éléments suivants :

  • PROJECT_ID : ID du projet.
  • REGION : région du registre.
  • FILTER_EXPRESSION: expression de filtre pour les agents que vous souhaitez filtrer. Par exemple, pour filtrer par nom à afficher, vous pouvez utiliser displayName='DISPLAY_NAME'. Pour filtrer par l' identifiant unique global (URN), vous pouvez utiliser agentId='urn:agent:AGENT_URN'.