A Microsoft Research soltou Webwright essa semana — um framework de web agent que joga fora DOM-clicking e predição de coordenadas em screenshot em favor de fazer o agente escrever código Playwright dentro de um terminal. A aposta arquitetural: tratar o browser como uma ferramenta lançável, não uma sessão stateful. O agente recebe contexto, retorna código e raciocínio, executa via um Terminal Environment, e incorpora as observações (logs, screenshots, valores de retorno) de volta no contexto. Três componentes, cerca de 1000 linhas total: Runner a ~150 LOC orquestra o loop, Model Endpoint a ~550 LOC cuida da interface LLM, Terminal Environment a ~300 LOC executa tudo. Single agent loop, sem orquestração multi-agente. Pra builders que viram a browser-agent stack acumular wrappers DOM estilo Operator e pipelines de screenshots, esse é o movimento de minimalismo arquitetural.

Benchmarks: Odysseys (browsing multi-site long-horizon, tarefas com média de 272.3 palavras) — GPT-5.4 base 33.5%, Webwright em cima do GPT-5.4 leva pra **60.1%** (melhora relativa de 79.4%). O SOTA anterior em Odysseys era Opus 4.6 a 44.5%, estabelecido em abril 2026. Claude Opus 4.7 com Webwright completa tarefas em menos passos (média 21.9 vs 26.3) mas a $6.09 por tarefa versus $2.37 do GPT-5.4 — o tradeoff custo/passo é real e explícito. Online-Mind2Web (300 tarefas, 136 sites): Webwright+GPT-5.4 atinge 86.67% de accuracy. Qwen3.5-9B com scripts de ferramentas pré-construídos: 66.2% no split difícil. Caveats de engenharia que a Microsoft documenta honestamente: modelos declaram "done" prematuramente sem terminar, mitigado com self-reflection mais fresh-folder validation mais julgamento explícito sucesso/falha; explosão de contexto em trajetórias longas, mitigado com compactação de histórico a cada 20 passos.

Leitura ecossistema: esse é o segundo release maior de browser-agent em quinze dias depois da própria família Fara1.5 da Microsoft (modelos 4B/9B/27B). Fara era o lado do modelo; Webwright é o harness. Os dois representam uma postura coerente — manter a superfície do modelo mínima e deixar o código Playwright (a lib de automação de browser da Microsoft, originalmente pra testing) carregar o vocabulário de ação. É uma aposta diferente do Operator da OpenAI (percepção DOM-tree, coordenadas de click) e do Antigravity 2.0 do Google (browser-como-runtime). Pra builders, a implicação é concreta: se você escreveu harness custom de DOM-scraping ou luta com predição screenshot-pra-coordenada, o path Playwright-code-as-action-language agora tem uma baseline publicada que bate o SOTA anterior por 15.6 pontos absolutos em Odysseys. Repo: github.com/microsoft/Webwright. Ship com um Claude Code skill — sem chave LLM separada além de uma assinatura Claude, com paths de instalação project-scoped ou user-scoped.

Segunda de manhã: se você shippa um produto web-agent, clone o repo e rode o split Odysseys contra teu harness atual — a comparação apples-to-apples é o que te diz se teu DOM-walker faz trabalho real ou se um gerador de código Playwright no mesmo modelo base se sairia melhor. O orçamento de 1000 LOC torna esse teste barato de setar. Se você prototipa web agents do zero, a shape do Webwright (Runner / Model Endpoint / Terminal Env) é uma decomposição de partida razoável — pequena o bastante pra ler numa noite, estruturada o bastante pra estender. O tradeoff custo/passo com Opus 4.7 também vale modelar explicitamente no teu orçamento: $2.37 vs $6.09 por tarefa com Opus pode ou não valer a redução de 4.4 passos dependendo do que teu agente é realmente pago pra fazer.