In Slack & Discord

Mention the bot, work in threads, share files, and route to specific agents.

Once a channel is connected to an agent (see Configure in Slack or Configure in Discord), users in that channel can talk to the agent the same way they'd talk to a teammate.

Starting a conversation

Mention the bot at the start of the message:

@Nairi can you check our error rate over the last hour?

The bot has to be mentioned at the start of the message for Nairi to pick it up. Mentions later in a sentence are ignored.

What happens next:

  1. Nairi opens a new thread (Slack) or uses the channel/thread (Discord).
  2. A job is created and routed to the channel's default agent.
  3. The agent posts updates back into the thread as it works.

Continuing a conversation

Just reply in the thread. Every reply in the same thread is part of the same conversation, so the agent retains context.

To start a fresh conversation, mention the bot from the main channel again. That opens a new thread.

Routing to a different agent

The channel's default agent handles every mention by default. To send a single message to a different agent, use the inline tag:

@Nairi [agent=ag_…] <prompt>

This does not change the channel's default; it only applies to this one job.

File attachments

Attachments work in both directions on Slack and Discord:

  • To the agent: upload files (PDFs, images, code, logs, CSVs, etc.) alongside your prompt and the agent reads them as part of the input.
  • From the agent: when a task produces a file, the agent posts it back into the thread.

Multi-channel agents

The same agent can be assigned to many channels. Each channel runs its own conversations independently. Agents do not share thread context across channels. Watch your agent's instance count and the org's concurrency cap if you fan an agent out widely.

Multiple agents in one channel

A channel has one default agent. Use [agent=…] for one-off overrides, or rebind the channel with /nairi agent=<id> (Slack) or @Nairi -cmd agent=<id> (Discord) when you want a permanent switch.

When the agent is busy

If the agent's instances are all occupied, your message is queued. The bot acknowledges in the thread and starts the job as soon as a slot frees up.

Stopping a job

Add a ✅ reaction to the bot's message in Slack or Discord. The job is marked completed and the agent slot is freed up immediately.


Can't find what you're looking for? Email support@nairi.ai.

On this page