{"record":{"id":"658734fd257628ce","repo":"tinyhumansai/openhuman","slug":"browser-backend-but-agent-browser-is-unavaila","errorCode":null,"errorMessage":"browser.backend='{}' but agent-browser is unavailable. Install it in your environment.","messagePattern":"browser\\.backend='(.+?)' but agent-browser is unavailable\\. Install it in your environment\\.","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/openhuman/tools/impl/browser/browser.rs","lineNumber":205,"sourceCode":"        }\n\n        Ok(parsed)\n    }\n\n    fn computer_use_available(&self) -> anyhow::Result<bool> {\n        let endpoint = self.computer_use_endpoint_url()?;\n        Ok(endpoint_reachable(&endpoint, Duration::from_millis(500)))\n    }\n\n    async fn resolve_backend(&self) -> anyhow::Result<ResolvedBackend> {\n        let configured = self.configured_backend()?;\n\n        match configured {\n            BrowserBackendKind::AgentBrowser => {\n                if Self::is_agent_browser_available().await {\n                    Ok(ResolvedBackend::AgentBrowser)\n                } else {\n                    anyhow::bail!(\n                        \"browser.backend='{}' but agent-browser is unavailable. Install it in your environment.\",\n                        configured.as_str()\n                    )\n                }\n            }\n            BrowserBackendKind::Playwright => {\n                if Self::is_playwright_available().await {\n                    Ok(ResolvedBackend::Playwright)\n                } else {\n                    anyhow::bail!(\n                        \"browser.backend='playwright' but Playwright is unavailable. Ensure app/node_modules is installed, run `pnpm --filter openhuman-app exec playwright install chromium-headless-shell`, or set OPENHUMAN_PLAYWRIGHT_CWD.\"\n                    )\n                }\n            }\n            BrowserBackendKind::RustNative => {\n                if !Self::rust_native_compiled() {\n                    anyhow::bail!(\n                        \"browser.backend='rust_native' requires build feature 'browser-native'\"","sourceCodeStart":187,"sourceCodeEnd":223,"githubUrl":"https://github.com/tinyhumansai/openhuman/blob/749120085864ce16e0f273c7b86fac7740b39c5b/src/openhuman/tools/impl/browser/browser.rs#L187-L223","documentation":"resolve_backend fails when the config explicitly pins browser.backend='agent-browser' but the agent-browser tool is not installed/reachable in the environment. Unlike 'auto', a pinned backend is never substituted, so the missing dependency is reported directly.","triggerScenarios":"Thrown at src/openhuman/tools/impl/browser/browser.rs:205 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Install agent-browser in the environment.","Switch browser.backend to 'auto' or 'playwright' in config.toml.","Fix PATH so the agent-browser binary is discoverable."],"exampleFix":null,"handlingStrategy":"fallback","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"749120085864ce16e0f273c7b86fac7740b39c5b","analyzedAt":"2026-08-17T21:21:45.363Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}