Skip to main content
Your administrator connects the Slack workspace to xpander once. From then on you have your own conversation with Omni, the built-in agent, in Slack, any channel can be routed to one of your organization’s agents from that agent’s settings, and an agent can have its own mention handle.

How it responds

The app decides who answers based on how a message arrives: Replies from a routed agent are posted under that agent’s name and icon, and channel replies Omni makes on a person’s behalf, where systems allow, are posted as “your-name’s Omni” - a channel always shows exactly who answered. DMs keep the app’s own identity. After you @mention the app in a thread, your follow-up replies in that thread keep reaching your Omni for a few minutes - no need to re-mention it on every message. Everyone always has their own conversation with Omni, with their own context and, where systems allow, their own permissions, even in a shared channel or the same thread. If two people are chatting with the app in one thread, each reply is labelled with that person’s name (“Dana’s Omni”, “Sam’s Omni”), and neither person’s Omni sees or acts on the other’s private data. There is no shared or company-wide Omni.

Talk to Omni

1

DM the app

Find the xpander Slack app in your Slack sidebar and send it a message.
2

Automatic sign-in

If your Slack email matches your xpander account, you’re linked automatically and the answer arrives right away. Otherwise you’ll get a Link account button - one click connects your Slack to your xpander profile.
3

Work as usual

Your Slack DM is a real conversation with Omni: it appears in Xpander Chat’s sidebar, remembers context, uses skills, and builds live surfaces. Replies stream in as the agent works. Send new chat (or reset) to start a fresh conversation.
Voice notes are transcribed, images are read, and attached files are processed automatically. When an agent builds a dashboard or visual, the reply carries a View here button that opens it full-screen in the browser - no sign-in needed. You can also build and update agents right from the DM: Omni asks its setup questions with tappable buttons, sends you authorization links for the accounts your agent needs, and creates the agent the moment you tap Approve & build - it appears in Xpander Chat right away. Skills that need MCP setup are the one exception: Omni hands you a link to finish those in Xpander Chat.

Mention an agent by handle

A handle such as @account-research lets people select an agent directly from Slack’s mention picker. Handles work in public and private channels where the Slack app is a member; there is no separate allowed-channel list and no auto-engagement rule is needed. The agent must be published and shared with the organization, and the sender must be a full Slack workspace member who belongs to the channel. Guest accounts, Slack Connect channels, and direct messages are not supported for handle mentions.
Handles need a one-time administrator authorization of the workspace, described on Slack workspace. Until then the handle controls read Not active.

Create and use a handle

1

Open the agent's Slack settings

Open the agent’s Channels → Slack settings and find Agent handle. Handle names are configured here, rather than in the workspace Channels settings.
2

Create the handle

The suggested handle comes from the agent’s name, for example Account Research → account-research. Edit it if needed, then select Create handle. The handle becomes usable when creation completes and its status is Active. Other states display Not active, with guidance about what needs attention.
3

Mention the agent in Slack

Add the Slack app to the channel if needed. Type the handle, select it from Slack’s mention picker, and send your request. Selecting the mention matters: typing plain text that looks like a handle does not select an agent.
Mention multiple handles to get separate answers, for example @account-research @sales-assistant prepare a briefing for Acme. Follow-up replies without a new mention continue with the selected agents while the thread’s conversation context is active. Mention the desired agents again to select a different set.

Rename or delete a handle

Use Rename in the agent’s Slack settings to change an existing handle. The new name must be available in that Slack workspace. Delete handle immediately removes the agent’s handle mapping and queues cleanup in Slack. With management authorization available, xpander renames and deactivates the group it created, releasing the old handle. Slack can retain a deactivated group entry and historical messages; deactivation prevents new mentions. If the UI reports cleanup is pending, ask the workspace admin to restore authorization and allow cleanup to finish before reusing the name. For an existing admin-managed Slack group, Remove mapping only removes its agent mapping; the group and its human membership remain unchanged.

Route a channel to an agent

Untagged channel messages can be handled by one of your organization’s agents. Any member can set this up. Only one agent can auto-engage per channel. Explicit handle mentions can select other agents without changing that channel’s auto-engagement setting.
1

Open Slack channel settings

In Xpander Chat, open your agent’s settings and find Slack channels, or use the channel selector under the composer. Both open the same surface.
2

Pick a channel and an agent

Choose the Slack channel and the agent that should own its untagged traffic, then click Add. The app joins public channels automatically; for private channels, invite it with /invite so it can see messages.
3

Write engagement rules

Expand Rules on the channel row. Each rule is a plain-language description of when the agent should step in - the agent engages when a message matches any rule. Rules apply within a minute; no publish step is needed.
Write rules as specific intent descriptions, not keyword lists:
  • ✅ “When someone reports a bug, error, or outage”
  • ✅ “When a question about pricing or plans goes unanswered”
  • ❌ “bug, error, pricing” (too broad - triggers on most messages)
A routed agent answers in a thread, attributed to the message author and, where systems allow, acting with that person’s permissions. Mentioning the Slack app selects Omni in the author’s own conversation; mentioning an agent handle selects that agent. Channel routing applies to untagged messages. Once the agent engages in a channel, it follows the conversation for a few minutes without re-checking the rules on every message. Routing looks at top-level channel messages. Untagged thread replies don’t engage the agent unless you turn on Also engage in thread replies on the channel row - an @mention inside a thread always works.

Send replies to another channel

By default a routed agent answers in the channel it was asked in. It can also answer into other channels - an alerts channel, a leadership channel, or both - without connecting a Slack account of its own. The workspace app posts the copy under the agent’s own name and avatar. Open Where on the channel row and pick one of three options: Add up to 10 destination channels. The app joins public ones automatically; for a private channel, invite it with /invite first. A relayed answer arrives as a new message carrying a Relayed from #channel line, so readers can see where the question was asked - it is a copy, not a conversation. To keep talking to the agent, reply in the original thread, or route the destination channel to an agent of its own. The destinations double as the agent’s own permission list: while it works, it can post to those channels and nowhere else.
Only a completed answer is relayed. Errors and progress updates stay in the original channel, and a direct @mention always reaches Omni in the author’s own conversation rather than the routed agent, so it is never relayed.

Progress while an agent works

Slack, Microsoft Teams and Telegram show one status line that updates as the agent works. By default the step checklist stays hidden and the finished reply carries the answer. Turn on Show detailed tool activity on the channel row, or in the bot’s settings for every channel, to see the steps. Skill calls and plan updates appear as readable rows. Consecutive identical steps fold into one row with a counter, and the list stops at twelve rows. A shell command reads as a label such as “Running a shell command” rather than the raw command. On Slack’s native streaming path, the detailed steps can remain visible in the finished message. Where the app edits a placeholder message instead, the progress clears when the answer arrives. A change to the setting reaches an existing channel binding within a minute. A channel that was explicitly set to post no progress stays silent until you turn on detailed activity. Streaming of the answer text itself is a separate setting.

Where conversations live

  • DM conversations appear in your xpander sidebar like any other conversation with Omni.
  • Channel conversations (mentions and routed replies) stay out of the personal sidebar but are visible in the organization’s Task Manager, where every run is tracked.

Troubleshooting

Check the explanation beside the handle in the agent’s Slack settings. Confirm that the workspace supports handles, has a paid Slack plan with user groups, and has completed administrator authorization. Finish creating the handle and wait for Active, then select it from Slack’s mention picker. If Slack rejects the name, choose a different available name.
Consent does not override Slack workspace permissions. The account that authorized management must be allowed to create, edit, and deactivate user groups. Ask an organization admin with the necessary Slack rights to reauthorize the same workspace. Keep the permissions restricted to admins; allowing everyone is not required.
Check whether cleanup is pending in xpander. The agent mapping is removed immediately, but Slack cleanup may need restored authorization or a retry. After cleanup, Slack may still show a deactivated directory entry or old messages. Removing an admin-managed mapping intentionally leaves the original group unchanged.
The app must be a member of the channel - check the member list and /invite it if needed (always required for private channels). Then check that the channel row’s auto-engage toggle is on and that a rule actually matches your message. If the message was a reply inside a thread, note that thread replies only engage when Also engage in thread replies is enabled on the channel row (or when the app is @mentioned). Rule edits take up to a minute to apply.
Runs stop with a billing notice when your organization’s credits run out. An organization admin can top up under Settings in Xpander Chat - then send your message again.
Tighten the rules: overly broad conditions like “when someone asks a question” match most messages. Note that after an engagement, follow-ups in the same channel may engage without re-checking rules for a few minutes.

Next Steps

Channels

Every way work reaches an agent, and what is recorded

Slack workspace

For administrators: connecting the workspace and authorizing handles

Webhooks

Trigger agents from external systems