A QwenLM publicou o Qwen Code 0.24.1 a 19 de setembro, com uma alteração concreta para quem coordena vários agentes num único processo: passou a ser possível indicar quais as ferramentas que cada subagente pode utilizar. As notas de lançamento também incluem uma biblioteca para trabalhar com navegadores, baseada no Playwright. A distinção é essencial: a limitação de ferramentas foi integrada no encaminhamento dos fluxos de trabalho, enquanto a biblioteca de navegação corresponde apenas a uma primeira etapa de desenvolvimento. O documento técnico dos autores esclarece que essa etapa não ativa, por si só, a utilização do navegador na aplicação de linha de comandos.
Uma equipa pode ter um processo que consulta ficheiros, executa alguns comandos e produz um relatório. Se todas as etapas receberem acesso a todas as ferramentas, uma instrução incorreta pode desencadear operações que não eram necessárias. Na situação inversa, uma equipa que interprete a inclusão de uma biblioteca como uma funcionalidade pronta pode construir uma automatização que não funciona na versão instalada. O interesse editorial deste lançamento está em distinguir o controlo já disponibilizado da integração que permanece incompleta, usando as notas de versão e os pedidos de alteração aceites no repositório como prova das respetivas características.
Definir ferramentas autorizadas para cada etapa
O projeto acrescentou a opção tools à função agent(). Uma etapa pode, por exemplo, solicitar apenas read_file e run_shell_command. O programa compara essa lista com as ferramentas previamente autorizadas para o tipo de agente e aplica também as restrições existentes. Especificar uma ferramenta não dá ao agente uma autorização que ele não possuía. A lista final é tratada pelo mecanismo de declaração de ferramentas já utilizado pelo próprio agente, sem criar uma segunda camada de permissões para o novo fluxo de trabalho.
A diferença face à opção anterior disallowedTools é relevante. Antes, era necessário enumerar tudo aquilo que o subagente não deveria utilizar. Uma lista dessas pode tornar-se incompleta quando se acrescenta uma ferramenta ou um servidor MCP. Com a nova abordagem, cada etapa apresenta apenas o conjunto de ferramentas de que precisa. Isso facilita uma revisão concreta: por que razão precisa esta operação de executar comandos, ler ficheiros ou contactar determinado serviço? É uma conclusão sobre a arquitetura publicada, não uma garantia de segurança comprovada por testes independentes da Aipolix.
As regras têm pormenores que devem ser conhecidos antes da adoção. A lista aceita nomes exatos de ferramentas; padrões genéricos, o nome de um servidor MCP completo e a entrada especial exec são recusados. No modo em que a execução de código serve de interface para chamar outras ferramentas, exec continua presente, mas as operações acessíveis através dele ficam limitadas. Nomes que não correspondam a ferramentas disponíveis podem fazer falhar o pedido antes de o subagente arrancar. Os autores também assinalam que uma ferramenta com nome válido pode não estar visível na sessão final, deixando o agente com menos capacidades do que as esperadas. Por isso, convém verificar a lista efetivamente apresentada ao modelo, e não apenas o ficheiro de configuração.
Uma biblioteca não é uma funcionalidade completa de navegação
A outra novidade relevante é uma interface tipada que utiliza Playwright num ambiente Node REPL persistente e se liga a uma sessão existente do Chrome. A arquitetura reúne três formas de identificar elementos: seletores semânticos, referências à estrutura da página e coordenadas visuais. Inclui operações para gerir separadores, navegar, introduzir dados, obter capturas de ecrã, lidar com caixas de diálogo e sincronizar transferências. Essas funções descrevem a biblioteca; não demonstram que o programa distribuído já disponibiliza uma experiência de navegação de ponta a ponta.
A implementação foi dividida em três fases. A primeira constrói a biblioteca e os contratos de comunicação. A segunda liga-a ao Chrome através de um programa de comunicação local e de uma extensão. A terceira incorpora os componentes na aplicação Qwen Code. O pedido de alteração relativo à primeira fase é explícito: isoladamente, não ativa o Browser Use na linha de comandos nem altera as permissões da extensão. O mesmo documento menciona restrições de âmbito e de testes, como uma sessão por utilizador do sistema operativo, suporte para Windows fora da primeira fase e a necessidade de repetir determinados ensaios em Linux. Trata-se de limitações relatadas pelos próprios autores, não de resultados de testes feitos pela Aipolix.
Duas verificações antes de atualizar um processo de produção
A análise da Aipolix propõe separar a aceitação das duas funcionalidades. Para o controlo de ferramentas, criar um fluxo simples, declarar apenas as operações indispensáveis e confirmar que o subagente recebe exatamente as ferramentas esperadas. Convém experimentar a tentativa de chamada a uma ferramenta excluída e repetir o teste no modo de execução de código quando esse modo é utilizado. As integrações MCP merecem especial atenção à grafia exata dos nomes e à disponibilidade real no momento da execução.
Para a navegação, o teste deve partir da versão instalada: existe efetivamente a ligação ao Chrome e a integração final no programa, ou apenas o código da biblioteca? A resposta não se obtém pela simples leitura da lista de alterações. Há ainda uma mudança incompatível nesta versão: o evento que indicava o objetivo ativo deixa de ser emitido no fluxo de saída. As aplicações que dependam especificamente desse evento devem verificar a compatibilidade antes de atualizar; nada indica que tenham sido retirados todos os eventos.
Em síntese, o Qwen Code 0.24.1 fornece uma forma mais clara de reduzir o conjunto de ferramentas de cada subagente e lança as bases de um futuro trabalho com o navegador. A lista positiva não substitui todas as proteções de execução, tal como a existência de uma biblioteca não confirma que toda a funcionalidade esteja operacional. A decisão técnica deve basear-se no comportamento observado na versão e no ambiente que a equipa utiliza.