Criar Template de Comunicado
Objetivo
Padronizar a criação de templates de comunicado (hoje majoritariamente email, mas a skill é agnóstica de canal). Antes desta skill, o padrão existia só replicado manualmente em quatro arquivos que convergiram pro mesmo formato sem nenhuma skill impondo a estrutura:
- kb/products/procedimento-comunicado-info-presencial-mrzpr.md
- kb/products/procedimento-comunicado-convite-online-vitalicia-mrzpr.md
- kb/events/icdb/procedimento-comunicado-confirmacao-ingresso-icdb.md
- kb/products/procedimento-comunicado-abertura-matricula-mrzpr.md
Nenhum dos quatro segue as 9 seções abaixo à risca (Audiência só aparece em
dois; a ordem varia; o mais recente saiu com numeração duplicada). Essa skill
existe pra que o próximo template nasça certo, e pra eventualmente rodar
sobre os quatro acima e alinhar todos ao mesmo formato — ver "Pendências" no
fim.
Base genérica de "como virar processo" (tarefa vs. procedimento vs.
princípio, regra de menos verbo) já existe em
protocolar-skill — esta skill não reinventa
aquilo, só especializa o formato de template de comunicado dentro dele.
Pergunta 1 — campanha ou produto/evento recorrente?
Antes de escrever qualquer coisa, classificar:
- Template de campanha — nasceu pra uma rodada específica com múltiplos
agentes/artefatos (email + WhatsApp + post, por exemplo). Vive em
projects/{projeto}/campaigns/{YYYYMM}/{slug}/, commanifesto.md(verkb/marketing/template-manifesto-campanha.md). - Template de produto/evento recorrente — não depende de uma campanha
específica, se repete toda vez que a mesma situação acontece (nova turma
abre, ingresso é confirmado, vitalícia é convidada). Vive em
kb/products/oukb/events/{produto}/.
Se não estiver óbvio, perguntar a Hugo — não assumir.
Pergunta 2 — template ou pontual?
Hugo confirmou (2026-09-22) que ~90% das mensagens deste repo nascem como template reutilizável, não como peça de uso único. Assumir template por padrão. Só tratar como pontual (escrever direto no lugar de uso, sem passar pelo esqueleto de 9 seções) se Hugo confirmar explicitamente que é peça de uso único.
Esqueleto — 9 seções obrigatórias
Todo template novo (independente do canal) segue esta sequência, sem pular número e sem duplicar:
- Frontmatter —
area,tipo: procedimento,tags,produtos,status,updated_at(ver seção "Frontmatter" abaixo). ## Objetivo— o que o comunicado faz, pra quem, e link pro precedente que inspirou tom/estrutura quando existir (ex.: o comunicado de convite vitalícia linka o de info presencial pra explicar a diferença de tom — ver linha 17-21 do arquivo de vitalícias).## Quando enviar— gatilho/momento do envio.## Audiência(quando não for óbvio por produto) —product_slug(s) exatos confirmados contra o sistema real (nunca inventados), ou lógica de DDD/person+lead, com o que fica explicitamente fora e por quê. Ver o exemplo de exclusão explícita na seção Audiência do comunicado de vitalícias (mrz3-presencial,mrz3-goldetc. fora por nome parecido mas produto diferente).## Assunto (parametrizado)— bloco fixo ou com{variável}.## Template — corpo (evergreen, parametrizado)— a copy REAL, completa, dentro de um bloco```text, com{variáveis}no meio do texto corrido. Nunca uma descrição genérica de estrutura em bullets. (Esse foi um erro cometido numa versão anterior desta mesma sessão, corrigido por Hugo — a skill existe também pra não repetir isso.)## Variáveis por edição— tabela com pelo menos 1-2 exemplos reais de edições diferentes (não inventados), mais observações sobre variáveis sensíveis: o que vem de API/planilha ao vivo (preço, data, link) vs. o que é constante e pode ser copiado (ver os dois exemplos lado a lado no comunicado de abertura de matrícula — Porto Alegre e Belo Horizonte).## Comando padrão para disparar— briefing mínimo em texto livre que Hugo usa pra pedir o envio, mais o comando real (CLI do canal aplicável, ver seção "Canal de envio" abaixo).## Canal de envio— email/WhatsApp/etc., qual script real, e qualquer regra de audiência que não pode ser esquecida (ex.: nunca usar produto genérico, sempre ler campo X ao vivo da API em vez de copiar da tabela).
Não pular número, não repetir número. Se uma seção não se aplica (ex.: Audiência óbvia por produto único), pode ser omitida, mas a numeração segue sem buraco — não criar um "5 bis".
Frontmatter
---
area: produtos # ou "eventos", conforme kb/products/ vs kb/events/{produto}/
tipo: procedimento
tags: [produto, canal, palavra-chave-do-gatilho]
produtos: [mrz, mrzpr] # slugs de produto/projeto envolvidos
status: mvp # mvp | validado | descontinuado
updated_at: YYYY-MM-DD
---
Coleta mínima antes de escrever
Perguntar (ou confirmar o que já está claro na conversa) antes de gerar o arquivo:
- Objetivo e destinatário.
- Quando enviar (gatilho).
- Produto(s) ou DDD da audiência — e o que fica explicitamente fora.
- Fonte de dados por edição: API, planilha, ou confirmação manual com Hugo por rodada (nunca "de memória" — ver o aviso sobre preço/parcelamento sempre vindo da API no comunicado de abertura de matrícula).
- Tom.
- Urgência real e escassez real — travas do
AGENTS.md(seção "Regra de ofertas"). Não avançar pro corpo final sem essas duas definidas ou marcadas como pendência explícita. - CTA.
- Canal (email, WhatsApp, outro).
Regra do corpo — copy real, nunca bullets
A seção 6 (Template — corpo) é a peça mais fácil de fazer errado. Ela precisa
ser o texto que a pessoa de verdade vai receber, com quebras de linha, emoji,
assinatura — dentro de um bloco de código, {variáveis} inline. Uma lista
tipo "saudação → contexto → CTA → assinatura" não é template, é resumo de
estrutura, e não serve pra ninguém copiar e disparar.
Quando for campanha
Além do template evergreen no KB, garantir/atualizar:
manifesto.mdda campanha (viakb/marketing/template-manifesto-campanha.md) — ICP, MQL, meta de vidas alcançadas, urgência e escassez reais.- A instância real daquela rodada (o email/mensagem específico, com variáveis já preenchidas) salva dentro da pasta da campanha, separada do template evergreen no KB — nunca as duas coisas misturadas no mesmo arquivo. Ver o padrão em projects/mrz/campaigns/202609/mrzpr-abertura-matricula-ddd/ (manifesto + emails de Porto Alegre e Belo Horizonte, template evergreen correspondente no KB).
Canal de envio — onde ficam os scripts reais
- Email:
enviar-comunicado-email-skill, script realreorganize-webapp/app.reorganize.com.br/cron/comunicado_email_cli.php(rodado viadocker execna VPS — ver detalhes na skill). Audiência por produto via--product=slug1,slug2; audiência por DDD via--ddd=<DDD> --sources=person,lead(usado no comunicado de abertura de matrícula e noicdb-comunicado-venda-ingresso-quarta, mas essas duas flags ainda não estão documentadas na skill base — checar com TIMOTHY antes de assumir o comportamento exato se o caso for novo). - WhatsApp/outros canais: sem skill genérica de envio ainda — se o template novo for de um canal sem script/CLI documentado, marcar explicitamente como pendência de infraestrutura em vez de inventar um fluxo de envio.
Fonte canônica desta skill
Este arquivo é a fonte canônica
(kb/operations/criar-template-comunicado-skill/SKILL.md), conforme a regra
do AGENTS.md. Instalação de execução espelhada em
.claude/skills/criar-template-comunicado/SKILL.md — ao editar, atualizar os
dois juntos (ver drift real já existente entre kb/operations/protocolar-skill/SKILL.md
e .claude/skills/protocolar/SKILL.md como exemplo do que não fazer).
Relação com outras skills
protocolar-skill— fluxo genérico de "como virar processo"; esta skill especializa o caso "template de comunicado".enviar-comunicado-email-skill— motor real de envio por email; esta skill produz o template, não dispara.comunicado-semanal-aula-skill— caso de uso específico (aula semanal) que já segue um formato fixo próprio.
Status / pendências
Criada em 2026-09-22. Ainda não rodada retroativamente sobre os quatro precedentes. Pendências conhecidas, para uma próxima sessão:
- Corrigir a numeração duplicada em
kb/products/procedimento-comunicado-abertura-matricula-mrzpr.md
(tem
## 5.e## 6.repetidos) pro esqueleto de 9 seções desta skill. - Confirmar que o manifesto e os emails de
projects/mrz/campaigns/202609/mrzpr-abertura-matricula-ddd/seguem o contrato certo entre "template no KB" vs. "instância na campanha". - Documentar
--ddd/--sourcesnaenviar-comunicado-email-skill(hoje só aparecem citados em skills de caso de uso, não na skill base).