Expand description
Browser automation and perception pipeline for the Common Agent Runtime.
This crate provides:
BrowserBackendtrait: abstract interface for browser automation- Perception pipeline: converts raw browser state (screenshots + a11y trees) into structured
UiMapdata - Browser tool registration: registers
browse_*tools withcar-engine
§Architecture
car-browser is backend-agnostic. Consumers provide a BrowserBackend implementation:
- Hydra provides
TauriBackend(drives Tauri’s WebView) - Headless uses
ChromiumBackend(chromiumoxide) - Tests use
MockBackend
Re-exports§
pub use backend::BrowserBackend;pub use backend::BrowserError;pub use chromium::ChromiumBackend;pub use chromium::HistoryStep;pub use models::A11yNode;pub use models::Bounds;pub use models::Modifier;pub use models::Viewport;pub use models::WaitCondition;pub use recorder::Recording;pub use recorder::RecordingHandle;pub use screencast::FrameReceiver;pub use screencast::ScreencastFrame;pub use screencast::ScreencastPump;pub use screencast::FRAME_CHANNEL_CAP;pub use tabs::TabError;pub use tabs::TabEvent;pub use tabs::TabId;pub use tabs::TabInfo;pub use tabs::TabsSnapshot;pub use tools::BrowserToolExecutor;
Modules§
- backend
- Browser backend trait — the abstract interface that all browser implementations must satisfy.
- chromium
- Headless Chromium backend via chromiumoxide.
- keymap
- What a key press has to look like before Chromium will act on it.
- models
- Core browser domain types.
- perception
- Perception pipeline — converts raw browser state into structured UiMap data.
- profile
- Who currently holds which persistent Chromium profile directory, within this process.
- recorder
- Screen recording for a driven browser session, via CDP screencast.
- screencast
- Broadcast-capable CDP screencast pump.
- tabs
- Multi-tab page registry — the tab data model behind
crate::chromium::ChromiumBackend. - tools
- Browser tool registration and execution for car-engine.