Hmbown/CodeWhale · error · anyhow::Error
Codex credential file {} is not valid credential JSON
Error message
Codex credential file {} is not valid credential JSON What it means
Error "Codex credential file {} is not valid credential JSON" thrown in Hmbown/CodeWhale.
Source
Thrown at crates/tui/src/oauth.rs:111
// 60-second safety margin
now + 60 >= exp
}
// If we can't prove freshness, fail closed. External credentials are
// never refreshed by Codewhale.
None => true,
}
}
/// Load Codex credentials from the auth file.
///
/// Returns `Ok(None)` if the file doesn't exist or has no usable tokens.
/// Returns `Err` only on parse/IO errors that aren't "file not found".
fn load_credentials(grant: &ExternalCredentialReadGrant) -> Result<Option<CodexCredentials>> {
let Some(contents) = crate::external_credentials::read_to_string(grant)? else {
return Ok(None);
};
let auth: CodexAuthFile = serde_json::from_str(&contents).map_err(|_| {
anyhow::anyhow!(
"Codex credential file {} is not valid credential JSON",
codewhale_config::quote_os_path(grant.path())
)
})?;
let tokens = match auth.tokens {
Some(t) => t,
None => return Ok(None),
};
let access_token = match tokens.access_token {
Some(t) if !t.trim().is_empty() => t,
_ => return Ok(None),
};
Ok(Some(CodexCredentials {
access_token,
account_id: tokens.account_id,
}))
}
View on GitHub (pinned to 8880682c63)
When it happens
Trigger: Thrown at crates/tui/src/oauth.rs:111 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/e39fdf19a72860f2.
Report an issue: GitHub.