Codex Desktop loses project chat visibility after symlink cwd is removed

Resolved 💬 2 comments Opened Jun 10, 2026 by ozamasa Closed Jun 10, 2026

What version of the Codex App are you using (From “About Codex” dialog)?

Version 26.608.12217 • Released Jun 9, 2026

What subscription do you have?

ChatGPT Plus

What platform is your computer?

Darwin 25.4.0 arm64 arm

What issue are you seeing?

Codex Desktop appears to associate project chats with the literal saved cwd path.

I had a local project opened through a symlink-backed directory. Later, I removed the symlink and continued using the real project directory. After that, chats that had been associated with the old symlink path disappeared from the project chat list. The UI made it look like there were no chats for that project, even though the session history still existed locally.

The issue was recoverable by manually updating local Codex metadata from the removed symlink path to the real project path, but this was not obvious from the UI and made the chats appear lost.

What steps can reproduce the bug?

  1. Create a local project directory.
  2. Create a symlink that points to that real project directory.
  3. Open the project in Codex Desktop using the symlink path.
  4. Create or continue several chats in that project.
  5. Remove the symlink, while keeping the real project directory intact.
  6. Open Codex Desktop using the real project directory.
  7. Check the project chat list.

Observed result:
Chats associated with the removed symlink path may no longer appear in the project chat list, even though the underlying session history still exists locally.

In my case, the affected sessions could be recovered by manually updating local metadata such as saved cwd values and project config entries from the old symlink path to the real project path.

What is the expected behavior?

Codex Desktop should not make existing chats appear to be gone simply because the saved cwd path was a symlink that no longer exists.

Expected behavior:

  • Store or track both the literal cwd and the resolved realpath for symlink-backed projects.
  • If a saved cwd no longer exists, show a recoverable state instead of an empty chat list.
  • Allow the user to reconnect or move existing project chats to a new local path.
  • Keep project chat list metadata and individual thread metadata consistent after a path change.

Additional information

This is especially confusing because symlinks are commonly used during project renames, migrations, or when keeping projects under synced folders.

A safer UX might be:

"This project path no longer exists. Choose a new folder to reconnect these chats."

Then the user could select the real project directory and Codex could update the relevant project/thread metadata safely.

I also submitted feedback from the Codex app. The related thread/feedback id is:

019eb00e-dc69-7ca1-afd8-990794b9cabe

View original on GitHub ↗

This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗