Hmbown/CodeWhale · error

stdin is not a terminal; pass --yes to confirm the disclosed

Error message

stdin is not a terminal; pass --yes to confirm the disclosed plan

What it means

Error "stdin is not a terminal; pass --yes to confirm the disclosed plan" thrown in Hmbown/CodeWhale.

Source

Thrown at crates/tui/src/integrations/cli.rs:49

    let paths = DshPaths::from_process()?;
    let detection = detect_now();
    let identity = dsh::codewhale_route_identity(config, workspace);
    let report = dsh::compute_status(
        &paths,
        detection,
        identity,
        allow_full_access,
        dsh::bundle_availability_now(),
    )?;
    Ok((paths, report))
}

fn confirm(yes: bool, question: &str) -> Result<()> {
    if yes {
        return Ok(());
    }
    if !std::io::stdin().is_terminal() {
        anyhow::bail!("stdin is not a terminal; pass --yes to confirm the disclosed plan");
    }
    print!("{question} [y/N] ");
    use std::io::Write;
    std::io::stdout().flush().ok();
    let mut answer = String::new();
    std::io::stdin()
        .read_line(&mut answer)
        .context("read confirmation")?;
    if !matches!(answer.trim().to_ascii_lowercase().as_str(), "y" | "yes") {
        anyhow::bail!("not confirmed; nothing was written");
    }
    Ok(())
}

fn print_status(report: &DshStatusReport) {
    println!("DeepSeek Harness (dsh) — {}", RELATIONSHIP_LABEL);
    println!("  state: {}", report.state.label());
    println!("  summary: {}", dsh::status_line(report));

View on GitHub (pinned to 8880682c63)

When it happens

Trigger: Thrown at crates/tui/src/integrations/cli.rs:49 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of Hmbown/CodeWhale@8880682c63 (2026-08-16). Data as JSON: /api/errors/895488c245f911c5. Report an issue: GitHub.