tinyhumansai/openhuman · error

Playwright daemon exited without a response

Error message

Playwright daemon exited without a response

What it means

read_response got EOF from the daemon's stdout: read_line returned 0 bytes, meaning the Playwright daemon process exited before producing a response for the pending request.

Source

Thrown at src/openhuman/tools/impl/browser/playwright_backend.rs:233

        .context("Failed to terminate Playwright request")?;
    daemon
        .stdin
        .flush()
        .await
        .context("Failed to flush Playwright request")?;
    Ok(())
}

async fn read_response(daemon: &mut PlaywrightDaemon) -> Result<PlaywrightResponse> {
    tracing::trace!("[browser::playwright] reading response from daemon");
    let mut line = String::new();
    let read = daemon
        .stdout
        .read_line(&mut line)
        .await
        .context("Failed to read Playwright stdout")?;
    if read == 0 {
        anyhow::bail!("Playwright daemon exited without a response");
    }
    tracing::trace!("[browser::playwright] received response from daemon");
    serde_json::from_str(&line).context("Playwright daemon returned invalid JSON")
}

async fn start_daemon(headless: bool) -> Result<PlaywrightDaemon> {
    tracing::debug!(
        headless,
        "[browser::playwright] spawning playwright backend daemon"
    );
    let mut command = node_command();
    command
        .arg("-e")
        .arg(RUNNER_JS)
        .env(
            "OPENHUMAN_PLAYWRIGHT_HEADLESS",
            if headless { "1" } else { "0" },
        )

View on GitHub (pinned to 7491200858)

Solutions

  1. Retry the action to spawn a new daemon
  2. Check daemon logs or stderr for a crash cause (missing Playwright install, bad Node version)
  3. Reinstall or repair the Playwright daemon if it exits immediately on every launch
Defensive patterns

Strategy: retry

When it happens

Trigger: Thrown at src/openhuman/tools/impl/browser/playwright_backend.rs:233 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/d10fff9b13876ae1. Report an issue: GitHub.