Hmbown/CodeWhale · error
warning: could not open the default browser ({error}); open
Error message
warning: could not open the default browser ({error}); open the bootstrap URL above manually What it means
web_launcher_warning converts a failure from opening the user's default browser into a user-facing warning string; the runtime API server is already up and the bootstrap URL is printed, so the launch proceeds without automation. This is a graceful degradation, not an error state: xdg-open/open missing or no browser installed are the typical causes.
Source
Thrown at crates/tui/src/runtime_api.rs:985
port = options.port,
auth = auth_enabled,
);
}
let serve_result = axum::serve(
listener,
app.into_make_service_with_connect_info::<SocketAddr>(),
)
.await
.map_err(|e| anyhow!("Runtime API server error: {e}"));
scheduler_cancel.cancel();
scheduler_handle.abort();
serve_result
}
fn web_launcher_warning(result: Result<()>) -> Option<String> {
result.err().map(|error| {
format!(
"warning: could not open the default browser ({error}); open the bootstrap URL above manually"
)
})
}
fn fallback_sessions_dir() -> PathBuf {
if let Some(home) = codewhale_paths::codewhale_home_override().ok().flatten() {
return home.join("sessions");
}
codewhale_paths::legacy_deepseek_home()
.unwrap_or_else(|| PathBuf::from(codewhale_paths::LEGACY_APP_DIR))
.join("sessions")
}
pub fn build_router(state: RuntimeApiState) -> Router {
let api_routes = Router::new()
.route(
"/v1/sessions",
get(list_sessions)View on GitHub (pinned to 0c42157ee5)
Solutions
- Copy the printed bootstrap URL into a browser manually when this warning appears
- Ensure a browser or xdg-open equivalent exists on headless/minimal systems
- No server action required; the API serves regardless of launcher outcome
Defensive patterns
Strategy: fallback
When it happens
Trigger: Thrown at crates/tui/src/runtime_api.rs:985 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of Hmbown/CodeWhale@0c42157ee5 (2026-08-20).
Data as JSON: /api/errors/8df2a67262b921f7.
Report an issue: GitHub.