Intro: o worker barato que ninguém chama
Os subagents do Claude Code ignoram o Haiku 5.5 até que dois arquivos digam o contrário. Essa é toda a descoberta, e o resto deste artigo é a medição por trás dela: sete tarefas do dia a dia em um repositório real, com Haiku 5.5, Sonnet 5.5 e Opus 5.5 assumindo cada um o papel de worker, e o medidor do plano lido após cada bloco de execuções.
O Haiku 5.5 foi lançado em 7 de outubro de 2026, apresentado pela Anthropic como o modelo de subagent, com um preço por token dez vezes menor que o do Haiku anterior. Um mês de logs de uma única conta conta a outra metade da história: 2.631 execuções de subagent, 42 delas no Haiku, porque todo subagent herda o modelo principal. Mudar todos os subagents para o Haiku levanta uma pergunta óbvia: quanto o medidor do plano realmente devolve? Dois arquivos colocam o agente Explore no Haiku, e a configuração que a maioria das pessoas procura primeiro não faz nada sozinha. O painel de detalhamento de uso, aquele em que todo mundo confia, é calculado a partir de quatro números embutidos no binário.
Quanto custa uma tarefa em cada modelo
O Haiku 5.5 custa $0,10 por milhão de tokens de entrada e $0,50 por milhão de tokens de saída, contra $1 e $5 do Haiku 4.5. Esse preço vale para prompts de até 100.000 tokens; acima desse limite, a requisição inteira passa a custar cinco vezes mais. O número de "90%" da Anthropic não é um desconto: é a parcela das requisições ao Haiku anterior que ficaram abaixo desse limite.
| Modelo | Entrada por 1M de tokens | Saída por 1M de tokens |
|---|---|---|
| Haiku 5.5 (prompt até 100k) | $0.10 | $0.50 |
| Haiku 5.5 (prompt acima de 100k) | $0.50 | $2.50 |
| Haiku 4.5 | $1.00 | $5.00 |
| Sonnet 5.5 | $2.00 | $10.00 |
| Opus 5.5 | $4.00 | $20.00 |
Mais duas pegadinhas vieram do campo. O novo tokenizer conta o mesmo texto como cerca de 30% mais tokens que o Haiku 4.5. E no effort máximo, uma execução independente mediu cerca de 162.000 tokens de saída por tarefa, mais ou menos o triplo de um modelo concorrente. A própria frase da Anthropic é cuidadosa: Sonnet e Opus continuam sendo as melhores escolhas para coding agêntico complexo. No Terminal-Bench 4.0, o Haiku 5.5 marca 39,2% contra 70,6% do Sonnet 5.5.
O teste cobre as tarefas que um subagent de fato recebe. Um repositório real, o tinydb, com 226 testes na suíte. Sete tipos de tarefa: explorar o código, corrigir um teste que falha, limpar erros de lint, escrever uma mensagem de commit, adicionar uma pequena funcionalidade, revisar um diff, resumir a arquitetura. Quatro workers: Haiku 5.5 em effort médio, Haiku 5.5 em effort baixo, Sonnet 5.5, Opus 5.5. Ao todo, 182 execuções, todas verificadas por um teste oculto ou uma regra fixa, nunca a olho.
| Configuração | Execuções | Aceitas | Pequena funcionalidade, preço de tabela | Pequena funcionalidade, tempo total |
|---|---|---|---|---|
| Haiku 5.5, effort baixo | 70 | 70 | $0.0052 | 17.1 s |
| Haiku 5.5, effort médio | 70 | 70 | $0.0078 | 26.3 s |
| Sonnet 5.5 | 21 | 21 | $0.1050 | 30.3 s |
| Opus 5.5 | 21 | 21 | $0.1675 | 30.3 s |
Explorar a base de código custou $0,0035 no Haiku com effort baixo e $0,1454 no Opus, cerca de quarenta vezes mais. O Haiku nunca foi mais lento: sete tarefas, todas aceitas, por uma fração do preço, tão rápido quanto ou mais rápido.
Por que nada roda no Haiku por padrão
Nada vai para o Haiku por conta própria, e isso é intencional. Desde a versão 2.1.198, o agente Explore embutido herda o modelo da sessão principal, limitado ao Opus; antes dessa versão, ele rodava no Haiku. Todo subagent personalizado faz o mesmo. A documentação dá a ordem de resolução: o modelo indicado na chamada, depois o modelo do arquivo do agente, depois a variável CLAUDE_CODE_SUBAGENT_MODEL, e só então o modelo principal.
Há uma armadilha nessa lista, e a documentação a diz com clareza: definir sozinha a variável do modelo de subagent não muda o modelo em que os agentes embutidos Explore e Plan rodam. Duas execuções headless confirmam as duas afirmações. Com a sessão principal no modelo Fable e uma única pergunta (use o agente Explore para encontrar onde o cache de consultas é limpo), o resultado da ferramenta informa o modelo que realmente rodou: Opus 5.5. A mesma execução com a variável do modelo de subagent definida como Haiku 5.5 e nada mais: Opus 5.5 de novo.
É por isso que um mês de logs tem essa aparência. Em 2.631 execuções de subagent, 42 foram para o Haiku. Os subagents consumiram 48,1% de todos os tokens da conta, e a parcela do Haiku no custo ponderado foi de 0,27%. O padrão é uma escolha defensável: um explorador no seu modelo principal lê código tão bem quanto o modelo principal. O que ninguém imprime é quanto isso custa.
Os dois arquivos
Dois arquivos resolvem, e você pode usar um ou os dois. O pequeno é um único arquivo de agente no seu projeto: crie .claude/agents/Explore.md, dê a ele o nome Explore, escreva uma descrição, defina o modelo como claude-haiku-5-5 com o id completo, defina o effort como low e limite as ferramentas a Read, Glob, Grep e Bash. A partir daí o Claude Code trata o seu arquivo como o agente Explore, e a documentação diz isso com todas as letras: defina um subagent de projeto chamado Explore e dê a ele o modelo Haiku. A mesma execução headless passa então a informar resolvedModel: claude-haiku-5-5.
O segundo arquivo são as suas configurações. Um bloco env em .claude/settings.json com duas variáveis: CLAUDE_CODE_SUBAGENT_MODEL definida como claude-haiku-5-5 e CLAUDE_CODE_SUBAGENT_MODEL_FORCE definida como 1. O force é a parte que as pessoas esquecem. Desde a versão 2.1.257, essa flag aplica o modelo de subagent a todos os subagents, ignorando as substituições feitas na chamada ou no arquivo do agente. A mesma execução com essas duas variáveis no ambiente e sem arquivo de agente volta a mostrar Haiku 5.5.
| Você quer | Use | Efeito colateral |
|---|---|---|
| Todos os subagents baratos | O bloco env das configurações com a flag force | Seus agentes deliberadamente no Opus também caem para o Haiku |
| Só o explorador barato | O arquivo do agente Explore | Os outros agentes mantêm seus próprios modelos |
Fixe o id completo do modelo. O alias haiku significa Haiku 5.5 apenas na API da Anthropic; no Bedrock, no Vertex e no Foundry ele ainda significa Haiku 4.5. Uma issue aberta no repositório do Claude Code relata 1.149 subagents de 1.371 rodando no modelo Opus do processo pai, com o arquivo dizendo outra coisa, de forma intermitente ao longo de uma dúzia de builds (2.1.277 a 2.1.290), sem resposta da Anthropic. No build atual, o 2.1.293, todas as 182 execuções usaram o modelo configurado. Mesmo assim, confira: o comando /tasks mostra o modelo em que cada subagent rodou, e o resultado da ferramenta numa execução headless também o traz. O effort é a alavanca que sobra, já que o thinking não pode ser desligado nesses modelos; o effort baixo no arquivo Explore é uma escolha deliberada, e o que ela rende é medido mais adiante.
O que o medidor real viu
Toda execução headless com saída em streaming emite um rate_limit_event. Dentro dele há duas frações, a janela de cinco horas e a janela de sete dias, com duas casas decimais cada. Elas vêm direto dos cabeçalhos de resposta que a Anthropic envia a cada resposta, com resolução de um ponto e nada mais fino. Os quatro workers rodaram em quatro blocos, um após o outro, sem mais nada tocando a conta.
| Bloco | Execuções | Janela de cinco horas antes | Janela de cinco horas depois | Janela semanal |
|---|---|---|---|---|
| Haiku 5.5, effort baixo | 70 | 21% | 21% | 67% |
| Haiku 5.5, effort médio | 70 | 21% | 21% | 67% |
| Sonnet 5.5 | 21 | 21% | 22% | 67% |
| Opus 5.5 | 21 | 22% | 23% | 67% |
Em preço de tabela, a matriz inteira custou $4,09. No medidor, custou dois pontos de uma janela de cinco horas e zero ponto da semana. A metade do Haiku custou $0,54 e não moveu nada: um ponto da janela desta conta vale mais que 140 dessas tarefas no Haiku.
A Anthropic publica uma única frase sobre o peso dos modelos: o Opus custa várias vezes mais por turno que o Sonnet, e o Sonnet mais que o Haiku. Várias. Nenhum número em lugar nenhum. As janelas são um pool único para todos os modelos, então trocar de modelo no meio de uma sessão não devolve nada. Cada bloco carrega até um ponto de arredondamento, o que significa que o ponto do Sonnet e o ponto do Opus não podem ser distinguidos. O que o medidor prova com certeza é que uma tarefa delimitada, em qualquer um desses modelos, é invisível nessa resolução. O peso de cada modelo precisa ser lido em outro lugar.
O detalhamento do /usage é um chute
Abra o painel /usage e você vê um detalhamento: percentuais atribuídos a skills, subagents, plugins e servidores MCP. Parece dado do servidor. Não é. A documentação diz que os números são aproximados e calculados a partir do histórico local de sessões nesta máquina, então a fórmula mora no binário. Rode strings no executável e duas funções aparecem.
| Fator | Peso |
|---|---|
| Camada do modelo: Fable | 10 |
| Camada do modelo: Opus | 5 |
| Camada do modelo: Haiku | 1 |
| Camada do modelo: qualquer outro | 3 |
| Tokens em cache | 1 |
| Tokens de entrada novos | 10 |
| Escritas em cache | 12.5 |
| Tokens de saída | 50 |
O peso do registro é a soma dos tokens multiplicada pela camada do modelo. Esses são os pesos de atribuição do cliente, não a prova de como o servidor cobra a sua cota, e a diferença aparece. Aplique a fórmula aos blocos acima: 70 execuções do Haiku em effort médio somam 29,5 unidades, 21 execuções do Opus somam 27,3. O painel colocaria o bloco do Haiku acima do bloco do Opus; o medidor real disse zero ponto contra um.
Há uma segunda falha por baixo. Uma issue aberta relata que as transcrições de subagent registram o uso do primeiro chunk de streaming: uma execução registrou 461 tokens de saída onde a mesma execução em modo headless registrou 15.575. Uma transcrição nesta máquina mostra 16 tokens de saída em cada entrada do assistente. A fórmula multiplica esse valor subcontado por 50, então subagents que escrevem muito somem do painel. Use-o pelo que ele é: qual skill ou agente consome o seu histórico local, com as chaves de dia e de semana. Para o peso de um modelo na sua cota real, é um chute.
Para onde vai a cota de um dia
A escala que o medidor consegue ver é um dia. Andrea Grandi publicou seus números no dia em que o Haiku 5.5 foi lançado, em um plano Pro. Sua sessão principal roda o Opus 5.5 em effort médio; um agente implementador no Sonnet 5.5 escreve o código; dois agentes Haiku 5.5 fazem o resto, um scoper em modo plan, sem ferramentas de edição e com no máximo doze turnos, e um shipper em effort baixo que faz commit, push e abre o PR.
| Medida | Valor |
|---|---|
| Pull requests ao longo das sessões | 13 em 10 |
| Janela de cinco horas por PR | cerca de 6% |
| Contador semanal por sessão de um único PR | cerca de 1% |
| Custo estimado por PR com subagents | $2.31 |
| Custo estimado por PR só com Opus | $3.59 |
| Requisições por sessão, antes e depois | 75 para 54 |
| Tokens por requisição, antes e depois | 119,000 para 107,000 |
A própria frase dele é o ponto: se ele precifica os tokens dos subagents a preço de Opus, as dez sessões só ficam 5% mais caras. A economia veio do contexto principal se mantendo pequeno. Um mês de logs diz o mesmo pelo outro lado: os subagents consumiram 48,1% dos tokens, e 96% de todos os tokens foram leituras de cache. Todo subagent começa com um prompt de lançamento; nesta conta a mediana é de 47.000 tokens, e é a mesma pilha seja o worker Opus, Sonnet ou Haiku. A troca de modelo não a diminui.
O effort muda o apetite. Na pequena funcionalidade, o Haiku em effort médio leu 233.000 tokens em 14 turnos; o Haiku em effort baixo leu 140.000 em 8 turnos para o mesmo resultado aceito; o Opus precisou de 88.000. Uma execução independente mediu a mesma curva mais acima: 55.000 tokens de saída por tarefa em effort alto, 162.000 no máximo. Barato por token, mais faminto por tarefa, e o botão é seu. Duas ressalvas: os dólares de Grandi são uma estimativa em um plano Pro, e a matriz aqui é um repositório pequeno. Nenhum dos dois é uma semana em um plano Max.
A tabela de roteamento, os limites, o pack
A tabela de roteamento: explorar o código, corrigir um teste que falha, limpar o lint, escrever a mensagem de commit, adicionar uma pequena funcionalidade, revisar um diff, resumir a arquitetura. Os sete vão para o Haiku 5.5 em effort baixo, com 70 execuções aceitas de 70 em cada configuração, em baixo e em médio. Por tarefa, isso fica entre um quinto de centavo e meio centavo em preço de tabela, contra seis a dezessete centavos no Opus. O que fica no Sonnet ou no Opus é o coding agêntico complexo, nas palavras da própria Anthropic, em que o Terminal-Bench coloca o Haiku em 39,2 contra 70,6; a única análise testada do lançamento terminou na mesma linha: fique no Sonnet para coding difícil.
Os dois arquivos ficam ao lado da tabela: o arquivo do agente Explore com o id completo do Haiku e effort baixo, e o bloco env das configurações com o modelo de subagent e a flag force. A verificação é o comando /tasks, que mostra o modelo em que cada subagent rodou. Confie nessa linha, nunca no arquivo.
De volta à pergunta do início. Mudar todos os subagents para o Haiku: quanto o medidor devolve? Para uma tarefa delimitada, menos de um ponto em qualquer modelo. A matriz inteira de 182 execuções moveu a janela de cinco horas em dois pontos e a semana em zero. A semana real vem do contexto principal e do prompt de lançamento que todo subagent carrega. A troca de modelo é a parte barata, e é de graça.
| Limite | Detalhe |
|---|---|
| Repositório | Um repositório pequeno, tinydb, 226 testes |
| Tamanho da tarefa | Sete tarefas delimitadas de menos de um minuto cada, não um dia de coding agêntico |
| Medidor | Um ponto de resolução, mais ou menos um ponto por bloco |
| Multiplicador | Nenhum publicado pela Anthropic por modelo |
| Versão | Claude Code 2.1.293 em 8 de outubro de 2026; builds anteriores ignoravam o modelo do arquivo do agente (issue aberta) |
O pack gratuito reúne a tabela de roteamento, os dois arquivos e o harness que mediu tudo: os sete prompts, as verificações e o runner.
AIDive