Skip to content

[Feature] Support for Tree-based Conversation Management (Chat Tree / Branch) #12450

@Reekin

Description

@Reekin

What variant of Codex are you using?

App,CLI

What feature would you like to see?

During conversations with the agent, it is very common to want to roll back the context to a specific previous node.

For example: You might go through several rounds of chatting to finalize the overall development direction for a feature. Then, while developing a specific part, you encounter unexpected behavior and spend multiple rounds providing detailed feedback and fixing bugs. Once that feature is done, you want the chat history to revert to the point before diving into all those bug-fixing details, so you can start working on another related requirement (which still requires the high-level context from the initial conversation).

Without a convenient way to manage context, we are currently forced into one of two bad options:

  1. Continue developing in the original session, which pollutes the context with a massive amount of irrelevant details that subsequent development doesn't care about.
  2. Ask the agent to summarize the first half of the conversation into a file, and then open a new session for the agent to read it. This is highly tedious and very prone to context omission/loss.
    Furthermore, considering that in the Codex app, a single session might be bound to a specific worktree (which I personally think is a debatable design choice—I actually believe worktrees should be bound to sub-agents instead), switching sessions introduces a lot of friction. On the other hand, staying in the original session with accumulated "garbage context" leads to frequent context compactions, which severely degrades the agent's execution quality.

To address this, I have designed a solution for convenient context management via a ChatTree and developed a PoC demo.

Below are the PRD and a demonstration video of how it operates:

PRD
Repo

Screen.Recording.2026-02-21.at.17.32.41.mov

Additional information

I'd love to hear your thoughts on this pain point and the proposed solution.

Metadata

Metadata

Assignees

No one assigned

    Labels

    appIssues related to the Codex desktop appenhancementNew feature or request

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions