<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Lucas</title>
    <description>The latest articles on DEV Community by Lucas (@lucas_ferreira).</description>
    <link>https://dev.to/lucas_ferreira</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3821523%2F8a141e03-a0f4-42d4-b4f6-38a3247d8baf.png</url>
      <title>DEV Community: Lucas</title>
      <link>https://dev.to/lucas_ferreira</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/lucas_ferreira"/>
    <language>en</language>
    <item>
      <title>Como Funcionam os Limites de Requisição do Claude Fable 5</title>
      <dc:creator>Lucas</dc:creator>
      <pubDate>Thu, 11 Jun 2026 02:57:01 +0000</pubDate>
      <link>https://dev.to/lucas_ferreira/como-funcionam-os-limites-de-requisicao-do-claude-fable-5-2p3f</link>
      <guid>https://dev.to/lucas_ferreira/como-funcionam-os-limites-de-requisicao-do-claude-fable-5-2p3f</guid>
      <description>&lt;p&gt;Se você está desenvolvendo com o modelo mais recente da Anthropic e precisa planejar os limites de taxa do Claude Fable 5, comece por aqui: a Anthropic não lançou um limite separado e exclusivo para o Fable 5 no lançamento. O Fable 5 (&lt;code&gt;claude-fable-5&lt;/code&gt;, US$ 10 por milhão de tokens de entrada e US$ 50 por milhão de tokens de saída, lançado em 9 de junho de 2026) usa a &lt;a href="https://platform.claude.com/docs/en/api/rate-limits" rel="noopener noreferrer"&gt;API de Mensagens&lt;/a&gt; padrão e os limites de taxa por nível da sua organização. Na prática, você deve dimensionar sua aplicação com base no nível de uso da sua conta, não em um número fixo do modelo. Se você ainda está avaliando o modelo, leia também a &lt;a href="https://apidog.com/pt/blog/what-is-claude-fable-5?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;visão geral do Claude Fable 5&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://apidog.com/?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation" class="crayons-btn crayons-btn--primary"&gt;Experimente o Apidog hoje&lt;/a&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  TL;DR
&lt;/h2&gt;

&lt;p&gt;O Claude Fable 5 usa os limites de taxa padrão da Anthropic, baseados em níveis:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;RPM&lt;/strong&gt;: requisições por minuto.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;ITPM&lt;/strong&gt;: tokens de entrada por minuto.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;OTPM&lt;/strong&gt;: tokens de saída por minuto.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Esses limites são aplicados por organização e por classe de modelo. Eles aumentam conforme seus gastos cumulativos movem sua conta entre os níveis 1 a 4. Para produção, sempre confirme os números reais no &lt;a href="https://console.anthropic.com" rel="noopener noreferrer"&gt;Console da Anthropic&lt;/a&gt; e trate erros &lt;code&gt;429&lt;/code&gt; usando o cabeçalho &lt;code&gt;retry-after&lt;/code&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Como os limites de taxa da Anthropic funcionam
&lt;/h2&gt;

&lt;p&gt;A Anthropic não trabalha com um único “limite global” para toda a API. Ela usa um sistema de níveis de uso. Seu nível define quanto throughput sua organização pode consumir.&lt;/p&gt;

&lt;p&gt;Existem dois conceitos relacionados:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Limites de gastos&lt;/strong&gt;: quanto sua organização pode gastar no mês civil.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Limites de taxa&lt;/strong&gt;: com que velocidade sua aplicação pode chamar a API.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Este artigo foca nos limites de taxa, mas os dois conceitos estão conectados porque o mesmo sistema de níveis influencia ambos.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-199.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-199.png" alt="" width="799" height="530"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Tipos de limite que você precisa monitorar
&lt;/h2&gt;

&lt;p&gt;Para a API de Mensagens, a Anthropic mede os limites em três dimensões.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. RPM: requisições por minuto
&lt;/h3&gt;

&lt;p&gt;O RPM define quantas chamadas separadas sua organização pode iniciar por minuto.&lt;/p&gt;

&lt;p&gt;Exemplo prático: se sua aplicação dispara muitas chamadas pequenas em paralelo, você pode atingir o RPM mesmo com baixo uso de tokens.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. ITPM: tokens de entrada por minuto
&lt;/h3&gt;

&lt;p&gt;O ITPM mede quantos tokens de entrada você envia por minuto.&lt;/p&gt;

&lt;p&gt;Na maioria dos modelos atuais, tokens de entrada lidos do cache de prompt não contam para o ITPM. Isso torna o cache importante quando você reutiliza:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;prompts de sistema longos;&lt;/li&gt;
&lt;li&gt;definições de ferramentas;&lt;/li&gt;
&lt;li&gt;documentos de referência;&lt;/li&gt;
&lt;li&gt;instruções fixas de agente.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  3. OTPM: tokens de saída por minuto
&lt;/h3&gt;

&lt;p&gt;O OTPM mede quantos tokens o modelo gera por minuto.&lt;/p&gt;

&lt;p&gt;Esse limite é avaliado em tempo real enquanto a resposta é produzida. O valor de &lt;code&gt;max_tokens&lt;/code&gt; não é cobrado antecipadamente contra o OTPM. Apenas os tokens realmente gerados contam.&lt;/p&gt;

&lt;p&gt;Isso significa que:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;max_tokens&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;8192&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;não consome 8.192 tokens automaticamente. Mas se o modelo gerar uma resposta longa, esses tokens reduzirão seu orçamento de OTPM conforme forem produzidos.&lt;/p&gt;

&lt;h2&gt;
  
  
  Por que rajadas causam 429 mesmo com média baixa
&lt;/h2&gt;

&lt;p&gt;A Anthropic aplica limites usando um algoritmo de balde de tokens. A capacidade é recarregada continuamente, não apenas no início de cada minuto.&lt;/p&gt;

&lt;p&gt;Na prática, um limite como &lt;code&gt;50 RPM&lt;/code&gt; pode se comportar como algo próximo de uma requisição por segundo. Se você enviar 20 chamadas ao mesmo tempo, pode receber &lt;code&gt;429&lt;/code&gt;, mesmo que sua média por minuto pareça aceitável.&lt;/p&gt;

&lt;p&gt;Para evitar isso:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;distribua chamadas ao longo do tempo;&lt;/li&gt;
&lt;li&gt;use filas;&lt;/li&gt;
&lt;li&gt;limite concorrência;&lt;/li&gt;
&lt;li&gt;leia os cabeçalhos &lt;code&gt;anthropic-ratelimit-*&lt;/code&gt;;&lt;/li&gt;
&lt;li&gt;aplique backoff quando receber &lt;code&gt;429&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Limites são por organização e por classe de modelo
&lt;/h2&gt;

&lt;p&gt;Dois detalhes são importantes para implementação.&lt;/p&gt;

&lt;p&gt;Primeiro, os limites são definidos no nível da organização, não por chave de API. Todas as chaves da organização compartilham o mesmo pool. Você pode definir limites menores por workspace se quiser isolar ambientes ou times.&lt;/p&gt;

&lt;p&gt;Segundo, os limites são aplicados por classe de modelo. O tráfego do Fable 5 usa um balde separado de outras classes, como Opus. Isso permite executar diferentes classes de modelo ao mesmo tempo sem que uma consuma diretamente o limite da outra.&lt;/p&gt;

&lt;h2&gt;
  
  
  Como os níveis avançam
&lt;/h2&gt;

&lt;p&gt;Os níveis aumentam automaticamente conforme suas compras cumulativas de crédito cruzam os limites publicados pela Anthropic.&lt;/p&gt;

&lt;p&gt;A estrutura publicada é:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Nível 1&lt;/strong&gt;: desbloqueado com compra de crédito de US$ 5.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Nível 2&lt;/strong&gt;: US$ 40 acumulados.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Nível 3&lt;/strong&gt;: US$ 200 acumulados.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Nível 4&lt;/strong&gt;: US$ 400 acumulados.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Cada etapa aumenta os tetos mensais de gasto e os limites de taxa. Você avança quando cruza o limite; não precisa abrir ticket.&lt;/p&gt;

&lt;p&gt;Acima do Nível 4, limites maiores normalmente passam por vendas ou faturamento mensal.&lt;/p&gt;

&lt;p&gt;Para entender como isso se relaciona ao custo do modelo, veja a &lt;a href="https://apidog.com/pt/blog/claude-fable-5-pricing?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;análise de preços do Claude Fable 5&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  O que isso significa para o Claude Fable 5
&lt;/h2&gt;

&lt;p&gt;O Fable 5 não tem uma estrutura de limite especial. Ele entra na tabela padrão da Anthropic como sua própria classe de modelo.&lt;/p&gt;

&lt;p&gt;Então a pergunta correta não é:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Qual é o limite fixo do Fable 5?”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;A pergunta correta é:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Qual é o nível da minha organização e quais são os limites do Fable 5 nesse nível?”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;De acordo com os limites de taxa publicados pela Anthropic, a linha do Fable 5 escala aproximadamente assim:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Nível&lt;/th&gt;
&lt;th&gt;RPM&lt;/th&gt;
&lt;th&gt;ITPM&lt;/th&gt;
&lt;th&gt;OTPM&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Nível 1&lt;/td&gt;
&lt;td&gt;50&lt;/td&gt;
&lt;td&gt;100.000&lt;/td&gt;
&lt;td&gt;20.000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Nível 2&lt;/td&gt;
&lt;td&gt;1.000&lt;/td&gt;
&lt;td&gt;500.000&lt;/td&gt;
&lt;td&gt;100.000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Nível 3&lt;/td&gt;
&lt;td&gt;2.000&lt;/td&gt;
&lt;td&gt;1.500.000&lt;/td&gt;
&lt;td&gt;300.000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Nível 4&lt;/td&gt;
&lt;td&gt;4.000&lt;/td&gt;
&lt;td&gt;4.000.000&lt;/td&gt;
&lt;td&gt;800.000&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Trate esses números como referência estrutural, não como contrato. A Anthropic pode atualizar tabelas, contas empresariais podem ter arranjos diferentes e o Console da Anthropic é sempre a fonte da verdade.&lt;/p&gt;

&lt;h2&gt;
  
  
  O limite mais crítico para Fable 5 costuma ser OTPM
&lt;/h2&gt;

&lt;p&gt;O Fable 5 é voltado a tarefas longas, incluindo execuções com muitos tokens e agentes que trabalham por mais tempo.&lt;/p&gt;

&lt;p&gt;Nesse tipo de uso, o gargalo geralmente não é RPM. É OTPM.&lt;/p&gt;

&lt;p&gt;Exemplo:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;você inicia poucos jobs;&lt;/li&gt;
&lt;li&gt;cada job gera uma resposta longa;&lt;/li&gt;
&lt;li&gt;as respostas são transmitidas por bastante tempo;&lt;/li&gt;
&lt;li&gt;o consumo de tokens de saída permanece alto por vários minutos.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Nesse cenário, mesmo com poucas requisições, você pode atingir o OTPM.&lt;/p&gt;

&lt;p&gt;Para reduzir risco:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Defina &lt;code&gt;max_tokens&lt;/code&gt; com base no tamanho real esperado da resposta.&lt;/li&gt;
&lt;li&gt;Use streaming para respostas longas.&lt;/li&gt;
&lt;li&gt;Controle concorrência de jobs longos.&lt;/li&gt;
&lt;li&gt;Monitore &lt;code&gt;anthropic-ratelimit-output-tokens-remaining&lt;/code&gt;.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Se você está conectando o modelo pela primeira vez, o &lt;a href="https://apidog.com/pt/blog/how-to-use-claude-fable-5-api?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;guia da API do Claude Fable 5&lt;/a&gt; mostra o formato da requisição.&lt;/p&gt;

&lt;h2&gt;
  
  
  Como verificar seus limites reais
&lt;/h2&gt;

&lt;p&gt;Não dimensione produção apenas com base em uma postagem de blog. Verifique os números reais da sua organização.&lt;/p&gt;

&lt;p&gt;Você tem duas fontes principais.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Console da Anthropic
&lt;/h2&gt;

&lt;p&gt;No &lt;a href="https://console.anthropic.com" rel="noopener noreferrer"&gt;Console da Anthropic&lt;/a&gt;, verifique:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;o nível atual da organização;&lt;/li&gt;
&lt;li&gt;os limites de taxa por modelo;&lt;/li&gt;
&lt;li&gt;gráficos de uso;&lt;/li&gt;
&lt;li&gt;consumo de tokens de entrada;&lt;/li&gt;
&lt;li&gt;consumo de tokens de saída;&lt;/li&gt;
&lt;li&gt;taxa de acerto de cache.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Use essa tela antes de aumentar tráfego, ativar novos workers ou liberar uma feature para mais usuários.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Cabeçalhos de resposta da API
&lt;/h2&gt;

&lt;p&gt;Cada chamada retorna cabeçalhos &lt;code&gt;anthropic-ratelimit-*&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Monitore estes campos:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;anthropic-ratelimit-requests-limit
anthropic-ratelimit-requests-remaining

anthropic-ratelimit-input-tokens-limit
anthropic-ratelimit-input-tokens-remaining

anthropic-ratelimit-output-tokens-limit
anthropic-ratelimit-output-tokens-remaining
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Também existem cabeçalhos &lt;code&gt;*-reset&lt;/code&gt; em formato RFC 3339, indicando quando o balde será totalmente reabastecido.&lt;/p&gt;

&lt;p&gt;Exemplo de lógica de monitoramento:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;log_rate_limits&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;response&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
    &lt;span class="n"&gt;headers&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;headers&lt;/span&gt;

    &lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;RPM restante:&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;headers&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;anthropic-ratelimit-requests-remaining&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
    &lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;ITPM restante:&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;headers&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;anthropic-ratelimit-input-tokens-remaining&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
    &lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;OTPM restante:&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;headers&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;anthropic-ratelimit-output-tokens-remaining&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Ler esses valores permite que seu cliente desacelere antes de receber &lt;code&gt;429&lt;/code&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Como lidar com erros 429
&lt;/h2&gt;

&lt;p&gt;Um erro &lt;code&gt;429&lt;/code&gt; significa que você atingiu um limite de taxa.&lt;/p&gt;

&lt;p&gt;A resposta inclui um cabeçalho importante:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;retry-after
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Esse valor informa quantos segundos você deve aguardar antes de tentar novamente. Se você tentar antes, a nova chamada provavelmente falhará também.&lt;/p&gt;

&lt;h2&gt;
  
  
  Use as retentativas do SDK
&lt;/h2&gt;

&lt;p&gt;Os SDKs oficiais da Anthropic já fazem retentativas automáticas para respostas &lt;code&gt;429&lt;/code&gt; e &lt;code&gt;5xx&lt;/code&gt;, com backoff exponencial. Por padrão, são duas tentativas.&lt;/p&gt;

&lt;p&gt;Exemplo em Python:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;anthropic&lt;/span&gt;

&lt;span class="n"&gt;client&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;anthropic&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;Anthropic&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;  &lt;span class="c1"&gt;# lê ANTHROPIC_API_KEY do ambiente
&lt;/span&gt;
&lt;span class="c1"&gt;# Aumente max_retries para cargas em lote mais propensas a 429.
&lt;/span&gt;&lt;span class="n"&gt;resilient&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;client&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;with_options&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;max_retries&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="n"&gt;message&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;resilient&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;create&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="n"&gt;model&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;claude-fable-5&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;max_tokens&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;4096&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;
        &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;role&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;user&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;content&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Rascunhe um resumo de lançamento para nosso changelog de junho.&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
        &lt;span class="p"&gt;}&lt;/span&gt;
    &lt;span class="p"&gt;],&lt;/span&gt;
&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;message&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;content&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="n"&gt;text&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Para a maioria das aplicações, isso é suficiente. Evite criar um loop manual de retry se o SDK já cobre seu caso.&lt;/p&gt;

&lt;h2&gt;
  
  
  Controle manual quando necessário
&lt;/h2&gt;

&lt;p&gt;Se você precisa mostrar estado na UI, registrar métricas específicas ou controlar uma fila, capture a exceção tipada:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;anthropic&lt;/span&gt;

&lt;span class="n"&gt;client&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;anthropic&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;Anthropic&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;

&lt;span class="k"&gt;try&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
    &lt;span class="n"&gt;message&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;client&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;create&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
        &lt;span class="n"&gt;model&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;claude-fable-5&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="n"&gt;max_tokens&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;4096&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;
            &lt;span class="p"&gt;{&lt;/span&gt;
                &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;role&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;user&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
                &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;content&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Resuma este relatório de incidente.&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
            &lt;span class="p"&gt;}&lt;/span&gt;
        &lt;span class="p"&gt;],&lt;/span&gt;
    &lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="k"&gt;except&lt;/span&gt; &lt;span class="n"&gt;anthropic&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;RateLimitError&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;exc&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
    &lt;span class="n"&gt;wait_seconds&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;int&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;exc&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;headers&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;retry-after&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;60&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
    &lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
        &lt;span class="sa"&gt;f&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Limite de taxa atingido. &lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
        &lt;span class="sa"&gt;f&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Aguardando &lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="n"&gt;wait_seconds&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s"&gt;s antes de tentar novamente.&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
    &lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Use fila para tráfego em rajadas
&lt;/h2&gt;

&lt;p&gt;Retentativas resolvem falhas temporárias. Para pressão sustentada, use fila.&lt;/p&gt;

&lt;p&gt;Um padrão simples:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Receba as requisições do usuário.&lt;/li&gt;
&lt;li&gt;Coloque-as em uma fila.&lt;/li&gt;
&lt;li&gt;Drene a fila com concorrência controlada.&lt;/li&gt;
&lt;li&gt;Ajuste a taxa com base nos cabeçalhos &lt;code&gt;anthropic-ratelimit-*-remaining&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Reagende itens que receberem &lt;code&gt;429&lt;/code&gt; usando &lt;code&gt;retry-after&lt;/code&gt;.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Pseudoestrutura:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="k"&gt;while&lt;/span&gt; &lt;span class="n"&gt;queue&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;has_items&lt;/span&gt;&lt;span class="p"&gt;():&lt;/span&gt;
    &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="nf"&gt;rate_limit_budget_is_low&lt;/span&gt;&lt;span class="p"&gt;():&lt;/span&gt;
        &lt;span class="nf"&gt;sleep_until_reset_or_retry_after&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
        &lt;span class="k"&gt;continue&lt;/span&gt;

    &lt;span class="n"&gt;job&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;queue&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;pop&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
    &lt;span class="nf"&gt;process_fable_5_job&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;job&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Esse padrão transforma uma sequência de erros &lt;code&gt;429&lt;/code&gt; em um pipeline mais previsível.&lt;/p&gt;

&lt;p&gt;Os mesmos princípios de teste e limitação aparecem ao trabalhar com outras APIs. Os padrões em &lt;a href="https://apidog.com/pt/blog/how-to-test-chatgpt-api-with-apidog?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;testar a API do ChatGPT com Apidog&lt;/a&gt; também se aplicam ao Claude.&lt;/p&gt;

&lt;h2&gt;
  
  
  Como aumentar limites ou reduzir consumo
&lt;/h2&gt;

&lt;p&gt;Quando você atinge limites com frequência, há duas estratégias:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Conseguir mais capacidade.&lt;/li&gt;
&lt;li&gt;Consumir menos tokens por unidade de trabalho.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  1. Aumente seu nível
&lt;/h2&gt;

&lt;p&gt;Como os níveis sobem com compras cumulativas de crédito, uso constante leva sua conta para níveis maiores. Cada etapa aumenta RPM, ITPM e OTPM.&lt;/p&gt;

&lt;p&gt;Se você precisa antecipar esse crescimento ou obter limites personalizados, use a página de Limites no Console para falar com vendas. Nível Prioritário e faturamento mensal existem para cargas de trabalho maiores e mais previsíveis.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Use Batches para jobs assíncronos
&lt;/h2&gt;

&lt;p&gt;Para tarefas que não exigem baixa latência, use a API de Batches.&lt;/p&gt;

&lt;p&gt;Ela processa requisições da API de Mensagens de forma assíncrona, com aproximadamente 50% do custo padrão, e possui um pool separado de limites de taxa.&lt;/p&gt;

&lt;p&gt;Use Batches para:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;processamento de documentos;&lt;/li&gt;
&lt;li&gt;classificação em massa;&lt;/li&gt;
&lt;li&gt;geração offline;&lt;/li&gt;
&lt;li&gt;análises que podem esperar;&lt;/li&gt;
&lt;li&gt;tarefas recorrentes de backoffice.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  3. Ative cache de prompt
&lt;/h2&gt;

&lt;p&gt;Se você reutiliza contexto, cache de prompt pode reduzir pressão sobre ITPM.&lt;/p&gt;

&lt;p&gt;Bons candidatos:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;prompt de sistema longo;&lt;/li&gt;
&lt;li&gt;políticas internas;&lt;/li&gt;
&lt;li&gt;documentação fixa;&lt;/li&gt;
&lt;li&gt;catálogo de ferramentas;&lt;/li&gt;
&lt;li&gt;instruções de agente;&lt;/li&gt;
&lt;li&gt;documentos de referência usados em várias chamadas.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Depois de ativar, confira no Console se a taxa de acerto de cache está subindo.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Ajuste &lt;code&gt;max_tokens&lt;/code&gt;
&lt;/h2&gt;

&lt;p&gt;Um &lt;code&gt;max_tokens&lt;/code&gt; alto não consome OTPM antecipadamente, mas permite que uma resposta longa continue gerando tokens por mais tempo.&lt;/p&gt;

&lt;p&gt;Defina o valor com base no que a tarefa precisa.&lt;/p&gt;

&lt;p&gt;Exemplo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="c1"&gt;# Resumo curto
&lt;/span&gt;&lt;span class="n"&gt;max_tokens&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;512&lt;/span&gt;

&lt;span class="c1"&gt;# Relatório detalhado
&lt;/span&gt;&lt;span class="n"&gt;max_tokens&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;4096&lt;/span&gt;

&lt;span class="c1"&gt;# Execução longa com agente
&lt;/span&gt;&lt;span class="n"&gt;max_tokens&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;8192&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Use limites diferentes por tipo de tarefa, em vez de um único valor alto para tudo.&lt;/p&gt;

&lt;h2&gt;
  
  
  5. Use streaming para respostas longas
&lt;/h2&gt;

&lt;p&gt;Streaming ajuda em dois pontos:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;reduz risco de timeout em gerações grandes;&lt;/li&gt;
&lt;li&gt;permite observar a saída enquanto o modelo gera.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Exemplo conceitual:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;anthropic&lt;/span&gt;

&lt;span class="n"&gt;client&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;anthropic&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;Anthropic&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;

&lt;span class="k"&gt;with&lt;/span&gt; &lt;span class="n"&gt;client&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;stream&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="n"&gt;model&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;claude-fable-5&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;max_tokens&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;4096&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;
        &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;role&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;user&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;content&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Gere um plano técnico detalhado para migração de API.&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
        &lt;span class="p"&gt;}&lt;/span&gt;
    &lt;span class="p"&gt;],&lt;/span&gt;
&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;stream&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
    &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;text&lt;/span&gt; &lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;stream&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;text_stream&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
        &lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;text&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;end&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;""&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Para cargas no estilo de agente, o &lt;a href="https://apidog.com/pt/blog/claude-fable-5-agent?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;passo a passo do agente Claude Fable 5&lt;/a&gt; mostra como essas alavancas se encaixam em um loop de longa duração.&lt;/p&gt;

&lt;p&gt;Se você está comparando classes de modelo para workloads sensíveis a throughput, veja também o &lt;a href="https://apidog.com/pt/blog/how-to-use-claude-opus-4-8-api?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;guia da API do Claude Opus 4.8&lt;/a&gt; e as notas de &lt;a href="https://apidog.com/pt/blog/claude-opus-4-8-pricing?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;preços do Opus 4.8&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Monitore seu uso do Fable 5 com Apidog
&lt;/h2&gt;

&lt;p&gt;A forma mais prática de entender seus limites reais é observar requisições ao vivo.&lt;/p&gt;

&lt;p&gt;Com o &lt;a href="https://apidog.com?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Apidog&lt;/a&gt;, você pode montar uma chamada para o Fable 5 na Messages API, enviar a requisição e inspecionar a resposta completa, incluindo:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;cabeçalhos &lt;code&gt;anthropic-ratelimit-*&lt;/code&gt;;&lt;/li&gt;
&lt;li&gt;objeto &lt;code&gt;usage&lt;/code&gt;;&lt;/li&gt;
&lt;li&gt;tokens de entrada;&lt;/li&gt;
&lt;li&gt;tokens de saída;&lt;/li&gt;
&lt;li&gt;tokens lidos do cache.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Isso permite ver, chamada por chamada, quão perto você está de atingir ITPM ou OTPM.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-199.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-199.png" alt="" width="799" height="530"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Um fluxo simples de teste:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Crie uma requisição Fable 5 no Apidog.&lt;/li&gt;
&lt;li&gt;Envie um prompt representativo.&lt;/li&gt;
&lt;li&gt;Leia &lt;code&gt;anthropic-ratelimit-output-tokens-remaining&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Compare com &lt;code&gt;usage.output_tokens&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Aumente ou reduza &lt;code&gt;max_tokens&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Repita com cache de prompt.&lt;/li&gt;
&lt;li&gt;Verifique se &lt;code&gt;usage.cache_read_input_tokens&lt;/code&gt; aumenta.&lt;/li&gt;
&lt;li&gt;Observe se o consumo de ITPM diminui.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Esse teste transforma a tabela de limites em dados concretos da sua própria aplicação.&lt;/p&gt;

&lt;p&gt;Você pode &lt;a href="https://apidog.com/download?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;baixar o Apidog&lt;/a&gt; para executar esse experimento com sua chave e acompanhar os cabeçalhos de resposta enquanto ajusta sua taxa de requisições. Equipes que já usam o &lt;a href="https://apidog.com?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Apidog&lt;/a&gt; para design e teste de APIs podem adicionar o monitoramento do Fable 5 ao mesmo workspace.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Como usar Claude Fable 5 no Cursor</title>
      <dc:creator>Lucas</dc:creator>
      <pubDate>Wed, 10 Jun 2026 10:31:05 +0000</pubDate>
      <link>https://dev.to/lucas_ferreira/como-usar-claude-fable-5-no-cursor-39da</link>
      <guid>https://dev.to/lucas_ferreira/como-usar-claude-fable-5-no-cursor-39da</guid>
      <description>&lt;p&gt;Executar o Claude Fable 5 no Cursor transforma o editor em um ambiente para refatorações longas, migrações em vários arquivos e sessões de agente com mais autonomia. O Fable 5 é o modelo de codificação de longo prazo da Anthropic, projetado para manter uma tarefa coesa por milhões de tokens sem perder contexto. Como o Cursor já oferece suporte a modelos da Anthropic, a configuração prática se resume a adicionar sua chave de API, habilitar o modelo &lt;code&gt;claude-fable-5&lt;/code&gt; e selecioná-lo antes de iniciar a execução.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://apidog.com/?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation" class="crayons-btn crayons-btn--primary"&gt;Experimente o Apidog hoje&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;Se você já configurou outros modelos no editor, como no fluxo de &lt;a href="https://apidog.com/pt/blog/how-to-use-deepseek-v4-pro-with-cursor?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;executar o DeepSeek V4 Pro dentro do Cursor&lt;/a&gt;, os passos serão familiares. A diferença principal está no custo: ao usar sua própria chave da Anthropic, você paga diretamente pelos tokens consumidos.&lt;/p&gt;

&lt;h2&gt;
  
  
  TL;DR
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Abra as configurações do Cursor.&lt;/li&gt;
&lt;li&gt;Vá para &lt;strong&gt;Models&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Cole sua chave de API da Anthropic.&lt;/li&gt;
&lt;li&gt;Clique em &lt;strong&gt;Verify&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Adicione o modelo &lt;code&gt;claude-fable-5&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Habilite o modelo.&lt;/li&gt;
&lt;li&gt;Selecione &lt;code&gt;claude-fable-5&lt;/code&gt; no seletor de modelos antes de usar o chat ou o agente.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Com sua própria chave, a Anthropic cobra diretamente &lt;strong&gt;US$ 10 por milhão de tokens de entrada&lt;/strong&gt; e &lt;strong&gt;US$ 50 por milhão de tokens de saída&lt;/strong&gt;. Use o Fable 5 para migrações, refatorações amplas e tarefas longas. Para edições pequenas, volte para um modelo mais barato.&lt;/p&gt;

&lt;h2&gt;
  
  
  Por que usar o Fable 5 no Cursor
&lt;/h2&gt;

&lt;p&gt;Modelos de codificação costumam funcionar bem em tarefas curtas:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;criar uma função;&lt;/li&gt;
&lt;li&gt;corrigir um bug pequeno;&lt;/li&gt;
&lt;li&gt;gerar um teste simples;&lt;/li&gt;
&lt;li&gt;explicar um trecho de código.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;O problema aparece quando a tarefa envolve dezenas de arquivos, várias decisões sequenciais e muito contexto. Em execuções longas, o agente pode esquecer decisões anteriores, repetir trabalho ou alterar partes do código de forma inconsistente.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1cc1tr9lfd8uirb3c5b2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1cc1tr9lfd8uirb3c5b2.png" alt="Claude Fable 5 no Cursor" width="800" height="883"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;O Claude Fable 5 foi criado para esse cenário. Segundo a Anthropic, ele consegue manter foco por milhões de tokens e trabalhar de forma autônoma por mais tempo do que modelos Claude anteriores. Dentro do Cursor, isso é útil principalmente no modo agente, onde o modelo pode:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;ler arquivos do repositório;&lt;/li&gt;
&lt;li&gt;planejar mudanças;&lt;/li&gt;
&lt;li&gt;editar múltiplos arquivos;&lt;/li&gt;
&lt;li&gt;executar comandos;&lt;/li&gt;
&lt;li&gt;interpretar erros;&lt;/li&gt;
&lt;li&gt;continuar a refatoração com base nos resultados.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Um exemplo citado no &lt;a href="https://www.anthropic.com/news/claude-fable-5-mythos-5" rel="noopener noreferrer"&gt;anúncio do Fable 5&lt;/a&gt; da Anthropic foi uma migração em uma base Ruby de 50 milhões de linhas na Stripe, concluída em um dia. O ponto prático para desenvolvedores é simples: o Fable 5 faz mais sentido quando a tarefa exige consistência por muito tempo.&lt;/p&gt;

&lt;p&gt;Use o Fable 5 quando você estiver:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;migrando uma versão de framework, ORM ou formato de serialização;&lt;/li&gt;
&lt;li&gt;renomeando APIs, métodos ou contratos em muitos arquivos;&lt;/li&gt;
&lt;li&gt;executando uma refatoração grande com o agente do Cursor;&lt;/li&gt;
&lt;li&gt;analisando módulos legados com dependências espalhadas;&lt;/li&gt;
&lt;li&gt;pedindo ao agente para planejar, executar e corrigir sem intervenção constante.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fplgaxagkpvq7b3r70jbm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fplgaxagkpvq7b3r70jbm.png" alt="Fluxo de uso do Fable 5" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Não use o Fable 5 para tudo. Para uma correção de uma linha, um componente pequeno ou um teste simples, um modelo padrão do Cursor tende a ser mais barato e suficiente. O objetivo é escolher o modelo conforme o tamanho do trabalho, assim como você faria ao comparar &lt;a href="https://apidog.com/pt/blog/cursor-vs-claude-code-comparison-2026?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Cursor versus Claude Code para um fluxo específico&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Pré-requisitos
&lt;/h2&gt;

&lt;p&gt;Antes de configurar, confirme estes pontos:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Cursor instalado e atualizado.&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Use uma versão recente para garantir suporte a modelos personalizados e ao seletor de modelos atualizado.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Plano do Cursor com suporte a modelos personalizados.&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
A opção de usar sua própria chave e selecionar modelos específicos exige um plano pago. O modo gratuito “Somente Auto” não permite fixar um modelo específico.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Chave de API da Anthropic com acesso ao Fable 5.&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Crie a chave no console da Anthropic e confirme que o workspace tem faturamento habilitado.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Entendimento do custo.&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
O Fable 5 custa US$ 10 por milhão de tokens de entrada e US$ 50 por milhão de tokens de saída.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Para consultar IDs e preços atualizados, veja a &lt;a href="https://platform.claude.com/docs/en/about-claude/models/overview" rel="noopener noreferrer"&gt;visão geral dos modelos Claude&lt;/a&gt;. Para entender melhor o posicionamento do modelo, veja também o guia sobre &lt;a href="https://apidog.com/pt/blog/what-is-claude-fable-5?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;o que é o Claude Fable 5&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Como adicionar o Claude Fable 5 ao Cursor
&lt;/h2&gt;

&lt;p&gt;A configuração tem duas partes:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;conectar sua chave da Anthropic ao Cursor;&lt;/li&gt;
&lt;li&gt;adicionar &lt;code&gt;claude-fable-5&lt;/code&gt; à lista de modelos disponíveis.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;A &lt;a href="https://cursor.com/help/models-and-usage/api-keys" rel="noopener noreferrer"&gt;documentação de chaves de API do Cursor&lt;/a&gt; deve ser usada como referência principal se a interface mudar.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Abra as configurações do Cursor
&lt;/h3&gt;

&lt;p&gt;No Cursor, abra as configurações pela paleta de comandos ou pelo ícone de engrenagem.&lt;/p&gt;

&lt;p&gt;Depois, acesse a seção &lt;strong&gt;Models&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Esse painel lista os modelos disponíveis e os campos de chave de API dos provedores.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Localize o campo da Anthropic
&lt;/h3&gt;

&lt;p&gt;Na área de chaves de provedores, encontre o campo da &lt;strong&gt;Anthropic API Key&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Ele fica separado dos campos de outros provedores, como OpenAI e Google.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Cole sua chave e verifique
&lt;/h3&gt;

&lt;p&gt;Cole a chave da Anthropic no campo correspondente.&lt;/p&gt;

&lt;p&gt;Em seguida, clique em &lt;strong&gt;Verify&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;O Cursor fará uma solicitação de teste para confirmar que:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;a chave é válida;&lt;/li&gt;
&lt;li&gt;a conta consegue acessar a API da Anthropic;&lt;/li&gt;
&lt;li&gt;o workspace possui faturamento configurado.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Se a verificação falhar, confira:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;se a chave foi copiada corretamente;&lt;/li&gt;
&lt;li&gt;se ela pertence ao workspace certo;&lt;/li&gt;
&lt;li&gt;se a conta da Anthropic tem billing ativo;&lt;/li&gt;
&lt;li&gt;se o modelo está disponível para sua conta.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  4. Habilite a chave
&lt;/h3&gt;

&lt;p&gt;Depois da verificação, ative a chave da Anthropic no Cursor.&lt;/p&gt;

&lt;p&gt;Dependendo da versão, a interface pode mostrar um botão de ativação ou uma opção como &lt;strong&gt;Enable Anthropic key&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Quando essa opção estiver ativa, as chamadas para modelos Claude passam a usar sua chave da Anthropic.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. Adicione o modelo &lt;code&gt;claude-fable-5&lt;/code&gt;
&lt;/h3&gt;

&lt;p&gt;Na lista de modelos do Cursor, use a busca ou opção de adicionar modelo.&lt;/p&gt;

&lt;p&gt;Digite exatamente:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;claude-fable-5
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Quando o modelo aparecer, selecione a opção para adicioná-lo como modelo personalizado.&lt;/p&gt;

&lt;h3&gt;
  
  
  6. Habilite o modelo
&lt;/h3&gt;

&lt;p&gt;Depois de adicionar &lt;code&gt;claude-fable-5&lt;/code&gt;, confirme que o interruptor ao lado do modelo está ativado.&lt;/p&gt;

&lt;p&gt;Se o modelo estiver desabilitado, ele não aparecerá no seletor durante o uso do chat ou do agente.&lt;/p&gt;

&lt;h3&gt;
  
  
  Observação sobre Base URL
&lt;/h3&gt;

&lt;p&gt;Se você está usando a API padrão da Anthropic, não altere a &lt;strong&gt;Base URL&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Substituições de Base URL são úteis apenas quando você usa proxies ou gateways próprios. Ativar uma substituição incorreta pode quebrar o roteamento das chamadas para a Anthropic.&lt;/p&gt;

&lt;h2&gt;
  
  
  Como selecionar o Fable 5 e confirmar que ele está ativo
&lt;/h2&gt;

&lt;p&gt;Adicionar o modelo não significa que ele será usado automaticamente. Você precisa selecioná-lo antes da conversa ou execução.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Abra o chat ou painel do agente
&lt;/h3&gt;

&lt;p&gt;No Cursor, abra um chat ou uma sessão do agente.&lt;/p&gt;

&lt;p&gt;Procure o seletor de modelos, geralmente próximo ao campo de entrada ou no cabeçalho da conversa.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Selecione &lt;code&gt;claude-fable-5&lt;/code&gt;
&lt;/h3&gt;

&lt;p&gt;Clique no seletor e escolha:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;claude-fable-5
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A seleção vale para a conversa atual. Você pode manter uma thread com o Fable 5 e outra com um modelo mais barato.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Verifique o rótulo antes de executar
&lt;/h3&gt;

&lt;p&gt;Antes de enviar uma solicitação longa, confira se o seletor realmente mostra &lt;code&gt;claude-fable-5&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Esse hábito evita gastar tokens caros por engano ou iniciar uma refatoração grande no modelo errado.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Faça um teste pequeno
&lt;/h3&gt;

&lt;p&gt;Envie um prompt simples, por exemplo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Resuma o arquivo atual e liste os principais pontos de atenção antes de uma refatoração.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Depois, abra o console da Anthropic e verifique o painel de uso.&lt;/p&gt;

&lt;p&gt;Se aparecer uma nova solicitação associada a &lt;code&gt;claude-fable-5&lt;/code&gt;, o Cursor está usando sua chave corretamente.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. Entenda possíveis fallbacks
&lt;/h3&gt;

&lt;p&gt;A Anthropic pode rotear automaticamente uma pequena parte das solicitações para o Claude Opus 4.8 em tópicos específicos, como segurança cibernética, biologia, química ou destilação de modelos.&lt;/p&gt;

&lt;p&gt;Segundo a Anthropic, mais de 95% das sessões do Fable não envolvem fallback. Para uso comum de codificação, isso raramente deve aparecer. Se quiser entender o modelo de fallback, veja a análise do &lt;a href="https://apidog.com/pt/blog/what-is-claude-opus-4-8?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Claude Opus 4.8&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Como controlar custo e faturamento
&lt;/h2&gt;

&lt;p&gt;Ao usar sua própria chave da Anthropic, você não está consumindo apenas os créditos incluídos no Cursor. A cobrança acontece diretamente na Anthropic.&lt;/p&gt;

&lt;h3&gt;
  
  
  Preço do Fable 5
&lt;/h3&gt;

&lt;p&gt;Com chave própria:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Tipo de token&lt;/th&gt;
&lt;th&gt;Preço&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Entrada&lt;/td&gt;
&lt;td&gt;US$ 10 / milhão&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Saída&lt;/td&gt;
&lt;td&gt;US$ 50 / milhão&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Isso significa que uma execução longa do agente pode ficar cara, principalmente se o modelo gerar muito código, logs, explicações e diffs.&lt;/p&gt;

&lt;h3&gt;
  
  
  Compare com o Opus 4.8
&lt;/h3&gt;

&lt;p&gt;O Opus 4.8 custa:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Tipo de token&lt;/th&gt;
&lt;th&gt;Preço&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Entrada&lt;/td&gt;
&lt;td&gt;US$ 5 / milhão&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Saída&lt;/td&gt;
&lt;td&gt;US$ 25 / milhão&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Ou seja, o Fable 5 custa o dobro em entrada e saída. Antes de iniciar uma tarefa grande, pergunte:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;preciso mesmo de foco de longo prazo?&lt;/li&gt;
&lt;li&gt;a tarefa envolve muitos arquivos?&lt;/li&gt;
&lt;li&gt;o agente vai trabalhar por muito tempo?&lt;/li&gt;
&lt;li&gt;a consistência global é mais importante que o custo?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Para uma comparação direta, veja &lt;a href="https://apidog.com/pt/blog/claude-fable-5-vs-opus-4-8?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Fable 5 versus Opus 4.8&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Onde o custo aumenta
&lt;/h3&gt;

&lt;p&gt;Em fluxos de agente, o custo tende a se concentrar nos tokens de saída, porque o modelo:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;escreve código;&lt;/li&gt;
&lt;li&gt;explica decisões;&lt;/li&gt;
&lt;li&gt;lê erros;&lt;/li&gt;
&lt;li&gt;gera novas alterações;&lt;/li&gt;
&lt;li&gt;executa ciclos de correção.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Quanto mais longa for a sessão, maior será a saída acumulada.&lt;/p&gt;

&lt;h3&gt;
  
  
  Estratégia prática
&lt;/h3&gt;

&lt;p&gt;Use este padrão:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;modelo barato por padrão;&lt;/li&gt;
&lt;li&gt;Fable 5 apenas para tarefas grandes;&lt;/li&gt;
&lt;li&gt;monitoramento do painel da Anthropic durante execuções longas;&lt;/li&gt;
&lt;li&gt;troca de volta para outro modelo após a refatoração.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Exemplo de uso adequado para Fable 5:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Analise este repositório e planeje a migração do Express 4 para Express 5.
Depois, aplique as mudanças em etapas pequenas, execute os testes após cada etapa
e corrija regressões sem alterar o comportamento público da API.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Exemplo de uso que não precisa do Fable 5:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Crie um teste unitário para esta função.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Cursor vs Claude Code para Fable 5
&lt;/h2&gt;

&lt;p&gt;Cursor e Claude Code podem usar bem o Fable 5, mas atendem fluxos diferentes.&lt;/p&gt;

&lt;p&gt;Use o &lt;strong&gt;Cursor&lt;/strong&gt; se você prefere:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;editor completo;&lt;/li&gt;
&lt;li&gt;diffs inline;&lt;/li&gt;
&lt;li&gt;árvore de arquivos visível;&lt;/li&gt;
&lt;li&gt;chat ao lado do código;&lt;/li&gt;
&lt;li&gt;revisão manual enquanto o agente trabalha.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Use o &lt;strong&gt;Claude Code&lt;/strong&gt; se você prefere:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;fluxo no terminal;&lt;/li&gt;
&lt;li&gt;automação via shell;&lt;/li&gt;
&lt;li&gt;integração com scripts;&lt;/li&gt;
&lt;li&gt;execução mais próxima do ambiente CLI.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A força de longo prazo do Fable 5 aparece nos dois ambientes. Se estiver escolhendo entre eles, veja a comparação entre &lt;a href="https://apidog.com/pt/blog/claude-code-vs-cursor-2026?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Cursor e Claude Code em 2026&lt;/a&gt;. Se quiser testar a rota do terminal, veja também o guia para &lt;a href="https://apidog.com/pt/blog/claude-fable-5-claude-code?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;executar o Fable 5 no Claude Code&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Teste as APIs que o Cursor constrói com o Apidog
&lt;/h2&gt;

&lt;p&gt;Quando você usa o Fable 5 em uma tarefa de backend, ele pode gerar rotas, handlers, schemas e endpoints. Mas código gerado ainda precisa ser validado com solicitações reais.&lt;/p&gt;

&lt;p&gt;O &lt;a href="https://apidog.com?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Apidog&lt;/a&gt; é uma ferramenta de design e teste de APIs que permite chamar endpoints, inspecionar respostas e comparar o comportamento real com o contrato esperado.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnjgej7000133r5to42np.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnjgej7000133r5to42np.png" alt="Teste de APIs no Apidog" width="799" height="530"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Um loop prático após o Fable 5 gerar endpoints:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Importe a definição da API
&lt;/h3&gt;

&lt;p&gt;Se o agente gerou um arquivo OpenAPI ou Swagger, importe-o no Apidog.&lt;/p&gt;

&lt;p&gt;A ferramenta cria os endpoints com:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;caminhos;&lt;/li&gt;
&lt;li&gt;métodos HTTP;&lt;/li&gt;
&lt;li&gt;parâmetros;&lt;/li&gt;
&lt;li&gt;corpos de requisição;&lt;/li&gt;
&lt;li&gt;schemas de resposta.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  2. Execute uma requisição real
&lt;/h3&gt;

&lt;p&gt;Escolha um endpoint, preencha parâmetros ou body e envie a requisição para seu servidor local.&lt;/p&gt;

&lt;p&gt;Você verá:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;status code real;&lt;/li&gt;
&lt;li&gt;headers;&lt;/li&gt;
&lt;li&gt;payload JSON;&lt;/li&gt;
&lt;li&gt;tempo de resposta.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  3. Compare a resposta com o schema
&lt;/h3&gt;

&lt;p&gt;Verifique se o retorno bate com o contrato definido.&lt;/p&gt;

&lt;p&gt;Procure problemas como:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;campo ausente;&lt;/li&gt;
&lt;li&gt;tipo incorreto;&lt;/li&gt;
&lt;li&gt;campo &lt;code&gt;null&lt;/code&gt; indevido;&lt;/li&gt;
&lt;li&gt;formato diferente do schema;&lt;/li&gt;
&lt;li&gt;status code inesperado.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  4. Salve as requisições
&lt;/h3&gt;

&lt;p&gt;Agrupe as chamadas em uma coleção para repetir os testes após novas execuções do agente.&lt;/p&gt;

&lt;p&gt;Isso ajuda a detectar regressões quando o Fable 5 altera endpoints em etapas posteriores da refatoração.&lt;/p&gt;

&lt;p&gt;O fluxo recomendado é:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Gerar no Cursor → testar no Apidog → corrigir no Cursor → repetir
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Esse ciclo mantém a velocidade do agente sem confiar cegamente no código gerado.&lt;/p&gt;

&lt;h2&gt;
  
  
  Próximo passo
&lt;/h2&gt;

&lt;p&gt;Agora você tem:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;o Fable 5 conectado ao Cursor;&lt;/li&gt;
&lt;li&gt;o modelo disponível no seletor;&lt;/li&gt;
&lt;li&gt;uma forma de confirmar o uso pela Anthropic;&lt;/li&gt;
&lt;li&gt;uma estratégia básica para controlar custo;&lt;/li&gt;
&lt;li&gt;um fluxo para validar APIs geradas com o &lt;a href="https://apidog.com?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Apidog&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Comece com uma tarefa que realmente precise de contexto longo, como uma migração ou refatoração ampla. Observe a primeira execução no painel do agente, revise os diffs e valide endpoints no &lt;a href="https://apidog.com?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Apidog&lt;/a&gt; antes de implantar.&lt;/p&gt;

&lt;p&gt;Se quiser comparar essa configuração com o uso direto via API, veja o &lt;a href="https://apidog.com/pt/blog/how-to-use-claude-fable-5-api?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;guia da API Claude Fable 5&lt;/a&gt;.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Colaboração nativa Git para Testes e Engenharia de API</title>
      <dc:creator>Lucas</dc:creator>
      <pubDate>Wed, 10 Jun 2026 10:28:19 +0000</pubDate>
      <link>https://dev.to/lucas_ferreira/colaboracao-nativa-git-para-testes-e-engenharia-de-api-1ij9</link>
      <guid>https://dev.to/lucas_ferreira/colaboracao-nativa-git-para-testes-e-engenharia-de-api-1ij9</guid>
      <description>&lt;p&gt;Sua especificação OpenAPI é o contrato entre sua API e seus consumidores. Para manter esse contrato confiável, ele precisa viver no mesmo lugar que o código: no Git.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://apidog.com/?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation" class="crayons-btn crayons-btn--primary"&gt;Experimente o Apidog hoje&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;Quando a especificação fica isolada em uma ferramenta, ela tende a ficar desatualizada: a implementação muda, a documentação não acompanha, as coleções de teste divergem e os revisores aprovam PRs sem validar o contrato da API.&lt;/p&gt;

&lt;p&gt;O &lt;a href="https://docs.apidog.com/spec-first-mode-beta-2058268m0?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;&lt;strong&gt;Modo Spec-first&lt;/strong&gt;&lt;/a&gt; muda esse fluxo. Seus arquivos OpenAPI ou Swagger passam a ser a fonte da verdade, versionados no repositório Git junto com a implementação. Assim, &lt;a href="https://apidog.com/api-design/?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;design de API&lt;/a&gt;, &lt;a href="https://apidog.com/api-testing/?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;testes&lt;/a&gt; e &lt;a href="https://apidog.com/api-doc/?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;documentação&lt;/a&gt; permanecem sincronizados com branches, commits e pull requests.&lt;/p&gt;

&lt;p&gt;Neste tutorial, você vai configurar um projeto Spec-first no Apidog, editar arquivos de especificação e sincronizar as mudanças com seu fluxo Git.&lt;/p&gt;




&lt;h2&gt;
  
  
  O que é o Modo Spec-first?
&lt;/h2&gt;

&lt;p&gt;Em um projeto de API tradicional, você geralmente cria endpoints em formulários visuais ou importa uma especificação inicial. A ferramenta armazena as definições internamente, e o Git entra apenas como uma etapa de exportação.&lt;/p&gt;

&lt;p&gt;No &lt;strong&gt;Modo Spec-first&lt;/strong&gt;, o fluxo é baseado em arquivos:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;openapi.yaml&lt;/code&gt; ou &lt;code&gt;openapi.json&lt;/code&gt; ficam no seu repositório&lt;/li&gt;
&lt;li&gt;O &lt;a href="http://apidog.com/?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Apidog&lt;/a&gt; lê esses arquivos e gera uma estrutura navegável da API&lt;/li&gt;
&lt;li&gt;Você edita os arquivos diretamente ou por formulários suportados&lt;/li&gt;
&lt;li&gt;As alterações são sincronizadas de volta para o Git&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Ou seja: o arquivo de especificação continua sendo a fonte autoritativa. O Apidog lê, valida, edita e sincroniza esse arquivo.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff60mgtay9zmpp939u92x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff60mgtay9zmpp939u92x.png" alt="Criar Projeto Spec-first" width="800" height="576"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Pré-requisitos
&lt;/h2&gt;

&lt;p&gt;Antes de começar, você precisa de:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Uma &lt;a href="https://app.apidog.com/user/login?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;&lt;strong&gt;conta Apidog&lt;/strong&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Um &lt;strong&gt;repositório Git&lt;/strong&gt; com um arquivo OpenAPI/Swagger ou um repositório vazio&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Permissão de escrita&lt;/strong&gt; no repositório&lt;/li&gt;
&lt;li&gt;Conhecimento básico de &lt;strong&gt;OpenAPI ou Swagger&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Exemplo mínimo de arquivo &lt;code&gt;openapi.yaml&lt;/code&gt; para iniciar um repositório vazio:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight yaml"&gt;&lt;code&gt;&lt;span class="na"&gt;openapi&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;3.0.3&lt;/span&gt;
&lt;span class="na"&gt;info&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="na"&gt;title&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;Minha API&lt;/span&gt;
  &lt;span class="na"&gt;version&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;1.0.0&lt;/span&gt;
&lt;span class="na"&gt;paths&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="na"&gt;/health&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;get&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="na"&gt;summary&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;Verifica o status da API&lt;/span&gt;
      &lt;span class="na"&gt;responses&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
        &lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt;200'&lt;/span&gt;&lt;span class="err"&gt;:&lt;/span&gt;
          &lt;span class="na"&gt;description&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;API disponível&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  Etapa 1: Criar um projeto Spec-first
&lt;/h2&gt;

&lt;p&gt;No Apidog:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Clique em &lt;strong&gt;+ Novo Projeto&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Escolha &lt;strong&gt;Modo Spec-first&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Conecte seu provedor Git&lt;/li&gt;
&lt;li&gt;Selecione o repositório&lt;/li&gt;
&lt;li&gt;Escolha o branch principal para sincronização&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Provedores suportados incluem:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;GitHub&lt;/li&gt;
&lt;li&gt;GitLab&lt;/li&gt;
&lt;li&gt;Azure DevOps&lt;/li&gt;
&lt;li&gt;Bitbucket&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;O Apidog sincroniza com o branch padrão do repositório. Se ele não se chamar &lt;code&gt;main&lt;/code&gt;, o Apidog detecta e usa o branch configurado no repositório.&lt;/p&gt;




&lt;h2&gt;
  
  
  Etapa 2: Configurar sincronização por webhook
&lt;/h2&gt;

&lt;p&gt;Durante a configuração, o Apidog pode solicitar a instalação de um webhook. Use essa opção sempre que possível.&lt;/p&gt;

&lt;p&gt;O webhook permite que o Apidog sincronize automaticamente quando alguém envia alterações para o repositório.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Nota:&lt;/strong&gt; instalar o webhook geralmente exige &lt;strong&gt;permissão de administrador&lt;/strong&gt; no repositório. Se você não tiver essa permissão, pule a etapa e use &lt;strong&gt;Git Pull&lt;/strong&gt; manualmente.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Com webhook ativado:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Um desenvolvedor faz push para o repositório&lt;/li&gt;
&lt;li&gt;O Apidog detecta o evento&lt;/li&gt;
&lt;li&gt;A especificação é atualizada no projeto&lt;/li&gt;
&lt;li&gt;A equipe vê a versão mais recente&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Se você pular essa configuração, poderá adicioná-la depois em:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Configurações do Projeto &amp;gt; Git &amp;amp; Branches&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Etapa 3: Navegar pelo workspace de especificações
&lt;/h2&gt;

&lt;p&gt;Depois de criar o projeto, abra o workspace &lt;strong&gt;Specs&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1f5901k9r7352tvb9byc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1f5901k9r7352tvb9byc.png" alt="Espaço de trabalho de especificações" width="800" height="459"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Ele é dividido em três áreas principais:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Painel&lt;/th&gt;
&lt;th&gt;O que mostra&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Explorador de Arquivos&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Arquivos e pastas do repositório sincronizado&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Árvore de Estrutura da API&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Endpoints, esquemas, definições e visão geral extraídos do OpenAPI&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Editor&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Edição em código ou formulário&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Fluxo prático:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Clique em um endpoint na árvore da API&lt;/li&gt;
&lt;li&gt;O Apidog localiza a seção correspondente no arquivo OpenAPI&lt;/li&gt;
&lt;li&gt;Edite o YAML/JSON ou use a visualização em formulário quando disponível&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Isso ajuda a navegar entre a visão de alto nível da API e o arquivo-fonte sem alternar entre ferramentas.&lt;/p&gt;




&lt;h2&gt;
  
  
  Etapa 4: Editar arquivos de especificação
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Edição em código
&lt;/h3&gt;

&lt;p&gt;Use a visualização de &lt;strong&gt;Código&lt;/strong&gt; para editar diretamente arquivos YAML, JSON ou Markdown.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0dtaud03nthkrxmhe957.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0dtaud03nthkrxmhe957.png" alt="Edição em visualização de código" width="800" height="464"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Exemplo de alteração em um endpoint:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight yaml"&gt;&lt;code&gt;&lt;span class="na"&gt;paths&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="s"&gt;/users/{id}&lt;/span&gt;&lt;span class="err"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;get&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="na"&gt;summary&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;Buscar usuário por ID&lt;/span&gt;
      &lt;span class="na"&gt;parameters&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
        &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;id&lt;/span&gt;
          &lt;span class="na"&gt;in&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;path&lt;/span&gt;
          &lt;span class="na"&gt;required&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;
          &lt;span class="na"&gt;schema&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
            &lt;span class="na"&gt;type&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;string&lt;/span&gt;
      &lt;span class="na"&gt;responses&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
        &lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt;200'&lt;/span&gt;&lt;span class="err"&gt;:&lt;/span&gt;
          &lt;span class="na"&gt;description&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;Usuário encontrado&lt;/span&gt;
        &lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt;404'&lt;/span&gt;&lt;span class="err"&gt;:&lt;/span&gt;
          &lt;span class="na"&gt;description&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;Usuário não encontrado&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;As alterações continuam no arquivo. O Apidog não cria uma cópia separada da definição da API.&lt;/p&gt;

&lt;h3&gt;
  
  
  Edição em formulário
&lt;/h3&gt;

&lt;p&gt;Para nós OpenAPI suportados, como endpoints, esquemas, definições e visão geral da API, você pode usar a visualização de &lt;strong&gt;Formulário&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ft19ejha9q7kvw819yykl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ft19ejha9q7kvw819yykl.png" alt="Edição em visualização de formulário" width="800" height="464"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Use o formulário para:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Criar endpoints sem memorizar toda a estrutura YAML&lt;/li&gt;
&lt;li&gt;Editar parâmetros, responses e schemas visualmente&lt;/li&gt;
&lt;li&gt;Atualizar metadados da API&lt;/li&gt;
&lt;li&gt;Configurar definições de segurança&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Se um nó não suportar edição em formulário, o Apidog mantém a edição em código.&lt;/p&gt;




&lt;h2&gt;
  
  
  Etapa 5: Validar e pré-visualizar a especificação
&lt;/h2&gt;

&lt;p&gt;O Modo Spec-first inclui validação em tempo real e pré-visualização da documentação.&lt;/p&gt;

&lt;h3&gt;
  
  
  Validar problemas
&lt;/h3&gt;

&lt;p&gt;Clique em &lt;strong&gt;Validação&lt;/strong&gt; no cabeçalho do editor.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpx3xo29hyr32uyzdxqwa.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpx3xo29hyr32uyzdxqwa.png" alt="Painel de validação" width="800" height="464"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;O painel mostra avisos e erros encontrados na especificação, como:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Erros de sintaxe YAML/JSON&lt;/li&gt;
&lt;li&gt;Campos obrigatórios ausentes&lt;/li&gt;
&lt;li&gt;Violações de schema&lt;/li&gt;
&lt;li&gt;Problemas de nomenclatura&lt;/li&gt;
&lt;li&gt;Definições incompletas&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Corrija esses problemas antes do commit. Isso reduz retrabalho durante a revisão do PR.&lt;/p&gt;

&lt;h3&gt;
  
  
  Pré-visualizar documentação
&lt;/h3&gt;

&lt;p&gt;Clique em &lt;strong&gt;Pré-visualizar&lt;/strong&gt; para verificar como a especificação será renderizada como documentação.&lt;/p&gt;

&lt;p&gt;Para &lt;strong&gt;endpoints&lt;/strong&gt;, a pré-visualização inclui:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Aba&lt;/th&gt;
&lt;th&gt;Conteúdo&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Documentação&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Documentação gerada do endpoint&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Experimentar&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Painel de requisição ao vivo baseado na definição do endpoint&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn7y60x75vghxfary46gk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn7y60x75vghxfary46gk.png" alt="Pré-visualização de endpoint com Experimentar" width="800" height="464"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Para &lt;strong&gt;schemas e definições&lt;/strong&gt;, a pré-visualização mostra a documentação renderizada.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fll1itaqq2drmytvj1xcs.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fll1itaqq2drmytvj1xcs.png" alt="Pré-visualização de esquema" width="800" height="464"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Validação e Pré-visualização usam o mesmo painel lateral. Abrir um fecha o outro.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  Etapa 6: Puxar alterações da equipe
&lt;/h2&gt;

&lt;p&gt;Quando outra pessoa altera a especificação no Git, atualize seu workspace:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Abra &lt;strong&gt;Specs&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Clique no nome do branch atual&lt;/li&gt;
&lt;li&gt;Selecione &lt;strong&gt;Git Pull&lt;/strong&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Se o webhook estiver ativo, o Apidog sincroniza automaticamente após eventos de push no repositório.&lt;/p&gt;

&lt;p&gt;Use &lt;strong&gt;Git Pull&lt;/strong&gt; manualmente quando:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;O webhook não estiver configurado&lt;/li&gt;
&lt;li&gt;Você quiser garantir que está vendo a versão mais recente&lt;/li&gt;
&lt;li&gt;Houve alterações recentes em outro branch&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Etapa 7: Fazer commit e push das suas alterações
&lt;/h2&gt;

&lt;p&gt;Depois de editar a especificação no Apidog:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Abra &lt;strong&gt;Alterações&lt;/strong&gt; na barra lateral&lt;/li&gt;
&lt;li&gt;Revise arquivos modificados, adicionados, renomeados ou excluídos&lt;/li&gt;
&lt;li&gt;Clique em &lt;strong&gt;Commit &amp;amp; Push&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Selecione os arquivos que farão parte do commit&lt;/li&gt;
&lt;li&gt;Escreva uma mensagem clara&lt;/li&gt;
&lt;li&gt;Clique em &lt;strong&gt;Push&lt;/strong&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8kcwduyhbl4pj7grw41e.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8kcwduyhbl4pj7grw41e.png" alt="Fluxo de trabalho de commit e push" width="800" height="465"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Exemplos de mensagens de commit úteis:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;docs: adiciona endpoint GET /users/&lt;span class="o"&gt;{&lt;/span&gt;&lt;span class="nb"&gt;id&lt;/span&gt;&lt;span class="o"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;fix: corrige schema de resposta de criação de usuário
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;feat: adiciona autenticação bearer na especificação
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Depois do push, as alterações entram no mesmo fluxo de pull request usado pelo código. A equipe pode revisar implementação e contrato da API no mesmo processo.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Dica:&lt;/strong&gt; use &lt;strong&gt;Descartar todas as alterações&lt;/strong&gt; se quiser abandonar edições locais antes do push.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  Etapa 8: Trabalhar com branches
&lt;/h2&gt;

&lt;p&gt;O Modo Spec-first suporta colaboração baseada em branches. Branches Git são mapeados para branches do projeto no Apidog.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgs2cr0zuqin15c4ylqvr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgs2cr0zuqin15c4ylqvr.png" alt="Gerenciamento de branches" width="800" height="464"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Operações comuns:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Ação&lt;/th&gt;
&lt;th&gt;Como fazer&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Alternar branches&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Clique no nome do branch e selecione outro&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Importar branch Git existente&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Clique em &lt;strong&gt;Importar Novo Branch&lt;/strong&gt;, selecione e importe&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Criar novo branch&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Vá em &lt;strong&gt;Configurações do Projeto &amp;gt; Git &amp;amp; Branches &amp;gt; Novo Branch&lt;/strong&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Corrigir problemas de sincronização&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Use &lt;strong&gt;Re-sincronizar&lt;/strong&gt; nas configurações do branch&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Visualizar logs de sincronização&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Acesse &lt;strong&gt;Ações do Branch &amp;gt; Visualizar Logs&lt;/strong&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Fluxo recomendado para uma alteração de API:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Crie um branch de feature&lt;/li&gt;
&lt;li&gt;Atualize &lt;code&gt;openapi.yaml&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Valide a especificação&lt;/li&gt;
&lt;li&gt;Faça commit e push&lt;/li&gt;
&lt;li&gt;Abra um pull request&lt;/li&gt;
&lt;li&gt;Revise contrato e implementação juntos&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Exemplo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git checkout &lt;span class="nt"&gt;-b&lt;/span&gt; feat/users-search
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;No Apidog, importe ou selecione esse branch e edite a especificação correspondente.&lt;/p&gt;




&lt;h2&gt;
  
  
  Etapa 9: Integrar com CI/CD
&lt;/h2&gt;

&lt;p&gt;Como a especificação está no Git, ela pode passar pelos mesmos gates de qualidade do código.&lt;/p&gt;

&lt;p&gt;Você pode usar o pipeline para:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Validar OpenAPI em cada PR&lt;/li&gt;
&lt;li&gt;Executar lint com ferramentas como Spectral&lt;/li&gt;
&lt;li&gt;Gerar documentação quando alterações forem mescladas no &lt;code&gt;main&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Acionar testes de API a partir de mudanças na especificação&lt;/li&gt;
&lt;li&gt;Sincronizar com gateways, mocks ou geradores de SDK&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Exemplo de workflow com GitHub Actions:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight yaml"&gt;&lt;code&gt;&lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;Validate and Test API Spec&lt;/span&gt;

&lt;span class="na"&gt;on&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="na"&gt;push&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;branches&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;[&lt;/span&gt;&lt;span class="nv"&gt;main&lt;/span&gt;&lt;span class="pi"&gt;]&lt;/span&gt;
  &lt;span class="na"&gt;pull_request&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;branches&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;[&lt;/span&gt;&lt;span class="nv"&gt;main&lt;/span&gt;&lt;span class="pi"&gt;]&lt;/span&gt;

&lt;span class="na"&gt;jobs&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="na"&gt;validate&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;runs-on&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;ubuntu-latest&lt;/span&gt;

    &lt;span class="na"&gt;steps&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="na"&gt;uses&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;actions/checkout@v4&lt;/span&gt;

      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;Lint OpenAPI Spec&lt;/span&gt;
        &lt;span class="na"&gt;run&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;npx spectral lint openapi.yaml&lt;/span&gt;

      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;Run API Tests&lt;/span&gt;
        &lt;span class="na"&gt;run&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;apidog run tests --spec openapi.yaml&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Com isso, uma alteração inválida no contrato da API pode ser bloqueada antes do merge.&lt;/p&gt;




&lt;h2&gt;
  
  
  Alternativa: projetos baseados em armazenamento
&lt;/h2&gt;

&lt;p&gt;Se você ainda não quer conectar um repositório Git externo, o Apidog também oferece projetos Spec-first &lt;strong&gt;baseados em armazenamento&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqb77zam9p7yhg6knm679.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqb77zam9p7yhg6knm679.png" alt="Projeto baseado em armazenamento" width="800" height="507"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Eles usam o armazenamento interno do Apidog, mas ainda oferecem:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Edição baseada em arquivos&lt;/li&gt;
&lt;li&gt;Validação&lt;/li&gt;
&lt;li&gt;Pré-visualização&lt;/li&gt;
&lt;li&gt;Gerenciamento de branches&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A interface muda levemente:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Git Pull&lt;/strong&gt; vira &lt;strong&gt;Sincronizar&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Commit &amp;amp; Push&lt;/strong&gt; vira &lt;strong&gt;Salvar&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Use essa opção para começar rapidamente e migre para Git externo quando o time estiver pronto.&lt;/p&gt;




&lt;h2&gt;
  
  
  Resumo
&lt;/h2&gt;

&lt;p&gt;Com o Modo Spec-first, o fluxo de trabalho da API fica mais próximo do fluxo de desenvolvimento:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Antes do Spec-first&lt;/th&gt;
&lt;th&gt;Depois do Spec-first&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Especificações ficam em uma ferramenta separada&lt;/td&gt;
&lt;td&gt;Especificações ficam no repositório Git&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Sincronização via export/import&lt;/td&gt;
&lt;td&gt;Sincronização automática ou via Git Pull&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Revisões fora do fluxo de código&lt;/td&gt;
&lt;td&gt;Revisões em pull requests&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Documentação gerada separadamente&lt;/td&gt;
&lt;td&gt;Pré-visualização durante a edição&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Testes desconectados da especificação&lt;/td&gt;
&lt;td&gt;Testes acionados por mudanças no contrato&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;O &lt;strong&gt;Modo Spec-first&lt;/strong&gt; mantém arquivos OpenAPI versionados, revisáveis e alinhados com a implementação.&lt;/p&gt;

&lt;p&gt;Para começar, crie um projeto Spec-first no Apidog, conecte seu repositório e trate sua especificação como parte do código.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Top 7 Alternativas ao Scalar para Documentação de API em 2026</title>
      <dc:creator>Lucas</dc:creator>
      <pubDate>Wed, 10 Jun 2026 07:01:21 +0000</pubDate>
      <link>https://dev.to/lucas_ferreira/top-7-alternativas-ao-scalar-para-documentacao-de-api-em-2026-45nl</link>
      <guid>https://dev.to/lucas_ferreira/top-7-alternativas-ao-scalar-para-documentacao-de-api-em-2026-45nl</guid>
      <description>&lt;p&gt;O Scalar conquistou sua popularidade por um bom motivo: o pacote open source transforma uma especificação OpenAPI em uma referência limpa, rápida e com playground “experimente”. Ele também pode ser integrado ao Fastify, Hono, Express ou .NET com pouca configuração. Para documentar uma única API com uma referência visualmente boa, ele resolve bem.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://apidog.com/?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation" class="crayons-btn crayons-btn--primary"&gt;Experimente o Apidog hoje&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;Mas “boa documentação de referência” cobre apenas uma parte do ciclo de vida de APIs. Em projetos reais, as equipes geralmente procuram uma alternativa ao Scalar quando precisam de:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Guias além da referência:&lt;/strong&gt; tutoriais, páginas conceituais, quickstarts e navegação estruturada.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Design, testes e mocks no mesmo fluxo:&lt;/strong&gt; não apenas renderizar uma especificação OpenAPI, mas também validá-la contra o comportamento real da API.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Governança para times maiores:&lt;/strong&gt; permissões, SSO, trilhas de auditoria, revisão de mudanças e controle de acesso.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Nada disso torna o Scalar uma ferramenta ruim. Escrevemos um &lt;a href="https://apidog.com/pt/blog/how-to-use-scalar?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;guia completo para iniciantes no Scalar&lt;/a&gt; porque ele é genuinamente útil. Mas, se você chegou ao limite dele, estas são sete alternativas práticas para avaliar.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Apidog
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://apidog.com?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Apidog&lt;/a&gt; é uma evolução natural para quem usa Scalar e quer manter o fluxo baseado em OpenAPI, mas adicionar design, debug, testes automatizados, mocks e publicação de documentação no mesmo workspace.&lt;/p&gt;

&lt;p&gt;Em vez de tratar a especificação apenas como entrada para renderização, o Apidog usa a especificação como fonte única para:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;desenhar endpoints;&lt;/li&gt;
&lt;li&gt;depurar requisições;&lt;/li&gt;
&lt;li&gt;gerar mocks;&lt;/li&gt;
&lt;li&gt;criar cenários de teste;&lt;/li&gt;
&lt;li&gt;publicar documentação.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-211.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-211.png" alt="" width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Um fluxo típico de migração é simples:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# 1. Exporte ou localize seu arquivo OpenAPI atual&lt;/span&gt;
openapi.yaml

&lt;span class="c"&gt;# 2. Importe o arquivo no Apidog&lt;/span&gt;
&lt;span class="c"&gt;# 3. Revise endpoints, schemas e exemplos&lt;/span&gt;
&lt;span class="c"&gt;# 4. Publique a documentação&lt;/span&gt;
&lt;span class="c"&gt;# 5. Configure mocks e testes a partir da mesma especificação&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A vantagem prática é reduzir o desvio entre documentação e implementação. Como documentação, testes e mocks compartilham a mesma base, uma alteração no endpoint pode ser refletida em todos esses pontos.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Por que mudar do Scalar:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Testes automatizados e integração com CI/CD.&lt;/li&gt;
&lt;li&gt;Servidores mock baseados em schemas.&lt;/li&gt;
&lt;li&gt;Workspaces de equipe com funções, branches e sincronização.&lt;/li&gt;
&lt;li&gt;Documentação hospedada, playground e fluxo de design-teste-mock no mesmo produto.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Quando ficar no Scalar:&lt;/strong&gt; se você só precisa renderizar uma referência OpenAPI dentro de um backend existente, a integração leve do Scalar pode ser suficiente. Veja também a comparação &lt;a href="https://apidog.com/pt/blog/apidog-vs-scalar?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Apidog vs Scalar&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Preços:&lt;/strong&gt; gratuito para a maioria das equipes; planos pagos adicionam SSO e controles empresariais.&lt;/p&gt;

&lt;p&gt;Para testar com sua API atual, &lt;a href="https://apidog.com/download?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;baixe o Apidog&lt;/a&gt;, importe o mesmo arquivo OpenAPI usado no Scalar e publique uma documentação testável e mockável sem reescrever a especificação.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Redocly
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://redocly.com" rel="noopener noreferrer"&gt;Redocly&lt;/a&gt; vem da mesma linhagem do Scalar: ele surgiu do Redoc, um dos renderizadores OpenAPI open source mais conhecidos. A diferença aparece na camada de governança, principalmente com linting de especificações via &lt;a href="https://apidog.com/pt/blog/redocly-cli?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Redocly CLI&lt;/a&gt;, portais multi-API e controles corporativos.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-212.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-212.png" alt="" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Um uso comum é validar sua especificação no CI antes de publicar:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npx @redocly/cli lint openapi.yaml
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Isso ajuda a impedir que endpoints sem descrição, schemas inconsistentes ou padrões fora do guia de estilo entrem na documentação pública.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Por que mudar do Scalar:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Linting de OpenAPI no pipeline.&lt;/li&gt;
&lt;li&gt;Guia de estilo para padronizar múltiplas APIs.&lt;/li&gt;
&lt;li&gt;Portais multi-API.&lt;/li&gt;
&lt;li&gt;Controles de acesso mais voltados para empresas.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Cuidado com:&lt;/strong&gt; preço e limites. O plano Pro custa US$ 50 por mês para um projeto e 100 páginas, com cobrança adicional por página e projeto extra. Se você só precisa de uma referência visual, pode ser mais do que o necessário.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Mintlify
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://www.mintlify.com" rel="noopener noreferrer"&gt;Mintlify&lt;/a&gt; inverte a prioridade: conteúdo primeiro, referência de API depois. A documentação vive como MDX no repositório Git, e a referência OpenAPI entra como uma seção ao lado de guias, changelogs e tutoriais.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-213.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-213.png" alt="" width="616" height="426"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Esse modelo funciona bem quando sua documentação precisa de páginas como:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;&lt;span class="gh"&gt;# Quickstart&lt;/span&gt;

Neste guia, você vai:
&lt;span class="p"&gt;
1.&lt;/span&gt; Criar uma chave de API
&lt;span class="p"&gt;2.&lt;/span&gt; Fazer sua primeira requisição
&lt;span class="p"&gt;3.&lt;/span&gt; Tratar erros comuns
&lt;span class="p"&gt;4.&lt;/span&gt; Ir para produção
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Por que mudar do Scalar:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Melhor estrutura para guias longos.&lt;/li&gt;
&lt;li&gt;MDX versionado no Git.&lt;/li&gt;
&lt;li&gt;Componentes para documentação de produto.&lt;/li&gt;
&lt;li&gt;Pesquisa com IA e assistente de respostas.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Cuidado com:&lt;/strong&gt; custo. O plano gratuito Hobby atende projetos pessoais, mas o Pro passa de US$ 250 por mês. Veja a comparação completa em &lt;a href="https://apidog.com/pt/blog/mintlify-vs-scalar-vs-bump-vs-readme-vs-redocly?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Mintlify vs Scalar vs Bump vs ReadMe vs Redocly&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. ReadMe
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://readme.com" rel="noopener noreferrer"&gt;ReadMe&lt;/a&gt; trata a documentação como um hub de desenvolvedor. O destaque é a personalização: usuários autenticados podem ver exemplos de código com suas próprias chaves de API e acompanhar chamadas recentes, incluindo erros.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-214.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-214.png" alt="" width="799" height="413"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Esse modelo é útil quando a documentação também precisa ajudar no suporte. Em vez de apenas mostrar como chamar um endpoint, ela pode mostrar ao usuário onde suas chamadas falharam.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Por que mudar do Scalar:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Experiência personalizada para desenvolvedores.&lt;/li&gt;
&lt;li&gt;Logs de API por usuário dentro da documentação.&lt;/li&gt;
&lt;li&gt;Melhor visibilidade sobre erros de integração.&lt;/li&gt;
&lt;li&gt;Documentação usada como superfície de suporte.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Cuidado com:&lt;/strong&gt; o fluxo é mais centrado no editor web. Para equipes acostumadas a configuração em código, isso pode exigir adaptação. A personalização profunda exige o plano Business de US$ 399 por mês, e o preço inicial é de US$ 99 por mês.&lt;/p&gt;

&lt;h2&gt;
  
  
  5. SwaggerHub
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://swagger.io/tools/swaggerhub/" rel="noopener noreferrer"&gt;SwaggerHub&lt;/a&gt; é uma opção empresarial consolidada para gerenciar especificações OpenAPI em escala. Ele funciona como um catálogo central para múltiplas APIs, com versionamento, domínios reutilizáveis e padronização organizacional.&lt;/p&gt;

&lt;p&gt;Também comparamos essa escolha em &lt;a href="https://apidog.com/pt/blog/scalar-vs-swaggerhub-vs-apidog-api-docs-2?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Scalar vs SwaggerHub vs Apidog&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-217.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-217.png" alt="" width="799" height="392"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Por que mudar do Scalar:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Catálogo central para centenas de especificações.&lt;/li&gt;
&lt;li&gt;Governança para organizações grandes.&lt;/li&gt;
&lt;li&gt;Versionamento e reutilização de componentes.&lt;/li&gt;
&lt;li&gt;Fornecedor conhecido em ambientes corporativos.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Cuidado com:&lt;/strong&gt; a saída visual pode parecer menos moderna que o Scalar. A troca principal é governança por simplicidade e aparência.&lt;/p&gt;

&lt;h2&gt;
  
  
  6. Stoplight
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://stoplight.io" rel="noopener noreferrer"&gt;Stoplight&lt;/a&gt; combina documentação hospedada, designer visual OpenAPI e Prism, seu servidor mock open source. Ele é forte para times que querem projetar a API antes da implementação.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-215.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-215.png" alt="" width="800" height="457"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Um fluxo comum com Stoplight é:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;modelar endpoints no editor visual;&lt;/li&gt;
&lt;li&gt;revisar schemas com produto e backend;&lt;/li&gt;
&lt;li&gt;gerar mock com Prism;&lt;/li&gt;
&lt;li&gt;testar integrações antes da API real existir;&lt;/li&gt;
&lt;li&gt;publicar a documentação.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Por que mudar do Scalar:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Design visual de OpenAPI.&lt;/li&gt;
&lt;li&gt;Mocking antes da implementação.&lt;/li&gt;
&lt;li&gt;Colaboração entre produto e engenharia.&lt;/li&gt;
&lt;li&gt;Melhor suporte para fluxo “design-first”.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Cuidado com:&lt;/strong&gt; a SmartBear adquiriu o Stoplight, e parte das capacidades vem sendo incorporada ao ecossistema SwaggerHub. Avalie isso se estiver tomando uma decisão de longo prazo.&lt;/p&gt;

&lt;h2&gt;
  
  
  7. Bump.sh
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://bump.sh" rel="noopener noreferrer"&gt;Bump.sh&lt;/a&gt; foca em um problema específico: rastrear mudanças na API. Cada alteração na especificação é comparada, breaking changes são sinalizadas, e consumidores podem ser notificados.&lt;/p&gt;

&lt;p&gt;Ele suporta OpenAPI e AsyncAPI, o que o torna relevante para equipes com APIs REST e orientadas a eventos.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-216.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-216.png" alt="" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Por que mudar do Scalar:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Detecção de breaking changes.&lt;/li&gt;
&lt;li&gt;Changelogs automáticos.&lt;/li&gt;
&lt;li&gt;Notificações para consumidores.&lt;/li&gt;
&lt;li&gt;Suporte a OpenAPI e AsyncAPI.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;O Scalar mostra o estado atual da API. O &lt;a href="http://Bump.sh" rel="noopener noreferrer"&gt;Bump.sh&lt;/a&gt; mostra o que mudou e quem pode ser afetado.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cuidado com:&lt;/strong&gt; o escopo é limitado, assim como no Scalar. Você pode acabar usando os dois. Nesse caso, uma plataforma consolidada pode ser mais simples.&lt;/p&gt;

&lt;h2&gt;
  
  
  Escolhendo o substituto certo
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Se o problema com o Scalar é...&lt;/th&gt;
&lt;th&gt;Considere&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Preciso de testes, mocks e documentação a partir de uma única especificação&lt;/td&gt;
&lt;td&gt;Apidog&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Preciso de linting e governança multi-API&lt;/td&gt;
&lt;td&gt;Redocly&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Minha documentação é composta principalmente por guias e tutoriais&lt;/td&gt;
&lt;td&gt;Mintlify&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Quero logs de API por usuário dentro da documentação&lt;/td&gt;
&lt;td&gt;ReadMe&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Preciso de um catálogo empresarial para muitas especificações&lt;/td&gt;
&lt;td&gt;SwaggerHub&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Quero design visual de especificação e mocking&lt;/td&gt;
&lt;td&gt;Stoplight&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Preciso de changelogs automáticos para consumidores&lt;/td&gt;
&lt;td&gt;&lt;a href="http://Bump.sh" rel="noopener noreferrer"&gt;Bump.sh&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Se sua equipe prefere manter tudo na própria infraestrutura, veja também a lista de &lt;a href="https://apidog.com/pt/blog/self-hosted-api-documentation-tools?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;ferramentas de documentação de API auto-hospedadas&lt;/a&gt;. O core open source do Scalar aparece nesse contexto, mas os critérios de decisão mudam quando hospedagem própria entra no escopo.&lt;/p&gt;

&lt;h2&gt;
  
  
  O que uma migração do Scalar envolve
&lt;/h2&gt;

&lt;p&gt;Como o Scalar é orientado por especificação, sair dele costuma ser mais simples do que migrar de plataformas proprietárias. O trabalho se divide em três partes.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Migrar a referência OpenAPI
&lt;/h3&gt;

&lt;p&gt;Se sua documentação principal vem de um arquivo OpenAPI, a migração começa por ele:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;openapi.yaml
&lt;span class="c"&gt;# ou&lt;/span&gt;
openapi.json
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Importe esse arquivo na nova ferramenta. Em geral, endpoints, métodos, schemas, exemplos e descrições são preservados.&lt;/p&gt;

&lt;p&gt;Se você incorporou o Scalar no backend com algo como:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;app&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;use&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;/docs&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;scalarMiddleware&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;a remoção ou substituição da rota tende a ser uma alteração pequena. Muitas equipes mantêm a rota antiga internamente enquanto validam a nova documentação pública.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Portar guias escritos manualmente
&lt;/h3&gt;

&lt;p&gt;A referência se move rápido. Os guias exigem mais cuidado.&lt;/p&gt;

&lt;p&gt;Antes de escolher a nova ferramenta, faça um inventário:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;/guias/quickstart
/guias/autenticacao
/guias/webhooks
/guias/erros
/guias/paginacao
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Depois classifique:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;páginas que podem ser copiadas como Markdown;&lt;/li&gt;
&lt;li&gt;páginas que usam componentes específicos do Scalar;&lt;/li&gt;
&lt;li&gt;páginas que precisam ser reestruturadas;&lt;/li&gt;
&lt;li&gt;páginas obsoletas que podem ser removidas.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Se o destino for Mintlify ou Apidog, conteúdo em Markdown geralmente exige apenas ajustes de formatação.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Preservar URLs e SEO
&lt;/h3&gt;

&lt;p&gt;Não ignore URLs antigas. Se a documentação pública do Scalar já foi indexada, configure redirecionamentos 301.&lt;/p&gt;

&lt;p&gt;Exemplo conceitual:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;/docs/authentication  -&amp;gt;  /docs/autenticacao
/docs/errors          -&amp;gt;  /docs/erros
/docs/reference/users -&amp;gt;  /reference/users
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Quando possível, mantenha o mesmo domínio personalizado e preserve a estrutura de slugs.&lt;/p&gt;

&lt;h2&gt;
  
  
  Checklist rápido de migração
&lt;/h2&gt;

&lt;p&gt;Use esta lista antes de desligar o Scalar:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;[ ] Exportei ou localizei o arquivo OpenAPI usado hoje.&lt;/li&gt;
&lt;li&gt;[ ] Importei a especificação na nova ferramenta.&lt;/li&gt;
&lt;li&gt;[ ] Validei endpoints, schemas, exemplos e autenticação.&lt;/li&gt;
&lt;li&gt;[ ] Testei o playground “experimente”.&lt;/li&gt;
&lt;li&gt;[ ] Portabilizei guias manuais.&lt;/li&gt;
&lt;li&gt;[ ] Configurei redirecionamentos 301.&lt;/li&gt;
&lt;li&gt;[ ] Atualizei links internos.&lt;/li&gt;
&lt;li&gt;[ ] Publiquei a nova documentação em ambiente de staging.&lt;/li&gt;
&lt;li&gt;[ ] Validei com pelo menos um consumidor real da API.&lt;/li&gt;
&lt;li&gt;[ ] Desativei ou restringi a documentação antiga.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A decisão mais importante durante a migração é definir se a documentação continuará sendo apenas um artefato publicado ou se fará parte do ciclo de vida da API. Em plataformas como o Apidog, documentação, testes e mocks podem evoluir juntos a partir da mesma especificação, reduzindo a chance de a referência ficar desatualizada.&lt;/p&gt;

&lt;h2&gt;
  
  
  FAQ
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;A versão open source do Scalar é suficiente para documentação de produção?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Sim, se você precisa de uma referência pública com playground “experimente”. As limitações aparecem em fluxos de equipe: permissões, revisão, governança, testes, mocks e análises.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Qual é o caminho mais barato para sair do plano hospedado do Scalar?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;O plano gratuito do Apidog cobre documentação hospedada com console “experimente”, branding personalizado e projetos ilimitados para muitos casos de uso. Veja também o resumo das &lt;a href="https://apidog.com/pt/blog/api-documentation-tool?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;8 melhores ferramentas de documentação de API&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Posso migrar do Scalar sem reescrever a documentação?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Sim, se sua documentação é principalmente gerada por OpenAPI. Todas as ferramentas desta lista importam OpenAPI 3.x. O retrabalho aparece em guias manuais ou componentes específicos do Scalar.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Qual alternativa lida com APIs REST e orientadas a eventos?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;O &lt;a href="http://Bump.sh" rel="noopener noreferrer"&gt;Bump.sh&lt;/a&gt; suporta AsyncAPI além de OpenAPI. O Apidog cobre depuração de REST, GraphQL, WebSocket, gRPC e SSE em um único workspace.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Como escolher sem perder tempo?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Pegue a especificação OpenAPI que você já renderiza no Scalar e importe no &lt;a href="https://apidog.com?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Apidog&lt;/a&gt; ou na ferramenta que mais combina com seu problema principal. Em 30 minutos, usando sua própria API, você terá uma resposta mais confiável do que qualquer tabela comparativa.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Top 7 Alternativas ao Redocly para Documentação de API em 2026</title>
      <dc:creator>Lucas</dc:creator>
      <pubDate>Wed, 10 Jun 2026 06:12:21 +0000</pubDate>
      <link>https://dev.to/lucas_ferreira/top-7-alternativas-ao-redocly-para-documentacao-de-api-em-2026-4ch8</link>
      <guid>https://dev.to/lucas_ferreira/top-7-alternativas-ao-redocly-para-documentacao-de-api-em-2026-4ch8</guid>
      <description>&lt;p&gt;A Redocly ficou conhecida pelo Redoc, o renderizador open source que transforma especificações OpenAPI em documentação de referência limpa, no layout de três painéis. A plataforma paga adiciona portais hospedados, o &lt;a href="https://apidog.com/pt/blog/redocly-cli?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Redocly CLI&lt;/a&gt; para linting e empacotamento, além da linha Realm, Revel e Reef.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://apidog.com/?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation" class="crayons-btn crayons-btn--primary"&gt;Experimente o Apidog hoje&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;Na prática, equipes procuram alternativas ao Redocly por três motivos recorrentes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Preço que escala por páginas e projetos.&lt;/strong&gt; O plano Pro começa em &lt;a href="https://redocly.com/pricing" rel="noopener noreferrer"&gt;$50 por mês&lt;/a&gt; para um projeto e 100 páginas. Páginas e projetos extras aumentam rapidamente o custo.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Foco limitado em documentação.&lt;/strong&gt; O Redocly renderiza e publica especificações, mas não cobre design, testes, mocks ou depuração da API.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Lacunas no caminho open source.&lt;/strong&gt; O &lt;a href="https://github.com/Redocly/redoc" rel="noopener noreferrer"&gt;Redoc&lt;/a&gt; gratuito gera referência somente leitura. Console “Experimente”, busca multi-API e controle de acesso ficam nos produtos pagos.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Se você quer substituir o Redocly, avalie a ferramenta pelo fluxo de trabalho que precisa implementar: documentação pura, docs-as-code, design visual, mocking, testes ou governança.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Apidog
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://apidog.com?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;O Apidog&lt;/a&gt; cobre o ciclo de vida da API em um único workspace. Em vez de documentar a API apenas depois que ela já existe, você pode:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Projetar a especificação visualmente ou em OpenAPI.&lt;/li&gt;
&lt;li&gt;Depurar endpoints.&lt;/li&gt;
&lt;li&gt;Criar cenários de teste.&lt;/li&gt;
&lt;li&gt;Subir servidores mock.&lt;/li&gt;
&lt;li&gt;Publicar documentação interativa a partir da mesma fonte de verdade.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-204.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-204.png" alt="" width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Para quem está saindo do Redocly, o ponto principal é a sincronização: a documentação publicada pelo Apidog não é um artefato separado. Quando a especificação muda, a documentação é atualizada a partir da mesma fonte.&lt;/p&gt;

&lt;p&gt;Cada endpoint pode incluir console “Experimente”, exemplos de código em mais de 30 linguagens e publicação em domínio personalizado.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Quando escolher o Apidog:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Você quer documentação, testes, mocking e depuração na mesma ferramenta.&lt;/li&gt;
&lt;li&gt;Você quer evitar preço por página.&lt;/li&gt;
&lt;li&gt;Você precisa de colaboração visual para pessoas que não querem editar YAML manualmente.&lt;/li&gt;
&lt;li&gt;Você quer manter a documentação alinhada ao comportamento real da API.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Onde ele supera o Redocly:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Plano gratuito com documentação hospedada, console “Experimente” e projetos ilimitados.&lt;/li&gt;
&lt;li&gt;Testes de API, mocking e depuração integrados.&lt;/li&gt;
&lt;li&gt;Edição online da especificação com suporte a branches.&lt;/li&gt;
&lt;li&gt;Colaboração em equipe com funções e sincronização em tempo real.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Onde o Redocly ainda faz sentido:&lt;/strong&gt; se você quer apenas um pipeline docs-as-code com linting forte em CI, o Redocly CLI continua sendo uma ferramenta focada nesse trabalho.&lt;/p&gt;

&lt;p&gt;Veja também a comparação recurso por recurso: &lt;a href="https://apidog.com/pt/blog/apidog-vs-redocly?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Apidog vs Redocly&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Preço:&lt;/strong&gt; gratuito para a maioria das equipes; planos pagos adicionam recursos empresariais, como SSO.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Como testar rapidamente:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Exporte sua especificação OpenAPI atual.&lt;/li&gt;
&lt;li&gt;Importe no Apidog.&lt;/li&gt;
&lt;li&gt;Abra a documentação gerada.&lt;/li&gt;
&lt;li&gt;Teste um endpoint real pelo console “Experimente”.&lt;/li&gt;
&lt;li&gt;Verifique se exemplos, autenticação e domínio atendem ao seu fluxo.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://apidog.com/download?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Baixe o Apidog&lt;/a&gt; e importe sua especificação OpenAPI existente.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Scalar
&lt;/h2&gt;

&lt;p&gt;O &lt;a href="https://scalar.com" rel="noopener noreferrer"&gt;Scalar&lt;/a&gt; é uma das alternativas open source mais próximas da proposta original do Redoc: você fornece um arquivo OpenAPI e recebe uma referência de API bem apresentada.&lt;/p&gt;

&lt;p&gt;A diferença prática é que o cliente interativo é gratuito. O pacote open source tem mais de 100 mil downloads semanais no npm e integrações com Fastify, Hono, Express e .NET.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-205.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-205.png" alt="" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Quando escolher o Scalar:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Você quer uma referência OpenAPI moderna.&lt;/li&gt;
&lt;li&gt;Você prefere uma opção open source.&lt;/li&gt;
&lt;li&gt;Você quer embutir a documentação diretamente no backend.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Exemplo de fluxo de adoção:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# 1. Gere ou valide sua especificação OpenAPI&lt;/span&gt;
openapi.yaml

&lt;span class="c"&gt;# 2. Integre o Scalar ao framework usado pela API&lt;/span&gt;
&lt;span class="c"&gt;# 3. Publique a referência com o console interativo&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Onde ele supera o Redocly:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Playground “Experimente” gratuito e open source.&lt;/li&gt;
&lt;li&gt;Plano Pro hospedado a $24 por mês, abaixo do plano inicial do Redocly.&lt;/li&gt;
&lt;li&gt;Integrações diretas com frameworks comuns.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Cuidado com:&lt;/strong&gt; o Scalar é focado em documentação de referência. Guias longos, versionamento editorial e controle de acesso empresarial são mais limitados do que em plataformas completas.&lt;/p&gt;

&lt;p&gt;Veja o fluxo prático no &lt;a href="https://apidog.com/pt/blog/how-to-use-scalar?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;guia para iniciantes do Scalar&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Preço:&lt;/strong&gt; open source gratuito; Pro hospedado por $24 por mês.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Mintlify
&lt;/h2&gt;

&lt;p&gt;O &lt;a href="https://www.mintlify.com" rel="noopener noreferrer"&gt;Mintlify&lt;/a&gt; é indicado para equipes que tratam documentação como produto. Ele usa MDX, sincroniza com Git e inclui recursos de IA, como um assistente que responde perguntas usando a documentação.&lt;/p&gt;

&lt;p&gt;As referências OpenAPI ficam no mesmo site que guias, changelogs e tutoriais.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-206.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-206.png" alt="" width="616" height="426"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Quando escolher o Mintlify:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Sua documentação é mais composta por guias do que por referência de endpoint.&lt;/li&gt;
&lt;li&gt;Você quer um fluxo baseado em Git.&lt;/li&gt;
&lt;li&gt;Você precisa de MDX para criar páginas mais ricas.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Estrutura típica:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;docs/
  introduction.mdx
  quickstart.mdx
  api-reference/
    openapi.yaml
  changelog.mdx
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Onde ele supera o Redocly:&lt;/strong&gt; melhor experiência para conteúdo longo, guias e documentação com design mais polido desde o início.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cuidado com:&lt;/strong&gt; o plano Pro custa mais de $250 por mês com cinco licenças de editor. Se o objetivo principal é reduzir custo em relação ao Redocly, avalie outras opções primeiro.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. ReadMe
&lt;/h2&gt;

&lt;p&gt;O &lt;a href="https://readme.com" rel="noopener noreferrer"&gt;ReadMe&lt;/a&gt; é uma plataforma veterana para hubs de desenvolvedores. Além de renderizar OpenAPI, ele adiciona recursos de experiência do usuário, como logs de API dentro da documentação e métricas de uso dos endpoints.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-207.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-207.png" alt="" width="799" height="413"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Quando escolher o ReadMe:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Você quer um portal de desenvolvedores completo.&lt;/li&gt;
&lt;li&gt;Você precisa mostrar exemplos personalizados com credenciais do usuário.&lt;/li&gt;
&lt;li&gt;Seu time de suporte precisa investigar chamadas de API feitas pelos consumidores.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Onde ele supera o Redocly:&lt;/strong&gt; personalização da experiência do consumidor da API. Quando um usuário adiciona a chave de API, os exemplos podem ser atualizados com credenciais reais, e o suporte pode analisar chamadas com falha.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cuidado com:&lt;/strong&gt; customização além do tema integrado exige o plano Business, de $399 por mês. Além disso, o fluxo é mais web-first do que docs-as-code.&lt;/p&gt;

&lt;p&gt;Veja a comparação entre plataformas: &lt;a href="https://apidog.com/pt/blog/mintlify-vs-scalar-vs-bump-vs-readme-vs-redocly?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Mintlify vs Scalar vs Bump vs ReadMe vs Redocly&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Preço:&lt;/strong&gt; nível gratuito; planos pagos a partir de $99 por mês.&lt;/p&gt;

&lt;h2&gt;
  
  
  5. Stoplight
&lt;/h2&gt;

&lt;p&gt;O &lt;a href="https://stoplight.io" rel="noopener noreferrer"&gt;Stoplight&lt;/a&gt; se sobrepõe bastante ao Redocly: ambos oferecem linting de especificações, guias de estilo e documentação hospedada para equipes que priorizam design de API.&lt;/p&gt;

&lt;p&gt;O diferencial do Stoplight é o editor visual OpenAPI e o mocking integrado via Prism.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-210.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-210.png" alt="" width="800" height="457"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Quando escolher o Stoplight:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Você quer design visual de OpenAPI.&lt;/li&gt;
&lt;li&gt;Pessoas não técnicas precisam colaborar na definição da API.&lt;/li&gt;
&lt;li&gt;O frontend precisa começar antes de o backend estar pronto.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Fluxo comum:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;1. Desenhar endpoints no editor visual
2. Validar a especificação com regras de estilo
3. Publicar documentação
4. Usar Prism para mockar respostas
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Onde ele supera o Redocly:&lt;/strong&gt; designer visual e mocking integrado.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cuidado com:&lt;/strong&gt; desde a aquisição pela SmartBear, o futuro autônomo do Stoplight é menos claro. Alguns recursos estão sendo incorporados ao portfólio SwaggerHub, e equipes têm &lt;a href="https://apidog.com/pt/blog/stoplight-migration-openapi-specs-git?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;migrado suas especificações&lt;/a&gt; para fora.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Preço:&lt;/strong&gt; nível gratuito; planos pagos por usuário.&lt;/p&gt;

&lt;h2&gt;
  
  
  6. SwaggerHub
&lt;/h2&gt;

&lt;p&gt;O &lt;a href="https://swagger.io/tools/swaggerhub/" rel="noopener noreferrer"&gt;SwaggerHub&lt;/a&gt; é a plataforma hospedada da SmartBear para o ecossistema Swagger. Ele é comum em organizações que padronizam muitas especificações OpenAPI com governança, versionamento e catálogo central.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-209.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-209.png" alt="" width="799" height="392"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Quando escolher o SwaggerHub:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Você tem muitas APIs e precisa de governança central.&lt;/li&gt;
&lt;li&gt;A organização já usa ferramentas SmartBear.&lt;/li&gt;
&lt;li&gt;Você precisa reutilizar domínios e componentes entre especificações.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Onde ele supera o Redocly:&lt;/strong&gt; padronização corporativa, catálogo de APIs e integração com o conjunto mais amplo de ferramentas da SmartBear.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cuidado com:&lt;/strong&gt; a documentação renderizada é funcional, mas visualmente mais datada que Redoc ou Scalar. O custo por designer também pode crescer.&lt;/p&gt;

&lt;h2&gt;
  
  
  7. Bump.sh
&lt;/h2&gt;

&lt;p&gt;O &lt;a href="https://bump.sh" rel="noopener noreferrer"&gt;Bump.sh&lt;/a&gt; resolve um problema específico: changelogs automáticos de API.&lt;/p&gt;

&lt;p&gt;Você envia uma nova versão da especificação via CI, e a ferramenta compara o contrato, destaca mudanças incompatíveis e notifica consumidores. A documentação hospedada suporta REST e APIs orientadas a eventos com AsyncAPI.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-208.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-208.png" alt="" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Quando escolher o Bump.sh:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Seu principal problema é comunicação de mudanças.&lt;/li&gt;
&lt;li&gt;Você quer detectar breaking changes automaticamente.&lt;/li&gt;
&lt;li&gt;Você usa CI para publicar versões da especificação.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Exemplo de fluxo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;1. Commit da nova versão do openapi.yaml
2. Pipeline de CI executa validação
3. Bump.sh compara com a versão anterior
4. Consumidores recebem changelog/diff
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Onde ele supera o Redocly:&lt;/strong&gt; gerenciamento de mudanças. Se consumidores são surpreendidos por alterações na API, o &lt;a href="http://Bump.sh" rel="noopener noreferrer"&gt;Bump.sh&lt;/a&gt; trata esse problema diretamente.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cuidado com:&lt;/strong&gt; ele é propositalmente focado. Não substitui uma suíte de linting, design visual ou testes. Muitas equipes o combinam com outra ferramenta.&lt;/p&gt;

&lt;h2&gt;
  
  
  Como escolher
&lt;/h2&gt;

&lt;p&gt;Use esta matriz para reduzir a decisão:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Você precisa de&lt;/th&gt;
&lt;th&gt;Escolha&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Documentação mais design, teste e mocking em uma ferramenta&lt;/td&gt;
&lt;td&gt;Apidog&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Referência gratuita de código aberto com "Experimente"&lt;/td&gt;
&lt;td&gt;Scalar&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Site de documentação bonito e focado em guias&lt;/td&gt;
&lt;td&gt;Mintlify&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Hub de desenvolvedores com logs de API em nível de usuário&lt;/td&gt;
&lt;td&gt;ReadMe&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Design visual OpenAPI e governança&lt;/td&gt;
&lt;td&gt;Stoplight (com cautela no roadmap)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Catálogo de especificações corporativas&lt;/td&gt;
&lt;td&gt;SwaggerHub&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Changelogs automáticos e alertas de diff&lt;/td&gt;
&lt;td&gt;&lt;a href="http://Bump.sh" rel="noopener noreferrer"&gt;Bump.sh&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Se o problema é preço por página, Apidog e Scalar eliminam essa métrica. Se o problema é o escopo limitado à documentação, o Apidog é a opção mais ampla porque também cobre testes e mocking.&lt;/p&gt;

&lt;p&gt;Para uma visão mais ampla, veja o resumo das &lt;a href="https://apidog.com/pt/blog/top-10-rest-api-documentation-tools?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;10 melhores ferramentas de documentação de API REST&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Antes de migrar: checklist de 5 pontos
&lt;/h2&gt;

&lt;p&gt;Antes de trocar o Redocly por outra plataforma, valide estes pontos em um spike curto.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Confirme a versão OpenAPI
&lt;/h3&gt;

&lt;p&gt;Exporte sua especificação e valide o arquivo antes de importar.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Exemplo de arquivo esperado&lt;/span&gt;
openapi: 3.1.0
info:
  title: Minha API
  version: 1.0.0
paths:
  /users:
    get:
      responses:
        &lt;span class="s1"&gt;'200'&lt;/span&gt;:
          description: OK
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Arquivos OpenAPI 3.0 ou 3.1 limpos costumam importar sem problemas. Extensões de fornecedor, como &lt;code&gt;x-tagGroups&lt;/code&gt;, ou marcações específicas do Redocly podem exigir ajustes.&lt;/p&gt;

&lt;p&gt;Use uma das &lt;a href="https://apidog.com/pt/blog/best-openapi-validator-tools?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;ferramentas de validação OpenAPI&lt;/a&gt; antes da migração.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Planeje redirecionamentos de URL
&lt;/h3&gt;

&lt;p&gt;A estrutura de URL do Redocly provavelmente será diferente no novo host. Mapeie URLs antigas para novas com redirecionamentos 301.&lt;/p&gt;

&lt;p&gt;Exemplo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;/docs/api/users      -&amp;gt; /reference/users
/docs/api/orders     -&amp;gt; /reference/orders
/docs/authentication -&amp;gt; /guides/authentication
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Isso evita perda de tráfego orgânico e links quebrados.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Mantenha o linting em CI
&lt;/h3&gt;

&lt;p&gt;Se você já usa &lt;code&gt;redocly lint&lt;/code&gt;, não precisa removê-lo imediatamente. O CLI pode continuar validando sua especificação mesmo que a documentação seja publicada em outra ferramenta.&lt;/p&gt;

&lt;p&gt;Exemplo de etapa em CI:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight yaml"&gt;&lt;code&gt;&lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;Validate OpenAPI&lt;/span&gt;

&lt;span class="na"&gt;on&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="na"&gt;pull_request&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;

&lt;span class="na"&gt;jobs&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="na"&gt;lint-openapi&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;runs-on&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;ubuntu-latest&lt;/span&gt;
    &lt;span class="na"&gt;steps&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="na"&gt;uses&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;actions/checkout@v4&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="na"&gt;run&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;npx @redocly/cli lint openapi.yaml&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  4. Teste o console “Experimente” com autenticação real
&lt;/h3&gt;

&lt;p&gt;Não valide apenas endpoints públicos. Teste o fluxo real de autenticação:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;API key em header.&lt;/li&gt;
&lt;li&gt;Bearer token.&lt;/li&gt;
&lt;li&gt;OAuth.&lt;/li&gt;
&lt;li&gt;CORS.&lt;/li&gt;
&lt;li&gt;Ambientes de staging e produção.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Exemplo de header esperado:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight http"&gt;&lt;code&gt;&lt;span class="nf"&gt;GET&lt;/span&gt; &lt;span class="nn"&gt;/v1/users&lt;/span&gt; &lt;span class="k"&gt;HTTP&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="m"&gt;1.1&lt;/span&gt;
&lt;span class="na"&gt;Host&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s"&gt;api.exemplo.com&lt;/span&gt;
&lt;span class="na"&gt;Authorization&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s"&gt;Bearer &amp;lt;token&amp;gt;&lt;/span&gt;
&lt;span class="na"&gt;Content-Type&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s"&gt;application/json&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Confirme que o console interativo executa a chamada com sucesso.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. Verifique domínio personalizado e SSL
&lt;/h3&gt;

&lt;p&gt;Compare o suporte de cada plano para:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Domínio personalizado.&lt;/li&gt;
&lt;li&gt;Certificado SSL.&lt;/li&gt;
&lt;li&gt;Subdomínios.&lt;/li&gt;
&lt;li&gt;Ambientes separados, como &lt;code&gt;docs-staging.exemplo.com&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Os níveis gratuitos variam entre ferramentas. O Apidog inclui domínios personalizados; o Scalar restringe esse recurso ao Pro de $24 por mês; outras plataformas têm regras próprias.&lt;/p&gt;

&lt;p&gt;Um spike de meio dia costuma ser suficiente: importe a especificação, configure um domínio de teste e execute uma chamada autenticada de ponta a ponta.&lt;/p&gt;

&lt;h2&gt;
  
  
  FAQ
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;O Redoc ainda é gratuito?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Sim. O &lt;a href="https://github.com/Redocly/redoc" rel="noopener noreferrer"&gt;renderizador Redoc&lt;/a&gt; open source continua com licença MIT e gratuito. A limitação está no que ele não inclui: console “Experimente”, busca multi-API e hospedagem.&lt;/p&gt;

&lt;p&gt;Ferramentas como Scalar e Apidog incluem esses recursos gratuitamente.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Qual é a alternativa Redocly mais barata com console “Experimente”?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;O pacote open source do Scalar e o plano gratuito do Apidog incluem console interativo sem custo. Hospedar &lt;a href="https://apidog.com/pt/blog/api-docs-try-it-console?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;documentação interativa com console “Experimente”&lt;/a&gt; não exige mais um plano pago em toda a pilha.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Posso manter o Redocly CLI para linting e trocar apenas o host da documentação?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Sim. O Redocly CLI funciona como linter autônomo em CI. Muitas equipes fazem linting com ele e publicam a documentação via Apidog, Scalar ou &lt;a href="http://Bump.sh" rel="noopener noreferrer"&gt;Bump.sh&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Qual alternativa é melhor para docs-as-code com Git?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Mintlify, &lt;a href="http://Bump.sh" rel="noopener noreferrer"&gt;Bump.sh&lt;/a&gt; e Apidog sincronizam com repositórios Git. Veja a comparação de &lt;a href="https://apidog.com/pt/blog/api-docs-with-git-integration?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;ferramentas de documentação de API com integração Git&lt;/a&gt; para detalhes de configuração.&lt;/p&gt;

&lt;h2&gt;
  
  
  Próximo passo
&lt;/h2&gt;

&lt;p&gt;Não escolha apenas pela demo do fornecedor. Use sua própria especificação.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Exporte seu arquivo OpenAPI.&lt;/li&gt;
&lt;li&gt;Importe no &lt;a href="https://apidog.com?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Apidog&lt;/a&gt; ou na ferramenta mais alinhada ao seu caso.&lt;/li&gt;
&lt;li&gt;Gere a documentação.&lt;/li&gt;
&lt;li&gt;Teste autenticação, exemplos de código, URLs e fluxo de publicação.&lt;/li&gt;
&lt;li&gt;Compare o esforço operacional com o fluxo atual no Redocly.&lt;/li&gt;
&lt;/ol&gt;

</description>
    </item>
    <item>
      <title>Claude Fable 5 vs. Opus 4.8: Quando o dobro do preço vale a pena?</title>
      <dc:creator>Lucas</dc:creator>
      <pubDate>Wed, 10 Jun 2026 03:41:46 +0000</pubDate>
      <link>https://dev.to/lucas_ferreira/claude-fable-5-vs-opus-48-quando-o-dobro-do-preco-vale-a-pena-2acp</link>
      <guid>https://dev.to/lucas_ferreira/claude-fable-5-vs-opus-48-quando-o-dobro-do-preco-vale-a-pena-2acp</guid>
      <description>&lt;p&gt;A Anthropic lançou o Claude Fable 5 em 9 de junho de 2026 com uma decisão de custo bem direta: &lt;strong&gt;Claude Fable 5 vs Opus 4.8 é, antes de tudo, uma comparação de preço por token&lt;/strong&gt;. O Fable 5 custa exatamente o dobro do Opus 4.8: entrada a &lt;strong&gt;$10 por milhão de tokens&lt;/strong&gt; contra &lt;strong&gt;$5&lt;/strong&gt;, e saída a &lt;strong&gt;$50 por milhão&lt;/strong&gt; contra &lt;strong&gt;$25&lt;/strong&gt;. Como ambos usam a mesma API de Mensagens, a decisão prática é: quando a melhoria do Fable 5 paga esse prêmio de 2x? Se você quiser entender o modelo mais antigo primeiro, veja nosso &lt;a href="https://apidog.com/pt/blog/what-is-claude-opus-4-8?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;guia para Claude Opus 4.8&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://apidog.com/?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation" class="crayons-btn crayons-btn--primary"&gt;Experimente o Apidog hoje&lt;/a&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  TL;DR
&lt;/h2&gt;

&lt;p&gt;Use esta regra inicial:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Use Claude Opus 4.8 por padrão&lt;/strong&gt; para chat, geração de código, RAG, Q&amp;amp;A de documentos e tarefas interativas.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Use Claude Fable 5&lt;/strong&gt; quando a tarefa exigir autonomia de longa duração, coerência em milhões de tokens ou agentes que rodam por horas.&lt;/li&gt;
&lt;li&gt;O Fable 5 custa &lt;strong&gt;2x&lt;/strong&gt; o Opus 4.8 por token. Só promova uma carga de trabalho para ele quando o ganho de qualidade justificar o custo.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-197.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-197.png" alt="" width="800" height="883"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Claude Fable 5 vs Opus 4.8: comparação rápida
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Dimensão&lt;/th&gt;
&lt;th&gt;Claude Fable 5&lt;/th&gt;
&lt;th&gt;Claude Opus 4.8&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;ID do modelo na API&lt;/td&gt;
&lt;td&gt;&lt;code&gt;claude-fable-5&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;claude-opus-4-8&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Preço de entrada&lt;/td&gt;
&lt;td&gt;$10 por 1M de tokens&lt;/td&gt;
&lt;td&gt;$5 por 1M de tokens&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Preço de saída&lt;/td&gt;
&lt;td&gt;$50 por 1M de tokens&lt;/td&gt;
&lt;td&gt;$25 por 1M de tokens&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Custo relativo&lt;/td&gt;
&lt;td&gt;2x Opus 4.8&lt;/td&gt;
&lt;td&gt;Linha de base&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Contexto&lt;/td&gt;
&lt;td&gt;Opera em milhões de tokens; nenhum número fixo publicado&lt;/td&gt;
&lt;td&gt;Janela de contexto de 1M de tokens&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Pensamento e esforço&lt;/td&gt;
&lt;td&gt;Pensamento adaptativo&lt;/td&gt;
&lt;td&gt;Pensamento adaptativo + esforço baixo/médio/alto/muito alto/máximo&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Posicionamento&lt;/td&gt;
&lt;td&gt;Modelo de classe Mythos seguro para uso geral; o mais capaz disponibilizado publicamente pela Anthropic&lt;/td&gt;
&lt;td&gt;Modelo altamente capaz; era o mais capaz da Anthropic antes do Fable 5&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Melhor uso&lt;/td&gt;
&lt;td&gt;Agentes de longa duração, grandes migrações, refatorações extensas&lt;/td&gt;
&lt;td&gt;Chat, codegen, RAG, Q&amp;amp;A e fluxos interativos&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Observação importante sobre contexto: a Anthropic não publicou um número exato para a janela de contexto do Fable 5. Ela descreve o modelo como capaz de permanecer focado em milhões de tokens, então trate isso como uma força qualitativa, não como uma especificação fixa. Já o Opus 4.8 tem uma janela documentada de 1M de tokens. A &lt;a href="https://platform.claude.com/docs/en/about-claude/models/overview" rel="noopener noreferrer"&gt;documentação geral dos modelos&lt;/a&gt; da Anthropic lista as especificações publicadas. Para uma introdução ao novo modelo, veja nosso &lt;a href="https://apidog.com/pt/blog/what-is-claude-fable-5?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;explicativo sobre o que é Claude Fable 5&lt;/a&gt; e nossa &lt;a href="https://apidog.com/pt/blog/claude-opus-4-8-pricing?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;análise de preços do Opus 4.8&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Preço: calcule antes de trocar o modelo
&lt;/h2&gt;

&lt;p&gt;O Fable 5 custa exatamente o dobro do Opus 4.8:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Modelo&lt;/th&gt;
&lt;th&gt;Entrada por 1M tokens&lt;/th&gt;
&lt;th&gt;Saída por 1M tokens&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Claude Fable 5&lt;/td&gt;
&lt;td&gt;$10&lt;/td&gt;
&lt;td&gt;$50&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Claude Opus 4.8&lt;/td&gt;
&lt;td&gt;$5&lt;/td&gt;
&lt;td&gt;$25&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Você pode confirmar as taxas atuais na &lt;a href="https://www.anthropic.com/pricing" rel="noopener noreferrer"&gt;página de preços&lt;/a&gt; da Anthropic.&lt;/p&gt;

&lt;p&gt;Por 1.000 tokens:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Fable 5: &lt;strong&gt;$0.010 entrada&lt;/strong&gt;, &lt;strong&gt;$0.050 saída&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Opus 4.8: &lt;strong&gt;$0.005 entrada&lt;/strong&gt;, &lt;strong&gt;$0.025 saída&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;O impacto aparece no volume. Exemplo mensal:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;200M tokens de entrada&lt;/li&gt;
&lt;li&gt;40M tokens de saída&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;No Opus 4.8:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;200 x $5  = $1.000
40 x $25  = $1.000
Total     = $2.000
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;No Fable 5:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;200 x $10 = $2.000
40 x $50  = $2.000
Total     = $4.000
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Mesmos tokens, mesma carga de trabalho, &lt;strong&gt;dobro do custo&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;A pergunta correta não é “o Fable 5 é melhor?”. A pergunta é:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;O Fable 5 melhora esta carga de trabalho o suficiente para justificar dobrar este item de custo?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Para um fluxo interno de baixo volume, o custo extra pode ser aceitável. Para um endpoint de alto volume voltado ao cliente, pode afetar diretamente a margem. Portanto, precifique a carga de trabalho, não apenas o modelo. Para mais detalhes, veja a &lt;a href="https://apidog.com/pt/blog/claude-opus-4-8-pricing?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;análise de preços do Opus 4.8&lt;/a&gt; e o &lt;a href="https://apidog.com/pt/blog/claude-fable-5-pricing?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;guia de preços do Claude Fable 5&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Onde o Fable 5 se destaca
&lt;/h2&gt;

&lt;p&gt;O Fable 5 é mais indicado quando a tarefa exige &lt;strong&gt;coerência sustentada por muito tempo&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Segundo o &lt;a href="https://www.anthropic.com/news/claude-fable-5-mythos-5" rel="noopener noreferrer"&gt;anúncio do Claude Fable 5&lt;/a&gt;, a Anthropic posiciona o modelo como uma versão de classe Mythos tornada segura para uso geral, projetada para trabalho autônomo de longa duração e foco em milhões de tokens.&lt;/p&gt;

&lt;p&gt;Na prática, isso importa quando o modelo precisa:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;manter um plano por horas;&lt;/li&gt;
&lt;li&gt;trabalhar sobre muito contexto;&lt;/li&gt;
&lt;li&gt;fazer várias decisões encadeadas;&lt;/li&gt;
&lt;li&gt;usar memória persistente;&lt;/li&gt;
&lt;li&gt;executar migrações ou refatorações grandes;&lt;/li&gt;
&lt;li&gt;evitar perda de foco ao longo de uma sessão extensa.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Um exemplo citado é a migração de uma base Ruby de 50 milhões de linhas para a Stripe em um único dia, um trabalho que a equipe estimava que levaria dois meses ou mais. Esse tipo de tarefa não depende apenas de gerar bons trechos de código. Depende de manter coerência durante uma execução longa.&lt;/p&gt;

&lt;p&gt;Outro ponto é o uso de memória. Em um teste com Slay the Spire, fornecer memória de arquivo persistente ao Fable 5 gerou uma melhoria de 3x sobre o Opus 4.8. A lição prática: se seu agente escreve notas, mantém um plano, lê o próprio histórico e continua trabalhando por muitas etapas, o Fable 5 tende a aproveitar melhor essa estrutura.&lt;/p&gt;

&lt;p&gt;Exemplo de arquitetura onde o Fable 5 faz sentido:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Agente de migração
├── Lê árvore do repositório
├── Cria plano de refatoração
├── Escreve arquivo de memória/plano
├── Edita lote de arquivos
├── Executa testes
├── Atualiza plano
├── Repete por horas
└── Gera relatório final
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Esse é o tipo de fluxo no qual pagar 2x pode fazer sentido.&lt;/p&gt;

&lt;p&gt;Em benchmarks, o Fable 5 apareceu em posições de ponta em avaliações como FrontierCode, FrontierBench, CursorBench e Hebbia’s Finance Benchmark. A Anthropic não divulgou pontuações públicas para todos esses resultados, então use as classificações como sinal direcional, não como número fechado para um documento de arquitetura.&lt;/p&gt;

&lt;p&gt;Também há uma diferença comportamental: certas consultas sensíveis — segurança cibernética, biologia, química e destilação de modelos — podem ser direcionadas para o Opus 4.8 em vez de respondidas diretamente pelo Fable 5. A Anthropic afirma que isso ocorre em menos de 5% das sessões. Para a maioria dos fluxos, isso não deve aparecer. Para comparações com outros fornecedores, veja nossa &lt;a href="https://apidog.com/pt/blog/claude-opus-4-8-vs-gpt-5-5-vs-gemini-3-5?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;comparação do Opus 4.8 contra GPT-5.5 e Gemini 3.5&lt;/a&gt; e o artigo &lt;a href="https://apidog.com/pt/blog/claude-fable-5-vs-gpt-5-5-vs-gemini-3-5?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Fable 5 contra GPT-5.5 e Gemini 3.5&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Onde o Opus 4.8 é a escolha mais econômica
&lt;/h2&gt;

&lt;p&gt;Para grande parte das cargas de produção, o Opus 4.8 é a melhor escolha.&lt;/p&gt;

&lt;p&gt;Ele continua sendo um modelo forte, com:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;janela de contexto documentada de 1M de tokens;&lt;/li&gt;
&lt;li&gt;pensamento adaptativo;&lt;/li&gt;
&lt;li&gt;níveis de esforço de baixo a máximo;&lt;/li&gt;
&lt;li&gt;metade do custo do Fable 5.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Use o Opus 4.8 quando a tarefa couber confortavelmente em 1M de tokens e for resolvida em uma interação curta ou em poucos passos.&lt;/p&gt;

&lt;p&gt;Bons casos de uso:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Chat interativo e assistentes&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;O usuário envia uma pergunta, o modelo responde, e o contexto não precisa sustentar um plano de várias horas.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Geração e revisão de código&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Funções, arquivos individuais, pull requests pequenos ou médios e explicações técnicas.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;RAG e Q&amp;amp;A de documentos&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Você recupera documentos relevantes, injeta no prompt e faz uma pergunta focada.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Extração e classificação&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Tarefas como classificar tickets, extrair campos de contratos ou resumir documentos.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Análise dentro de 1M de tokens&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Se a janela documentada do Opus 4.8 cobre o caso, você provavelmente não precisa pagar 2x.&lt;/p&gt;

&lt;p&gt;Um detalhe relevante: o próprio Fable 5 pode encaminhar certas categorias sensíveis para o Opus 4.8. Isso reforça que o Opus 4.8 continua confiável e capaz para tráfego real.&lt;/p&gt;

&lt;p&gt;A estratégia recomendada:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Comece com Opus 4.8
        ↓
Meça qualidade, custo e falhas
        ↓
Promova apenas tarefas específicas para Fable 5
        ↓
Mantenha o restante no modelo mais barato
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Se até o Opus 4.8 for mais caro do que sua carga precisa, o Claude Sonnet 4.6 fica abaixo dele em custo, com $3 de entrada e $15 de saída, e pode ser suficiente para tarefas simples de alto volume. Para detalhes de configuração, veja nosso &lt;a href="https://apidog.com/pt/blog/how-to-use-claude-opus-4-8-api?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;guia da API Opus 4.8&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Framework de decisão
&lt;/h2&gt;

&lt;p&gt;Use esta matriz para escolher o modelo por carga de trabalho.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Carga de trabalho&lt;/th&gt;
&lt;th&gt;Modelo recomendado&lt;/th&gt;
&lt;th&gt;Motivo&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Chat curto&lt;/td&gt;
&lt;td&gt;Opus 4.8&lt;/td&gt;
&lt;td&gt;Metade do custo; o Fable 5 não usa sua vantagem de longo prazo&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Classificação ou extração&lt;/td&gt;
&lt;td&gt;Opus 4.8&lt;/td&gt;
&lt;td&gt;Tarefa curta e objetiva&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Resumo de documento&lt;/td&gt;
&lt;td&gt;Opus 4.8&lt;/td&gt;
&lt;td&gt;A janela de 1M costuma ser suficiente&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;RAG e Q&amp;amp;A&lt;/td&gt;
&lt;td&gt;Opus 4.8&lt;/td&gt;
&lt;td&gt;Boa relação custo/qualidade&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Geração de função ou arquivo&lt;/td&gt;
&lt;td&gt;Opus 4.8&lt;/td&gt;
&lt;td&gt;Codegen limitado não exige autonomia prolongada&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Revisão de PR&lt;/td&gt;
&lt;td&gt;Opus 4.8&lt;/td&gt;
&lt;td&gt;Contexto geralmente controlado&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Agente de várias horas&lt;/td&gt;
&lt;td&gt;Fable 5&lt;/td&gt;
&lt;td&gt;Coerência sustentada é o diferencial&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Grande migração de código&lt;/td&gt;
&lt;td&gt;Fable 5&lt;/td&gt;
&lt;td&gt;O gargalo é manter plano e contexto por muito tempo&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Agente com memória persistente&lt;/td&gt;
&lt;td&gt;Fable 5&lt;/td&gt;
&lt;td&gt;O modelo tende a aproveitar melhor memória em execuções longas&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Custo é a restrição principal&lt;/td&gt;
&lt;td&gt;Opus 4.8 ou Sonnet 4.6&lt;/td&gt;
&lt;td&gt;Reduz custo por token&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Regra prática:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Use Opus 4.8 por padrão. Faça upgrade para Fable 5 apenas quando a carga provar que precisa de autonomia de longa duração.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Alternando entre Fable 5 e Opus 4.8 no código
&lt;/h2&gt;

&lt;p&gt;A troca é simples porque os dois modelos usam a mesma API de Mensagens. Você altera apenas o ID do modelo:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;code&gt;claude-opus-4-8&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;claude-fable-5&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Exemplo em Python:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;anthropic&lt;/span&gt;

&lt;span class="n"&gt;client&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;anthropic&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;Anthropic&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;

&lt;span class="n"&gt;response&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;client&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;create&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="n"&gt;model&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;claude-opus-4-8&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;  &lt;span class="c1"&gt;# troque para "claude-fable-5" quando necessário
&lt;/span&gt;    &lt;span class="n"&gt;max_tokens&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;16000&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;thinking&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;type&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;adaptive&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;
    &lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;
        &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;role&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;user&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;content&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Resuma este documento de design e liste as perguntas em aberto.&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
        &lt;span class="p"&gt;}&lt;/span&gt;
    &lt;span class="p"&gt;],&lt;/span&gt;
&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;block&lt;/span&gt; &lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;content&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
    &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;block&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nb"&gt;type&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;text&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
        &lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;block&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;text&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Para implementar roteamento por carga de trabalho, mantenha o modelo em configuração:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;select_model&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;task_type&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;str&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;-&amp;gt;&lt;/span&gt; &lt;span class="nb"&gt;str&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
    &lt;span class="n"&gt;long_running_tasks&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;large_code_migration&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;multi_hour_agent&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;persistent_memory_agent&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;

    &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;task_type&lt;/span&gt; &lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;long_running_tasks&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
        &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;claude-fable-5&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;

    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;claude-opus-4-8&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Depois use a função na chamada:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;task_type&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;rag_question_answering&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;

&lt;span class="n"&gt;response&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;client&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;create&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="n"&gt;model&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nf"&gt;select_model&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;task_type&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;
    &lt;span class="n"&gt;max_tokens&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;8000&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;thinking&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;type&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;adaptive&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;
    &lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;
        &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;role&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;user&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;content&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Com base nos documentos recuperados, responda à pergunta do usuário.&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
        &lt;span class="p"&gt;}&lt;/span&gt;
    &lt;span class="p"&gt;],&lt;/span&gt;
&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Também vale registrar tokens e custo por chamada:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;MODEL_PRICING&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;claude-opus-4-8&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;input_per_million&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;output_per_million&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;25&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="p"&gt;},&lt;/span&gt;
    &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;claude-fable-5&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;input_per_million&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;output_per_million&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;50&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="p"&gt;},&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;


&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;estimate_cost&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;model&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;str&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;input_tokens&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;int&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;output_tokens&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;int&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;-&amp;gt;&lt;/span&gt; &lt;span class="nb"&gt;float&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
    &lt;span class="n"&gt;pricing&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;MODEL_PRICING&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;model&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;

    &lt;span class="n"&gt;input_cost&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;input_tokens&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="mi"&gt;1_000_000&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;pricing&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;input_per_million&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
    &lt;span class="n"&gt;output_cost&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;output_tokens&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="mi"&gt;1_000_000&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;pricing&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;output_per_million&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;

    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="n"&gt;input_cost&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;output_cost&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Assim você consegue comparar qualidade e custo por tipo de tarefa, em vez de decidir com base apenas no nome do modelo.&lt;/p&gt;

&lt;p&gt;Para detalhes da superfície de requisição, veja o &lt;a href="https://apidog.com/pt/blog/how-to-use-claude-opus-4-8-api?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;guia da API Opus 4.8&lt;/a&gt; e o &lt;a href="https://apidog.com/pt/blog/how-to-use-claude-fable-5-api?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;guia da API Fable 5&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Como testar os dois modelos na prática
&lt;/h2&gt;

&lt;p&gt;A forma mais confiável de decidir é rodar o mesmo prompt nos dois modelos e comparar:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;qualidade da resposta;&lt;/li&gt;
&lt;li&gt;completude;&lt;/li&gt;
&lt;li&gt;aderência às instruções;&lt;/li&gt;
&lt;li&gt;latência;&lt;/li&gt;
&lt;li&gt;tokens de entrada;&lt;/li&gt;
&lt;li&gt;tokens de saída;&lt;/li&gt;
&lt;li&gt;custo estimado.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Você pode fazer isso com um pequeno teste A/B.&lt;/p&gt;

&lt;p&gt;Exemplo de payload para Opus 4.8:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"model"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"claude-opus-4-8"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"max_tokens"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;8000&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"thinking"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"adaptive"&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"messages"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"role"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"user"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"content"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Analise este plano de migração e liste riscos, etapas faltantes e recomendações."&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Depois duplique e troque apenas o modelo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"model"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"claude-fable-5"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"max_tokens"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;8000&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"thinking"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"adaptive"&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"messages"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"role"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"user"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"content"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Analise este plano de migração e liste riscos, etapas faltantes e recomendações."&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Avalie com uma tabela simples:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Critério&lt;/th&gt;
&lt;th&gt;Opus 4.8&lt;/th&gt;
&lt;th&gt;Fable 5&lt;/th&gt;
&lt;th&gt;Vencedor&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Correção&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Profundidade&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Seguiu instruções&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Latência&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Tokens de entrada&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Tokens de saída&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Custo estimado&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Se o Fable 5 vencer por pouco em uma tarefa curta, provavelmente não vale pagar 2x. Se ele evitar falhas em uma execução longa, manter plano melhor ou concluir uma migração que o Opus 4.8 não sustenta, o custo extra pode ser justificado.&lt;/p&gt;

&lt;h2&gt;
  
  
  Compare os dois com Apidog
&lt;/h2&gt;

&lt;p&gt;Tabelas de preços e benchmarks ajudam, mas a decisão deve ser baseada no seu tráfego real. O &lt;a href="https://apidog.com?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Apidog&lt;/a&gt; facilita esse teste.&lt;/p&gt;

&lt;p&gt;Fluxo recomendado:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Crie uma requisição para a API de Mensagens da Anthropic.&lt;/li&gt;
&lt;li&gt;Configure o modelo como &lt;code&gt;claude-opus-4-8&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Duplique a requisição.&lt;/li&gt;
&lt;li&gt;Troque apenas o campo &lt;code&gt;model&lt;/code&gt; para &lt;code&gt;claude-fable-5&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Envie o mesmo prompt para ambos.&lt;/li&gt;
&lt;li&gt;Compare resposta, latência e uso de tokens.&lt;/li&gt;
&lt;li&gt;Salve as duas chamadas como uma coleção de teste A/B.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Use prompts parecidos com produção, não perguntas triviais. Por exemplo:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;um trecho real de documentação interna;&lt;/li&gt;
&lt;li&gt;um PR representativo;&lt;/li&gt;
&lt;li&gt;um plano de migração;&lt;/li&gt;
&lt;li&gt;um caso real de suporte;&lt;/li&gt;
&lt;li&gt;uma consulta RAG com documentos relevantes.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;O Apidog permite manter as duas requisições lado a lado e repetir o teste quando seus prompts mudarem ou quando um novo modelo for lançado. Se quiser experimentar, &lt;a href="https://apidog.com/download?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;baixe o Apidog&lt;/a&gt; e configure as duas chamadas em alguns minutos. O &lt;a href="https://apidog.com?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Apidog&lt;/a&gt; ajuda a transformar a comparação em um teste reproduzível, em vez de uma decisão baseada apenas em especificações.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-198.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-198.png" alt="" width="799" height="530"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Como usar a API Claude Fable 5</title>
      <dc:creator>Lucas</dc:creator>
      <pubDate>Wed, 10 Jun 2026 03:13:45 +0000</pubDate>
      <link>https://dev.to/lucas_ferreira/como-usar-a-api-claude-fable-5-1i35</link>
      <guid>https://dev.to/lucas_ferreira/como-usar-a-api-claude-fable-5-1i35</guid>
      <description>&lt;p&gt;A Anthropic lançou o Claude Fable 5 em 9 de junho de 2026. Para quem desenvolve integrações, a parte prática é simples: ele usa a mesma API de Mensagens do Claude, e a principal mudança é a string do modelo: &lt;code&gt;claude-fable-5&lt;/code&gt;. Neste guia, você vai montar chamadas reais com &lt;code&gt;curl&lt;/code&gt;, Python e TypeScript, ativar streaming, usar ferramentas, tratar erros e calcular custo por requisição.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://apidog.com/?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation" class="crayons-btn crayons-btn--primary"&gt;Experimente o Apidog hoje&lt;/a&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  TL;DR
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Crie uma chave no &lt;a href="https://console.anthropic.com" rel="noopener noreferrer"&gt;Anthropic Console&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Exporte a chave como variável de ambiente:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;export &lt;/span&gt;&lt;span class="nv"&gt;ANTHROPIC_API_KEY&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"sk-ant-..."&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;Envie um &lt;code&gt;POST&lt;/code&gt; para a API de Mensagens usando:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"model"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"claude-fable-5"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"max_tokens"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;1024&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"messages"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"role"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"user"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"content"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Explique o que faz uma boa API REST."&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;Use streaming para respostas longas.&lt;/li&gt;
&lt;li&gt;Leia &lt;code&gt;usage.input_tokens&lt;/code&gt; e &lt;code&gt;usage.output_tokens&lt;/code&gt; para calcular custo.&lt;/li&gt;
&lt;li&gt;O preço é de US$10 por milhão de tokens de entrada e US$50 por milhão de tokens de saída.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Se você já integrou outro modelo Claude, a migração é parecida com a troca usada na &lt;a href="https://apidog.com/pt/blog/how-to-use-claude-opus-4-8-api?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;API do Claude Opus 4.8&lt;/a&gt;: altere o &lt;code&gt;model&lt;/code&gt; e valide a resposta.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F93itj9jefb2ocjj9jpw9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F93itj9jefb2ocjj9jpw9.png" alt="Claude Fable 5 API" width="800" height="883"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Pré-requisitos
&lt;/h2&gt;

&lt;p&gt;Antes da primeira chamada, confirme estes itens:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Conta Anthropic&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Crie ou acesse sua conta em &lt;a href="https://console.anthropic.com" rel="noopener noreferrer"&gt;console.anthropic.com&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Chave de API&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Gere uma chave em &lt;strong&gt;API Keys&lt;/strong&gt; no Console. Copie e armazene com segurança. Você não deve versioná-la no Git.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Faturamento ativo ou plano Enterprise&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
O Fable 5 está disponível na API padrão do Claude e em planos Enterprise baseados em consumo. Confirme seu método de pagamento ou cobertura do plano antes de enviar tráfego. Se ainda estiver avaliando o modelo, veja também &lt;a href="https://apidog.com/pt/blog/what-is-claude-fable-5?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;o que é o Claude Fable 5&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;SDK ou cliente HTTP&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Você pode usar HTTP puro, &lt;code&gt;curl&lt;/code&gt;, Python ou TypeScript/Node.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frdgmjtfmi7k9m7vs00xa.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frdgmjtfmi7k9m7vs00xa.png" alt="Anthropic Console" width="799" height="457"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Defina a chave no ambiente:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;export &lt;/span&gt;&lt;span class="nv"&gt;ANTHROPIC_API_KEY&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"sk-ant-..."&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Os SDKs oficiais leem &lt;code&gt;ANTHROPIC_API_KEY&lt;/code&gt; automaticamente. Evite passar a chave diretamente no código. Se uma chave vazar, revogue-a e gere outra no Console.&lt;/p&gt;

&lt;p&gt;Um detalhe operacional: o Fable 5 possui salvaguardas que podem redirecionar uma pequena parcela de consultas sensíveis, como cibersegurança, biologia, química e tentativas de destilação de modelos, para o Claude Opus 4.8. Isso ocorre em menos de 5% das sessões. A requisição continua válida, mas &lt;code&gt;response.model&lt;/code&gt; pode indicar outro modelo.&lt;/p&gt;

&lt;h2&gt;
  
  
  Primeira chamada com &lt;code&gt;curl&lt;/code&gt;
&lt;/h2&gt;

&lt;p&gt;O endpoint é:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight http"&gt;&lt;code&gt;&lt;span class="err"&gt;POST https://api.anthropic.com/v1/messages
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Exemplo mínimo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl https://api.anthropic.com/v1/messages &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-H&lt;/span&gt; &lt;span class="s2"&gt;"x-api-key: &lt;/span&gt;&lt;span class="nv"&gt;$ANTHROPIC_API_KEY&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-H&lt;/span&gt; &lt;span class="s2"&gt;"anthropic-version: 2023-06-01"&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-H&lt;/span&gt; &lt;span class="s2"&gt;"content-type: application/json"&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-d&lt;/span&gt; &lt;span class="s1"&gt;'{
    "model": "claude-fable-5",
    "max_tokens": 1024,
    "messages": [
      {
        "role": "user",
        "content": "Summarize what makes a good REST API in 3 bullet points."
      }
    ]
  }'&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Cabeçalhos usados:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Cabeçalho&lt;/th&gt;
&lt;th&gt;Função&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;x-api-key&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Envia sua chave de API&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;anthropic-version&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Define a versão da API&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;content-type&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Indica que o corpo está em JSON&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Campos principais do corpo:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Campo&lt;/th&gt;
&lt;th&gt;Obrigatório&lt;/th&gt;
&lt;th&gt;Descrição&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;model&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Sim&lt;/td&gt;
&lt;td&gt;Use &lt;code&gt;claude-fable-5&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;max_tokens&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Sim&lt;/td&gt;
&lt;td&gt;Limite máximo de tokens de saída&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;messages&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Sim&lt;/td&gt;
&lt;td&gt;Histórico da conversa&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Resposta simplificada:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"id"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"msg_01ABC..."&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"message"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"role"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"assistant"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"model"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"claude-fable-5"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"content"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"text"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"text"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"- URLs previsíveis e orientadas a recursos..."&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"stop_reason"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"end_turn"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"usage"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"input_tokens"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;18&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"output_tokens"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;96&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Pontos importantes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;content&lt;/code&gt; é uma lista de blocos, não uma string.&lt;/li&gt;
&lt;li&gt;Sempre verifique &lt;code&gt;type&lt;/code&gt; antes de ler &lt;code&gt;text&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;stop_reason&lt;/code&gt; indica por que a resposta terminou.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;usage&lt;/code&gt; contém os tokens usados e deve ser salvo para custo, métricas e auditoria.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Usando Claude Fable 5 com Python
&lt;/h2&gt;

&lt;p&gt;Instale o SDK oficial:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;pip &lt;span class="nb"&gt;install &lt;/span&gt;anthropic
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Chamada básica:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;anthropic&lt;/span&gt;

&lt;span class="n"&gt;client&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;anthropic&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;Anthropic&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;  &lt;span class="c1"&gt;# lê ANTHROPIC_API_KEY do ambiente
&lt;/span&gt;
&lt;span class="n"&gt;response&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;client&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;create&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="n"&gt;model&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;claude-fable-5&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;max_tokens&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;1024&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;
        &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;role&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;user&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;content&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Resuma o que faz uma boa API REST.&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
        &lt;span class="p"&gt;}&lt;/span&gt;
    &lt;span class="p"&gt;],&lt;/span&gt;
&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;block&lt;/span&gt; &lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;content&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
    &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;block&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nb"&gt;type&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;text&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
        &lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;block&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;text&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Esse padrão deve ser a base da sua integração:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Instancie o cliente.&lt;/li&gt;
&lt;li&gt;Envie &lt;code&gt;model&lt;/code&gt;, &lt;code&gt;max_tokens&lt;/code&gt; e &lt;code&gt;messages&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Itere por &lt;code&gt;response.content&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Extraia apenas blocos com &lt;code&gt;type == "text"&lt;/code&gt;.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Adicionando prompt de sistema
&lt;/h3&gt;

&lt;p&gt;Use &lt;code&gt;system&lt;/code&gt; para definir papel, restrições e formato da resposta:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;response&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;client&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;create&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="n"&gt;model&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;claude-fable-5&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;max_tokens&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;2048&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;system&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Você é um engenheiro de backend sênior. &lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Responda de forma concisa e use exemplos de código quando necessário.&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
    &lt;span class="p"&gt;),&lt;/span&gt;
    &lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;
        &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;role&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;user&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;content&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Escreva uma rota Flask que valida um corpo JSON.&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
        &lt;span class="p"&gt;}&lt;/span&gt;
    &lt;span class="p"&gt;],&lt;/span&gt;
&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;block&lt;/span&gt; &lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;content&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
    &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;block&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nb"&gt;type&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;text&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
        &lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;block&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;text&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Use &lt;code&gt;system&lt;/code&gt; para regras estáveis, como:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;tom da resposta;&lt;/li&gt;
&lt;li&gt;formato de saída;&lt;/li&gt;
&lt;li&gt;limites técnicos;&lt;/li&gt;
&lt;li&gt;idioma;&lt;/li&gt;
&lt;li&gt;persona do assistente;&lt;/li&gt;
&lt;li&gt;restrições de segurança.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Evite alterar o prompt de sistema sem necessidade, especialmente se depois você usar cache de prompt.&lt;/p&gt;

&lt;h2&gt;
  
  
  Streaming para respostas longas
&lt;/h2&gt;

&lt;p&gt;Use streaming quando a resposta puder ser grande. Isso melhora a UX e reduz o risco de timeout.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="k"&gt;with&lt;/span&gt; &lt;span class="n"&gt;client&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;stream&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="n"&gt;model&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;claude-fable-5&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;max_tokens&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;4096&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;
        &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;role&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;user&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;content&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Explique as chaves de idempotência para APIs de pagamento.&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
        &lt;span class="p"&gt;}&lt;/span&gt;
    &lt;span class="p"&gt;],&lt;/span&gt;
&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;stream&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
    &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;text&lt;/span&gt; &lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;stream&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;text_stream&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
        &lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;text&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;end&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;""&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;flush&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="bp"&gt;True&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

    &lt;span class="n"&gt;final&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;stream&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;get_final_message&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;

&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sa"&gt;f&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="se"&gt;\n\n&lt;/span&gt;&lt;span class="s"&gt;Tokens de saída: &lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="n"&gt;final&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;usage&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;output_tokens&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Boas práticas:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;use &lt;code&gt;flush=True&lt;/code&gt; para imprimir os chunks imediatamente;&lt;/li&gt;
&lt;li&gt;use &lt;code&gt;get_final_message()&lt;/code&gt; para obter a resposta completa;&lt;/li&gt;
&lt;li&gt;leia &lt;code&gt;final.usage&lt;/code&gt; para registrar custo;&lt;/li&gt;
&lt;li&gt;prefira streaming em chats, geração de documentos e respostas técnicas longas.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Usando Claude Fable 5 com TypeScript / Node
&lt;/h2&gt;

&lt;p&gt;Instale o SDK:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npm &lt;span class="nb"&gt;install&lt;/span&gt; @anthropic-ai/sdk
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Chamada básica:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight typescript"&gt;&lt;code&gt;&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="nx"&gt;Anthropic&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;@anthropic-ai/sdk&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;client&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nc"&gt;Anthropic&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt; &lt;span class="c1"&gt;// lê ANTHROPIC_API_KEY&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;msg&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;client&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;create&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;
  &lt;span class="na"&gt;model&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;claude-fable-5&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="na"&gt;max_tokens&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;1024&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="na"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;
    &lt;span class="p"&gt;{&lt;/span&gt;
      &lt;span class="na"&gt;role&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;user&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
      &lt;span class="na"&gt;content&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Liste 3 erros comuns de segurança de API.&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
  &lt;span class="p"&gt;],&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt;

&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;msg&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;content&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Para extrair apenas texto:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight typescript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;text&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;msg&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;content&lt;/span&gt;
  &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;filter&lt;/span&gt;&lt;span class="p"&gt;((&lt;/span&gt;&lt;span class="nx"&gt;block&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="nx"&gt;block&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="kd"&gt;type&lt;/span&gt; &lt;span class="o"&gt;===&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;text&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
  &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;map&lt;/span&gt;&lt;span class="p"&gt;((&lt;/span&gt;&lt;span class="nx"&gt;block&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="nx"&gt;block&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;text&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
  &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;join&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;""&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;text&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Em uma aplicação real, encapsule essa lógica em uma função:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight typescript"&gt;&lt;code&gt;&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="nx"&gt;Anthropic&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;@anthropic-ai/sdk&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;client&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nc"&gt;Anthropic&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;

&lt;span class="k"&gt;export&lt;/span&gt; &lt;span class="k"&gt;async&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;askFable&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;prompt&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kr"&gt;string&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt; &lt;span class="nb"&gt;Promise&lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="kr"&gt;string&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;msg&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;client&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;create&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;
    &lt;span class="na"&gt;model&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;claude-fable-5&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="na"&gt;max_tokens&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;1024&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="na"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[{&lt;/span&gt; &lt;span class="na"&gt;role&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;user&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;content&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;prompt&lt;/span&gt; &lt;span class="p"&gt;}],&lt;/span&gt;
  &lt;span class="p"&gt;});&lt;/span&gt;

  &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;msg&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;content&lt;/span&gt;
    &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;filter&lt;/span&gt;&lt;span class="p"&gt;((&lt;/span&gt;&lt;span class="nx"&gt;block&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="nx"&gt;block&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="kd"&gt;type&lt;/span&gt; &lt;span class="o"&gt;===&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;text&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;map&lt;/span&gt;&lt;span class="p"&gt;((&lt;/span&gt;&lt;span class="nx"&gt;block&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="nx"&gt;block&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;text&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;join&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;""&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Para frontends de chat, faça o streaming no backend e encaminhe os chunks para o navegador. Antes de implementar o cliente final, você pode validar o contrato manualmente com uma ferramenta como Apidog, no mesmo fluxo mostrado em &lt;a href="https://apidog.com/pt/blog/how-to-test-chatgpt-api-with-apidog?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;testando a API ChatGPT com Apidog&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Uso de ferramentas com Fable 5
&lt;/h2&gt;

&lt;p&gt;O uso de ferramentas permite que o modelo solicite a execução de funções definidas por você. O fluxo é:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Você descreve a ferramenta com JSON Schema.&lt;/li&gt;
&lt;li&gt;O modelo decide quando usá-la.&lt;/li&gt;
&lt;li&gt;Sua aplicação executa a função real.&lt;/li&gt;
&lt;li&gt;Você envia o resultado de volta.&lt;/li&gt;
&lt;li&gt;O modelo responde usando esse resultado.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Exemplo de definição de ferramenta:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;tools&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;
    &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;name&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;get_order_status&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;description&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Consulta o status de um pedido do cliente por ID.&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;input_schema&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;type&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;object&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;properties&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
                &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;order_id&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
                    &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;type&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;string&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
                &lt;span class="p"&gt;}&lt;/span&gt;
            &lt;span class="p"&gt;},&lt;/span&gt;
            &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;required&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;order_id&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;
        &lt;span class="p"&gt;},&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;]&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Envie a ferramenta junto da mensagem:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;messages&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;
    &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;role&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;user&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;content&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Qual o status do pedido A1855?&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;]&lt;/span&gt;

&lt;span class="n"&gt;response&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;client&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;create&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="n"&gt;model&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;claude-fable-5&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;max_tokens&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;1024&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;tools&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;tools&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Quando o modelo quiser chamar a ferramenta, a resposta terá:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;stop_reason&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;tool_use&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;E um bloco do tipo &lt;code&gt;tool_use&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Exemplo de loop manual:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;stop_reason&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;tool_use&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
    &lt;span class="n"&gt;tool_use&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;next&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
        &lt;span class="n"&gt;block&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;block&lt;/span&gt; &lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;content&lt;/span&gt;
        &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;block&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nb"&gt;type&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;tool_use&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
    &lt;span class="p"&gt;)&lt;/span&gt;

    &lt;span class="c1"&gt;# Execute sua função real
&lt;/span&gt;    &lt;span class="n"&gt;result&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;lookup_order&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;tool_use&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nb"&gt;input&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;order_id&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt;

    &lt;span class="c1"&gt;# Preserve a resposta do assistente no histórico
&lt;/span&gt;    &lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;append&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;role&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;assistant&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;content&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;content&lt;/span&gt;
    &lt;span class="p"&gt;})&lt;/span&gt;

    &lt;span class="c1"&gt;# Envie o resultado da ferramenta
&lt;/span&gt;    &lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;append&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;role&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;user&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;content&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;
            &lt;span class="p"&gt;{&lt;/span&gt;
                &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;type&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;tool_result&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
                &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;tool_use_id&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;tool_use&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nb"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
                &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;content&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;result&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="p"&gt;}&lt;/span&gt;
        &lt;span class="p"&gt;],&lt;/span&gt;
    &lt;span class="p"&gt;})&lt;/span&gt;

    &lt;span class="n"&gt;followup&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;client&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;create&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
        &lt;span class="n"&gt;model&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;claude-fable-5&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="n"&gt;max_tokens&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;1024&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="n"&gt;tools&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;tools&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;O detalhe mais importante é &lt;code&gt;tool_use_id&lt;/code&gt;. O bloco &lt;code&gt;tool_result&lt;/code&gt; precisa apontar para o &lt;code&gt;id&lt;/code&gt; exato do bloco &lt;code&gt;tool_use&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Para agentes multi-etapas, envolva isso em um loop:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="k"&gt;while&lt;/span&gt; &lt;span class="bp"&gt;True&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
    &lt;span class="n"&gt;response&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;client&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;create&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
        &lt;span class="n"&gt;model&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;claude-fable-5&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="n"&gt;max_tokens&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;1024&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="n"&gt;tools&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;tools&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="p"&gt;)&lt;/span&gt;

    &lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;append&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;role&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;assistant&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;content&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;content&lt;/span&gt;
    &lt;span class="p"&gt;})&lt;/span&gt;

    &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;stop_reason&lt;/span&gt; &lt;span class="o"&gt;!=&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;tool_use&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
        &lt;span class="k"&gt;break&lt;/span&gt;

    &lt;span class="n"&gt;tool_use&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;next&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
        &lt;span class="n"&gt;block&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;block&lt;/span&gt; &lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;content&lt;/span&gt;
        &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;block&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nb"&gt;type&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;tool_use&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
    &lt;span class="p"&gt;)&lt;/span&gt;

    &lt;span class="n"&gt;result&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;lookup_order&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;tool_use&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nb"&gt;input&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;order_id&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt;

    &lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;append&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;role&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;user&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;content&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;
            &lt;span class="p"&gt;{&lt;/span&gt;
                &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;type&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;tool_result&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
                &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;tool_use_id&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;tool_use&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nb"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
                &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;content&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;result&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="p"&gt;}&lt;/span&gt;
        &lt;span class="p"&gt;],&lt;/span&gt;
    &lt;span class="p"&gt;})&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Esse formato também é útil para adicionar:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;logs de auditoria;&lt;/li&gt;
&lt;li&gt;aprovação humana antes da execução;&lt;/li&gt;
&lt;li&gt;limites de chamadas;&lt;/li&gt;
&lt;li&gt;validação de input;&lt;/li&gt;
&lt;li&gt;fallback quando uma ferramenta falha.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Pensamento adaptativo e esforço
&lt;/h2&gt;

&lt;p&gt;O Fable 5 suporta pensamento adaptativo. Com ele, o modelo decide quando raciocinar mais profundamente antes de responder.&lt;/p&gt;

&lt;p&gt;Exemplo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;response&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;client&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;create&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="n"&gt;model&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;claude-fable-5&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;max_tokens&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;4096&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;thinking&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;type&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;adaptive&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;
    &lt;span class="n"&gt;output_config&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;effort&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;high&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;  &lt;span class="c1"&gt;# low | medium | high
&lt;/span&gt;    &lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;
        &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;role&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;user&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;content&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Projete uma estratégia de repetição para um receptor de webhook instável.&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
        &lt;span class="p"&gt;}&lt;/span&gt;
    &lt;span class="p"&gt;],&lt;/span&gt;
&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Use &lt;code&gt;thinking&lt;/code&gt; e &lt;code&gt;effort&lt;/code&gt; quando a tarefa envolver:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;planejamento multi-etapas;&lt;/li&gt;
&lt;li&gt;arquitetura;&lt;/li&gt;
&lt;li&gt;análise de trade-offs;&lt;/li&gt;
&lt;li&gt;depuração complexa;&lt;/li&gt;
&lt;li&gt;raciocínio de produto ou sistema.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Evite em tarefas simples, como:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;reformular uma frase;&lt;/li&gt;
&lt;li&gt;classificar texto curto;&lt;/li&gt;
&lt;li&gt;gerar uma resposta pequena;&lt;/li&gt;
&lt;li&gt;extrair campos simples.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;code&gt;effort&lt;/code&gt; maior tende a consumir mais tokens. Comece sem &lt;code&gt;thinking&lt;/code&gt;, meça a qualidade e ative apenas nas rotas que realmente precisam.&lt;/p&gt;

&lt;h2&gt;
  
  
  Tratamento de erros
&lt;/h2&gt;

&lt;p&gt;Integrações de produção devem capturar exceções tipadas em vez de comparar strings.&lt;/p&gt;

&lt;p&gt;Exemplo em Python:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;anthropic&lt;/span&gt;

&lt;span class="n"&gt;client&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;anthropic&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;Anthropic&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;

&lt;span class="k"&gt;try&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
    &lt;span class="n"&gt;response&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;client&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;create&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
        &lt;span class="n"&gt;model&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;claude-fable-5&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="n"&gt;max_tokens&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;1024&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;
            &lt;span class="p"&gt;{&lt;/span&gt;
                &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;role&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;user&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
                &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;content&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Explique as requisições de preflight do CORS.&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
            &lt;span class="p"&gt;}&lt;/span&gt;
        &lt;span class="p"&gt;],&lt;/span&gt;
    &lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="k"&gt;except&lt;/span&gt; &lt;span class="n"&gt;anthropic&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;AuthenticationError&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
    &lt;span class="c1"&gt;# HTTP 401
&lt;/span&gt;    &lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Chave de API inválida ou ausente. Verifique ANTHROPIC_API_KEY.&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="k"&gt;except&lt;/span&gt; &lt;span class="n"&gt;anthropic&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;RateLimitError&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;e&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
    &lt;span class="c1"&gt;# HTTP 429
&lt;/span&gt;    &lt;span class="n"&gt;retry_after&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;e&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;headers&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;retry-after&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;60&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sa"&gt;f&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Limite de taxa atingido. Tente novamente após &lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="n"&gt;retry_after&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s"&gt;s.&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="k"&gt;except&lt;/span&gt; &lt;span class="n"&gt;anthropic&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;BadRequestError&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;e&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
    &lt;span class="c1"&gt;# HTTP 400
&lt;/span&gt;    &lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sa"&gt;f&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Requisição inválida: &lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="n"&gt;e&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;message&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Resumo dos erros comuns:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Erro&lt;/th&gt;
&lt;th&gt;HTTP&lt;/th&gt;
&lt;th&gt;Causa comum&lt;/th&gt;
&lt;th&gt;Como corrigir&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;AuthenticationError&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;401&lt;/td&gt;
&lt;td&gt;Chave ausente, inválida ou revogada&lt;/td&gt;
&lt;td&gt;Verifique &lt;code&gt;ANTHROPIC_API_KEY&lt;/code&gt; e gere outra chave se necessário&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;RateLimitError&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;429&lt;/td&gt;
&lt;td&gt;Limite de requisições ou tokens excedido&lt;/td&gt;
&lt;td&gt;Use backoff e respeite &lt;code&gt;retry-after&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;BadRequestError&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;400&lt;/td&gt;
&lt;td&gt;Corpo inválido&lt;/td&gt;
&lt;td&gt;Verifique &lt;code&gt;model&lt;/code&gt;, &lt;code&gt;max_tokens&lt;/code&gt;, &lt;code&gt;messages&lt;/code&gt; e formato dos papéis&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;O SDK já tenta novamente erros 429 e 5xx com backoff exponencial, com duas tentativas por padrão. Se você implementar retry próprio, evite duplicar tentativas sem controle.&lt;/p&gt;

&lt;h3&gt;
  
  
  Lidando com fallback de salvaguarda
&lt;/h3&gt;

&lt;p&gt;O fallback de salvaguarda não é erro. A requisição pode ser bem-sucedida, mas &lt;code&gt;response.model&lt;/code&gt; pode vir como outro modelo, como Claude Opus 4.8.&lt;/p&gt;

&lt;p&gt;Não faça isto:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="k"&gt;assert&lt;/span&gt; &lt;span class="n"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;model&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;claude-fable-5&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Prefira registrar o modelo retornado:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sa"&gt;f&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Modelo usado: &lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="n"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;model&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Se sua aplicação depende do modelo exato usado, leia &lt;code&gt;response.model&lt;/code&gt; da resposta em vez de assumir que será sempre igual ao &lt;code&gt;model&lt;/code&gt; enviado.&lt;/p&gt;

&lt;h2&gt;
  
  
  Calculando custo por requisição
&lt;/h2&gt;

&lt;p&gt;O preço informado é:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Entrada:&lt;/strong&gt; US$10 por milhão de tokens&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Saída:&lt;/strong&gt; US$50 por milhão de tokens&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Cada resposta inclui &lt;code&gt;usage&lt;/code&gt;, então calcule o custo real por chamada:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;response&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;client&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;create&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="n"&gt;model&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;claude-fable-5&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;max_tokens&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;1024&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;
        &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;role&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;user&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;content&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Escreva uma consulta SQL para encontrar e-mails duplicados.&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
        &lt;span class="p"&gt;}&lt;/span&gt;
    &lt;span class="p"&gt;],&lt;/span&gt;
&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="n"&gt;input_tokens&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;usage&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;input_tokens&lt;/span&gt;
&lt;span class="n"&gt;output_tokens&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;usage&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;output_tokens&lt;/span&gt;

&lt;span class="n"&gt;input_cost&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;input_tokens&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="mi"&gt;1_000_000&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mi"&gt;10&lt;/span&gt;
&lt;span class="n"&gt;output_cost&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;output_tokens&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="mi"&gt;1_000_000&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mi"&gt;50&lt;/span&gt;
&lt;span class="n"&gt;total&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;input_cost&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;output_cost&lt;/span&gt;

&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sa"&gt;f&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Entrada: &lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="n"&gt;input_tokens&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s"&gt; tokens = $&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="n"&gt;input_cost&lt;/span&gt;&lt;span class="si"&gt;:&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="mi"&gt;6&lt;/span&gt;&lt;span class="n"&gt;f&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sa"&gt;f&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Saída:   &lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="n"&gt;output_tokens&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s"&gt; tokens = $&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="n"&gt;output_cost&lt;/span&gt;&lt;span class="si"&gt;:&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="mi"&gt;6&lt;/span&gt;&lt;span class="n"&gt;f&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sa"&gt;f&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Total:   $&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="n"&gt;total&lt;/span&gt;&lt;span class="si"&gt;:&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="mi"&gt;6&lt;/span&gt;&lt;span class="n"&gt;f&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Exemplo de cálculo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Entrada: 2.000 tokens
Saída:     500 tokens

Entrada: 2000 / 1.000.000 * US$10 = US$0,020
Saída:    500 / 1.000.000 * US$50 = US$0,025

Total: US$0,045
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Como tokens de saída custam mais, as principais alavancas de custo são:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;limitar &lt;code&gt;max_tokens&lt;/code&gt;;&lt;/li&gt;
&lt;li&gt;pedir respostas concisas no prompt de sistema;&lt;/li&gt;
&lt;li&gt;usar streaming sem aumentar o tamanho da saída;&lt;/li&gt;
&lt;li&gt;evitar raciocínio adaptativo em tarefas simples;&lt;/li&gt;
&lt;li&gt;registrar &lt;code&gt;usage&lt;/code&gt; por rota, usuário ou tenant.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;O cálculo segue a mesma lógica usada em &lt;a href="https://apidog.com/pt/blog/claude-opus-4-8-pricing?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;preços do Claude Opus 4.8&lt;/a&gt;, mas com os valores do Fable 5.&lt;/p&gt;

&lt;h2&gt;
  
  
  Testando e depurando a API do Claude Fable 5 com Apidog
&lt;/h2&gt;

&lt;p&gt;Antes de codar o cliente final, envie algumas requisições manualmente para validar headers, corpo, streaming e formato de resposta. &lt;a href="https://apidog.com?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Apidog&lt;/a&gt; permite criar uma requisição real para &lt;code&gt;https://api.anthropic.com/v1/messages&lt;/code&gt;, inspecionar a resposta e salvar o contrato para a equipe.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faj57bwif4wuc95zn5eme.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faj57bwif4wuc95zn5eme.png" alt="Testando Claude Fable 5 no Apidog" width="799" height="530"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Fluxo recomendado:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Crie uma requisição HTTP&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Método:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight http"&gt;&lt;code&gt;&lt;span class="err"&gt;   POST
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;URL:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;   https://api.anthropic.com/v1/messages
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Armazene a chave como variável de ambiente&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Crie uma variável chamada:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;   anthropic_api_key
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Salve o valor como secreto. Assim a chave não fica exposta na requisição salva.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Configure os headers&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Use:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight http"&gt;&lt;code&gt;&lt;span class="err"&gt;   x-api-key: {{anthropic_api_key}}
   anthropic-version: 2023-06-01
   content-type: application/json
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Adicione o corpo mínimo&lt;/strong&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
     &lt;/span&gt;&lt;span class="nl"&gt;"model"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"claude-fable-5"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
     &lt;/span&gt;&lt;span class="nl"&gt;"max_tokens"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;1024&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
     &lt;/span&gt;&lt;span class="nl"&gt;"messages"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
       &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
         &lt;/span&gt;&lt;span class="nl"&gt;"role"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"user"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
         &lt;/span&gt;&lt;span class="nl"&gt;"content"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Explique as chaves de idempotência para APIs de pagamento."&lt;/span&gt;&lt;span class="w"&gt;
       &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
     &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
   &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Envie e valide a resposta&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Verifique se a resposta contém:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;content&lt;/code&gt;;&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;stop_reason&lt;/code&gt;;&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;usage&lt;/code&gt;;&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;model&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Teste streaming&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Adicione &lt;code&gt;stream: true&lt;/code&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
     &lt;/span&gt;&lt;span class="nl"&gt;"model"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"claude-fable-5"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
     &lt;/span&gt;&lt;span class="nl"&gt;"max_tokens"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;1024&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
     &lt;/span&gt;&lt;span class="nl"&gt;"stream"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
     &lt;/span&gt;&lt;span class="nl"&gt;"messages"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
       &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
         &lt;/span&gt;&lt;span class="nl"&gt;"role"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"user"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
         &lt;/span&gt;&lt;span class="nl"&gt;"content"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Explique as chaves de idempotência para APIs de pagamento."&lt;/span&gt;&lt;span class="w"&gt;
       &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
     &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
   &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Observe os eventos chegando em tempo real. Isso ajuda a implementar corretamente o streaming no backend.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Salve a requisição e gere código&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Salve a chamada em uma coleção e use a geração de código do Apidog para exportar exemplos em Python, JavaScript, &lt;code&gt;curl&lt;/code&gt; ou outra linguagem.&lt;/p&gt;

&lt;p&gt;Esse processo reduz tentativa e erro: primeiro você valida a requisição funcionando, depois replica o mesmo contrato no código. Quando estiver pronto, &lt;a href="https://apidog.com/download?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;baixe o Apidog&lt;/a&gt; e comece com o payload mínimo acima.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Como os Mecanismos de Segurança do Claude Fable 5 Funcionam (Roteamento Explicado)</title>
      <dc:creator>Lucas</dc:creator>
      <pubDate>Wed, 10 Jun 2026 03:09:16 +0000</pubDate>
      <link>https://dev.to/lucas_ferreira/como-os-mecanismos-de-seguranca-do-claude-fable-5-funcionam-roteamento-explicado-1i16</link>
      <guid>https://dev.to/lucas_ferreira/como-os-mecanismos-de-seguranca-do-claude-fable-5-funcionam-roteamento-explicado-1i16</guid>
      <description>&lt;p&gt;Se você está usando o Claude Fable 5 via API e algumas respostas parecem diferentes em temas específicos, provavelmente está vendo as salvaguardas do modelo em ação. O Fable 5 foi lançado em 9 de junho de 2026 com o ID &lt;code&gt;claude-fable-5&lt;/code&gt; e inclui roteamento automático de segurança: em certas consultas sensíveis, a resposta é gerada pelo &lt;a href="https://apidog.com/pt/blog/what-is-claude-opus-4-8?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Claude Opus 4.8&lt;/a&gt;, não pelo Fable 5 completo.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://apidog.com/?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation" class="crayons-btn crayons-btn--primary"&gt;Experimente o Apidog hoje&lt;/a&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  TL;DR
&lt;/h2&gt;

&lt;p&gt;O Claude Fable 5 usa classificadores para detectar consultas em três áreas sensíveis:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Cibersegurança ofensiva&lt;/li&gt;
&lt;li&gt;Biologia e química de alto risco&lt;/li&gt;
&lt;li&gt;Destilação de modelos&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Quando uma consulta é classificada como sensível, ela é roteada para o Claude Opus 4.8. Isso acontece em menos de 5% das sessões em média. Você não configura nada, não muda o ID do modelo e o preço permanece o mesmo.&lt;/p&gt;

&lt;h2&gt;
  
  
  Como o roteamento de segurança funciona
&lt;/h2&gt;

&lt;p&gt;Ao chamar o modelo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"model"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"claude-fable-5"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"messages"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"role"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"user"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"content"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Seu prompt aqui"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;a Anthropic executa classificadores antes de gerar a resposta. Esses classificadores verificam se o prompt se enquadra em uma das categorias protegidas.&lt;/p&gt;

&lt;p&gt;Na maioria dos casos, o fluxo é simples:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Prompt do usuário
  -&amp;gt; Classificadores
  -&amp;gt; Claude Fable 5
  -&amp;gt; Resposta
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Quando o prompt é sensível, o fluxo muda:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Prompt do usuário
  -&amp;gt; Classificadores
  -&amp;gt; Claude Opus 4.8
  -&amp;gt; Resposta pela mesma chamada de API
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Do ponto de vista da sua aplicação, a chamada continua usando &lt;code&gt;claude-fable-5&lt;/code&gt;. A diferença é que a resposta pode ter sido produzida pelo Opus 4.8.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-193.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-193.png" alt="" width="800" height="883"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Isso importa porque os modelos podem ter diferenças de estilo, profundidade e comportamento em tópicos sensíveis. Se você estiver avaliando qualidade de resposta, consistência ou cobertura de casos extremos, precisa considerar esse fallback.&lt;/p&gt;

&lt;p&gt;Para entender a classe de modelo, veja também &lt;a href="https://apidog.com/pt/blog/mythos-class-model-explained?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;o que é um modelo de classe Mythos&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  As três áreas protegidas
&lt;/h2&gt;

&lt;p&gt;As salvaguardas do Claude Fable 5 cobrem três categorias. Elas não bloqueiam todo conteúdo desses domínios; o foco é reduzir riscos em capacidades consideradas mais sensíveis.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Cibersegurança
&lt;/h3&gt;

&lt;p&gt;A primeira categoria é cibersegurança ofensiva. Isso inclui consultas relacionadas a:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Desenvolvimento de exploits&lt;/li&gt;
&lt;li&gt;Fluxos de trabalho ofensivos&lt;/li&gt;
&lt;li&gt;Tarefas agênticas de hacking&lt;/li&gt;
&lt;li&gt;Aceleração de ataques&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Quando o classificador detecta esse tipo de solicitação, a resposta é roteada para o Opus 4.8.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-191.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-191.png" alt="" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A intenção não é bloquear segurança defensiva, educação ou perguntas comuns de engenharia. O objetivo é evitar que o Fable 5 avance tarefas ofensivas de alto risco.&lt;/p&gt;

&lt;p&gt;Na prática, se você cria ferramentas de segurança, inclua prompts defensivos e ofensivos simulados nos seus testes para entender onde o comportamento muda.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Biologia e química
&lt;/h3&gt;

&lt;p&gt;A segunda categoria envolve consultas de biologia e química associadas a capacidades de maior risco, como design de AAV e temas relacionados a armas biológicas.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-192.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-192.png" alt="" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A maioria das perguntas científicas, médicas e educacionais deve seguir normalmente. O fallback é direcionado a uma faixa mais restrita de conteúdo perigoso.&lt;/p&gt;

&lt;p&gt;Se seu produto atua em biotecnologia, saúde, química ou educação científica, teste prompts representativos antes de colocar o fluxo em produção.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Destilação de modelos
&lt;/h3&gt;

&lt;p&gt;A terceira área é &lt;a href="https://www.anthropic.com/news/detecting-and-preventing-distillation-attacks" rel="noopener noreferrer"&gt;destilação de modelos&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Isso cobre tentativas de extrair comportamento do modelo para treinar ou reproduzir modelos concorrentes, por exemplo por meio de sondagem sistemática.&lt;/p&gt;

&lt;p&gt;Diferente das duas primeiras categorias, aqui o risco principal não é dano físico, mas proteção do próprio modelo. O mecanismo, porém, é o mesmo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Consulta suspeita de destilação
  -&amp;gt; Classificador
  -&amp;gt; Fallback para Opus 4.8
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Como isso aparece na sua aplicação
&lt;/h2&gt;

&lt;p&gt;O ponto mais importante: normalmente você não recebe um erro.&lt;/p&gt;

&lt;p&gt;A chamada continua retornando uma resposta válida. O que pode mudar é o comportamento da resposta em tópicos protegidos.&lt;/p&gt;

&lt;p&gt;Você pode observar diferenças como:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Tom diferente&lt;/li&gt;
&lt;li&gt;Menos profundidade em certas instruções&lt;/li&gt;
&lt;li&gt;Mais cautela em tópicos sensíveis&lt;/li&gt;
&lt;li&gt;Respostas que parecem menos alinhadas ao perfil esperado do Fable 5&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Como o fallback acontece na mesma chamada e com o mesmo ID de modelo, você não deve depender de uma única resposta para inferir qual modelo gerou a saída.&lt;/p&gt;

&lt;p&gt;Uma abordagem prática é criar uma suíte de prompts.&lt;/p&gt;

&lt;p&gt;Exemplo de estrutura:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;tests/
  general/
    coding-prompts.txt
    writing-prompts.txt
  cybersecurity/
    defensive-prompts.txt
    offensive-boundary-prompts.txt
  biology-chemistry/
    educational-prompts.txt
    boundary-prompts.txt
  model-distillation/
    extraction-like-prompts.txt
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Para cada prompt, registre:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"prompt_id"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"cyber-defense-001"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"category"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"cybersecurity"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"expected_behavior"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"resposta defensiva útil"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"observed_behavior"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"preencher após execução"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"notes"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"comparar tom, profundidade e completude"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Você pode executar esses prompts em uma ferramenta como &lt;a href="https://apidog.com?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Apidog&lt;/a&gt;, salvar coleções e repetir os testes quando mudar prompts, parâmetros ou fluxos do produto.&lt;/p&gt;

&lt;h2&gt;
  
  
  Por que rotear em vez de recusar
&lt;/h2&gt;

&lt;p&gt;Uma recusa rígida é simples, mas também pode bloquear usos legítimos.&lt;/p&gt;

&lt;p&gt;Exemplos de consultas legítimas que podem tocar áreas sensíveis:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Um pesquisador de segurança analisando defesa&lt;/li&gt;
&lt;li&gt;Um estudante fazendo uma pergunta de biologia&lt;/li&gt;
&lt;li&gt;Um desenvolvedor depurando comportamento que parece adversarial&lt;/li&gt;
&lt;li&gt;Uma equipe de produto testando limites de segurança&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;O roteamento é uma alternativa mais flexível. Em vez de encerrar a interação, o sistema delega a resposta ao Opus 4.8, cujo comportamento nesses tópicos é considerado mais apropriado para exposição ampla.&lt;/p&gt;

&lt;p&gt;O resultado prático é:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Tópicos comuns -&amp;gt; Fable 5 completo
Tópicos protegidos -&amp;gt; Opus 4.8
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Assim, o Fable 5 continua disponível para a maioria dos casos, enquanto capacidades de maior risco são tratadas por um caminho mais controlado.&lt;/p&gt;

&lt;p&gt;A Anthropic descreve sua abordagem geral na &lt;a href="https://www.anthropic.com/safety" rel="noopener noreferrer"&gt;página de segurança e escalonamento responsável&lt;/a&gt;. Os detalhes de lançamento estão no &lt;a href="https://www.anthropic.com/news/claude-fable-5-mythos-5" rel="noopener noreferrer"&gt;anúncio do Fable 5 e Mythos 5&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Fable 5 vs Mythos 5
&lt;/h2&gt;

&lt;p&gt;O Claude Mythos 5 é a contraparte do Fable 5 com salvaguardas suspensas em algumas áreas. Ele não é apresentado como uma arquitetura diferente ou como um modelo geralmente mais capaz; é o mesmo modelo subjacente com parte do roteamento removida.&lt;/p&gt;

&lt;p&gt;Essa diferença muda o perfil de risco. Por isso, o Mythos 5 não é público. O acesso é restrito a parceiros do Projeto Glasswing, incluindo ciberdefensores, provedores de infraestrutura e pesquisadores de biologia selecionados.&lt;/p&gt;

&lt;p&gt;Para uma comparação mais direta, veja &lt;a href="https://apidog.com/pt/blog/fable-5-vs-mythos-5?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Fable 5 vs Mythos 5&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Para a maioria dos desenvolvedores, a conclusão é simples:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Você usa &lt;code&gt;claude-fable-5&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;As salvaguardas fazem parte do modelo&lt;/li&gt;
&lt;li&gt;Não há flag pública para desativá-las&lt;/li&gt;
&lt;li&gt;O acesso ao Mythos 5 não é feito por configuração de API&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  O que implementar no seu app
&lt;/h2&gt;

&lt;p&gt;Para aplicações comuns, você não precisa alterar o código.&lt;/p&gt;

&lt;p&gt;Use normalmente:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"model"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"claude-fable-5"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"messages"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"role"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"user"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"content"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Explique como estruturar testes unitários para esta função."&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;As salvaguardas são automáticas e ficam do lado da Anthropic.&lt;/p&gt;

&lt;p&gt;Mas se seu produto atua em cibersegurança, biologia, química ou avaliação de modelos, trate o fallback como parte do design.&lt;/p&gt;

&lt;h3&gt;
  
  
  Checklist prático
&lt;/h3&gt;

&lt;p&gt;Antes de lançar, valide:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;[ ] Seus prompts principais foram testados com &lt;code&gt;claude-fable-5&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;[ ] Você tem casos de teste para domínios sensíveis, se aplicável&lt;/li&gt;
&lt;li&gt;[ ] Sua UX não depende de respostas extremamente específicas nesses tópicos&lt;/li&gt;
&lt;li&gt;[ ] Seus logs registram prompt, categoria e comportamento observado&lt;/li&gt;
&lt;li&gt;[ ] Sua equipe entende que o fallback não gera erro de API&lt;/li&gt;
&lt;li&gt;[ ] Seus testes cobrem mudanças de tom, profundidade e cautela&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Exemplo de matriz de avaliação
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;| ID do prompt | Categoria | Resultado esperado | Resultado observado | Ação |
|-------------|-----------|-------------------|---------------------|------|
| gen-001 | Geral | Resposta completa pelo Fable 5 | OK | Nenhuma |
| cyber-001 | Segurança defensiva | Explicação segura e útil | OK | Nenhuma |
| cyber-002 | Limite ofensivo | Resposta cautelosa/fallback | Diferente do padrão | Ajustar UX |
| bio-001 | Educação científica | Resposta educacional | OK | Nenhuma |
| distill-001 | Extração de modelo | Comportamento controlado | OK | Documentar |
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Custos
&lt;/h3&gt;

&lt;p&gt;O preço permanece inalterado: US$ 10 por milhão de tokens de entrada e US$ 50 por milhão de tokens de saída. O fallback para Opus 4.8 não muda sua faixa de preço.&lt;/p&gt;

&lt;p&gt;Para detalhes, consulte o guia de &lt;a href="https://apidog.com/pt/blog/claude-fable-5-pricing?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;preços do Claude Fable 5&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Como testar o fallback
&lt;/h2&gt;

&lt;p&gt;Uma forma prática de avaliar o comportamento é criar uma coleção de chamadas de API e executá-la repetidamente.&lt;/p&gt;

&lt;p&gt;Fluxo sugerido:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Separe prompts por categoria.&lt;/li&gt;
&lt;li&gt;Execute todos contra &lt;code&gt;claude-fable-5&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Registre as respostas.&lt;/li&gt;
&lt;li&gt;Compare tom, completude e restrições.&lt;/li&gt;
&lt;li&gt;Atualize seus prompts ou sua UX quando encontrar comportamento diferente.&lt;/li&gt;
&lt;li&gt;Repita antes de releases importantes.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Exemplo de registro simples:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"model"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"claude-fable-5"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"prompt_category"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"cybersecurity"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"prompt_id"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"cyber-002"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"response_quality"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"acceptable"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"behavior_notes"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Resposta mais cautelosa do que prompts gerais"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"requires_product_change"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;false&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;O &lt;a href="https://apidog.com/pt/blog/how-to-use-claude-opus-4-8-api?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;guia de uso da API do Opus 4.8&lt;/a&gt; também é útil, já que esse é o modelo usado no fallback para tópicos sensíveis.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusão
&lt;/h2&gt;

&lt;p&gt;As salvaguardas do Claude Fable 5 são uma camada automática de roteamento. Uma pequena parcela de solicitações sensíveis é enviada ao Claude Opus 4.8, enquanto o restante usa a capacidade completa do Fable 5.&lt;/p&gt;

&lt;p&gt;Para a maioria dos aplicativos, isso não exige configuração. Para produtos em cibersegurança, biologia, química ou avaliação de modelos, o melhor próximo passo é montar uma suíte de prompts, executar testes pela API e documentar onde o comportamento muda.&lt;/p&gt;

&lt;p&gt;Para continuar, veja:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://apidog.com/pt/blog/what-is-claude-fable-5?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;O que é o Claude Fable 5&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://platform.claude.com/docs/en/about-claude/models/overview" rel="noopener noreferrer"&gt;Visão geral dos modelos&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://apidog.com/pt/blog/how-to-use-claude-fable-5-api?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Guia da API do Fable 5&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Quando estiver pronto para testar prompts e comparar respostas, o &lt;a href="https://apidog.com?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Apidog&lt;/a&gt; pode ser usado para organizar e repetir suas chamadas de API.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Como Usar Claude Fable 5 com Claude Code</title>
      <dc:creator>Lucas</dc:creator>
      <pubDate>Wed, 10 Jun 2026 03:04:36 +0000</pubDate>
      <link>https://dev.to/lucas_ferreira/como-usar-claude-fable-5-com-claude-code-2108</link>
      <guid>https://dev.to/lucas_ferreira/como-usar-claude-fable-5-com-claude-code-2108</guid>
      <description>&lt;p&gt;A Anthropic lançou o Claude Fable 5 em 9 de junho de 2026 com foco em sessões de codificação longas e autônomas: exatamente o tipo de trabalho que muitos desenvolvedores tentam delegar ao Claude Code quando precisam alterar uma base de código inteira sem perder coerência. Se você já usa o CLI do Claude Code no dia a dia, habilitar o Fable 5 é basicamente uma troca de modelo — mas vale configurar, verificar e controlar custo antes de deixar o agente rodando por horas.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://apidog.com/?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation" class="crayons-btn crayons-btn--primary"&gt;Experimente o Apidog hoje&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;Se você quer entender o modelo antes de configurá-lo, leia &lt;a href="https://apidog.com/pt/blog/what-is-claude-fable-5?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;o que é o Claude Fable 5&lt;/a&gt;. Este guia foca no fluxo de trabalho prático com Claude Code.&lt;/p&gt;

&lt;h2&gt;
  
  
  TL;DR
&lt;/h2&gt;

&lt;p&gt;Atualize e autentique o Claude Code para a versão &lt;code&gt;v2.1.170&lt;/code&gt; ou posterior. Depois, selecione o Fable 5 de uma destas formas:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;/model fable
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;ou:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;/model claude-fable-5
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Você também pode iniciar uma sessão com:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;claude &lt;span class="nt"&gt;--model&lt;/span&gt; fable
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;ou definir a variável de ambiente:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;export &lt;/span&gt;&lt;span class="nv"&gt;ANTHROPIC_MODEL&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;claude-fable-5
claude
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Confirme sempre com:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;/status
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;O Fable 5 custa &lt;code&gt;$10/M&lt;/code&gt; tokens de entrada e &lt;code&gt;$50/M&lt;/code&gt; tokens de saída, ou seja, 2x o Opus 4.8. Use-o para tarefas longas e complexas, não como padrão para pequenas edições.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-188.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-188.png" alt="Um monitor de computador exibe um dashboard de desempenho ou métricas de um modelo de IA. O título do dashboard é 'Métricas de Desempenho do Claude Fable 5', com gráficos e números que indicam a eficiência e o custo do modelo. Pode haver uma seção destacando o custo por milhão de tokens de entrada e saída. As cores são suaves e profissionais, com texto claro e legível." width="800" height="883"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Quando usar o Claude Code com Fable 5
&lt;/h2&gt;

&lt;p&gt;O Claude Code é o agente de codificação via terminal da Anthropic. Ele pode editar arquivos, executar comandos, navegar pelo projeto e realizar tarefas em várias etapas dentro do seu repositório.&lt;/p&gt;

&lt;p&gt;O modelo escolhido define até onde esse agente consegue ir antes de perder contexto ou consistência. É aqui que o Fable 5 se diferencia.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-190.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-190.png" alt="A tela de um terminal mostrando o Claude Code em ação. O texto do terminal exibe mensagens de status e comandos sendo executados por um agente de IA. O Claude Code parece estar interagindo com uma base de código, talvez realizando uma tarefa de refatoração ou migração. O fundo do terminal é escuro com texto claro e o prompt da linha de comando visível." width="800" height="623"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Segundo a Anthropic, o Fable 5 foi criado para codificação autônoma de longo prazo. O modelo “mantém o foco em milhões de tokens em tarefas de longa duração e melhora suas saídas usando suas próprias anotações”.&lt;/p&gt;

&lt;p&gt;Na prática, isso o torna mais adequado para tarefas como:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;migrações grandes;&lt;/li&gt;
&lt;li&gt;refatorações em vários módulos;&lt;/li&gt;
&lt;li&gt;atualização de APIs em múltiplas rotas;&lt;/li&gt;
&lt;li&gt;modernização de padrões internos;&lt;/li&gt;
&lt;li&gt;alterações que exigem manter consistência em muitos arquivos;&lt;/li&gt;
&lt;li&gt;execução de planos longos com validações intermediárias.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A Anthropic cita um caso da Stripe durante os testes: o Fable 5 completou uma alteração em uma base de 50 milhões de linhas de Ruby em um único dia, trabalho que a empresa estimou que levaria mais de dois meses manualmente. O relato completo está no &lt;a href="https://www.anthropic.com/news/claude-fable-5-mythos-5" rel="noopener noreferrer"&gt;anúncio do Claude Fable 5&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;A contrapartida é custo. O Fable 5 custa:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;$10&lt;/code&gt; por milhão de tokens de entrada;&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;$50&lt;/code&gt; por milhão de tokens de saída.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Isso é o dobro do Opus 4.8, que custa &lt;code&gt;$5&lt;/code&gt; e &lt;code&gt;$25&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Portanto, não use Fable 5 para tudo. Uma regra prática:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Tarefa&lt;/th&gt;
&lt;th&gt;Modelo recomendado&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Ajuste pequeno em um arquivo&lt;/td&gt;
&lt;td&gt;Sonnet ou Opus 4.8&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Correção pontual de bug&lt;/td&gt;
&lt;td&gt;Sonnet ou Opus 4.8&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Refatoração local&lt;/td&gt;
&lt;td&gt;Opus 4.8&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Migração grande&lt;/td&gt;
&lt;td&gt;Fable 5&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Alteração em muitas rotas, schemas ou módulos&lt;/td&gt;
&lt;td&gt;Fable 5&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Sessão autônoma longa&lt;/td&gt;
&lt;td&gt;Fable 5&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Se você está comparando os modelos, veja também &lt;a href="https://apidog.com/pt/blog/claude-fable-5-vs-opus-4-8?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Claude Fable 5 vs Opus 4.8&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Se você já trocou modelos no Claude Code antes, o processo é o mesmo descrito em &lt;a href="https://apidog.com/pt/blog/glm-5-1-claude-code?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;executando GLM-5.1 com Claude Code&lt;/a&gt;. O que muda é o ID do modelo.&lt;/p&gt;

&lt;h2&gt;
  
  
  Pré-requisitos
&lt;/h2&gt;

&lt;p&gt;Antes de selecionar o Fable 5, valide estes pontos.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Atualize o Claude Code
&lt;/h3&gt;

&lt;p&gt;O Fable 5 requer Claude Code &lt;code&gt;v2.1.170&lt;/code&gt; ou posterior.&lt;/p&gt;

&lt;p&gt;Execute:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;claude update
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Depois confirme a versão:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;claude &lt;span class="nt"&gt;--version&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Se sua versão for anterior, o Fable 5 pode não aparecer no seletor de modelos.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Confirme acesso ao Fable 5
&lt;/h3&gt;

&lt;p&gt;Você precisa de uma conta Anthropic com acesso ao modelo. Segundo o conteúdo original, o Fable 5 está disponível na API da Anthropic e em planos como Max, Team Premium, Enterprise pay-as-you-go e similares.&lt;/p&gt;

&lt;p&gt;Importante: o Fable 5 não é o modelo padrão. Mesmo com acesso, você precisa selecioná-lo explicitamente.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Verifique faturamento ou assinatura
&lt;/h3&gt;

&lt;p&gt;Como o Fable 5 é pago por token, sua conta precisa de faturamento de API ativo ou um plano que inclua o modelo.&lt;/p&gt;

&lt;p&gt;Consulte os níveis atuais na &lt;a href="https://platform.claude.com/docs/en/about-claude/models/overview" rel="noopener noreferrer"&gt;visão geral dos modelos Anthropic&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Abra o terminal no repositório certo
&lt;/h3&gt;

&lt;p&gt;O Claude Code opera dentro de um diretório de projeto.&lt;/p&gt;

&lt;p&gt;Exemplo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;cd&lt;/span&gt; ~/projects/minha-api
claude
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  5. Atenção a ZDR
&lt;/h3&gt;

&lt;p&gt;O Fable 5 não está disponível sob retenção zero de dados, ou ZDR.&lt;/p&gt;

&lt;p&gt;Se sua organização usa Claude Code com ZDR ativado, o Fable 5 pode:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;não aparecer no seletor;&lt;/li&gt;
&lt;li&gt;aparecer desativado;&lt;/li&gt;
&lt;li&gt;não poder ser selecionado.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Isso é uma restrição de política, não um bug do CLI.&lt;/p&gt;

&lt;h2&gt;
  
  
  Como configurar o Claude Code para usar Claude Fable 5
&lt;/h2&gt;

&lt;p&gt;O Claude Code aceita quatro formas principais de escolher um modelo.&lt;/p&gt;

&lt;p&gt;A ordem de prioridade é:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;comando &lt;code&gt;/model&lt;/code&gt; dentro da sessão;&lt;/li&gt;
&lt;li&gt;flag &lt;code&gt;--model&lt;/code&gt; na inicialização;&lt;/li&gt;
&lt;li&gt;variável de ambiente &lt;code&gt;ANTHROPIC_MODEL&lt;/code&gt;;&lt;/li&gt;
&lt;li&gt;campo &lt;code&gt;model&lt;/code&gt; no arquivo de configurações.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Você pode usar:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;fable
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;ou:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;claude-fable-5
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;O alias &lt;code&gt;fable&lt;/code&gt; aponta para a versão Fable recomendada para seu provedor e pode ser atualizado com o tempo. O ID completo &lt;code&gt;claude-fable-5&lt;/code&gt; fixa o modelo exato.&lt;/p&gt;

&lt;p&gt;A referência oficial está na documentação de &lt;a href="https://code.claude.com/docs/en/model-config" rel="noopener noreferrer"&gt;configuração de modelo do Claude Code&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Opção 1: trocar o modelo dentro da sessão com &lt;code&gt;/model&lt;/code&gt;
&lt;/h2&gt;

&lt;p&gt;Dentro de uma sessão do Claude Code, execute:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;/model fable
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Ou use o ID completo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;/model claude-fable-5
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Você também pode abrir o seletor interativo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;/model
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Depois selecione o Fable 5 na lista.&lt;/p&gt;

&lt;p&gt;Nas versões recentes, escolher um modelo com &lt;code&gt;/model&lt;/code&gt; pode salvá-lo como padrão para novas sessões, escrevendo o campo &lt;code&gt;model&lt;/code&gt; nas configurações do usuário.&lt;/p&gt;

&lt;p&gt;No seletor:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;Enter&lt;/code&gt;: troca para o modelo e salva como padrão;&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;s&lt;/code&gt;: troca apenas para a sessão atual.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Se você digitar diretamente:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;/model fable
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;o comportamento é equivalente a selecionar e salvar. Sessões futuras iniciarão com Fable 5 até você mudar o modelo novamente.&lt;/p&gt;

&lt;h3&gt;
  
  
  Cuidado ao trocar no meio de uma conversa
&lt;/h3&gt;

&lt;p&gt;Se a sessão já tiver histórico, o Claude Code pode pedir confirmação antes de trocar.&lt;/p&gt;

&lt;p&gt;Motivo: a próxima resposta reprocessa o histórico completo sem o mesmo contexto em cache. Isso pode gerar um custo único adicional.&lt;/p&gt;

&lt;p&gt;Para sessões caras, prefira selecionar o modelo antes de começar.&lt;/p&gt;

&lt;h2&gt;
  
  
  Opção 2: iniciar uma sessão com &lt;code&gt;--model&lt;/code&gt;
&lt;/h2&gt;

&lt;p&gt;Para usar Fable 5 em uma sessão específica sem mudar o padrão salvo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;claude &lt;span class="nt"&gt;--model&lt;/span&gt; fable
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Ou:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;claude &lt;span class="nt"&gt;--model&lt;/span&gt; claude-fable-5
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Essa é a melhor opção quando você quer rodar modelos diferentes em terminais diferentes.&lt;/p&gt;

&lt;p&gt;Exemplo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Terminal 1: tarefa longa&lt;/span&gt;
claude &lt;span class="nt"&gt;--model&lt;/span&gt; fable

&lt;span class="c"&gt;# Terminal 2: correções menores&lt;/span&gt;
claude &lt;span class="nt"&gt;--model&lt;/span&gt; opus
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A flag &lt;code&gt;--model&lt;/code&gt; vale apenas para a sessão iniciada com ela.&lt;/p&gt;

&lt;h2&gt;
  
  
  Opção 3: definir &lt;code&gt;ANTHROPIC_MODEL&lt;/code&gt;
&lt;/h2&gt;

&lt;p&gt;Se você quer iniciar o Claude Code com Fable 5 a partir do shell:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;export &lt;/span&gt;&lt;span class="nv"&gt;ANTHROPIC_MODEL&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;claude-fable-5
claude
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Ou usando o alias:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;export &lt;/span&gt;&lt;span class="nv"&gt;ANTHROPIC_MODEL&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;fable
claude
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Isso afeta apenas sessões iniciadas nesse ambiente.&lt;/p&gt;

&lt;p&gt;Se você também definir &lt;code&gt;ANTHROPIC_MODEL&lt;/code&gt; dentro de &lt;code&gt;settings.json&lt;/code&gt;, a variável exportada no shell vence, porque ela já existe antes de o Claude Code carregar o bloco &lt;code&gt;env&lt;/code&gt; das configurações.&lt;/p&gt;

&lt;h2&gt;
  
  
  Opção 4: fixar o modelo em &lt;code&gt;settings.json&lt;/code&gt;
&lt;/h2&gt;

&lt;p&gt;Para tornar o Fable 5 o padrão persistente, edite o arquivo de configurações.&lt;/p&gt;

&lt;p&gt;Configuração global do usuário:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;~/.claude/settings.json
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Configuração do projeto:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;.claude/settings.json
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Configuração local do projeto, aplicada apenas a você:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;.claude/settings.local.json
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Exemplo mínimo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"model"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"claude-fable-5"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Ou usando o alias:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"model"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"fable"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Configurações de projeto e configurações gerenciadas podem ter precedência. Isso é útil em equipes que querem padronizar o modelo usado em um repositório.&lt;/p&gt;

&lt;p&gt;Exemplo de configuração de projeto:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"model"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"fable"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Se um colega escolher outro modelo com &lt;code&gt;/model&lt;/code&gt;, a configuração do projeto poderá ser reaplicada quando ele reiniciar o Claude Code.&lt;/p&gt;

&lt;h2&gt;
  
  
  Como verificar se você está usando Fable 5
&lt;/h2&gt;

&lt;p&gt;Não presuma que a troca funcionou. Antes de iniciar uma execução longa, confirme o modelo ativo.&lt;/p&gt;

&lt;p&gt;Dentro da sessão, execute:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;/status
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;O comando mostra o modelo em uso junto com informações da conta.&lt;/p&gt;

&lt;p&gt;Se você usa uma &lt;a href="https://code.claude.com/docs/en/statusline" rel="noopener noreferrer"&gt;linha de status&lt;/a&gt;, o modelo ativo também pode aparecer continuamente no terminal.&lt;/p&gt;

&lt;h2&gt;
  
  
  Troubleshooting: selecionei Fable 5, mas &lt;code&gt;/status&lt;/code&gt; mostra outro modelo
&lt;/h2&gt;

&lt;p&gt;Se &lt;code&gt;/status&lt;/code&gt; mostrar Opus 4.8 ou outro modelo, verifique estes pontos.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Configuração de projeto sobrescrevendo sua escolha
&lt;/h3&gt;

&lt;p&gt;Procure arquivos como:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;.claude/settings.json
.claude/settings.local.json
~/.claude/settings.json
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Verifique se algum deles contém:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"model"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"opus"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;ou outro valor.&lt;/p&gt;

&lt;p&gt;Se a inicialização vier de uma configuração de projeto ou gerenciada, o cabeçalho de inicialização normalmente informa qual arquivo definiu o modelo.&lt;/p&gt;

&lt;p&gt;Você pode sobrescrever apenas a sessão atual com:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;/model fable
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Mas, ao reiniciar, a configuração do projeto pode voltar a vencer.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Fallback automático para Opus 4.8
&lt;/h3&gt;

&lt;p&gt;O Fable 5 executa classificadores de segurança para conteúdo de segurança cibernética e biologia. Quando uma requisição é sinalizada, o Claude Code pode executá-la novamente no modelo Opus padrão, que na API da Anthropic é o Opus 4.8, e mostrar um aviso na transcrição.&lt;/p&gt;

&lt;p&gt;Isso significa que, mesmo depois de selecionar Fable 5, uma requisição individual pode cair para Opus 4.8.&lt;/p&gt;

&lt;p&gt;Segundo a Anthropic, mais de 95% das sessões Fable não envolvem fallback. Para código de aplicação comum, isso deve ser raro.&lt;/p&gt;

&lt;p&gt;Para voltar ao Fable 5 depois de um fallback:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;/model fable
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Fluxo recomendado para sessões longas
&lt;/h2&gt;

&lt;p&gt;Para aproveitar o Fable 5 sem perder controle de custo e qualidade, trate a sessão como uma execução planejada.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Comece com escopo claro
&lt;/h3&gt;

&lt;p&gt;Evite prompts vagos como:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Refatore esta API.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Prefira algo específico:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Migre todos os endpoints de usuários de callbacks para async/await.

Regras:
- mantenha os contratos HTTP existentes;
- não altere nomes de rotas;
- atualize testes relacionados;
- atualize a especificação OpenAPI se existir;
- rode a suíte de testes ao final;
- liste arquivos alterados e riscos.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  2. Peça um plano antes das edições
&lt;/h3&gt;

&lt;p&gt;Use um prompt como:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Antes de editar arquivos, analise o repositório e proponha um plano de migração em etapas. 
Não modifique nada ainda.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Depois revise o plano e só então autorize:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Execute o plano. Faça commits lógicos ou agrupe as alterações por etapa.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  3. Divida tarefas grandes
&lt;/h3&gt;

&lt;p&gt;Mesmo com Fable 5, uma execução longa fica mais segura com checkpoints.&lt;/p&gt;

&lt;p&gt;Exemplo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Execute apenas a etapa 1: atualizar a camada de serviço.
Depois pare e mostre um resumo das alterações antes de seguir para controllers e testes.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  4. Exija validações
&lt;/h3&gt;

&lt;p&gt;Peça para o Claude Code rodar comandos concretos:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Depois das alterações, rode:
- npm test
- npm run lint
- npm run typecheck

Se algum comando falhar, corrija antes de finalizar.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Ajuste os comandos conforme seu projeto:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;pytest
go &lt;span class="nb"&gt;test&lt;/span&gt; ./...
mvn &lt;span class="nb"&gt;test
&lt;/span&gt;cargo &lt;span class="nb"&gt;test&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  5. Revise diffs antes de aceitar
&lt;/h3&gt;

&lt;p&gt;Ao final, revise:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git diff
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;ou:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git status
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Para tarefas muito grandes, peça um resumo técnico:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Liste:
- arquivos alterados;
- comportamento modificado;
- testes executados;
- riscos conhecidos;
- próximos passos recomendados.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Emparelhando Claude Code com Apidog
&lt;/h2&gt;

&lt;p&gt;Quando o Claude Code termina de escrever ou alterar uma API, você ainda precisa confirmar se os endpoints se comportam corretamente. Um diff pode parecer certo, mas a API pode retornar status, headers ou payloads incompatíveis com o contrato.&lt;/p&gt;

&lt;p&gt;É aqui que o &lt;a href="https://apidog.com?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Apidog&lt;/a&gt; entra no fluxo: Claude Code altera o código; Apidog valida o comportamento da API.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-189.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.apidog.com%2Fblog-next%2F2026%2F06%2Fimage-189.png" alt="A tela de um computador mostrando o Apidog, uma plataforma de colaboração e gerenciamento de API. O Apidog exibe várias requisições e respostas de API em um ambiente de desenvolvimento. O layout inclui um explorador de projetos à esquerda, uma área principal para criar e testar APIs, e painéis para visualizar detalhes de requisições e respostas. Há gráficos e dados mostrando o desempenho e a validação das APIs." width="799" height="530"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Use este fluxo após uma sessão do Claude Code que alterou sua API.&lt;/p&gt;

&lt;h2&gt;
  
  
  Passo 1: peça ao Claude Code para atualizar a especificação OpenAPI
&lt;/h2&gt;

&lt;p&gt;Se o projeto já tem OpenAPI, peça para atualizar junto com a implementação:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Atualize a especificação OpenAPI para refletir as rotas alteradas.
Garanta que métodos, parâmetros, status codes e schemas estejam sincronizados com o código.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Se o projeto não tem uma especificação, peça para gerar uma para as rotas modificadas:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Gere uma especificação OpenAPI apenas para os endpoints alterados nesta sessão.
Inclua parâmetros, exemplos de request, responses e schemas.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Passo 2: importe a especificação no Apidog
&lt;/h2&gt;

&lt;p&gt;No Apidog:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;crie ou abra um projeto;&lt;/li&gt;
&lt;li&gt;importe o arquivo OpenAPI;&lt;/li&gt;
&lt;li&gt;revise os endpoints gerados;&lt;/li&gt;
&lt;li&gt;configure o ambiente local ou staging.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;O Apidog transforma paths, métodos, parâmetros e schemas em requisições executáveis.&lt;/p&gt;

&lt;h2&gt;
  
  
  Passo 3: execute os endpoints alterados
&lt;/h2&gt;

&lt;p&gt;Aponte para seu servidor local ou staging e execute as requisições.&lt;/p&gt;

&lt;p&gt;Verifique:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;status code;&lt;/li&gt;
&lt;li&gt;headers;&lt;/li&gt;
&lt;li&gt;body;&lt;/li&gt;
&lt;li&gt;campos obrigatórios;&lt;/li&gt;
&lt;li&gt;formatos de data;&lt;/li&gt;
&lt;li&gt;mensagens de erro;&lt;/li&gt;
&lt;li&gt;paginação;&lt;/li&gt;
&lt;li&gt;autenticação;&lt;/li&gt;
&lt;li&gt;compatibilidade com o schema.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Passo 4: valide respostas contra o schema
&lt;/h2&gt;

&lt;p&gt;Use o schema importado para detectar divergências entre contrato e implementação.&lt;/p&gt;

&lt;p&gt;Exemplos de problemas que isso ajuda a encontrar:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;campo obrigatório ausente;&lt;/li&gt;
&lt;li&gt;tipo errado, como &lt;code&gt;string&lt;/code&gt; no lugar de &lt;code&gt;number&lt;/code&gt;;&lt;/li&gt;
&lt;li&gt;status code diferente do documentado;&lt;/li&gt;
&lt;li&gt;resposta de erro sem schema;&lt;/li&gt;
&lt;li&gt;payload novo não refletido na OpenAPI.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Esse tipo de desvio é comum depois de alterações automatizadas em grande escala.&lt;/p&gt;

&lt;h2&gt;
  
  
  Passo 5: salve as requisições como testes de regressão
&lt;/h2&gt;

&lt;p&gt;Depois que os endpoints passarem, salve as requisições como casos de teste.&lt;/p&gt;

&lt;p&gt;Na próxima alteração feita pelo Claude Code — ou por qualquer pessoa da equipe — você poderá reexecutar o conjunto e validar rapidamente se algo quebrou.&lt;/p&gt;

&lt;p&gt;Esse emparelhamento importa ainda mais com modelos de longo prazo. Quanto maior a alteração autônoma, maior a área de superfície a validar. Um conjunto executável no &lt;a href="https://apidog.com?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Apidog&lt;/a&gt; transforma “o agente terminou” em “os endpoints foram verificados”.&lt;/p&gt;

&lt;p&gt;Você pode &lt;a href="https://apidog.com/download?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;baixar o Apidog&lt;/a&gt; e importar uma especificação existente em poucos minutos.&lt;/p&gt;

&lt;h2&gt;
  
  
  Checklist final
&lt;/h2&gt;

&lt;p&gt;Antes de rodar uma sessão longa com Fable 5:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;[ ] Claude Code está em &lt;code&gt;v2.1.170&lt;/code&gt; ou posterior;&lt;/li&gt;
&lt;li&gt;[ ] sua conta tem acesso ao Fable 5;&lt;/li&gt;
&lt;li&gt;[ ] faturamento ou plano está ativo;&lt;/li&gt;
&lt;li&gt;[ ] você está no repositório correto;&lt;/li&gt;
&lt;li&gt;[ ] o modelo foi definido com &lt;code&gt;/model&lt;/code&gt;, &lt;code&gt;--model&lt;/code&gt;, &lt;code&gt;ANTHROPIC_MODEL&lt;/code&gt; ou &lt;code&gt;settings.json&lt;/code&gt;;&lt;/li&gt;
&lt;li&gt;[ ] &lt;code&gt;/status&lt;/code&gt; confirma Fable 5;&lt;/li&gt;
&lt;li&gt;[ ] a tarefa tem escopo claro;&lt;/li&gt;
&lt;li&gt;[ ] há comandos de teste definidos;&lt;/li&gt;
&lt;li&gt;[ ] você sabe o custo esperado da execução;&lt;/li&gt;
&lt;li&gt;[ ] endpoints alterados serão validados depois.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Use o Fable 5 quando a tarefa justificar uma sessão autônoma longa. Para mudanças pequenas, continue usando modelos mais baratos. Para migrações e refatorações grandes, configure o modelo explicitamente, confirme com &lt;code&gt;/status&lt;/code&gt;, execute com checkpoints e valide o resultado com testes e ferramentas de API.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Claude Fable 5 Benchmarks: O que os números dizem</title>
      <dc:creator>Lucas</dc:creator>
      <pubDate>Wed, 10 Jun 2026 02:55:35 +0000</pubDate>
      <link>https://dev.to/lucas_ferreira/claude-fable-5-benchmarks-o-que-os-numeros-dizem-6fg</link>
      <guid>https://dev.to/lucas_ferreira/claude-fable-5-benchmarks-o-que-os-numeros-dizem-6fg</guid>
      <description>&lt;p&gt;Quando a Anthropic lançou o Claude Fable 5 em 9 de junho de 2026, ela o posicionou como estado da arte em quase todos os benchmarks relatados. Há uma ressalva importante: o anúncio trouxe principalmente &lt;strong&gt;posicionamentos&lt;/strong&gt; em rankings, não tabelas completas com pontuações copiáveis. Portanto, use estes resultados como sinais direcionais e valide o modelo com seus próprios prompts antes de decidir por adoção. Para uma comparação mais ampla, veja também &lt;a href="https://apidog.com/pt/blog/claude-opus-4-8-vs-gpt-5-5-vs-gemini-3-5?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Opus 4.8 contra GPT-5.5 e Gemini 3.5&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://apidog.com/?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation" class="crayons-btn crayons-btn--primary"&gt;Experimente o Apidog hoje&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;O Fable 5 está disponível por US$ 10 por milhão de tokens de entrada e US$ 50 por milhão de tokens de saída, sob o ID de modelo &lt;code&gt;claude-fable-5&lt;/code&gt;. Ele fica acima do Opus 4.8 em capacidade e preço, e a Anthropic o apresenta como o Claude publicamente disponível mais forte para engenharia de software, trabalho de conhecimento, visão computacional e pesquisa científica.&lt;/p&gt;

&lt;h2&gt;
  
  
  Em resumo
&lt;/h2&gt;

&lt;p&gt;O Claude Fable 5 aparece em primeiro lugar entre modelos de fronteira no FrontierCode e no FrontierBench, ambos da Cognition. Ele também é descrito como estado da arte no CursorBench e como o modelo com maior pontuação no Finance Benchmark da Hebbia.&lt;/p&gt;

&lt;p&gt;Na prática, o sinal mais relevante é este: o Fable 5 parece forte em tarefas longas, multi-etapas e com muito contexto. Ainda assim, como as pontuações públicas exatas são limitadas, trate os rankings como direcionais, não como prova final de desempenho no seu caso de uso.&lt;/p&gt;

&lt;h2&gt;
  
  
  O que o resultado principal significa
&lt;/h2&gt;

&lt;p&gt;A Anthropic afirma que o Fable 5 é estado da arte em quase todos os benchmarks executados, cobrindo:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;engenharia de software;&lt;/li&gt;
&lt;li&gt;trabalho de conhecimento;&lt;/li&gt;
&lt;li&gt;visão computacional;&lt;/li&gt;
&lt;li&gt;pesquisa científica;&lt;/li&gt;
&lt;li&gt;tarefas autônomas de longa duração.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwctmw38yvk6s5wk46g6j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwctmw38yvk6s5wk46g6j.png" alt="Gráfico de benchmark do Claude Fable 5" width="800" height="883"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Essa afirmação não significa que o Fable 5 vença todos os testes por grande margem. Também não significa que todos os resultados já foram reproduzidos por laboratórios independentes. O ponto mais útil é a consistência: um modelo que fica perto do topo em codificação, documentos, finanças, visão e ciência tende a ser mais interessante para aplicações reais do que um modelo excelente em apenas um benchmark isolado.&lt;/p&gt;

&lt;p&gt;Se você está avaliando se vale pagar mais pelo Fable 5, olhe menos para um gráfico específico e mais para a amplitude dos resultados. Para entender o modelo em detalhes, consulte &lt;a href="https://apidog.com/pt/blog/what-is-claude-fable-5?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;o que é o Claude Fable 5&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Outro ponto recorrente é o trabalho de longo prazo. A Anthropic afirma que o Fable 5 “mantém o foco em milhões de tokens em tarefas de longa duração” e trabalha autonomamente por mais tempo do que qualquer Claude anterior. Isso é importante porque muitos benchmarks modernos não medem apenas uma resposta correta, mas a capacidade de manter plano, contexto e consistência em várias etapas.&lt;/p&gt;

&lt;h2&gt;
  
  
  Benchmarks de codificação: FrontierCode e CursorBench
&lt;/h2&gt;

&lt;p&gt;A codificação é onde a história do Fable 5 fica mais concreta.&lt;/p&gt;

&lt;p&gt;No &lt;strong&gt;FrontierCode&lt;/strong&gt;, avaliação de codificação da &lt;a href="https://cognition.ai" rel="noopener noreferrer"&gt;Cognition&lt;/a&gt;, a Anthropic relata que o Fable 5 é o modelo de fronteira com maior pontuação. Mais importante: ele mantém essa liderança mesmo com &lt;strong&gt;esforço médio&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Esse detalhe importa. Em modelos de fronteira, “esforço” geralmente está ligado ao quanto de computação de inferência, raciocínio ou tentativas o modelo usa. Um modelo que lidera com esforço médio pode ser mais útil no dia a dia do que um modelo que só alcança bons resultados em configurações caras.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fql6ma0ng9kn0s141qehu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fql6ma0ng9kn0s141qehu.png" alt="Benchmark FrontierCode do Claude Fable 5" width="799" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;No &lt;strong&gt;CursorBench&lt;/strong&gt;, a Anthropic descreve o Fable 5 como estado da arte e enfatiza que o modelo abriu uma classe de problemas de longo prazo que estavam fora do alcance de modelos anteriores. Esse benchmark é relevante para fluxos reais de engenharia, porque avalia tarefas com múltiplos arquivos e múltiplas etapas, não apenas geração de funções isoladas.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feibgjsqgxubfrsedlvdk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feibgjsqgxubfrsedlvdk.png" alt="Benchmark CursorBench do Claude Fable 5" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A leitura prática para desenvolvedores:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;se você usa agentes de codificação para editar vários arquivos;&lt;/li&gt;
&lt;li&gt;se o fluxo envolve executar testes, corrigir falhas e iterar;&lt;/li&gt;
&lt;li&gt;se o projeto exige manter contexto por muito tempo;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;então os resultados em FrontierCode e CursorBench são mais relevantes do que benchmarks simples de autocomplete.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conhecimento e finanças: Finance Benchmark da Hebbia
&lt;/h2&gt;

&lt;p&gt;Fora do código, o resultado mais claro vem do &lt;strong&gt;Finance Benchmark&lt;/strong&gt;, desenvolvido pela &lt;a href="https://www.hebbia.com" rel="noopener noreferrer"&gt;Hebbia&lt;/a&gt;, empresa focada em IA para fluxos financeiros e jurídicos com muitos documentos.&lt;/p&gt;

&lt;p&gt;Segundo a Anthropic, o Fable 5 alcança a maior pontuação entre os modelos avaliados nesse benchmark. Os ganhos aparecem principalmente em:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;raciocínio sobre documentos;&lt;/li&gt;
&lt;li&gt;interpretação de gráficos;&lt;/li&gt;
&lt;li&gt;leitura de tabelas.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Isso é relevante porque análise financeira raramente é uma pergunta simples. Normalmente envolve ler PDFs longos, localizar números em páginas diferentes, comparar texto com gráficos e extrair valores corretos de tabelas densas.&lt;/p&gt;

&lt;p&gt;Também há um componente de visão computacional. Em documentos reais, tabelas e gráficos podem aparecer como imagens, layouts mistos ou PDFs mal estruturados. Um bom resultado nesse benchmark sugere que o Fable 5 pode ser útil em pipelines onde a entrada não é um JSON limpo, mas um relatório financeiro, contrato, extrato ou apresentação.&lt;/p&gt;

&lt;p&gt;Casos de uso prováveis:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;extração de dados de PDFs;&lt;/li&gt;
&lt;li&gt;análise de contratos;&lt;/li&gt;
&lt;li&gt;leitura de relatórios financeiros;&lt;/li&gt;
&lt;li&gt;reconciliação de tabelas e gráficos;&lt;/li&gt;
&lt;li&gt;workflows internos de due diligence.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Ainda assim, valide com seus próprios documentos antes de confiar em qualquer benchmark.&lt;/p&gt;

&lt;h2&gt;
  
  
  Raciocínio de longo prazo: FrontierBench da Cognition
&lt;/h2&gt;

&lt;p&gt;A segunda avaliação da Cognition, o &lt;strong&gt;FrontierBench&lt;/strong&gt;, é onde a Anthropic posiciona o Fable 5 como modelo forte para autonomia de longa duração.&lt;/p&gt;

&lt;p&gt;A ideia central é medir se o modelo consegue manter objetivo, plano e contexto ao longo de uma tarefa grande. Isso é diferente de responder a uma pergunta isolada. Em tarefas longas, o modelo precisa:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;lembrar decisões anteriores;&lt;/li&gt;
&lt;li&gt;manter consistência;&lt;/li&gt;
&lt;li&gt;não se perder no próprio raciocínio intermediário;&lt;/li&gt;
&lt;li&gt;continuar avançando mesmo com muitos tokens de contexto.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A Anthropic relata o Fable 5 como o modelo com maior pontuação no FrontierBench e conecta esse resultado à capacidade de “manter foco em milhões de tokens”.&lt;/p&gt;

&lt;p&gt;Esse também é o tipo de resultado mais difícil de verificar externamente. Avaliar tarefas longas exige definir como pontuar progresso parcial, como detectar desvios e como evitar que o modelo “pareça ocupado” sem realmente avançar. Portanto, trate o FrontierBench como um sinal forte de direção, mas ainda dependente de metodologia.&lt;/p&gt;

&lt;p&gt;Em conjunto com o CursorBench, a mensagem é consistente: a vantagem do Fable 5 parece estar menos em responder uma pergunta difícil e mais em não desmoronar durante uma tarefa longa.&lt;/p&gt;

&lt;h2&gt;
  
  
  Evidências de uso real além dos benchmarks
&lt;/h2&gt;

&lt;p&gt;Benchmarks ajudam, mas implantações reais podem ser mais informativas. A Anthropic destacou dois exemplos.&lt;/p&gt;

&lt;p&gt;O primeiro é uma &lt;strong&gt;migração de base de código da Stripe&lt;/strong&gt;. Segundo a Anthropic, o Fable 5 migrou uma base Ruby de 50 milhões de linhas para a Stripe em um único dia, trabalho que a equipe estimava levar dois meses ou mais.&lt;/p&gt;

&lt;p&gt;Esse caso é relevante porque uma migração grande não é apenas um problema de “inteligência”. É uma tarefa repetitiva, extensa e com muito contexto, espalhada por muitos arquivos. Pequenas inconsistências podem quebrar builds ou testes. O sinal principal é a capacidade de sustentar alterações corretas e consistentes em escala.&lt;/p&gt;

&lt;p&gt;O segundo exemplo é um &lt;strong&gt;teste com Slay the Spire&lt;/strong&gt;, usado para avaliar memória. Com memória de arquivo persistente habilitada, o Fable 5 mostrou melhoria de 3 vezes em relação ao Opus 4.8 no jogo.&lt;/p&gt;

&lt;p&gt;O ponto técnico é que o modelo podia escrever notas em arquivos e relê-las em execuções posteriores, acumulando estratégia. Isso sugere que o Fable 5 pode se beneficiar bastante quando conectado a ferramentas e memória durável, em vez de operar sempre do zero.&lt;/p&gt;

&lt;p&gt;Para agentes autônomos, isso importa. Se o seu sistema permite que o modelo use arquivos, banco de dados, logs, histórico ou memória persistente, o comportamento real pode ser melhor do que o observado em prompts isolados.&lt;/p&gt;

&lt;h2&gt;
  
  
  Como interpretar esses resultados
&lt;/h2&gt;

&lt;p&gt;Use os benchmarks como entrada para decisão, não como decisão final.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Os donos dos benchmarks são parceiros
&lt;/h3&gt;

&lt;p&gt;FrontierCode e FrontierBench vêm da Cognition. O Finance Benchmark vem da Hebbia. São organizações relevantes, mas fazem parte da narrativa de lançamento. Isso não invalida os resultados, mas reforça a necessidade de reprodução independente.&lt;/p&gt;

&lt;p&gt;Para contexto adicional, compare com análises neutras, como &lt;a href="https://apidog.com/pt/blog/minimax-m3-vs-opus-4-7-vs-gpt-5-5?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;MiniMax M3 versus Opus 4.7 versus GPT-5.5&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Configurações de “esforço” mudam o resultado
&lt;/h3&gt;

&lt;p&gt;O resultado do FrontierCode foi relatado com esforço médio, o que é positivo. Mas esforço é uma variável importante.&lt;/p&gt;

&lt;p&gt;Ao comparar modelos, verifique:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;nível de esforço;&lt;/li&gt;
&lt;li&gt;número de tentativas;&lt;/li&gt;
&lt;li&gt;temperatura;&lt;/li&gt;
&lt;li&gt;limite de tokens;&lt;/li&gt;
&lt;li&gt;ferramentas disponíveis;&lt;/li&gt;
&lt;li&gt;se houve retry automático.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Sem isso, duas pontuações podem não ser comparáveis.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. As pontuações públicas são limitadas
&lt;/h3&gt;

&lt;p&gt;O anúncio da Anthropic relatou principalmente rankings e gráficos em imagem. Por isso, ainda há pouca informação pública em formato tabular verificável.&lt;/p&gt;

&lt;p&gt;Quando Cognition e Hebbia publicarem tabelas próprias, prefira essas fontes.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Ranking não é margem
&lt;/h3&gt;

&lt;p&gt;“Maior pontuação” informa a posição, não a diferença. Um modelo pode liderar por pouco ou por muito. Sem a margem, é difícil decidir se o ganho justifica o preço.&lt;/p&gt;

&lt;p&gt;Antes de integrar, confirme IDs, preços e limites atuais na &lt;a href="https://platform.claude.com/docs/en/about-claude/models/overview" rel="noopener noreferrer"&gt;visão geral dos modelos&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Execute seu próprio benchmark com o Apidog
&lt;/h2&gt;

&lt;p&gt;O benchmark mais confiável é aquele que usa seus prompts, seus dados e sua definição de “bom”.&lt;/p&gt;

&lt;p&gt;Você não precisa montar uma infraestrutura complexa. Uma avaliação simples já ajuda a comparar Fable 5 com Opus 4.8 em três dimensões:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;qualidade da saída;&lt;/li&gt;
&lt;li&gt;latência;&lt;/li&gt;
&lt;li&gt;custo por chamada.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5vbm4mndyt3w87s3ib8u.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5vbm4mndyt3w87s3ib8u.png" alt="Benchmark de API com Apidog" width="799" height="530"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Abaixo está um fluxo simples usando o &lt;a href="https://apidog.com?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Apidog&lt;/a&gt;, uma plataforma para projetar, testar e documentar APIs.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Crie uma requisição POST para a API do Claude
&lt;/h3&gt;

&lt;p&gt;No &lt;a href="https://apidog.com?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Apidog&lt;/a&gt;, crie uma requisição reutilizável:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight http"&gt;&lt;code&gt;&lt;span class="err"&gt;POST https://api.anthropic.com/v1/messages
x-api-key: {{ANTHROPIC_API_KEY}}
anthropic-version: 2023-06-01
content-type: application/json
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Use uma variável de ambiente para &lt;code&gt;ANTHROPIC_API_KEY&lt;/code&gt;, em vez de colar a chave diretamente na requisição.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Use um prompt parecido com seu caso real
&lt;/h3&gt;

&lt;p&gt;Evite prompts artificiais. Escolha algo que represente o trabalho que você espera automatizar.&lt;/p&gt;

&lt;p&gt;Exemplo para codificação:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"model"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"claude-fable-5"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"max_tokens"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;2048&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"messages"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"role"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"user"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"content"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Refatorar este método Ruby para usar argumentos de palavra-chave e adicionar testes RSpec. Retorne apenas o código atualizado:&lt;/span&gt;&lt;span class="se"&gt;\n\n&lt;/span&gt;&lt;span class="s2"&gt;def charge(amount, currency, customer_id, idempotency_key)&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s2"&gt;  # ...&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s2"&gt;end"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  3. Execute contra o Fable 5
&lt;/h3&gt;

&lt;p&gt;Rode a chamada com:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="nl"&gt;"model"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"claude-fable-5"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Salve a resposta.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Duplique a requisição e troque o modelo
&lt;/h3&gt;

&lt;p&gt;Agora duplique a requisição e altere apenas o campo &lt;code&gt;model&lt;/code&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="nl"&gt;"model"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"claude-opus-4-8"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Mantenha o mesmo prompt, &lt;code&gt;max_tokens&lt;/code&gt; e demais parâmetros. Assim, qualquer diferença relevante vem do modelo, não da configuração.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. Compare qualidade, latência e custo
&lt;/h3&gt;

&lt;p&gt;Avalie cada resposta com uma rubrica simples.&lt;/p&gt;

&lt;p&gt;Exemplo:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Critério&lt;/th&gt;
&lt;th&gt;Pergunta&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Correção&lt;/td&gt;
&lt;td&gt;O código compila?&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Cobertura&lt;/td&gt;
&lt;td&gt;Os testes cobrem casos importantes?&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Segurança&lt;/td&gt;
&lt;td&gt;A resposta evita mudanças perigosas?&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Manutenção&lt;/td&gt;
&lt;td&gt;O código ficou mais claro?&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Aderência&lt;/td&gt;
&lt;td&gt;O modelo seguiu exatamente a instrução?&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Depois, compare os sinais operacionais:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Latência:&lt;/strong&gt; o Apidog mostra o tempo de resposta da requisição.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tokens:&lt;/strong&gt; a resposta do Claude inclui &lt;code&gt;usage.input_tokens&lt;/code&gt; e &lt;code&gt;usage.output_tokens&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Custo:&lt;/strong&gt; multiplique os tokens pelas taxas publicadas.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Para o Fable 5:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;custo_entrada = input_tokens / 1_000_000 * 10
custo_saida   = output_tokens / 1_000_000 * 50
custo_total   = custo_entrada + custo_saida
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Para o Opus 4.8, usando os valores citados no artigo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;custo_entrada = input_tokens / 1_000_000 * 5
custo_saida   = output_tokens / 1_000_000 * 25
custo_total   = custo_entrada + custo_saida
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  6. Repita com 5 a 10 prompts reais
&lt;/h3&gt;

&lt;p&gt;Um único prompt não prova muita coisa. Monte um conjunto pequeno com tarefas representativas, por exemplo:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;refatoração de código;&lt;/li&gt;
&lt;li&gt;correção de bug;&lt;/li&gt;
&lt;li&gt;geração de testes;&lt;/li&gt;
&lt;li&gt;leitura de documento;&lt;/li&gt;
&lt;li&gt;extração de dados de tabela;&lt;/li&gt;
&lt;li&gt;resumo técnico;&lt;/li&gt;
&lt;li&gt;planejamento multi-etapas.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Depois compare:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;modelo vencedor = melhor qualidade aceitável / custo e latência toleráveis
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Esse benchmark caseiro não substitui avaliações públicas, mas responde à pergunta que realmente importa: o Fable 5 melhora os seus fluxos o bastante para justificar o preço?&lt;/p&gt;

&lt;p&gt;Você pode &lt;a href="https://apidog.com/download?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;baixar o Apidog&lt;/a&gt; e configurar esse teste em poucos minutos. Para analisar custos em mais detalhes, veja o guia de &lt;a href="https://apidog.com/pt/blog/claude-fable-5-pricing?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;preços do Fable 5&lt;/a&gt;.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Claude Fable 5 Preços: Análise Completa de Custos (2026)</title>
      <dc:creator>Lucas</dc:creator>
      <pubDate>Wed, 10 Jun 2026 02:49:27 +0000</pubDate>
      <link>https://dev.to/lucas_ferreira/claude-fable-5-precos-analise-completa-de-custos-2026-1111</link>
      <guid>https://dev.to/lucas_ferreira/claude-fable-5-precos-analise-completa-de-custos-2026-1111</guid>
      <description>&lt;p&gt;O preço do Claude Fable 5 começa em &lt;strong&gt;$10 por milhão de tokens de entrada&lt;/strong&gt; e &lt;strong&gt;$50 por milhão de tokens de saída&lt;/strong&gt; na API da Anthropic. Para integrar o modelo em produção, trate o custo como uma função direta de tokens enviados e gerados. Este guia mostra as taxas da API, o impacto nos planos Pro e Max, exemplos com aritmética real e formas práticas de reduzir gastos ao usar o Fable 5 em aplicações, agentes e fluxos de desenvolvimento.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://apidog.com/?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation" class="crayons-btn crayons-btn--primary"&gt;Experimente o Apidog hoje&lt;/a&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  TL;DR
&lt;/h2&gt;

&lt;p&gt;O Claude Fable 5 custa:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Entrada:&lt;/strong&gt; $10 por 1 milhão de tokens&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Saída:&lt;/strong&gt; $50 por 1 milhão de tokens&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Modelo da API:&lt;/strong&gt; &lt;code&gt;claude-fable-5&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;De &lt;strong&gt;9 de junho a 22 de junho de 2026&lt;/strong&gt;, ele está incluído gratuitamente nos planos Pro, Max, Team e Enterprise baseados em assentos. A partir de &lt;strong&gt;23 de junho de 2026&lt;/strong&gt;, o uso nesses planos passa a consumir créditos medidos nas mesmas taxas de token da API.&lt;/p&gt;

&lt;h2&gt;
  
  
  Preço do Claude Fable 5 em resumo
&lt;/h2&gt;

&lt;p&gt;Use esta tabela para estimar rapidamente o custo de uma chamada:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Tipo de token&lt;/th&gt;
&lt;th&gt;Preço por 1M tokens&lt;/th&gt;
&lt;th&gt;Preço por 1K tokens&lt;/th&gt;
&lt;th&gt;O que conta&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Entrada&lt;/td&gt;
&lt;td&gt;$10.00&lt;/td&gt;
&lt;td&gt;$0.01&lt;/td&gt;
&lt;td&gt;Prompt, mensagem do sistema, histórico, contexto, documentos e definições de ferramentas&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Saída&lt;/td&gt;
&lt;td&gt;$50.00&lt;/td&gt;
&lt;td&gt;$0.05&lt;/td&gt;
&lt;td&gt;Resposta gerada, raciocínio produzido e argumentos de chamadas de ferramenta&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;A fórmula básica é:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;custo = (tokens_entrada / 1_000_000) * 10
      + (tokens_saida / 1_000_000) * 50
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Exemplo rápido:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Entrada: 2.000 tokens * $10 / 1.000.000 = $0.02
Saída:     600 tokens * $50 / 1.000.000 = $0.03
Total: $0.05
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;O ID do modelo é:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;claude-fable-5
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Os tokens de saída custam &lt;strong&gt;5x mais&lt;/strong&gt; que os tokens de entrada. Isso significa que controlar o tamanho das respostas costuma ter impacto direto no custo.&lt;/p&gt;

&lt;p&gt;Você pode confirmar as taxas atuais na &lt;a href="https://www.anthropic.com/pricing" rel="noopener noreferrer"&gt;página de preços da Anthropic&lt;/a&gt; e na &lt;a href="https://platform.claude.com/docs/en/about-claude/models/overview" rel="noopener noreferrer"&gt;documentação de modelos e preços&lt;/a&gt;. Para comparação com modelos mais baratos, veja também o guia sobre &lt;a href="https://apidog.com/pt/blog/claude-opus-4-8-pricing?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Claude Opus 4.8&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  O que você paga na API
&lt;/h2&gt;

&lt;p&gt;A Anthropic cobra separadamente por &lt;strong&gt;tokens de entrada&lt;/strong&gt; e &lt;strong&gt;tokens de saída&lt;/strong&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Tokens de entrada
&lt;/h3&gt;

&lt;p&gt;Tokens de entrada incluem tudo que você envia ao modelo:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;prompt do usuário&lt;/li&gt;
&lt;li&gt;mensagem do sistema&lt;/li&gt;
&lt;li&gt;histórico de conversa&lt;/li&gt;
&lt;li&gt;documentos recuperados&lt;/li&gt;
&lt;li&gt;contexto de código&lt;/li&gt;
&lt;li&gt;definições de ferramentas&lt;/li&gt;
&lt;li&gt;JSON de chamadas e schemas&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Far746merwtr8hz94zfet.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Far746merwtr8hz94zfet.png" alt="Imagem mostrando uso de tokens" width="800" height="557"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Eles custam:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$10 por 1M tokens
$0.01 por 1K tokens
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Tokens de saída
&lt;/h3&gt;

&lt;p&gt;Tokens de saída incluem tudo que o modelo gera:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;resposta final&lt;/li&gt;
&lt;li&gt;texto intermediário produzido&lt;/li&gt;
&lt;li&gt;argumentos de tool calls&lt;/li&gt;
&lt;li&gt;raciocínio gerado pelo modelo, quando aplicável&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Eles custam:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$50 por 1M tokens
$0.05 por 1K tokens
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Não há uma taxa fixa adicional por requisição. O custo total é a soma dos tokens de entrada e saída em cada chamada.&lt;/p&gt;

&lt;p&gt;A Anthropic posiciona o Fable 5 como “menos da metade do preço do Claude Mythos Preview”. O modelo irmão restrito, Claude Mythos 5, tem a mesma taxa de $10 de entrada e $50 de saída, então alternar entre esses dois modelos não muda o custo por token.&lt;/p&gt;

&lt;p&gt;Se você precisa entender as capacidades antes de estimar orçamento, veja &lt;a href="https://apidog.com/pt/blog/what-is-claude-fable-5?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;o que é o Claude Fable 5&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Inclusão no plano vs. créditos de uso
&lt;/h2&gt;

&lt;p&gt;O preço da API é direto, mas os planos de assinatura seguem uma janela específica.&lt;/p&gt;

&lt;h3&gt;
  
  
  De 9 a 22 de junho de 2026
&lt;/h3&gt;

&lt;p&gt;O Claude Fable 5 está incluído sem custo adicional nos planos:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Pro&lt;/li&gt;
&lt;li&gt;Max&lt;/li&gt;
&lt;li&gt;Team&lt;/li&gt;
&lt;li&gt;Enterprise baseado em assentos&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Durante esse período, o uso do modelo não consome saldo medido nesses planos.&lt;/p&gt;

&lt;h3&gt;
  
  
  A partir de 23 de junho de 2026
&lt;/h3&gt;

&lt;p&gt;O Fable 5 deixa de fazer parte do conjunto incluído nesses planos. Depois dessa data, o uso passa a consumir créditos medidos nas mesmas taxas da API:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Entrada: $10 / 1M tokens
Saída:   $50 / 1M tokens
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A Anthropic informou que planeja restaurar algum acesso padrão ao plano quando a capacidade permitir, mas o comportamento que você deve usar para orçamento é o de cobrança medida.&lt;/p&gt;

&lt;h3&gt;
  
  
  Planos Enterprise baseados em consumo
&lt;/h3&gt;

&lt;p&gt;Nos planos Enterprise baseados em consumo, o Fable 5 está disponível desde o lançamento e já é cobrado por uso.&lt;/p&gt;

&lt;p&gt;Se sua dúvida for sobre acesso, não apenas faturamento, veja &lt;a href="https://apidog.com/pt/blog/how-to-access-claude-fable-5?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;como acessar o Claude Fable 5&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Exemplos práticos de custo
&lt;/h2&gt;

&lt;p&gt;A fórmula será sempre:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;(tokens_entrada / 1.000.000) * 10
+
(tokens_saida / 1.000.000) * 50
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Exemplo 1: turno de chatbot de suporte
&lt;/h3&gt;

&lt;p&gt;Cenário:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;1.500 tokens de entrada&lt;/li&gt;
&lt;li&gt;500 tokens de saída&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Cálculo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Entrada: 1.500 / 1.000.000 * $10 = $0.015
Saída:     500 / 1.000.000 * $50 = $0.025

Total: $0.04 por turno
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Se o chatbot processar 1.000 turnos por dia:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;1.000 * $0.04 = $40/dia
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Estimativa mensal:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$40 * 30 = $1.200/mês
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Exemplo 2: geração de código
&lt;/h3&gt;

&lt;p&gt;Cenário:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;8.000 tokens de entrada&lt;/li&gt;
&lt;li&gt;3.000 tokens de saída&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Esse caso pode incluir arquivo atual, trechos relacionados, instruções e resposta com explicação.&lt;/p&gt;

&lt;p&gt;Cálculo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Entrada: 8.000 / 1.000.000 * $10 = $0.08
Saída:   3.000 / 1.000.000 * $50 = $0.15

Total: $0.23 por solicitação
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Mesmo com mais tokens de entrada, a saída domina o custo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$0.15 de $0.23 vêm da saída
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Por isso, limitar respostas longas é uma das otimizações mais efetivas.&lt;/p&gt;

&lt;h3&gt;
  
  
  Exemplo 3: agente com contexto grande
&lt;/h3&gt;

&lt;p&gt;Cenário:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;300.000 tokens de entrada&lt;/li&gt;
&lt;li&gt;50.000 tokens de saída&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Esse padrão aparece em agentes que leem bases de código, documentos ou executam várias etapas.&lt;/p&gt;

&lt;p&gt;Cálculo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Entrada: 300.000 / 1.000.000 * $10 = $3.00
Saída:    50.000 / 1.000.000 * $50 = $2.50

Total: $5.50 por execução
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Se uma equipe executar isso 200 vezes por dia:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;200 * $5.50 = $1.100/dia
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Esse é o tipo de carga em que cache de prompts pode reduzir bastante o custo.&lt;/p&gt;

&lt;h2&gt;
  
  
  Como reduzir sua conta do Claude Fable 5
&lt;/h2&gt;

&lt;p&gt;Depois de decidir usar o Fable 5, aplique estas otimizações no design da aplicação.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Use cache de prompts para contexto estável
&lt;/h3&gt;

&lt;p&gt;Leituras do cache custam cerca de &lt;strong&gt;0,1x&lt;/strong&gt; o preço de entrada. Isso reduz a entrada em cache para aproximadamente:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$1 por 1M tokens
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Gravações no cache custam cerca de &lt;strong&gt;1,25x&lt;/strong&gt; o preço de entrada, aproximadamente:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$12.50 por 1M tokens para TTL de 5 minutos
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Cache compensa quando o mesmo contexto é reutilizado várias vezes.&lt;/p&gt;

&lt;p&gt;No exemplo do agente:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;entrada total: 300.000 tokens&lt;/li&gt;
&lt;li&gt;contexto estável em cache: 250.000 tokens&lt;/li&gt;
&lt;li&gt;entrada nova: 50.000 tokens&lt;/li&gt;
&lt;li&gt;saída: 50.000 tokens&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Sem cache:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Entrada: $3.00
Saída:   $2.50
Total:   $5.50
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Com cache:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;250.000 tokens em cache * $1 / 1.000.000  = $0.25
50.000 tokens novos * $10 / 1.000.000    = $0.50
50.000 tokens saída * $50 / 1.000.000    = $2.50

Total: $3.25
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  2. Use a API de Lotes para tarefas assíncronas
&lt;/h3&gt;

&lt;p&gt;Para trabalhos que não precisam de resposta imediata, como:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;classificação em massa&lt;/li&gt;
&lt;li&gt;processamento noturno de documentos&lt;/li&gt;
&lt;li&gt;extração de dados&lt;/li&gt;
&lt;li&gt;análise de logs&lt;/li&gt;
&lt;li&gt;enriquecimento de registros&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A API de Lotes oferece cerca de &lt;strong&gt;50% de desconto&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Isso transforma aproximadamente:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Entrada: $10 -&amp;gt; $5 por 1M tokens
Saída:   $50 -&amp;gt; $25 por 1M tokens
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Se a tarefa tolera atraso, use lote por padrão.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Escolha o modelo certo por tipo de tarefa
&lt;/h3&gt;

&lt;p&gt;Nem toda requisição precisa do Fable 5.&lt;/p&gt;

&lt;p&gt;Use roteamento por complexidade:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Tarefa simples        -&amp;gt; modelo mais barato
Tarefa de rotina      -&amp;gt; Opus 4.8, Sonnet 4.6 ou Haiku 4.5
Tarefa difícil        -&amp;gt; Fable 5
Raciocínio complexo   -&amp;gt; Fable 5
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Um roteador simples pode usar regras como:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;escolherModelo&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt; &lt;span class="nx"&gt;tipo&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;criticidade&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;tamanhoContexto&lt;/span&gt; &lt;span class="p"&gt;})&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="k"&gt;if &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;criticidade&lt;/span&gt; &lt;span class="o"&gt;===&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;alta&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;claude-fable-5&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="k"&gt;if &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;tipo&lt;/span&gt; &lt;span class="o"&gt;===&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;raciocinio_complexo&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;claude-fable-5&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="k"&gt;if &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;tamanhoContexto&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; &lt;span class="mi"&gt;100&lt;/span&gt;&lt;span class="nx"&gt;_000&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;claude-fable-5&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

  &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;modelo-mais-barato&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Se 80% do tráfego for roteado para modelos mais baratos, a conta total pode cair significativamente.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Defina &lt;code&gt;max_tokens&lt;/code&gt; com limite realista
&lt;/h3&gt;

&lt;p&gt;Como saída custa $50 por milhão de tokens, evite deixar a geração aberta.&lt;/p&gt;

&lt;p&gt;Exemplo de configuração:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"model"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"claude-fable-5"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"max_tokens"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;800&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"messages"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"role"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"user"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"content"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Resuma este documento em até 10 bullet points."&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Se uma resposta cair de 3.000 para 1.500 tokens:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;3.000 tokens de saída = $0.15
1.500 tokens de saída = $0.075
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Você reduz pela metade o custo de saída dessa chamada.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. Peça formatos de resposta curtos
&lt;/h3&gt;

&lt;p&gt;Se você precisa de JSON, peça apenas os campos necessários.&lt;/p&gt;

&lt;p&gt;Evite:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Explique em detalhes sua resposta e depois retorne um JSON completo.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Prefira:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Retorne apenas JSON válido, sem explicações.
Use somente os campos: status, score, reason.
Limite reason a 240 caracteres.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Isso reduz tokens de saída e melhora previsibilidade.&lt;/p&gt;

&lt;h3&gt;
  
  
  6. Use streaming para interromper respostas cedo
&lt;/h3&gt;

&lt;p&gt;Streaming não muda o preço por token, mas permite parar a geração quando você já tem o necessário.&lt;/p&gt;

&lt;p&gt;Isso é útil para:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;interfaces de chat&lt;/li&gt;
&lt;li&gt;respostas longas&lt;/li&gt;
&lt;li&gt;geração de código&lt;/li&gt;
&lt;li&gt;depuração interativa&lt;/li&gt;
&lt;li&gt;agentes com passos intermediários&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Combine streaming com &lt;code&gt;max_tokens&lt;/code&gt; para evitar respostas maiores que o necessário.&lt;/p&gt;

&lt;h2&gt;
  
  
  Rastreie os gastos do Claude Fable 5 com Apidog
&lt;/h2&gt;

&lt;p&gt;A forma mais prática de controlar custo durante o desenvolvimento é observar o uso de tokens em cada requisição, não apenas na fatura do fim do mês.&lt;/p&gt;

&lt;p&gt;O &lt;a href="https://apidog.com?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Apidog&lt;/a&gt; é um cliente de API que você pode usar para enviar solicitações à API da Anthropic e inspecionar a resposta retornada.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fewkn2ra4auoabfn13n15.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fewkn2ra4auoabfn13n15.png" alt="Imagem mostrando Apidog" width="799" height="530"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Ao chamar &lt;code&gt;claude-fable-5&lt;/code&gt;, verifique o objeto &lt;code&gt;usage&lt;/code&gt; na resposta:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"usage"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"input_tokens"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;1500&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"output_tokens"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;500&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Calcule o custo da chamada assim:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;inputTokens&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;1500&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;outputTokens&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;500&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;custo&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt;
  &lt;span class="nx"&gt;inputTokens&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mf"&gt;0.00001&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt;
  &lt;span class="nx"&gt;outputTokens&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mf"&gt;0.00005&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;custo&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="c1"&gt;// 0.04&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Ou como função reutilizável:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;calcularCustoFable5&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt; &lt;span class="nx"&gt;inputTokens&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;outputTokens&lt;/span&gt; &lt;span class="p"&gt;})&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;precoEntradaPorToken&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;10&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="nx"&gt;_000_000&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;precoSaidaPorToken&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;50&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="nx"&gt;_000_000&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

  &lt;span class="k"&gt;return &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="nx"&gt;inputTokens&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nx"&gt;precoEntradaPorToken&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt;
    &lt;span class="nx"&gt;outputTokens&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nx"&gt;precoSaidaPorToken&lt;/span&gt;
  &lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
  &lt;span class="nf"&gt;calcularCustoFable5&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;
    &lt;span class="na"&gt;inputTokens&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;8000&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="na"&gt;outputTokens&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;3000&lt;/span&gt;
  &lt;span class="p"&gt;})&lt;/span&gt;
&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="c1"&gt;// 0.23&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Um fluxo de trabalho prático:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Configure a requisição da API da Anthropic no Apidog.&lt;/li&gt;
&lt;li&gt;Use o modelo &lt;code&gt;claude-fable-5&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Salve prompts representativos como exemplos.&lt;/li&gt;
&lt;li&gt;Execute variações do prompt.&lt;/li&gt;
&lt;li&gt;Compare &lt;code&gt;input_tokens&lt;/code&gt; e &lt;code&gt;output_tokens&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Ajuste mensagem do sistema, contexto e formato de saída.&lt;/li&gt;
&lt;li&gt;Defina &lt;code&gt;max_tokens&lt;/code&gt; com base nos resultados reais.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Isso mostra rapidamente quando uma mudança no prompt aumenta centenas ou milhares de tokens.&lt;/p&gt;

&lt;p&gt;Você pode &lt;a href="https://apidog.com/download?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;baixar o Apidog&lt;/a&gt; e combinar com o &lt;a href="https://apidog.com/pt/blog/how-to-use-claude-fable-5-api?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;guia da API do Claude Fable 5&lt;/a&gt; para configurar a estrutura da requisição. Se estiver controlando orçamento durante a janela de inclusão, veja também &lt;a href="https://apidog.com/pt/blog/how-to-use-claude-fable-5-for-free?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;como usar o Claude Fable 5 gratuitamente&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;O Apidog também mantém histórico de solicitações, o que ajuda a comparar chamadas anteriores e estimar o custo de novos recursos. Tratar o &lt;a href="https://apidog.com?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Apidog&lt;/a&gt; como camada de inspeção de custos durante o desenvolvimento evita surpresas quando o tráfego cresce.&lt;/p&gt;

&lt;h2&gt;
  
  
  Checklist de implementação
&lt;/h2&gt;

&lt;p&gt;Antes de colocar o Claude Fable 5 em produção, valide:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;[ ] Você está usando o modelo &lt;code&gt;claude-fable-5&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;[ ] Cada chamada registra &lt;code&gt;input_tokens&lt;/code&gt; e &lt;code&gt;output_tokens&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;[ ] O custo por chamada é calculado no ambiente de teste.&lt;/li&gt;
&lt;li&gt;[ ] &lt;code&gt;max_tokens&lt;/code&gt; está limitado por caso de uso.&lt;/li&gt;
&lt;li&gt;[ ] Prompts pedem respostas concisas.&lt;/li&gt;
&lt;li&gt;[ ] Contexto estável usa cache de prompts quando possível.&lt;/li&gt;
&lt;li&gt;[ ] Tarefas assíncronas usam API de Lotes.&lt;/li&gt;
&lt;li&gt;[ ] Chamadas simples são roteadas para modelos mais baratos.&lt;/li&gt;
&lt;li&gt;[ ] Estimativas mensais usam as taxas de $10/$50, não apenas a janela gratuita.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Conclusão
&lt;/h2&gt;

&lt;p&gt;O preço do Claude Fable 5 se resume a dois números:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Entrada: $10 por 1M tokens
Saída:   $50 por 1M tokens
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A janela gratuita nos planos Pro, Max, Team e Enterprise baseados em assentos vai até &lt;strong&gt;22 de junho de 2026&lt;/strong&gt;. A partir de &lt;strong&gt;23 de junho de 2026&lt;/strong&gt;, o uso passa a consumir créditos medidos.&lt;/p&gt;

&lt;p&gt;Para controlar custo em produção, meça tokens por requisição, limite a saída, use cache para contexto repetido, processe cargas assíncronas em lote e roteie tarefas simples para modelos mais baratos. O próximo passo é enviar uma requisição real para &lt;code&gt;claude-fable-5&lt;/code&gt;, ler o objeto &lt;code&gt;usage&lt;/code&gt; e calcular o custo com dados reais. Você pode &lt;a href="https://apidog.com/download?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;baixar o Apidog&lt;/a&gt; para fazer essa primeira chamada e acompanhar o custo durante a iteração.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Claude Fable 5 vs Claude Mythos 5: Qual a Diferença?</title>
      <dc:creator>Lucas</dc:creator>
      <pubDate>Wed, 10 Jun 2026 02:13:10 +0000</pubDate>
      <link>https://dev.to/lucas_ferreira/claude-fable-5-vs-claude-mythos-5-qual-a-diferenca-43kh</link>
      <guid>https://dev.to/lucas_ferreira/claude-fable-5-vs-claude-mythos-5-qual-a-diferenca-43kh</guid>
      <description>&lt;p&gt;Em 9 de junho de 2026, a Anthropic lançou dois nomes para o mesmo modelo base: Claude Fable 5 e Claude Mythos 5. A diferença não está na capacidade bruta, mas na configuração de segurança. O Fable 5 é a versão pública, com salvaguardas, disponível pela &lt;a href="https://apidog.com/pt/blog/how-to-access-claude-fable-5?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;API Claude&lt;/a&gt;. O Mythos 5 usa o mesmo modelo subjacente, mas com algumas salvaguardas removidas para um pequeno grupo de parceiros confiáveis.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://apidog.com/?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation" class="crayons-btn crayons-btn--primary"&gt;Experimente o Apidog hoje&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;Na prática: se você é desenvolvedor e quer integrar Claude em um produto, você quase certamente usará o &lt;strong&gt;Claude Fable 5&lt;/strong&gt;. O &lt;strong&gt;Claude Mythos 5&lt;/strong&gt; não tem acesso público, não possui inscrição aberta e não é um endpoint que você escolhe na API.&lt;/p&gt;

&lt;h2&gt;
  
  
  Resumo prático
&lt;/h2&gt;

&lt;p&gt;Claude Fable 5 e Claude Mythos 5 compartilham o mesmo modelo subjacente de “classe Mythos”. O que muda é a camada de segurança:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Fable 5&lt;/strong&gt;: público, com salvaguardas ativas, disponível via API e planos de assinatura.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Mythos 5&lt;/strong&gt;: restrito, com salvaguardas removidas em domínios específicos para usuários verificados.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Preço&lt;/strong&gt;: igual para ambos — &lt;strong&gt;US$10 por milhão de tokens de entrada&lt;/strong&gt; e &lt;strong&gt;US$50 por milhão de tokens de saída&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;ID público de API&lt;/strong&gt;: &lt;code&gt;claude-fable-5&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foickdq1vi4zdgav3mytk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foickdq1vi4zdgav3mytk.png" alt="Claude Fable 5 vs Claude Mythos 5" width="800" height="883"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Mesmo modelo, duas configurações de segurança
&lt;/h2&gt;

&lt;p&gt;A forma mais simples de entender a divisão é esta:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Fable 5 e Mythos 5 não são dois modelos diferentes. Eles são o mesmo modelo com políticas de segurança diferentes.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;A Anthropic descreve o modelo subjacente como de &lt;strong&gt;classe Mythos&lt;/strong&gt;. Esse termo indica o nível de capacidade do modelo base, não um produto separado. Tanto Fable 5 quanto Mythos 5 herdam essa mesma capacidade. Para mais contexto, veja o explicador sobre &lt;a href="https://apidog.com/pt/blog/mythos-class-model-explained?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;o que significa classe Mythos&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;A diferença operacional é:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Claude Fable 5&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Disponível publicamente.&lt;/li&gt;
&lt;li&gt;Acessível pela API Claude e por planos de assinatura.&lt;/li&gt;
&lt;li&gt;Inclui salvaguardas em três áreas sensíveis.&lt;/li&gt;
&lt;li&gt;Usa o ID &lt;code&gt;claude-fable-5&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Claude Mythos 5&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Não é público.&lt;/li&gt;
&lt;li&gt;Disponível apenas para grupos verificados.&lt;/li&gt;
&lt;li&gt;Remove salvaguardas específicas conforme o domínio autorizado.&lt;/li&gt;
&lt;li&gt;Não há inscrição pública.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Claude Fable 5 vs Mythos 5
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Dimensão&lt;/th&gt;
&lt;th&gt;Claude Fable 5&lt;/th&gt;
&lt;th&gt;Claude Mythos 5&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Modelo subjacente&lt;/td&gt;
&lt;td&gt;Classe Mythos, compartilhado&lt;/td&gt;
&lt;td&gt;Classe Mythos, compartilhado&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Disponibilidade&lt;/td&gt;
&lt;td&gt;Público&lt;/td&gt;
&lt;td&gt;Não público&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Salvaguardas&lt;/td&gt;
&lt;td&gt;Ativas em 3 áreas sensíveis&lt;/td&gt;
&lt;td&gt;Removidas em algumas áreas&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Quem pode usar&lt;/td&gt;
&lt;td&gt;Qualquer pessoa com acesso à API ou assinatura&lt;/td&gt;
&lt;td&gt;Pequeno grupo verificado&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Rota de acesso&lt;/td&gt;
&lt;td&gt;
&lt;a href="https://apidog.com/pt/blog/how-to-access-claude-fable-5?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;API Claude&lt;/a&gt;, &lt;code&gt;claude-fable-5&lt;/code&gt;, assinaturas&lt;/td&gt;
&lt;td&gt;Projeto Glasswing e programas de acesso confiável&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Inscrição&lt;/td&gt;
&lt;td&gt;Aberta e pública&lt;/td&gt;
&lt;td&gt;Sem inscrição pública&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Preço de entrada&lt;/td&gt;
&lt;td&gt;US$10 por milhão de tokens&lt;/td&gt;
&lt;td&gt;US$10 por milhão de tokens&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Preço de saída&lt;/td&gt;
&lt;td&gt;US$50 por milhão de tokens&lt;/td&gt;
&lt;td&gt;US$50 por milhão de tokens&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;A leitura prática da tabela é direta: o modelo é o mesmo; o acesso e as salvaguardas mudam. O preço não muda. Para detalhes sobre custos, veja as notas sobre &lt;a href="https://apidog.com/pt/blog/claude-fable-5-pricing?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;preços do Claude Fable 5&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Como funcionam as salvaguardas do Fable 5
&lt;/h2&gt;

&lt;p&gt;As salvaguardas do Fable 5 não são um filtro genérico aplicado a tudo. Elas são direcionadas a três categorias sensíveis.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxpq3vtd5qzjr12kq8bfp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxpq3vtd5qzjr12kq8bfp.png" alt="Salvaguardas do Claude Fable 5" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Quando uma solicitação entra em uma dessas categorias, o Fable 5 não responde usando o modelo completo de classe Mythos. Em vez disso, a consulta é roteada para o &lt;strong&gt;Claude Opus 4.8&lt;/strong&gt;, um modelo anterior com histórico de segurança mais estabelecido. Para entender esse modelo, veja o guia sobre &lt;a href="https://apidog.com/pt/blog/what-is-claude-opus-4-8?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;o que é o Claude Opus 4.8&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;As três áreas protegidas são:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Cibersegurança&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Desenvolvimento de exploits.&lt;/li&gt;
&lt;li&gt;Operações cibernéticas ofensivas.&lt;/li&gt;
&lt;li&gt;Hacking agêntico.&lt;/li&gt;
&lt;li&gt;Solicitações que parecem construir ferramentas de ataque.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Biologia e química&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Trabalhos biológicos ou químicos de alto risco.&lt;/li&gt;
&lt;li&gt;Exemplos citados incluem design de AAV e solicitações relacionadas a armas biológicas.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Destilação&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Tentativas de extrair comportamento do modelo para treinar modelos concorrentes.&lt;/li&gt;
&lt;li&gt;Protege o modelo contra cópia via suas próprias saídas.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Segundo a Anthropic, essas salvaguardas são acionadas em menos de &lt;strong&gt;5% das sessões&lt;/strong&gt;, em média. Para a maioria dos usos comuns — geração de código, análise de texto, automação, refatoração, sumarização e uso de ferramentas — você interage com o modelo completo de classe Mythos.&lt;/p&gt;

&lt;p&gt;A Anthropic também relatou que um parceiro externo considerou as salvaguardas cibernéticas do Fable 5 entre as mais resilientes que havia avaliado. Para mais detalhes, veja a visão geral das &lt;a href="https://apidog.com/pt/blog/claude-fable-5-safety-safeguards?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;salvaguardas de segurança do Fable 5&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  O que o Mythos 5 desbloqueia
&lt;/h2&gt;

&lt;p&gt;O Mythos 5 é a mesma base do Fable 5, mas com salvaguardas removidas em domínios específicos para usuários específicos.&lt;/p&gt;

&lt;p&gt;Ele não é disponibilizado por um endpoint público. O acesso ocorre por programas controlados.&lt;/p&gt;

&lt;h3&gt;
  
  
  Projeto Glasswing
&lt;/h3&gt;

&lt;p&gt;O &lt;strong&gt;Projeto Glasswing&lt;/strong&gt; é uma colaboração com o governo dos EUA. Por esse caminho, o Mythos 5 é disponibilizado a defensores cibernéticos e provedores de infraestrutura com as salvaguardas cibernéticas removidas.&lt;/p&gt;

&lt;p&gt;A lógica é defensiva: equipes que protegem redes e infraestrutura crítica podem precisar da capacidade cibernética completa que o Fable 5 redireciona.&lt;/p&gt;

&lt;h3&gt;
  
  
  Pesquisadores de biologia
&lt;/h3&gt;

&lt;p&gt;A Anthropic também informou que pesquisadores de biologia receberão acesso ao Mythos 5 com salvaguardas de biologia e química removidas.&lt;/p&gt;

&lt;p&gt;Esse acesso é limitado ao domínio relevante. Para esse grupo, as proteções cibernéticas continuam ativas.&lt;/p&gt;

&lt;h3&gt;
  
  
  Programa de acesso confiável
&lt;/h3&gt;

&lt;p&gt;A Anthropic sinalizou um programa mais amplo de acesso confiável, mas os detalhes não são públicos. O ponto importante é que o Mythos 5 continua sendo acesso concedido, não self-service.&lt;/p&gt;

&lt;h3&gt;
  
  
  Usuários do Mythos Preview
&lt;/h3&gt;

&lt;p&gt;Usuários existentes do &lt;strong&gt;Claude Mythos Preview&lt;/strong&gt; podem atualizar para o Mythos 5. Esse caminho só vale para quem já estava dentro da prévia.&lt;/p&gt;

&lt;h2&gt;
  
  
  Por que a Anthropic separou Fable 5 e Mythos 5
&lt;/h2&gt;

&lt;p&gt;A divisão resolve uma tensão comum em modelos mais capazes: utilidade versus segurança.&lt;/p&gt;

&lt;p&gt;O &lt;strong&gt;Fable 5&lt;/strong&gt; maximiza disponibilidade pública. Ele entrega a capacidade de classe Mythos para a maioria dos casos de uso e redireciona apenas consultas em domínios de alto risco.&lt;/p&gt;

&lt;p&gt;O &lt;strong&gt;Mythos 5&lt;/strong&gt; preserva a capacidade completa para usuários verificados em contextos onde o bloqueio atrapalharia trabalho legítimo de alto valor, como defesa cibernética ou pesquisa biológica autorizada.&lt;/p&gt;

&lt;p&gt;A diferença não é “modelo bom” versus “modelo limitado”. A diferença é:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;quem pode acessar;&lt;/li&gt;
&lt;li&gt;quais salvaguardas estão ativas;&lt;/li&gt;
&lt;li&gt;em quais domínios essas salvaguardas são removidas;&lt;/li&gt;
&lt;li&gt;sob qual programa de confiança.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Você pode ler a abordagem diretamente no &lt;a href="https://www.anthropic.com/news/claude-fable-5-mythos-5" rel="noopener noreferrer"&gt;anúncio de Claude Fable 5 e Mythos 5&lt;/a&gt; e nas páginas da Anthropic sobre &lt;a href="https://www.anthropic.com/safety" rel="noopener noreferrer"&gt;segurança e escalonamento responsável&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Como usar o Claude Fable 5 na prática
&lt;/h2&gt;

&lt;p&gt;Se você está integrando Claude em uma aplicação, use o ID:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;claude-fable-5
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Você não precisa configurar nada para o Mythos 5. Não há endpoint público &lt;code&gt;claude-mythos-5&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Um fluxo de integração típico fica assim:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Crie ou configure sua chave de API Claude.&lt;/li&gt;
&lt;li&gt;Defina o modelo como &lt;code&gt;claude-fable-5&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Estime custo com base em:

&lt;ul&gt;
&lt;li&gt;US$10 por milhão de tokens de entrada;&lt;/li&gt;
&lt;li&gt;US$50 por milhão de tokens de saída.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Teste prompts reais antes de colocar em produção.&lt;/li&gt;
&lt;li&gt;Monitore latência, custo, tamanho de contexto e qualidade das respostas.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Exemplo conceitual de corpo de requisição:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"model"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"claude-fable-5"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"max_tokens"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;1024&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"messages"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"role"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"user"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"content"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Explique este trecho de código e sugira melhorias."&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Para padrões de integração e estrutura de chamada, o &lt;a href="https://apidog.com/pt/blog/how-to-use-claude-opus-4-8-api?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;guia da API Claude Opus 4.8&lt;/a&gt; mostra formatos aplicáveis também ao Fable 5, já que a forma geral da requisição é a mesma entre esses modelos.&lt;/p&gt;

&lt;h2&gt;
  
  
  Testando o Fable 5 com Apidog
&lt;/h2&gt;

&lt;p&gt;Ao validar uma integração com o Fable 5, você provavelmente vai repetir chamadas, comparar prompts e inspecionar campos de resposta. Um cliente de API ajuda a tornar isso reproduzível.&lt;/p&gt;

&lt;p&gt;Com o &lt;a href="https://apidog.com?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;Apidog&lt;/a&gt;, você pode:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;criar uma coleção para chamadas ao Claude;&lt;/li&gt;
&lt;li&gt;salvar o corpo da requisição com &lt;code&gt;claude-fable-5&lt;/code&gt;;&lt;/li&gt;
&lt;li&gt;configurar variáveis de ambiente para a chave de API;&lt;/li&gt;
&lt;li&gt;alternar entre ambientes de teste e produção;&lt;/li&gt;
&lt;li&gt;documentar formatos de request e response;&lt;/li&gt;
&lt;li&gt;compartilhar testes reproduzíveis com a equipe.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Um setup simples:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Environment variable:
ANTHROPIC_API_KEY=your_api_key

Model:
claude-fable-5
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Depois, salve a requisição na coleção e reutilize o mesmo contrato durante o desenvolvimento. Se a integração fizer parte de um pipeline maior, documentar as entradas e saídas ajuda backend, frontend e QA a trabalharem em paralelo.&lt;/p&gt;

&lt;p&gt;Você também pode &lt;a href="https://apidog.com/download?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;baixar o Apidog&lt;/a&gt; para organizar sua coleção de chamadas do Fable 5 e manter os contratos da API documentados conforme a integração evolui.&lt;/p&gt;

&lt;h2&gt;
  
  
  FAQ
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Claude Mythos 5 é o mesmo que Claude Fable 5?
&lt;/h3&gt;

&lt;p&gt;Eles compartilham o mesmo modelo subjacente de classe Mythos. A diferença é a configuração de segurança. O Fable 5 tem salvaguardas ativas e é público. O Mythos 5 remove salvaguardas específicas para grupos verificados.&lt;/p&gt;

&lt;h3&gt;
  
  
  Posso usar o Claude Mythos 5?
&lt;/h3&gt;

&lt;p&gt;Quase certamente não. Não há inscrição pública. O Mythos 5 é distribuído por programas controlados, como o Projeto Glasswing, uma trilha futura para pesquisadores de biologia, um programa mais amplo de acesso confiável e atualização para usuários existentes do Mythos Preview.&lt;/p&gt;

&lt;h3&gt;
  
  
  O que significa classe Mythos?
&lt;/h3&gt;

&lt;p&gt;“Classe Mythos” descreve o nível de capacidade do modelo subjacente. Não é um produto separado. Fable 5 e Mythos 5 usam essa mesma base. Veja também o &lt;a href="https://apidog.com/pt/blog/mythos-class-model-explained?utm_source=dev.to&amp;amp;utm_medium=wanda&amp;amp;utm_content=n8n-post-automation"&gt;explicador da classe Mythos&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Fable 5 e Mythos 5 custam o mesmo?
&lt;/h3&gt;

&lt;p&gt;Sim. Ambos usam o mesmo preço informado: &lt;strong&gt;US$10 por milhão de tokens de entrada&lt;/strong&gt; e &lt;strong&gt;US$50 por milhão de tokens de saída&lt;/strong&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  O que é o Projeto Glasswing?
&lt;/h3&gt;

&lt;p&gt;É uma colaboração entre a Anthropic e o governo dos EUA para fornecer o Mythos 5 a defensores cibernéticos e provedores de infraestrutura, com salvaguardas cibernéticas removidas para uso defensivo.&lt;/p&gt;

&lt;h3&gt;
  
  
  Por que o Fable 5 usa o Claude Opus 4.8 em alguns casos?
&lt;/h3&gt;

&lt;p&gt;Porque consultas em três áreas sensíveis — cibersegurança, biologia/química e destilação — são redirecionadas para o Claude Opus 4.8. Segundo a Anthropic, isso ocorre em menos de 5% das sessões, em média.&lt;/p&gt;

&lt;h3&gt;
  
  
  Onde estão os detalhes oficiais?
&lt;/h3&gt;

&lt;p&gt;Consulte a &lt;a href="https://platform.claude.com/docs/en/about-claude/models/overview" rel="noopener noreferrer"&gt;documentação de visão geral dos modelos&lt;/a&gt;, o &lt;a href="https://www.anthropic.com/news/claude-fable-5-mythos-5" rel="noopener noreferrer"&gt;anúncio oficial do Fable 5 e Mythos 5&lt;/a&gt; e as páginas da Anthropic sobre &lt;a href="https://www.anthropic.com/news" rel="noopener noreferrer"&gt;notícias e segurança&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Próximo passo
&lt;/h2&gt;

&lt;p&gt;Se você está criando uma integração hoje, use o modelo público:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;claude-fable-5
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Teste seus prompts reais, meça custo e latência, valide o comportamento em seus casos de uso e só então mova a integração para produção.&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
