codex-relink is a small read-only helper for finding missing or hard-to-locate Codex CLI chats that match the current working directory and printing the command needed to resume them.
Use it when a Codex chat looks lost, missing from the picker, or disconnected from the project you were working in, but the local Codex storage still has enough data to find the thread id.
This is especially for chats that do not appear in the Codex CLI resume picker or the Codex Desktop sidebar. Run codex-relink latest or codex-relink list from the project directory, and it searches local Codex storage directly so you can resume chats that are still in the database.
It reads local Codex storage:
~/.codex/state_5.sqlite~/.codex/sessions/**/*.jsonl
It does not edit Codex SQLite, global state, session_index.jsonl, titles, previews, cwd values, or user data.
Install it globally from npm if you want the codex-relink command available everywhere:
npm install --global codex-relinkThen run it from the project directory whose Codex chats you want to find:
codex-relink latest
codex-relink listYou can also run it without installing anything globally:
npx codex-relink latest
npx codex-relink listOr with Bun:
bunx codex-relink latest
bunx codex-relink listAll three forms use the current working directory as the project to match against local Codex storage.
pnpm install
pnpm buildFrom any project directory:
codex-relink latestOr from this checkout without installing:
node dist/cli.js latestThe command finds Codex chats matching process.cwd(), selects the newest chat by updated_at_ms, updated_at, created_at_ms, then created_at, and prints:
Copy the command below to resume your chat:
codex resume <thread-id>
If there are no matching chats, it prints a short message for the current directory.
From any project directory:
codex-relink listOr from this checkout without installing:
node dist/cli.js listlist shows an interactive picker, newest first. Rows are numbered so 1 is always the latest matching chat, and the picker stops at the oldest chat instead of wrapping around. Each row includes the number, updated time, short thread id, and title or fallback. Press enter to select the highlighted chat. After selection, the accepted prompt line shows Chosen ID: <short-id> before it prints:
Copy the command below to resume your chat:
codex resume <thread-id>
Show CLI help:
codex-relink -h
codex-relink --helpUse --codex-home when testing against another Codex home directory:
codex-relink --codex-home /tmp/codex-home latestNormal use does not require --project; the current working directory is used automatically.
Built by Warya Wayne, @waryawayne.
- GitHub: @WaryaWayne
- X: @waryawayne
