Descubrir un proyecto AgentCore
El descubrimiento es el pase que todo otro skill confía. Responde con evidencia — un archivo y una línea para cada afirmación — y dice "no resuelto" cuando no puede responder, porque una región incorrecta o un propietario olvidado hace que cada paso posterior sea erróneo: una puerta de enlace generada en Terraform para un recurso que ya posee la CLI de AgentCore peleará en cada despliegue.
${CLAUDE_SKILL_DIR} lo establece el runtime del skill al directorio de este propio
skill. Úsalo textualmente en cada comando a continuación; los scripts de un skill
hermano están en ${CLAUDE_SKILL_DIR}/../<skill>/scripts/.
Flujo
-
Descubrir.
python3 ${CLAUDE_SKILL_DIR}/scripts/discover.py <proyecto>--jsonpara la forma estructurada;--focus agentcore,app,auth,region,terraform,tracingpara acotarlo. Apúntalo a la raíz del repositorio, no a un subdirectorio, para que las llamadas a módulos y las pilas de Terragrunt se resuelvan. -
Informar los bloques
Encontradoen este orden: AgentCore (puertas y recursos), aplicación (framework, servidores MCP, rutas/mcpy la Lambda detrás de ellas), autenticación, región (con la fila de disponibilidad), Terraform (restricción, bloqueo, Terragrunt), trazado. LuegoFaltante, luego hallazgos. -
Opciones. La sección
Opcionesdel informe está ordenada y tiene exactamente una recomendación, cada una con su nivel de costo. Léelas en voz alta; no inventes nuevas. -
Confirmar el siguiente skill con
AskUserQuestion, luego invocarlo conSkill. El descubrimiento nunca escribe. -
No verificar nada: el descubrimiento no tiene efectos secundarios que comprobar. Si el usuario corrige un hecho (una región, un propietario), vuelve a ejecutar con la entrada corregida en lugar de sobrescribir el informe en prosa.
Qué busca
| Pregunta | Evidencia que lee | Detalle |
|---|---|---|
| ¿Hay algo en AgentCore y quién lo posee? | .tf, fuentes CDK, agentcore.json, .bedrock_agentcore.yaml, llamadas boto3 | qué-descubre-el-descubrimiento.md |
| ¿Qué framework y servidor MCP? | imports, decoradores, registerTool, FastMCP | firmas-de-framework.md |
| ¿Qué región y qué se ofrece allí? | bloques provider, valores por defecto de variables, Terragrunt, tfvars | la tabla de regiones en lib/agentcore_skills/data/regions.json |
| ¿Cómo funcionan los tokens hoy? | aws_cognito_*, aws_apigatewayv2_authorizer | qué-descubre-el-descubrimiento.md |
La banda DSC0xx
| Id | Severidad | Disparador |
|---|---|---|
DSC001 | error | nada que leer: sin Terraform, código, contenedor ni manifiesto |
DSC002 | advertencia | no se pudo resolver ninguna región AWS |
DSC003 | advertencia | una configuración del starter toolkit (su CLI ya no tiene soporte) |
DSC004 | advertencia | AgentCore declarado por más de una herramienta (Terraform, CDK, CLI de AgentCore) |
DSC005 | advertencia | un servicio central no se ofrece en la región resuelta |
Reglas de decisión
- El provider sin alias decide la región. Un provider con alias
us_east_1para certificados CloudFront se lista, nunca se elige. - Una ruta que termina en
/mcpes el endpoint MCP. La Lambda detrás de ella se encuentra a través de la integración, no por nombre. - La ausencia es "no encontrado", nunca "no existe". Los patrones no pueden probar una negación en TypeScript; di lo que se buscó.
Scripts
| Comando | Hace | Códigos de salida |
|---|---|---|
scripts/discover.py <proyecto> [--focus ...] [--json] | el inventario e informe de brechas | 0 nada bloqueante, 1 errores, 2 objetivo incorrecto |
Lista de verificación de finalización
-
discover.pyse ejecutó contra la raíz del repositorio y su salida se mostró. - La región, su evidencia y la fila de disponibilidad se indicaron.
- Cada propietario de AgentCore (Terraform, CDK, CLI de AgentCore, toolkit) se nombró, o "ninguno aún".
- La opción recomendada se ofreció con su nivel de costo, y el usuario eligió.