Caveman funciona fora do Claude Code? O que muda em Codex, Cursor, Gemini CLI e Cline

caveman claude code funcionando em outros agentes de IA como Codex, Cursor e Gemini CLI
Resposta rápida

O Caveman não é exclusivo do Claude Code: o instalador cobre mais de 30 agentes, incluindo Codex, Cursor, Gemini CLI, Windsurf, Cline e Copilot. O que viaja junto é a compressão de saída, com código, comandos e erros preservados byte a byte. O que fica pra trás é tudo que depende de hook: em Cursor, Windsurf, Cline e Copilot não existe ativação automática, você precisa criar um arquivo de regra sempre ativo. E as estatísticas do caveman no Claude Code leem o log JSONL de ~/.claude/projects/, por isso falham no Gemini CLI (Issue #403)

Você instalou o Caveman, curtiu ver a resposta encolher e agora vai abrir o Codex ou o Cursor pra tocar outro projeto: vai junto ou fica pra trás?

O Caveman é uma skill open source, mantida por JuliusBrussee no GitHub, que faz o agente responder em fala comprimida (o tal caveman-speak) mantendo código, comandos e mensagens de erro exatos, byte a byte

Ou seja: ele corta a conversa, não corta o que você vai copiar e colar

E a pergunta certa não é "funciona fora do Claude Code?", porque funciona

A pergunta boa é: o que muda?

Como o Caveman é distribuído em cada agente

Não existe um pacote único que serve pra tudo

O Caveman é distribuído em formatos diferentes conforme o agente: plugin do Claude Code, plugin do Codex, extensão do Gemini CLI e arquivos de regra para Cursor, Windsurf, Cline e Copilot via npx skills

Se você já instalou uma extensão de editor e já largou um arquivo de configuração na raiz do projeto, é isso: a mesma skill chega de jeitos diferentes 🙂

O instalador cobre mais de 30 agentes, e ele resolve isso sozinho: varre os agentes suportados que existem na máquina, roda o caminho de instalação nativo de cada um e pula os que não estão instalados

No Linux e no macOS, o comando publicado no repositório, com a versão fixada, é este:

curl -fsSL https://raw.githubusercontent.com/JuliusBrussee/caveman/v2.2.0/install.sh | bash

No Windows, via PowerShell:

irm https://raw.githubusercontent.com/JuliusBrussee/caveman/v2.2.0/install.ps1 | iex

Requisito da instalação: Node.js versão 18 ou superior

Tome cuidado com esse detalhe, é o tipo de coisa que faz o instalador morrer no meio e você jurar que a skill é que está quebrada

O que muda de Claude Code para Codex, Cursor, Gemini CLI e Cline

A diferença entre os agentes não está na compressão em si, está em COMO a skill entra em cena e no que sobra de instrumentação depois

Agente Formato de instalação Como a ativação acontece Estatísticas de sessão
Claude Code Plugin Automática, por hooks de SessionStart Sim, /caveman-stats lê o log JSONL da sessão
Codex Plugin Não documentada para o usuário final Não documentado
Gemini CLI Extensão Arquivos de contexto Não, a skill de stats falha (Issue #403)
Cursor Arquivo de regra via npx skills Manual a cada sessão, até você criar o arquivo de regra sempre ativo Não documentado
Windsurf Arquivo de regra via npx skills Manual a cada sessão, até você criar o arquivo de regra sempre ativo Não documentado
Cline Arquivo de regra via npx skills Manual a cada sessão, até você criar o arquivo de regra sempre ativo Não documentado
GitHub Copilot Arquivo de regra via npx skills Manual a cada sessão, até você criar o arquivo de regra sempre ativo Não documentado

Um aviso honesto sobre a linha do Codex: existe um .codex/hooks.json no repositório, mas ele é o setup que o próprio projeto usa pra rodar o Caveman nele mesmo, não uma receita geral pra sua máquina

Por isso a coluna de ativação do Codex está como não documentada: eu não vou te ensinar um passo que não está publicado como passo

E a linha do Gemini CLI é a mais importante da tabela pra quem alterna ferramenta, porque é onde a coisa realmente deixa de funcionar igual

Como deixar o Caveman sempre ativo em Cursor, Windsurf e Cline

Esse é o ponto que mais confunde: o comando de instalação roda bonitinho, aparece tudo verde, e na sessão seguinte o agente volta a falar como um palestrante motivacional

  1. Confirme que você tem Node.js 18 ou superior na máquina

O erro comum deste passo: assumir que tem, quebrar no meio do caminho e culpar a skill

  1. Instale a skill no agente:
npx skills add JuliusBrussee/caveman
  1. Entenda o que esse comando NÃO fez

Ele instala os arquivos da skill, mas não instala os arquivos de regra sempre ativos

Como Cursor, Windsurf, Cline e Copilot não têm sistema de hooks, a skill não inicia sozinha: precisa de ativação manual a cada sessão

O erro comum deste passo: achar que instalou e esperar ativação automática, igual acontece no Claude Code

  1. Crie o arquivo de regra estático na pasta específica da sua ferramenta
  • Cursor: .cursor/rules/caveman.mdc
  • Windsurf: .windsurf/rules/caveman.md
  • Cline: .clinerules/caveman.md

O erro comum deste passo: jogar o arquivo na raiz do projeto ou inventar o nome da pasta, e aí a ferramenta simplesmente ignora

  1. No Cursor e no Windsurf, marque o frontmatter pra regra ficar sempre ativa

No Cursor:

---
alwaysApply: true
---

No Windsurf:

---
trigger: always_on
---

O erro comum deste passo: criar o arquivo certo, no lugar certo, e esquecer a marcação, o que deixa a regra existindo sem nunca ser aplicada

Depois disso, o comportamento fica parecido com o do Claude Code no dia a dia: você abre a ferramenta e o agente já responde comprimido

O que quebra fora do Claude Code (e por quê)

Aqui separa o que é opinião do que é problema documentado

/caveman-stats não vai junto

Sintoma: você roda /caveman-stats em outro agente e não vem número nenhum, ou vem erro

Causa: a skill de stats lê o log de sessão do Claude Code no disco pra reportar tokens de entrada e saída reais, com a economia estimada contra uma linha de base sem caveman

Os números vêm do arquivo JSONL em disco, não de estimativa do modelo, e o Claude Code grava cada sessão como um JSONL (uma linha por objeto JSON) em ~/.claude/projects/

Tem mais: a saída do comando é injetada por um hook, o caveman-mode-tracker, que intercepta a chamada, bloqueia e devolve as estatísticas formatadas como motivo da decisão, sem o modelo nem ver a requisição

É um mecanismo do Claude Code, ponto

A Issue #403 do repositório mostra isso na prática no Gemini CLI: o script src/hooks/caveman-stats.js assume ~/.claude por padrão e procura arquivos projects/*.jsonl no schema do Claude Code, enquanto o Gemini CLI usa ~/.gemini com outra estrutura de log

Solução: contar com estatísticas só no Claude Code, e tratar os outros agentes como ambiente sem medição

Os subagentes cavecrew não carregam no Gemini CLI

Sintoma: os agentes não sobem na extensão do Gemini CLI

Causa: a Issue #473 reporta falha de carregamento dos subagentes cavecrew por nomes de ferramenta inválidos e modelo Anthropic, e a Issue #373 reporta erros de "Invalid tool name" ao carregar agentes no Gemini CLI

Solução: fora do Claude Code, não montar fluxo que dependa dos subagentes

O badge do Caveman some da statusline

Sintoma: aquele badge do Caveman na statusline, com o total de tokens economizados, não aparece

Causa: ele é alimentado pela mesma skill de stats, atualizado a cada execução de /caveman-stats e gravado num arquivo de sufixo de economia acumulada

Sem stats, sem badge

Solução: prevenção é simples, e vale mais que remendo: assuma que instrumentação (stats, badge, subagentes) é território do Claude Code, e que o que viaja pra qualquer lugar é a compressão da saída

O que eu vi usando o Caveman na prática

Meu teste real foi no Claude Code, então não vou fingir que rodei em Codex, Cursor ou Gemini CLI

Mas o que dá pra dizer do comportamento da skill vale pra qualquer agente, porque é a mesma compressão

Instalei por um comando único no terminal, sem nem abrir o Claude Code antes, e deixei o instalador cuidar do resto

Depois disso, abri o Claude Code e a skill já apareceu na lista assim que comecei a digitar

Aí veio a parte divertida: usei o MESMO prompt (explicar função recursiva em JavaScript) subindo a intensidade nível a nível, pra comparar as respostas lado a lado

A resposta foi ficando mais curta e mais direta a cada nível, e me pareceu um pouco mais rápida também

No nível mais extremo, a explicação saiu num formato que eu simplesmente não consegui ler, apesar de o código continuar legível kkk

Conclusão prática: o nível intermediário compreensível é o limite útil pra quem quer ENTENDER a resposta, e o modo mais agressivo faz sentido quando o objetivo é só programar, não conversar

Pra provar que não é só cosmético, pedi um app de notas completo (CRUD, cards na home, dark mode, seed) rodando no modo agressivo

O projeto foi criado e executado sem erro nenhum no prompt inicial, abri no navegador, criei uma nota e estava funcional 😀

Durante a execução dá pra sentir o efeito nas microinterações do agente: comentários curtos e telegráficos em vez de parágrafo

O que eu NÃO consegui provar foi a economia

Tentei conferir o consumo pelo comando de custo do Claude Code antes e depois, e ele não mostrou os tokens porque eu estava em plano de assinatura

Lembro de esse número aparecer antes, mas não consegui confirmar na sessão, então a comparação ficou sem prova e eu deixei a medição como dever de casa

E é justamente aí que mora o custo de levar a skill pra uma ferramenta sem hooks e sem stats: você perde a ativação automática, perde o badge e perde o único lugar onde existe número real pra olhar

Vale levar o Caveman quando você troca de ferramenta?

Vale, desde que você saiba o que entra na mala

O que vai junto: a compressão de saída em si, com código, comandos e erros preservados, mais os comandos /caveman, /caveman-commit, /caveman-review, /caveman-compress e /caveman-help

O que fica pra trás: estatísticas reais de sessão, o badge na statusline, a ativação por hook e os subagentes no Gemini CLI

Agora, a expectativa de ganho

O número oficial do projeto é 65% de redução média de tokens de saída, com faixa de 22% a 87%, medido num benchmark de 10 prompts

Repare: é saída, não uso total

Do outro lado, um benchmark independente da JetBrains mediu 8,5% de economia de tokens de saída em 86 tarefas do SkillsBench, com a skill forçada em todas as tarefas (ou seja, melhor caso)

O teste rodou no Claude Code com harness Harbor 0.17 e Claude Sonnet 5 em esforço de raciocínio baixo, conduzido pelo engenheiro Denis Shiryaev

Sobre qualidade, o resultado foi morno: desempenho melhorou em 8 tarefas, piorou em 10 e ficou igual em 64, sem diferença estatística

Dez prompts de benchmark e 86 tarefas agênticas reais são coisas bem diferentes, e a distância entre 65% e 8,5% é exatamente essa

O próprio repositório assume isso: existe uma página docs/HONEST-NUMBERS.md documentando quando o Caveman economiza e quando custa tokens, orientando desligar a skill se o resultado for negativo pro seu workload

Isso pra mim é ponto a favor do projeto, não contra 🙂

E se a sua troca de ferramenta é por causa da conta no fim do mês, antes de mexer em skill vale olhar qual agente custa menos por mês, porque compressão de saída não conserta escolha de plano

Conclusão

A decisão prática cabe em três linhas

Instale pelo caminho nativo do agente que você usa, e deixe o instalador varrer a máquina em vez de sair copiando arquivo na mão

Se a ferramenta não tem hooks (Cursor, Windsurf, Cline, Copilot), crie o arquivo de regra sempre ativo, senão você vai reativar a skill toda sessão e achar que ela não funciona

E meça no Claude Code, que é onde os números existem, antes de assumir economia em outro agente

Se você está no meio dessa mudança de ambiente, esse raciocínio de "o que dá pra levar junto" é o mesmo de quando pensei em migrar do Cursor pro Claude Code: parte do ferramental viaja, parte não

Último detalhe pra não perder tempo: caveman-code, cavemem e cavekit estão marcados como Frozen no GitHub, com o desenvolvimento ativo movido para JuliusBrussee/caveman

Então é lá que você olha

Próximo passo: roda o instalador, dá uma passada no repositório e testa no seu fluxo real, não num prompt de brinquedo

Até o próximo post! 😀

Perguntas frequentes

O Caveman economiza tokens de verdade ou é só a resposta ficando mais curta?

O número oficial do projeto é 65% de redução média nos tokens de saída, com faixa de 22% a 87%, medido em um benchmark de 10 prompts. Um teste independente da JetBrains, rodado no Claude Code com o harness Harbor 0.17 e Claude Sonnet 5, mediu só 8,5% de economia de saída em 86 tarefas do SkillsBench, mesmo com a skill forçada em todas elas. O próprio repositório documenta isso no arquivo docs/HONEST-NUMBERS.md e recomenda desligar a skill se o resultado for negativo pro seu workload.

Os subagentes cavecrew do Caveman funcionam no Gemini CLI?

Não, e há registro aberto disso: a Issue #473 mostra os subagentes cavecrew falhando ao carregar na extensão do Gemini CLI por nomes de ferramenta inválidos e por dependerem de modelo Anthropic. A Issue #373 relata o mesmo tipo de erro, de ‘Invalid tool name’, ao carregar os agentes no Gemini CLI.

Quais comandos o Caveman disponibiliza além da compressão da fala?

São seis comandos ao todo: /caveman, /caveman-commit, /caveman-review, /caveman-compress, /caveman-stats e /caveman-help. Eles chegam junto com a instalação da skill em qualquer agente suportado, mas o /caveman-stats só funciona de verdade no Claude Code, porque depende do log JSONL de sessão que só esse agente grava.

Dá pra usar o .codex/hooks.json do repositório do Caveman no meu próprio projeto Codex?

Esse arquivo é o setup que o próprio repositório do Caveman usa para rodar a skill nele mesmo, não uma receita geral publicada para qualquer instalação do Codex. Por isso ele não vale como passo a passo oficial de ativação para o usuário final: a ativação automática documentada é a do Claude Code, por hooks de SessionStart.

O que são caveman-code, cavemem e cavekit?

São ferramentas irmãs que o projeto Caveman absorveu e que hoje estão marcadas como Frozen no GitHub. O desenvolvimento ativo de tudo isso foi concentrado no repositório JuliusBrussee/caveman.

O badge do Caveman na statusline funciona em qualquer agente?

O badge mostra o total de tokens economizados e é atualizado a cada execução de /caveman-stats, com o valor gravado em um arquivo de sufixo de economia acumulada. Como essa contagem depende do log JSONL do Claude Code em ~/.claude/projects/, na prática o badge só reflete números reais nesse agente.




Escrito por | Matheus Battisti

Matheus Battisti
Fundador da Hora de Codar

Programador apaixonado pelo mundo das tecnologias, sempre buscando em aprender e se aprofundar em linguagens, frameworks e o que mais for necessário para executar um bom trabalho. Agora tem uma nova missão que é de passar seu conhecimento adiante para formar novos programadores e especializar mais os que já são.

Subscribe
Notify of
guest

0 Comentários
Oldest
Newest Most Voted

Formações

Formação Vibe Coding

Formação Vibe Coding

Do Prompt ao Produto: Crie Software Real com IA

  • 474 aulas
  • 20 projetos
  • 39h 30min

Blog | Mais populares