Remote mobile Codex cannot download generated PDFs: file citations and local links are non-clickable

Open 💬 2 comments Opened Jul 31, 2026 by YesterdaysLemon
💡 Likely answer: A maintainer (github-actions[bot], contributor) responded on this thread — see the highlighted reply below.

What version of the Codex App are you using?

Windows host: Codex App 26.721.11231.0.

The exact ChatGPT/Codex mobile client build was not captured.

What subscription do you have?

Not captured.

What platform is your computer?

Windows 11 Home 10.0.26200 x64 host, accessed from the mobile Codex thread view.

What issue are you seeing?

A Codex task successfully created and verified a PDF in the Windows workspace, but the user could not download it from the same thread on their phone.

Two delivery forms were attempted:

  1. A Codex file citation:
:codex-file-citation{path="C:/Users/<redacted>/workspace/generated.pdf" purpose="output"}
  1. A Markdown link to the absolute workspace path:
[Download PDF](</C:/Users/<redacted>/workspace/generated.pdf>)

On mobile, neither form exposed a working download action. The user repeatedly reported that the result was not clickable. The PDF existed, rendered correctly, and passed local verification on the Windows host, so this was not a file-generation failure.

The eventual workaround was to copy the PDF into a synced cloud-storage folder and tell the user how to navigate to it manually. That should not be necessary for a file Codex just created for the user.

Tibo: generated files should feel like attachments, not scavenger hunts. Please give remote mobile users a real download button. :)

What steps can reproduce the bug?

  1. Start a Codex task on a Windows host.
  2. Open or continue the same thread from the mobile Codex view.
  3. Ask Codex to generate a PDF in the workspace.
  4. Have Codex return the PDF using a codex-file-citation with purpose="output".
  5. Attempt to tap/download it on mobile.
  6. If that fails, have Codex return a Markdown link using the absolute local path.
  7. Attempt to tap/download that link on mobile.

Actual result: neither representation provides a usable mobile download.

What is the expected behavior?

When Codex identifies a generated workspace file as an output, the client should turn it into a secure relay-backed attachment or temporary signed download—not expose a host-local path that only the desktop can resolve.

At minimum, mobile should show:

  • the filename and file type;
  • an explicit Download or Open action;
  • a clear error if relaying the file is unavailable;
  • consistent behavior for PDFs and other generated artifacts.

The assistant should also have a documented attachment-delivery mechanism so it does not repeatedly present local paths as though they will work remotely.

Additional information

No personal PDF or local filesystem path is attached to this report.

Related issues:

  • #25202 — remote mobile Codex does not render local media artifacts
  • #29125 — robust remote previews for videos and PDFs
  • #32105 — generated attachments omitted in the unified macOS app

This report is narrower: a concrete PDF download failure on mobile after both codex-file-citation and absolute-path Markdown delivery were attempted.

View original on GitHub ↗

2 Comments

github-actions[bot] contributor · 28 days ago

Potential duplicates detected. Please review them and close your issue if it is a duplicate.

  • #35397

Powered by Codex Action

lewisbamboo · 2 days ago

Additional reproduction on a macOS host viewed through the iOS ChatGPT/Codex Remote surface (observed 2026-08-26).

Environment:

  • Host ChatGPT/Codex app: 26.818.41509 (bundle 6962)
  • Bundled Codex: 0.149.0-alpha.4.1
  • Mobile client: iOS ChatGPT/Codex Remote; exact iOS app build not captured

Observed:

  1. Codex created and visually verified a PDF under /Users/<redacted>/Downloads/.../generated.pdf.
  2. The assistant's final response contained the intended ASCII marker:

:codex-file-citation{path="/Users/<redacted>/Downloads/.../generated.pdf" purpose="output"}

  1. On iOS, the marker was shown as literal raw text rather than an artifact chip, attachment, or tappable download.
  2. A later copy/paste from iOS displayed smart quotes, but the original assistant message used straight ASCII quotes, so quote substitution is not the root cause.

This is both a rendering failure and a delivery failure: the raw internal directive leaks into user-visible text, and the phone cannot resolve the host-local path even if it were rendered.

Expected:

  • Prefer a secure relay-backed attachment or temporary download for generated outputs.
  • At minimum render the filename plus a clear "available only on connected computer" state instead of exposing internal markup.

This corroborates #36263 on macOS/iOS and overlaps the raw-markup symptom in #35397. No personal file or unredacted filesystem path is included.