1 ポイント 投稿者 maestrojeong 4 시간 전 | まだコメントはありません。 | WhatsAppで共有

1. Motivation?

エージェント1つにChrome1つ。これがデフォルトだと、エージェントごとにRAMを500MB〜1GB消費します。エージェントを5つ動かすだけでも、ブラウザだけでRAMは2.5〜5GBです。

そのうえPlaywrightは、CDPセッション自体がデフォルトで1つあたり約180MBを消費します。ブラウザプロセスのメモリは別としても、CDPレイヤー自体がすでに重いという意味です。エージェントを増やすほど、このオーバーヘッドは線形に積み上がります。

マルチエージェントを実運用で回すには、まずこの構造から壊す必要がありました。


2. How?

ブラウザは1つだけ起動する。エージェントが何個あっても、その上にraw CDPで接続し、サーバーがowner単位でタブを強制的に分離します。エージェントAのタブをBが触ることはできません。1つのインスタンスでN個を扱えるので、エージェントが増えてもブラウザメモリは増えません。

言語も変えました。Rustで書き直し、ブラウザを内蔵しない構造(既存のChromeに--connect)にして、サーバー自体は単一バイナリ6MBです。

検出も回避します。Patchrightに着想を得て、Runtime.enable のような検出されやすいCDPドメインはそもそも有効化せず、パッチ済みの偽ブラウザではなく、ユーザーの本物のChrome + persistent profileをそのまま使います。


3. Summary

まとめると: 超軽量マルチエージェント向けステルスブラウザコントローラー

raw CDPベースの62個のtool — アクセシビリティツリーref、action settle-diff、network/cookies/storage/PDF/upload/iframe/WebAuthn、stdio + HTTP/SSE。

インストール

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


4. Future work

Windowsビルドとcrates.ioへの登録も、次の作業として残っています。

まだコメントはありません。

まだコメントはありません。