Esqueça os Screenshots: Por Que Dados Estruturados São a Forma Ideal de Conversar com Seu AI Coding Assistant
O Problema com Imagens
Deixa eu te descrever uma cena. São 2 da manhã. Você está há uma hora brigando com o mesmo problema de CSS. Aí você joga um screenshot no terminal e digita: "corrige esse botão desalinhado."
Seu assistente de IA olha praqueles pixels, faz o melhor que pode, e—esperemos—te dá algo útil. Mas o que aconteceu ali nos bastidores: o modelo gastou tokens só pra enxergar sua tela, depois gastou mais pra interpretar o que viu, e então chutou qual dos 47 elementos na sua tela de 1440p você realmente queria mencionar.
Isso é muito chute pra uma sessão de debugging às 2 da manhã.
A Matemática dos Tokens
Aqui vai algo que os vendedores de assistentes de IA não te contam de cara: cada screenshot que você cola custa dinheiro real e ocupa espaço no seu context window. Um screenshot retina no Claude sai por volta de 1.500+ tokens só pro processamento de visão. No GPT-4o, são mais ou menos 1.100 tokens. Gemini 2.5? Uns 1.550.
Agora multiplica isso por uma sessão iterative. Você mostra o estado da tela pro agente a cada poucos prompts—o que, se você é como eu resolvendo problemas complexos de UI, pode ser umas 15 a 20 vezes por sessão.
De repente você gastou 22.000 a 31.000 tokens só em visão antes do agente ter feito qualquer coisa útil. Num context window de 200k, isso é espaço que você não recupera. E se estiver rodando Opus 4.7 ou 4.8? Se prepara prauns 96.000 tokens de visão na mesma sessão.
A alternativa? JSON estruturado descrevendo seus elementos de UI: posições, cores, conteúdo de texto, papéis semânticos. O mesmo estado de tela em JSON? Uns 700 tokens. Numa sessão de 20 rodadas: mais ou menos 14.000 tokens no total.
Isso não é uma melhoria marginal. É a diferença entre completar seu refactor e ser jogado pra fora da sessão por context compaction.
Estrutura Ganha de Pixels: O Verdadeiro Ganho
Mas aqui vai o que realmente importa além da matemática de tokens—e isso é o que eu sempre volto.
Quando você cola um screenshot, o agente tem que reinterpretar tudo a cada turno. Pixels crus não são estado de raciocínio persistente. Faz uma pergunta de acompanhamento seis prompts depois, e o modelo volta a squintar nos pixels, reinterpretar, rechutar.
JSON estruturado muda toda a dinâmica. Em vez de "aqui está o que os pixels podem representar," você tá dando ao agente fatos que ele pode referenciar e construir sobre: "Elemento e4 é um botão na posição [0.34, 0.60, 0.32, 0.07], colorido #3B82F6, rotulado 'Cadastrar.'"
O agente não precisa adivinhar qual input você tá apontando. O schema já sabe. O raciocínio tá ancorado nas mesmas primitivas que o próximo turno vai usar. Você não tá mostrando; você tá contando.
Por Que Isso Importa pro Vibe Coding
Aqui é onde isso se conecta com a mudança maior acontecendo no desenvolvimento assistido por IA—o que alguns chamam de "vibe coding."
O ponto todo do vibe coding é que você deveria poder descrever o que quer, iterar rápido, e confiar que a IA lida com os detalhes de implementação. Mas vibe coding só funciona quando a IA tem informações precisas sobre o que tá trabalhando.
Um screenshot é com perda. Uma anotação num PNG são só pixels vermelhos num retângulo. Mas uma anotação em JSON estruturado tem intenção: qual elemento ela mira, o que tá tentando destacar, o que você tá pedindo pro agente fazer com isso.
Quando você elimina o chute, elimina o atrito. E eliminar atrito é o que vibe coding realmente é.
O Que Fazer na Prática
Olha, não tô dizendo que você nunca deve colar um screenshot. Às vezes você só precisa mostrar algo rápido. Mas se você tá fazendo trabalho iterativo sério com um assistente de IA—refactoring, debugging, construindo features com UI complexa—dados estruturados são o caminho.
As ferramentas que entendem isso tão ficando mais espertas. As que não entendem tão prestes a ficar pra trás. Porque no fim do dia, seu assistente de IA não tá realmente "vendo" quando você cola uma imagem. Ele tá interpretando. E interpretação é cara, com perda, e inconsistente.
Dê algo que ele possa realmente ler.
O que você acha? Já sentiu a pressão do context window em sessões longas de coding com IA? Deixa nos comentários—a gente tá construindo isso em tempo real, e sua experiência importa.