Alternar tema

Por que o Prompt Cache não reduziu custos? Diagnostique agentes de código com prompt-cache-skills

Easton editorial illustration: central cache vault with stacked prompt blocks, cold request entering the vault, warm request reusing the cached blocks, small timestamp block diverted away from the cache

"O repositório prompt-cache-skills organiza skills de correção de cache por agent harness e exige validação por campos reais de uso depois da aplicação do diff."

Sua conta mensal do Claude Code ou do Cline pode estar 30% a 50% acima do necessário. Não por excesso de uso, mas porque o Prompt Cache não está funcionando.

Muitos Agents de programação com IA habilitam prompt caching por padrão, porém uma pequena mudança de configuração pode invalidar todo o prefixo em cache: um timestamp dentro do system prompt, uma cache key calculada incorretamente, a opção de cache desativada ou um TTL curto demais. Isso não gera erro nem aviso na fatura; você apenas continua vendo um custo alto de API todos os meses.

O prompt-cache-skills é uma biblioteca de skills drop-in voltada a corrigir essas configurações de cache que deixam de funcionar silenciosamente. Em cenários adequados, a taxa de acerto pode sair de quase zero e chegar a 80% ou mais. A seguir, você entenderá a cobrança do cache, as quatro causas principais de falha, correções típicas da biblioteca e como validar o resultado.

Como o Prompt Cache reduz custos

A lógica de economia do Prompt Cache é simples: um prefixo estável pode ser armazenado em cache e, quando reutilizado, custa muito menos que tokens de entrada comuns.

Os nomes dos campos de cobrança variam entre APIs, mas o princípio é o mesmo:

Tipo de cobrançaCaracterísticaCenárioProvedor representativo
cache_creation_input_tokensCriação inicial do cache, geralmente mais cara que um token comumPrimeira solicitação com prefixo longoAnthropic
cache_read_input_tokensAcerto de cache, muito mais barato que um token comum, cerca de 10%Reutilização de prefixo estávelAnthropic
Tokens de entrada comunsCobrança pela tarifa normalSolicitação curta ou prefixo que muda com frequênciaTodos os provedores
cached_tokens (OpenAI)Acerto de cache, com custo cerca de 50% menorReutilização de prefixo estávelOpenAI
cached content (Gemini)Cobrança conforme o tempo de cacheContextos longosGoogle Gemini

Na Anthropic, por exemplo, imagine um system prompt com 2.000 tokens reutilizado 100 vezes por dia no mesmo Agent. Quando há acerto, esses 2.000 tokens são cobrados como cache_read, em torno de 10% do preço de tokens de entrada comuns. Só esse item pode reduzir o custo de entrada em cerca de 90%.

Para o cache funcionar de verdade, o prefixo precisa permanecer estável e ser reutilizado várias vezes. Se o system prompt muda a cada solicitação — por conter um timestamp ou ID aleatório, por exemplo —, o prefixo precisa ser recalculado sempre, e o custo de cache_creation pode até superar o de uma solicitação comum.

Por que o cache do seu Agent sempre falha

Essas falhas não geram mensagens de erro. Você vê o valor da fatura, mas não encontra onde está o desperdício:

  1. Mensagens variáveis quebram o prefixo. Um timestamp, ID aleatório ou outro valor que muda em toda solicitação aparece no início do system prompt e invalida todo o prefixo. Essa é a causa mais comum.

  2. Cache key ausente ou incorreta. Algumas ferramentas Agent não definem corretamente a marcação do cache ou calculam de forma errada uma cache key personalizada. O conteúdo do prefixo é estável, mas a API não o reconhece como armazenável.

  3. Cache desativado por padrão. Algumas ferramentas mantêm prompt caching desligado até que você o habilite manualmente no arquivo de configuração. Você espera que o Agent cuide disso, mas continua pagando a tarifa normal.

  4. TTL curto demais. O prazo de validade pode ser de apenas uma hora, enquanto o intervalo real entre suas solicitações é maior. Quando a próxima chamada chega, o cache já expirou.

Os sintomas exatos variam entre Agents. O README do prompt-cache-skills os organiza por ferramenta. Se você suspeita de uma dessas causas, compare primeiro seu caso com o SKILL.md correspondente.

O que é prompt-cache-skills

O prompt-cache-skills é um conjunto de skills drop-in que qualquer Agent de programação com IA pode ler e aplicar:

DimensãoDescrição
PosicionamentoSkills drop-in com patches que um Agent de programação com IA pode ler e aplicar
ObjetivoElevar uma taxa de acerto ruim ou parcial para 80%–99% em cenários adequados
Agents compatíveisClaude Code, Codex, Cline, Cursor, Devin, Gemini CLI, OpenCode, Aider, Continue, Roo Code e outros
Repositóriohttps://github.com/OnlyTerp/prompt-cache-skills
UsoApontar o repositório → Agent aplica automaticamente → validar acerto; ou aplicar manualmente o patch de skills/
Economia de tempoEvita pesquisar sozinho os detalhes de cache de cada API

O projeto tem atualmente cerca de 99 stars. A lista e os nomes dos skills podem mudar; confirme sempre no README do repositório.

Em comparação com um diagnóstico manual, a biblioteca evita que você precise percorrer a documentação de prompt caching de cada API, comparar configurações de diferentes Agents e adivinhar qual campo está invalidando o prefixo. Cada skill identifica uma causa específica, fornece o diff de correção e explica como validar.

Como usar prompt-cache-skills para corrigir seu Agent

Há duas opções: pedir ao Agent que faça a correção automaticamente ou alterar manualmente os arquivos seguindo o diretório skills/.

Opção 1: deixar o Agent corrigir automaticamente (recomendado)

Primeiro, aponte o repositório. Envie esta instrução ao seu Agent de programação com IA:

Leia https://github.com/OnlyTerp/prompt-cache-skills e aplique cada skill de skills/ compatível com o harness que uso: confirme o alvo → aplique o diff → valide conforme o SKILL.md

Segundo, o Agent identificará sua ferramenta atual — Cline, Continue ou Aider, por exemplo — e listará os skills compatíveis. Você verá a causa tratada por cada um.

Terceiro, revise o diff. Cada diretório de skill contém um SKILL.md que descreve o alvo e as alterações. Leia com atenção e confirme se são seguras.

Quarto, aplique a alteração. Depois da revisão, permita que o Agent aplique o diff aos arquivos de configuração locais ou do projeto. Faça backup da configuração original primeiro.

Quinto, valide o acerto. Use tools/check_cache.py para confirmar se o cache entrou em ação. O procedimento está na seção “Como validar se o cache realmente acertou”.

Opção 2: correção manual

Se você não quer que o Agent altere a configuração automaticamente, pode aplicar a correção manualmente.

Primeiro, acesse o repositório: https://github.com/OnlyTerp/prompt-cache-skills

Segundo, abra o diretório skills/ e localize o skill da ferramenta que você usa, como cline-fix-volatile-msg ou continue-enable-defaults.

Terceiro, leia o SKILL.md. Cada diretório explica o alvo, os sintomas, a correção e a validação.

Quarto, altere manualmente o arquivo de configuração conforme as instruções.

Quinto, valide o acerto com tools/check_cache.py.

Aviso de segurança

Deixar o Agent aplicar um diff altera diretamente configurações locais ou do projeto. Leia o SKILL.md e entenda cada modificação antes de autorizar. Faça backup do arquivo original.

Detalhes da biblioteca de skills: correções típicas

Cada skill do repositório é uma correção completa, com Agent-alvo, sintomas, diff e método de validação. Estes são alguns casos típicos:

Nome do skillAgent-alvoSintomaCorreção
cline-fix-volatile-msgClineO prefixo do system prompt contém timestamp e muda a cada solicitaçãoRemover ou fixar a mensagem variável
cline-openai-cache-keyCline + OpenAICálculo incorreto da cache key da OpenAICorrigir a lógica de geração da cache key
cline-pin-timestampClineO timestamp invalida o cacheFixar ou remover o timestamp
continue-fix-volatile-msgContinueO system prompt contém campos variáveisRemover mensagens variáveis
continue-enable-defaultsContinuePrompt caching não está habilitado por padrãoHabilitar a configuração de cache
continue-gemini-explicitContinue + GeminiFalta configuração de cache do GeminiDefinir explicitamente os parâmetros de cache
aider-1h-ttlAiderTTL de apenas uma hora, com expirações frequentesEstender o TTL ou ajustar a frequência de solicitações
aider-cache-default-onAiderCache desativado por padrãoHabilitar a opção padrão de cache
opencode-detect-openai-compatOpenCodeCache falha no modo compatível com OpenAIDetectar e tratar corretamente a API compatível com OpenAI
opencode-bedrock-doc-blocksOpenCode + BedrockProblema de cache em blocos de documento do BedrockCorrigir a estratégia de cache dos blocos

A lista continua crescendo e os nomes podem mudar. Consulte o README e o diretório skills/ do repositório. Se o seu Agent ainda não estiver contemplado, use os arquivos SKILL.md e patches existentes como referência para diagnosticar problemas semelhantes manualmente.

Como validar se o cache realmente acertou

O prompt-cache-skills inclui tools/check_cache.py, que compara duas solicitações, uma a frio e outra a quente, e calcula a taxa de acerto.

Etapas

Primeiro, obtenha check_cache.py no repositório:
https://github.com/OnlyTerp/prompt-cache-skills/blob/main/tools/check_cache.py

Segundo, configure a credencial da API pela variável de ambiente:

  • Anthropic: ANTHROPIC_API_KEY
  • OpenAI: OPENAI_API_KEY
  • Google Gemini: GOOGLE_API_KEY

Terceiro, execute a solicitação a frio, ou seja, a primeira chamada:

python check_cache.py --provider anthropic --prompt "seu system prompt" --message "sua mensagem de usuário"

Observe o campo cache_creation_input_tokens:

  • Um valor indica que o cache foi criado
  • Registre a quantidade de input_tokens

Quarto, aguarde um segundo e execute a solicitação a quente. Repita exatamente o mesmo comando, com prompt e message idênticos.

Observe:

  • cache_read_input_tokens: um valor maior que zero indica acerto
  • cache_creation_input_tokens: deve ser zero ou não aparecer
  • input_tokens: deve cair bastante, pois a parte em cache não é cobrada como entrada comum

Quinto, calcule a taxa de acerto:

Taxa de acerto = cache_read_input_tokens / (cache_read_input_tokens + input_tokens)

Exemplo:

  • Primeira solicitação: input_tokens=2000, cache_creation_input_tokens=1800
  • Segunda solicitação: cache_read_input_tokens=1800, input_tokens=200
  • Taxa de acerto = 1800 / (1800 + 200) = 90%

Sexto, interprete o resultado:

  • Cache funcionando: cache_read_input_tokens > 0 na solicitação a quente
  • Cache não funcionando: cache_read_input_tokens = 0 ou ausente

Se cache_read_input_tokens for zero na solicitação a quente, volte às quatro causas principais e procure mensagens variáveis, cache key incorreta, opção desativada ou TTL curto.

Métricas

  • cache_creation_input_tokens: campo da Anthropic com o número de tokens usados para criar o cache
  • cache_read_input_tokens: campo da Anthropic com o número de tokens lidos em um acerto
  • cached_tokens: campo da OpenAI com o número de tokens em cache
  • input_tokens: tokens de entrada comuns, fora do cache

cache_read_input_tokens = 0 na solicitação a quente significa que o cache não funcionou. Retorne às quatro causas anteriores e revise a configuração.

Quando esta biblioteca é ou não é recomendada

A biblioteca corrige problemas conhecidos, mas não serve para todos os cenários:

CenárioRecomendaçãoMotivo
System prompt longo + várias solicitações semelhantesRecomendadaO prefixo estável pode ser reutilizado e gera boa economia
Ferramenta Agent de programação, como Claude Code ou ClineRecomendadaO projeto foi criado para essas ferramentas
Conta mensal acima de US$ 50RecomendadaA economia potencial justifica o trabalho
Prompt caching configurado, mas sem confirmação de funcionamentoRecomendadaA ferramenta de validação confirma o resultado
Prompt curto + uma única solicitaçãoNão recomendadaO custo do cache pode superar o benefício
System prompt muda com frequência, como dados em tempo realNão recomendadaO prefixo não é estável e não pode ser reutilizado
Intervalo entre solicitações maior que o TTL, como poucas chamadas por diaAvaliarO cache pode expirar e gerar pouco benefício
Agent fora da lista compatívelAvaliarRequer adaptação manual ou um futuro skill da comunidade

Se sua conta mensal já passa de US$ 50 e você usa um Agent compatível, o retorno pode ser relevante. Se a frequência é baixa ou o prefixo muda muito, avalie primeiro se a alteração compensa.

Riscos e cuidados

Antes de usar a biblioteca, considere estes riscos:

  1. O projeto é novo. Atualmente tem cerca de 99 stars, e a lista e os nomes dos skills podem mudar. Confirme no README. A biblioteca continuará evoluindo.

  2. Alterações automáticas exigem cuidado. Um diff aplicado pelo Agent modifica configurações locais ou do projeto. Leia o SKILL.md e entenda cada ponto antes de autorizar.

  3. Os campos de cobrança variam. A Anthropic usa cache_creation/cache_read, a OpenAI usa cached_tokens e o Gemini usa cached content. Consulte a documentação atual.

  4. Cache não resolve tudo. Chamadas curtas e únicas ou prefixos variáveis geram pouco benefício e podem custar mais. Não force o uso em todos os casos.

  5. A ferramenta de validação tem limites. check_cache.py foi criada principalmente para a API da Anthropic. Consulte também a documentação da OpenAI e do Gemini.

  6. A taxa não é garantida. De 80% a 99% é a meta declarada pelo projeto. O resultado depende do prefixo, da frequência, do TTL e de outros fatores.

Próximos passos e leituras

Para reduzir ainda mais o custo da programação com IA:

  • Centralize monitoramento, cache e failover com um AI Gateway — gerencie vários provedores e reduza custos evitáveis

  • Técnicas de Prompt Engineering para melhorar respostas — melhore prompts e evite tokens desnecessários

  • Computer-Use Agent: deixe a IA controlar seu computador — entenda esses Agents e melhore o fluxo de trabalho

Recursos oficiais:

Diagnosticar e validar o Prompt Cache com prompt-cache-skills

Identifique o agent harness, revise a correção e compare solicitações a frio e a quente para confirmar o uso real do cache.

  1. 1

    Step 1: Confirmar se a carga é adequada para cache

    Verifique se as solicitações contêm um prefixo longo, estável e reutilizado. Prompts curtos, solicitações únicas e system prompts que mudam com frequência não são bons candidatos.
  2. 2

    Step 2: Encontrar o skill correspondente

    No diretório skills do prompt-cache-skills, escolha o skill compatível com seu agent harness e provedor de modelo.
  3. 3

    Step 3: Revisar o alvo e o diff

    Leia o SKILL.md correspondente, confirme arquivo-alvo, escopo, riscos e validação, e faça backup da configuração original antes de aplicar alterações.
  4. 4

    Step 4: Aplicar a correção mínima

    Siga as instruções do skill para corrigir mensagens variáveis, cache key, opção de cache ou TTL sem alterar configurações que não fazem parte do problema.
  5. 5

    Step 5: Executar a solicitação a frio

    Use check_cache.py ou os campos de uso do provedor para executar a primeira solicitação e registrar tokens de entrada comuns e de criação do cache.
  6. 6

    Step 6: Executar e comparar a solicitação a quente

    Envie novamente exatamente o mesmo prompt e a mesma mensagem, confirme que os tokens lidos do cache são maiores que zero e calcule a taxa real de acerto.

FAQ

Quais ferramentas de programação com IA são compatíveis com prompt-cache-skills?
O repositório contempla Agents como Claude Code, Codex, Cline, Cursor, Devin, Gemini CLI, OpenCode, Aider, Continue e Roo Code. A correção disponível depende do diretório skills atual e do seu harness; use o README mais recente como referência.
A taxa de acerto passará de 80% depois da correção?
Não há garantia. De 80% a 99% é a faixa-alvo descrita pelo projeto para cenários adequados. O resultado real depende do tamanho e da estabilidade do prefixo, da frequência das solicitações, do provedor e do TTL, e deve ser validado pelos campos reais de uso.
Quanto um acerto de cache pode economizar?
A economia depende do provedor, do modelo, das cobranças de criação ou armazenamento e do número de reutilizações. Prefixos longos e estáveis reutilizados várias vezes costumam gerar mais benefício; solicitações curtas ou pouco frequentes podem não compensar.
É seguro deixar um Agent alterar a configuração automaticamente?
Aplicar um diff automaticamente modifica configurações locais ou do projeto. Leia o SKILL.md, confirme arquivo-alvo e escopo, faça backup da configuração original e só então aplique e valide; reverta se a validação falhar.
O que fazer se não houver um skill para meu Agent?
Use sintomas, diffs e métodos de validação dos skills existentes como referência para verificar prefixo estável, cache key, opção padrão e TTL manualmente, mas não aplique um patch incompatível.

11 min de leitura · Publicado em: 29 jul 2026 · Atualizado em: 30 jul 2026

Trilha de leitura da sérieParte 1 de 1

Guia de Prompt Engineering

Você está lendo o primeiro post desta série. Continue para o próximo ou abra o hub da série para ver toda a trilha.

Ver hub da série

Anterior

Você está no início desta série.

Próximo

Este é o post mais recente da série até agora.

Posts relacionados

Comentários

Entre com GitHub para comentar

Easton BlogEaston Blog