Run parallel side sessions with agent-like inspectability
What variant of Codex are you using?
APP, IDE, CLI
What feature would you like to see?
It would be useful to have a cleaner way to run noisy side workflows without filling the main thread.
Examples are: commit, review, test triage, CI/log inspection, release notes, etc. These workflows often need the main thread’s context to start, but then they call a bunch of tools and generate intermediate state that I don’t want added back to the main conversation.
Or even something longer-running: run the app, watch logs/browser output, and report only relevant errors or regressions back to the main thread.
Codex already has pieces that almost work:
/sidehas the right isolation mechanics, and skills already package reusable workflows. I use them together with custom skills like$commitand$review, but in the CLI/sideis a detour I have to back out of, and the result handoff is manual.- Subagents have the right mechanics: they can run in parallel and I can inspect what an individual agent is doing, then return to the main thread. But invoking them still adds orchestration chatter to the main thread, and I have to restate the task/output format each time.
- App side chats are closer because I can have multiple side chats, but bringing selected results/context back to the main thread still requires copy/paste.
It would be useful to run a reusable workflow off-thread, inspect it while it runs like an agent, then bring back the useful result.
Concrete examples:
- commit flow: inspects status/diff/log, checks for secrets, stages/commits, then I can bring back only the commit hash/message or discard the side session
- review flow: explores the diff and surrounding code, follows call paths, checks tests/config, then I can bring selected findings + file refs back to the main thread
- similarly test triage: runs or inspects test output, chases logs/failures, narrows likely cause, then I can bring back failing tests + next steps
- app/log watcher: runs the app, watches logs/browser output, filters noise, and can stream relevant errors/regressions back to the main thread
The main thread should keep the durable task context; noisy side work should stay off-thread unless I choose to bring something back.
Additional information
Related to #22943 - that issue is close because it asks for forked skill execution. This request is broader on the interaction model: parallel side work that can use main-thread context, stay inspectable while running, and hand selected results back without filling the main conversation.
2 Comments
Potential duplicates detected. Please review them and close your issue if it is a duplicate.
Powered by Codex Action
This request matches the workflow I’ve been exploring from a slightly different angle. You can actually accomplish this with a few mutations, but not recommended.
The key primitive I think makes this work is: a side session should be a normal, inspectable, sidebar-visible thread, but also be attachable to a parent/orchestrator thread as a routable lane.
A concrete example:
your/project/orchestrator/so it loads the orchestratorAGENTS.md.your/project/reviewer/so it loads the reviewerAGENTS.md.your/project/release/so it loads the release/CIAGENTS.md.That gives the shape this issue is describing:
AGENTS.mdTwo more examples:
A commit workflow:
your/project/orchestrator/for the main task.your/project/commit/for a commit-focused lane with its ownAGENTS.md.committoorchestrator.A long-running app/log watcher:
your/project/orchestrator/for the main task.your/project/runtime-watch/for a runtime/log watcher lane with its ownAGENTS.md.runtime-watchtoorchestrator.In other words, this does not necessarily need to be modeled only as
/sideor only as a disposable spawned subagent. A normal app/desktop thread already has a lot of the right lifecycle and inspectability properties. The missing primitive is being able to attach that existing thread to a parent as an addressable worker lane.I opened a related narrower issue for that primitive here:
https://github.com/openai/codex/issues/24398
And I put together a reference branch exploring the App Server side of it:
https://github.com/johnastinnett/codex/tree/codex/thread-attachments-rpc
The branch does not implement the full UX described in this issue, like skill-packaged side workflows or a polished “bring selected results back” interaction. But I think it supplies the lower-level substrate that makes those flows much cleaner:
So I think #24398 is complementary to this request: this issue describes the higher-level interaction model, while the attachment primitive gives App Server/Desktop a clean way to make those side sessions durable, inspectable, folder-scoped, and routable without local state surgery.