Plantillas de proyecto componibles
cargo adk new crea un proyecto de Rust funcional a partir de tres opciones:
- una plantilla define la estructura del agente o flujo de trabajo;
- los complementos añaden capacidades como sesiones, MCP o telemetría; y
- un patrón empresarial selecciona una plantilla y un grupo revisado de complementos para una estructura de producto común.
El CLI instalado es la fuente de autoridad, ya que los directorios de plantillas personalizadas pueden ampliar o reemplazar el registro integrado.
cargo adk templates
cargo adk addons
cargo adk new --help
Crear un proyecto
# One LLM agent
cargo adk new support-agent --template llm
# A tool-using agent with operating capabilities
cargo adk new support-agent \
--template tools \
--addon sessions \
--addon telemetry \
--addon guardrails
# Preview generated files without writing them
cargo adk new support-agent --template graph --dry-run
basic sigue siendo un alias de llm. Usa el nombre explícito llm en la
documentación y la automatización nuevas.
Plantillas integradas
El registro integrado contiene actualmente 13 plantillas.
| Plantilla | Qué crea | Elígelo cuando |
|---|---|---|
llm | Un LlmAgent conversacional | Un agente puede encargarse de la solicitud y llamar a herramientas según sea necesario |
tools | Un agente LLM más ejemplos #[tool] tipados | El primer hito útil es una llamada visible a una herramienta de Rust |
rag | Un agente con una ruta de conocimiento de búsqueda vectorial | Las respuestas deben utilizar un documento privado o una colección de conocimientos |
api | Un agente expuesto mediante HTTP API | Otra aplicación llamará al agente a través de la red |
openai | Un agente LLM configurado para OpenAI | OpenAI es el proveedor inicial previsto |
sequential | Varios agentes ejecutados en un orden fijo | Cada etapa depende del trabajo de la etapa anterior |
parallel | Especialistas concurrentes con resultados agregados | El trabajo independiente puede ejecutarse al mismo tiempo |
loop | Ejecución repetida hasta que se cumpla una condición | Un ciclo de revisión, reparación o refinamiento necesita un bucle acotado |
conditional | Enrutamiento basado en decisiones entre agentes | Distintas solicitudes necesitan diferentes especialistas o rutas |
graph | Un flujo de trabajo ramificado con puntos de control | El trabajo debe reanudarse, ramificarse, unirse o sobrevivir a un fallo del proceso |
realtime | Gestión bidireccional de audio y vídeo | El producto necesita una conversación de voz en tiempo real o multimodal |
custom | Una implementación manual del trait Agent | El contrato de ejecución no se puede expresar mediante un agente integrado |
agent-engine | Un contenedor BYOC de Gemini Enterprise Agent Engine con Dockerfile y deploy/terraform/ | El agente se implementa en Agent Runtime como un contenedor precompilado |
Elige primero la forma de ejecución. Agrega sesiones, MCP, telemetría u otras capacidades del producto después, en lugar de usarlas para decidir el flujo de trabajo.
Complementos de capacidades
Repite --addon para combinar capacidades. El generador resuelve sus indicadores
de funcionalidades, importaciones, fragmentos de inicialización, ejemplos de
entorno y archivos generados en un orden de prioridad estable.
| Complemento | Lo que añade | Motivo habitual para usarlo |
|---|---|---|
telemetry | Configuración de trazas de OpenTelemetry | Seguir las solicitudes a través de los límites entre el modelo, el agente y la herramienta |
auth | Infraestructura de autenticación para API-key y JWT | Proteger un endpoint de agente implementado |
sessions | Configuración del servicio de estado de sesión | Continuar una conversación o un flujo de trabajo con el estado almacenado |
memory | Memoria semántica e integración con RAG | Recuperar conocimientos relevantes más allá de la conversación actual |
mcp | Conexión de funciones de MCP y punto de partida del cliente | Conectar capacidades propiedad de otro proceso o servicio |
guardrails | Enlaces de validación de entrada y salida | Aplicar las reglas del producto antes y después de la ejecución del agente |
eval | Infraestructura del arnés de evaluación | Medir el comportamiento con respecto a casos reproducibles antes del lanzamiento |
browser | Integración de automatización del navegador | Permitir que un agente aprobado opere una interfaz web |
server | Configuración del servidor Axum HTTP y A2A | Publicar el agente para clientes remotos |
docker | Archivos de compilación de contenedores de varias etapas (Dockerfile, Dockerfile.static, .dockerignore) | Empaquetar el agente como una imagen de contenedor mínima |
Ejemplo:
cargo adk new order-agent \
--template tools \
--addon mcp \
--addon sessions \
--addon server \
--addon auth \
--addon telemetry
El código de capacidades generado es un punto de partida. Reemplace los endpoints de marcador de posición, las credenciales, las políticas y los servicios en memoria por opciones gestionadas por la implementación antes del lanzamiento.
Patrones empresariales compuestos
Los patrones aparecen en el mismo espacio de nombres --template que las plantillas ordinarias.
No hay ningún indicador --pattern independiente.
| Patrón | Composición | Punto de partida del producto |
|---|---|---|
multi-agent | sequential + telemetría | Un flujo de trabajo visible de varias etapas |
production | llm + servidor + autenticación + sesiones + telemetría | Un servicio de agente autenticado y observable |
pipeline | sequential + sesiones + telemetría | Una canalización de procesamiento con estado |
chatbot | llm + sesiones + memoria + servidor | Un producto conversacional HTTP con capacidad de recordar |
a2a-server | llm + servidor + sesiones | Un agente A2A desplegado de forma independiente |
a2a sigue siendo un alias de a2a-server.
cargo adk new operations-agent --template production
cargo adk new research-team --template multi-agent --addon eval
cargo adk new public-specialist --template a2a-server --addon auth
Selección del proveedor y del modelo
Las plantillas tienen un proveedor predeterminado, pero CLI puede anularlo sin cambiar la estructura de ejecución.
cargo adk new support-agent \
--template tools \
--provider openai \
--model company-approved-model
Usa --non-interactive en CI para que las opciones faltantes produzcan un error en lugar de abrir un
indicador. Usa --json-output cuando otro programa necesite el resultado de la generación.
Plantillas personalizadas
Pasa un directorio de manifiestos TOML cuando una organización necesite un punto de partida reutilizable más allá del registro integrado.
cargo adk new finance-agent \
--template company-finance \
--template-dir ./agent-templates
Una plantilla personalizada con el mismo nombre que una integrada la reemplaza para esa invocación de CLI. Mantén los manifiestos bajo control de versiones y prueba los proyectos generados en CI.
name = "company-finance"
description = "Company finance agent with approved defaults"
provider = "openai"
features = ["minimal", "tools"]
imports = ["use std::sync::Arc;"]
Verificar el proyecto generado
cd support-agent
cargo adk build
cargo run
cargo adk build compila y valida el proyecto generado sin implementarlo. Confirma el código fuente
generado, revisa sus características habilitadas y los requisitos del entorno, y conserva
el mismo comando como comprobación de CI.
Mantener actualizada la automatización
El contenido del registro puede cambiar entre versiones. Antes de actualizar la generación automatizada de proyectos:
cargo adk templates
cargo adk addons
cargo adk new smoke-agent --template tools --addon mcp --dry-run
Esto verifica los nombres y la compatibilidad con el binario exacto de cargo-adk
instalado en el entorno de compilación.