Chat Interface
SquadOS presents messages in four contexts. They share bubble-based reading, but their identities, controls, and permissions differ.
| Context | Entry | Who uses it | Writing |
|---|---|---|---|
| Hub | /hub | Authenticated member with Hub access | Internal conversation with an AI agent. |
| Public page | /a/<inbox-slug> | Visitor without login | Conversation through the public inbox. |
| Widget | /embed/<inbox-slug> inside a website | Visitor without login | Conversation through the widget inbox. |
| Admin handling | /admin/conversations | Member with Conversations access | Human reply or internal note on an external channel. |
There is also the read-only /share-chat/<conversation-id> page, generated from a Hub conversation menu. See the known limitation under Shared conversation.
Agent conversations in the Hub
Section titled “Agent conversations in the Hub”Open the Hub through /hub; do not use /hub/chat as an entry point. The organization may be on the collaborative Hub or the compatibility experience, but individual agent conversations use the same history and composer.
In the collaborative Hub, the rail separates Rooms, Agents, Direct, Meetings, and the admin panel according to your permissions. In Agents:
- New conversation opens a draft; the conversation is only created when you send the first message;
- the column groups conversations under Pinned, Today, This week, and Earlier;
- each item shows its title, agent, latest-message preview, and relative time;
- the item menu offers Rename, Share, Export, Pin to top or Unpin, and Delete;
- the Hub-wide search opens from the column field or with
Ctrl+Kand reaches rooms, agents, and sessions.
There are no conversation folders. Use Pin to top to keep a conversation visible at the top.
Read a message
Section titled “Read a message”Your messages appear on one side and received messages on the other. In admin handling, the perspective is reversed: the customer is on the received side, while an agent or attendant represents the organization.
Each bubble can show its author, time, attachments, and Markdown content. In the Hub and admin handling, Message details lets you copy the text and inspect available data such as agent, requested model, provider, tokens, tools, and sent time. Cost and credits only appear to users allowed to view financial data.
When the agent works with tools, its path appears in the Hub and admin handling:
- while it runs, Thinking… or Working… shows progress and elapsed time;
- after the answer, the summary shows the number of steps and, when available, their duration;
- the path starts open and can be collapsed with Hide the path;
- Show details exposes the technical input and result for each step.
The public page and widget hide each message’s steps and technical details — including model and credits — from visitors.
Agent handoffs appear as a separate indicator. Generated images render in the conversation and can be enlarged or downloaded.
Write, choose the agent, and send
Section titled “Write, choose the agent, and send”In the Hub, the composer uses the Type your message… field. You can:
- send with
Enterand useShift+Enterfor a line break; - choose an agent; No agent may also be available in a new conversation;
- change the model only when your role or team allows it;
- switch to image generation when your account can generate images;
- attach through the paperclip, paste with
Ctrl+V, or drag files into the composer; - record audio when the agent accepts audio.
Selecting an agent does not make every model available. When you choose an agent, the composer returns to its configured model; the model selector only appears to authorized users.
Attachment limits
Section titled “Attachment limits”Each message accepts up to five attachments. JPEG, PNG, GIF, WebP, PDF, TXT, Markdown, CSV, Word, and Excel are accepted; video is not.
- The final file must be no larger than 4 MB.
- Recompressible images may enter at up to 10 MB.
- PDFs may enter at up to 25 MB and are compressed before upload.
- GIFs and other documents do not receive that allowance and must be no larger than 4 MB.
The product reports when it is compressing, uploading, or rejecting a file. See also Audio and Transcription.
Public page and widget
Section titled “Public page and widget”The public page and widget are resolved from the inbox, not directly from an agent:
- an inbox with an agent shows the agent identity and sends the turn to AI;
- a human-handling inbox shows the organization identity and states that a person will reply;
- a business-hours rule may also route the turn to human handling and display that notice.
The public page has a control to start another conversation after the current conversation exists and its response has finished. The widget uses the inbox name and logo, may show a welcome message, respects its configured color and position, and has a close button.
Visitors do not see an audio recorder. The attachment paperclip appears only when Allow attachments is enabled on the inbox; that setting does not enable video.
Admin handling
Section titled “Admin handling”At /admin/conversations, the selected conversation uses the same message format and adds operational controls. Reply sends to the customer through the original channel; Internal note remains within the team.
Replying depends on permission, conversation state, AI being disabled, and, on WhatsApp, the 24-hour window or an approved template. The header provides claim, transfer, snooze, complete, reopen, and archive actions according to state and authorization. See Managing Conversations and Human Intervention.
Shared conversation
Section titled “Shared conversation”A Hub conversation menu contains Share and generates a read-only page with the title, agent, and messages. The page has no composer and does not expose the agent path.
Known limitation: the product generates the link, but anonymous reading is blocked by the current access rules, and the generated token is used by neither the URL nor the query. An external recipient may see This conversation is not available. Do not rely on this link as external evidence until product access is fixed; prefer a reviewed and authorized export.
When something goes wrong
Section titled “When something goes wrong”- An older conversation is missing? Clear the search; it matches the title or agent name. Conversations belonging to archived agents do not appear in the list.
- The model is missing? The selector depends on your role or team’s permission. The agent still uses its configured model.
- An attachment was rejected? Check its type, count, and final size. Shrink the file or send only the PDF pages you need.
- The answer stopped? Wait for the connection or timeout notice. If the product reports an interruption, send the message again; do not assume a tool finished without checking the persisted path.
- Need to continue without AI? In admin handling, claim the conversation or disable AI according to your permission.