Make Chrome headless the default WebDriver browser

- Add --safari flag to CLI for explicitly choosing Safari
- Update --chrome-headless flag description to indicate it's the default
- Update README to reflect Chrome headless as default
- Remove broken link to non-existent docs/webdriver-setup.md
- Add Safari flag handling in all webdriver config locations

The config already had ChromeHeadless as the default, this commit
updates the CLI and documentation to match.
This commit is contained in:
Dhanji R. Prasanna
2025-12-15 16:51:42 +11:00
parent d32bd9be03
commit 3d1b86d24b
9 changed files with 569 additions and 46 deletions

View File

@@ -115,10 +115,24 @@ pub struct ComputerControlConfig {
pub max_actions_per_second: u32,
}
/// Browser type for WebDriver
#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Default)]
#[serde(rename_all = "lowercase")]
pub enum WebDriverBrowser {
Safari,
#[serde(rename = "chrome-headless")]
#[default]
ChromeHeadless,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct WebDriverConfig {
pub enabled: bool,
pub safari_port: u16,
#[serde(default)]
pub chrome_port: u16,
#[serde(default)]
pub browser: WebDriverBrowser,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
@@ -137,6 +151,8 @@ impl Default for WebDriverConfig {
Self {
enabled: true,
safari_port: 4444,
chrome_port: 9515,
browser: WebDriverBrowser::ChromeHeadless,
}
}
}