tinyhumansai/openhuman · error
PUSHOVER_TOKEN not found in .env
Error message
PUSHOVER_TOKEN not found in .env
What it means
The .env was read successfully but no PUSHOVER_TOKEN line matched (keys are matched case-insensitively, with optional 'export ' prefix and quote/Comment stripping). The notification cannot be authenticated, so the send is aborted.
Source
Thrown at src/openhuman/tools/impl/system/pushover.rs:71
for line in content.lines() {
let line = line.trim();
if line.starts_with('#') || line.is_empty() {
continue;
}
let line = line.strip_prefix("export ").map(str::trim).unwrap_or(line);
if let Some((key, value)) = line.split_once('=') {
let key = key.trim();
let value = Self::parse_env_value(value);
if key.eq_ignore_ascii_case("PUSHOVER_TOKEN") {
token = Some(value);
} else if key.eq_ignore_ascii_case("PUSHOVER_USER_KEY") {
user_key = Some(value);
}
}
}
let token = token.ok_or_else(|| anyhow::anyhow!("PUSHOVER_TOKEN not found in .env"))?;
let user_key =
user_key.ok_or_else(|| anyhow::anyhow!("PUSHOVER_USER_KEY not found in .env"))?;
Ok((token, user_key))
}
}
#[async_trait]
impl Tool for PushoverTool {
fn name(&self) -> &str {
"pushover"
}
fn description(&self) -> &str {
"Send a Pushover notification to your device. Requires PUSHOVER_TOKEN and PUSHOVER_USER_KEY in .env file."
}
fn parameters_schema(&self) -> serde_json::Value {View on GitHub (pinned to 7491200858)
Solutions
- Add a PUSHOVER_TOKEN=... line to the workspace .env
- Check the key spelling — surrounding quotes and trailing # comments are tolerated
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at src/openhuman/tools/impl/system/pushover.rs:71 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/44f8d5e6e88528e3.
Report an issue: GitHub.