openai/codex · error · anyhow::Error

Desktop app at {} failed OpenAI signature verification (team

Error message

Desktop app at {} failed OpenAI signature verification (team {OPENAI_APPLE_TEAM_IDENTIFIER}, bundle {CODEX_BUNDLE_IDENTIFIER}): {}

What it means

Error "Desktop app at {} failed OpenAI signature verification (team {OPENAI_APPLE_TEAM_IDENTIFIER}, bundle {CODEX_BUNDLE_IDENTIFIER}): {}" thrown in openai/codex.

Source

Thrown at codex-rs/cli/src/desktop_app/mac.rs:144

}

async fn verify_codex_app_bundle(app_path: &Path) -> anyhow::Result<()> {
    let requirement = format!(
        "identifier \"{CODEX_BUNDLE_IDENTIFIER}\" and anchor apple generic and certificate leaf[subject.OU] = \"{OPENAI_APPLE_TEAM_IDENTIFIER}\""
    );
    let output = Command::new("/usr/bin/codesign")
        .args(["--verify", "--deep", "--strict"])
        .arg(format!("-R={requirement}"))
        .arg(app_path)
        .output()
        .await
        .context("failed to verify Desktop app signature")?;

    if output.status.success() {
        return Ok(());
    }

    anyhow::bail!(
        "Desktop app at {} failed OpenAI signature verification (team {OPENAI_APPLE_TEAM_IDENTIFIER}, bundle {CODEX_BUNDLE_IDENTIFIER}): {}",
        app_path.display(),
        String::from_utf8_lossy(&output.stderr).trim()
    );
}

fn codex_new_thread_url(workspace: &Path) -> String {
    let workspace = workspace.as_os_str().to_string_lossy();
    let mut serializer = url::form_urlencoded::Serializer::new(String::new());
    serializer.append_pair("path", workspace.as_ref());
    let query = serializer.finish();
    format!("codex://threads/new?{query}")
}

async fn download_and_install_codex_to_user_applications(dmg_url: &str) -> anyhow::Result<PathBuf> {
    let temp_dir = Builder::new()
        .prefix("codex-app-installer-")
        .tempdir()

View on GitHub (pinned to 339751715c)

When it happens

Trigger: Thrown at codex-rs/cli/src/desktop_app/mac.rs:144 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of openai/codex@339751715c (2026-08-25). Data as JSON: /api/errors/f3e9088ad2cbdc0b. Report an issue: GitHub.