tinyhumansai/openhuman · error
Host '{host}' not in browser.allowed_domains
Error message
Host '{host}' not in browser.allowed_domains What it means
validate_url rejects a host that is not matched by the configured [browser].allowed_domains patterns (when the allowlist is non-empty). This is the domain-allowlist enforcement point for the automation backend.
Source
Thrown at src/openhuman/tools/impl/browser/browser.rs:315
anyhow::bail!("Only http:// and https:// URLs are allowed");
}
if self.allowed_domains.is_empty() && !allow_all_browser_domains() {
anyhow::bail!(
"Browser tool enabled but no allowed_domains configured. \
Add [browser].allowed_domains in config.toml or set OPENHUMAN_BROWSER_ALLOW_ALL=1"
);
}
let host = extract_host(url)?;
if is_private_host(&host) {
anyhow::bail!("Blocked local/private host: {host}");
}
if !self.allowed_domains.is_empty() && !host_matches_allowlist(&host, &self.allowed_domains)
{
anyhow::bail!("Host '{host}' not in browser.allowed_domains");
}
Ok(())
}
/// Execute an agent-browser command
async fn run_command(&self, args: &[&str]) -> anyhow::Result<AgentBrowserResponse> {
let mut cmd = Command::new("agent-browser");
// Add session if configured
if let Some(ref session) = self.session_name {
cmd.arg("--session").arg(session);
}
// Add --json for machine-readable output
cmd.args(args).arg("--json");
debug!("Running: agent-browser {} --json", args.join(" "));View on GitHub (pinned to 7491200858)
Solutions
- Add the host (or a matching wildcard pattern) to [browser].allowed_domains.
- Navigate to a domain already on the allowlist.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at src/openhuman/tools/impl/browser/browser.rs:315 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of tinyhumansai/openhuman@7491200858 (2026-08-17).
Data as JSON: /api/errors/b04a11f2011f7a6d.
Report an issue: GitHub.