caveman: faça a IA calar a boca e ir direto ao ponto
A IA enrola três linhas de gentileza antes de cada resposta. caveman é um prompt de 50 linhas que corta essa lengalenga inteira, sem perder uma vírgula do conteúdo técnico. Testei em três idiomas: em português a economia chega a uns 70%.
github.com/mattpocock/skills @2bf7005 1. A gentileza da IA é um imposto que você paga todo dia
Você pareia com a IA pra escrever código, dezenas de rodadas por dia. Sabe o que mais irrita?
Não é a IA não entender a parte técnica. É ela abrir cada resposta com três linhas de cortesia:
Claro! Fico feliz em ajudar. Esse problema que você está enfrentando provavelmente acontece porque…
O que presta mesmo é só a última frase. O resto é enrolação pra te aquecer.
E essa enrolação não cansa só a vista. Ela queima token de verdade, deixa a resposta mais lenta e vai entupindo a janela de contexto aos poucos — quanto mais tempo você conversa, mais alto fica esse “imposto da cortesia”. Um imposto que você nunca pediu pra pagar.
O caveman faz uma coisa só, e dá pra resumir numa frase: faz a IA falar feito um homem das cavernas esperto. O conteúdo técnico fica intacto, palavra por palavra. A cortesia, o aquecimento, aquelas frases que ficam em cima do muro pra não se comprometer — tudo isso vai pro lixo.
É o menor skill da coleção do Matt Pocock — o arquivo inteiro tem 50 linhas. Mas instala, usa uma vez, e dificilmente você volta atrás.
2. Não tem mágica nenhuma: é um acordo de “cala a boca e vai ao ponto”
Você talvez imagine algum mecanismo complicado por trás disso. Não tem. O SKILL.md inteiro do caveman é só um acordo sobre o estilo da resposta, e ele cabe em três pontos:
O que cortar. Fora as muletas sem informação (na verdade, basicamente, em resumo), as frases de cortesia (claro, fico feliz em ajudar) e aquele jeito de falar que deixa porta aberta pra não se comprometer. Se uma palavra resolve, não gaste uma frase. Causa e efeito vira seta direto: X -> Y.
Mas tem uma linha vermelha, e ela vem em negrito de propósito:
Termo técnico fica como está, bloco de código fica intacto, mensagem de erro não muda uma letra.
Ou seja: ele corta a enrolação, não a informação. Isso não tem nada a ver com mandar um “responde mais curto” na marra — esse aí joga fora detalhe útil junto com o resto, o caveman não.
Uma vez ligado, fica ligado (no skill isso se chama Persistence). Não é aquela coisa de conversar umas rodadas e ele ir voltando devagarinho pro tagarela de sempre. Enquanto você não mandar parar, ele fala assim.
Quando a coisa é perigosa, ele volta sozinho pro modo normal (no skill, a exceção Auto-Clarity). Se aparece um drop de banco, uma operação irreversível, ou algo que só faz sentido explicando em vários passos, ele recupera a explicação completa na hora, fala tudo direitinho, e depois volta pro modo enxuto.
Esse terceiro ponto é onde o caveman é mais esperto que um “seja breve” cru: economiza token, mas não economiza onde precisa de explicação. Pensa bem — esse senso de medida foi projetado.
3. Três passos pra ver a diferença na hora
Falar é fácil. Instala e olha o antes e depois com seus próprios olhos.
Instalar. É um skill dentro do mattpocock/skills. Use o comando oficial de uma linha e marque o caveman quando ele perguntar:
npx skills@latest add mattpocock/skills
(Se você já clonou o repositório localmente, também dá pra copiar aquela pasta direto pro .claude/skills/ do seu projeto.)
Ligar. Diga caveman mode pro Claude Code, ou digite /caveman. Quando não quiser mais, fale normal mode.
Comparar. Faça a mesma pergunta nos dois modos — tipo “por que meu componente React renderiza de novo toda vez que o componente pai renderiza?”
No normal, ele te devolve três ou quatro parágrafos: o comportamento padrão, React.memo, useMemo/useCallback, children, e ainda fecha lembrando pra você não otimizar cedo demais. No modo caveman, fica assim (isso aqui é saída real que eu rodei, não inventei):
Comportamento padrão. Pai renderiza -> filho renderiza, mudando as props ou não.
Como cortar re-render:
React.memo(filho)-> comparação rasa das props, se não mudou, pula- Objeto/array/função passados pro filho: embrulhe com
useMemo/useCallback, senão vira referência nova toda vez -> memo perde o efeito- Empurre o estado pra baixo, pra o pai não renderizar por causa de state que não tem a ver
Pra diagnosticar: instale o React DevTools Profiler, veja quem renderiza e por quê.
React.memo, comparação rasa, referência estável, empurrar o estado pra baixo, Profiler — não falta um único ponto de informação. Só que você lê tudo numa olhada.
Esse é o primeiro resultado de verdade. Não precisa acreditar em mim: roda uma vez e você se convence sozinho.
4. Fiz a conta pra você: uns 70% de economia, mas depende do idioma
A descrição original do caveman diz que ele “economiza uns 75% de token”.
Só que esse é um número que o próprio autor reportou, sem mostrar como mediu. Esse tipo de afirmação você anota com lápis — o que os outros dizem que economiza não vale; tem que medir você mesmo.
Então eu medi. E testei em três idiomas. Peguei 6 perguntas que qualquer dev faz no dia a dia (re-render no React, pool de conexões, vazamento de memória no Node, async/await, desfazer commit no git, JWT vs session), pedi pra IA responder cada uma no modo normal e no modo caveman, e contei os caracteres. A linha de base eu usei respostas reais, sem inflar de propósito — nada de espantalho enchido de linguiça pra fazer o número parecer melhor.
O resultado:
| Idioma (normal vs caveman, cada um por si) | Redução de caracteres |
|---|---|
| Português | uns 70% |
| Inglês | uns 63% |
| Japonês | uns 52% |
Setenta, sessenta, cinquenta por cento — números bem gordos, e sem perder informação. Mas você reparou: a economia varia bastante de um idioma pro outro. O português é cheio de cortesia e muleta, tem muita água pra espremer; o japonês já é mais compacto até no modo normal, então sobra menos pro caveman cortar. Por isso aquele “economiza 75%” não dá pra virar regra universal — depende do idioma em que você fala.
Vou colocar o método na mesa, sem fingir rigor que não tenho: usei contagem de caracteres sem espaço como aproximação, não a contagem exata de token (o ambiente de teste não tinha tokenizer instalado). Dentro do mesmo idioma, a proporção de caracteres bate mais ou menos com a de token, então a redução por idioma é confiável; mas o número absoluto de caracteres não dá pra comparar entre idiomas — o que eu comparei foi a redução de cada idioma com ele mesmo. A amostra é de só 6 perguntas, serve pra te dar uma noção de ordem de grandeza.
E teve uma surpresa que apareceu na medição, fica a dica de quebra: o caveman, por padrão, puxa pro inglês quando responde no estilo telegráfico — ele foi desenhado em inglês, e quando a pergunta não vem em inglês ele costuma te responder num inglês cortado mesmo assim. No nosso caso isso é gritante: você pergunta em português e ele te volta com bullets em inglês. Pra continuar em português, você precisa dizer na hora de ligar: “responda em português”. (Na primeira medição eu não segurei isso, e o número ficou contaminado com a troca de idioma “português → inglês”, sujo; segurei o idioma e repeti o teste, e só aí cheguei naquela tabela ali em cima.)
5. Mas não deixe ligado o tempo todo — ele tem o gênio dele
O caveman é ótimo, mas não é um interruptor de “ligou, resolveu pra sempre”. Algumas coisas pra deixar claras de cara:
- Ele puxa pro inglês (já falei lá em cima). Quer um idioma específico? Diga na hora de ligar. Pra quem escreve em português isso pega mais ainda: o default dele é cortar pro inglês, então você tem que firmar o português toda vez.
- Frase picada, pouca margem de erro. Ele corta conectivo, adora frase curta e cortada, a densidade de informação é alta — mas basta uma distração e você lê torto. Por isso: resultado que vai pra outra pessoa ver, documento formal que vai ser publicado, raciocínio complicado de vários passos — não ligue o caveman. Nessas horas, “ser claro” vale muito mais que “economizar token”. (Ainda bem que o Auto-Clarity recupera a explicação completa nos casos perigosos e de vários passos, mas você tem que ter na cabeça: ele é pra “você conversando rápido com a IA”, não pra “a IA escrevendo pra outra pessoa ler”.)
- É estilo, não capacidade. O caveman não faz um trabalho a mais por você, ele só muda o jeito de a IA falar com você. Encare como um “modo economia de dados” sempre ligado e pronto, não espere que ele resolva algum fluxo de trabalho no seu lugar.
Numa frase: liga pra conversar, desliga quando for produzir algo sério. Acerte esse meio-termo e ele vira ferramenta fixa.
6. Cartão de consulta rápida
Instalar: npx skills@latest add mattpocock/skills # marque o caveman no prompt
Ligar: diga "caveman mode" pra IA ou /caveman
Desligar: "normal mode" / "stop caveman"
Idioma: diga "em português" ao ligar, senão ele puxa pro inglês
Corta: muletas sem informação (na verdade/basicamente), cortesia (fico feliz em ajudar), frase em cima do muro
Mantém: termo técnico, bloco de código, erro original —— sem mexer uma letra
Causa: use a seta X -> Y
Exceção: operação perigosa / vários passos -> volta sozinho pro completo (Auto-Clarity)
Não use: documento formal / tutorial / coisa que outra pessoa vai ler -> desligue
Medido: PT uns 70%, EN uns 63%, JA uns 52% (autor reportou uns 75%)
7. Pra ir além
- O código-fonte deste skill: mattpocock/skills · caveman (licença MIT).
- Curtiu essa pegada de “um prompt muda o comportamento da IA”? O repositório do Matt tem uma penca deles, e essa série vai continuar destrinchando.
- Quer trocar ideia sobre esses skills com o próprio Matt e dezenas de milhares de devs? A newsletter dele é um bom lugar.
Este texto é um tutorial original de usesuperpowers.com; o skill caveman aqui explicado vem de mattpocock/skills (
source_commit: 2bf7005), sob a licença MIT. As regras citadas do projeto original pertencem ao autor original; nossa análise, medição e texto são originais.