📚 Documentação Completa
Entenda como funciona a GeniAI Code Platform
🎯 O que é a GeniAI Code Platform?
A GeniAI Code Platform é uma plataforma de agentes de IA inteligentes para atendimento automatizado via WhatsApp. Ela conecta sua conta do Chatwoot com modelos de IA da OpenAI (GPT-4o) para criar atendentes virtuais personalizados.
✨ Principais Recursos:
- Agentes Personalizados: Crie atendentes com personalidade, tom e conhecimento específicos
- Integração WhatsApp: Via Chatwoot (suporta WhatsApp Business API ou Evolution API)
- IA Avançada: Powered by GPT-4o da OpenAI
- Multi-Agente: Sistema de especialistas que se alternam automaticamente
- Histórico de Conversas: Mantém contexto e memória das interações
🏗️ Como Funciona a Arquitetura?
🔄 Fluxo Detalhado:
- Cliente envia mensagem via WhatsApp
- Chatwoot recebe a mensagem e cria/atualiza a conversa
- Webhook dispara e envia os dados para a GeniAI Platform
- Platform identifica qual agente deve responder (via token do webhook)
- Busca o histórico da conversa no banco de dados (contexto)
- Envia para OpenAI o system prompt + histórico + nova mensagem
- OpenAI gera resposta inteligente e contextualizada
- Resposta é enviada de volta ao Chatwoot via API
- Histórico é salvo no banco para manter contexto
- Cliente recebe a resposta no WhatsApp
🤖 Tipos de Agente
🎯 1. Agente Simples
Como funciona:
- Você cria 1 agente com um system prompt específico
- Todas as mensagens são processadas por esse agente
- O agente mantém contexto da conversa (histórico)
- Ideal para: SAC geral, suporte técnico, cobrança, agendamentos
Exemplo de System Prompt:
Você é Ana, atendente do SAC do Cartão de Todos.
Sua função:
- Ajudar clientes com dúvidas sobre cartão, faturas e pagamentos
- Ser empática, educada e humanizada
- Resolver problemas de forma prática
Regras:
- Sempre se apresente como Ana
- Use linguagem simples e clara
- Não invente informações
- Mantenha tom profissional mas amigável
- Atendimento focado em um tema específico
- Não precisa de especialização por área
- Configuração rápida e simples
🔀 2. Multi-Agente (Orquestrador)
Como funciona:
- Você cria 1 agente orquestrador (gerente) + vários sub-agentes (especialistas)
- O orquestrador analisa a mensagem e identifica a intenção do cliente
- Roteia automaticamente para o sub-agente especializado correto
- Os sub-agentes têm prompts específicos para suas áreas
- Ideal para: Onboarding, suporte multi-departamento, vendas complexas
Estrutura:
├─ System Prompt: "Você analisa a mensagem e decide qual especialista deve responder"
├─ Função: Roteamento inteligente
└─ Sub-agentes disponíveis:
🤖 Sub-Agente 1: Boas-vindas
├─ Descrição: "Recepciona novos clientes e dá boas-vindas"
└─ Quando ativar: Cliente novo, saudações, primeira interação
🤖 Sub-Agente 2: Cadastro
├─ Descrição: "Coleta dados cadastrais do cliente"
└─ Quando ativar: Cliente quer se cadastrar, preencher formulário
🤖 Sub-Agente 3: Pagamento
├─ Descrição: "Auxilia com pagamentos e negociações"
└─ Quando ativar: Cliente quer pagar, parcelar, negociar dívida
🤖 Sub-Agente 4: Suporte
├─ Descrição: "Resolve problemas técnicos e dúvidas"
└─ Quando ativar: Cliente tem problema, dúvida técnica, reclamação
🔍 Como o Orquestrador Decide?
A mágica acontece via OpenAI Function Calling:
- O orquestrador recebe a mensagem do cliente
- A OpenAI analisa a mensagem junto com as descrições dos sub-agentes
- A IA decide qual sub-agente é mais adequado para responder
- O sistema executa automaticamente o sub-agente escolhido
- O sub-agente gera a resposta com seu prompt especializado
- Cliente: "Oi, quero parcelar minha dívida"
- Orquestrador analisa: Intenção = negociação de pagamento
- Decisão: Roteia para Sub-Agente "Pagamento"
- Sub-Agente Pagamento responde: "Olá! Vou te ajudar com o parcelamento..."
- Criar o agente orquestrador no formulário (tipo: Multi-Agente)
- Depois, criar os sub-agentes direto no banco de dados (via Supabase)
- Os sub-agentes devem ter o campo
parent_agent_idapontando para o orquestrador
GUIA-MULTI-AGENTE.md no projeto para ver os SQLs.
🚀 Passo a Passo: Criar Seu Primeiro Agente
1️⃣ Configurar Chatwoot
- Tenha uma instância do Chatwoot funcionando
- Configure uma Inbox de WhatsApp (via Evolution API ou WhatsApp Business API)
- Anote:
- Access Token: Profile Settings → Access Token
- Account ID: Veja na URL:
app.chatwoot.com/app/accounts/1/dashboard - Inbox ID: Settings → Inboxes → Sua Inbox → URL:
.../inboxes/5/settings
2️⃣ Criar Agente na Platform
- Acesse Criar Agente
- Escolha o tipo:
- Agente Simples: Para atendimento direto
- Multi-Agente: Para sistema de especialistas
- Preencha os campos:
- Nome Técnico: ID único (ex:
sac-financeiro) - Nome de Exibição: Nome amigável (ex: "Ana - SAC Financeiro")
- System Prompt: Instruções detalhadas para a IA (seja específico!)
- Dados do Chatwoot: Token, Account ID, Inbox ID
- Nome Técnico: ID único (ex:
- Clique em Criar Agente
3️⃣ Configurar Webhook no Chatwoot
- Após criar o agente, copie a Webhook URL gerada
- Acesse o Chatwoot: Settings → Inboxes → Sua Inbox → Settings
- Cole a URL no campo Webhook URL
- Salve
4️⃣ Testar
- Envie uma mensagem para o número do WhatsApp conectado
- A mensagem vai aparecer no Chatwoot
- O webhook dispara automaticamente
- O agente processa e responde
- Você recebe a resposta no WhatsApp!
❓ Perguntas Frequentes
Q: Posso ter múltiplos agentes?
R: Sim! Você pode criar quantos agentes quiser. Cada agente terá seu próprio webhook URL. Para usar múltiplos agentes, você pode criar múltiplas Inboxes no Chatwoot (um número para cada) ou usar o sistema Multi-Agente.
Q: Como o agente mantém contexto da conversa?
R: Todo histórico de mensagens é salvo no banco de dados (Supabase) na tabela conversations.
A cada nova mensagem, o sistema busca o histórico e envia junto para a OpenAI, permitindo que a IA "lembre" da conversa anterior.
Q: Quanto custa usar a plataforma?
R: A plataforma em si é self-hosted (você hospeda). Os custos são:
- OpenAI API: ~$0.01 por 1000 tokens (GPT-4o)
- Chatwoot: Gratuito (self-hosted) ou pago (cloud)
- WhatsApp: Custos da Meta ou Evolution API (gratuito)
Q: Posso usar outros modelos de IA?
R: Atualmente a plataforma está configurada para GPT-4o da OpenAI.
Para usar outros modelos, você precisa modificar o código em src/services/openai.service.js.
Q: Como faço para criar sub-agentes no Multi-Agente?
R: Os sub-agentes precisam ser criados diretamente no banco de dados (Supabase) na tabela sub_agents.
Consulte o arquivo GUIA-MULTI-AGENTE.md no projeto para ver os comandos SQL prontos.
Q: O agente funciona 24/7?
R: Sim! Desde que o servidor esteja rodando (via systemd service), o agente responde automaticamente a qualquer hora do dia ou da noite.
Q: Posso desativar um agente temporariamente?
R: Sim! Basta mudar o status do agente no banco de dados para inactive.
Quando inativo, o webhook ainda recebe as mensagens, mas o agente não processa nem responde.
🛠️ Tecnologias Utilizadas
- Backend: Node.js + Express
- IA: OpenAI GPT-4o (via API)
- Banco de Dados: Supabase (PostgreSQL)
- WhatsApp: Chatwoot + Evolution API / WhatsApp Business API
- Frontend: HTML, CSS, JavaScript (Vanilla)
- Servidor: Nginx (reverse proxy) + Systemd
🆘 Precisa de Ajuda?
Se você encontrar problemas ou tiver dúvidas:
- 📖 Consulte o arquivo
GUIA-MULTI-AGENTE.mdno projeto - 🔍 Verifique os logs do sistema:
journalctl -u geniai-platform -f - 🗄️ Acesse o banco de dados via Supabase Dashboard
- 💬 Entre em contato com o suporte técnico