{"record":{"id":"bb14cfe8cea1f6ff","repo":"nikivdev/code","slug":"codex-resume-requires-an-interactive-terminal-tty","errorCode":null,"errorMessage":"codex resume requires an interactive terminal (TTY); run this in a terminal tab (e.g. Zed/Ghostty)","messagePattern":"codex resume requires an interactive terminal \\(TTY\\); run this in a terminal tab \\(e\\.g\\. Zed/Ghostty\\)","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/ai.rs","lineNumber":14899,"sourceCode":"\n    get_session_last_timestamp_for_path(\n        &session.session_id,\n        session.provider,\n        &session.project_path,\n    )\n}\n\nfn launch_resolved_resume_session(\n    session_id: String,\n    session_provider: Provider,\n    codex_launch_target: Option<PathBuf>,\n    explicit_session_requested: bool,\n) -> Result<()> {\n    let has_tty = io::stdin().is_terminal() && io::stdout().is_terminal();\n    if !has_tty {\n        match session_provider {\n            Provider::Codex => {\n                bail!(\n                    \"codex resume requires an interactive terminal (TTY); run this in a terminal tab (e.g. Zed/Ghostty)\"\n                );\n            }\n            Provider::Claude => {\n                bail!(\n                    \"claude resume requires an interactive terminal (TTY); run this in a terminal tab (e.g. Zed/Ghostty)\"\n                );\n            }\n            Provider::Cursor => {\n                bail!(\n                    \"cursor transcripts are readable only; use `f cursor list`, `f cursor copy`, or `f cursor context`\"\n                );\n            }\n            Provider::All => {}\n        }\n    }\n\n    if session_provider == Provider::Cursor {","sourceCodeStart":14881,"sourceCodeEnd":14917,"githubUrl":"https://github.com/nikivdev/code/blob/a747e741ae92c09071d0ae946ab48488adcff1ce/src/ai.rs#L14881-L14917","documentation":"Error \"codex resume requires an interactive terminal (TTY); run this in a terminal tab (e.g. Zed/Ghostty)\" thrown in nikivdev/code.","triggerScenarios":"Thrown at src/ai.rs:14899 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"a747e741ae92c09071d0ae946ab48488adcff1ce","analyzedAt":"2026-09-01T22:43:55.719Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-08T10:18:20.063Z"}