View a markdown version of this page

Compétences - Base rocheuse de l'Amazonie AgentCore

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Compétences

https://strandsagents.com/docs/user-guide/concepts/plugins/skills/Les compétences des agents sont des ensembles de markdown et de scripts qui fournissent à l'agent des connaissances sur le domaine à la demande. Chaque compétence suit le AgentSkills.io standard ouvert : un SKILL.md fichier contenant le texte de base YAML (nom, description) et des instructions de démarquage, ainsi que des répertoires facultatifsscripts/. references/ assets/

Les compétences utilisent la divulgation progressive : les métadonnées sont injectées dans l'invite du système dès le départ (environ 100 jetons) et des instructions complètes sont chargées à la demande via un appel d'outil. Cela évite d'inonder la fenêtre contextuelle d'instructions dont l'agent n'a peut-être pas besoin.

Le harnais prend en charge quatre sources de compétences :

Source Description Quand l’utiliser

AWS Compétences

Pre-built compétences pour les AWS services de l'AWS Agent Toolkit. Activez avec des motifs globulaires.

Vous voulez une AWS expertise prête à l'emploi sans aucune configuration.

Git (HTTPS)

Clonez une compétence depuis n'importe quel dépôt Git public ou privé. Supporte les sous-répertoires.

Vous souhaitez référencer des compétences provenant de GitHub GitLab, ou de n'importe quel hôte git sans les télécharger sur S3.

Amazon S3

Récupérez une compétence depuis un compartiment S3 appartenant au client à l'aide du rôle d'exécution.

Vous voulez un contrôle total sur la gestion des versions, le chiffrement et la gouvernance des accès.

Path (système de fichiers)

Faites référence à une compétence déjà présente sur le système de fichiers du harnais (intégrée à l'image du conteneur ou installée viaInvokeAgentRuntimeCommand).

La compétence fait partie de l'image de votre conteneur ou a été installée au début de la session.

Les compétences sont récupérées une fois par session lors de la première invocation. Au cours d'une session, les compétences sont conservées sur le disque lors de plusieurs appels. Lorsque la machine virtuelle expire et qu'une nouvelle session démarre, les compétences sont récupérées à nouveau pour garantir leur fraîcheur.

Vous pouvez skills le définir par défaut sur le harnais (via CreateHarness ouUpdateHarness), ou annuler par invocation. Invoke-time les compétences sont ajoutées après les compétences au moment de la création ; si les deux définissent une compétence portant le même nom, la version au moment de l'invocation l'emporte.

Note

Pour ajouter une compétence à un harnais de manière interactive, lancez agentcore pour ouvrir le TUI, sélectionnez Ajouter, choisissez Harnais, passez aux paramètres avancés et activez Skills. L'assistant demande ensuite la source de compétence. Consultez l'onglet Interactif sous Git et Amazon S3 ci-dessous pour connaître les étapes par source.

AWS Compétences

AWS les compétences sont des compétences prédéfinies qui permettent à vos agents d'interagir avec les AWS services. Ils sont organisés hiérarchiquement et sélectionnés selon des modèles globulaires. Consultez leur source sur GitHub.

Catégorie Modèle Compétences typiques

Compétences de base

core-skills/*

Opérations EC2, S3, Lambda, DynamoDB et IAM. CloudWatch

Compétences analytiques

specialized-skills/analytics-skills/*

Athena, Glue QuickSight, opérations sur les lacs de données.

Compétences opérationnelles

specialized-skills/operations-skills/*

Dépannage, diagnostic, analyse des journaux.

Compétences en matière de stockage

specialized-skills/storage-skills/*

S3, EFS, FSx, opérations de sauvegarde.

Tout activer AWS compétences

Exemple
AWS CLI/boto3
aws bedrock-agentcore-control create-harness \ --harness-name "MyHarness" \ --execution-role-arn "${ROLE_ARN}" \ --skills '[{"awsSkills": {}}]'

Ou au moment de l'invocation :

response = client.invoke_harness( harnessArn=HARNESS_ARN, runtimeSessionId=SESSION_ID, skills=[{"awsSkills": {}}], messages=[{"role": "user", "content": [{"text": "List my EC2 instances and their status."}]}], )

Activez les compétences par catégorie

Utilisez des modèles globaux pour activer des catégories de compétences spécifiques :

Exemple
AWS CLI/boto3
aws bedrock-agentcore-control create-harness \ --harness-name "MyHarness" \ --execution-role-arn "${ROLE_ARN}" \ --skills '[{"awsSkills": {"paths": ["core-skills/*", "specialized-skills/operations-skills/*"]}}]'

Activez une compétence spécifique

response = client.invoke_harness( harnessArn=HARNESS_ARN, runtimeSessionId=SESSION_ID, skills=[{"awsSkills": {"paths": ["core-skills/aws-cdk"]}}], messages=[{"role": "user", "content": [{"text": "Create a CDK stack for a Lambda function."}]}], )

Combinez plusieurs motifs

skills=[{"awsSkills": {"paths": ["core-skills/aws-cdk", "core-skills/aws-serverless", "specialized-skills/storage-skills/*"]}}]
Note
  • Les chemins doivent être relatifs (aucun point de / départ..). Les chemins absolus et la traversée de chemins sont rejetés.

  • Si un schéma global ne correspond à aucune compétence, l'invocation échoue avec une erreur descriptive.

  • awsSkillsLes entrées multiples d'une même charge utile sont fusionnées.

Compétences en matière de Git (HTTPS)

Clonez une compétence depuis n'importe quel dépôt Git public ou privé. Prend en charge les sous-répertoires dans les monorepos à l'aide d'un paiement fragmenté.

Exemple
AWS CLI/boto3

Dépôt public :

response = client.invoke_harness( harnessArn=HARNESS_ARN, runtimeSessionId=SESSION_ID, skills=[ {"git": {"url": "https://github.com/anthropics/skills", "path": "skills/docx"}}, ], messages=[{"role": "user", "content": [{"text": "Summarize the attached DOCX file."}]}], )

Dépôt privé (nécessite un jeton d'accès personnel stocké dans AgentCore Identity) :

skills=[ { "git": { "url": "https://github.com/my-org/internal-skills", "path": "excel", "auth": { "credentialArn": "arn:aws:bedrock-agentcore:us-west-2:123456789012:token-vault/default/apikeycredentialprovider/my-github-pat" }, } } ]
AgentCore CLI

Joignez une compétence provenant d'un dépôt Git public avecagentcore add skill. Utilisez --git-path pour extraire une seule compétence d'un sous-répertoire :

agentcore add skill --harness my-harness \ --git https://github.com/anthropics/skills \ --git-path skills/docx agentcore deploy

Pour un référentiel privé, transmettez --credential le nom d'une clé d'API dans votre projet qui contient un jeton d'accès personnel (--usernamefacultatif, par défautoauth2) :

agentcore add skill --harness my-harness \ --git https://github.com/my-org/internal-skills \ --git-path excel \ --credential my-github-pat agentcore deploy
Note

Supprimez une compétence agentcore remove skill en utilisant les mêmes indicateurs source. Pour modifier les compétences pour un seul appel sans modifier le harnais, utilisez agentcore invoke --skills <sources> (chemins séparés par des virgules, s3:// URI ou URL https:// Git) ; l'authentification Git n'est pas prise en charge lors du remplacement d'invocation.

Interactive

Dans le TUI, ajoutez une compétence Git à un harnais via l'assistant d'ajout → Harnais.

  1. Passez aux paramètres avancés, accédez à Compétences, appuyez sur Espace pour l'activer, puis appuyez sur Entrée.

    Paramètres avancés avec les compétences activées
  2. Sélectionnez Git comme source de compétences.

    Type de source de compétence : Path, S3 ou Git
  3. Entrez l'URL du référentiel HTTPS. L'assistant demande ensuite un chemin de sous-répertoire facultatif, des informations d'identification facultatives pour les référentiels privés et un nom d'utilisateur facultatif.

    Entrez l'URL du dépôt Git

Confirmez l'assistant, puis agentcore deploy lancez-le pour appliquer.

  • url(obligatoire) - URL HTTPS du dépôt Git.

  • path(facultatif) - sous-répertoire du dépôt contenant la compétence. En cas d'omission, la racine du référentiel est utilisée.

  • auth.credentialArn(facultatif) - ARN d'un fournisseur d'informations d'identification de clé d'API détenant un jeton d'accès personnel pour les dépôts privés.

  • auth.username(facultatif) - nom d'utilisateur git, par défaut. oauth2

Git fetch doit être terminé dans les 60 secondes. Si le référentiel nécessite une sortie Internet, assurez-vous que votre VPC dispose d'une passerelle NAT (même exigence que les serveurs MCP distants et les extractions de conteneurs personnalisées).

Compétences relatives à Amazon S3

Récupérez une compétence depuis un compartiment S3 appartenant au client. Utilise les informations d'identification du rôle d'exécution du harnais.

Exemple
AWS CLI/boto3
response = client.invoke_harness( harnessArn=HARNESS_ARN, runtimeSessionId=SESSION_ID, skills=[ {"s3": {"uri": "s3://my-skills-bucket/skills/company-style/"}}, ], messages=[{"role": "user", "content": [{"text": "Draft a summary following our style guide."}]}], )
AgentCore CLI

Associez une compétence de S3 avec agentcore add skill --s3 :

agentcore add skill --harness my-harness \ --s3 s3://my-skills-bucket/skills/company-style/ agentcore deploy

Le rôle d'exécution s3:GetObject requis et s3:ListBucket en cours. Consultez Sécurité et contrôles d'accès.

Interactive

Dans le TUI, ajoutez une compétence S3 à un harnais via l'assistant d'ajout → Harnais. Passez aux paramètres avancés, activez Skills with Space et choisissez S3 comme source (voir l'onglet Git Interactive pour les étapes partagées).

  1. Entrez l'URI S3 du répertoire des compétences.

    Entrez l'URI S3 de la compétence

Confirmez l'assistant, puis agentcore deploy lancez-le pour appliquer.

  • uri(obligatoire) - URI S3 pointant vers le répertoire des compétences (par exemple,s3://bucket/prefix/).

  • Le rôle d'exécution doit disposer d's3:ListBucketautorisations s3:GetObject et d'autorisations sur le bucket. Consultez Sécurité et contrôles d'accès.

  • Chaque compétence S3 doit être inférieure ou égale à 1 Go.

  • Les sources S3 fonctionnent avec les points de terminaison VPC S3 (aucune passerelle NAT n'est requise).

Compétences en matière de chemin de système de fichiers

Faites référence à une compétence déjà présente dans le système de fichiers du harnais, intégrée à l'image du conteneur ou installée au démarrage de la session viaInvokeAgentRuntimeCommand.

Exemple
AWS CLI/boto3
response = client.invoke_harness( harnessArn=HARNESS_ARN, runtimeSessionId=SESSION_ID, skills=[{"path": ".agents/skills/xlsx"}], messages=[{"role": "user", "content": [{"text": "Find errors in the Excel files."}]}], )

Cuire au four dans le contenant (image)

Incluez le répertoire des compétences dans votre image personnalisée :

COPY skills/xlsx .agents/skills/xlsx

Installation au début de la session

À utiliser InvokeAgentRuntimeCommand avant la première invocation de l'agent :

agentcore invoke --exec --harness my-agent --session-id "$SESSION" \ "git clone --depth 1 https://github.com/anthropics/skills /tmp/skills && cp -r /tmp/skills/skills/xlsx .agents/skills/xlsx"

Combinez plusieurs sources de compétences

Les quatre types de sources peuvent coexister dans une seule charge utile :

response = client.invoke_harness( harnessArn=HARNESS_ARN, runtimeSessionId=SESSION_ID, skills=[ {"awsSkills": {"paths": ["core-skills/aws-cdk"]}}, {"git": {"url": "https://github.com/anthropics/skills", "path": "skills/docx"}}, {"s3": {"uri": "s3://my-bucket/skills/company-style/"}}, {"path": ".agents/skills/xlsx"}, ], messages=[{"role": "user", "content": [{"text": "Help me with this project."}]}], )

Gestion des erreurs

Tous les échecs de récupération échouent à l'invocation avec une erreur descriptive. Les compétences ne sont jamais ignorées en silence.

Échec Message d’erreur

Accès S3 refusé

Failed to fetch skill: AccessDeniedException. Ensure execution role has s3:GetObject permission.

Objet S3 introuvable

Skill source not found: s3://…​

Le clone de Git échoue (réseau)

Failed to clone skill: could not resolve host

Authentification Git refusée

Failed to clone skill: authentication failed

Le chemin Git n'a pas été trouvé dans le dépôt

Skill path 'x' not found in repository

Délai d'expiration de Git (60 s)

Failed to clone skill: operation timed out after 60s

La compétence dépasse la limite de 1 Go

Skill exceeds 1GB size limit

AWS le parcours de compétence ne correspond à rien

AWS skill path 'x' matched no skills

Traversée de chemin () ..

Invalid AWS skill path: must be a relative path without '..'

AWS ensemble de compétences manquant

AWS Skills are not available in this runtime (missing directory: /opt/amazon/skills)