Modelos de projeto composáveis
cargo adk new cria um projeto Rust funcional a partir de três escolhas:
- um modelo define a estrutura do agente ou fluxo de trabalho;
- complementos adicionam recursos como sessões, MCP ou telemetria; e
- um padrão corporativo seleciona um modelo e um grupo revisado de complementos para uma estrutura de produto comum.
O CLI instalado é a fonte de autoridade, pois diretórios de modelos personalizados podem estender ou substituir o registro integrado.
cargo adk templates
cargo adk addons
cargo adk new --help
Criar um projeto
# 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 continua sendo um alias para llm. Use o nome explícito llm em novas
documentações e automações.
Modelos integrados
O registro integrado atualmente contém 13 modelos.
| Modelo | O que ele cria | Escolha-o quando |
|---|---|---|
llm | Um LlmAgent conversacional | Um agente pode assumir a solicitação e chamar ferramentas conforme necessário |
tools | Um agente LLM mais exemplos tipados de #[tool] | O primeiro marco útil é uma chamada de ferramenta visível em Rust |
rag | Um agente com um caminho de conhecimento de pesquisa vetorial | As respostas devem usar um documento privado ou uma coleção de conhecimento |
api | Um agente exposto por meio de um HTTP API | Outro aplicativo chamará o agente pela rede |
openai | Um agente LLM configurado para OpenAI | OpenAI é o provedor inicial pretendido |
sequential | Vários agentes executados em uma ordem fixa | Cada etapa depende do trabalho da etapa anterior |
parallel | Especialistas simultâneos com resultados agregados | O trabalho independente pode ser executado ao mesmo tempo |
loop | Execução repetida até que uma condição seja atendida | Um ciclo de revisão, reparo ou refinamento precisa de um loop limitado |
conditional | Roteamento baseado em decisões entre agentes | Diferentes solicitações precisam de diferentes especialistas ou caminhos |
graph | Um fluxo de trabalho ramificado com pontos de verificação | O trabalho precisa ser retomado, ramificado, unido ou sobreviver a uma falha do processo |
realtime | Processamento bidirecional de áudio e vídeo | O produto precisa de uma conversa de voz ao vivo ou multimodal |
custom | Uma implementação manual do trait Agent | O contrato de execução não pode ser expresso por um agente integrado |
agent-engine | Um contêiner BYOC do Gemini Enterprise Agent Engine com Dockerfile e deploy/terraform/ | O agente é implantado no Agent Runtime como um contêiner predefinido |
Escolha primeiro o formato de execução. Adicione sessões, MCP, telemetria ou outros recursos do produto posteriormente, em vez de usá-los para decidir o fluxo de trabalho.
Complementos de recursos
Repita --addon para compor recursos. O gerador resolve seus indicadores de recursos,
importações, fragmentos de inicialização, exemplos de ambiente e arquivos gerados em uma
ordem de prioridade estável.
| Complemento | O que ele adiciona | Motivo típico para usá-lo |
|---|---|---|
telemetry | Configuração de rastreamento do OpenTelemetry | Acompanhar solicitações entre os limites do modelo, do agente e da ferramenta |
auth | Estrutura básica de autenticação com API-key e JWT | Proteger um endpoint de agente implantado |
sessions | Configuração do serviço de estado da sessão | Continue uma conversa ou fluxo de trabalho com o estado armazenado |
memory | Memória semântica e integração com RAG | Recupere conhecimento relevante além da conversa atual |
mcp | Conexão de recursos e ponto de partida do cliente de MCP | Conecte recursos pertencentes a outro processo ou serviço |
guardrails | Hooks de validação de entrada e saída | Aplique regras do produto antes e depois da execução do agente |
eval | Estrutura de suporte para testes de avaliação | Medir o comportamento em relação a casos reproduzíveis antes do lançamento |
browser | Integração de automação de navegador | Permitir que um agente aprovado opere uma interface web |
server | Configuração do servidor Axum HTTP e A2A | Publicar o agente para chamadas remotas |
docker | Arquivos de compilação de contêiner em múltiplos estágios (Dockerfile, Dockerfile.static, .dockerignore) | Empacotar o agente como uma imagem de contêiner mínima |
Exemplo:
cargo adk new order-agent \
--template tools \
--addon mcp \
--addon sessions \
--addon server \
--addon auth \
--addon telemetry
O código de capacidade gerado é um ponto de partida. Substitua os endpoints de espaço reservado, as credenciais, as políticas e os serviços em memória por opções definidas pela implantação antes do lançamento.
Padrões empresariais compostos
Os padrões aparecem no mesmo namespace --template que os templates comuns.
Não há um sinalizador --pattern separado.
| Padrão | Composição | Ponto de partida do produto |
|---|---|---|
multi-agent | sequential + telemetria | Um fluxo de trabalho visível em várias etapas |
production | llm + servidor + autenticação + sessões + telemetria | Um serviço de agente autenticado e observável |
pipeline | sequential + sessões + telemetria | Um pipeline de processamento com estado |
chatbot | llm + sessões + memória + servidor | Um produto HTTP conversacional com capacidade de lembrar |
a2a-server | llm + servidor + sessões | Um agente A2A implantado independentemente |
a2a continua sendo um alias para 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
Seleção de provedor e modelo
Os templates têm um provedor padrão, mas o CLI pode substituí-lo sem alterar a estrutura de execução.
cargo adk new support-agent \
--template tools \
--provider openai \
--model company-approved-model
Use --non-interactive na CI para que escolhas ausentes resultem em falha em vez de abrir um
prompt. Use --json-output quando outro programa precisar do resultado da geração.
Templates personalizados
Passe um diretório de manifestos TOML quando uma organização precisar de um ponto de partida reutilizável além do registro integrado.
cargo adk new finance-agent \
--template company-finance \
--template-dir ./agent-templates
Um template personalizado com o mesmo nome de um template integrado o substitui nessa invocação de CLI. Mantenha os manifestos no controle de versão e teste os projetos gerados na CI.
name = "company-finance"
description = "Company finance agent with approved defaults"
provider = "openai"
features = ["minimal", "tools"]
imports = ["use std::sync::Arc;"]
Verificar o projeto gerado
cd support-agent
cargo adk build
cargo run
cargo adk build compila e valida o projeto gerado sem
implantá-lo. Faça commit do código-fonte gerado, revise os recursos habilitados e os
requisitos de ambiente e mantenha o mesmo comando como uma verificação da CI.
Mantenha a automação atualizada
O conteúdo do registro pode mudar entre as versões. Antes de atualizar a geração automatizada de projetos:
cargo adk templates
cargo adk addons
cargo adk new smoke-agent --template tools --addon mcp --dry-run
Isso verifica nomes e compatibilidade com o binário exato de cargo-adk
instalado no ambiente de compilação.