Routes
/messages— opens the Message Center with the default (first) channel selected/messages/:type— opens the Message Center pre-filtered to a specific channel type (e.g.,messages/discord,messages/telegram)
Backing RPC
channels.list— channel picker contentschannels.capabilities(channel_type)— determines which actions are available for the selected channelchannels.get(channel_type)— bot identity (used to label the operator attribution dialog)obs.channels.all— activity labels for endpoint-authoritative chat picker rowssession.listandsession.history— chat discovery and stored history, matched by complete endpoint identity (channel instance, conversation, thread, and kind) rather than a display keymessage.fetch(channel_type, channel_id, endpoint, limit?)— native recent history for the exact selected endpointmessage.send,message.reply,message.react,message.edit,message.delete— native compose and modify operations carrying that same endpointmessage.attach— endpoint-authorized URL-based attachment deliverydiscord.action,telegram.action,slack.action,whatsapp.action— endpoint-authorized platform-specific actions
What You See
Channel and Chat Selectors
At the top of the page, a breadcrumb trail shows navigation context (Channels > selected channel > Messages). Below it, two dropdown selectors let you choose:- Channel — pick which messaging platform to browse (Discord, Telegram, Slack, WhatsApp, etc.)
- Chat — pick which specific conversation/chat within that channel to view
Every current picker row preserves the complete endpoint returned by
session.list, including the channel instance, optional thread, and
direct/shared kind. The Message Center passes that endpoint to every native
history, mutation, attachment, and platform-action RPC. If endpoint discovery
returns no row or fails, native history is not requested and all relevant
controls remain disabled; a channel type is never substituted for a missing
conversation ID. Channels without native history use session.history, but
only after an exact endpoint match. See the
message.send contract.Message List
The main area displays recent messages sorted by timestamp (oldest first). Each message row shows:
Click a message row to select it. The selected message highlights and becomes the target for reply and platform actions that require a message ID.
Message Actions
When the selected chat has an authoritative endpoint, platform capabilities determine whether you can perform these actions:- Reply — compose a reply to a selected message (opens a confirmation dialog with operator attribution)
- React — add an emoji reaction from a curated set of 24 common emoji
- Edit — modify a sent message (only available if the platform supports
editMessages) - Delete — remove a message (only available if the platform supports
deleteMessages, with a confirmation dialog)
Send Form
Below the message list, a compose area lets you send new messages when native actions are available for the selected target. Sending requires confirmation via a dialog that shows operator attribution — messages sent from the dashboard are clearly identified as coming from the operator, not the AI agent.Attachment Form
When native actions are available, you can attach files to messages with support for four attachment types: image, file, audio, and video. Select the attachment type, enter the attachment URL and optional caption, and send it to the current conversation.Platform Actions
At the bottom, an expandable section shows platform-specific actions grouped by category. Available actions vary by platform:- Discord — Pin/Unpin messages, Kick/Ban/Unban users, Set Topic, Set Slowmode, Send Typing, Create/List Threads, Guild Info, Channel Info
- Telegram — Pin/Unpin messages, Ban/Unban/Restrict/Promote/Demote users, Set Chat Title/Description, Send Typing, Chat Info, Member Count, Get Admins
- Slack — Pin/Unpin messages, Set Topic/Purpose, Archive/Unarchive Channel, Send Typing, Invite/Kick users, List Members, Channel Info, Add Bookmark
- WhatsApp — Group Info, Update Subject/Description, Get Invite Code, Add/Remove Participants, Promote/Demote Admins, Group Settings
Common Tasks
1
Browse messages from a channel
Select a channel from the Channel dropdown. Then pick a chat from the Chat dropdown. Messages load automatically.
2
Send a message
When the compose area is enabled for the selected target, type your message and click Send. Confirm the operator attribution dialog to deliver the message.
3
Reply to a message
When native message actions are enabled, click a message row to select it, then click the Reply button. Compose your reply and confirm the attribution dialog.
4
Execute a platform action
When platform actions are enabled for the selected target, expand the Platform Actions section, find the action you want (grouped by category), fill in any required fields (user ID, topic text, etc.), and click Execute.
Related Pages
Channels View
Monitor and manage your messaging platform connections.
Chat Console
Talk to your agents directly through the browser.
Platform Actions
Full reference for all platform-specific actions.
