Web Automation
Browser Automation & Web Audits
Kyro interacts with web applications through a lightweight native WebSocket protocol adapter that communicates directly with standard browser debugging protocols.
Dual Protocol Architecture
Firefox (WebDriver BiDi)
Connects to Firefox instances via the modern W3C standard WebDriver BiDi protocol over WebSockets. Enables bi-directional element inspection, console message streaming, and network tracking.
Chromium Family (CDP)
Connects to Google Chrome, Chromium, Brave, Microsoft Edge, Opera, and Vivaldi using the Chrome DevTools Protocol (CDP) without requiring third-party testing driver binaries.
Origin-Scoped Safety & Navigation Policy
The Rust backend evaluates all URL navigation requests before dispatching them to the browser worker:
- • Scope confinement: Keeps test runs confined to the target development server origin.
- • Blocked domain lists: Financial, banking, and payment gateways (PayPal, Chase) trigger an immediate human takeover rather than automated form filling.
- • No silent browser substitution: If a requested browser is not installed, Kyro fails closed and presents a list of detected alternatives.
Visual Regression Baselines
Kyro stores baseline snapshots in ~/.config/kyro/baselines/:
Visual Baseline CLI & Audit Flow
# During UI Audit, renders are checked across standard viewports:
Desktop: 1920 x 1080
Tablet: 768 x 1024
Mobile: 375 x 812
# Pixel differences are evaluated using compute_diff_percent()
# Differences above tolerance threshold trigger a VisualRegression finding.