Searching old Codex sessions by a word you remember, next to every other agent you run #46774
Replies: 1 comment 1 reply
|
There is a structured source worth checking before parsing shell text, but I would label its result “reported successful patch paths,” not “all files touched.” At the inspected Codex source commit, For a legacy rollout, look for The important caveat is persistence policy: this commit persists A conservative first implementation could collect map keys when Useful fixtures would be successful add/delete/update/rename, failed or declined application, missing |
Uh oh!
There was an error while loading. Please reload this page.
I lose Codex sessions.
codex resumeshows me a list, but what I actually remember is one word from the conversation, not the day and not the repo, and when work moves between Codex and another agent the history ends up split across two stores that know nothing about each other.This reads the rollout files under
~/.codex/sessionsdirectly and puts them in one fzf list together with Claude Code, OpenCode, Gemini CLI, Droid, Copilot CLI, Kimi Code and Qwen Code. Type a word, every session containing it comes up, the preview highlights the turn that matched, Enter runscodex resume <id>in the directory that session ran in.https://github.com/hxreborn/herdr-transcripts
It ships as a Herdr plugin, but
./transcriptsruns the same picker in a plain terminal with no Herdr involved.Two Codex-specific notes, in case they save someone time reading these files themselves.
A rollout interleaves real turns with
event_msg,reasoning,token_countand context records. Testing the first bytes of each line before callingjson.loadsskips most of the file undecoded, which is what keeps a large session at tens of milliseconds instead of seconds. The cwd and the originator both live in thesession_metaline, and I useoriginatorto hide runs that were not interactive CLI threads, so MCP and exec invocations do not flood the list.The one thing Codex does not get: the preview scores a session against your working tree, splitting the files it touched into still there, deleted by a commit, and gone with nothing in git explaining it. That needs a tool call carrying a path argument. Codex edits ride inside
apply_patchshell text, so Codex sessions show no line at all rather than a guessed one. If anyone knows a reliable way to recover touched paths from a rollout I would rather read it than mine the shell text.Python standard library only, plus fzf. GPL-3.0, entirely local.
All reactions