Hmbown/CodeWhale · error

`codewhale --continue` resumes the interactive TUI. Use `cod

Error message

`codewhale --continue` resumes the interactive TUI. Use `codewhale exec --continue <PROMPT>` to continue a session non-interactively.

What it means

Codewhale rejects the combination of `--continue` with any prompt input (`-p/--prompt` or a positional prompt) while building forwarded arguments for the interactive TUI. `--continue` resumes the interactive TUI and takes no prompt; non-interactive continuation with a prompt must go through the `exec` subcommand. The message tells you the exact replacement command shape.

Source

Thrown at crates/cli/src/lib.rs:2035

    let mut forwarded = Vec::new();
    if cli.continue_session {
        forwarded.push("--continue".to_string());
    }

    let prompt =
        cli.prompt_flag
            .iter()
            .chain(cli.prompt.iter())
            .fold(String::new(), |mut acc, part| {
                if !acc.is_empty() {
                    acc.push(' ');
                }
                acc.push_str(part);
                acc
            });
    if !prompt.is_empty() {
        if cli.continue_session {
            bail!(
                "`codewhale --continue` resumes the interactive TUI. Use `codewhale exec --continue <PROMPT>` to continue a session non-interactively."
            );
        }
        forwarded.push("--prompt".to_string());
        forwarded.push(prompt);
    }

    Ok(forwarded)
}

fn resolve_runtime_for_dispatch(
    store: &mut ConfigStore,
    runtime_overrides: &CliRuntimeOverrides,
) -> ResolvedRuntimeOptions {
    let runtime_secrets = Secrets::auto_detect();
    resolve_runtime_for_dispatch_with_secrets(store, runtime_overrides, &runtime_secrets)
}

View on GitHub (pinned to 0c42157ee5)

Solutions

  1. For non-interactive continuation with a prompt, use `codewhale exec --continue "<PROMPT>"`
  2. For interactive resume, drop the prompt entirely: `codewhale --continue`
  3. Audit shell aliases/scripts that append prompts to resume commands

Example fix

# before
$ codewhale --continue "fix the failing test"

# after
$ codewhale exec --continue "fix the failing test"
Defensive patterns

Strategy: validation

Validate before calling

#!/usr/bin/env bash
prompt="fix the failing test"
if [ -n "$prompt" ] && [ "$CONTINUE" = "1" ]; then
  exec codewhale exec --continue "$prompt"   # non-interactive continue
else
  exec codewhale --continue                   # interactive resume
fi

Prevention

When it happens

Trigger: `codewhale --continue "fix the failing test"`, `codewhale -c --prompt "summarize"`, or scripts that append a prompt to a resume invocation; any invocation where the concatenated prompt is non-empty and `continue_session` is true.

Common situations: Users coming from other CLIs (e.g. Claude Code-style `--continue "prompt"`) expecting continue-plus-prompt to work; shell aliases that always inject a prompt; copy-pasting an old command after the flag semantics changed.

Related errors


AI-assisted analysis of Hmbown/CodeWhale@0c42157ee5 (2026-08-20). Data as JSON: /api/errors/78db82a80609784b. Report an issue: GitHub.