ChatGPT Desktop Codex: existing chats missing from sidebar after migration

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

What version of Codex CLI is running?

0.147.0

What subscription do you have?

ChatGPT Plus

Which model were you using?

gpt-5.6-sol (High)

What platform is your computer?

macOS, Apple Silicon (arm64)

What terminal emulator and version are you using (if applicable)?

Apple Terminal.app

Codex doctor report

{
  "schemaVersion": 1,
  "generatedAt": "1786382677s since unix epoch",
  "overallStatus": "ok",
  "codexVersion": "0.147.0",
  "checks": {
    "app_server.status": {
      "id": "app_server.status",
      "category": "app-server",
      "status": "ok",
      "summary": "background server is not running",
      "details": {
        "control socket": "/Users/sergio/.codex/app-server-control/app-server-control.sock",
        "daemon state dir": "/Users/sergio/.codex/app-server-daemon",
        "mode": "ephemeral",
        "pid file": "/Users/sergio/.codex/app-server-daemon/app-server.pid (missing)",
        "settings": "/Users/sergio/.codex/app-server-daemon/settings.json (missing)",
        "status": "not running",
        "update-loop pid file": "/Users/sergio/.codex/app-server-daemon/app-server-updater.pid (missing)"
      },
      "remediation": null,
      "durationMs": 0
    },
    "auth.credentials": {
      "id": "auth.credentials",
      "category": "auth",
      "status": "ok",
      "summary": "auth is configured",
      "details": {
        "auth file": "/Users/sergio/.codex/auth.json",
        "auth storage mode": "File",
        "stored API key": "false",
        "stored ChatGPT tokens": "true",
        "stored agent identity": "false",
        "stored auth mode": "chatgpt"
      },
      "remediation": null,
      "durationMs": 0
    },
    "config.load": {
      "id": "config.load",
      "category": "config",
      "status": "ok",
      "summary": "config loaded",
      "details": {
        "CODEX_HOME": "/Users/sergio/.codex",
        "config.toml": "/Users/sergio/.codex/config.toml",
        "config.toml parse": "ok",
        "cwd": "/Users/sergio",
        "enabled feature flags": "shell_tool, view_image, unified_exec, shell_snapshot, code_mode_host, terminal_resize_reflow, sqlite, hooks, enable_request_compression, multi_agent, apps, tool_search_always_defer_mcp_tools, tool_suggest, plugins, in_app_browser, in_app_updates, browser_use, browser_use_full_cdp_access, browser_use_external, computer_use, remote_plugin, plugin_sharing, image_generation, resize_all_images, item_ids, skill_mcp_dependency_install, skill_search, mentions_v2, steer, guardian_approval, goals, collaboration_modes, tool_call_mcp_elicitation, auth_elicitation, personality, fast_mode, tui_app_server, remote_compaction_v2, workspace_dependencies",
        "feature flag overrides": "none",
        "feature flags enabled": "39",
        "log dir": "/Users/sergio/.codex/log",
        "mcp servers": "2",
        "model": "gpt-4o",
        "model provider": "OpenAI",
        "sqlite home": "/Users/sergio/.codex"
      },
      "remediation": null,
      "durationMs": 0
    },
    "git.environment": {
      "id": "git.environment",
      "category": "git",
      "status": "ok",
      "summary": "git version 2.39.5 (Apple Git-154)",
      "details": {
        "PATH git #1": "/usr/bin/git",
        "PATH git entries": "1",
        "git build options": "git version 2.39.5 (Apple Git-154); cpu: arm64; no commit associated with this build; sizeof-long: 8; sizeof-size_t: 8; shell-path: /bin/sh; feature: fsmonitor--daemon",
        "git exec path": "/Library/Developer/CommandLineTools/usr/libexec/git-core",
        "git version": "git version 2.39.5 (Apple Git-154)",
        "repo detected": "false",
        "selected git": "/usr/bin/git"
      },
      "remediation": null,
      "durationMs": 33
    },
    "installation": {
      "id": "installation",
      "category": "install",
      "status": "ok",
      "summary": "installation looks consistent",
      "details": {
        "PATH codex #1": "/Users/sergio/.local/bin/codex",
        "current executable": "/Users/sergio/.local/bin/codex",
        "install context": "standalone (unix, package /Users/sergio/.codex/packages/standalone/releases/0.147.0-aarch64-apple-darwin, bin /Users/sergio/.codex/packages/standalone/releases/0.147.0-aarch64-apple-darwin/bin, resources /Users/sergio/.codex/packages/standalone/releases/0.147.0-aarch64-apple-darwin/codex-resources, path /Users/sergio/.codex/packages/standalone/releases/0.147.0-aarch64-apple-darwin/codex-path)",
        "managed by bun": "false",
        "managed by npm": "false",
        "managed by pnpm": "false",
        "managed package root": "not set"
      },
      "remediation": null,
      "durationMs": 8
    },
    "mcp.config": {
      "id": "mcp.config",
      "category": "mcp",
      "status": "ok",
      "summary": "MCP configuration is locally consistent",
      "details": {
        "configured servers": "2",
        "disabled servers": "1",
        "stdio servers": "2"
      },
      "remediation": null,
      "durationMs": 0
    },
    "network.env": {
      "id": "network.env",
      "category": "network",
      "status": "ok",
      "summary": "network-related environment looks readable",
      "details": {
        "proxy env vars": "none"
      },
      "remediation": null,
      "durationMs": 0
    },
    "network.provider_reachability": {
      "id": "network.provider_reachability",
      "category": "reachability",
      "status": "ok",
      "summary": "active provider endpoints are reachable over HTTP",
      "details": {
        "ChatGPT base URL": "https://chatgpt.com/backend-api/ reachable (HTTP 404)",
        "reachability mode": "ChatGPT auth"
      },
      "remediation": null,
      "durationMs": 248
    },
    "network.websocket_reachability": {
      "id": "network.websocket_reachability",
      "category": "websocket",
      "status": "ok",
      "summary": "Responses WebSocket is not enabled for the active provider",
      "details": {
        "model provider": "OpenAI",
        "provider name": "OpenAI",
        "proxy env vars": "none",
        "supports websockets": "false",
        "wire API": "responses"
      },
      "remediation": null,
      "durationMs": 0
    },
    "runtime.provenance": {
      "id": "runtime.provenance",
      "category": "runtime",
      "status": "ok",
      "summary": "running standalone on macos-aarch64",
      "details": {
        "commit": "unknown",
        "current executable": "/Users/sergio/.local/bin/codex",
        "install method": "standalone (unix, package /Users/sergio/.codex/packages/standalone/releases/0.147.0-aarch64-apple-darwin, bin /Users/sergio/.codex/packages/standalone/releases/0.147.0-aarch64-apple-darwin/bin, resources /Users/sergio/.codex/packages/standalone/releases/0.147.0-aarch64-apple-darwin/codex-resources, path /Users/sergio/.codex/packages/standalone/releases/0.147.0-aarch64-apple-darwin/codex-path)",
        "platform": "macos-aarch64",
        "version": "0.147.0"
      },
      "remediation": null,
      "durationMs": 0
    },
    "runtime.search": {
      "id": "runtime.search",
      "category": "search",
      "status": "ok",
      "summary": "search is OK (bundled)",
      "details": {
        "search command": "/Users/sergio/.codex/packages/standalone/releases/0.147.0-aarch64-apple-darwin/codex-path/rg",
        "search command readiness": "file exists",
        "search provider": "bundled"
      },
      "remediation": null,
      "durationMs": 0
    },
    "sandbox.helpers": {
      "id": "sandbox.helpers",
      "category": "sandbox",
      "status": "ok",
      "summary": "sandbox configuration is readable",
      "details": {
        "approval policy": "OnRequest",
        "codex-linux-sandbox helper": "none",
        "execve wrapper helper": "/Users/sergio/.codex/tmp/arg0/codex-arg0MBus7L/codex-execve-wrapper",
        "filesystem sandbox": "restricted",
        "network sandbox": "restricted"
      },
      "remediation": null,
      "durationMs": 0
    },
    "state.paths": {
      "id": "state.paths",
      "category": "state",
      "status": "ok",
      "summary": "state paths and databases are inspectable",
      "details": {
        "CODEX_HOME": "/Users/sergio/.codex (dir)",
        "active rollout files": "101 files, 10560577991 total bytes, 104560178 average bytes",
        "archived rollout files": "22 files, 203784897 total bytes, 9262949 average bytes",
        "goals DB": "/Users/sergio/.codex/goals_1.sqlite (file)",
        "goals DB integrity": "ok",
        "log DB": "/Users/sergio/.codex/logs_2.sqlite (file)",
        "log DB integrity": "ok",
        "log dir": "/Users/sergio/.codex/log (dir)",
        "memories DB": "/Users/sergio/.codex/memories_1.sqlite (file)",
        "memories DB integrity": "ok",
        "queue DB": "/Users/sergio/.codex/queue_1.sqlite (file)",
        "queue DB integrity": "ok",
        "sqlite home": "/Users/sergio/.codex (dir)",
        "standalone release cache": "1 entries in /Users/sergio/.codex/packages/standalone/releases",
        "state DB": "/Users/sergio/.codex/state_5.sqlite (file)",
        "state DB integrity": "ok",
        "thread history DB": "/Users/sergio/.codex/thread_history_1.sqlite (missing)",
        "thread history DB integrity": "skipped (missing)"
      },
      "remediation": null,
      "durationMs": 149
    },
    "state.rollout_db_parity": {
      "id": "state.rollout_db_parity",
      "category": "threads",
      "status": "ok",
      "summary": "rollout files and state DB thread inventory agree",
      "details": {
        "default model provider": "OpenAI",
        "rollout DB active files": "101",
        "rollout DB active rows": "101",
        "rollout DB archive mismatches": "0",
        "rollout DB archived files": "22",
        "rollout DB archived rows": "22",
        "rollout DB duplicate DB paths": "0",
        "rollout DB duplicate rollout thread ids": "0",
        "rollout DB malformed file names": "0",
        "rollout DB missing active rows": "0",
        "rollout DB missing archived rows": "0",
        "rollout DB model providers": "openai=123",
        "rollout DB rows": "123",
        "rollout DB scan cap reached": "false",
        "rollout DB scan errors": "0",
        "rollout DB sources": "subagent:other=73, vscode=50",
        "rollout DB stale rows": "0"
      },
      "remediation": null,
      "durationMs": 48
    },
    "system.environment": {
      "id": "system.environment",
      "category": "system",
      "status": "ok",
      "summary": "OS language es-MX",
      "details": {
        "EDITOR": "not set",
        "LANG": "es_MX.UTF-8",
        "VISUAL": "not set",
        "os": "Mac OS 26.6.1 [64-bit]",
        "os language": "es-MX",
        "os type": "Mac OS",
        "os version": "26.6.1"
      },
      "remediation": null,
      "durationMs": 1
    },
    "terminal.env": {
      "id": "terminal.env",
      "category": "terminal",
      "status": "ok",
      "summary": "terminal metadata was detected",
      "details": {
        "COLORTERM": "truecolor",
        "TERM_PROGRAM": "Apple_Terminal",
        "color output": "disabled (stdout is not a terminal)",
        "effective locale": "es_MX.UTF-8",
        "stderr is terminal": "true",
        "stdin is terminal": "true",
        "stdout is terminal": "false",
        "terminal": "Apple Terminal",
        "terminal size": "317x79",
        "terminal version": "470.2"
      },
      "remediation": null,
      "durationMs": 0
    },
    "terminal.title": {
      "id": "terminal.title",
      "category": "title",
      "status": "ok",
      "summary": "terminal title default",
      "details": {
        "terminal title activity": "true",
        "terminal title items": "activity, project-name",
        "terminal title project source": "cwd",
        "terminal title project value": "sergio",
        "terminal title source": "default"
      },
      "remediation": null,
      "durationMs": 0
    },
    "updates.status": {
      "id": "updates.status",
      "category": "updates",
      "status": "ok",
      "summary": "update configuration is locally consistent",
      "details": {
        "cached latest version": "0.147.0",
        "check for update on startup": "true",
        "last checked at": "2026-08-10T16:02:18.710033Z",
        "latest version": "0.147.0",
        "latest version status": "current version is not older",
        "update action": "standalone installer",
        "version cache": "/Users/sergio/.codex/version.json"
      },
      "remediation": null,
      "durationMs": 697
    }
  }
}

What issue are you seeing?

After migrating/updating to ChatGPT Desktop 26.803.41515, all my existing Codex chats disappeared from the sidebar.

My projects are still visible, but they all show “No chats”. Recents is also empty, and Archived Chats shows no conversations.

The conversations have NOT been deleted. Local session files still exist under ~/.codex/sessions, and state_5.sqlite still contains the existing threads.

Codex doctor confirms:

  • Overall status: OK
  • state DB integrity: OK
  • 101 active rollout files / threads
  • 22 archived rollout files / threads
  • 123 total threads
  • 0 missing active rows
  • 0 missing archived rows
  • 0 scan errors

I can successfully reopen an existing conversation with its complete history using codex resume <SESSION_ID>.

However:

  • codex resume --all incorrectly shows “No sessions yet”.
  • ChatGPT Desktop Codex shows no chats inside Projects or Recents.
  • Archived Chats also shows none.
  • Authentication is correctly using my ChatGPT Plus account.

Example existing thread that opens correctly by ID:
019f7597-62d7-7a71-ad15-daf41ca3b28b

I already uploaded the relevant Codex logs and diagnostics using /feedback.

Please restore/reindex the existing Codex chat history so all conversations appear again in ChatGPT Desktop without deleting or replacing the existing local sessions.

What steps can reproduce the bug?

Uploaded thread: 019f7597-62d7-7a71-ad15-daf41ca3b28b

What is the expected behavior?

All existing Codex conversations should remain visible after migration to ChatGPT Desktop.

The conversations should appear under their original projects and/or in Recents, and codex resume --all should enumerate the existing saved sessions.

The existing local sessions should be reindexed/restored in the UI without deleting, replacing, or recreating their transcripts.

Additional information

_No response_

View original on GitHub ↗

2 Comments

github-actions[bot] contributor · 17 days ago

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

  • #36663

Powered by Codex Action

sergioguerramx · 17 days ago

Additional reproduction details from macOS:

After restoring the missing chats, they are fully usable with their existing history, but the fix is not persistent. If ChatGPT Desktop restarts, the chats disappear from the sidebar again and the projects return to showing “No chats”.

What I verified locally while ChatGPT Desktop was fully closed:

  • local-projects: 9 projects registered.
  • thread-project-assignments: 24 assignments.
  • projectless-thread-ids: 8.
  • sidebar-project-thread-orders: 0 projects / empty.
  • thread-workspace-root-hints: 8.
  • Codex Doctor reports 101 active rollout files/rows + 22 archived = 123 total threads, with state DB integrity OK and no missing rows, stale rows, duplicate IDs, or scan errors.
  • Authentication is correctly using ChatGPT, not an API key.

A direct deep-link workaround restores visibility immediately:

open "codex://threads/<thread-id>"

Opening the existing local threads this way makes them reappear under their original projects and they can be used normally with the full existing history. However, after the Desktop app restarts, the sidebar is empty again. Re-running the deep-link restoration makes them reappear again.

I also reviewed #36663. It appears related, but my case is on macOS and the key additional behavior is that restored project/thread visibility is lost again on every Desktop restart.

This strongly suggests that Desktop startup is rebuilding/overwriting the sidebar thread ordering/index incorrectly. The fact that sidebar-project-thread-orders is empty while the underlying thread DB and rollout inventory are healthy may be relevant.

Current environment:

  • ChatGPT Desktop 26.803.41515
  • Codex CLI 0.147.0
  • macOS 26.6.1, Apple Silicon (arm64)
  • ChatGPT Plus

Temporary workaround: I can automatically reopen the existing threads with codex://threads/<thread-id> after each Desktop launch, but this should not be necessary and does not fix the underlying persistence problem.