drm-core 1.0.0 → 1.3.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.
Files changed (60) hide show
  1. package/cli/index.js +396 -201
  2. package/package.json +1 -1
  3. package/scaffold/.claude/CLAUDE.md +65 -0
  4. package/scaffold/.claude/settings.json +30 -0
  5. package/scaffold/.claude/settings.local.json +8 -0
  6. package/scaffold/.drm-core/agents/afrodite.md +10 -0
  7. package/scaffold/.drm-core/agents/apolo.md +9 -0
  8. package/scaffold/.drm-core/agents/atena.md +9 -0
  9. package/scaffold/.drm-core/agents/cronos.md +9 -0
  10. package/scaffold/.drm-core/agents/hefesto.md +10 -0
  11. package/scaffold/.drm-core/agents/hermes.md +9 -0
  12. package/scaffold/.drm-core/agents/poseidon.md +9 -0
  13. package/scaffold/.drm-core/agents/temis.md +9 -0
  14. package/scaffold/.drm-core/agents/zeus.md +10 -0
  15. package/scaffold/.drm-core/checklists/campanha-pre-launch.md +49 -0
  16. package/scaffold/.drm-core/checklists/compliance-google.md +46 -0
  17. package/scaffold/.drm-core/checklists/compliance-meta.md +49 -0
  18. package/scaffold/.drm-core/checklists/compliance-tiktok.md +46 -0
  19. package/scaffold/.drm-core/checklists/compliance-vsl.md +48 -0
  20. package/scaffold/.drm-core/checklists/copy-quality-gate.md +55 -0
  21. package/scaffold/.drm-core/checklists/funil-pre-launch.md +66 -0
  22. package/scaffold/.drm-core/checklists/whatsapp-compliance.md +49 -0
  23. package/scaffold/.drm-core/data/agent-config.yaml +220 -0
  24. package/scaffold/.drm-core/data/workflow-chains.yaml +374 -0
  25. package/scaffold/.drm-core/rules/interaction-patterns.md +138 -0
  26. package/scaffold/.drm-core/tasks/analise/diagnostico-funil.md +314 -0
  27. package/scaffold/.drm-core/tasks/compliance/revisar-ad-meta.md +242 -0
  28. package/scaffold/.drm-core/tasks/copy/escrever-ad-meta.md +191 -0
  29. package/scaffold/.drm-core/tasks/copy/escrever-email-sequence.md +237 -0
  30. package/scaffold/.drm-core/tasks/copy/escrever-msgs-whatsapp.md +220 -0
  31. package/scaffold/.drm-core/tasks/copy/escrever-pagina-vendas.md +276 -0
  32. package/scaffold/.drm-core/tasks/copy/escrever-vsl-full.md +235 -0
  33. package/scaffold/.drm-core/tasks/direcao-criativa/criar-conceito.md +249 -0
  34. package/scaffold/.drm-core/tasks/direcao-criativa/validar-criativo.md +202 -0
  35. package/scaffold/.drm-core/tasks/estrategia/criar-briefing.md +221 -0
  36. package/scaffold/.drm-core/tasks/estrategia/pesquisa-mercado.md +200 -0
  37. package/scaffold/.drm-core/tasks/funil/arquitetar-funil-vsl.md +228 -0
  38. package/scaffold/.drm-core/tasks/funil/fluxo-whatsapp-backend.md +291 -0
  39. package/scaffold/.drm-core/tasks/trafego/escalar-campanha.md +256 -0
  40. package/scaffold/.drm-core/tasks/trafego/montar-campanha-meta.md +303 -0
  41. package/scaffold/.drm-core/templates/ad-meta-template.md +391 -0
  42. package/scaffold/.drm-core/templates/avatar-template.md +468 -0
  43. package/scaffold/.drm-core/templates/briefing-estrategico-template.md +462 -0
  44. package/scaffold/.drm-core/templates/compliance-report-template.md +86 -0
  45. package/scaffold/.drm-core/templates/estrutura-campanha-template.md +492 -0
  46. package/scaffold/.drm-core/templates/funil-vsl-template.md +470 -0
  47. package/scaffold/.drm-core/templates/msgs-whatsapp-template.md +516 -0
  48. package/scaffold/.drm-core/templates/pagina-vendas-template.md +517 -0
  49. package/scaffold/.drm-core/templates/relatorio-template.md +313 -0
  50. package/scaffold/.drm-core/templates/vsl-curta-template.md +341 -0
  51. package/scaffold/.drm-core/templates/vsl-full-template.md +780 -0
  52. package/scaffold/.drm-core/templates/vsl-mini-template.md +360 -0
  53. package/scaffold/.drm-core/workflows/backend-whatsapp.yaml +395 -0
  54. package/scaffold/.drm-core/workflows/campanha-trafego.yaml +465 -0
  55. package/scaffold/.drm-core/workflows/copy-review-loop.yaml +333 -0
  56. package/scaffold/.drm-core/workflows/funil-vsl-completo.yaml +544 -0
  57. package/scaffold/.drm-core/workflows/lancamento-produto.yaml +402 -0
  58. package/scaffold/.drm-core/workflows/microlead-pipeline.yaml +408 -0
  59. package/scaffold/.drm-core/workflows/otimizacao-cycle.yaml +394 -0
  60. package/scaffold/.drm-core/workflows/reativacao-cycle.yaml +468 -0
@@ -0,0 +1,395 @@
1
+ # =============================================================================
2
+ # BACKEND WHATSAPP — Workflow de Automacao (4 Fases)
3
+ # Pipeline: contexto → fluxo de mensagens → copy → compliance
4
+ # =============================================================================
5
+
6
+ workflow:
7
+ id: backend-whatsapp
8
+ name: "Backend WhatsApp"
9
+ version: "1.0"
10
+ description: >
11
+ Cria o backend completo de automacao WhatsApp pos-compra e nurture.
12
+ Desde o trigger de compra ate follow-up de high-ticket, passando por
13
+ welcome, nutricao programada, qualificacao e oferta.
14
+
15
+ trigger: manual
16
+ estimated_duration: "2-3 dias uteis"
17
+ priority: high
18
+
19
+ # ---------------------------------------------------------------------------
20
+ # FASES
21
+ # ---------------------------------------------------------------------------
22
+ phases:
23
+ - phase_1: "Contexto e Objetivos"
24
+ - phase_2: "Fluxo de Mensagens"
25
+ - phase_3: "Copy das Mensagens"
26
+ - phase_4: "Compliance WhatsApp"
27
+
28
+ # ---------------------------------------------------------------------------
29
+ # SEQUENCIA DE STEPS
30
+ # ---------------------------------------------------------------------------
31
+ sequence:
32
+
33
+ # =========================================================================
34
+ # FASE 1 — CONTEXTO E OBJETIVOS (@atena)
35
+ # =========================================================================
36
+ - step: definir_contexto
37
+ phase: 1
38
+ agent: "@atena"
39
+ action: "*contexto-whatsapp"
40
+ description: >
41
+ Define o contexto do backend WhatsApp: produto vendido, perfil do
42
+ comprador, objetivo do fluxo (retencao, upsell, high-ticket),
43
+ tom de comunicacao, horarios de envio permitidos, metricas de
44
+ sucesso esperadas.
45
+ inputs:
46
+ - "Produto/oferta principal"
47
+ - "docs/estrategia/avatar-profile.md (se existir)"
48
+ - "Plataforma de automacao (ex: ManyChat, Wati, Whaticket)"
49
+ outputs:
50
+ - "docs/whatsapp/contexto-backend.md"
51
+ requires: null
52
+ next: mapear_triggers
53
+ on_failure: "Solicitar informacoes minimas: produto, publico, objetivo"
54
+ validation:
55
+ type: checklist
56
+ criteria: >
57
+ Deve conter: produto descrito, persona do comprador, objetivo
58
+ do fluxo, tom de comunicacao, horarios de envio, KPIs definidos
59
+ (taxa de resposta, taxa de conversao high-ticket).
60
+
61
+ - step: mapear_triggers
62
+ phase: 1
63
+ agent: "@atena"
64
+ action: "*mapear-triggers"
65
+ description: >
66
+ Identifica todos os triggers que iniciam fluxos: compra confirmada,
67
+ abandono de carrinho, lead capturado, resposta a mensagem, inatividade,
68
+ clique em link, tag adicionada.
69
+ inputs:
70
+ - "docs/whatsapp/contexto-backend.md"
71
+ - "Integracoes disponiveis (gateway pagamento, CRM, email)"
72
+ outputs:
73
+ - "docs/whatsapp/mapa-triggers.md"
74
+ requires: definir_contexto
75
+ next: fluxo_welcome
76
+ on_failure: "Mapear trigger minimo: compra confirmada"
77
+ validation:
78
+ type: checklist
79
+ criteria: >
80
+ Cada trigger deve ter: evento de origem, condicao de ativacao,
81
+ delay antes da primeira mensagem, fluxo destino.
82
+
83
+ # =========================================================================
84
+ # FASE 2 — FLUXO DE MENSAGENS (@poseidon)
85
+ # =========================================================================
86
+ - step: fluxo_welcome
87
+ phase: 2
88
+ agent: "@poseidon"
89
+ action: "*fluxo-welcome"
90
+ description: >
91
+ Define fluxo de welcome pos-compra: mensagem imediata de confirmacao,
92
+ entrega do produto/acesso, instrucoes de uso, apresentacao do
93
+ suporte, expectativa do que vem a seguir.
94
+ inputs:
95
+ - "docs/whatsapp/contexto-backend.md"
96
+ - "docs/whatsapp/mapa-triggers.md"
97
+ outputs:
98
+ - "docs/whatsapp/fluxo-welcome.md"
99
+ requires: mapear_triggers
100
+ next: fluxo_nutricao
101
+ on_failure: "Simplificar para 2 mensagens: confirmacao + entrega"
102
+ validation:
103
+ type: checklist
104
+ criteria: >
105
+ Fluxo com: trigger definido, 2-4 mensagens, timing entre cada
106
+ mensagem, variaveis de personalizacao (nome, produto), condicao
107
+ de parada (resposta do usuario).
108
+
109
+ - step: fluxo_nutricao
110
+ phase: 2
111
+ agent: "@poseidon"
112
+ action: "*fluxo-nutricao"
113
+ description: >
114
+ Define fluxo de nutricao nos dias 1, 3, 5 e 7 pos-compra: conteudo
115
+ de valor relacionado ao produto, dicas de uso, cases de sucesso,
116
+ preparacao para oferta high-ticket. Cada dia com objetivo especifico.
117
+ inputs:
118
+ - "docs/whatsapp/fluxo-welcome.md"
119
+ - "docs/whatsapp/contexto-backend.md"
120
+ outputs:
121
+ - "docs/whatsapp/fluxo-nutricao.md"
122
+ requires: fluxo_welcome
123
+ next: fluxo_qualificacao
124
+ on_failure: "Reduzir para dias 1 e 5 somente"
125
+ validation:
126
+ type: checklist
127
+ criteria: >
128
+ Dia 1: dica de uso rapido. Dia 3: case de sucesso.
129
+ Dia 5: conteudo avancado. Dia 7: teaser da oferta.
130
+ Cada mensagem com: timing exato, conteudo descrito,
131
+ variavel de personalizacao, condicao de skip (se ja comprou).
132
+ schedule:
133
+ dia_1:
134
+ timing: "24h apos welcome"
135
+ objetivo: "Engajar com quick win"
136
+ dia_3:
137
+ timing: "72h apos welcome"
138
+ objetivo: "Social proof e resultados"
139
+ dia_5:
140
+ timing: "120h apos welcome"
141
+ objetivo: "Conteudo avancado, autoridade"
142
+ dia_7:
143
+ timing: "168h apos welcome"
144
+ objetivo: "Preparacao para oferta"
145
+
146
+ - step: fluxo_qualificacao
147
+ phase: 2
148
+ agent: "@poseidon"
149
+ action: "*fluxo-qualificacao"
150
+ description: >
151
+ Define fluxo de qualificacao pos-nutricao: perguntas de qualificacao
152
+ via botoes/respostas rapidas, score de qualificacao, segmentacao
153
+ automatica (quente, morno, frio), roteamento baseado em score.
154
+ inputs:
155
+ - "docs/whatsapp/fluxo-nutricao.md"
156
+ - "docs/whatsapp/contexto-backend.md"
157
+ outputs:
158
+ - "docs/whatsapp/fluxo-qualificacao.md"
159
+ requires: fluxo_nutricao
160
+ next: fluxo_oferta_ht
161
+ on_failure: "Usar qualificacao simplificada: 1 pergunta binaria"
162
+ validation:
163
+ type: checklist
164
+ criteria: >
165
+ Deve conter: 2-4 perguntas de qualificacao, formato de resposta
166
+ (botoes/texto), logica de scoring, 3 segmentos de saida
167
+ (quente/morno/frio), roteamento por segmento.
168
+
169
+ - step: fluxo_oferta_ht
170
+ phase: 2
171
+ agent: "@poseidon"
172
+ action: "*fluxo-oferta-high-ticket"
173
+ description: >
174
+ Define fluxo de oferta high-ticket para leads quentes: apresentacao
175
+ da oferta, beneficios, urgencia, CTA para agendar call/comprar,
176
+ tratamento de objecoes automatizado, deadline.
177
+ inputs:
178
+ - "docs/whatsapp/fluxo-qualificacao.md"
179
+ - "docs/estrategia/oferta-completa.md (se existir)"
180
+ outputs:
181
+ - "docs/whatsapp/fluxo-oferta-ht.md"
182
+ requires: fluxo_qualificacao
183
+ next: fluxo_followup
184
+ on_failure: "Direcionar para pagina de vendas em vez de venda direta"
185
+ validation:
186
+ type: checklist
187
+ criteria: >
188
+ Fluxo com: condicao de entrada (score minimo), sequencia de
189
+ 3-5 mensagens, tratamento de objecao (2-3 objecoes), CTA
190
+ claro, deadline definido, fallback se nao responder.
191
+
192
+ - step: fluxo_followup
193
+ phase: 2
194
+ agent: "@poseidon"
195
+ action: "*fluxo-followup"
196
+ description: >
197
+ Define fluxo de follow-up para quem nao respondeu ou nao converteu:
198
+ lembrete sutil (24h), reforco de urgencia (48h), ultima chance (72h),
199
+ reclassificacao para fluxo frio se nao engajar.
200
+ inputs:
201
+ - "docs/whatsapp/fluxo-oferta-ht.md"
202
+ - "docs/whatsapp/fluxo-qualificacao.md"
203
+ outputs:
204
+ - "docs/whatsapp/fluxo-followup.md"
205
+ requires: fluxo_oferta_ht
206
+ next: copy_welcome_msgs
207
+ on_failure: "Encerrar fluxo com mensagem de despedida amigavel"
208
+ validation:
209
+ type: checklist
210
+ criteria: >
211
+ 3 mensagens de follow-up com timing definido (24h, 48h, 72h),
212
+ tom progressivamente mais urgente mas nunca agressivo,
213
+ condicao de saida (resposta ou 72h sem engajamento),
214
+ reclassificacao automatica apos timeout.
215
+
216
+ # =========================================================================
217
+ # FASE 3 — COPY DAS MENSAGENS (@apolo)
218
+ # =========================================================================
219
+ - step: copy_welcome_msgs
220
+ phase: 3
221
+ agent: "@apolo"
222
+ action: "*escrever-msgs-welcome"
223
+ description: >
224
+ Escreve copy de cada mensagem do fluxo welcome: tom pessoal e
225
+ acolhedor, uso de nome, emojis estrategicos, mensagens curtas
226
+ (max 300 caracteres), formatacao WhatsApp (negrito, italico).
227
+ inputs:
228
+ - "docs/whatsapp/fluxo-welcome.md"
229
+ - "docs/whatsapp/contexto-backend.md"
230
+ outputs:
231
+ - "docs/whatsapp/copy/msgs-welcome.md"
232
+ requires: fluxo_followup
233
+ next: copy_nutricao_msgs
234
+ on_failure: "Simplificar tom e reduzir tamanho das mensagens"
235
+ validation:
236
+ type: checklist
237
+ criteria: >
238
+ Cada mensagem com: texto final pronto para uso, variaveis
239
+ marcadas com {{variavel}}, emojis posicionados, max 300
240
+ caracteres, formatacao WhatsApp aplicada.
241
+
242
+ - step: copy_nutricao_msgs
243
+ phase: 3
244
+ agent: "@apolo"
245
+ action: "*escrever-msgs-nutricao"
246
+ description: >
247
+ Escreve copy das 4 mensagens de nutricao (dias 1, 3, 5, 7).
248
+ Cada mensagem com valor real, nao generica. Inclui variantes
249
+ A/B para subject/abertura da mensagem.
250
+ inputs:
251
+ - "docs/whatsapp/fluxo-nutricao.md"
252
+ - "docs/whatsapp/contexto-backend.md"
253
+ - "docs/estrategia/avatar-profile.md (se existir)"
254
+ outputs:
255
+ - "docs/whatsapp/copy/msgs-nutricao.md"
256
+ requires: copy_welcome_msgs
257
+ next: copy_qualificacao_msgs
258
+ on_failure: "Reescrever com foco em storytelling e resultados"
259
+ validation:
260
+ type: checklist
261
+ criteria: >
262
+ 4 mensagens com conteudo unico por dia, valor tangivel
263
+ entregue, hook de abertura forte, CTA sutil preparando
264
+ para oferta, variante A/B para dia 1 e dia 7.
265
+
266
+ - step: copy_qualificacao_msgs
267
+ phase: 3
268
+ agent: "@apolo"
269
+ action: "*escrever-msgs-qualificacao"
270
+ description: >
271
+ Escreve copy das mensagens de qualificacao: perguntas naturais
272
+ (nao parecer formulario), opcoes de botao, respostas condicionais
273
+ baseadas na resposta do lead.
274
+ inputs:
275
+ - "docs/whatsapp/fluxo-qualificacao.md"
276
+ - "docs/whatsapp/contexto-backend.md"
277
+ outputs:
278
+ - "docs/whatsapp/copy/msgs-qualificacao.md"
279
+ requires: copy_nutricao_msgs
280
+ next: copy_oferta_followup_msgs
281
+ on_failure: "Reformular perguntas para tom mais conversacional"
282
+ validation:
283
+ type: checklist
284
+ criteria: >
285
+ Perguntas em tom conversacional, opcoes de resposta claras,
286
+ respostas condicionais escritas para cada cenario,
287
+ transicao suave entre perguntas.
288
+
289
+ - step: copy_oferta_followup_msgs
290
+ phase: 3
291
+ agent: "@apolo"
292
+ action: "*escrever-msgs-oferta-followup"
293
+ description: >
294
+ Escreve copy das mensagens de oferta high-ticket e follow-up:
295
+ pitch de valor, tratamento de objecoes, urgencia, lembretes,
296
+ ultima chance. Timing e variaveis definidos.
297
+ inputs:
298
+ - "docs/whatsapp/fluxo-oferta-ht.md"
299
+ - "docs/whatsapp/fluxo-followup.md"
300
+ - "docs/whatsapp/contexto-backend.md"
301
+ outputs:
302
+ - "docs/whatsapp/copy/msgs-oferta-ht.md"
303
+ - "docs/whatsapp/copy/msgs-followup.md"
304
+ requires: copy_qualificacao_msgs
305
+ next: compliance_whatsapp
306
+ on_failure: "Revisar tom — WhatsApp exige abordagem mais pessoal"
307
+ validation:
308
+ type: checklist
309
+ criteria: >
310
+ Oferta: 3-5 mensagens com pitch, prova social, urgencia, CTA.
311
+ Follow-up: 3 mensagens com tom crescente mas respeitoso.
312
+ Tratamento de objecoes: 2-3 respostas prontas.
313
+ Todas com variaveis e formatacao WhatsApp.
314
+
315
+ # =========================================================================
316
+ # FASE 4 — COMPLIANCE WHATSAPP (@temis)
317
+ # =========================================================================
318
+ - step: compliance_whatsapp
319
+ phase: 4
320
+ agent: "@temis"
321
+ action: "*whatsapp-compliance-checklist"
322
+ description: >
323
+ Revisao de compliance especifica para WhatsApp: politicas do
324
+ WhatsApp Business API, LGPD (consentimento, opt-out), frequencia
325
+ de envio, horario permitido, conteudo proibido, template approval
326
+ requirements, anti-spam.
327
+ inputs:
328
+ - "docs/whatsapp/copy/msgs-welcome.md"
329
+ - "docs/whatsapp/copy/msgs-nutricao.md"
330
+ - "docs/whatsapp/copy/msgs-qualificacao.md"
331
+ - "docs/whatsapp/copy/msgs-oferta-ht.md"
332
+ - "docs/whatsapp/copy/msgs-followup.md"
333
+ - "docs/whatsapp/contexto-backend.md"
334
+ outputs:
335
+ - "docs/whatsapp/compliance/whatsapp-compliance-report.md"
336
+ - "docs/whatsapp/compliance/alteracoes-obrigatorias.md"
337
+ requires: copy_oferta_followup_msgs
338
+ next: aplicar_compliance_wpp
339
+ on_failure: "Bloquear ativacao do fluxo ate compliance aprovado"
340
+ validation:
341
+ type: verdict
342
+ criteria: >
343
+ APROVADO: Todas as mensagens em compliance com WhatsApp
344
+ Business API e LGPD.
345
+ AJUSTES: Alteracoes menores necessarias (listadas).
346
+ BLOQUEADO: Violacoes criticas que impedem ativacao.
347
+ checklist_items:
348
+ - "Consentimento opt-in documentado"
349
+ - "Mecanismo de opt-out em toda mensagem"
350
+ - "Horario de envio dentro do permitido (8h-20h)"
351
+ - "Frequencia nao excede 1 msg/dia (exceto welcome)"
352
+ - "Sem conteudo proibido (saude sem evidencia, financeiro sem disclaimer)"
353
+ - "Templates compativeis com WhatsApp Business API approval"
354
+ - "LGPD: base legal definida, dados minimos coletados"
355
+ - "Anti-spam: intervalos respeitados, stop words implementadas"
356
+
357
+ - step: aplicar_compliance_wpp
358
+ phase: 4
359
+ agent: "@apolo"
360
+ action: "*aplicar-correcoes-whatsapp"
361
+ description: >
362
+ Aplica correcoes de compliance nas mensagens WhatsApp mantendo
363
+ o tom conversacional e a eficacia da comunicacao.
364
+ inputs:
365
+ - "docs/whatsapp/compliance/alteracoes-obrigatorias.md"
366
+ - "docs/whatsapp/copy/msgs-welcome.md"
367
+ - "docs/whatsapp/copy/msgs-nutricao.md"
368
+ - "docs/whatsapp/copy/msgs-oferta-ht.md"
369
+ - "docs/whatsapp/copy/msgs-followup.md"
370
+ outputs:
371
+ - "docs/whatsapp/copy/ (todos atualizados)"
372
+ - "docs/whatsapp/compliance/compliance-applied-log.md"
373
+ requires: compliance_whatsapp
374
+ next: null
375
+ on_failure: "Escalar para @temis re-revisao"
376
+ validation:
377
+ type: checklist
378
+ criteria: >
379
+ Todas as correcoes obrigatorias aplicadas, opt-out presente
380
+ em todas as mensagens, log de alteracoes documentado.
381
+
382
+ # ---------------------------------------------------------------------------
383
+ # CONFIGURACAO GLOBAL
384
+ # ---------------------------------------------------------------------------
385
+ config:
386
+ compliance_blocking: true
387
+ require_opt_out_every_message: true
388
+ max_message_length: 300
389
+ allowed_send_hours: "08:00-20:00"
390
+ whatsapp_formatting: true
391
+
392
+ failure_handling:
393
+ global_escalation: "@atena"
394
+ max_retries_per_step: 2
395
+ on_critical_failure: "Pausar fluxo, notificar usuario"