Based on official documentation as of 2026-08-20: both Claude Code and Codex can run multiple conversations. Distinguish the reasons for using tmux Windows from shared-workspace conflicts that Windows alone cannot resolve.
§ 00 · The answer — both support multiple conversations
Both Claude Code and Codex let you create multiple separate conversations, reopen saved ones and branch them. Running one CLI process in each tmux Window lets you run conversations side by side and switch by name. The central distinction is not that only one tool supports multiple chats.
There are three layers to distinguish. A tmux Window separates terminal displays and processes. Each tool’s session or chat separates conversation history and context. A Git branch or separate working directory separates file changes. Separating the first two layers does not automatically isolate the last.
§ 01 · Claude Code — name and branch Sessions
A Claude Code conversation is a Session associated with a project directory. The official documentation describes choosing a saved Session with claude --resume or /resume, and creating a new Session by copying an existing history with /branch or --fork-session. It also provides Session naming for parallel tasks.
The official documentation warns that resuming the same Session in two terminals without forking can mix both sides’ messages into one transcript. When splitting into two Windows, create a separate Session or branch one instead of opening the same Session twice.
§ 02 · Codex — distinguish Chats from agent threads
Codex CLI starts a separate Chat with /new, continues a saved Chat with /resume, and creates a new Chat while preserving the original transcript with /fork. The official documentation recommends a separate Chat for each distinct outcome and keeping continued work on the same problem in the same Chat.
Codex subagents and the agent threads shown by /agent form an internal parallel structure: a main conversation delegates parts of the work and gathers the results. Their purpose differs from independently launching a CLI Chat in each tmux Window. Use a separate Chat for independent responsibility and long-term context, and an agent thread for a bounded investigation contributing to one outcome.
§ 03 · Why tmux Windows? Make conversations and execution states visibly separate
A long-running interactive CLI keeps occupying a terminal. Separate Windows let you keep purpose-specific conversations such as notes, implementation and review open simultaneously and move between them with C-b w or a number. A Window name becomes a visible safeguard showing which conversation will receive your input.
Processes can remain after detach, allowing you to leave the outer terminal connection while waiting for a long response or validation. tmux does not, however, manage each tool’s usage limits, server status, conversation storage or approval requests for you.
§ 04 · The crucial boundary — different Windows still see the same files
If two Windows open the same repository path, both AIs see the same files and Git index. While one edits a file, the other can overwrite it, switch branches or mistake the other’s unfinished changes for its own work. tmux does not prevent these conflicts.
If repository rules permit it, use an isolated directory and branch for each task. Otherwise, make responsibilities and order explicit so that the same files are not edited simultaneously. One purpose per Window, one outcome per Chat and one writing task per workspace matter more than shortcuts.
| Layer | Separated | Not separated |
|---|---|---|
| tmux Window | Display, terminal and running process | Repository files and Git index |
| Claude/Codex conversation | Transcript and conversation context | Changes to files at the same path |
| Separate workspace and branch | History of file changes within the permitted scope | External accounts and shared service state |
Read this note at sass.studio.