1 points par maestrojeong 4 시간 전 | Aucun commentaire pour le moment. | Partager sur WhatsApp

1. Motivation ?

Un agent, un Chrome. Si c’est la configuration par défaut, cela consomme 500 Mo à 1 Go de RAM par agent. Rien qu’avec 5 agents, le navigateur occupe 2,5 à 5 Go de RAM.

En plus, avec Playwright, la session CDP elle-même consomme par défaut environ 180 Mo par instance. Sans même compter la mémoire du processus du navigateur, cela signifie que la couche CDP est déjà lourde. Plus on ajoute d’agents, plus ce surcoût se multiplie linéairement.

Pour faire tourner du multi-agent en conditions réelles, il fallait commencer par casser cette architecture.


2. Comment ?

On ne lance qu’un seul navigateur. Quel que soit le nombre d’agents, ils s’y connectent via raw CDP, et le serveur impose une isolation des onglets par owner. L’agent B ne peut pas toucher aux onglets de l’agent A. Comme une seule instance prend en charge N agents, la mémoire du navigateur n’augmente pas quand le nombre d’agents augmente.

Le langage a aussi changé. Tout a été réécrit en Rust, avec une architecture qui n’intègre pas de navigateur (connexion à un Chrome existant avec --connect), ce qui donne un serveur sous forme de binaire unique de 6 Mo.

La détection est évitée. En s’inspirant de Patchright, les domaines CDP faciles à détecter comme Runtime.enable ne sont tout simplement pas activés, et au lieu d’un faux navigateur patché, c’est le vrai Chrome de l’utilisateur + son profil persistant qui sont utilisés tels quels.


3. Résumé

En résumé : un contrôleur de navigateur furtif multi-agent ultraléger

62 tools basés sur raw CDP — références d’arbre d’accessibilité, action settle-diff, network/cookies/storage/PDF/upload/iframe/WebAuthn, stdio + HTTP/SSE.

Installation

curl -fsSL https://raw.githubusercontent.com/maestrojeong/browser-rs-mcp/… | sh


4. Travaux à venir

Le build Windows et la publication sur crates.io font aussi partie des prochaines tâches.

Aucun commentaire pour le moment.

Aucun commentaire pour le moment.