browser-rs-mcp — controlador de navegador stealth multiagente ultraleve
(github.com/maestrojeong)1. Motivação?
Um Chrome para cada agente. Se esse é o padrão, cada agente consome de 500 MB a 1 GB de RAM. Rodando apenas 5 agentes, só os navegadores já usam de 2,5 a 5 GB de RAM.
Além disso, no Playwright, a própria sessão CDP consome por padrão cerca de ~180 MB por instância. Sem contar a memória do processo do navegador, isso significa que a própria camada CDP já é pesada. Conforme o número de agentes aumenta, esse overhead se multiplica linearmente.
Para rodar multiagentes na prática, era preciso começar quebrando essa estrutura.
2. Como?
Executa-se apenas um navegador. Independentemente de quantos agentes houver, eles se conectam a ele via raw CDP, e o servidor força o isolamento de abas por owner. O agente B não consegue mexer na aba do agente A. Como uma única instância dá conta de N agentes, a memória do navegador não aumenta mesmo quando o número de agentes cresce.
A linguagem também foi trocada. Foi reescrito em Rust e estruturado para não embutir um navegador (conecta-se a um Chrome existente com --connect), fazendo com que o próprio servidor seja um binário único de 6 MB.
Evita detecção. Inspirado no Patchright, ele simplesmente não habilita domínios CDP fáceis de detectar, como Runtime.enable, e usa o Chrome real do usuário + persistent profile tal como é, em vez de um navegador falso com patches.
3. Resumo
Em suma: um controlador de navegador stealth multiagente ultraleve
62 tools baseadas em raw CDP — ref de árvore de acessibilidade, action settle-diff, network/cookies/storage/PDF/upload/iframe/WebAuthn, stdio + HTTP/SSE.
Instalação
curl -fsSL https://raw.githubusercontent.com/maestrojeong/browser-rs-mcp/… | sh
4. Trabalhos futuros
O build para Windows e o registro no crates.io também ficam como próximos trabalhos.
Ainda não há comentários.