IA Vendedora
Conectar mensagens, conhecimento e estado de atendimento.
A revisão confirma rotas, recuperação de contexto e agendamento no código. Não foram enviadas mensagens a clientes nem medidos ganhos comerciais. O relato não substitui um teste ponta a ponta.
Problema e proposta
IA Vendedora explora um assistente de atendimento que combina mensagens, documentos e estado da conversa. O desafio é integrar o canal externo com contexto persistido e respostas estruturadas, em vez de chamar um modelo sem histórico.
O projeto é experimental. Os fluxos de vendas e acompanhamento demonstram integração técnica; a página não apresenta conversões, receitas ou eficácia comercial não medidas.
API, webhooks e responsabilidades
Express organiza rotas de WhatsApp e dashboard, controllers, persistência e módulos de IA. O webhook recebe eventos do canal; envio de mensagens e consulta de conversas são operações distintas. Middlewares participam de validação, logging e rate limiting.
O corpo bruto do webhook é preservado para checagem de assinatura. A implementação deve ser avaliada contra o contrato efetivo do provedor: a existência de HMAC no código não comprova compatibilidade completa ou segurança auditada.
PDFs, chunks e recuperação de contexto
O módulo de conhecimento extrai texto de PDFs e cria chunks sobrepostos. Gemini gera embeddings; a integração de persistência organiza os trechos para consulta por similaridade. Isso separa preparação documental e uso do contexto em uma interação.
Durante o processamento, um embedding da mensagem alimenta buscas no histórico da conversa e na base documental. Os resultados compõem contexto do prompt. Esse caminho de recuperação é diferente do envio direto de chunks usado atualmente pelo StratHUB.
Memória e resposta estruturada
A preparação do prompt combina estágio do atendimento, histórico recente, conhecimento recuperado e memória de longo prazo do lead. O código extrai informações relevantes para atualizar esse estado e interpreta a resposta do modelo.
A saída estruturada facilita separar texto enviado ao usuário e sinais de acompanhamento. Memória e instruções exigem avaliação de privacidade, retenção e resistência a entradas adversas; armazenar contexto não torna toda resposta correta.
Persistência, conversas e dashboard
A integração Supabase mantém conversas, mensagens, estados e análises. Controllers consultam o histórico e permitem encerrar uma conversa. O dashboard agrega dados de funil, engajamento, objeções e tempo de atendimento.
Essas rotas tornam o fluxo inspecionável, mas sua presença não comprova um histórico real de vendas. A página descreve entidades e cálculos implementados sem reproduzir conversas, dados de leads ou configurações privadas.
Agendamento e controle do ciclo
FollowUpManager e FollowUpScheduler organizam verificações periódicas e ações de acompanhamento. node-cron controla a recorrência; start e stop delimitam o ciclo do agendador. O acompanhamento depende do estado persistido da conversa.
Uma implantação com múltiplas instâncias precisaria coordenar execução e deduplicação para não enviar a mesma ação várias vezes. Cotas, consentimento e política do canal devem integrar o desenho operacional.
Falhas, dependências e verificação
O processamento trata falhas de recuperação de contexto e pode continuar sem vectorContext. Essa degradação mantém um caminho de resposta, mas precisa ser visível ao operador para não parecer uso garantido de documentos.
O repositório contém scripts de teste e diagnóstico de integrações. A revisão inspecionou caminhos e contratos sem enviar mensagens, consumir modelos pagos ou validar taxas de acerto do assistente.
Competências e evolução
O projeto demonstra Node.js, APIs, webhooks, embeddings, componentes de RAG, memória, persistência e agendamento. Seu valor está em conectar várias dependências a um fluxo de atendimento com estado.
Os próximos passos são reforçar autorização das rotas, validação de assinaturas, avaliação das respostas e coordenação do scheduler. Este é um resumo autorizado de projeto privado, sem código ou dados internos.
Repositórios privados. Resumos autorizados; o código-fonte não é distribuído aqui.