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,374 @@
|
|
|
1
|
+
# Workflow Chains — Definicao de fluxos completos
|
|
2
|
+
# Cada chain define a sequencia de agente -> comando -> output -> proximo passo
|
|
3
|
+
|
|
4
|
+
chains:
|
|
5
|
+
|
|
6
|
+
# ============================================================
|
|
7
|
+
# CHAIN 1: Criacao de Copy (VSL)
|
|
8
|
+
# ============================================================
|
|
9
|
+
vsl_creation:
|
|
10
|
+
name: "Criacao de VSL"
|
|
11
|
+
descricao: "Pipeline completo de criacao de VSL — do briefing a copy aprovada"
|
|
12
|
+
steps:
|
|
13
|
+
- step: 1
|
|
14
|
+
agent: "@hermes"
|
|
15
|
+
comando: "*briefing-vsl"
|
|
16
|
+
input: "Requisitos do produto/oferta"
|
|
17
|
+
output: "briefing-vsl.md"
|
|
18
|
+
next: 2
|
|
19
|
+
- step: 2
|
|
20
|
+
agent: "@zeus"
|
|
21
|
+
comando: "*write-vsl"
|
|
22
|
+
input: "briefing-vsl.md"
|
|
23
|
+
output: "vsl-draft.md"
|
|
24
|
+
next: 3
|
|
25
|
+
- step: 3
|
|
26
|
+
agent: "@zeus"
|
|
27
|
+
comando: "*quality-gate"
|
|
28
|
+
input: "vsl-draft.md"
|
|
29
|
+
output: "quality-review.md"
|
|
30
|
+
checklist: "copy-quality-gate.md"
|
|
31
|
+
next: 4
|
|
32
|
+
on_fail:
|
|
33
|
+
action: "loop"
|
|
34
|
+
max_iterations: 3
|
|
35
|
+
return_to: 2
|
|
36
|
+
- step: 4
|
|
37
|
+
agent: "@temis"
|
|
38
|
+
comando: "*compliance-check"
|
|
39
|
+
input: "vsl-draft.md"
|
|
40
|
+
output: "compliance-review.md"
|
|
41
|
+
checklist: "compliance-vsl.md"
|
|
42
|
+
next: "done"
|
|
43
|
+
on_fail:
|
|
44
|
+
action: "return"
|
|
45
|
+
return_to: 2
|
|
46
|
+
feedback: "compliance-review.md"
|
|
47
|
+
|
|
48
|
+
# ============================================================
|
|
49
|
+
# CHAIN 2: Criacao de Anuncios Meta
|
|
50
|
+
# ============================================================
|
|
51
|
+
meta_ads_creation:
|
|
52
|
+
name: "Criacao de Anuncios Meta"
|
|
53
|
+
descricao: "Pipeline de criacao de criativos e copy para Meta Ads"
|
|
54
|
+
steps:
|
|
55
|
+
- step: 1
|
|
56
|
+
agent: "@hermes"
|
|
57
|
+
comando: "*briefing-ads"
|
|
58
|
+
input: "Produto, avatar, oferta"
|
|
59
|
+
output: "briefing-ads.md"
|
|
60
|
+
next: 2
|
|
61
|
+
- step: 2
|
|
62
|
+
agent: "@zeus"
|
|
63
|
+
comando: "*write-ads"
|
|
64
|
+
input: "briefing-ads.md"
|
|
65
|
+
output: "ads-copy-draft.md"
|
|
66
|
+
next: 3
|
|
67
|
+
- step: 3
|
|
68
|
+
agent: "@zeus"
|
|
69
|
+
comando: "*quality-gate"
|
|
70
|
+
input: "ads-copy-draft.md"
|
|
71
|
+
output: "quality-review.md"
|
|
72
|
+
checklist: "copy-quality-gate.md"
|
|
73
|
+
next: 4
|
|
74
|
+
on_fail:
|
|
75
|
+
action: "loop"
|
|
76
|
+
max_iterations: 2
|
|
77
|
+
return_to: 2
|
|
78
|
+
- step: 4
|
|
79
|
+
agent: "@temis"
|
|
80
|
+
comando: "*compliance-check"
|
|
81
|
+
input: "ads-copy-draft.md"
|
|
82
|
+
output: "compliance-review.md"
|
|
83
|
+
checklist: "compliance-meta.md"
|
|
84
|
+
next: "done"
|
|
85
|
+
on_fail:
|
|
86
|
+
action: "return"
|
|
87
|
+
return_to: 2
|
|
88
|
+
feedback: "compliance-review.md"
|
|
89
|
+
|
|
90
|
+
# ============================================================
|
|
91
|
+
# CHAIN 3: Lancamento de Funil
|
|
92
|
+
# ============================================================
|
|
93
|
+
funil_launch:
|
|
94
|
+
name: "Lancamento de Funil"
|
|
95
|
+
descricao: "Pipeline completo de validacao e lancamento de funil"
|
|
96
|
+
steps:
|
|
97
|
+
- step: 1
|
|
98
|
+
agent: "@atena"
|
|
99
|
+
comando: "*build-funil"
|
|
100
|
+
input: "Especificacao do funil, copy aprovada"
|
|
101
|
+
output: "funil montado na plataforma"
|
|
102
|
+
next: 2
|
|
103
|
+
- step: 2
|
|
104
|
+
agent: "@atena"
|
|
105
|
+
comando: "*pre-launch-check"
|
|
106
|
+
input: "URL do funil"
|
|
107
|
+
output: "funil-check.md"
|
|
108
|
+
checklist: "funil-pre-launch.md"
|
|
109
|
+
next: 3
|
|
110
|
+
on_fail:
|
|
111
|
+
action: "fix_and_retry"
|
|
112
|
+
max_iterations: 3
|
|
113
|
+
- step: 3
|
|
114
|
+
agent: "@temis"
|
|
115
|
+
comando: "*compliance-check"
|
|
116
|
+
input: "URL do funil, copy das paginas"
|
|
117
|
+
output: "compliance-funil.md"
|
|
118
|
+
checklist: "compliance-meta.md"
|
|
119
|
+
next: "done"
|
|
120
|
+
on_fail:
|
|
121
|
+
action: "return"
|
|
122
|
+
return_to: 1
|
|
123
|
+
feedback: "compliance-funil.md"
|
|
124
|
+
|
|
125
|
+
# ============================================================
|
|
126
|
+
# CHAIN 4: Lancamento de Campanha
|
|
127
|
+
# ============================================================
|
|
128
|
+
campanha_launch:
|
|
129
|
+
name: "Lancamento de Campanha"
|
|
130
|
+
descricao: "Pipeline de configuracao e ativacao de campanha de ads"
|
|
131
|
+
depends_on:
|
|
132
|
+
- "funil_launch"
|
|
133
|
+
- "meta_ads_creation"
|
|
134
|
+
steps:
|
|
135
|
+
- step: 1
|
|
136
|
+
agent: "@ares"
|
|
137
|
+
comando: "*setup-campaign"
|
|
138
|
+
input: "Criativos aprovados, funil GO, orcamento"
|
|
139
|
+
output: "campanha configurada na plataforma"
|
|
140
|
+
next: 2
|
|
141
|
+
- step: 2
|
|
142
|
+
agent: "@ares"
|
|
143
|
+
comando: "*pre-launch-check"
|
|
144
|
+
input: "ID da campanha"
|
|
145
|
+
output: "campanha-check.md"
|
|
146
|
+
checklist: "campanha-pre-launch.md"
|
|
147
|
+
next: 3
|
|
148
|
+
on_fail:
|
|
149
|
+
action: "fix_and_retry"
|
|
150
|
+
max_iterations: 2
|
|
151
|
+
- step: 3
|
|
152
|
+
agent: "@ares"
|
|
153
|
+
comando: "*activate"
|
|
154
|
+
input: "campanha-check.md aprovado"
|
|
155
|
+
output: "campanha ativada"
|
|
156
|
+
next: "done"
|
|
157
|
+
|
|
158
|
+
# ============================================================
|
|
159
|
+
# CHAIN 5: Monitoramento Diario
|
|
160
|
+
# ============================================================
|
|
161
|
+
daily_monitoring:
|
|
162
|
+
name: "Monitoramento Diario"
|
|
163
|
+
descricao: "Rotina diaria de monitoramento de campanhas ativas"
|
|
164
|
+
schedule: "diario 9h"
|
|
165
|
+
steps:
|
|
166
|
+
- step: 1
|
|
167
|
+
agent: "@ares"
|
|
168
|
+
comando: "*daily-report"
|
|
169
|
+
input: "Contas ativas"
|
|
170
|
+
output: "daily-report.md"
|
|
171
|
+
next: 2
|
|
172
|
+
- step: 2
|
|
173
|
+
agent: "@ares"
|
|
174
|
+
comando: "*check-kill-rules"
|
|
175
|
+
input: "daily-report.md, kill-rules definidas"
|
|
176
|
+
output: "kill-rules-check.md"
|
|
177
|
+
next: 3
|
|
178
|
+
- step: 3
|
|
179
|
+
agent: "@ares"
|
|
180
|
+
comando: "*optimize"
|
|
181
|
+
input: "daily-report.md, kill-rules-check.md"
|
|
182
|
+
output: "optimization-actions.md"
|
|
183
|
+
next: "done"
|
|
184
|
+
conditions:
|
|
185
|
+
- "Se kill rule acionada -> pausar ad/adset imediatamente"
|
|
186
|
+
- "Se metrica dentro do range -> nenhuma acao"
|
|
187
|
+
- "Se oportunidade identificada -> propor escala"
|
|
188
|
+
|
|
189
|
+
# ============================================================
|
|
190
|
+
# CHAIN 6: Otimizacao de Campanha
|
|
191
|
+
# ============================================================
|
|
192
|
+
campaign_optimization:
|
|
193
|
+
name: "Otimizacao de Campanha"
|
|
194
|
+
descricao: "Ciclo de otimizacao baseado em dados"
|
|
195
|
+
steps:
|
|
196
|
+
- step: 1
|
|
197
|
+
agent: "@ares"
|
|
198
|
+
comando: "*analyze-performance"
|
|
199
|
+
input: "Dados de performance (7d, 14d, 30d)"
|
|
200
|
+
output: "performance-analysis.md"
|
|
201
|
+
next: 2
|
|
202
|
+
- step: 2
|
|
203
|
+
agent: "@ares"
|
|
204
|
+
comando: "*identify-winners"
|
|
205
|
+
input: "performance-analysis.md"
|
|
206
|
+
output: "winners-losers.md"
|
|
207
|
+
next: 3
|
|
208
|
+
- step: 3
|
|
209
|
+
agent: "@ares"
|
|
210
|
+
comando: "*scale-plan"
|
|
211
|
+
input: "winners-losers.md"
|
|
212
|
+
output: "scale-plan.md"
|
|
213
|
+
next: 4
|
|
214
|
+
conditions:
|
|
215
|
+
- "Winners: aumentar budget 20-30% a cada 48-72h"
|
|
216
|
+
- "Losers: pausar conforme kill rules"
|
|
217
|
+
- "Medianos: dar mais 48h ou testar variacao"
|
|
218
|
+
- step: 4
|
|
219
|
+
agent: "@ares"
|
|
220
|
+
comando: "*execute-optimization"
|
|
221
|
+
input: "scale-plan.md"
|
|
222
|
+
output: "actions-log.md"
|
|
223
|
+
next: "done"
|
|
224
|
+
|
|
225
|
+
# ============================================================
|
|
226
|
+
# CHAIN 7: Criacao de Anuncios TikTok
|
|
227
|
+
# ============================================================
|
|
228
|
+
tiktok_ads_creation:
|
|
229
|
+
name: "Criacao de Anuncios TikTok"
|
|
230
|
+
descricao: "Pipeline de criativos para TikTok Ads"
|
|
231
|
+
steps:
|
|
232
|
+
- step: 1
|
|
233
|
+
agent: "@hermes"
|
|
234
|
+
comando: "*briefing-tiktok"
|
|
235
|
+
input: "Produto, avatar, estilo nativo"
|
|
236
|
+
output: "briefing-tiktok.md"
|
|
237
|
+
next: 2
|
|
238
|
+
- step: 2
|
|
239
|
+
agent: "@zeus"
|
|
240
|
+
comando: "*write-tiktok-script"
|
|
241
|
+
input: "briefing-tiktok.md"
|
|
242
|
+
output: "tiktok-script-draft.md"
|
|
243
|
+
next: 3
|
|
244
|
+
- step: 3
|
|
245
|
+
agent: "@zeus"
|
|
246
|
+
comando: "*quality-gate"
|
|
247
|
+
input: "tiktok-script-draft.md"
|
|
248
|
+
output: "quality-review.md"
|
|
249
|
+
checklist: "copy-quality-gate.md"
|
|
250
|
+
next: 4
|
|
251
|
+
on_fail:
|
|
252
|
+
action: "loop"
|
|
253
|
+
max_iterations: 2
|
|
254
|
+
return_to: 2
|
|
255
|
+
- step: 4
|
|
256
|
+
agent: "@temis"
|
|
257
|
+
comando: "*compliance-check"
|
|
258
|
+
input: "tiktok-script-draft.md"
|
|
259
|
+
output: "compliance-review.md"
|
|
260
|
+
checklist: "compliance-tiktok.md"
|
|
261
|
+
next: "done"
|
|
262
|
+
on_fail:
|
|
263
|
+
action: "return"
|
|
264
|
+
return_to: 2
|
|
265
|
+
feedback: "compliance-review.md"
|
|
266
|
+
|
|
267
|
+
# ============================================================
|
|
268
|
+
# CHAIN 8: Criacao de Anuncios Google
|
|
269
|
+
# ============================================================
|
|
270
|
+
google_ads_creation:
|
|
271
|
+
name: "Criacao de Anuncios Google"
|
|
272
|
+
descricao: "Pipeline de copy para Google Ads (Search, Display, YouTube)"
|
|
273
|
+
steps:
|
|
274
|
+
- step: 1
|
|
275
|
+
agent: "@hermes"
|
|
276
|
+
comando: "*briefing-google"
|
|
277
|
+
input: "Produto, palavras-chave, tipo de campanha"
|
|
278
|
+
output: "briefing-google.md"
|
|
279
|
+
next: 2
|
|
280
|
+
- step: 2
|
|
281
|
+
agent: "@zeus"
|
|
282
|
+
comando: "*write-google-ads"
|
|
283
|
+
input: "briefing-google.md"
|
|
284
|
+
output: "google-ads-draft.md"
|
|
285
|
+
next: 3
|
|
286
|
+
- step: 3
|
|
287
|
+
agent: "@zeus"
|
|
288
|
+
comando: "*quality-gate"
|
|
289
|
+
input: "google-ads-draft.md"
|
|
290
|
+
output: "quality-review.md"
|
|
291
|
+
checklist: "copy-quality-gate.md"
|
|
292
|
+
next: 4
|
|
293
|
+
on_fail:
|
|
294
|
+
action: "loop"
|
|
295
|
+
max_iterations: 2
|
|
296
|
+
return_to: 2
|
|
297
|
+
- step: 4
|
|
298
|
+
agent: "@temis"
|
|
299
|
+
comando: "*compliance-check"
|
|
300
|
+
input: "google-ads-draft.md"
|
|
301
|
+
output: "compliance-review.md"
|
|
302
|
+
checklist: "compliance-google.md"
|
|
303
|
+
next: "done"
|
|
304
|
+
on_fail:
|
|
305
|
+
action: "return"
|
|
306
|
+
return_to: 2
|
|
307
|
+
feedback: "compliance-review.md"
|
|
308
|
+
|
|
309
|
+
# ============================================================
|
|
310
|
+
# HANDOFF SUGGESTIONS
|
|
311
|
+
# ============================================================
|
|
312
|
+
|
|
313
|
+
handoff_suggestions:
|
|
314
|
+
|
|
315
|
+
"@hermes":
|
|
316
|
+
after_briefing:
|
|
317
|
+
suggest: "Briefing pronto. Proximo passo: @zeus *write para criar a copy."
|
|
318
|
+
next_agent: "@zeus"
|
|
319
|
+
after_research:
|
|
320
|
+
suggest: "Pesquisa concluida. Proximo passo: @zeus *write com os insights."
|
|
321
|
+
next_agent: "@zeus"
|
|
322
|
+
|
|
323
|
+
"@zeus":
|
|
324
|
+
after_write:
|
|
325
|
+
suggest: "Rascunho pronto. Executando quality gate automaticamente."
|
|
326
|
+
next_agent: "@zeus"
|
|
327
|
+
next_command: "*quality-gate"
|
|
328
|
+
after_quality_gate_pass:
|
|
329
|
+
suggest: "Copy aprovada no quality gate. Proximo passo: @temis *compliance-check."
|
|
330
|
+
next_agent: "@temis"
|
|
331
|
+
after_quality_gate_fail:
|
|
332
|
+
suggest: "Copy reprovada. Corrigindo com base no feedback e re-submetendo."
|
|
333
|
+
next_agent: "@zeus"
|
|
334
|
+
next_command: "*rewrite"
|
|
335
|
+
|
|
336
|
+
"@temis":
|
|
337
|
+
after_compliance_pass:
|
|
338
|
+
suggest: "Compliance aprovado. Copy liberada para producao."
|
|
339
|
+
next_agent: null
|
|
340
|
+
after_compliance_fail:
|
|
341
|
+
suggest: "Compliance bloqueado. Devolvendo para @zeus com itens a corrigir."
|
|
342
|
+
next_agent: "@zeus"
|
|
343
|
+
next_command: "*rewrite"
|
|
344
|
+
include_feedback: true
|
|
345
|
+
|
|
346
|
+
"@atena":
|
|
347
|
+
after_build:
|
|
348
|
+
suggest: "Funil montado. Executando pre-launch check."
|
|
349
|
+
next_agent: "@atena"
|
|
350
|
+
next_command: "*pre-launch-check"
|
|
351
|
+
after_pre_launch_go:
|
|
352
|
+
suggest: "Funil GO. Proximo passo: @ares *setup-campaign para configurar campanha."
|
|
353
|
+
next_agent: "@ares"
|
|
354
|
+
after_pre_launch_nogo:
|
|
355
|
+
suggest: "Funil NO-GO. Corrigindo itens reprovados e re-testando."
|
|
356
|
+
next_agent: "@atena"
|
|
357
|
+
next_command: "*fix-and-recheck"
|
|
358
|
+
|
|
359
|
+
"@ares":
|
|
360
|
+
after_setup:
|
|
361
|
+
suggest: "Campanha configurada. Executando pre-launch check."
|
|
362
|
+
next_agent: "@ares"
|
|
363
|
+
next_command: "*pre-launch-check"
|
|
364
|
+
after_pre_launch_go:
|
|
365
|
+
suggest: "Campanha GO. Pronta para ativacao com *activate."
|
|
366
|
+
next_agent: "@ares"
|
|
367
|
+
next_command: "*activate"
|
|
368
|
+
after_daily_report:
|
|
369
|
+
suggest: "Report diario gerado. Verificando kill rules."
|
|
370
|
+
next_agent: "@ares"
|
|
371
|
+
next_command: "*check-kill-rules"
|
|
372
|
+
after_optimization:
|
|
373
|
+
suggest: "Otimizacao concluida. Acoes registradas em actions-log.md."
|
|
374
|
+
next_agent: null
|
|
@@ -0,0 +1,314 @@
|
|
|
1
|
+
---
|
|
2
|
+
task: diagnostico-funil()
|
|
3
|
+
responsavel: Analista
|
|
4
|
+
tipo: analise
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Diagnostico de Funil
|
|
8
|
+
|
|
9
|
+
## Descricao
|
|
10
|
+
|
|
11
|
+
Coletar metricas de cada etapa do funil, comparar com benchmarks de referencia (metricas-referencia.md), identificar o gargalo principal (maior gap entre metrica real e benchmark), diagnosticar a causa raiz usando arvore de decisao por etapa (LP baixa → copy/design/velocidade, Checkout baixa → confianca/preco/UX, Upsell baixa → oferta/timing), e recomendar acoes corretivas com atribuicao de agente responsavel.
|
|
12
|
+
|
|
13
|
+
## Entrada
|
|
14
|
+
|
|
15
|
+
| Campo | Origem | Obrigatorio | Validacao |
|
|
16
|
+
|-------|--------|-------------|-----------|
|
|
17
|
+
| Metricas do funil | Meta Ads Manager + Plataforma | Sim | Dados de pelo menos 7 dias |
|
|
18
|
+
| Arquitetura do funil | `arquitetar-funil-vsl.md` output | Sim | Etapas definidas |
|
|
19
|
+
| Benchmarks | `metricas-referencia.md` | Sim | Valores de referencia por etapa |
|
|
20
|
+
| Periodo de analise | Usuario | Sim | Data inicio e fim (min 7 dias) |
|
|
21
|
+
| Volume de trafego | Meta Ads | Sim | Impressoes, cliques, gastos |
|
|
22
|
+
| Dados de conversao | Plataforma de checkout | Sim | Vendas, abandono, upsell take |
|
|
23
|
+
|
|
24
|
+
## Saida
|
|
25
|
+
|
|
26
|
+
| Campo | Destino | Template |
|
|
27
|
+
|-------|---------|----------|
|
|
28
|
+
| Relatorio de diagnostico | `outputs/analise/diagnostico-funil-{data}.md` | — |
|
|
29
|
+
| Mapa de metricas por etapa | Secao do relatorio | — |
|
|
30
|
+
| Identificacao do gargalo | Secao do relatorio | — |
|
|
31
|
+
| Diagnostico de causa raiz | Secao do relatorio | — |
|
|
32
|
+
| Plano de acao com responsaveis | Secao do relatorio | — |
|
|
33
|
+
|
|
34
|
+
## Pre-conditions
|
|
35
|
+
|
|
36
|
+
- [ ] Funil ativo com trafego ha pelo menos 7 dias
|
|
37
|
+
- [ ] Acesso aos dados de Meta Ads (impressoes, cliques, CPC, CTR)
|
|
38
|
+
- [ ] Acesso aos dados da plataforma de checkout (vendas, abandono)
|
|
39
|
+
- [ ] Benchmarks de referencia disponiveis
|
|
40
|
+
- [ ] Periodo de analise definido
|
|
41
|
+
|
|
42
|
+
## Workflow
|
|
43
|
+
|
|
44
|
+
### Passo 1 — Coletar metricas por etapa
|
|
45
|
+
|
|
46
|
+
1. **Coletar dados de cada etapa do funil**:
|
|
47
|
+
|
|
48
|
+
| Etapa | Metrica | Valor real | Benchmark | Gap | Status |
|
|
49
|
+
|-------|---------|-----------|-----------|-----|--------|
|
|
50
|
+
| **Anuncio** | CPM | R$ [valor] | R$ 15-30 | [%] | OK/ALERTA/CRITICO |
|
|
51
|
+
| **Anuncio** | CTR | [%] | > 1.5% | [%] | OK/ALERTA/CRITICO |
|
|
52
|
+
| **Anuncio** | CPC | R$ [valor] | R$ 1-3 | [%] | OK/ALERTA/CRITICO |
|
|
53
|
+
| **Anuncio** | Hook rate (3s view) | [%] | > 25% | [%] | OK/ALERTA/CRITICO |
|
|
54
|
+
| **Anuncio** | ThruPlay (15s+) | [%] | > 15% | [%] | OK/ALERTA/CRITICO |
|
|
55
|
+
| **LP/VSL** | Taxa de visualizacao | [%] | > 30% (play) | [%] | OK/ALERTA/CRITICO |
|
|
56
|
+
| **LP/VSL** | Tempo medio na pagina | [seg] | > 120s | [%] | OK/ALERTA/CRITICO |
|
|
57
|
+
| **LP/VSL** | Taxa de clique no CTA | [%] | > 10% | [%] | OK/ALERTA/CRITICO |
|
|
58
|
+
| **LP/VSL** | Bounce rate | [%] | < 60% | [%] | OK/ALERTA/CRITICO |
|
|
59
|
+
| **Checkout** | Taxa de inicio | [%] | > 30% dos cliques CTA | [%] | OK/ALERTA/CRITICO |
|
|
60
|
+
| **Checkout** | Taxa de conclusao | [%] | > 50% dos que iniciam | [%] | OK/ALERTA/CRITICO |
|
|
61
|
+
| **Checkout** | Taxa de abandono | [%] | < 50% | [%] | OK/ALERTA/CRITICO |
|
|
62
|
+
| **Bump** | Take rate | [%] | > 20% | [%] | OK/ALERTA/CRITICO |
|
|
63
|
+
| **Upsell** | Take rate | [%] | > 15% | [%] | OK/ALERTA/CRITICO |
|
|
64
|
+
| **Downsell** | Take rate | [%] | > 10% | [%] | OK/ALERTA/CRITICO |
|
|
65
|
+
| **Global** | CPA | R$ [valor] | R$ [alvo] | [%] | OK/ALERTA/CRITICO |
|
|
66
|
+
| **Global** | ROAS | [x] | > [alvo]x | [%] | OK/ALERTA/CRITICO |
|
|
67
|
+
| **Global** | AOV | R$ [valor] | R$ [esperado] | [%] | OK/ALERTA/CRITICO |
|
|
68
|
+
|
|
69
|
+
2. **Classificar status de cada metrica**:
|
|
70
|
+
- **OK**: Dentro do benchmark (+/- 10%)
|
|
71
|
+
- **ALERTA**: 10-30% abaixo do benchmark
|
|
72
|
+
- **CRITICO**: > 30% abaixo do benchmark
|
|
73
|
+
|
|
74
|
+
### Passo 2 — Identificar gargalo principal
|
|
75
|
+
|
|
76
|
+
3. **Calcular o gap percentual** de cada metrica:
|
|
77
|
+
```
|
|
78
|
+
Gap = (Benchmark - Valor Real) / Benchmark * 100
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
4. **Rankear por impacto no resultado final**:
|
|
82
|
+
- Multiplicar o gap pelo peso da etapa:
|
|
83
|
+
|
|
84
|
+
| Etapa | Peso | Justificativa |
|
|
85
|
+
|-------|------|---------------|
|
|
86
|
+
| Anuncio (CTR) | 3 | Afeta todo o funil |
|
|
87
|
+
| LP/VSL (CTA click) | 3 | Determina volume no checkout |
|
|
88
|
+
| Checkout (conclusao) | 5 | Conversao final |
|
|
89
|
+
| Bump (take rate) | 1 | Impacto no AOV |
|
|
90
|
+
| Upsell (take rate) | 2 | Impacto significativo no AOV |
|
|
91
|
+
|
|
92
|
+
```
|
|
93
|
+
Impacto = Gap% * Peso
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
5. **Identificar o gargalo**: Etapa com maior valor de Impacto.
|
|
97
|
+
```
|
|
98
|
+
GARGALO IDENTIFICADO
|
|
99
|
+
Etapa: [nome da etapa]
|
|
100
|
+
Metrica: [qual metrica]
|
|
101
|
+
Valor real: [X]
|
|
102
|
+
Benchmark: [Y]
|
|
103
|
+
Gap: [Z%]
|
|
104
|
+
Impacto calculado: [valor]
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
### Passo 3 — Diagnosticar causa raiz
|
|
108
|
+
|
|
109
|
+
6. **Aplicar arvore de decisao** baseada na etapa do gargalo:
|
|
110
|
+
|
|
111
|
+
**Se gargalo e no ANUNCIO (CTR/Hook rate baixo)**:
|
|
112
|
+
```
|
|
113
|
+
CTR < 1.5%?
|
|
114
|
+
├── Hook rate < 25%?
|
|
115
|
+
│ ├── SIM → Problema: HOOK FRACO
|
|
116
|
+
│ │ Causa provavel: Hook nao prende nos 3 primeiros segundos
|
|
117
|
+
│ │ Acoes: Testar novos hooks, mudar formato visual, testar novo angulo
|
|
118
|
+
│ │ Responsavel: Diretor Criativo (criar-conceito.md)
|
|
119
|
+
│ └── NAO → Problema: BODY/CTA FRACO
|
|
120
|
+
│ Causa provavel: Hook funciona mas copy nao converte
|
|
121
|
+
│ Acoes: Revisar Primary Text, testar CTA diferente
|
|
122
|
+
│ Responsavel: Copywriter (escrever-ad-meta.md)
|
|
123
|
+
└── CPM > 2x media?
|
|
124
|
+
├── SIM → Problema: AUDIENCIA SATURADA/CARA
|
|
125
|
+
│ Causa provavel: Audiencia muito pequena ou competitiva
|
|
126
|
+
│ Acoes: Testar nova audiencia, expandir LAL, testar broad
|
|
127
|
+
│ Responsavel: Media Buyer (montar-campanha-meta.md)
|
|
128
|
+
└── NAO → Problema: CRIATIVO NAO RELEVANTE
|
|
129
|
+
Causa provavel: Criativo nao ressoa com a audiencia
|
|
130
|
+
Acoes: Testar novo angulo, novo formato, novo conceito
|
|
131
|
+
Responsavel: Diretor Criativo (criar-conceito.md)
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
**Se gargalo e na LP/VSL (taxa de clique CTA baixa)**:
|
|
135
|
+
```
|
|
136
|
+
CTA click < 10%?
|
|
137
|
+
├── Bounce rate > 60%?
|
|
138
|
+
│ ├── Tempo < 10s?
|
|
139
|
+
│ │ ├── SIM → Problema: VELOCIDADE DE CARREGAMENTO
|
|
140
|
+
│ │ │ Causa: Pagina lenta, usuario sai antes de carregar
|
|
141
|
+
│ │ │ Acoes: Otimizar imagens, minificar JS/CSS, CDN
|
|
142
|
+
│ │ │ Responsavel: Desenvolvedor
|
|
143
|
+
│ │ └── NAO → Problema: DESCONEXAO ANUNCIO-LP
|
|
144
|
+
│ │ Causa: Promessa do anuncio nao corresponde a LP
|
|
145
|
+
│ │ Acoes: Alinhar headline da LP com anuncio
|
|
146
|
+
│ │ Responsavel: Copywriter (escrever-pagina-vendas.md)
|
|
147
|
+
│ └── Bounce rate normal?
|
|
148
|
+
│ ├── Tempo > 120s mas sem CTA click?
|
|
149
|
+
│ │ ├── SIM → Problema: CTA FRACO OU ESCONDIDO
|
|
150
|
+
│ │ │ Causa: Usuario le mas nao encontra ou nao clica no CTA
|
|
151
|
+
│ │ │ Acoes: CTA mais visivel, mais CTAs ao longo da pagina, copy do botao
|
|
152
|
+
│ │ │ Responsavel: Copywriter + Designer
|
|
153
|
+
│ │ └── NAO → Problema: COPY NAO CONVENCE
|
|
154
|
+
│ │ Causa: Conteudo nao gera desejo suficiente
|
|
155
|
+
│ │ Acoes: Reforcar provas, mecanismo, stack de valor
|
|
156
|
+
│ │ Responsavel: Copywriter (escrever-pagina-vendas.md)
|
|
157
|
+
│ └── Play rate < 30% (se VSL)?
|
|
158
|
+
│ └── SIM → Problema: VSL NAO ENGAJA
|
|
159
|
+
│ Causa: Pre-lead ou lead fracos, video nao carrega
|
|
160
|
+
│ Acoes: Revisar hook da VSL, testar autoplay, testar thumbnail
|
|
161
|
+
│ Responsavel: Copywriter (escrever-vsl-full.md)
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
**Se gargalo e no CHECKOUT (taxa de conclusao baixa)**:
|
|
165
|
+
```
|
|
166
|
+
Conclusao < 50%?
|
|
167
|
+
├── Abandono no campo de pagamento?
|
|
168
|
+
│ ├── SIM → Problema: CONFIANCA/SEGURANCA
|
|
169
|
+
│ │ Causa: Usuario nao confia para colocar cartao
|
|
170
|
+
│ │ Acoes: Selos de seguranca, depoimentos no checkout, garantia visivel
|
|
171
|
+
│ │ Responsavel: Designer + Copywriter
|
|
172
|
+
│ └── NAO (abandono antes)?
|
|
173
|
+
│ ├── Campo de endereco? → Problema: FRICAO NO FORMULARIO
|
|
174
|
+
│ │ Acoes: Reduzir campos, auto-complete CEP
|
|
175
|
+
│ │ Responsavel: Desenvolvedor
|
|
176
|
+
│ └── Primeiro campo?
|
|
177
|
+
│ ├── Preco visivel pela primeira vez?
|
|
178
|
+
│ │ ├── SIM → Problema: CHOQUE DE PRECO
|
|
179
|
+
│ │ │ Causa: Preco nao foi ancorado antes do checkout
|
|
180
|
+
│ │ │ Acoes: Ancorar preco na LP, mostrar valor antes
|
|
181
|
+
│ │ │ Responsavel: Copywriter (escrever-pagina-vendas.md)
|
|
182
|
+
│ │ └── NAO → Problema: UX DO CHECKOUT
|
|
183
|
+
│ │ Causa: Interface confusa, muitos passos
|
|
184
|
+
│ │ Acoes: Simplificar checkout, one-page, progress bar
|
|
185
|
+
│ │ Responsavel: Desenvolvedor/Plataforma
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
**Se gargalo e no UPSELL (take rate baixa)**:
|
|
189
|
+
```
|
|
190
|
+
Take rate < 15%?
|
|
191
|
+
├── Pagina de upsell carrega?
|
|
192
|
+
│ ├── NAO → Problema: TECNICO
|
|
193
|
+
│ │ Acoes: Corrigir redirecionamento pos-compra
|
|
194
|
+
│ │ Responsavel: Desenvolvedor
|
|
195
|
+
│ └── SIM
|
|
196
|
+
│ ├── Video de upsell existe?
|
|
197
|
+
│ │ ├── NAO → Problema: SEM ARGUMENTO
|
|
198
|
+
│ │ │ Causa: Upsell so com texto nao converte
|
|
199
|
+
│ │ │ Acoes: Criar video de upsell (3-5 min)
|
|
200
|
+
│ │ │ Responsavel: Copywriter
|
|
201
|
+
│ │ └── SIM → Problema: OFERTA FRACA
|
|
202
|
+
│ │ Causa: Upsell nao e percebido como necessario
|
|
203
|
+
│ │ Acoes: Reposicionar como acelerador, ajustar preco, mudar produto
|
|
204
|
+
│ │ Responsavel: Estrategista (arquitetar-funil-vsl.md)
|
|
205
|
+
│ └── Preco do upsell > 150% do front-end?
|
|
206
|
+
│ └── SIM → Problema: PRECO DESPROPORCIONAL
|
|
207
|
+
│ Acoes: Reduzir preco ou aumentar valor percebido
|
|
208
|
+
│ Responsavel: Estrategista
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
### Passo 4 — Recomendar acoes
|
|
212
|
+
|
|
213
|
+
7. **Para cada problema identificado**, definir acao:
|
|
214
|
+
```
|
|
215
|
+
ACAO [numero]
|
|
216
|
+
Problema: [descricao]
|
|
217
|
+
Etapa do funil: [onde ocorre]
|
|
218
|
+
Causa raiz: [diagnostico]
|
|
219
|
+
Acao recomendada: [o que fazer]
|
|
220
|
+
Responsavel: [agente/funcao]
|
|
221
|
+
Task relacionada: [task do DRM-Core a executar]
|
|
222
|
+
Prioridade: [CRITICA/ALTA/MEDIA/BAIXA]
|
|
223
|
+
Impacto esperado: [qual metrica deve melhorar e em quanto]
|
|
224
|
+
Prazo sugerido: [dias para implementar]
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
8. **Priorizar acoes** por impacto:
|
|
228
|
+
- Prioridade 1: Gargalo principal (maior impacto no resultado final)
|
|
229
|
+
- Prioridade 2: Quick wins (facil de implementar com impacto moderado)
|
|
230
|
+
- Prioridade 3: Otimizacoes incrementais
|
|
231
|
+
|
|
232
|
+
9. **Tabela resumo de acoes**:
|
|
233
|
+
|
|
234
|
+
| # | Acao | Etapa | Prioridade | Responsavel | Task | Prazo |
|
|
235
|
+
|---|------|-------|-----------|-------------|------|-------|
|
|
236
|
+
| 1 | [acao] | [etapa] | CRITICA | [agente] | [task] | [dias] |
|
|
237
|
+
| 2 | [acao] | [etapa] | ALTA | [agente] | [task] | [dias] |
|
|
238
|
+
| ... | ... | ... | ... | ... | ... | ... |
|
|
239
|
+
|
|
240
|
+
### Passo 5 — Calcular impacto projetado
|
|
241
|
+
|
|
242
|
+
10. **Projetar resultado se acoes forem implementadas**:
|
|
243
|
+
```
|
|
244
|
+
CENARIO ATUAL
|
|
245
|
+
Trafego: [cliques/dia]
|
|
246
|
+
CPA: R$ [valor]
|
|
247
|
+
Vendas: [numero/dia]
|
|
248
|
+
ROAS: [x]
|
|
249
|
+
AOV: R$ [valor]
|
|
250
|
+
Receita: R$ [valor/dia]
|
|
251
|
+
|
|
252
|
+
CENARIO PROJETADO (apos correcoes)
|
|
253
|
+
Metrica corrigida: [qual] de [atual] para [projetado]
|
|
254
|
+
Novo CPA: R$ [valor]
|
|
255
|
+
Novas vendas: [numero/dia]
|
|
256
|
+
Novo ROAS: [x]
|
|
257
|
+
Novo AOV: R$ [valor]
|
|
258
|
+
Nova receita: R$ [valor/dia]
|
|
259
|
+
|
|
260
|
+
GANHO PROJETADO: R$ [diferenca]/dia = R$ [diferenca * 30]/mes
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
### Passo 6 — Compilar relatorio
|
|
264
|
+
|
|
265
|
+
11. **Gerar documento final** com:
|
|
266
|
+
- Resumo executivo (1 paragrafo: gargalo + acao principal)
|
|
267
|
+
- Mapa de metricas por etapa (tabela completa)
|
|
268
|
+
- Gargalo identificado com calculo de impacto
|
|
269
|
+
- Diagnostico de causa raiz (arvore de decisao aplicada)
|
|
270
|
+
- Plano de acao priorizado com responsaveis
|
|
271
|
+
- Projecao de resultado apos correcoes
|
|
272
|
+
- Proximos passos recomendados
|
|
273
|
+
|
|
274
|
+
## Post-conditions
|
|
275
|
+
|
|
276
|
+
- [ ] Metricas de todas as etapas coletadas e comparadas com benchmarks
|
|
277
|
+
- [ ] Gargalo principal identificado com calculo de impacto
|
|
278
|
+
- [ ] Causa raiz diagnosticada via arvore de decisao
|
|
279
|
+
- [ ] Plano de acao com pelo menos 3 acoes priorizadas
|
|
280
|
+
- [ ] Cada acao tem responsavel e task atribuidos
|
|
281
|
+
- [ ] Projecao de resultado calculada
|
|
282
|
+
- [ ] Relatorio salvo no path correto
|
|
283
|
+
|
|
284
|
+
## Acceptance Criteria
|
|
285
|
+
|
|
286
|
+
- [ ] Todas as etapas do funil tem metricas coletadas
|
|
287
|
+
- [ ] Cada metrica tem: valor real, benchmark, gap%, status
|
|
288
|
+
- [ ] Gargalo identificado com criterio objetivo (maior impacto)
|
|
289
|
+
- [ ] Causa raiz segue arvore de decisao (nao e opiniao)
|
|
290
|
+
- [ ] Acoes sao especificas e acionaveis (nao genericas)
|
|
291
|
+
- [ ] Cada acao tem responsavel nomeado
|
|
292
|
+
- [ ] Tasks do DRM-Core referenciadas nas acoes
|
|
293
|
+
- [ ] Projecao de ganho calculada em R$/mes
|
|
294
|
+
- [ ] Relatorio tem resumo executivo para decisao rapida
|
|
295
|
+
|
|
296
|
+
## Frameworks
|
|
297
|
+
|
|
298
|
+
- **Funnel Diagnostics**: Analise etapa-por-etapa com benchmarks
|
|
299
|
+
- **Root Cause Analysis**: Arvore de decisao por etapa
|
|
300
|
+
- **Impact Score**: Gap% * Peso da etapa
|
|
301
|
+
- **Metricas de Referencia**: Benchmarks por tipo de funil e nicho
|
|
302
|
+
|
|
303
|
+
## Error Handling
|
|
304
|
+
|
|
305
|
+
| Erro | Acao |
|
|
306
|
+
|------|------|
|
|
307
|
+
| Dados insuficientes (< 7 dias) | ALERTAR. Analise pode nao ser confiavel, anotar limitacao |
|
|
308
|
+
| Volume muito baixo (< 100 cliques) | ALERTAR. Metricas podem nao ser significativas estatisticamente |
|
|
309
|
+
| Metrica indisponvel (sem tracking) | MARCAR como "N/D", recomendar implementacao de tracking |
|
|
310
|
+
| Todas as metricas OK (nenhum gargalo) | REPORTAR como saudavel, recomendar escala |
|
|
311
|
+
| Multiplos gargalos com impacto similar | PRIORIZAR o mais proximo do topo do funil (anuncio > LP > checkout) |
|
|
312
|
+
| Benchmarks desatualizados | ALERTAR. Usar com cautela, recomendar atualizacao |
|
|
313
|
+
| Dados inconsistentes (Meta vs plataforma) | ALERTAR. Usar dados do pixel como primario, plataforma como secundario |
|
|
314
|
+
| Funil sem upsell/bump | ADAPTAR. Avaliar apenas etapas existentes |
|