View a markdown version of this page

Habilidades - Base amazónica AgentCore

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Habilidades

https://strandsagents.com/docs/user-guide/concepts/plugins/skills/Las habilidades de agente son paquetes de markdown y scripts que brindan al agente conocimientos sobre el dominio a pedido. Cada habilidad sigue el AgentSkills.io estándar abierto: un SKILL.md archivo con el material preliminar de YAML (nombre, descripción) e instrucciones de marcado, además de directorios opcionalesscripts/. references/ assets/

Las habilidades utilizan la divulgación progresiva: los metadatos se introducen en el sistema de forma inmediata (aproximadamente 100 fichas) y las instrucciones completas se cargan cuando se solicita mediante una herramienta. Esto evita saturar la ventana de contexto con instrucciones que el agente podría no necesitar.

El arnés admite cuatro fuentes de habilidades:

origen Description (Descripción) Cuándo se debe usar

AWS Habilidades

Pre-built habilidades para AWS los servicios del kit de herramientas para AWS agentes. Habilite con patrones globales.

Quieres tener AWS experiencia lista para usar sin tener que configurar nada.

Git (HTTPS)

Clona una habilidad desde cualquier repositorio Git público o privado. Soporta subdirectorios.

Quieres hacer referencia a las habilidades de GitHub GitLab, o de cualquier otro host de git, sin subirlas a S3.

Amazon S3

Obtén una habilidad de un bucket de S3 propiedad del cliente mediante el rol de ejecución.

Quieres tener un control total sobre el control de versiones, el cifrado y el acceso.

Ruta (sistema de archivos)

Haz referencia a una habilidad que ya esté presente en el sistema de archivos del arnés (integrada en la imagen del contenedor o instalada medianteInvokeAgentRuntimeCommand).

La habilidad forma parte de la imagen de tu contenedor o se instaló al iniciar la sesión.

Las habilidades se obtienen una vez por sesión en la primera invocación. Durante una sesión, las habilidades permanecen en el disco durante varias invocaciones. Cuando la máquina virtual caduca y se inicia una nueva sesión, las habilidades se vuelven a recuperar para garantizar la actualización.

Puedes establecer el arnés skills como predeterminado (mediante CreateHarness oUpdateHarness) o anularlo por invocación. Invoke-time las habilidades se añaden después de las habilidades en el momento de la creación; si ambas definen una habilidad con el mismo nombre, gana la versión en el momento de la invocación.

nota

Para añadir una habilidad a un arnés de forma interactiva, corre agentcore para abrir la TUI, selecciona añadir, elige Arnés, avanza a la configuración avanzada y activa las habilidades. A continuación, el asistente le solicitará la fuente de la habilidad. Consulta la pestaña interactiva de Git y Amazon S3 que aparece a continuación para ver los pasos por fuente.

AWS Habilidades

AWS las habilidades son habilidades prediseñadas que permiten a sus agentes interactuar con AWS los servicios. Se organizan jerárquicamente y se seleccionan mediante patrones globales. Vea su fuente en. GitHub

Categoría Patrón Habilidades típicas

Habilidades básicas

core-skills/*

Operaciones de EC2, S3, Lambda, DynamoDB e IAM. CloudWatch

Habilidades analíticas

specialized-skills/analytics-skills/*

Athena, Glue QuickSight, operaciones de lagos de datos.

Habilidades operativas

specialized-skills/operations-skills/*

Solución de problemas, diagnósticos, análisis de registros.

Habilidades de almacenamiento

specialized-skills/storage-skills/*

S3, EFS, FSx, operaciones de respaldo.

Habilite todas AWS Habilidades

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

O en el momento de la invocación:

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

Habilita las habilidades por categoría

Usa patrones globales para habilitar categorías de habilidades específicas:

ejemplo
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/*"]}}]'

Habilita una sola habilidad específica

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."}]}], )

Combina varios patrones

skills=[{"awsSkills": {"paths": ["core-skills/aws-cdk", "core-skills/aws-serverless", "specialized-skills/storage-skills/*"]}}]
nota
  • Las rutas deben ser relativas (sin / interlineamiento o..). Se rechazan las rutas absolutas y las rutas transversales.

  • Si un patrón global no coincide con ninguna habilidad, la invocación falla y se produce un error descriptivo.

  • Se awsSkills fusionan varias entradas de la misma carga útil.

Habilidades de Git (HTTPS)

Clona una habilidad desde cualquier repositorio Git público o privado. Admite subdirectorios dentro de monorepos mediante funciones de pago dispersas.

ejemplo
AWS CLI/boto3

Repositorio público:

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."}]}], )

Repositorio privado (requiere un token de acceso personal almacenado en 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

Adjunta una habilidad de un repositorio público de Git conagentcore add skill. --git-pathUtilízalo para extraer una sola habilidad de un subdirectorio:

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

En el caso de un repositorio privado, --credential introduce el nombre de una credencial de clave de API de tu proyecto que contenga un token de acceso personal (--usernamees opcional y predeterminadooauth2):

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

Elimina una habilidad agentcore remove skill usando las mismas marcas de origen. Para anular las habilidades de una sola llamada sin cambiar el arnés, usa agentcore invoke --skills <sources> (rutas, s3:// URI o URL de Git separadas por comas); la autenticación con https:// Git no es compatible con la anulación de invocaciones.

Interactive

En la TUI, agrega una habilidad de Git a un arnés mediante el asistente Agregar → Arnés.

  1. Ve a la configuración avanzada, ve a Habilidades, pulsa la barra espaciadora para activarla y, a continuación, pulsa Entrar.

    Ajustes avanzados con las Habilidades activadas
  2. Selecciona Git como fuente de habilidades.

    Tipo de fuente de habilidades: Path, S3 o Git
  3. Introduzca la URL del repositorio HTTPS. A continuación, el asistente solicita una ruta de subdirectorio opcional, una credencial opcional para los repositorios privados y un nombre de usuario opcional.

    Introduce la URL del repositorio de Git

Confirme el asistente y, a continuación, ejecútelo agentcore deploy para solicitarlo.

  • url(obligatorio): URL HTTPS del repositorio de Git.

  • path(opcional): subdirectorio del repositorio que contiene la habilidad. Si se omite, se usa la raíz del repositorio.

  • auth.credentialArn(opcional): ARN de un proveedor de credenciales de claves de API que contiene un token de acceso personal para repositorios privados.

  • auth.username(opcional): nombre de usuario de git; el valor predeterminado es. oauth2

La búsqueda de Git debe completarse en 60 segundos. Si el repositorio requiere la salida a Internet, asegúrate de que tu VPC tenga una puerta de enlace NAT (el mismo requisito que los servidores MCP remotos y los extractores de contenedores personalizados).

Conocimientos de Amazon S3

Obtenga una habilidad de un bucket de S3 propiedad del cliente. Usa las credenciales del rol de ejecución del arnés.

ejemplo
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

Adjunte una habilidad de S3 conagentcore add skill --s3:

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

El rol de ejecución necesita s3:GetObject y s3:ListBucket está listo. Consulte Seguridad y controles de acceso.

Interactive

En la TUI, añada una habilidad de S3 a un arnés mediante el asistente Agregar → Arnés. Ve a la configuración avanzada, habilita Skills with Space y elige S3 como fuente (consulta la pestaña Git Interactive para ver los pasos compartidos).

  1. Introduce la URI de S3 del directorio de habilidades.

    Introduzca la URI de S3 de la habilidad

Confirme el asistente y, a continuación, ejecútelo agentcore deploy para solicitarlo.

  • uri(obligatorio): el URI de S3 apunta al directorio de habilidades (p. ej.,s3://bucket/prefix/).

  • El rol de ejecución debe tener s3:GetObject s3:ListBucket permisos en el bucket. Consulte Seguridad y controles de acceso.

  • Cada habilidad de S3 debe tener 1 GB o menos.

  • Las fuentes de S3 funcionan con los puntos de enlace de VPC de S3 (no se requiere una puerta de enlace NAT).

Conocimientos de rutas del sistema de archivos

Haga referencia a una habilidad que ya esté en el sistema de archivos Harness, ya sea integrada en la imagen del contenedor o instalada al iniciar la sesión. InvokeAgentRuntimeCommand

ejemplo
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."}]}], )

Incorpora la imagen del contenedor

Incluye el directorio de habilidades en tu imagen personalizada:

COPY skills/xlsx .agents/skills/xlsx

Instálelo al inicio de la sesión

Úselo InvokeAgentRuntimeCommand antes de la primera invocación del agente:

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"

Combina varias fuentes de habilidades

Los cuatro tipos de fuentes pueden coexistir en una sola carga útil:

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."}]}], )

Gestión de errores

Todos los errores de búsqueda fallan en la invocación con un error descriptivo. Las habilidades nunca se omiten de forma silenciosa.

Failure Mensaje de error

Acceso denegado a S3

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

No se ha encontrado el objeto S3

Skill source not found: s3://…​

El clon de Git falla (red)

Failed to clone skill: could not resolve host

Autenticación de Git denegada

Failed to clone skill: authentication failed

No se encontró la ruta de Git en el repositorio

Skill path 'x' not found in repository

Tiempo de espera de Git (60 segundos)

Failed to clone skill: operation timed out after 60s

La habilidad supera el límite de 1 GB

Skill exceeds 1GB size limit

AWS la trayectoria de habilidad no coincide con nada

AWS skill path 'x' matched no skills

Recorrido de ruta () ..

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

AWS falta el paquete de habilidades

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