Messaging
Messaging covers the in-workspace conversations: one-to-one chats with members, group chats, AI conversations with agents, and the message channels that deliver notifications into the workspace.
Open the conversation list in the workspace, then pick or start a conversation. A conversation lives at /workspace-apps/chat/<conversation id>.
Message App Page
Message apps share one page layout: the app menu on the left, and a single message list on the right with the actions that this app supports.
| Header action | Available in | Description |
|---|---|---|
| Search messages | Every message app | Searches the message history of the app; each result shows the card title, a content preview, and the time; at most 50 matches are returned, and a new keyword replaces the previous result |
| Todos | Reminder and Approvals | Opens the todo panel beside the list; the badge shows the total number of pending items, and shows 99+ above 99 |
| File resources | File Bag | Replaces the message list with the folders of the file bag, using the search of the file view |
Todo Panel
The todo panel lists the work that is waiting for you without leaving the message app.
| App | Panel | Content |
|---|---|---|
| Reminder | Todos | Human tasks that wait inside an approval process, for example a node a member has to fill in |
| Approvals | To-dos | Approval tasks that wait for your decision |
Every entry starts with the record title and then shows the context of the task.
| App | Fields |
|---|---|
| Reminder | Task node, process, initiator, form, received at |
| Approvals | Initiator, approval process, started at, related form |
- Select the todo button in the header to open the panel, and select it again to hide it
- Select an entry to open the record in a new tab; the panel stays open so you can continue with the next task, while an entry without a record target stays unclickable
- Select More in the panel header to open the Todo Center, where the left menu switches between approval records and task records
- Select back in the Todo Center to return to the message app
The panel loads at most 100 entries while the badge keeps the count of all pending items, so the badge can be larger than the list. An empty panel shows No human tasks or No approval to-dos, and loading or a failure uses the standard spinner and error state.
Message List
| Element | Description |
|---|---|
| Card | The header icon and title text, the body with its resolved field values, and the footer that the template defines |
| Status | New message before it is read, read with the read time afterwards, and archived for archived messages |
| Footer | The clickable strip with its name and right arrow; it opens the target the template defines and marks the message as read |
| Item menu | The ⋯ button in the card's top-right corner, or a right click, opens Mark as read and Delete |
| Card time | Each card shows its creation time in the top-right corner, and hovering it shows the full timestamp |
| Attachment | Previews an image or downloads the file from the card |
| Timeline | Messages are ordered by creation time, with a separator when the day or the hour changes |
| Action | Description |
|---|---|
| Mark as read | Marks one unread message as read from the item menu or the right-click menu |
| Delete | Deletes one message after a confirmation, and deletion cannot be undone |
| Detail | Opens the message detail with its fields, unread state, creation time, image preview, and the outline of a long Markdown body |
| New message | A bubble appears when a message arrives while you read older history; select it to jump back to the latest message |
A message whose read policy is app_open is marked as read when the app page loads. The aggregated Messages entry leaves it unread until you open the app that owns the message or mark it manually.
On a mobile viewport the page shows a back button and opens the todo panel and the file resources as an overlay above the list.
Direct Chat
A direct chat is a one-to-one conversation with another member.
Message Actions
| Action | Description |
|---|---|
| Attachments | Send files or images; up to 10 attachments per message |
| Stickers | Send stickers from the catalog, or add your own GIF stickers; an uploaded GIF must be at most 5 MB and 512 × 512 |
| Reply | Reply to one message in the conversation |
| Forward | Forward a message to one or more conversations |
| Copy | Copy the message text |
| Pin | Pin a message in the conversation; in a group it can also notify all members |
| Delete | Delete the message, optionally for the other member as well |
| Search | Search inside the current conversation history |
| Media | Browse the conversation media by image, video, file, link, audio, or GIF, with a date range filter |
| Load older | Load earlier messages when the conversation is long |
Conversation Management
| Action | Description |
|---|---|
| Open conversation list | Switch to another conversation |
| Delete chat | Removes the chat and its history from your own record only; the other member keeps the conversation |
Group Chat
Create A Group
- Choose the conversation scope: user, department, organization, role, or agent
- Search inside the scope and select the members
- Confirm to create the group; the default name follows the creator
Group Information
| Item | Description |
|---|---|
| Owner | The owner can transfer ownership to another member; transfer before leaving |
| Administrators | Add administrators in batch, or remove administrator rights in batch |
| Members | Invite or remove members; the group reports when its member limit is reached |
| Avatar | Upload a PNG, JPEG, or WebP up to 5 MB, or restore the default avatar |
| Name and description | Group name is required; the description is optional |
| History visibility | New members see all history, or only messages after they joined; this only affects members who join later |
Administrator Permissions
| Permission | Description |
|---|---|
| Edit group info | Change the group name, description, and avatar |
| Add members | Invite new members |
| Remove members | Remove members from the group |
| Pin messages | Pin messages in the group |
| Delete member messages | Delete messages sent by other members |
Group Settings
| Setting | Description |
|---|---|
| Notification | Whether the group sends notifications to you |
| Member invitations | Whether ordinary members may invite new members |
| Mute all | When enabled, only administrators can send messages |
Agents In A Group
Invite an agent into a group, enable or disable it, or remove it. Members can mention the agent with @ and ask a question in the current group chat; the agent replies in the conversation and shows a typing state while it works. The available capabilities come from the system commands and custom MCP servers enabled for that agent.
Leave Or Dissolve
| Action | Description |
|---|---|
| Leave group | Leaves the group and stops receiving its messages |
| Transfer ownership | Required before the owner leaves |
| Dissolve group | Removes the group for everyone and cannot be undone; members can still read history afterwards |
| Delete chat | Removes only your own conversation; you stay in the group and keep receiving new messages |
| Delete and leave | Removes your conversation and leaves the group at the same time |
AI Chat
An AI conversation is a chat with an agent instead of a member. Open it from the agent's app or from the workspace, and the agent answers with the capabilities enabled for it: system commands, custom MCP tools, and its published instructions.
AI chat appears in two places:
| Place | Description |
|---|---|
| Agent app conversation | The conversation of an app whose runtime mode is the agent, for example Luna |
| Group chat mention | Mentioning an agent inside a group chat, which answers in that group |
Message Channels
Message channels decide how a notification reaches its audience.
| Channel | Description |
|---|---|
| Inbox message | Delivered to the in-app inbox of the target workspace app or the message center |
| Push | Delivered as a workspace push notification |
| Delivered to the recipient email address |
A message template declares which channels it supports, and the sending node can only use those channels.
| Sending node | Available channels |
|---|---|
| Approval process message node | Inbox message only, delivered into the Approval Center |
| Automation task message node | App message or group chat |
| OpenLink flow message node | Inbox message, push, or email |
Workspace App Channels
Each workspace app can enable its own message channel with a topic. Messages posted to that topic appear in the app, the app badge shows the unread count, and members can read, mark as read, or delete them in the app.
Unread And Read State
Inbox messages carry unread, read, and archived states with a read time. Opening an app marks its loaded unread messages as read, while the aggregated message entry keeps them unread until the member opens them.
Analyze A Linked Report In Group Chat
Share a saved report link (/visualization/view/<chartId>) and ask the group agent to analyze it. Enable system.analysis.chart.query in the agent app's system commands first. The agent reads current data under the requesting member's report and source-data permissions, then replies with ordinary group text. It cannot analyze inaccessible data, and must disclose row or category limits when the query is truncated. Automatic report analysis can use Visualization → Agent Execution → Message (group chat) in an automation task.