Técnica

Exportar conversas do WhatsApp pra achar seu tom de voz

escritavozwhatsappcontextoclaude-code

Problema

Pra IA escrever como você, ela precisa de amostra de como você escreve. E o problema de quase todo mundo é que a amostra que existe é a errada: email de trabalho, post de LinkedIn, relatório. Texto que já passou por um filtro de “como eu deveria soar”.

O lugar onde você escreve como você mesmo é o WhatsApp. É lá que aparece o “pra”, o “tá”, a piada interna, o jeito de discordar sem brigar, o tamanho de frase que sai quando ninguém está avaliando. Foi de 15 conversas exportadas do meu WhatsApp que saiu o guia de voz que meus agentes leem antes de escrever em meu nome (a técnica Sistema de voz conta o que fazer com o material depois; esta aqui é sobre tirar o material de lá).

Duas dificuldades práticas aparecem no caminho. A primeira é que o WhatsApp exporta uma conversa por vez, pelo celular, e isso cansa a partir da quinta. A segunda é que material demais dilui o contexto tanto quanto material de menos: jogar 15 exports na IA de uma vez produz um guia de voz genérico.

Técnica

Passo 1: escolher as conversas. Não vale pegar as maiores. Vale pegar as que mostram você em registros diferentes: uma pessoa próxima, um grupo de amigos, alguém do trabalho com quem você fala informalmente, alguém com quem você negocia ou discorda. Entre 8 e 15 conversas é um bom lote pra começar. Menos que isso a IA acha padrão onde não tem; mais que isso você não vai triar.

Passo 2: exportar. Dois caminhos.

Pelo celular, uma a uma. Abra a conversa, toque no nome, “Exportar conversa”, “Sem mídia”. Sai um .txt no formato [dd/mm/aaaa, hh:mm] Autor: texto. Foi assim que eu fiz no começo, e é o caminho certo se você precisa de histórico antigo, porque o celular tem tudo.

Pelo app do WhatsApp no Mac, várias de uma vez. O app guarda uma cópia local das conversas num banco SQLite dentro de ~/Library/Group Containers/group.net.whatsapp.WhatsApp.shared/. O Claude Code lê esse banco e gera um .txt por conversa, no mesmo formato do export oficial, pra quantas conversas você quiser. Duas ressalvas: só funciona com o app instalado no Mac (não o WhatsApp Web), e o banco só tem o histórico sincronizado desde que você pareou o app (no meu, começa em março de 2026). O prompt pronto pra colar está no fim desta página.

Passo 3: triar num chat separado, antes de qualquer coisa. Abra um chat novo só pra isso, mande os arquivos e cole:

Vou te mandar [N] conversas exportadas do meu WhatsApp que eu quero usar como contexto permanente pra você escrever do meu jeito. Antes de usar qualquer coisa delas, faça três coisas: (1) me diga quais servem pro objetivo e quais são ruído, com o motivo de cada uma; (2) me mostre o que se repete entre as que sobraram: tamanho de frase, expressões, como eu abro e fecho, como eu discordo, como eu peço coisa; (3) reescreva isso num formato feito pra ser lido por uma IA, e não por mim, sem perder nada que caracterize o meu jeito de escrever.

Dos meus 15 arquivos, 10 morreram na primeira pergunta. Isso me parece o mais valioso da história toda: a triagem é o trabalho, não a exportação.

Passo 4: guardar o resultado como contexto fixo. O que sai do passo 3 é a matéria-prima do seu guia de voz. Salve como arquivo que o Claude lê em toda sessão (no meu vault é o voice-principles.md), em vez de colar de novo a cada conversa. Os exports brutos não precisam ficar: cumpriram o papel.

Como aplicar

Cuidado com o que está nesses arquivos. Conversa de WhatsApp tem a outra pessoa dentro. Os exports são pra você extrair o seu padrão, e o que vira contexto permanente é o padrão, não a conversa. Não coloque os .txt num repositório, numa pasta compartilhada nem num plano gratuito de IA que treine em cima do que recebe. Depois de triar, apague os brutos.

Se você usa o app do Mac, cole isto no Claude Code (com o WhatsApp aberto):

Você está num Mac com o app do WhatsApp instalado. Quero exportar algumas conversas do WhatsApp pra arquivos .txt, uma conversa por arquivo, no formato do "Exportar conversa" do WhatsApp ([dd/mm/aaaa, hh:mm] Autor: texto), lendo o banco local do app.

Contexto técnico:
- O banco fica em ~/Library/Group Containers/group.net.whatsapp.WhatsApp.shared/ChatStorage.sqlite, com os arquivos -wal e -shm ao lado. É Core Data em SQLite.
- Nunca abra o original. Copie os três arquivos pra uma pasta temporária e leia a cópia em modo somente leitura (sqlite3 -readonly). Apague a cópia no fim.
- Tabelas: ZWACHATSESSION (ZPARTNERNAME é o nome da conversa; ZSESSIONTYPE 0 é 1:1, 1 é grupo), ZWAMESSAGE (ZTEXT, ZISFROMME, ZMESSAGEDATE, ZPUSHNAME, ZCHATSESSION aponta pra Z_PK da sessão, ZGROUPMEMBER aponta pra ZWAGROUPMEMBER), ZWAGROUPMEMBER (ZCONTACTNAME, quem falou no grupo).
- Timestamp Core Data: segundos desde 01/01/2001 UTC. Unix = valor + 978307200. Converta pra hora local.
- Mensagem sem ZTEXT é mídia: escreva <mídia omitida>. ZMESSAGETYPE = 6 é evento de sistema: pule.
- Use o sqlite3 do macOS. Não instale nada.

Passos:
1. Crie um script ~/Desktop/exportar-whatsapp.sh que, sem argumentos, lista as 60 conversas com mais mensagens (contagem, se é 1:1 ou grupo, nome) e, com nomes como argumentos, gera um .txt por conversa em ~/Desktop/whatsapp-exports/, ordenado por data, com "Eu" quando ZISFROMME = 1 e o nome do autor nos outros casos.
2. Rode sem argumentos, me mostre a lista e pergunte quais eu quero.
3. Rode com os nomes que eu escolher, exatamente como apareceram na lista. Me diga quantos arquivos saíram, o tamanho de cada um em linhas e o período coberto. Arquivo vazio é nome que não bateu: me mostre os parecidos.
4. Se der "Operation not permitted" ao copiar o banco, me peça pra ligar Acesso Total ao Disco (Ajustes do Sistema > Privacidade e Segurança) pro app que está rodando este comando, reabrir e tentar de novo.

Não me mostre o conteúdo das mensagens no chat. Não escreva no banco original, não apague nada da pasta do WhatsApp, não mande os arquivos pra lugar nenhum.

O que esperar. Uma tarde, uma vez. Depois disso, todo agente que escreve em seu nome começa do material limpo. Se você fizer isso essa semana, repare em quanto do que exportou sobreviveu à triagem: no meu caso foi um terço.