Blog Persona - Gestão de Voz de Escrita

Crie, armazene e aplique personas de escrita com base no framework de tom 4 dimensões do NNGroup e no Gráfico de Voz da Marca CMI.

O que é Blog Persona - Gestão de Voz de Escrita?

Blog Persona é uma skill para agentes de IA (como Claude Code, Cursor ou Codex) que permite criar, armazenar e impor personas de escrita consistentes para produção de conteúdo de blog. Ela se baseia no framework de tom de 4 dimensões do NNGroup (engraçado/sério, formal/casual, respeitoso/irreverente, entusiasmado/factual) e no Gráfico de Voz da Marca CMI. A skill suporta comandos como `/blog persona create` para uma entrevista interativa de 6 etapas, `/blog persona list` para listar personas salvas, `/blog persona use` para ativar uma persona na sessão atual e `/blog persona show` para exibir o perfil completo. As personas são salvas como arquivos JSON no diretório `skills/blog/references/personas/`, com kebab-case para o nome. A skill se integra com `blog-write` e `blog-rewrite`, que verificam a persona ativa antes de gerar conteúdo, impõem as regras de tom e estilo durante a geração e realizam validação pós-geração para garantir conformidade com as dimensões de tom, legibilidade, comprimento de frases, frequência de contrações e regras de 'faça' e 'não faça'.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/AgriciDaniel/claude-blog/tree/main/skills/blog-persona

Installed? Explore more Programação e Desenvolvimento skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

O que Blog Persona - Gestão de Voz de Escrita faz?

Crie, armazene e aplique personas de escrita com base no framework de tom 4 dimensões do NNGroup e no Gráfico de Voz da Marca CMI. As personas garantem uma voz consistente em todo o conteúdo do blog produzido pelos comandos blog-write e blog-rewrite.

Comandos

ComandoObjetivo
/blog persona createEntrevista interativa para criar uma nova persona
/blog persona listMostrar todas as personas salvas
/blog persona use <nome>Definir a persona ativa para a sessão atual
/blog persona show <nome>Exibir o perfil completo da persona

Fluxo de Criação

Execute a entrevista interativa de 6 etapas. Pergunte cada etapa, aguarde a resposta e prossiga.

Etapa 1: Informações Básicas da Marca

Pergunte ao usuário:

  • Nome da marca - empresa ou marca pessoal
  • Setor - setor principal (ex.: SaaS, saúde, finanças, educação)
  • Público-alvo - quem lê o blog (cargo, nível de experiência, objetivos)
  • Missão da marca em uma frase - o que a marca ajuda as pessoas a fazer

Etapa 2: Dimensões de Tom (Framework NNGroup)

Apresente cada dimensão como um controle deslizante de 0,0 a 1,0. Explique ambos os extremos com exemplos.

DimensãoExtremo 0,0Extremo 1,0Exemplo em 0,0Exemplo em 1,0
engraçado_sérioEngraçadoSério"Vamos ser sinceros, ninguém lê os Termos de Serviço""Entender acordos legais protege seu negócio"
formal_casualFormalCasual"Temos o prazer de anunciar""Adivinha só - nós lançamos!"
respeitoso_irreverenteRespeitosoIrreverente"Agradecemos sua paciência""É, a forma antiga era falha"
entusiasmado_factualEntusiasmadoFactual"Isso muda tudo!""Aqui estão os resultados."

Padrões se o usuário estiver em dúvida: [0.6, 0.5, 0.3, 0.5] (levemente sério, formalidade equilibrada, respeitoso, entusiasmo equilibrado).

Etapa 3: Regras de Escrita

Peça ao usuário para escolher primeiro um nível de vocabulário e, em seguida, sugira automaticamente a faixa de legibilidade correspondente (o usuário pode alterar).

ConfiguraçãoO que PerguntarPadrão
Nível de vocabulárioConsumidor, Profissional ou TécnicoProfissional
Faixa de legibilidadePreenchido automaticamente a partir do nível (veja tabela abaixo)Série 8-10
Média de comprimento de frasePalavras médias por frase18
Desvio padrão do comprimento de fraseVariação no comprimento das frases6
Frequência de contrações0,0 (nunca) a 1,0 (sempre)0,6
Máx. voz passivaPercentual máximo de construções passivas10%

Etapa 4: Faça e Não Faça (Gráfico de Voz da Marca CMI)

Peça de 3 a 5 itens em cada lista. Forneça exemplos iniciais com base nas dimensões de tom.

Exemplos de Faça: "Use dados para embasar afirmações", "Trate o leitor como você", "Comece com uma pergunta ou estatística"

Exemplos de Não Faça: "Não use jargão sem defini-lo", "Não comece frases com Há/Existem", "Não use clichês como revolucionário"

Etapa 5: Preferência de Rótulo de Resumo

O rótulo usado para caixas de resumo/principais conclusões em postagens de blog. Peça ao usuário para escolher um:

  • Principais Conclusões (padrão)
  • O Resumo Final
  • O Que Você Vai Aprender
  • TL;DR
  • Resumo Rápido
  • Em Poucas Palavras
  • Rótulo personalizado

Etapa 6: Amostras de Voz (Opcional)

Pergunte se o usuário tem de 1 a 3 URLs de conteúdo existente que exemplifique a voz desejada. Armazene as URLs na persona para referência futura. Se fornecidas, leia cada URL e extraia:

  • Comprimento médio das frases
  • Frequência de contrações
  • Estimativas das dimensões de tom
  • Nível de vocabulário

Compare os valores extraídos com as configurações da persona e sinalize quaisquer diferenças.

Salvar

Escreva a persona completa como JSON em: skills/blog/references/personas/<nome>.json

Use kebab-case para o nome do arquivo (ex.: acme-saas.json).

Esquema do Perfil da Persona

{
  "name": "acme-saas",
  "description": "Voz profissional SaaS para conteúdo de marketing B2B",
  "brand": "Acme Corp",
  "industry": "SaaS",
  "audience": "Gerentes de marketing em empresas de médio porte",
  "mission": "Ajudar equipes de marketing a automatizar relatórios",
  "tone_dimensions": {
    "funny_serious": 0.7,
    "formal_casual": 0.4,
    "respectful_irreverent": 0.2,
    "enthusiastic_matter_of_fact": 0.5
  },
  "readability": {
    "flesch_grade_min": 8,
    "flesch_grade_max": 10,
    "flesch_ease_min": 50,
    "flesch_ease_max": 60
  },
  "style": {
    "sentence_length_mean": 18,
    "sentence_length_std": 6,
    "contraction_frequency": 0.6,
    "passive_voice_max_pct": 10,
    "vocabulary_tier": "professional",
    "summary_label": "Key Takeaways"
  },
  "voice_samples": [],
  "do": [
    "Use dados para embasar cada afirmação importante",
    "Trate o leitor diretamente como você",
    "Lidere as seções com uma percepção acionável"
  ],
  "dont": [
    "Não use palavras da moda sem contexto",
    "Não escreva frases com mais de 30 palavras",
    "Não comece com Nós da Acme"
  ]
}

Faixas de Legibilidade por Nível de Vocabulário

NívelSérie FleschFacilidade FleschUso Típico
Consumidor6-860-80Saúde, estilo de vida, finanças pessoais
Profissional8-1050-60B2B, marketing, gestão
Técnico10-1230-50Engenharia, medicina, jurídico

Quando o usuário escolher um nível, preencha automaticamente os campos de legibilidade. Permita que ele altere se quiser uma combinação não padrão (ex.: vocabulário técnico com legibilidade de consumidor para conteúdo explicativo).

Integração com blog-write e blog-rewrite

Quando uma persona está ativa (via /blog persona use <nome>), o agente de escrita carrega o JSON da persona e impõe essas restrições durante a geração:

  1. Pré-geração - Carregar a persona, injetar as dimensões de tom e as regras de estilo no prompt do sistema para o agente de escrita do blog.
  2. Durante a geração - O escritor segue as regras de faça/não faça, visa a média/desvio padrão do comprimento das frases, usa contrações na frequência especificada.
  3. Validação pós-geração - Verificar a saída em relação às restrições da persona:
    • Distribuição do comprimento das frases dentro de 1 desvio padrão da média alvo
    • Pontuação de legibilidade dentro da faixa de série especificada
    • Percentual de voz passiva abaixo do máximo
    • Nenhuma violação das regras de "não faça" encontrada por correspondência de padrões

Se a validação falhar, sinalize as violações específicas e sugira edições.

Comando de Listagem

Faça glob em skills/blog/references/personas/*.json e exiba uma tabela:

PersonaSetorPúblicoVocabulário
acme-saasSaaSGerentes de marketingProfissional

Se não houver personas, peça ao usuário para criar uma.

Comando de Exibição

Leia o JSON da persona especificada e exiba-o como um resumo formatado com todas as dimensões de tom, regras de estilo e listas de faça/não faça.

Comando de Uso

Leia o JSON da persona e confirme a ativação. Imprima um resumo das principais restrições que serão aplicadas. A persona permanece ativa para a sessão de conversa atual. blog-write e blog-rewrite verificam a persona ativa antes de gerar conteúdo.

Tratamento de Erros

  • Valores de tom inválidos: Se um usuário fornecer valores fora de 0,0-1,0, limite ao limite válido mais próximo e avise
  • Amostras de voz inacessíveis: Se uma URL em voice_samples retornar um erro, ignore-a e anote no perfil que a amostra não estava disponível
  • Diretório de personas vazio: Ao executar list ou show sem personas salvas, peça ao usuário para criar uma primeiro
  • Conflitos de nome: Se um nome de persona já existir durante a criação, pergunte se deseja sobrescrever ou escolher um nome diferente
  • JSON malformado: Se um arquivo de persona estiver corrompido, reporte o erro e ofereça recriá-lo a partir da entrevista

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

Habilidades Relacionadas