|
|
||
|---|---|---|
| .. | ||
| agentcore | ||
| app | ||
| examples/proxy | ||
| harnesses | ||
| infra/iam | ||
| lambdas/agentcore_proxy | ||
| schemas/tools | ||
| AGENTS.md | ||
| README.md | ||
README.md
Agentes NMP en Bedrock AgentCore
Este proyecto contiene los runtimes NmpOnboardingAgent y
MyAgentAwsInfrastructureAgent, los harnesses de infraestructura y el proxy
Lambda para invocar el agente de onboarding.
Estructura del código
| Directorio | Responsabilidad |
|---|---|
app/NmpOnboardingAgent/ |
Runtime de onboarding: entrada, modelo, cliente MCP y memoria |
app/MyAgentAwsInfrastructureAgent/ |
Runtime de consulta de infraestructura AWS |
harnesses/ |
AwsInfraHarness y AwsInfraRestricted, con sus configuraciones y prompts |
lambdas/agentcore_proxy/ |
Proxy HTTP y documentación de empaquetado |
schemas/tools/ |
Contratos MCP de clientes, KYC, PLD, documentos e infraestructura |
infra/iam/ |
Políticas IAM y documentos de confianza |
examples/proxy/ |
Solicitud y respuesta históricas del proxy |
artifacts/legacy/ |
ZIP original conservado como referencia |
agentcore/ |
Configuración declarativa, estado local y CDK generado |
Cada runtime conserva sus dependencias e imports dentro de su propio directorio
para que el empaquetado CodeZip sea independiente. Las rutas toolSchemaFile,
codeLocation y las entradas de harnesses en agentcore/agentcore.json son
relativas a la raíz de este proyecto. Los nombres de recursos AWS no cambian.
El código de la Lambda de infraestructura está en el componente hermano
nmpAWSInfraestructure.
Validación y uso
Los archivos app/AwsInfraHarness/harness.json y
app/AwsInfraRestricted/harness.json son copias de compatibilidad para el CLI
que busca los harnesses en app/<nombre>/ durante la validación.
La configuración de CDK sigue apuntando a harnesses/; si se modifica un
harness.json, mantener su copia de app/ idéntica antes de desplegar.
Ejecutar desde este directorio, con AgentCore CLI instalado:
agentcore validate
agentcore dev
Para generar el ZIP del proxy, seguir
lambdas/agentcore_proxy/README.md.
Los archivos de artifacts/legacy/ y las respuestas de examples/ son históricos.
Referencia de AgentCore CLI
This project was created with the AgentCore CLI.
Project Structure
my-project/
├── AGENTS.md # AI coding assistant context
├── agentcore/
│ ├── agentcore.json # Project config (agents, memories, credentials, gateways, evaluators)
│ ├── aws-targets.json # Deployment targets (account + region)
│ ├── .env.local # Secrets — API keys (gitignored)
│ ├── .llm-context/ # TypeScript type definitions for AI assistants
│ │ ├── agentcore.ts # AgentCoreProjectSpec types
│ │ └── aws-targets.ts # Deployment target types
│ └── cdk/ # CDK infrastructure (@aws/agentcore-cdk)
├── app/ # Agent runtime application code
├── harnesses/ # Declarative harness configurations
├── lambdas/ # HTTP proxy Lambda
├── schemas/tools/ # Gateway tool contracts
├── infra/iam/ # IAM policies and trust documents
├── examples/ # Historical request/response examples
├── artifacts/legacy/ # Original ZIP packages
└── evaluators/ # Custom evaluator code (if any)
Getting Started
Prerequisites
- Node.js 20.x or later
- Python 3.10+ and uv for Python agents (install uv)
- AWS credentials configured (
aws configureor environment variables) - Docker (only for Container build agents)
Development
Run your agent locally:
agentcore dev
Validate Invocation Input
Validate runtime invocation payloads before forwarding them to an agent framework. Keep user prompts typed as strings and pass only prompt text to the agent.
Deployment
Deploy to AWS:
agentcore deploy
Commands
| Command | Description |
|---|---|
agentcore create |
Create a new AgentCore project |
agentcore add |
Add resources (agent, memory, credential, gateway, evaluator, policy) |
agentcore remove |
Remove resources |
agentcore dev |
Run agent locally with hot-reload |
agentcore deploy |
Deploy to AWS via CDK |
agentcore status |
Show deployment status |
agentcore invoke |
Invoke agent (local or deployed) |
agentcore logs |
View agent logs |
agentcore traces |
View agent traces |
agentcore eval |
Run evaluations |
agentcore package |
Package agent artifacts |
agentcore validate |
Validate configuration |
agentcore pause |
Pause a deployed agent |
agentcore resume |
Resume a paused agent |
agentcore fetch |
Fetch remote resource definitions |
agentcore import |
Import existing resources |
agentcore update |
Check for CLI updates |
Configuration
Edit the JSON files in agentcore/ to configure your project. See agentcore/.llm-context/ for type definitions and validation constraints.
The project uses a flat resource model — agents, memories, credentials, gateways, evaluators, and policies are top-level arrays in agentcore.json. Resources are independent; agents discover memories and credentials at runtime via environment variables or SDK calls.
Resources
| Resource | Purpose |
|---|---|
| Agent (runtime) | HTTP, MCP, or A2A agent deployed to AgentCore Runtime |
| Memory | Persistent context storage with configurable strategies |
| Credential | API key or OAuth credential providers |
| Gateway | MCP gateway that routes tool calls to targets |
| Gateway Target | Tool implementation (Lambda, MCP server, OpenAPI, Smithy, API Gateway) |
| Evaluator | Custom LLM-as-a-Judge or code-based evaluation |
| Online Eval Config | Continuous evaluation pipeline for deployed agents |
| Policy | Cedar authorization policies for gateway tools |
Agent Types
- Template agents: Created from framework templates (Strands, LangChain/LangGraph, GoogleADK, OpenAI Agents, Autogen)
- BYO agents: Bring your own code with
agentcore add agent --type byo - Import agents: Import existing Bedrock agents with
agentcore import
Build Types
- CodeZip: Python source packaged as a zip and deployed directly to AgentCore Runtime
- Container: Docker image built via CodeBuild (ARM64), pushed to ECR, and deployed to AgentCore Runtime