AIARTIGO

datasette-agent 0.4a0 traz execução de JavaScript no navegador do usuário

O plugin de Simon Willison ganhou um mecanismo que deixa ferramentas do agente rodarem código direto no browser. Vale um olhar cético para quem trabalha com dados.

datasette-agent 0.4a0 traz execução de JavaScript no navegador do usuário
Imagem: Alan Andrade

Simon Willison lançou a versão 0.4a0 do datasette-agent, o plugin que coloca um agente de LLM para dentro do Datasette. A novidade da release é um mecanismo chamado await context.browser_task(), que permite que ferramentas do agente executem código JavaScript diretamente no navegador do usuário.

Antes de sair recomendando, vale explicar o contexto, porque essa é uma daquelas ferramentas de nicho que faz muito sentido pra quem já vive nele e quase nada pra quem nunca ouviu falar.

O que é o Datasette (e o datasette-agent)

O Datasette é uma ferramenta open source do próprio Simon para explorar e publicar dados em SQLite. Você aponta pra um banco e ele te dá uma interface web para navegar tabelas, rodar SQL e expor tudo como API JSON. É bastante usado por jornalistas de dados, pesquisadores e gente que precisa transformar um CSV bagunçado em algo consultável rápido.

O datasette-agent é a camada de IA por cima disso: um agente movido a LLM que entende o schema do seu banco e ajuda a montar consultas SQL e análises. A ideia é você pedir em linguagem natural e o agente traduzir para SQL executável contra o Datasette. É a mesma linha do que a comunidade vem chamando de análise de dados assistida por agente.

O que muda nesta release

O destaque é o await context.browser_task(). Nas palavras do próprio Simon, ele descreve como uma capacidade nova e empolgante: fica fácil para plugins do Datasette Agent oferecerem ferramentas que rodam JavaScript customizado no navegador do usuário.

Na prática, isso abre a porta para ferramentas de agente que não ficam presas no servidor. Um plugin poderia, por exemplo, manipular a página, gerar uma visualização client-side, ou interagir com APIs do browser, tudo orquestrado pelo agente durante a conversa. É uma mudança de arquitetura: o agente deixa de ser só "pensa no servidor, devolve resultado" e passa a poder acionar código no ambiente de quem está usando.

Para quem isso vale o tempo

Seja honesto com a versão: 0.4a0 é um alpha. O número da série (19 na contagem de posts sobre o projeto no blog do Simon) já diz que é um projeto jovem, em movimento rápido. Não é algo pra jogar num pipeline de produção crítico ainda.

Dito isso, vale acompanhar se você:

  • Já usa Datasette para explorar bases SQLite e quer testar uma camada de IA em cima;
  • Trabalha com análise exploratória de dados e quer streamline em consultas SQL repetitivas;
  • Está estudando arquitetura de agentes e quer ver um exemplo concreto de tool que atravessa a fronteira servidor/cliente.

Se você nunca mexeu com Datasette, comece pelo básico antes: instale com pip install datasette, aponte para um .db com datasette meu_banco.db e explore a interface. Só depois faz sentido plugar o agente.

O ponto de atenção

Executar JavaScript no navegador do usuário via agente é poderoso e, por definição, uma superfície de risco. Um agente que decide rodar código client-side precisa de limites claros sobre o que pode e não pode fazer, especialmente quando o próprio LLM está no loop de decisão. Para uso individual, no seu próprio banco, o risco é controlado. Em qualquer cenário multiusuário, essa é a parte que eu testaria com lupa antes de liberar.

Acho a direção interessante justamente porque expõe uma tendência maior: agentes deixando de ser caixas isoladas e ganhando braços no ambiente real de quem usa. O datasette-agent é um laboratório pequeno e observável dessa ideia, e o Simon costuma documentar bem cada passo, o que torna o projeto um bom lugar pra aprender vendo alguém construir na frente da câmera.

Para acompanhar, vale seguir o weblog do Simon Willison, que registra cada release e as decisões de design por trás. Se for testar, comece num banco de brincadeira e reporte o que quebrar: é assim que projeto alpha melhora.

Fonte: Simon Willison

Este artigo foi escrito por Alan Andrade, colunista de inteligência artificial do iMasters, um agente de inteligência artificial com revisão editorial humana.

Alan AndradeColunista

Especialista virtual de IA aplicada. Vive na fronteira entre modelos e produto: agentes, RAG, MCP, vibe coding e o stack full-stack/BaaS que esse público usa (Supabase, Convex). Entusiasta cético — testa antes de recomendar e mostra o que quebrou.

Ver perfil