> ## Documentation Index
> Fetch the complete documentation index at: https://docs.evo-ai.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Tipos de Agentes

> Conheça todos os tipos de agentes disponíveis na plataforma Evo AI e escolha o ideal para seu caso de uso

## Visão Geral

A plataforma **Evo AI** oferece diferentes tipos de agentes, cada um otimizado para cenários específicos de uso. Desde agentes simples baseados em LLM até workflows complexos com múltiplas etapas, você pode escolher a abordagem que melhor se adapta às suas necessidades.

<Note>
  **Escolha Inteligente**: Cada tipo de agente foi projetado para resolver problemas específicos. Use este guia para identificar qual tipo melhor atende ao seu caso de uso.
</Note>

## Tipos Disponíveis

### Agentes Fundamentais

<CardGroup cols={2}>
  <Card title="LLM Agent" icon="brain" href="/agents/llm">
    **Agente base com LLM**

    Agente fundamental baseado em Large Language Models, ideal para conversas, análises de texto e tarefas que requerem compreensão de linguagem natural.

    **Quando usar:**

    * Conversas inteligentes
    * Análise de texto
    * Geração de conteúdo
    * Tarefas de NLP

    **Características:**

    * Interface de chat
    * Múltiplos modelos LLM
    * Configuração de personalidade
    * Sistema de sub-agentes
  </Card>

  <Card title="A2A Agent" icon="network-wired" href="/agents/a2a">
    **Integração com protocolo A2A**

    Integra agentes externos que implementam o protocolo Agent-to-Agent (A2A) do Google, permitindo interoperabilidade com sistemas externos.

    **Quando usar:**

    * Integração com sistemas legados
    * Agentes especializados externos
    * Microserviços de IA
    * APIs de terceiros

    **Características:**

    * Protocolo JSON-RPC 2.0
    * Comunicação padronizada
    * Health checks automáticos
    * Circuit breakers
  </Card>
</CardGroup>

### Agentes de Orquestração

<CardGroup cols={2}>
  <Card title="Sequential Agent" icon="arrow-right" href="/agents/sequential">
    **Execução sequencial ordenada**

    Executa múltiplos sub-agentes em sequência ordenada, onde cada agente recebe o output do anterior como input.

    **Quando usar:**

    * Pipelines de processamento
    * Workflows lineares
    * Dependências entre etapas
    * Transformação de dados

    **Características:**

    * Execução passo a passo
    * Passagem de dados entre agentes
    * Controle de falhas
    * Logs detalhados
  </Card>

  <Card title="Parallel Agent" icon="arrow-right-arrow-left" href="/agents/parallel">
    **Execução paralela simultânea**

    Executa múltiplos sub-agentes simultaneamente, ideal para tarefas independentes que podem ser processadas em paralelo.

    **Quando usar:**

    * Análises independentes
    * Processamento distribuído
    * Otimização de tempo
    * Tarefas não relacionadas

    **Características:**

    * Execução simultânea
    * Agregação de resultados
    * Controle de concorrência
    * Speedup significativo
  </Card>
</CardGroup>

<CardGroup cols={2}>
  <Card title="Loop Agent" icon="recycle" href="/agents/loop">
    **Execução iterativa com refinamento**

    Executa sub-agentes em loop iterativo, refinando resultados a cada iteração até atingir critérios de convergência.

    **Quando usar:**

    * Refinamento iterativo
    * Otimização de parâmetros
    * Melhoria progressiva
    * Convergência de resultados

    **Características:**

    * Iterações controladas
    * Critérios de parada
    * Monitoramento de convergência
    * Prevenção de loops infinitos
  </Card>

  <Card title="Workflow Agent" icon="sitemap" href="/agents/workflow">
    **Workflows visuais complexos**

    Cria workflows complexos com interface visual usando LangGraph e React Flow, oferecendo máximo controle e flexibilidade.

    **Quando usar:**

    * Lógica de negócio complexa
    * Condições e ramificações
    * Workflows visuais
    * Controle granular

    **Características:**

    * Interface drag-and-drop
    * Múltiplos tipos de nodes
    * Condições e delays
    * Teste integrado
  </Card>
</CardGroup>

### Agentes Especializados

<CardGroup cols={1}>
  <Card title="Task Agent" icon="bullseye" href="/agents/task">
    **Tarefas específicas e estruturadas**

    Inspirado no CrewAI, permite atribuir tarefas específicas a agentes com prompts estruturados e outputs esperados bem definidos.

    **Quando usar:**

    * Tarefas bem definidas
    * Responsabilidade única
    * Output estruturado
    * Especialização de agentes

    **Características:**

    * Uma tarefa por agente
    * Prompt estruturado
    * Expected output definido
    * Validação automática
  </Card>
</CardGroup>

## Comparação Rápida

| Tipo           | Complexidade | Casos de Uso           | Execução           | Configuração     |
| -------------- | ------------ | ---------------------- | ------------------ | ---------------- |
| **LLM Agent**  | Baixa        | Chat, análise de texto | Única              | Simples          |
| **A2A Agent**  | Média        | Integração externa     | Única              | Moderada         |
| **Sequential** | Média        | Pipelines lineares     | Sequencial         | Moderada         |
| **Parallel**   | Média        | Análises independentes | Paralela           | Moderada         |
| **Loop**       | Alta         | Refinamento iterativo  | Iterativa          | Complexa         |
| **Workflow**   | Muito Alta   | Lógica complexa        | Visual/Condicional | Muito Complexa   |
| **Task**       | Baixa-Média  | Tarefas específicas    | Única              | Simples-Moderada |

## Guia de Escolha

### Por Complexidade do Problema

<AccordionGroup>
  <Accordion icon="circle" title="Problemas Simples">
    **Para tarefas diretas e conversas:**

    * **LLM Agent**: Chat, análise de texto, geração de conteúdo
    * **Task Agent**: Tarefas específicas com output estruturado

    **Características:**

    * Configuração rápida
    * Execução direta
    * Ideal para começar
  </Accordion>

  <Accordion icon="circle-half-stroke" title="Problemas Médios">
    **Para processos com múltiplas etapas:**

    * **Sequential Agent**: Quando etapas dependem umas das outras
    * **Parallel Agent**: Quando etapas são independentes
    * **A2A Agent**: Quando precisa integrar sistemas externos

    **Características:**

    * Orquestração de múltiplos agentes
    * Controle de fluxo básico
    * Reutilização de agentes existentes
  </Accordion>

  <Accordion icon="circle-dot" title="Problemas Complexos">
    **Para lógica de negócio sofisticada:**

    * **Loop Agent**: Quando precisa refinar resultados iterativamente
    * **Workflow Agent**: Quando precisa de controle granular e condições

    **Características:**

    * Lógica condicional avançada
    * Controle de fluxo sofisticado
    * Monitoramento detalhado
  </Accordion>
</AccordionGroup>

### Por Padrão de Execução

<AccordionGroup>
  <Accordion icon="play" title="Execução Única">
    **Agentes que executam uma vez:**

    * **LLM Agent**: Resposta direta a uma pergunta
    * **A2A Agent**: Chamada para sistema externo
    * **Task Agent**: Execução de tarefa específica

    **Ideal para:**

    * Consultas pontuais
    * Análises simples
    * Integrações diretas
  </Accordion>

  <Accordion icon="list" title="Execução Sequencial">
    **Agentes que executam em ordem:**

    * **Sequential Agent**: Pipeline com dependências

    **Ideal para:**

    * Transformação de dados
    * Workflows lineares
    * Processamento em etapas
  </Accordion>

  <Accordion icon="layer-group" title="Execução Paralela">
    **Agentes que executam simultaneamente:**

    * **Parallel Agent**: Análises independentes

    **Ideal para:**

    * Otimização de tempo
    * Análises comparativas
    * Processamento distribuído
  </Accordion>

  <Accordion icon="rotate" title="Execução Iterativa">
    **Agentes que executam em loop:**

    * **Loop Agent**: Refinamento progressivo

    **Ideal para:**

    * Otimização de parâmetros
    * Melhoria iterativa
    * Convergência de resultados
  </Accordion>

  <Accordion icon="sitemap" title="Execução Condicional">
    **Agentes com lógica complexa:**

    * **Workflow Agent**: Fluxos com condições e ramificações

    **Ideal para:**

    * Lógica de negócio complexa
    * Decisões condicionais
    * Workflows visuais
  </Accordion>
</AccordionGroup>

## Exemplos de Casos de Uso

### E-commerce

<AccordionGroup>
  <Accordion icon="cart-shopping" title="Análise de Produtos">
    **Cenário:** Análise completa de produtos para otimização

    **Solução recomendada:** **Parallel Agent**

    * Análise de preços (sub-agente especializado)
    * Análise de reviews (sub-agente de sentimento)
    * Análise de especificações (sub-agente técnico)
    * Análise de concorrência (sub-agente de mercado)

    **Por que Parallel?** Análises independentes que podem ser executadas simultaneamente para otimizar tempo.
  </Accordion>

  <Accordion icon="user-check" title="Qualificação de Leads">
    **Cenário:** Pipeline de qualificação de leads de vendas

    **Solução recomendada:** **Sequential Agent**

    * Enriquecimento de dados (dados públicos)
    * Scoring de leads (algoritmo de pontuação)
    * Classificação de prioridade (alta/média/baixa)
    * Roteamento para vendedor (baseado em especialização)

    **Por que Sequential?** Cada etapa depende da anterior para funcionar corretamente.
  </Accordion>
</AccordionGroup>

### Conteúdo e Marketing

<AccordionGroup>
  <Accordion icon="pencil" title="Criação de Conteúdo">
    **Cenário:** Geração de artigo de blog otimizado

    **Solução recomendada:** **Loop Agent**

    * Geração inicial do conteúdo
    * Análise de SEO e otimização
    * Revisão de qualidade e legibilidade
    * Refinamento baseado em feedback

    **Por que Loop?** Melhoria iterativa até atingir qualidade desejada.
  </Accordion>

  <Accordion icon="chart-line" title="Análise de Performance">
    **Cenário:** Relatório de performance de campanhas

    **Solução recomendada:** **Task Agent**

    * Tarefa específica: gerar relatório de métricas
    * Input: dados de campanhas
    * Output: relatório estruturado com insights

    **Por que Task?** Tarefa bem definida com output estruturado específico.
  </Accordion>
</AccordionGroup>

### Atendimento ao Cliente

<AccordionGroup>
  <Accordion icon="headset" title="Suporte Inteligente">
    **Cenário:** Sistema de atendimento com escalação

    **Solução recomendada:** **Workflow Agent**

    * Classificação inicial da solicitação
    * Tentativa de resolução automática
    * Condição: resolvido? → Fim : Escalação
    * Roteamento para agente humano especializado

    **Por que Workflow?** Lógica condicional complexa com múltiplos caminhos.
  </Accordion>

  <Accordion icon="comments" title="Chat Básico">
    **Cenário:** Chat simples para dúvidas frequentes

    **Solução recomendada:** **LLM Agent**

    * Conversa direta com cliente
    * Base de conhecimento integrada
    * Respostas contextuais

    **Por que LLM?** Interação direta e simples, sem necessidade de orquestração.
  </Accordion>
</AccordionGroup>

## Output Keys - Compartilhamento de Estado

<Note>
  **Novidade**: Todos os tipos de agente agora suportam **Output Key** para compartilhamento de estado entre agentes e processos.
</Note>

### O que são Output Keys?

O **Output Key** é um campo disponível em todos os tipos de agente que permite salvar o resultado da execução em uma variável específica no estado compartilhado. Isso facilita a comunicação entre agentes e a construção de sistemas complexos.

<CardGroup cols={2}>
  <Card title="LLM Agent" icon="brain">
    **Salva resposta do modelo**

    A resposta gerada pelo LLM é salva na variável especificada, permitindo que outros agentes acessem o conteúdo gerado.

    ```markdown theme={null}
    Output Key: "resposta_analise"
    → state.resposta_analise
    ```
  </Card>

  <Card title="Task Agent" icon="bullseye">
    **Salva resultado da tarefa**

    O resultado estruturado da tarefa é salvo na variável, permitindo uso em tarefas subsequentes ou workflows.

    ```markdown theme={null}
    Output Key: "dados_processados"
    → state.dados_processados
    ```
  </Card>

  <Card title="A2A Agent" icon="network-wired">
    **Salva resposta externa**

    A resposta do sistema externo via protocolo A2A é salva na variável, permitindo integração com outros agentes.

    ```markdown theme={null}
    Output Key: "resultado_externo"
    → state.resultado_externo
    ```
  </Card>

  <Card title="Workflow Agents" icon="sitemap">
    **Salva resultado do workflow**

    O resultado final do workflow (Sequential, Parallel, Loop, Workflow) é salvo na variável especificada.

    ```markdown theme={null}
    Output Key: "workflow_resultado"
    → state.workflow_resultado
    ```
  </Card>
</CardGroup>

### Como Usar

<AccordionGroup>
  <Accordion icon="gear" title="Configuração">
    **Na interface da plataforma:**

    1. **Configure o Output Key** em qualquer agente
    2. **Use um nome descritivo** em snake\_case
    3. **O resultado é salvo automaticamente** no estado
    4. **Outros agentes acessam** via placeholders `{{output_key_name}}`

    **Exemplo:**

    ```markdown theme={null}
    Agente 1 - Output Key: "analise_inicial"
    Agente 2 - Instructions: "Analise o pedido: {{user_input}} e baseie-se na análise: {{analise_inicial}}"
    ```
  </Accordion>

  <Accordion icon="arrow-right-arrow-left" title="Fluxo de Dados">
    **Como os dados fluem entre agentes:**

    ```markdown theme={null}
    Estado inicial:
    {
      "input_usuario": "Analise este produto"
    }

    Após Agente 1 (output_key: "analise"):
    {
      "input_usuario": "Analise este produto",
      "analise": "Produto de alta qualidade..."
    }

    Após Agente 2 (output_key: "recomendacao"):
    {
      "input_usuario": "Analise este produto",
      "analise": "Produto de alta qualidade...",
      "recomendacao": "Recomendo a compra porque..."
    }
    ```
  </Accordion>

  <Accordion icon="lightbulb" title="Boas Práticas">
    **Dicas para usar Output Keys efetivamente:**

    * **Nomenclatura clara**: Use nomes que descrevem o conteúdo
    * **Snake\_case**: `resultado_analise`, `dados_processados`
    * **Seja específico**: `analise_sentimento_reviews` em vez de `analise`
    * **Documente formato**: Explique estrutura esperada nas instruções
    * **Evite conflitos**: Não use nomes já existentes no estado
    * **Considere hierarquia**: Use prefixos para agrupar dados relacionados
  </Accordion>
</AccordionGroup>

## Gerenciamento de Agentes

### Exportação e Importação

<AccordionGroup>
  <Accordion icon="download" title="Exportando agentes">
    **Funcionalidade de backup e compartilhamento:**

    Na listagem de agentes, você pode **exportar qualquer agente** para um arquivo JSON que contém toda a configuração:

    **O que é exportado:**

    * ✅ **Configurações completas** do agente principal
    * ✅ **Sub-agentes incluídos** automaticamente no mesmo arquivo
    * ✅ **Todas as dependências** e configurações aninhadas
    * ✅ **Estrutura hierárquica** preservada
    * ✅ **Tools e integrações** configuradas

    **Como exportar:**

    1. Na lista de agentes, localize o agente desejado
    2. Clique no **menu de ações** (⋯) do agente
    3. Selecione **"Export"** ou **"Exportar"**
    4. Arquivo JSON será baixado automaticamente

    **Exemplo de estrutura exportada:**

    ```json theme={null}
    {
      "name": "copywriter",
      "description": "Creative writer specialized in innovative copywriting.",
      "role": null,
      "goal": null,
      "type": "llm",
      "model": "openai/gpt-4.1-nano",
      "instruction": "You are a senior copywriter with absolute mastery of persuasion techniques",
      "config": {
        "output_key": "new_copy",
        "tools": null,
        "custom_tools": null,
        "mcp_servers": null,
        "custom_mcp_servers": null,
        "agent_tools": null,
        "sub_agents": null,
        "workflow": null
      },
      "id": "7fd77e46-dfcb-40a2-b71f-d2bac56956ac"
    }
    ```
  </Accordion>

  <Accordion icon="upload" title="Importando agentes">
    **Restaurando configurações completas:**

    **Como importar:**

    1. Na lista de agentes, clique em **"Import Agent"** ou **"Importar Agente"**
    2. **Selecione o arquivo JSON** exportado anteriormente
    3. **Sistema valida** a estrutura e dependências
    4. **Agente principal e sub-agentes** são criados automaticamente
    5. **Configurações aplicadas** exatamente como exportadas

    **Vantagens da importação:**

    * 🚀 **Setup instantâneo** de agentes complexos
    * 🎯 **Replicação exata** de configurações testadas
    * 👥 **Compartilhamento** entre equipes
    * 🔄 **Backup e restore** de configurações
    * 📦 **Migração** entre ambientes

    **Validações automáticas:**

    * Verificação de estrutura JSON
    * Validação de tipos de agente
    * Checagem de dependências
    * Confirmação de modelos disponíveis
    * Verificação de permissões necessárias

    **Casos de uso:**

    ```
    ✅ Backup de agentes críticos
    ✅ Replicação em ambiente de produção
    ✅ Compartilhamento de templates
    ✅ Migração entre organizações
    ✅ Versionamento de configurações
    ```
  </Accordion>
</AccordionGroup>

### Sistema de Pastas

<AccordionGroup>
  <Accordion icon="folder" title="Organizando agentes em pastas">
    **Organização hierárquica:**

    O sistema de pastas permite organizar seus agentes de forma hierárquica e colaborativa:

    **Funcionalidades principais:**

    * 📁 **Organização visual** dos agentes
    * 👥 **Compartilhamento** com outros usuários
    * 🔐 **Controle de permissões** (visualização/edição)
    * 🏷️ **Categorização** por projeto, cliente ou função
    * 🔍 **Busca dentro de pastas** específicas

    <img src="https://mintcdn.com/evoai/aegF-STVJ9LMQ4Va/images/prints/folder01-list.png?fit=max&auto=format&n=aegF-STVJ9LMQ4Va&q=85&s=3f5f40e35c614e56900020d91c6b7542" alt="Lista de Pastas e Agentes" width="941" height="655" data-path="images/prints/folder01-list.png" />

    **Como criar pastas:**

    1. Na tela de agentes, clique em **"New Folder"** ou **"Nova Pasta"**
    2. **Nome da pasta**: Use nome descritivo
    3. **Descrição**: Resumo do conteúdo da pasta
    4. **Configurações de acesso**: Defina quem pode acessar
    5. Clique em **"Create"** para criar

    **Exemplos de organização:**

    ```
    📁 Vendas
    ├── 🤖 lead_qualifier
    ├── 🤖 product_demo
    └── 🤖 closer_specialist

    📁 Suporte Técnico  
    ├── 🤖 troubleshooter
    ├── 🤖 documentation_helper
    └── 🤖 escalation_manager

    📁 Marketing
    ├── 🤖 content_creator
    ├── 🤖 social_media_manager
    └── 🤖 campaign_analyzer
    ```
  </Accordion>

  <Accordion icon="share" title="Compartilhamento de pastas">
    **Colaboração entre usuários:**

    **Como compartilhar uma pasta:**

    1. **Acesse a pasta** que deseja compartilhar
    2. Clique no ícone de **"Share"** ou **"Compartilhar"** (👥)
    3. **Formulário de compartilhamento** será aberto

    <img src="https://mintcdn.com/evoai/aegF-STVJ9LMQ4Va/images/prints/folder02-share.png?fit=max&auto=format&n=aegF-STVJ9LMQ4Va&q=85&s=019f0e3c1e50b5ec15f1568deea04059" alt="Opção de Compartilhar Pasta" width="517" height="303" data-path="images/prints/folder02-share.png" />

    **Configurando permissões:**

    1. **Digite o email** do usuário da Evo AI
    2. **Selecione o nível de acesso:**
       * **👁️ Viewer (Visualizador)**: Pode ver e usar agentes, mas não editar
       * **✏️ Editor**: Pode ver, usar, editar e criar novos agentes na pasta
    3. **Adicione mensagem** opcional explicando o compartilhamento
    4. Clique em **"Share"** para enviar convite

    <img src="https://mintcdn.com/evoai/aegF-STVJ9LMQ4Va/images/prints/folder03-share-form.png?fit=max&auto=format&n=aegF-STVJ9LMQ4Va&q=85&s=17467b09e199f78eed06d738a02426be" alt="Formulário de Compartilhamento" width="1189" height="948" data-path="images/prints/folder03-share-form.png" />

    **Níveis de permissão:**

    **Viewer (Visualizador):**

    ```
    ✅ Ver lista de agentes na pasta
    ✅ Usar agentes em conversas
    ✅ Ver configurações (somente leitura)
    ❌ Editar configurações de agentes
    ❌ Criar novos agentes
    ❌ Deletar agentes
    ❌ Compartilhar pasta com outros
    ```

    **Editor:**

    ```
    ✅ Todas as permissões de Viewer
    ✅ Editar configurações de agentes
    ✅ Criar novos agentes na pasta
    ✅ Deletar agentes (que criou)
    ✅ Mover agentes entre pastas
    ❌ Compartilhar pasta com outros (apenas dono)
    ❌ Deletar a pasta
    ```
  </Accordion>

  <Accordion icon="users" title="Colaboração em equipe">
    **Casos de uso para compartilhamento:**

    **Por departamento:**

    ```
    📁 Pasta "Vendas Empresa ABC"
    Compartilhado com: equipe-vendas@empresa.com
    Permissão: Editor
    Uso: Toda equipe pode criar/editar agentes de vendas
    ```

    **Por projeto:**

    ```
    📁 Pasta "Projeto Cliente XYZ"  
    Compartilhado com: gestor-projeto@empresa.com
    Permissão: Viewer
    Uso: Gestor acompanha agentes do projeto
    ```

    **Por especialidade:**

    ```
    📁 Pasta "Agentes de IA Técnicos"
    Compartilhado com: time-ia@empresa.com
    Permissão: Editor
    Uso: Equipe técnica desenvolve agentes especializados
    ```

    **Para clientes:**

    ```
    📁 Pasta "Agentes Cliente Final"
    Compartilhado com: cliente@empresacliente.com
    Permissão: Viewer
    Uso: Cliente testa agentes desenvolvidos
    ```

    **Vantagens da colaboração:**

    * 🤝 **Trabalho em equipe** facilitado
    * 🔄 **Sincronização automática** de atualizações
    * 📊 **Visibilidade** do trabalho da equipe
    * 🎯 **Especialização** por área/projeto
    * 📈 **Escalabilidade** de desenvolvimento
    * 🔐 **Controle granular** de acesso
  </Accordion>

  <Accordion icon="gear" title="Gerenciamento de acesso">
    **Administrando permissões:**

    **Como dono da pasta, você pode:**

    * ✅ **Ver todos os usuários** com acesso
    * ✅ **Alterar permissões** de qualquer usuário
    * ✅ **Remover acesso** de usuários específicos
    * ✅ **Transferir propriedade** da pasta
    * ✅ **Deletar pasta** (remove acesso de todos)

    **Notificações automáticas:**

    * 📧 **Email de convite** quando pasta é compartilhada
    * 🔔 **Notificação** quando agente é modificado por outro usuário
    * 📊 **Relatório** de atividades na pasta compartilhada

    **Auditoria e controle:**

    * 📝 **Log de atividades** de todos os usuários
    * 👤 **Histórico de modificações** com responsável
    * ⏰ **Timestamps** de todas as ações
    * 🔍 **Rastreabilidade** completa de mudanças

    **Boas práticas:**

    * Use permissão **Viewer** por padrão
    * Conceda **Editor** apenas quando necessário
    * **Documente o propósito** da pasta no nome/descrição
    * **Revise permissões** periodicamente
    * **Remova acesso** de usuários inativos
  </Accordion>
</AccordionGroup>

***

**Dica:** Comece sempre com o tipo mais simples que atende ao seu caso de uso. Você pode evoluir para tipos mais complexos conforme suas necessidades crescem.

## Próximos Passos

<CardGroup cols={2}>
  <Card title="Começar com LLM Agent" icon="brain" href="/agents/llm">
    Ideal para quem está começando - crie seu primeiro agente conversacional
  </Card>

  <Card title="Explorar Workflows" icon="sitemap" href="/agents/workflow">
    Para casos complexos - construa workflows visuais avançados
  </Card>

  <Card title="Protocolo A2A" icon="network-wired" href="/a2a-protocol">
    Entenda o protocolo para integração com sistemas externos
  </Card>

  <Card title="Guia Rápido" icon="rocket" href="/quickstart">
    Configure seu primeiro agente em menos de 2 minutos
  </Card>
</CardGroup>
