keon/browser-control

A tiny, fast Rust CLI that drives a real browser over the Chrome DevTools Protocol — built for coding agents.

解決的問題

browser-control 為 AI 編碼代理提供了一種無需複雜 SDK、長時間執行的伺服器或特定語言框架,即可與真實網頁瀏覽器互動的方法。它透過將瀏覽器功能以簡單、原生的 shell 命令形式公開,解決了脆弱的網頁選擇器問題,以及讓 LLM 獲得「手與眼」以導航網頁的困難。

工作原理

這是一個輕量級的 Rust CLI,透過 Chrome DevTools Protocol (CDP) 與瀏覽器通訊。它不依賴 CSS 選擇器,而是使用 snapshot 命令生成穩定的元素參考(例如 @e1, @e2),代理可使用這些參考執行點擊或填寫表單等操作。它可透過 CDP 驅動本地 Chrome 實例,或透過各種雲端提供者(如 Browserbase 或 Steel)的遠端會話,使用相同的命令集。

適用對象

主要針對已能執行 shell 命令,並需要一種可靠且可除錯方式控制瀏覽器進行測試或自動化的 AI 編碼代理開發者。

特色亮點

  • 原生 shell: 每個功能皆為子命令,輸出文字或 JSON,方便在 shell 中進行管道與組合。
  • LLM 友好參考: 使用快照生成的穩定元素句柄(@e1, @e2)避免脆弱的 CSS 選擇器。
  • 與提供者無關: 透過 CDP 支援本地 Chrome 或遠端雲端瀏覽器。
  • 可觀測性: 內建背景守護程序用於事件/網路/控制台追蹤,並在命令失敗時自動產生緊湊的追蹤記錄,供代理自我診斷。
  • 原始 CDP 存取: 提供 evalcdp 命令作為逃生通道,用於處理所有未被輔助介面涵蓋的操作。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案