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

Status Open
Maintainer reply None cached
Activity 5 comments · opened Jul 3, 2026

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 ↗

3 Comments

okokokokookok3332 · 2 months ago

+1

billion dollar company btw

L1nkus · 1 month ago
+1 billion dollar company btw

billion?

codecShivam · 1 month ago

i wanted exactly this and ended up building it outside claude code: a small pane next to it where typed messages wait for the turn to fully end, delivered one per turn, in order. it uses the Stop hook (returns the next message as additionalContext) plus SessionStart/End and UserPromptSubmit, so nothing is patched
https://github.com/codecShivam/claudeq

still think this belongs in claude code itself, sharing in case it unblocks anyone until then.

Showing cached comments. Read the full discussion on GitHub ↗