Zydon · agente Dexter · levantamento de 30/07/2026

O que o Dexter faz, do primeiro contato à resposta

O Dexter é a automação de prospecção da Zydon. Hoje ele executa sete processos encadeados: encontra o lead, decide se ele vale abordagem, planeja o dia, envia a mensagem, escuta a resposta, mantém os telefones no ar e relata o resultado para as pessoas.

Esta página existe para uma coisa: concordarmos sobre quais são os processos antes de reorganizá-los. Cada processo tem um código (P1 a P7) e cada etapa tem um número (P4.2, por exemplo). Se algo estiver errado ou faltando, basta citar o código.

A linha de produção

Clique em qualquer processo para ver o detalhe: o que dispara, o que entra, o que ele faz passo a passo, o que sai e quando se considera concluído.


O tamanho da operação, medido

Telefones ativos18linhas de WhatsApp em operação simultânea
Envios registrados10.445histórico completo de despachos
Conversas registradas11.514eventos de mensagem, recebidas e enviadas
Rotinas automáticas52agendamentos ligados hoje
Levantado por leitura direta do ambiente em 30/07/2026 Nenhuma configuração foi alterada
Contexto técnico

Como esses processos são disparados hoje

Hoje não existe a figura de "processo". Existem 52 agendamentos — relógios que disparam scripts em horários fixos. Cada um foi criado para resolver um problema pontual, e juntos eles formam os sete processos por acidente, não por desenho.

O que é um agendamento aqui

Um agendamento tem só duas informações: quando disparar e o que rodar. Ele não sabe o que o script faz, não sabe se o trabalho terminou, e não sabe se já existe alguém fazendo aquilo. Ele é um despertador.

Dos 52 ligados, 44 rodam um script e 8 abrem uma conversa com um modelo de IA para decidir algo. Os de IA são incomparavelmente mais caros e demorados — um deles leva 14 minutos por execução.

ProcessoAgendamentosFrequências usadas
P1 · Aquisição2a cada 1 min e a cada 30 min
P2 · Qualificação5todos a cada 1 min
P3 · Planejamento do dia8madrugada, início da manhã, e uma trilha só de sábado
P4 · Despacho61, 2, 5 e 15 min, mais um de hora em hora
P5 · Escuta61 e 5 min, mais um de 30 min e um de 6 horas
P6 · Canal10de 1 a 15 min — a maior família
P7 · Relato10horários fixos da manhã, mais dois de 15 min
Manutenção e pontuais5backup, transcrição de áudio, lembretes

Existem ainda 47 agendamentos desligados

São gerações anteriores de solução para os mesmos problemas — sete variações de follow-up, três de recuperação de perdidos, seis de qualificação. Cinco deles carregam no nome PAUSADO-NAO-REATIVAR, o que indica que foram desligados por causar dano, não por ficarem obsoletos. É um bom retrato de por que vale reorganizar: hoje a única forma de saber o que está no ar é ler os 101 registros um a um.

Diagnóstico

Onde a linha está travando hoje

Três travas medidas no ambiente, em ordem de impacto no negócio. Nenhuma delas é "o servidor caiu" — todas são consequência de os processos não terem dono nem controle único.

Fila parada4.794envios esperando, o mais antigo de 21/07
Primeiro contato241 : 1enfileirados contra enviados
Envios duplicados possíveis3.422chaves de deduplicação repetidas

1 · O topo do funil está represado

4.794 mensagens enfileiradas que não saem — 609 só do dia 28/07. Entre elas, 241 primeiros contatos com apenas 1 enviado. Não é falta de lead: é a fila não drenando.

A causa imediata: o portão que autoriza a operação do dia recusa todo minuto, porque nenhum telefone aparece com capacidade disponível no plano do dia. A recusa está tecnicamente correta — o sistema se recusa a enviar o que não consegue provar que é seguro enviar. O problema é que ninguém é responsável por destravar.

2 · O preparo da noite não roda desde já faz dias

O processo que monta o estoque do dia seguinte (P3) falha em toda execução por procurar um arquivo de autorização num caminho que não existe — diferença de um caractere e de uma pasta em relação ao arquivo real. Sem ele, o dia começa sem estoque preparado, o que alimenta a trava número 1.

3 · A deduplicação é conselho, não regra

Antes de enfileirar, o sistema verifica em memória se aquele contato já está na fila. Mas o banco não impede a repetição — não existe restrição de unicidade. O resultado medido: de 9.417 envios com chave, só 5.995 são distintos. Há chaves repetidas até 45 vezes.

Na prática o risco é mandar a mesma mensagem para a mesma pessoa mais de uma vez. Hoje o que segura isso é o portão do dia estar fechado.

O que essas três têm em comum

Nenhuma é um erro de programação isolado. Todas vêm da mesma ausência: não existe um lugar único onde se registra que um item foi reivindicado, por quem, e como terminou. Cada rotina guarda seu pedaço de estado num arquivo próprio, e ninguém tem a visão do todo — nem as pessoas, nem o próprio sistema.

P1

Aquisição de lead

Encontrar quem entrou na base e garantir que o CRM e o registro interno contam a mesma história.

Dispara quandoA cada 1 minuto (lead novo) e a cada 30 minutos (reconciliação)
EntradaHubSpot e o registro interno de contatos
SaídaLead marcado como candidato à qualificação
Considera-se concluído quandoO lead existe nos dois lados com o mesmo estado

O que ele faz, passo a passo

P1.1
Detecta lead novoVerifica se apareceu contato novo que ainda não passou pela qualificação, e registra início e conclusão da entrada.
P1.2
Varre divergências entre CRM e registro internoCompara os dois lados e aponta o que existe num e não no outro. Leva cerca de um minuto e meio por varredura.
P1.3
Entrega para a qualificaçãoO lead reconciliado fica disponível para o P2 decidir se vira MQL.

Observação para a reorganização

Este é o único processo cujo estado principal mora fora da máquina — no HubSpot. Isso é bom: o CRM já é uma fonte compartilhada e auditável. Mas ele guarda o estado do lead, não o da execução: não sabe qual rotina pegou o quê, nem o que já foi tentado.

P2

Qualificação — o lead vira MQL?

Decidir se o lead merece abordagem comercial, manter a lista de pendências e não deixar o prazo do diagnóstico estourar.

Dispara quandoA cada 1 minuto — cinco rotinas diferentes
EntradaLeads reconciliados pelo P1
SaídaLead classificado como MQL ou não, e fila de pendências atualizada
Considera-se concluído quandoO lead saiu da lista de itens abertos

O que ele faz, passo a passo

P2.1
Qualifica o lead ativoRoda a análise que decide se é MQL e grava o resultado no CRM. É a etapa mais pesada: leva cerca de 90 segundos por execução, com limite rígido de 110 segundos.
P2.2
Reconstrói a fila de itens abertosRefaz a lista de leads pendentes a partir dos registros de origem e só avisa quando o conjunto muda. Não envia mensagem nem escreve no CRM.
P2.3
Vigia o prazo do diagnósticoAcompanha se o diagnóstico prometido ao lead está dentro do prazo combinado.
P2.4
Cumpre obrigações do ciclo de vidaExecuta as tarefas que a mudança de estágio do lead exige. Deixa um registro por execução — hoje há quase 2.000 desses arquivos acumulados.

Observação para a reorganização

As cinco rotinas dizem rodar a cada minuto, mas na prática rodam a cada 3 a 12 minutos, porque disputam a mesma capacidade. A frequência declarada aqui não descreve a realidade — é uma das primeiras coisas a acertar.

P3

Planejamento do dia

Antes de qualquer mensagem sair, decidir quantos contatos cada telefone pode fazer, com quem, e se o dia está liberado para operar.

Dispara quando20h05 às 06h45 em ciclos, mais 05h15, 06h20, 06h45 e 06h50
EntradaEstoque de contatos, inventário de telefones, metas do dia
SaídaUm veredito: LIBERADO ou BLOQUEADO, com a prova de por quê
Considera-se concluído quandoO veredito do dia foi emitido e assinado

O que ele faz, passo a passo

P3.1
Preparo da noiteEntre 20h05 e 06h45 monta o estoque do dia seguinte: contatos pesquisados e prontos, sem enviar nada.
P3.2
Pré-plano por telefoneÀs 20h30 define o horizonte: 120 contatos prontos na abertura, 180 pesquisados até as 09h, e cobertura planejada para a meta de 300.
P3.3
Plano de capacidade dos comunicadoresÀs 06h45 calcula quanto cada operador e cada telefone aguentam no dia.
P3.4
Isolamento finalÀs 05h15 fecha o preparo. Nada é enviado, nada é enfileirado, nada é escrito no CRM nesta etapa.
P3.5
Emite o veredito do diaConfere idade dos dados, posse do bloqueio, integridade de cada arquivo do plano, telefones planejados e capacidade. Só então libera. Na dúvida, bloqueia.

Esta é a peça mais bem feita da instalação

O portão do P3.5 recusa por padrão e só libera quando toda a lista está verde. Ele não aceita o arquivo dizer que está íntegro: recalcula a integridade por conta própria, porque — nas palavras do próprio código — "hash autodeclarado não é proveniência". Nunca quebra: entrada estranha vira recusa, não erro.

Quando formos desenhar o controle único, este é o modelo a copiar, não a substituir.

Problema conhecido

O P3.1 (preparo da noite) e a variação de sábado estão falhando em toda execução. Eles procuram o arquivo de autorização em zydon-prospeccao/release-authority.json, mas o arquivo real está em zydon-prospeccao/controle/runtime/release_authority.json — hífen contra sublinhado, e uma pasta de diferença. A rotina irmã do despacho aponta certo e funciona.

P4

Despacho de mensagem

Tirar o próximo envio da fila, respeitar os limites de cada telefone e entregar no WhatsApp — com comprovante.

Dispara quandoA cada 1 minuto, o dia todo
EntradaFila de envios e o veredito do dia (P3)
SaídaMensagem entregue, com identificador do WhatsApp
Considera-se concluído quandoO envio tem comprovante do WhatsApp registrado

O que ele faz, passo a passo

P4.1
Produz o plano da rodadaMonta sete arquivos: frota de telefones, plano de capacidade, fila do dia, marcos, portas planejadas, autorização e o índice de tudo isso.
P4.2
Normaliza a frotaCorrige o formato dos números e recalcula a integridade dos arquivos recém-produzidos.
P4.3
Consulta o portão do diaPergunta ao P3.5 se está liberado. Se a resposta for não, a rodada para aqui.
P4.4
Confere a autorização de versãoAntes de enviar qualquer coisa, valida que a versão do código em execução é a autorizada, com o entrypoint e o portão no lugar. Qualquer coisa fora do lugar interrompe.
P4.5
Envia respeitando os limitesAté 18 telefones por rodada, 2 mensagens por telefone, 8 por hora por papel, intervalo mínimo entre mensagens e janela de 20 horas entre contatos com a mesma pessoa.
P4.6
Valida a rodadaUma rotina de IA confere cada rodada: se o papel certo falou com o contato certo, se não houve duplicidade, se a sequência ficou completa. Quando encontra sequência quebrada, coloca em quarentena e não reenvia.

Estado da fila hoje

Tipo de mensagemNa filaEnviadasFalhasBloqueadasEm revisão
Follow-up F21.467429159173239
Follow-up F41.246303138916
Follow-up F37424891493219
Follow-up F14494476521517
Envio de diagnóstico276593582326
Primeiro contato2411200

Problemas conhecidos

  • A rodada aparece como erro quando na verdade foi recusa. Quando o portão do dia diz não, a rotina termina com código de erro e o painel pinta vermelho. Uma recusa correta e uma pane real são indistinguíveis para quem olha de fora.
  • O motivo da recusa é descartado. A explicação que o portão produz é jogada fora na hora da execução. Só existe porque a rotina de validação (P4.6) a registra em separado.
  • Três versões de código convivem na mesma execução — o produtor vem de uma versão antiga fixada, o portão de uma pasta de manutenção e o envio da versão ativa. É a origem da fragilidade.
  • 12 envios em quarentena permanente, de uma sequência de 3 mensagens em que 1 saiu e 2 ficaram retidas. O sistema preserva a prova e se recusa a reenviar — certo — mas ninguém resolve a pendência.
P5

Escuta e obrigação de resposta

Quando o lead responde, o relógio começa a correr. Este processo garante que ninguém fique sem resposta.

Dispara quandoA cada 1 minuto (escuta) e a cada 5 minutos (progresso)
EntradaMensagens recebidas nos 18 telefones
SaídaUma obrigação de resposta por mensagem recebida
Considera-se concluído quandoRespondido com prova, escalado para humano ou silenciado de propósito

O que ele faz, passo a passo

P5.1
Escuta as respostasLê as mensagens que chegaram. Roda um ciclo por minuto; se sobrou fila, ele avisa que há trabalho pendente e retoma exatamente de onde parou no minuto seguinte.
P5.2
Transforma em obrigaçãoCada mensagem recebida vira uma obrigação de resposta, com telefone, conversa e momento.
P5.3
Reivindica o turnoAntes de responder, marca o turno como seu, com prazo de validade e contador de tentativas. É o mecanismo mais maduro do Dexter — e o mais próximo do que queremos generalizar.
P5.4
Registra silêncio intencionalNem toda mensagem pede resposta. Quando a decisão é não responder, isso fica registrado como escolha, não como esquecimento.
P5.5
Completa o CRMLeva para o HubSpot o que aconteceu na conversa.
P5.6
Revisão reflexivaDe 6 em 6 horas, uma rotina de IA relê as conversas em modo somente leitura e avalia a qualidade do atendimento.

Situação das obrigações

SituaçãoQuantidadeSignificado
Respondidas2.068o lead recebeu retorno
Silêncio intencional1.112decidiu-se não responder, e isso está registrado
Escaladas285passaram para tratamento humano
Aguardando resposta100ainda em aberto
Pausadas33bloqueadas por pausa deliberada

Aqui já existe o que queremos generalizar

O P5.3 já implementa a ideia de executor independente: cada turno de conversa é reivindicado por um dono, com prazo, número de tentativas, momento em que fica elegível de novo, e um estado final que exige prova material. É exatamente o desenho que queremos aplicar aos outros processos.

Problema conhecido

O mecanismo de nova tentativa não está convergindo. Há 108 turnos em nova tentativa que somam 2.738 tentativas — uma média de 25 cada. Para comparação, os 117 turnos que fecharam com sucesso precisaram de 2,4 tentativas em média. E o estado final com prova completa tem um único registro.

Traduzindo: o sistema tenta de novo indefinidamente sem nunca desistir nem escalar.

P6

Sustentação do canal

Manter os 18 telefones conectados e o painel no ar. É invisível quando funciona e para tudo quando falha.

Dispara quandoEntre 1 e 15 minutos — dez rotinas de vigilância
EntradaInventário de telefones cadastrados
SaídaLinhas conectadas, painel e histórico disponíveis
Considera-se concluído quandoCada telefone habilitado responde saudável

O que ele faz, passo a passo

P6.1
Lê o inventário de telefonesO cadastro de chips é a fonte única: cadastrar, trocar ou remover número na tela passa a valer sem mexer em código. Se o inventário não carregar, o processo não inventa telefone nem ressuscita lista antiga — ele para.
P6.2
Religa as linhas que caíramVerifica cada telefone e sobe o que estiver fora, respeitando a lista de chips propositalmente pausados.
P6.3
Reimporta o históricoTraz para o painel as mensagens que chegaram por outros caminhos, para a visão ficar completa.
P6.4
Garante o painelMantém o painel de conversas no ar, tanto na versão pública quanto na interna, sem nunca subir duas instâncias na mesma porta.
P6.5
Revalida os chipsConfere se cada número continua autenticado e com identidade correta.
P6.6
Vigia desempenho e segurançaAcompanha performance e integridade da camada de canal, e mantém o acesso externo desligado quando a trava de segurança está ativa.

Observação para a reorganização

As dez rotinas deste processo fazem a mesma pergunta dez vezes: "está no ar? se não, sobe". Mudam apenas o alvo. É o candidato mais claro a virar um executor único parametrizado pelo inventário — um processo, dez alvos, em vez de dez processos.

P7

Relato para pessoas

Tudo que produz saída para gente ler: relatório da manhã, auditoria do funil, agenda de reuniões e alertas.

Dispara quandoHorários fixos da manhã, mais duas rotinas de 15 minutos
EntradaArtefatos do dia produzidos pelos processos P1 a P6
SaídaRelatórios, alertas e a agenda do dia
Considera-se concluído quandoO relatório foi entregue ao destinatário

O que é produzido

EntregaQuandoPara quem / o quê
Relatório diário profundo06h50Rafael. Executivo, somente leitura, montado sobre os artefatos do dia.
Teste de contingência por chip06h20Auditoria de inventário, capacidade e filas, sem alterar nada.
Auditoria do funil08h, 12h, 16hAlerta quando o funil sai do esperado.
Reuniões do dia07h + 3 tentativasLucas Resende. As três tentativas extras são um mecanismo improvisado de nova tentativa.
Fila de follow-up do SDR15 minFoto do que está pendente.
Alertas de fim de semana2 minA única rotina que roda exatamente na frequência declarada.
Relatório financeiro e exportação08h e 18h30Enviados ao Mitra.

Observação para a reorganização

A regra de comunicação hoje é: silêncio significa sucesso. A rotina só fala quando algo deu errado. É uma boa convenção — mas está aplicada de forma desigual, e um recado importante pode se perder no mesmo canal em que caem erros técnicos repetidos.

Para onde vamos

O modelo alvo: gestor, executor e controle único

A proposta não é reescrever o Dexter. É separar três papéis que hoje estão misturados dentro de cada agendamento, e dar a eles um lugar comum onde o trabalho é registrado.

Os três papéis

1
O gestor (o agendamento)Roda de tempos em tempos e faz só duas coisas: olha o que precisa ser feito e reivindica; e verifica se algum executor morreu no meio, para recuperá-lo. Ele nunca faz o trabalho. Assim ele termina em segundos, e a frequência declarada volta a ser verdade.
2
O executorRecebe um item e o leva até o fim, fora do relógio. Pode demorar 14 minutos sem atrapalhar ninguém, porque não ocupa o agendamento. Cada executor é independente dos outros.
3
O controle únicoUm lugar só, fora da máquina, onde fica registrado: este item foi reivindicado, por este executor, neste momento, e terminou assim. É o que permite recuperar sem duplicar e auditar sem adivinhar.

Isso já funciona em outro agente da casa

A Zoe opera exatamente assim. Os agendamentos dela não fazem trabalho: reivindicam um ticket deixando uma marca pública, sobem uma sessão independente e, no tique seguinte, verificam se aquela sessão ainda está viva — se morreu, retomam de onde parou. A marca pública é a fonte de verdade, então nada é feito duas vezes.

O Dexter não tem nada disso hoje. Nenhuma das 141 rotinas registra trabalho fora da própria máquina.

O que já existe e pode ser aproveitado

Peça prontaOnde estáO que já garanteO que falta
Reivindicação por turnono processo P5Dono, prazo, tentativas, reelegibilidade e estado final com prova.Vale só para a escuta. O despacho, que é o caminho crítico, não usa.
Portão com recusa por padrãono processo P3Verificação independente, sem confiar no que o arquivo declara. Nunca quebra: vira recusa.Ter o motivo da recusa preservado e visível.
Lançador com verificações8 rotinas geradasContrato uniforme: valida versão, ponto de entrada e autorização antes de começar.Não conhece a noção de item nem sabe retomar.

Os sete processos no modelo alvo

ProcessoUnidade de trabalhoEstado finalExecutor pronto?
P1 Aquisiçãoum leadqualificado ou descartadonão
P2 Qualificaçãoum item abertoMQL ou não-MQLparcial
P3 Planejamentoum dialiberado ou bloqueado, com provasim
P4 Despachoum envioentregue com comprovanteparcial
P5 Escutaum turno de conversarespondido com provasim
P6 Canalum telefonelinha saudávelparcial
P7 Relatoum relatórioentreguenão

A decisão que ainda está em aberto

Onde fica o controle único. Pode ser o GitHub, como na Zoe; pode ser um banco próprio; pode ser o próprio HubSpot para os processos de lead. O requisito não é a ferramenta — é que seja um só lugar, fora da máquina, com unicidade garantida pelo próprio sistema, e não por uma verificação feita em memória antes de gravar.

Como usar este material

Como propor um ajuste

Este mapa existe para ser corrigido. Ele foi montado lendo o ambiente, não perguntando às pessoas — então é natural que haja processo faltando, etapa fora de ordem ou nome errado.

Cite o código

Cada processo tem um código e cada etapa tem um número. Para pedir mudança, basta apontar:

  • "O P4.5 está errado" — a etapa existe mas o que está escrito não corresponde à realidade.
  • "Falta uma etapa entre P2.2 e P2.3" — há trabalho acontecendo que o mapa não registrou.
  • "O P6 deveria ser parte do P4" — o recorte dos processos está errado.
  • "P7 não é processo, é consequência" — algo aqui não merece ser tratado como processo próprio.

As três perguntas que mais ajudam

1
O recorte está certo?São sete processos mesmo, ou algum deveria ser dividido, unido ou eliminado? Esta é a decisão mais importante — tudo depois deriva dela.
2
A unidade de trabalho está certa?Para cada processo: qual é a menor coisa que pode ser feita do começo ao fim de forma independente? É isso que o executor vai receber.
3
Quando se pode dizer que terminou?Qual é a prova de que aquele item foi concluído? Sem essa resposta, não há como recuperar sem duplicar.

O que acontece depois

Com o mapa acertado, o caminho é: escolher onde fica o controle único, desligar os agendamentos atuais, e religá-los um por um já no formato gestor + executor — começando pelo processo que hoje está travando o negócio, o despacho (P4), e pelo que já tem quase tudo pronto, a escuta (P5).