Feature request: scoped context summarization for side investigations
Problem
During long-running agent tasks, Codex often performs side investigations that are useful only as supporting checks.
Examples:
- researching an API or library detail during implementation
- checking whether a Git branch or worktree may conflict
- inspecting CI logs to understand a narrow failure
- verifying deployment state before continuing
- searching across files to confirm one assumption
In many cases, the full exploration process is not needed in the main conversation context. What the user and agent actually need afterward is only the conclusion, evidence, and any remaining risk.
However, today these side investigations remain mixed into the main context, which can make long tasks noisier and consume context budget unnecessarily.
Why side chats are not enough
Side chats partially address this by allowing users to branch off from the main conversation.
However, they do not fully solve the problem:
- A side chat is separate from the main task, but there is no first-class way to return a structured conclusion back into the main context.
- If a side chat is dismissed or removed, its useful findings can effectively disappear from the working session.
- The user still has to manually copy or restate the conclusion into the main conversation.
- Side chats are useful for temporary exploration, but they are not a durable research capsule or scoped memory artifact.
- For long-running coding tasks, what is needed is not just a separate chat, but a way to preserve only the useful result of that side investigation.
The desired behavior is closer to:
- Branch into a temporary investigation.
- Do the necessary exploration.
- Compress that investigation into a structured summary.
- Attach that summary back to the main task context.
- Optionally discard the raw intermediate details.
In short:
Side chats are useful for branching, but not for durable context compression.
Proposal
Add a scoped investigation / context capsule feature that lets users or Codex mark a portion of work as temporary exploration, then intentionally summarize and attach the result back to the main task.
This could work alongside side chats, or as an enhancement to them.
For example, a side chat could have actions such as:
- Summarize back to main thread
- Attach conclusion to current task
- Convert to scoped summary
- Keep result, discard details
The attached summary should preserve:
- purpose
- conclusion
- key evidence
- risks / unknowns
- follow-up actions, if any
Example
A user might ask:
Treat this check as a scoped investigation.
Check whether the current feature branch may conflict with workspace.
After the investigation, Codex could preserve only:
Scoped summary:
- Purpose: Check whether the feature branch may conflict with workspace.
- Conclusion: No likely conflict found.
- Evidence: Compared changed files against workspace; no overlap in implementation files.
- Risk: Docs changed on workspace but do not affect this task.
The detailed intermediate logs, file listings, and exploratory reasoning would not need to remain in the primary working context.
Use Cases
- Keep implementation context focused while still allowing research and verification.
- Avoid polluting long-running tasks with temporary exploration.
- Preserve only decision-relevant conclusions from side investigations.
- Make agent handoffs and resumed sessions cleaner.
- Let users explicitly request topic-specific summaries such as:
- "Only summarize the deployment verification result."
- "Only keep the Git conflict conclusion."
- "Summarize the research findings and discard the exploration details."
Possible Interface
Commands or conversational triggers such as:
Start scoped investigation: [topic]
End and summarize this scoped investigation.
Keep only a scoped summary of this check.
Why This Matters
Long-running coding agents frequently need to branch into temporary checks. These checks are important, but their raw details are often not important after the conclusion is known.
A first-class scoped summarization feature would help Codex manage context more intentionally, reduce noise, and make complex work sessions easier to continue.
3 Comments
Potential duplicates detected. Please review them and close your issue if it is a duplicate.
Powered by Codex Action
Adding a concrete current
/sideuse case.What I need is not to promote the side conversation into a separate durable chat. It is to deliberately merge only its useful working context back into its parent main thread.
A minimal UX could be Merge summary into main in the side-chat menu, with a CLI/TUI equivalent such as
/side mergeor/handoff. Codex would:A few important details:
Today this requires manual copy/paste and makes it easy to lose constraints or evidence. This would complete the natural
/sideworkflow: branch → investigate → summarize → return to main.Related but distinct requests: #29031 covers generic cross-session context import, while #36650 promotes a side chat into a separate durable chat. This request is specifically the parent-directed, summary-first handoff.
I ran into this today when I first discovered the feature, I initially thought it would be really cool... and pretty much immediately learned that it's super limited. What's frustrating is that these limits are intentional - normal tasks have the ability to read other tasks and even send messages into those tasks and trigger additional turns. The side-chat is intentionally restricted from doing even this.
What I would like to see is the ability for the side chat to send messages into the parent chat either by the user directly choosing to with the UI, or by the agent determining that it should or that the user wants it to. These interjections should be able to queue, steer, update a goal, or pause work similarly to what the user can do while interacting with the main chat.
The side-chat should also ideally be able to catch itself back up to the parent context as needed allowing for a given side-chat to persist as a conversational interface for the main worker.
I imagine the most common way this would be used is for the user to indicate that they want to steer the main thread, then the side-chat agent would read the latest messages in the main chat to ensure it knows the context it is about to interrupt, produce a summary instruction/update/handoff based on your conversation, then send it to the main thread as a steering message.
It would also be valuable for the side chat agent to be able to make decisions itself about steering, queueing, etc based on the conversation. It should also be able to decide if a question it was asked requires additional context from the main thread, and choose to pull that context without direct prompting.
It's a little frustrating that the side-chat is intentionally told not to do some of these things, and is restricted from accessing the tools to do them. Because by just lifting some artificial limits, it could already do part of what we're asking for.