drm-core 1.0.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cli/index.js +396 -201
- package/package.json +1 -1
- package/scaffold/.drm-core/checklists/campanha-pre-launch.md +49 -0
- package/scaffold/.drm-core/checklists/compliance-google.md +46 -0
- package/scaffold/.drm-core/checklists/compliance-meta.md +49 -0
- package/scaffold/.drm-core/checklists/compliance-tiktok.md +46 -0
- package/scaffold/.drm-core/checklists/compliance-vsl.md +48 -0
- package/scaffold/.drm-core/checklists/copy-quality-gate.md +55 -0
- package/scaffold/.drm-core/checklists/funil-pre-launch.md +66 -0
- package/scaffold/.drm-core/checklists/whatsapp-compliance.md +49 -0
- package/scaffold/.drm-core/data/agent-config.yaml +220 -0
- package/scaffold/.drm-core/data/workflow-chains.yaml +374 -0
- package/scaffold/.drm-core/tasks/analise/diagnostico-funil.md +314 -0
- package/scaffold/.drm-core/tasks/compliance/revisar-ad-meta.md +242 -0
- package/scaffold/.drm-core/tasks/copy/escrever-ad-meta.md +191 -0
- package/scaffold/.drm-core/tasks/copy/escrever-email-sequence.md +237 -0
- package/scaffold/.drm-core/tasks/copy/escrever-msgs-whatsapp.md +220 -0
- package/scaffold/.drm-core/tasks/copy/escrever-pagina-vendas.md +276 -0
- package/scaffold/.drm-core/tasks/copy/escrever-vsl-full.md +235 -0
- package/scaffold/.drm-core/tasks/direcao-criativa/criar-conceito.md +249 -0
- package/scaffold/.drm-core/tasks/direcao-criativa/validar-criativo.md +202 -0
- package/scaffold/.drm-core/tasks/estrategia/criar-briefing.md +274 -0
- package/scaffold/.drm-core/tasks/estrategia/pesquisa-mercado.md +200 -0
- package/scaffold/.drm-core/tasks/funil/arquitetar-funil-vsl.md +228 -0
- package/scaffold/.drm-core/tasks/funil/fluxo-whatsapp-backend.md +291 -0
- package/scaffold/.drm-core/tasks/trafego/escalar-campanha.md +256 -0
- package/scaffold/.drm-core/tasks/trafego/montar-campanha-meta.md +303 -0
- package/scaffold/.drm-core/templates/ad-meta-template.md +391 -0
- package/scaffold/.drm-core/templates/avatar-template.md +468 -0
- package/scaffold/.drm-core/templates/briefing-estrategico-template.md +462 -0
- package/scaffold/.drm-core/templates/compliance-report-template.md +86 -0
- package/scaffold/.drm-core/templates/estrutura-campanha-template.md +492 -0
- package/scaffold/.drm-core/templates/funil-vsl-template.md +470 -0
- package/scaffold/.drm-core/templates/msgs-whatsapp-template.md +516 -0
- package/scaffold/.drm-core/templates/pagina-vendas-template.md +517 -0
- package/scaffold/.drm-core/templates/relatorio-template.md +313 -0
- package/scaffold/.drm-core/templates/vsl-curta-template.md +341 -0
- package/scaffold/.drm-core/templates/vsl-full-template.md +780 -0
- package/scaffold/.drm-core/templates/vsl-mini-template.md +360 -0
- package/scaffold/.drm-core/workflows/backend-whatsapp.yaml +395 -0
- package/scaffold/.drm-core/workflows/campanha-trafego.yaml +465 -0
- package/scaffold/.drm-core/workflows/copy-review-loop.yaml +333 -0
- package/scaffold/.drm-core/workflows/funil-vsl-completo.yaml +544 -0
- package/scaffold/.drm-core/workflows/lancamento-produto.yaml +402 -0
- package/scaffold/.drm-core/workflows/microlead-pipeline.yaml +408 -0
- package/scaffold/.drm-core/workflows/otimizacao-cycle.yaml +394 -0
- package/scaffold/.drm-core/workflows/reativacao-cycle.yaml +468 -0
|
@@ -0,0 +1,468 @@
|
|
|
1
|
+
# =============================================================================
|
|
2
|
+
# REATIVACAO CYCLE — Workflow de Reativacao (4 Fases)
|
|
3
|
+
# Pipeline: identificacao cohorts → estrategia por cohort → copy → execucao
|
|
4
|
+
# =============================================================================
|
|
5
|
+
|
|
6
|
+
workflow:
|
|
7
|
+
id: reativacao-cycle
|
|
8
|
+
name: "Ciclo de Reativacao"
|
|
9
|
+
version: "1.0"
|
|
10
|
+
description: >
|
|
11
|
+
Ciclo de reativacao de clientes e leads inativos. @cronos identifica
|
|
12
|
+
cohorts por tempo de inatividade, @atena define estrategia e oferta
|
|
13
|
+
por cohort, @apolo escreve sequencias de win-back por email e WhatsApp,
|
|
14
|
+
@temis valida compliance, @hermes configura retargeting, @cronos
|
|
15
|
+
mede resultados.
|
|
16
|
+
|
|
17
|
+
trigger: manual
|
|
18
|
+
estimated_duration: "3-5 dias uteis (setup) + 30 dias (execucao)"
|
|
19
|
+
priority: medium
|
|
20
|
+
|
|
21
|
+
# ---------------------------------------------------------------------------
|
|
22
|
+
# FASES
|
|
23
|
+
# ---------------------------------------------------------------------------
|
|
24
|
+
phases:
|
|
25
|
+
- phase_1: "Identificacao de Cohorts Inativos"
|
|
26
|
+
- phase_2: "Estrategia por Cohort"
|
|
27
|
+
- phase_3: "Copy de Reativacao"
|
|
28
|
+
- phase_4: "Execucao e Medicao"
|
|
29
|
+
|
|
30
|
+
# ---------------------------------------------------------------------------
|
|
31
|
+
# DEFINICAO DE COHORTS
|
|
32
|
+
# ---------------------------------------------------------------------------
|
|
33
|
+
cohort_definitions:
|
|
34
|
+
- cohort: "inativo_30d"
|
|
35
|
+
label: "Inativos 30 dias"
|
|
36
|
+
criteria: "Sem compra nos ultimos 30 dias"
|
|
37
|
+
sub_criteria:
|
|
38
|
+
- "Comprou mas nao recomprou"
|
|
39
|
+
- "Lead que nao converteu"
|
|
40
|
+
tamanho_esperado: "40-60% da base"
|
|
41
|
+
|
|
42
|
+
- cohort: "inativo_60d"
|
|
43
|
+
label: "Inativos 60 dias"
|
|
44
|
+
criteria: "Sem compra nos ultimos 60 dias"
|
|
45
|
+
sub_criteria:
|
|
46
|
+
- "Sem abrir email nos ultimos 30 dias"
|
|
47
|
+
- "Sem engajar WhatsApp nos ultimos 30 dias"
|
|
48
|
+
tamanho_esperado: "20-35% da base"
|
|
49
|
+
|
|
50
|
+
- cohort: "inativo_90d"
|
|
51
|
+
label: "Inativos 90 dias"
|
|
52
|
+
criteria: "Sem compra nos ultimos 90 dias"
|
|
53
|
+
sub_criteria:
|
|
54
|
+
- "Sem nenhuma interacao nos ultimos 60 dias"
|
|
55
|
+
- "Sem abrir email nos ultimos 60 dias"
|
|
56
|
+
tamanho_esperado: "10-20% da base"
|
|
57
|
+
|
|
58
|
+
- cohort: "email_frio"
|
|
59
|
+
label: "Email Frio"
|
|
60
|
+
criteria: "Sem abrir email nos ultimos 30 dias"
|
|
61
|
+
sub_criteria:
|
|
62
|
+
- "Ainda nao deu unsubscribe"
|
|
63
|
+
- "Email valido (nao bounced)"
|
|
64
|
+
tamanho_esperado: "30-50% da lista"
|
|
65
|
+
|
|
66
|
+
- cohort: "whatsapp_frio"
|
|
67
|
+
label: "WhatsApp Frio"
|
|
68
|
+
criteria: "Sem engajar WhatsApp nos ultimos 30 dias"
|
|
69
|
+
sub_criteria:
|
|
70
|
+
- "Numero valido"
|
|
71
|
+
- "Nao deu opt-out"
|
|
72
|
+
tamanho_esperado: "20-40% da lista"
|
|
73
|
+
|
|
74
|
+
# ---------------------------------------------------------------------------
|
|
75
|
+
# SEQUENCIA DE STEPS
|
|
76
|
+
# ---------------------------------------------------------------------------
|
|
77
|
+
sequence:
|
|
78
|
+
|
|
79
|
+
# =========================================================================
|
|
80
|
+
# FASE 1 — IDENTIFICACAO DE COHORTS INATIVOS (@cronos)
|
|
81
|
+
# =========================================================================
|
|
82
|
+
- step: identificar_cohorts
|
|
83
|
+
phase: 1
|
|
84
|
+
agent: "@cronos"
|
|
85
|
+
action: "*identificar-cohorts-inativos"
|
|
86
|
+
description: >
|
|
87
|
+
Analisa a base de clientes e leads para identificar cohorts
|
|
88
|
+
inativos. Segmenta por: tempo de inatividade (30d, 60d, 90d),
|
|
89
|
+
tipo de inatividade (sem compra, sem abrir email, sem engajar
|
|
90
|
+
WhatsApp), valor historico do cliente (LTV), ultimo produto
|
|
91
|
+
comprado.
|
|
92
|
+
inputs:
|
|
93
|
+
- "Base de clientes (CRM, gateway de pagamento)"
|
|
94
|
+
- "Metricas de email (opens, clicks por contato)"
|
|
95
|
+
- "Metricas de WhatsApp (respostas, engajamento)"
|
|
96
|
+
- "Historico de compras"
|
|
97
|
+
outputs:
|
|
98
|
+
- "docs/reativacao/cohorts-inativos.md"
|
|
99
|
+
- "docs/reativacao/cohorts-stats.md"
|
|
100
|
+
requires: null
|
|
101
|
+
next: analise_valor_cohort
|
|
102
|
+
on_failure: "Segmentar por tempo de inatividade apenas (sem LTV)"
|
|
103
|
+
validation:
|
|
104
|
+
type: checklist
|
|
105
|
+
criteria: >
|
|
106
|
+
Cohorts identificados com: quantidade por cohort, valor
|
|
107
|
+
medio do cliente (se disponivel), ultimo ponto de contato,
|
|
108
|
+
canal preferido, produto mais recente comprado.
|
|
109
|
+
|
|
110
|
+
- step: analise_valor_cohort
|
|
111
|
+
phase: 1
|
|
112
|
+
agent: "@cronos"
|
|
113
|
+
action: "*analisar-valor-cohorts"
|
|
114
|
+
description: >
|
|
115
|
+
Analisa valor potencial de cada cohort: receita estimada se
|
|
116
|
+
reativado, custo estimado de reativacao, ROI esperado por
|
|
117
|
+
cohort, prioridade de reativacao. Define quais cohorts
|
|
118
|
+
valem o investimento.
|
|
119
|
+
inputs:
|
|
120
|
+
- "docs/reativacao/cohorts-inativos.md"
|
|
121
|
+
- "docs/reativacao/cohorts-stats.md"
|
|
122
|
+
- "Custos de aquisicao originais (CAC historico)"
|
|
123
|
+
outputs:
|
|
124
|
+
- "docs/reativacao/analise-valor-cohorts.md"
|
|
125
|
+
requires: identificar_cohorts
|
|
126
|
+
next: estrategia_30d
|
|
127
|
+
on_failure: "Priorizar por tamanho do cohort"
|
|
128
|
+
validation:
|
|
129
|
+
type: checklist
|
|
130
|
+
criteria: >
|
|
131
|
+
Cada cohort com: receita potencial estimada, custo de
|
|
132
|
+
reativacao estimado, ROI esperado, prioridade (alta/media/baixa),
|
|
133
|
+
recomendacao (reativar/manter/limpar).
|
|
134
|
+
|
|
135
|
+
# =========================================================================
|
|
136
|
+
# FASE 2 — ESTRATEGIA POR COHORT (@atena)
|
|
137
|
+
# =========================================================================
|
|
138
|
+
- step: estrategia_30d
|
|
139
|
+
phase: 2
|
|
140
|
+
agent: "@atena"
|
|
141
|
+
action: "*estrategia-cohort-30d"
|
|
142
|
+
description: >
|
|
143
|
+
Define estrategia de reativacao para cohort 30 dias: oferta de
|
|
144
|
+
conteudo exclusivo (video, ebook, template premium). Abordagem
|
|
145
|
+
suave focada em valor — esses leads ainda estao quentes.
|
|
146
|
+
Tom: "sentimos sua falta, olha o que preparamos pra voce".
|
|
147
|
+
inputs:
|
|
148
|
+
- "docs/reativacao/analise-valor-cohorts.md"
|
|
149
|
+
- "docs/estrategia/avatar-profile.md (se existir)"
|
|
150
|
+
- "Catalogo de conteudos/recursos disponiveis"
|
|
151
|
+
outputs:
|
|
152
|
+
- "docs/reativacao/estrategia-30d.md"
|
|
153
|
+
requires: analise_valor_cohort
|
|
154
|
+
next: estrategia_60d
|
|
155
|
+
on_failure: "Usar conteudo existente reempacotado"
|
|
156
|
+
validation:
|
|
157
|
+
type: checklist
|
|
158
|
+
criteria: >
|
|
159
|
+
Estrategia com: oferta definida (conteudo exclusivo), canal
|
|
160
|
+
primario (email + WhatsApp), tom de comunicacao, sequencia
|
|
161
|
+
de touchpoints (3-5), metricas de sucesso (re-engajamento
|
|
162
|
+
rate, conversao), timeline (7 dias).
|
|
163
|
+
oferta_30d:
|
|
164
|
+
tipo: "Conteudo exclusivo / valor gratuito"
|
|
165
|
+
exemplos:
|
|
166
|
+
- "Video/aula exclusiva nao publicada"
|
|
167
|
+
- "Template/ferramenta util"
|
|
168
|
+
- "Ebook com conteudo premium"
|
|
169
|
+
- "Acesso antecipado a novo conteudo"
|
|
170
|
+
tom: "Valor-first, sem pressao de venda"
|
|
171
|
+
|
|
172
|
+
- step: estrategia_60d
|
|
173
|
+
phase: 2
|
|
174
|
+
agent: "@atena"
|
|
175
|
+
action: "*estrategia-cohort-60d"
|
|
176
|
+
description: >
|
|
177
|
+
Define estrategia de reativacao para cohort 60 dias: oferta de
|
|
178
|
+
desconto moderado (15-30%) no produto principal ou em produto
|
|
179
|
+
complementar. Abordagem mais direta com incentivo financeiro.
|
|
180
|
+
Tom: "oferta especial para voce voltar".
|
|
181
|
+
inputs:
|
|
182
|
+
- "docs/reativacao/analise-valor-cohorts.md"
|
|
183
|
+
- "docs/estrategia/oferta-completa.md (se existir)"
|
|
184
|
+
outputs:
|
|
185
|
+
- "docs/reativacao/estrategia-60d.md"
|
|
186
|
+
requires: estrategia_30d
|
|
187
|
+
next: estrategia_90d
|
|
188
|
+
on_failure: "Oferecer bonus extra em vez de desconto"
|
|
189
|
+
validation:
|
|
190
|
+
type: checklist
|
|
191
|
+
criteria: >
|
|
192
|
+
Estrategia com: oferta definida (desconto + justificativa),
|
|
193
|
+
percentual de desconto, produto alvo, canal primario,
|
|
194
|
+
sequencia de touchpoints (3-5), deadline da oferta,
|
|
195
|
+
metricas de sucesso.
|
|
196
|
+
oferta_60d:
|
|
197
|
+
tipo: "Desconto moderado com deadline"
|
|
198
|
+
exemplos:
|
|
199
|
+
- "15-30% de desconto no produto principal"
|
|
200
|
+
- "Produto complementar com desconto"
|
|
201
|
+
- "Upgrade com preco reduzido"
|
|
202
|
+
- "Bundle exclusivo por tempo limitado"
|
|
203
|
+
tom: "Oferta especial com urgencia moderada"
|
|
204
|
+
|
|
205
|
+
- step: estrategia_90d
|
|
206
|
+
phase: 2
|
|
207
|
+
agent: "@atena"
|
|
208
|
+
action: "*estrategia-cohort-90d"
|
|
209
|
+
description: >
|
|
210
|
+
Define estrategia de reativacao para cohort 90 dias: oferta
|
|
211
|
+
irrecusavel (maior desconto, bonus extras, condicao unica).
|
|
212
|
+
Ultima tentativa antes de considerar o lead perdido.
|
|
213
|
+
Tom: "ultima chance" com urgencia real.
|
|
214
|
+
inputs:
|
|
215
|
+
- "docs/reativacao/analise-valor-cohorts.md"
|
|
216
|
+
- "docs/estrategia/oferta-completa.md (se existir)"
|
|
217
|
+
outputs:
|
|
218
|
+
- "docs/reativacao/estrategia-90d.md"
|
|
219
|
+
requires: estrategia_60d
|
|
220
|
+
next: copy_email_reativacao
|
|
221
|
+
on_failure: "Considerar lista cleaning em vez de reativacao"
|
|
222
|
+
validation:
|
|
223
|
+
type: checklist
|
|
224
|
+
criteria: >
|
|
225
|
+
Estrategia com: oferta irrecusavel definida, justificativa
|
|
226
|
+
do desconto agressivo, deadline curto (48-72h), canais
|
|
227
|
+
multiplos (email + WhatsApp + retargeting), metricas,
|
|
228
|
+
plano para quem nao reativar (limpeza de lista).
|
|
229
|
+
oferta_90d:
|
|
230
|
+
tipo: "Oferta irrecusavel — ultima tentativa"
|
|
231
|
+
exemplos:
|
|
232
|
+
- "40-60% de desconto (maior possivel)"
|
|
233
|
+
- "Bonus exclusivos nao disponibilizados antes"
|
|
234
|
+
- "Condicao de pagamento especial"
|
|
235
|
+
- "Garantia estendida"
|
|
236
|
+
tom: "Urgencia real, ultima oportunidade, FOMO"
|
|
237
|
+
post_nao_reativacao: "Mover para lista fria / limpeza"
|
|
238
|
+
|
|
239
|
+
# =========================================================================
|
|
240
|
+
# FASE 3 — COPY DE REATIVACAO (@apolo)
|
|
241
|
+
# =========================================================================
|
|
242
|
+
- step: copy_email_reativacao
|
|
243
|
+
phase: 3
|
|
244
|
+
agent: "@apolo"
|
|
245
|
+
action: "*escrever-email-reativacao"
|
|
246
|
+
description: >
|
|
247
|
+
Escreve sequencias de email de reativacao para cada cohort.
|
|
248
|
+
Cada sequencia com 3-5 emails progressivos. Cohort 30d:
|
|
249
|
+
valor. Cohort 60d: desconto. Cohort 90d: ultima chance com
|
|
250
|
+
countdown e FOMO.
|
|
251
|
+
inputs:
|
|
252
|
+
- "docs/reativacao/estrategia-30d.md"
|
|
253
|
+
- "docs/reativacao/estrategia-60d.md"
|
|
254
|
+
- "docs/reativacao/estrategia-90d.md"
|
|
255
|
+
- "docs/estrategia/avatar-profile.md (se existir)"
|
|
256
|
+
outputs:
|
|
257
|
+
- "docs/reativacao/copy/emails-30d.md"
|
|
258
|
+
- "docs/reativacao/copy/emails-60d.md"
|
|
259
|
+
- "docs/reativacao/copy/emails-90d.md"
|
|
260
|
+
requires: estrategia_90d
|
|
261
|
+
next: copy_whatsapp_reativacao
|
|
262
|
+
on_failure: "Reduzir para 2 emails por cohort (abertura + ultima chance)"
|
|
263
|
+
validation:
|
|
264
|
+
type: checklist
|
|
265
|
+
criteria: >
|
|
266
|
+
Cada cohort com 3-5 emails: subject line, preview text,
|
|
267
|
+
body copy, CTA, timing entre emails, personalizacao com
|
|
268
|
+
variaveis (nome, ultimo produto, data ultima compra).
|
|
269
|
+
email_sequences:
|
|
270
|
+
cohort_30d:
|
|
271
|
+
emails: 3
|
|
272
|
+
tom: "Valor e reconexao"
|
|
273
|
+
progressao: "Valor → mais valor → convite suave"
|
|
274
|
+
cohort_60d:
|
|
275
|
+
emails: 4
|
|
276
|
+
tom: "Oferta e incentivo"
|
|
277
|
+
progressao: "Reconexao → oferta → lembrete → deadline"
|
|
278
|
+
cohort_90d:
|
|
279
|
+
emails: 5
|
|
280
|
+
tom: "Urgencia e ultima chance"
|
|
281
|
+
progressao: "Reconexao → oferta forte → countdown → last chance → despedida"
|
|
282
|
+
countdown: true
|
|
283
|
+
last_chance: true
|
|
284
|
+
|
|
285
|
+
- step: copy_whatsapp_reativacao
|
|
286
|
+
phase: 3
|
|
287
|
+
agent: "@apolo"
|
|
288
|
+
action: "*escrever-whatsapp-winback"
|
|
289
|
+
description: >
|
|
290
|
+
Escreve mensagens de WhatsApp win-back para cada cohort.
|
|
291
|
+
Mensagens curtas, pessoais, com variantes. Cohort 90d inclui
|
|
292
|
+
countdown e mensagem "last chance" com timer.
|
|
293
|
+
inputs:
|
|
294
|
+
- "docs/reativacao/estrategia-30d.md"
|
|
295
|
+
- "docs/reativacao/estrategia-60d.md"
|
|
296
|
+
- "docs/reativacao/estrategia-90d.md"
|
|
297
|
+
outputs:
|
|
298
|
+
- "docs/reativacao/copy/whatsapp-30d.md"
|
|
299
|
+
- "docs/reativacao/copy/whatsapp-60d.md"
|
|
300
|
+
- "docs/reativacao/copy/whatsapp-90d.md"
|
|
301
|
+
requires: copy_email_reativacao
|
|
302
|
+
next: compliance_reativacao
|
|
303
|
+
on_failure: "Focar WhatsApp apenas no cohort 90d (maior urgencia)"
|
|
304
|
+
validation:
|
|
305
|
+
type: checklist
|
|
306
|
+
criteria: >
|
|
307
|
+
Cada cohort com 2-3 mensagens WhatsApp: texto curto (max 300
|
|
308
|
+
chars), emojis estrategicos, variaveis de personalizacao,
|
|
309
|
+
formatacao WhatsApp, CTA claro, opt-out respeitado.
|
|
310
|
+
whatsapp_sequences:
|
|
311
|
+
cohort_30d:
|
|
312
|
+
mensagens: 2
|
|
313
|
+
conteudo: "Link para conteudo exclusivo + check-in"
|
|
314
|
+
cohort_60d:
|
|
315
|
+
mensagens: 2
|
|
316
|
+
conteudo: "Oferta com deadline + lembrete"
|
|
317
|
+
cohort_90d:
|
|
318
|
+
mensagens: 3
|
|
319
|
+
conteudo: "Oferta forte + countdown + last chance com timer"
|
|
320
|
+
countdown: true
|
|
321
|
+
timer_message: "{{nome}}, sua oferta expira em {{horas}} horas"
|
|
322
|
+
|
|
323
|
+
# =========================================================================
|
|
324
|
+
# FASE 4 — EXECUCAO E MEDICAO
|
|
325
|
+
# =========================================================================
|
|
326
|
+
- step: compliance_reativacao
|
|
327
|
+
phase: 4
|
|
328
|
+
agent: "@temis"
|
|
329
|
+
action: "*compliance-reativacao"
|
|
330
|
+
description: >
|
|
331
|
+
Revisao de compliance de todas as sequencias de reativacao:
|
|
332
|
+
LGPD (base legal para recontato), frequencia de envio,
|
|
333
|
+
mecanismo de opt-out, claims nas ofertas, WhatsApp policies.
|
|
334
|
+
inputs:
|
|
335
|
+
- "docs/reativacao/copy/emails-30d.md"
|
|
336
|
+
- "docs/reativacao/copy/emails-60d.md"
|
|
337
|
+
- "docs/reativacao/copy/emails-90d.md"
|
|
338
|
+
- "docs/reativacao/copy/whatsapp-30d.md"
|
|
339
|
+
- "docs/reativacao/copy/whatsapp-60d.md"
|
|
340
|
+
- "docs/reativacao/copy/whatsapp-90d.md"
|
|
341
|
+
outputs:
|
|
342
|
+
- "docs/reativacao/compliance/compliance-report.md"
|
|
343
|
+
- "docs/reativacao/compliance/alteracoes-obrigatorias.md"
|
|
344
|
+
requires: copy_whatsapp_reativacao
|
|
345
|
+
next: aplicar_compliance_reativacao
|
|
346
|
+
on_failure: "Bloquear envio ate compliance resolvido"
|
|
347
|
+
validation:
|
|
348
|
+
type: verdict
|
|
349
|
+
criteria: >
|
|
350
|
+
APROVADO: Todas as sequencias em compliance.
|
|
351
|
+
AJUSTES: Correcoes menores listadas.
|
|
352
|
+
BLOQUEADO: Violacoes de LGPD ou anti-spam criticas.
|
|
353
|
+
compliance_checks:
|
|
354
|
+
- "Base legal para recontato (LGPD Art. 7)"
|
|
355
|
+
- "Opt-out funcional em todo email"
|
|
356
|
+
- "Opt-out respeitado no WhatsApp"
|
|
357
|
+
- "Frequencia de envio dentro do aceitavel"
|
|
358
|
+
- "Claims de desconto verdadeiros (CDC)"
|
|
359
|
+
- "Countdown/timer com deadline real"
|
|
360
|
+
- "Dados pessoais usados com consentimento"
|
|
361
|
+
|
|
362
|
+
- step: aplicar_compliance_reativacao
|
|
363
|
+
phase: 4
|
|
364
|
+
agent: "@apolo"
|
|
365
|
+
action: "*aplicar-correcoes-reativacao"
|
|
366
|
+
description: >
|
|
367
|
+
Aplica correcoes de compliance nas sequencias de reativacao.
|
|
368
|
+
inputs:
|
|
369
|
+
- "docs/reativacao/compliance/alteracoes-obrigatorias.md"
|
|
370
|
+
- "Todos os assets de copy afetados"
|
|
371
|
+
outputs:
|
|
372
|
+
- "docs/reativacao/compliance/compliance-applied-log.md"
|
|
373
|
+
requires: compliance_reativacao
|
|
374
|
+
next: configurar_retargeting
|
|
375
|
+
on_failure: "Escalar para @temis re-revisao"
|
|
376
|
+
validation:
|
|
377
|
+
type: checklist
|
|
378
|
+
criteria: "Todas as correcoes aplicadas e documentadas."
|
|
379
|
+
|
|
380
|
+
- step: configurar_retargeting
|
|
381
|
+
phase: 4
|
|
382
|
+
agent: "@hermes"
|
|
383
|
+
action: "*configurar-retargeting-reativacao"
|
|
384
|
+
description: >
|
|
385
|
+
Configura campanhas de retargeting no Meta Ads para cada cohort:
|
|
386
|
+
Custom Audiences por cohort, criativos alinhados com a oferta
|
|
387
|
+
de cada cohort, bid strategy, budget por cohort, frequencia
|
|
388
|
+
controlada.
|
|
389
|
+
inputs:
|
|
390
|
+
- "docs/reativacao/estrategia-30d.md"
|
|
391
|
+
- "docs/reativacao/estrategia-60d.md"
|
|
392
|
+
- "docs/reativacao/estrategia-90d.md"
|
|
393
|
+
- "docs/reativacao/copy/emails-30d.md (para alinhamento de mensagem)"
|
|
394
|
+
outputs:
|
|
395
|
+
- "docs/reativacao/retargeting/campanha-retargeting.md"
|
|
396
|
+
- "docs/reativacao/retargeting/publicos-custom.md"
|
|
397
|
+
requires: aplicar_compliance_reativacao
|
|
398
|
+
next: medir_resultado_reativacao
|
|
399
|
+
on_failure: "Focar retargeting apenas no cohort 90d"
|
|
400
|
+
validation:
|
|
401
|
+
type: checklist
|
|
402
|
+
criteria: >
|
|
403
|
+
Campanha com: Custom Audience por cohort, criativos alinhados
|
|
404
|
+
com oferta do cohort, bid strategy conservadora (cohort frio =
|
|
405
|
+
bid mais baixo), frequencia max 2/semana, budget proporcional
|
|
406
|
+
ao valor do cohort, exclusoes entre cohorts.
|
|
407
|
+
|
|
408
|
+
- step: medir_resultado_reativacao
|
|
409
|
+
phase: 4
|
|
410
|
+
agent: "@cronos"
|
|
411
|
+
action: "*medir-resultado-reativacao"
|
|
412
|
+
description: >
|
|
413
|
+
Mede resultado das campanhas de reativacao apos 30 dias:
|
|
414
|
+
taxa de reativacao por cohort, receita recuperada, custo de
|
|
415
|
+
reativacao, ROI por cohort, leads que devem ser limpos da base.
|
|
416
|
+
inputs:
|
|
417
|
+
- "docs/reativacao/cohorts-stats.md (baseline)"
|
|
418
|
+
- "Metricas de email (opens, clicks, conversoes por cohort)"
|
|
419
|
+
- "Metricas de WhatsApp (respostas, conversoes por cohort)"
|
|
420
|
+
- "Metricas de retargeting (impressoes, cliques, conversoes)"
|
|
421
|
+
- "Receita atribuida a reativacao"
|
|
422
|
+
outputs:
|
|
423
|
+
- "docs/reativacao/resultado-reativacao.md"
|
|
424
|
+
- "docs/reativacao/recomendacoes-pos-ciclo.md"
|
|
425
|
+
requires: configurar_retargeting
|
|
426
|
+
next: null
|
|
427
|
+
on_failure: "Gerar report parcial com dados disponiveis"
|
|
428
|
+
validation:
|
|
429
|
+
type: checklist
|
|
430
|
+
criteria: >
|
|
431
|
+
Report com: taxa de reativacao por cohort, receita recuperada
|
|
432
|
+
total, custo total da campanha, ROI por cohort, comparacao
|
|
433
|
+
com benchmark, recomendacoes (quais cohorts continuar, quais
|
|
434
|
+
limpar), aprendizados para proximo ciclo.
|
|
435
|
+
metricas_report:
|
|
436
|
+
por_cohort:
|
|
437
|
+
- "Taxa de reativacao (%)"
|
|
438
|
+
- "Receita recuperada (R$)"
|
|
439
|
+
- "Custo de reativacao (R$)"
|
|
440
|
+
- "ROI do cohort"
|
|
441
|
+
- "Canal mais efetivo (email/WhatsApp/retargeting)"
|
|
442
|
+
global:
|
|
443
|
+
- "Total reativado"
|
|
444
|
+
- "Receita total recuperada"
|
|
445
|
+
- "ROI global do ciclo"
|
|
446
|
+
- "Leads para limpeza de base"
|
|
447
|
+
recomendacoes:
|
|
448
|
+
- "Cohorts para proximo ciclo"
|
|
449
|
+
- "Ofertas que funcionaram melhor"
|
|
450
|
+
- "Canais mais efetivos por cohort"
|
|
451
|
+
- "Frequencia ideal de ciclos de reativacao"
|
|
452
|
+
|
|
453
|
+
# ---------------------------------------------------------------------------
|
|
454
|
+
# CONFIGURACAO GLOBAL
|
|
455
|
+
# ---------------------------------------------------------------------------
|
|
456
|
+
config:
|
|
457
|
+
cohort_periods: [30, 60, 90]
|
|
458
|
+
measurement_period: "30 dias"
|
|
459
|
+
compliance_blocking: true
|
|
460
|
+
multi_channel: true
|
|
461
|
+
channels: ["email", "whatsapp", "retargeting"]
|
|
462
|
+
cycle_frequency: "trimestral"
|
|
463
|
+
|
|
464
|
+
failure_handling:
|
|
465
|
+
global_escalation: "@atena"
|
|
466
|
+
max_retries_per_step: 2
|
|
467
|
+
on_critical_failure: "Pausar envios, preservar lista, notificar usuario"
|
|
468
|
+
on_lgpd_violation: "BLOQUEAR IMEDIATAMENTE — risco legal"
|