Automação de Email — Construtor de Seção Administrativa
Construa um sistema de automação de email de classe mundial dentro do painel administrativo existente do usuário. Ele observa o comportamento do usuário, inscreve pessoas na sequência de ciclo de vida correta e envia emails de lembrete pessoais, um de cada vez, através da conexão de email já configurada do aplicativo — baseado em temporização de funil comprovada, não em disparos em massa.
Objetivo: aumentar o retorno, a compra e a retenção de usuários — sem spammar ninguém e sem quebrar nada que já funciona.
Leia isto primeiro: este skill é não disruptivo por design. Ele estuda o aplicativo antes de tocá-lo, adiciona apenas novas tabelas/rotas (nunca reescreve fluxos existentes), reutiliza a conexão de email do aplicativo e é enviado pausado. Nada é enviado até que um administrador o ative explicitamente.
O fluxo de trabalho
0. Descoberta ─▶ 1. Design ─▶ 2. Construção ─▶ 3. Conexão de eventos ─▶ 4. IU Administrativa ─▶ 5. Verificação ─▶ 6. Entrega
estude o modelo de dados novas tabelas/ gatilhos → painel + teste seco + pausada +
aplicativo + + sequências worker/cron inscrições tabelas + pré-visualização "ativar?"
administrador estatísticas
0. Descoberta (obrigatório, antes de qualquer código)
Estude o aplicativo minuciosamente e produza um breve plano de integração. Veja references/discovery.md.
- Detecte a stack, framework, ORM/BD, autenticação, sessões, o painel administrativo (ou observe sua ausência).
- Encontre a conexão de email existente (SMTP/SDK do provedor) — reutilize-a; nunca adicione uma segunda.
- Mapeie produtos, carrinho/checkout, pedidos, usuários e os eventos necessários.
- Entenda o propósito e modelo de negócio da plataforma (e-commerce, SaaS, fintech, reservas, …), seu evento de ativação e suas etapas críticas de conta — então proponha sequências de lembrete extras que se encaixem (verificação de email, conclusão de perfil, onboarding, KYC, faturamento/teste, reserva, renovação…).
- Se não houver painel administrativo, pergunte ao usuário se deseja criar um mínimo.
1. Design
- Defina o modelo de dados (
examples/data-model.md): sequências, etapas, inscrições, emails agendados, registro de envio, configurações, supressões. - Escolha o conjunto de sequências e temporizações (
references/sequences.md).
2. Construção (apenas aditivo)
- Adicione novas tabelas/coleções, um job de agendamento e o worker de envio. Não modifique tabelas existentes.
- Adicione um interruptor mestre / pausa (desligado por padrão) e um interruptor de desligamento global.
3. Conexão de eventos
- Engate os eventos existentes do aplicativo (registro, login, adição ao carrinho, início de checkout, compra, inatividade) na inscrição — sem alterar seu comportamento (observe, não intercepte).
4. IU Administrativa
- Adicione um menu de nível superior "Automação de Email" com abas: Sequências · Destinatários · Estatísticas · Configurações. Veja
references/admin-ui.md. - Adicione tabelas somente para administradores de compras/carrinhos abandonados no final das páginas de produto e checkout.
5. Verificação
- Modo de teste seco, uma ferramenta de pré-visualização/envio de teste, verificações de idempotência e uma auditoria de condições de parada.
6. Entrega
- O sistema é enviado pausado. Notifique o administrador, mostre um "Ativar" com um clique (ou deixe o agente ajudar) e documente a reversão.
O catálogo de sequências (temporização de funil comprovada)
Detalhes completos, intenção do texto e condições de parada: references/sequences.md. Resumo:
| # | Sequência | Gatilho | Temporização (padrão) | Para quando |
|---|---|---|---|---|
| 1 | Boas-vindas / ativar | Registro | 0h boas-vindas → 24h valor → 72h prova social | Login / compra |
| 2 | Registrado, nunca fez login | Registrado + sem login | 1h → 24h → 72h | Login |
| 3 | Logado, sem compra/uso | Logado, inativo | 1h lembrete → 24h → 5d | Compra / ativação |
| 4 | Carrinho / checkout / produto abandonado | Carrinho ou checkout ou visualização de produto, sem compra | 1h lembrete (sem desconto) → 24h prova social/objeção → 48–72h urgência + desconto | Compra |
| 5 | Avaliação pós-compra | Compra (ciente do tipo de produto) | Próximo dia "como está sendo?" → 2 semanas "experiência + upsell" | Avaliação / cancelar inscrição |
| 6 | Upsell / venda cruzada | Compra, outros produtos existem | Após momento de valor (3–7 dias) | Compra do item promovido |
| 7 | Reconquista / reengajamento | Inativo 30 / 60 / 90 dias | Neutro → valor → final "vamos parar" | Atividade / cancelar inscrição |
| 8 | Reabastecimento | Produto consumível | ~Dia 45–60 | Recompra |
Descontos: upsells podem carregar um desconto; carrinhos abandonados carregam urgência + desconto. Padrão 0% — quando 0, o email não deve mencionar desconto algum. Um guarda de carrinho mínimo pula o incentivo em carrinhos de valor muito baixo. (references/sequences.md.)
Precedência: um usuário está em no máximo uma sequência promocional — compra > carrinho > navegação > boas-vindas > sem-login > inativo > reconquista. Sequências extras: abandono de navegação, volta ao estoque, queda de preço, cobrança, indicação. Veja references/sequences.md.
Mais sequências derivadas da plataforma descobertas a partir do propósito do aplicativo — por exemplo, verificação de email, conclusão de perfil, configuração de onboarding, KYC, faturamento/fim de teste, lembretes de reserva, renovações. Adicione apenas aquelas que a plataforma pode detectar e nas quais pode agir (references/sequences.md).
Regras inegociáveis
- Estude antes de construir. Nunca modifique fluxos existentes de autenticação, carrinho, checkout, pedido ou usuário. Adicione apenas novas tabelas/rotas.
- Reutilize a conexão de email existente. Sem segunda configuração de SMTP/provedor. Sem envio em massa — os emails são por usuário e orientados a eventos.
- Enviado pausado. Interruptor mestre DESLIGADO; o administrador é notificado para ativá-lo (o agente pode se oferecer para ajudar).
- Sem spam. Limites de frequência (padrão ≤1 email de marketing/usuário/24h, ≤4/semana), horários de silêncio e uma lista de supressão global (cancelaram inscrição, rejeitaram, reclamaram). Respeite interesse + consentimento.
- Condições de parada sempre vencem. Refaça a verificação da meta (compra/login/ativação) antes de cada envio para que compradores não recebam lembretes de carrinho.
- Texto pessoal, um para um. "De" uma pessoa real (
Nome da Marca), redigido pessoalmente, referenciando o produto real, uma CTA clara e um link "contatar administrador" em cada email. - Entregabilidade + conformidade legal. SPF/DKIM/DMARC, domínio de envio com marca, HTML + texto simples, cancelamento de inscrição + endereço físico, sem palavras-gatilho de spam. Veja
references/sending-and-compliance.md. - Tudo auditável. Cada envio é registrado (quem, qual sequência/etapa, quando, por que) e cada email agendado é visível no administrativo.
- Beleza + integração. Combine os tokens de design do aplicativo; a seção administrativa deve parecer nativa. Use o rigor
reviews-to-features: hierarquia clara, alvos de 44px, contraste acessível. - Editor WYSIWYG gratuito para corpos de email. O administrador edita cada template de email em um editor WYSIWYG gratuito e auto-hospedado (TinyMCE Community; ou Quill / TipTap / Summernote / GrapesJS). A saída deve ser segura para email (CSS inline, tabelas, ~600px, sem JS), sanitizada, com tokens de mesclagem, um bloco de desconto condicional e uma versão em texto simples gerada automaticamente.
Contrato de não disrupção (aplicado)
"Não disruptivo" é verificado, não assumido. Lista de verificação completa: references/non-disruption.md. Mínimo:
- Faça backup do BD antes de migrar; as migrações são aditivas + reversíveis (sem alterar tabelas existentes).
- Os ganchos são apenas de observação e envolvidos em
try/catch— um observador com falha nunca quebra registro/login/checkout/pagamento. - Enviado pausado com um interruptor de desligamento global; reutilize a conexão de email existente.
- Teste de fumaça em todos os cinco fluxos principais após a instalação; execute um exercício de reversão (desabilitar → remover tabelas → confirmar que não foi tocado).
Superfície administrativa (o que o administrador obtém)
- Layout calmo e descomplicado — ≤4 abas, uma ação primária por visualização, detalhes em uma gaveta, ações secundárias/destrutivas em um menu de estouro (
⋯), configurações avançadas recolhidas, banners de saúde apenas quando necessário. - Banners de saúde no topo de cada aba (apenas quando houver um problema): nenhum transporte de email configurado, agendador/cron não está rodando (com um porquê detalhado + como corrigir) e automação pausada. Veja
references/health-checks.md. - Menu Automação de Email (nível superior), com abas:
- Sequências — Iniciar / Pausar / Excluir por sequência (excluir é confirmado + com exclusão lógica/restaurável, escondido em
⋯), atrasos, descontos, condições de parada, um editor WYSIWYG gratuito e adicionar / reordenar / excluir etapas. - Usuários e destinatários — pesquise um usuário por email; expanda sua sequência de emails com a seta para baixo; cancele um email específico ou exclua o usuário completamente; mais o registro completo de envio paginado por 100 com quando e por que.
- Estatísticas — de usuários que receberam um lembrete, quantos converteram, receita, gráfico por dia / semana / mês.
- Configurações — remetente (de-nome/de-email/responder-para/endereço físico), pausa mestre, limites, horários de silêncio.
- Sequências — Iniciar / Pausar / Excluir por sequência (excluir é confirmado + com exclusão lógica/restaurável, escondido em
- Tabelas somente para administradores no final das páginas de produto e checkout:
- Abas Comprados / Abandonados — claramente marcadas "Somente administradores".
- Colunas: email (→ painel do usuário), data/hora de registro/login/abandono, valor que teriam pago, telefone (→
tel:ligação) e uma seta revelando emails recebidos + agendados que leva ao painel do usuário para cancelar/excluir. - Desabilitável em Automação de Email → Configurações, com instruções abaixo do título da tabela + link.
Especificação completa da IU: references/admin-ui.md.
Quando NÃO usar
- Nenhuma base de consentimento legal para email de marketing (ofereça um fluxo de consentimento primeiro).
- Bases de usuários muito pequenas onde o ruído da automação supera o valor — envie manualmente.
- Produtos onde o email não é o canal (SMS/notificação primeiro) — adapte o motor, não force o email.
- Contextos regulados (saúde/finanças) que exigem revisão mais rigorosa — obtenha aprovação do texto e dos fluxos de dados.
- Necessidades transacionais de alta segurança — nunca roteie recibos/emails de segurança através deste sistema.
Entregáveis que o agente produz
references/discovery.md→ um plano de integração para o aplicativo específico, incluindo uma lista de sequências proposta derivada do propósito da plataforma.- Novas tabelas/migrações + o agendador + worker de envio (aditivo).
- Os ganchos de evento (somente observação).
- A página administrativa "Automação de Email" + abas + gráfico de estatísticas, incluindo um editor WYSIWYG gratuito, adicionar / reordenar / excluir etapas, uma pesquisa de usuário + cancelar/excluir por email e avisos de saúde (pausado, cron não rodando, nenhum transporte de email).
- As tabelas somente para administradores de compras/carrinhos abandonados.
- Uma ferramenta de pré-visualização/envio de teste + teste seco + notas de reversão.
- Um breve documento de entrega: o que foi adicionado, como ativar, como pausar, como reverter.
Referências
references/discovery.md— estude o aplicativo, encontre o administrador, escolha um caminho de integração.references/non-disruption.md— o contrato de não disrupção aplicado (backup, migrações reversíveis, isolamento de ganchos, teste de fumaça, exercício de reversão).references/triggers.md— regras exatas de detecção para cada gatilho (carrinho abandonado, inatividade, etc.).references/sequences.md— o catálogo completo de sequências, precedência, temporização, intenção do texto, condições de parada.references/email-copy.md— padrões de texto pessoal "de uma pessoa", linhas de assunto, templates.references/sending-and-compliance.md— agendador, idempotência, limites, pré-verificação de entregabilidade.references/compliance.md— consentimento, cancelamento de inscrição assinado, centro de preferências, webhooks de rejeição/reclamação.references/admin-ui.md— o painel, aba de usuários (pesquisar/cancelar/excluir), registro (100/página), estatísticas, tabelas somente para administradores, WYSIWYG, adicionar/editar etapas.references/health-checks.md— avisos de pausa / cron-não-rodando / sem-transporte com orientação de correção.references/reference-implementation.md— o motor em pseudocódigo + SQL (bloqueio, coletor, atribuição).examples/worker.mjs+examples/worker.test.mjs— núcleo de agendador/worker executável e testado.examples/data-model.md— esquema do BD.examples/sequence-config.json— uma configuração de sequência concreta e editável.examples/email-templates.md— exemplos de emails renderizados.