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

# Utilizando Variáveis no Super Agentes

> Guia completo para configurar e utilizar variáveis para armazenar e gerenciar informações durante conversas com seus agentes

Este guia explica como configurar e utilizar variáveis no Super Agentes, permitindo que seus agentes armazenem, recuperem e manipulem informações durante as conversas.

## O que são Variáveis?

As variáveis no Super Agentes funcionam como "caixas" que armazenam informações durante a conversa. Elas permitem que você:

* Colete dados dos usuários (nome, e-mail, telefone)
* Armazene informações geradas pelo agente (relatórios, insights)
* Busque dados externos e os mantenha disponíveis durante toda a conversa
* Transfira informações entre diferentes estágios da conversa
* Exporte dados para sistemas externos (planilhas, CRMs)

## Quando Usar Variáveis

As variáveis são especialmente úteis em cenários como:

* **Captura de leads**: Armazenar nome, e-mail e telefone dos usuários
* **Geração de relatórios**: Criar resumos estruturados de conversas
* **Personalização**: Manter informações do usuário para personalizar respostas
* **Integração com sistemas externos**: Preparar dados para exportação
* **Fluxos complexos**: Manter o contexto entre diferentes estágios da conversa

## Configurando Variáveis

### Acessando a Configuração de Variáveis

1. Acesse seu agente no Super Agentes
2. Vá para a aba **Ferramentas**
3. Role para baixo até encontrar **Variáveis** e clique em **Adicionar**

### Criando Variáveis

Na tela de configuração de variáveis, você pode:

1. Clicar em **Adicionar variável** para criar uma nova variável
2. Para cada variável, definir:
   * **Nome da variável**: Como ela será referenciada no prompt (ex: `nome_usuario`)
   * **Descrição da variável**: Explicação sobre o propósito e uso da variável

### Exemplos de Variáveis Comuns

| Nome da Variável | Descrição                                     |
| ---------------- | --------------------------------------------- |
| `nome`           | Nome completo do usuário                      |
| `email`          | Endereço de e-mail do usuário                 |
| `telefone`       | Número de telefone do usuário                 |
| `empresa`        | Nome da empresa do usuário                    |
| `interesse`      | Principal interesse/necessidade do usuário    |
| `relatorio`      | Relatório gerado pelo agente sobre a conversa |

### Usando o Template

Para agilizar a configuração, você pode clicar no botão **Preencher com template**, que adicionará automaticamente variáveis comuns como nome e e-mail.

## Como as Variáveis Funcionam

### Ciclo de Vida das Variáveis

1. **Definição**: Você configura as variáveis que seu agente poderá utilizar
2. **Coleta**: O agente solicita informações ao usuário ou gera dados
3. **Armazenamento**: Os dados são armazenados em Redis com a chave `conversation:{conversationId}:variables`
4. **Recuperação**: O agente pode acessar essas variáveis a qualquer momento durante a conversa
5. **Utilização**: As informações são utilizadas para personalizar respostas ou gerar relatórios

### Persistência das Variáveis

* As variáveis persistem durante toda a conversa
* Elas são mantidas entre diferentes estágios da conversa
* Elas são específicas para cada conversa (não são compartilhadas entre conversas diferentes)

## Utilizando Variáveis nos Prompts

### Referenciando Variáveis

Para utilizar variáveis nas instruções do seu agente, você pode referenciar o nome da variável no prompt:

```
Sempre cumprimente o usuário pelo nome: {{nome}}

Ao final da conversa, envie um e-mail para: {{email}}
```

### Instruções para Coleta de Variáveis

Você pode incluir instruções específicas para a coleta de variáveis:

```
Colete as seguintes informações do usuário:
- Nome completo (variável: nome)
- E-mail (variável: email)
- Telefone (variável: telefone)

Armazene essas informações nas respectivas variáveis.
```

### Exemplo de Uso em Estágios

Você pode configurar estágios específicos para coletar informações:

1. **Estágio de Boas-vindas**: Coleta o nome do usuário
2. **Estágio de Qualificação**: Coleta informações de contato e necessidades
3. **Estágio de Solução**: Utiliza as variáveis coletadas para personalizar a solução

## Casos de Uso Avançados

### Geração de Relatórios

Como mencionado no vídeo, você pode usar variáveis para gerar relatórios estruturados:

```
Crie um relatório detalhado da conversa e armazene na variável 'relatorio' com o seguinte formato:
- Nome do usuário: {{nome}}
- Problema relatado: [resumo do problema]
- Solução oferecida: [resumo da solução]
- Próximos passos: [ações recomendadas]
```

### Integração com Planilhas

Você pode exportar as variáveis para planilhas ou outros sistemas externos:

1. Configure uma integração HTTP com Google Sheets ou similar
2. Utilize as variáveis coletadas como dados para a integração
3. Acione a exportação em momentos específicos da conversa

### Personalização Dinâmica

Use variáveis para personalizar dinamicamente o comportamento do agente:

```
Se a variável {{interesse}} contiver "preço", forneça informações detalhadas sobre planos e valores.
Se a variável {{interesse}} contiver "funcionalidades", foque em demonstrar os recursos do produto.
```

## Exemplo Prático: Agente de CS

Como demonstrado no vídeo, um agente de Customer Success pode:

1. Receber informações de subagentes sobre interações com usuários
2. Armazenar essas informações em variáveis como:
   * `primeiro_nome`: Nome do usuário
   * `experiencia_usuario`: Feedback do usuário sobre a experiência
   * `funcionalidade`: Funcionalidade específica sendo discutida
   * `insight`: Análise gerada pelo agente sobre a interação
3. Compilar essas variáveis em um `relatorio` estruturado
4. Exportar o relatório para uma planilha para análise posterior

## Dicas e Melhores Práticas

### Nomenclatura de Variáveis

* Use nomes descritivos e sem espaços (ex: `nome_completo` em vez de `nome`)
* Mantenha consistência na nomenclatura (ex: sempre use snake\_case ou camelCase)
* Evite nomes genéricos como `var1`, `var2`

### Descrições Claras

* A descrição da variável funciona como uma instrução para o agente
* Seja específico sobre quando e como a variável deve ser coletada
* Inclua exemplos de valores esperados quando relevante

### Segurança e Privacidade

* Não armazene informações sensíveis como senhas ou dados de cartão de crédito
* Informe os usuários sobre quais dados estão sendo coletados
* Considere a conformidade com leis de proteção de dados (LGPD, GDPR)

## Perguntas Frequentes

<AccordionGroup>
  <Accordion title="Existe um limite de variáveis que posso criar?">
    Não há um limite rígido, mas recomendamos manter o número de variáveis gerenciável (geralmente menos de 20) para facilitar a manutenção.
  </Accordion>

  <Accordion title="As variáveis são persistentes entre sessões diferentes?">
    Não, as variáveis são específicas para cada conversa e não são mantidas quando uma nova conversa é iniciada.
  </Accordion>

  <Accordion title="Posso usar variáveis para armazenar arrays ou objetos complexos?">
    As variáveis armazenam valores como strings. Para dados complexos, você pode usar formato JSON serializado como string.
  </Accordion>

  <Accordion title="É possível pré-preencher variáveis com valores padrão?">
    Atualmente não é possível definir valores padrão, mas você pode instruir seu agente a definir valores iniciais no início da conversa.
  </Accordion>

  <Accordion title="Posso usar variáveis em conjunto com outras ferramentas?">
    Sim, as variáveis podem ser usadas em conjunto com outras ferramentas como HTTP, datastores e formulários para criar fluxos complexos.
  </Accordion>
</AccordionGroup>

## Próximos Passos

Após configurar suas variáveis, você pode:

<CardGroup cols={2}>
  <Card title="Configurar Estágios" icon="sitemap" href="/agent/stages/stages">
    Use estágios para controlar quando coletar e utilizar variáveis
  </Card>

  <Card title="Adicionar Subagentes" icon="diagram-project" href="/agent/subagents/subagents">
    Configure subagentes para compartilhar variáveis em fluxos complexos
  </Card>

  <Card title="Integração HTTP" icon="globe" href="/agent/tool/http">
    Exporte variáveis para sistemas externos via integrações HTTP
  </Card>

  <Card title="Google Calendar" icon="calendar" href="/agent/tool/google-calendar">
    Use variáveis para personalizar agendamentos de reuniões
  </Card>
</CardGroup>
