pular para o conteúdo

4 min de leitura

Trocar o modelo não baixou minha conta do Claude Code. Isto baixou.

Um mês medindo cada token: por que o custo escala com o número de agentes e o tamanho do contexto, e as cinco regras que viraram configuração.

  • claude code
  • agentes
  • custo

Eu tinha certeza de que a resposta era óbvia: troca o modelo dos subagentes por um mais barato e pronto. Troquei. Medi. A conta por hora ficou… igual.

Este texto é sobre o que eu descobri quando parei de chutar e fui olhar de onde vinha cada centavo. Tudo que está aqui virou um repositório, o claude-config, que deixa qualquer máquina minha igual à principal.

O experimento que deu “errado”

A ideia era simples. Uma sessão principal em Opus orquestra; o trabalho braçal vai para subagentes. Se o subagente custa menos, a conta cai. Certo?

O agente em Sonnet realmente custou 57% menos por rodada que o mesmo agente em Opus. Só que, no mesmo período, rodaram 2,7 vezes mais agentes por hora. Agente barato vira agente para tudo. Resultado: gasto por hora empatado.

O custo escala com o número de agentes e com o contexto que cada um carrega, não com o modelo.

Essa frase virou a primeira linha das minhas regras.

Para onde o dinheiro vai de verdade

Fui olhar um mês inteiro de uso, separado por tipo de token. O resultado mudou tudo:

Tipo de token Fatia do gasto
Leitura de cache 66%
Output (o texto que o modelo escreve) 9%
O resto (escrita de cache, input) 25%

Dois terços da conta é reler contexto. Toda mensagem nova numa conversa reenvia tudo que veio antes. Se a conversa tem 400k tokens, cada “ok, agora ajusta aquele botão” paga 400k de leitura.

E aí veio o número que doeu: 74% do custo do orquestrador aconteceu depois dos 400k de contexto. A sessão longa, aquela que “já sabe de tudo”, era exatamente a mais cara.

Por isso as dicas da moda de responder curtinho ou comprimir a saída dos comandos quase não mexem no ponteiro. Output é 9% do gasto. Saída de teste e de build, menos de 2% do contexto.

As cinco regras

1. No máximo dois agentes ao mesmo tempo

Tarefa independente espera na fila. Tarefa pequena não ganha agente próprio: junta com a vizinha ou eu mesmo faço. Delegar uma edição de uma linha custa mais que fazer.

2. Contexto de entrada magro

A tarefa aponta caminhos (arquivo:função), não cola o arquivo, o diff ou o log. O agente lê o que precisar. Cada agente novo paga o contexto inicial como escrita de cache, que custa umas 12 vezes o preço da leitura.

3. Reaproveite o agente que já sabe

Correção ou segunda rodada vai para o mesmo agente, por mensagem, enquanto ele estiver abaixo de 150k. Ele já tem o contexto em cache. Um agente novo começaria do zero, pagando tudo de novo.

4. Teto de 200k para todo mundo

A sessão principal fecha em 200k. O agente devolve em 200k. Passou do teto? Termina o item, grava o estado num arquivo de tarefa e /clear. A próxima sessão lê o arquivo e segue.

E um detalhe que eu não esperava: retomar uma sessão parada há mais de uma hora regrava uns 445k de contexto de uma vez, porque o cache já expirou. Agora um hook bloqueia retomada fria acima de 150k (dá pra forçar, mas aí é consciente).

5. Retorno curto

O agente devolve no máximo umas 30 linhas: arquivos tocados, código de saída de cada prova, a linha do erro se falhou. O log completo fica em arquivo. Tudo que o agente devolve entra no meu contexto e é pago em toda mensagem seguinte.


Regra, skill ou configuração?

A parte que eu mais gosto. Cada coisa mora no lugar onde custa menos:

  • Configuração (settings.json): o que não pode depender de o modelo lembrar, como o modelo padrão dos subagentes.
  • CLAUDE.md: lido em toda sessão, então só carrega a regra e quando aplicar. Curto de propósito.
  • Skill: o roteiro completo de como delegar só é carregado na hora de delegar. Sessão que não delega não paga por ele.
  • Hook: a guarda de contexto avisa nos tetos, barra a retomada fria e registra cada agente, para eu medir depois em vez de achar.

E o modelo, afinal?

Continua sendo um teste A/B, com critério escrito: o modelo menor fica nos agentes se o retrabalho for menor que uma em cada seis tarefas. Se piorar, volta o maior. Toda tarefa devolvida ou refeita fica registrada, e é essa contagem que decide.

Mas a lição ficou: antes de trocar o modelo, olhe o contexto. É lá que mora a conta.

PS: a barrinha lá em cima, que enche enquanto você lê, é exatamente isso. Este texto inteiro “custa” 200k. Chegou no fim? Hora do /clear.