The Codex Changelog
All Episodes
Codex CLI’s Contextual Branching and Speed Boosts

Codex CLI’s Contextual Branching and Speed Boosts

0:00|0:00

We dig into the new Codex CLI v0.145.0 features, including contextual branching for terminal chats, paginated thread history, searchable and named sessions, and clickable visualization links. The episode also covers key under-the-hood upgrades like Bedrock model changes, a ripgrep bump, and the risks of state drift between chat history and your local files.


Chapter 1

Branching the Terminal

Maya

So I was- I was working on this local refactoring task yesterday, right? And I'm about, I don't know, six steps deep into a multi-turn chat in my terminal. And then I realize... wait, step two was a completely wrong turn. I- I completely messed up the prompt. And normally, you just sigh, copy your file attachments, copy the context, and start a whole new thread from scratch. But I was looking at the new Codex CLI v0.145.0 release from July, and they've actually... they've added this thing called a contextual branch.

Ethan Park

Oh, wait, really? Like... like Git branching, but for your actual chat history in the terminal?

Maya

Yes! Exactly like Git. Instead of overwriting your subsequent turns or- or just totally corrupting the session history when you go back and edit, it actually forks the conversation log natively. It's- it's in PRs 33201 and 33211. You literally just scroll up in your TUI--your terminal user interface--select that older prompt, press e to edit, and boom. It forks.

Ethan Park

Huh. Okay, but how does it handle... like, if I had three files attached and two tool results from a database query at that specific step? Does it just lose them?

Maya

No, that's the cool part. It actually handles the fork at the local SQLite database level. So it replicates all those file attachments, the tool results, the @-mentions... everything active at that exact timestamp is cloned into the new branch. You get a clean visual indicator of the new path in your terminal, and the original pathway is just... preserved.

Ethan Park

Okay, wait. There's got to be a catch here. If you're branching the conversation history in SQLite, what happens to the actual physical files on my local disk? Because if the AI thinks we're back at step two, but my local index.js still has all the edits from step six... doesn't that create a massive state drift?

Maya

Oh, absolutely. You nailed it. That is the big "state drift" trap. The files on your disk do not automatically roll back. So the agent's mental state--what it *thinks* is in your workspace based on the historical branch point--is completely out of sync with what's actually sitting on your hard drive. If you're not careful, you'll ask it to edit a function that you've already deleted or modified in the physical file.

Ethan Park

Right. So you basically have to manually do a git checkout on your code to match the branch point of your chat. It's- it's- it's incredibly useful, but you've got to keep those two things in sync yourself.

Chapter 2

Under the Hood Upgrades

Maya

Exactly. It's a tool for your context, not a magic wand for your file system. But, you know, speaking of the database side, this v0.145.0 update also quietly fixed a massive pain point for anyone who's used the CLI for more than a couple of weeks. They introduced paginated thread history. Before this, if you had... I don't know, two hundred local thread files, the terminal startup lag was just brutal because it tried to load everything at once.

Ethan Park

Oh, I remember that. You'd type the command and just sit there for two seconds waiting for the UI to render. It felt so sluggish for a command-line tool.

Maya

Right! Now, with PR 33364, it lazily loads older threads from SQLite. The initial terminal render is- is sub-millisecond now. They also added proper search, persisted names, and they stabilized the memories feature flag under PR 31804. So it's- it's starting to feel like a really robust local workspace helper rather than just a wrapper.

Ethan Park

Wait, what else is in this release? Did they do anything with those messy UI visualization files? Usually, if Codex generates an HTML mockup or a chart, you have to go hunting through some temporary project subdirectory to actually open it in a browser.

Maya

Oh, they actually fixed that too! PR 33925 introduced clickable visualization links directly in the terminal. So if it generates an SVG diagram or an HTML mockup, you get a secure, clickable link right there in the chat UI. You click it, and it opens instantly in your default browser. No more digging through .codex/temp/ folders.

Ethan Park

That's actually a huge workflow win. And it looks like they did some heavy under-the-hood chores too. They upgraded the packaged ripgrep binary to 15.2.0, and... oh, this is interesting: they migrated the default Bedrock integrations to the newer GPT-5.6 Sol model, replacing the old GPT-5.4 selections.

Maya

Yeah, that's PR 32288. So the underlying brain is getting a significant bump if you're routing through Bedrock. If you want to grab this update, just run your usual package manager upgrade. Oh, though if you're using pnpm globally, they did just fix a path resolution bug with global installs in this version, so it should be much smoother now.

Ethan Park

Perfect. Well, I'm going to go play with this branching tool--and remind myself to keep my terminal and my actual Git repository in sync. Good chatting, Maya.

Maya

Talk soon, Ethan.