tinyhumansai/openhuman · error
missing value for --message
Error message
missing value for --message
What it means
The `openhuman sentry-test` probe requires the text to follow `--message` as the next token; the flag was the last argument, so `args.get(i + 1)` returned None. This parser does not inspect the value's shape, so unlike the launch-option parser it only fires at end-of-args — a following flag would be consumed as the message text.
Source
Thrown at src/core/cli.rs:243
/// DSN, the command exits non-zero with a diagnostic instead of silently
/// producing no telemetry.
///
/// Only compiled with the `crash-reporting` feature; the `#[cfg(not(...))]`
/// companion below returns a disabled-build error (mirrors the `mcp` CLI
/// precedent, where the subcommand arm + top-level help stay compiled and the
/// handler reports the build fact rather than a bogus "unknown command").
#[cfg(feature = "crash-reporting")]
fn run_sentry_test_command(args: &[String]) -> Result<()> {
let mut message: Option<String> = None;
let mut do_panic = false;
let mut i = 0usize;
while i < args.len() {
match args[i].as_str() {
"--message" => {
message = Some(
args.get(i + 1)
.ok_or_else(|| anyhow::anyhow!("missing value for --message"))?
.clone(),
);
i += 2;
}
"--panic" => {
do_panic = true;
i += 1;
}
"-h" | "--help" => {
println!("Usage: openhuman sentry-test [--message <text>] [--panic]");
println!();
println!(" --message <text> Body of the Error-level event sent to Sentry");
println!(" (default: \"openhuman sentry-test ping\")");
println!(" --panic After capturing the event, trigger a panic so the");
println!(" panic integration reports it as a separate event.");
println!();
println!(
"Requires OPENHUMAN_CORE_SENTRY_DSN (or the legacy OPENHUMAN_SENTRY_DSN alias)"View on GitHub (pinned to a221052e0d)
Solutions
- Pass the text as the next token: `openhuman sentry-test --message "my event text"`
- Omit `--message` entirely to use the built-in default "openhuman sentry-test ping"
- Check usage with `openhuman sentry-test --help`
Example fix
# before openhuman sentry-test --message # after openhuman sentry-test --message "deploy verification"
Defensive patterns
Strategy: validation
Validate before calling
# bash: only append --message when a payload exists
args=(sentry-test)
[ -n "${MSG:-}" ] && args+=(--message "$MSG")
[ "${PANIC:-0}" = 1 ] && args+=(--panic)
openhuman "${args[@]}" Prevention
- Omit --message to use the default 'openhuman sentry-test ping' payload
- Do not use the --message=text equals form — this parser rejects it
- Keep flag/value pairs as single array elements in wrapper scripts
When it happens
Trigger: `openhuman sentry-test --message` with nothing after it; a script truncating its argument list before the value.
Common situations: Testing the Sentry pipeline quickly and forgetting the payload; assuming a `--message=text` equals form works (it does not — that form is rejected as an unknown arg); shell arrays built with an odd length.
Related errors
- unknown sentry-test arg: {other}
- audio blob is empty
- voice_not_compiled
- Recovery phrase is required.
- Failed to secure recovery phrase. Please try again.
AI-assisted analysis of tinyhumansai/openhuman@a221052e0d (2026-08-16).
Data as JSON: /api/errors/bf5d2be39fccf5f2.
Report an issue: GitHub.