Message Queuing
How Sazabi handles messages when the assistant is busy processing a previous request.
When you send a message while the assistant is still responding to a previous one, Sazabi queues your message and processes it after the current response completes. This ensures your follow-up questions are not lost, even during long-running investigations.
How queuing works
Message queuing follows a first-in, first-out (FIFO) order within each thread.
You send a follow-up message
While the assistant is processing a request, you send another message in the same thread.
Message is queued
Sazabi saves your message with a "queued" status. It appears above the composer with a "Queued" badge so you know it was received.
Current run completes
Once the assistant finishes responding to the previous request, it automatically starts processing the next queued message.
Queue continues
If you sent multiple follow-up messages, the assistant processes them in order until the queue is empty.
UI indicators
The dashboard provides clear feedback when messages are queued.
Queued message stack
Queued messages appear in a dedicated area above the composer input. Each message shows:
- A Queued badge indicating the message is waiting
- The full text of your message
- Any attached files
- A delete button to cancel the queued message
The stack includes a note: "Follow-up messages will send when the current run finishes."
Message status
Each message has a status that tracks its lifecycle:
| Status | Meaning |
|---|---|
queued | Message is waiting for the current run to complete |
pending | Message has been claimed and is about to be processed |
streaming | Assistant is actively responding |
completed | Response finished successfully |
failed | An error occurred during processing |
cancelled | Message was deleted before processing began |
Canceling queued messages
You can remove a queued message before the assistant processes it.
- Find the message in the queued message stack above the composer.
- Click the trash icon on the right side of the message.
- The message is removed from the queue immediately.
Deleting a queued message does not affect the currently running response or other messages in the queue. The assistant continues with the next queued message when the current run finishes.
When you cannot cancel
Once the assistant starts processing a queued message (status changes from
queued to pending), you cannot cancel it through the queue interface. At
that point, you can stop the active response using the stop button that appears
during streaming.
Queue behavior during long-running operations
Some assistant operations take longer than others. Queued messages behave consistently regardless of what the assistant is doing.
Tool execution
When the assistant runs code, searches logs, or executes other tools, your queued messages wait until all tool calls in the current turn complete. The assistant finishes its full response before moving to your follow-up.
Subagent delegation
If the assistant delegates work to a subagent, queued messages wait until both the subagent and the parent assistant finish. The entire delegation chain must complete before the next queued message begins.
Streaming responses
Queued messages process only after the current response finishes streaming. You can continue adding to the queue while watching the assistant's response.
Priority and ordering
All messages are processed in the order they were sent. There is no priority system that promotes certain messages.
FIFO ordering
Messages are processed strictly in the order you sent them. If you send three follow-up questions:
- "Why did this happen?"
- "Which services were affected?"
- "When did it start?"
The assistant answers them in that exact order, one at a time.
Time-sensitive questions
If you realize a later question is more urgent, you have two options:
- Delete earlier messages: Cancel the queued messages you no longer need, then your urgent question moves to the front.
- Wait and ask again: Let the queue process, then ask your urgent question in a new message.
The assistant remembers the full conversation context, so each answer builds on previous responses. This often means earlier questions provide useful context for later ones.
Platform differences
Message queuing works consistently across all Sazabi interfaces, with minor differences in how queued state is displayed.
Dashboard
The dashboard shows the full queued message stack with delete controls. You can see exactly what messages are waiting and remove any of them.
Slack
When you message the assistant in Slack while it is already responding, Slack threads the conversation naturally. The assistant processes messages in order as they appear in the thread. Slack does not show a separate "queued" indicator, but the behavior is the same.
CLI
The CLI waits for the current response before starting another. If you run
multiple sazabi ask commands in quick succession, each waits for the
previous to complete.
Limits
There is no hard limit on the number of messages you can queue. However, extremely long queues may indicate you are asking questions faster than the assistant can answer them. Consider:
- Combining related questions into a single message
- Waiting for responses that might answer your follow-up questions
- Starting a new thread if you are switching to a different topic