Google Antigravity: migre os jobs locais até 5 de outubro

Mantenha os jobs do Google Antigravity ativos após 5 de outubro: veja quais integrações exigem novo adaptador e quais só precisam trocar o ID do agente.

Friday, September 18, 2026Omid Saffari
Google Antigravity: migre os jobs locais até 5 de outubro

Os jobs da API Google Antigravity criados com o agente de maio do Google têm uma janela de migração de 18 dias. O Google lançou o antigravity-preview-09-2026 em 17 de setembro de 2026, e seu cronograma de descontinuação prevê o desligamento do antigravity-preview-05-2026 em 5 de outubro. Se um job executa ferramentas localmente ou lê etapas function_call, a mudança exige trabalho no adaptador — não é uma simples troca de versão em uma linha.

O que muda no Google Antigravity

A mudança afeta o agente gerenciado Antigravity da Gemini API. Não se trata de uma atualização do IDE Antigravity instalado no computador.

Os dois produtos compartilham a mesma base de runtime, daí a sobreposição no nome. O que muda aqui é o ID de agente enviado pela aplicação à Interactions API do Google e, em algumas integrações, as chamadas de ferramentas nativas tratadas pela aplicação. Atualizar o IDE não altera esse contrato de API.

O novo agente é o antigravity-preview-09-2026. Seu modelo de raciocínio padrão é o Gemini 3.8 Flash, embora o guia do Antigravity Agent mostre como selecionar outro modelo compatível por meio de agent_config. O artigo anterior sobre Gemini Managed Agents explica o workspace hospedado, os jobs em segundo plano e o loop de ferramentas. Esta migração acontece uma camada abaixo: ela determina se esses jobs ainda conseguem iniciar e se suas chamadas de ferramentas continuam funcionando.

Na nota de versão de 17 de setembro, o Google separou a migração em dois caminhos:

  • Um job em sandbox remota que lê apenas output_text ou model_output precisa trocar a string do agente.
  • Um job que usa local_environment ou processa etapas function_call também precisa atualizar o adaptador de ferramentas.

Essa distinção define todo o trabalho. O adaptador é a pequena camada de código da aplicação que recebe o nome e os argumentos de uma ferramenta, faz as validações, executa a ação local e devolve o resultado.

O contrato das ferramentas locais mudou em cinco pontos

O agente antigo tratava grande parte das operações com arquivos como leituras e gravações amplas. O agente de setembro adota nomes e argumentos mais específicos. As chaves dos argumentos também deixam snake_case e passam a PascalCase.

RecursoAgente de maioAgente de setembroO que o adaptador precisa tratar
Criar um arquivowrite_file(path, content)write_to_file(TargetFile, CodeContent, Overwrite, Description)Novo nome e quatro argumentos em PascalCase
Editar um arquivowrite_file(path, content) com regravação completareplace_file_content(TargetFile, StartLine, EndLine, TargetContent, ReplacementContent)Substituição delimitada por linhas em vez da regravação do arquivo inteiro
Ler um arquivoread_file(path, offset, limit) com offsets em bytesview_file(AbsolutePath, StartLine, EndLine, ContentOffset)Novo nome e combinação de offsets por linha e conteúdo
Listar um diretóriolist_files(path)list_dir(DirectoryPath)Novo nome e nova capitalização do argumento
Buscar arquivos e códigoComandos de shellfind_by_name(SearchDirectory, Pattern, MaxDepth) e grep_search(SearchPath, Query, IsRegex)Duas chamadas de busca explícitas para registrar e validar
Executar um comando de shellcode_execution(command, timeout_seconds)Sem mudançaManter o handler atual e submetê-lo a um teste de regressão
Pesquisar na webgoogle_search(queries)Sem mudançaManter o handler atual e submetê-lo a um teste de regressão

Cinco famílias de recursos de arquivos e busca mudaram. Duas ferramentas nativas da lista permaneceram iguais. Por isso, um handler genérico montado em torno de write_file pode falhar mesmo quando o novo ID do agente está correto.

O novo contrato de edição também é mais preciso. Em vez de devolver o arquivo inteiro para uma pequena alteração, o agente informa o intervalo de linhas, o texto que espera encontrar e o conteúdo substituto. O adaptador deve recusar a chamada quando TargetContent já não corresponder ao arquivo. Caso contrário, um job atrasado pode sobrescrever uma edição humana mais recente.

Quais jobs realmente exigem uma migração

Modelo de decisão em arquitetura no qual jobs do Antigravity que consomem apenas a saída seguem pelo caminho de troca do ID do agente, enquanto ferramentas locais e consumidores de function_call passam por testes do adaptador antes do prazo de 5 de outubro
A migração se divide de acordo com os dados consumidos pela aplicação.

Um fundador solo com um job remoto de relatório

Imagine um job noturno que pede ao Antigravity para coletar dados na sandbox do Google, salvar um relatório e devolver o texto final. A aplicação lê output_text e não inspeciona as etapas internas.

Esse é o caminho curto. Troque antigravity-preview-05-2026 por antigravity-preview-09-2026, execute um relatório representativo em paralelo ao job antigo, compare o artefato final e só então mova o agendamento. Não há motivo para reconstruir um dispatcher de ferramentas locais que não existe nessa integração.

Uma equipe de plataforma que executa ferramentas na própria infraestrutura

Agora pense em um worker de repositório cujas chamadas de ferramentas rodam no runner da própria equipe. Ele lê arquivos, pesquisa código, edita configurações e envia os resultados das ferramentas de volta à interação.

Essa equipe é responsável pela migração maior. O dispatcher precisa reconhecer os novos nomes, validar os argumentos em PascalCase, aplicar as políticas de caminhos e comandos, executar edições por intervalo de linhas com segurança e devolver o resultado no formato esperado pela interação. O benefício é a continuidade: revisões de código, geração de relatórios e jobs de manutenção continuam funcionando depois que o endpoint de maio desaparecer.

Uma equipe de observabilidade que consome todas as etapas

Algumas aplicações executam tudo remotamente, mas ainda copiam as etapas function_call para um log de auditoria, uma interface de progresso, uma fila de aprovação ou um painel de custos. Essas equipes não são consumidoras apenas da saída.

Mesmo quando o Google executa a ação nativa no sistema de arquivos, o parser pode continuar pressupondo write_file, path e content. Atualize a lista de permissões e as fixtures para que o painel não marque uma edição real como desconhecida, descarte seus argumentos ou a encaminhe para a política de aprovação errada.

Um responsável por operações com gatilhos autônomos

Gatilhos agendados representam o maior risco porque ninguém acompanha a chamada no momento da execução. Um gatilho vincula agente, ambiente, prompt e agendamento cron. Se a interação armazenada ainda apontar para o agente de maio, o agendamento pode parecer saudável enquanto a execução por trás dele falha após o desligamento.

Faça o inventário do ID do agente dentro de cada definição de gatilho, não apenas na chamada do SDK da aplicação principal. Depois, execute em paralelo um job de cada padrão de ferramentas. Um job de relatórios e outro de reparo de repositório não constituem o mesmo teste de migração só porque ambos usam o Antigravity.

Um teste enxuto para o contrato de edição de arquivos

O primeiro teste mais seguro não depende de credenciais de produção. Envie ao adaptador uma fixture capturada no formato de uma chamada, edite um arquivo descartável e confirme que somente a linha pretendida mudou.

Executei o código abaixo com Node usando o nome replace_file_content publicado pelo Google e os campos em PascalCase. É um teste local do adaptador, não uma chamada ativa à Gemini API.

JavaScript
import assert from "node:assert/strict";
import { mkdtempSync, readFileSync, writeFileSync } from "node:fs";
import { tmpdir } from "node:os";
import { join } from "node:path";

function applyReplaceFileContent(call) {
  assert.equal(call.name, "replace_file_content");

  const {
    TargetFile,
    StartLine,
    EndLine,
    TargetContent,
    ReplacementContent,
  } = call.arguments;

  const lines = readFileSync(TargetFile, "utf8").split("\n");
  const current = lines.slice(StartLine - 1, EndLine).join("\n");
  assert.equal(current, TargetContent, "line window no longer matches");

  lines.splice(
    StartLine - 1,
    EndLine - StartLine + 1,
    ...ReplacementContent.split("\n"),
  );
  writeFileSync(TargetFile, lines.join("\n"));
}

const dir = mkdtempSync(join(tmpdir(), "antigravity-adapter-"));
const file = join(dir, "scheduled-job.env");
writeFileSync(file, "owner=ops\nstatus=old\nmode=scheduled\n");

applyReplaceFileContent({
  name: "replace_file_content",
  arguments: {
    TargetFile: file,
    StartLine: 2,
    EndLine: 2,
    TargetContent: "status=old",
    ReplacementContent: "status=ready",
  },
});

assert.equal(
  readFileSync(file, "utf8"),
  "owner=ops\nstatus=ready\nmode=scheduled\n",
);
console.log("PASS: line 2 changed from status=old to status=ready");

O teste passou. Mais importante: ao alterar o TargetContent da fixture, ele interrompe a execução em vez de editar conteúdo desatualizado.

  1. Classifique a integração

    Registre se cada job consome apenas a saída, processa etapas, executa ferramentas locais ou combina mais de um desses comportamentos. Faça isso por família de jobs, não por repositório.

  2. Capture fixtures reais

    Execute o agente de setembro em um caminho fora de produção e salve etapas function_call representativas para criação, edição, leitura, listagem e busca de arquivos. Confirme a numeração real das linhas e o envelope de resultado dessas chamadas capturadas antes de levar o teste local para produção.

  3. Teste o caminho de recusa

    Altere TargetContent, direcione uma chamada para fora do workspace aprovado e forneça um nome de ferramenta desconhecido. Todos os casos devem falhar de forma fechada e gerar um registro de auditoria.

  4. Execute um job completo em paralelo

    Use o novo ID de agente, o novo adaptador e um ambiente descartável. Compare o artefato final, o rastro das ferramentas, as aprovações, o tempo de execução e o consumo de tokens com o job atual antes de mover o agendamento.

A conta de negócio compara o trabalho de migração com as execuções perdidas

O Google não anunciou um novo preço por token com esta migração de agente. A linha do orçamento que mudou é o tempo de engenharia e operações.

Use duas fórmulas simples:

Custo da migração = tempo de engenharia no adaptador + gasto de API nos testes em paralelo + tempo de monitoramento

Exposição à indisponibilidade = execuções agendadas perdidas × valor de uma execução + trabalho de correção

Para um job remoto que consome apenas a saída, o esforço de engenharia pode se resumir à troca da string do agente e a uma execução em paralelo. Em uma integração com ferramentas locais, reserve orçamento para as cinco famílias de recursos alteradas, as fixtures do parser, os testes de segurança e uma execução completa de cada formato distinto de workflow.

Não transforme isso em uma estimativa universal de horas sem fundamento. Um gerador de relatórios enxuto e um agente de programação local têm coberturas de ferramentas, lógicas de aprovação e custos de falha diferentes. Aplique às fórmulas a taxa integral da sua equipe de engenharia e o valor de negócio de cada execução. Assim, a área financeira recebe uma decisão concreta, não uma lista de recursos do fornecedor.

A parte que precisa ser dita com clareza

O teste local acima comprova que a fixture e o adaptador estão de acordo. Ele não demonstra o que um agente ativo emitirá para todos os prompts. Esta apuração não tinha uma credencial da Gemini API, portanto não simulou a execução do agente hospedado. A validação final deve usar uma chamada capturada do agente de setembro em um ambiente descartável.

Nem todo usuário do Antigravity precisa fazer o mesmo trabalho diante dessa mudança:

  • Aja nesta semana se um job de produção aponta para antigravity-preview-05-2026, usa local_environment, processa etapas function_call ou roda de forma autônoma em um agendamento.
  • Siga o caminho curto se o job roda em uma sandbox remota e consome apenas output_text ou model_output. Troque o ID e faça uma execução em paralelo.
  • Comece direto no novo ID se a API ainda está em avaliação e não há jobs do agente de maio em produção.
  • Ignore esta migração se você usa apenas o IDE Antigravity e não chama o agente gerenciado pela Gemini API.

O que fazer na segunda-feira

Dê a uma pessoa a responsabilidade pelo inventário. Procure o ID do agente de maio e os nomes antigos das ferramentas nas configurações implantadas, definições de gatilhos, variáveis de ambiente, painéis e fixtures. Separe os resultados em duas listas — apenas saída e adaptador obrigatório — antes de qualquer alteração no código.

Depois, migre um job representativo de cada lista. Mantenha o agendamento antigo pausado, mas disponível, enquanto analisa a execução de setembro; mova os jobs restantes por família de workflow; e configure um alerta para chamadas de ferramentas desconhecidas até 5 de outubro. A entrega de segunda-feira não é uma apresentação. É um inventário com responsáveis, uma execução paralela aprovada e uma data para cada job restante.

Para receber mais análises operacionais, em linguagem direta, sobre mudanças que podem interromper workflows reais, assine a newsletter.

Última atualização
18 de set. de 2026
Categoria
Explained

Prefira este site no Google

Adicionar omidsaffari.com como fonte preferida na Busca do Google

Marque omidsaffari.com como fonte preferida e o Google destaca o site para você em Top Stories, AI Overviews e AI Mode.

RPC JavaScript no Cloudflare Workers revela a chamada lenta

RPC JavaScript no Cloudflare Workers revela a chamada lenta

Veja como o tracing de RPC JavaScript conecta Workers e Durable Objects, aponta a chamada lenta e ajuda a calcular o custo antes de ampliar o uso.17 de set. de 2026Explained
Deploy Vercel no Hobby: previews podem sumir antes de 30 dias

Deploy Vercel no Hobby: previews podem sumir antes de 30 dias

Equipes no Vercel Hobby acima de 10GB podem perder previews desprotegidos antes de 30 dias. Veja o que segue protegido e como revisar seus deploys.17 de set. de 2026Explained
Cloudflare AI Gateway evita cobranças na conta errada

Cloudflare AI Gateway evita cobranças na conta errada

Veja como o Cloudflare AI Gateway exige credenciais do provedor, bloqueia o fallback para Unified Billing e evita que o custo caia na conta errada.17 de set. de 2026Explained
Cloudflare Hyperdrive conecta Python Workers ao PostgreSQL e MySQL

Cloudflare Hyperdrive conecta Python Workers ao PostgreSQL e MySQL

Entenda quando o Cloudflare Hyperdrive permite ligar Python Workers a PostgreSQL ou MySQL existentes e remover uma ponte HTTP sem migrar os dados.16 de set. de 2026Explained
IA de voz sem silêncio: o que muda no Gemini 3.8 Live

IA de voz sem silêncio: o que muda no Gemini 3.8 Live

O Gemini 3.8 Live mantém a conversa enquanto ferramentas rodam em segundo plano. Entenda custos, riscos e como medir tarefas realmente concluídas.16 de set. de 2026Explained
Wrangler Cloudflare: controle o deploy de cada cliente

Wrangler Cloudflare: controle o deploy de cada cliente

Veja como restringir o deploy com Wrangler Cloudflare a um único Worker por cliente, usando tokens, papéis granulares e políticas de menor privilégio.15 de set. de 2026Explained
Controle de acesso à rede no Claude Code passa a valer por comando

Controle de acesso à rede no Claude Code passa a valer por comando

Entenda como o controle de acesso à rede por comando do Claude Code reduz permissões persistentes em instalações de dependências executadas no sandbox.15 de set. de 2026Explained
Agentes de IA no Vercel AI SDK: a assinatura pode pagar a conta

Agentes de IA no Vercel AI SDK: a assinatura pode pagar a conta

O Vercel AI SDK agora usa assinaturas compatíveis de agentes de IA. Veja qual credencial define a cobrança, qual plano paga e quanto o Sandbox ainda custa.15 de set. de 2026Explained
Newsletter

Uma carta, todo domingo.Sistemas que funcionam, não hot takes.

Semanal. Sem spam. Cancele quando quiser.