[FEATURE] Process queued messages sequentially (one message = one turn, FIFO) instead of merging into a single combined message

Open 💬 0 comments Opened Jul 3, 2026 by kenickel

Feature Request

Process queued messages sequentially — one message per turn (FIFO) — instead of merging all of them into a single combined message when the current turn ends.

Current behavior

When Claude is working and I type additional prompts, they are queued (which is great — they don't interrupt the running task). However, when the current turn finishes, all queued messages are delivered at once as a single combined user message.

Desired behavior

An option to deliver queued messages one at a time:

  1. Turn finishes → deliver queued message #1 only.
  2. Claude fully completes that task (including verification).
  3. Then deliver queued message #2, and so on — a true FIFO task queue.

Why this matters

  • Each queued prompt is usually an independent task. Merging them changes the semantics: the model plans everything at once, mixes contexts across tasks, and skips the "finish + verify" boundary between tasks.
  • The main use case is stacking tasks and stepping away: queue 3–5 prompts, let Claude work through them one by one, come back to per-task results. With merged delivery, one giant turn handles everything and it's much harder to review what happened per task.
  • Parity with OpenAI Codex CLI: Codex processes queued inputs sequentially (one queued prompt = one turn), and users who work with both tools rely on that workflow daily. This is currently a notable workflow gap in Claude Code.

Suggested implementation

A setting (with the current behavior as default, if preferred), e.g.:

{ "queuedMessages": { "delivery": "merged" | "sequential" } }

or a toggle in the queued-messages UI. Bonus: let the user reorder/delete individual queued messages while they wait (partially exists today), and show which queue position is currently executing.

Related issues (none covers this exact ask)

  • #64204 — sequential message queuing, but scoped to the VS Code extension and about queueing instead of interrupting.
  • #65452 — defer queued delivery until turn completion (delivery timing, not one-at-a-time sequencing).
  • #50246 — queue instead of interrupt (already the CLI behavior).
  • #34345 (closed) — VS Code long-press queue/schedule context menu.

Environment

  • Platform: macOS (desktop app / CLI) — but applies to all platforms
  • Also reproduced on Windows CLI

View original on GitHub ↗