Skip to content

Slack#

Managed agents can connect to Slack for DM-based interaction and channel participation. Once connected, agents respond to direct messages, participate in team channels, and optionally trigger monitoring checks from specific channels.


How Slack integration works#

Slack is connected once at the organization level by an administrator, using a Slack bot with the required scopes (chat:write, im:write, im:history, channels:history, groups:history, users:read, app_mentions:read). With the organization-level connection in place, individual managed agents can be linked to Slack DMs or channels.

Each agent operates in one of two modes — Personal (DM) or Team (Channel) — and cannot be in both simultaneously.


Personal mode (DM)#

In Personal mode, one user links their Slack account to one agent for private conversation over Slack DM.

Once linked, the user DMs the agent the same way they'd message a colleague. Messages are bidirectionally synchronized between Slack and the agent's web chat — anything said in Slack is visible in web chat, and vice versa.


Team mode (channel)#

In Team mode, an agent participates in a shared Slack channel. Multiple team members can interact with the agent. Channel message routing follows these rules:

Trigger Agent response
@mention in channel Responds immediately in a thread
Reply in a thread the agent is in Continues the conversation in the thread
Top-level message (no mention) Classified automatically: respond, react with an emoji, or ignore
Message in a heartbeat trigger channel Queued for the next heartbeat cycle

For top-level messages without an @mention, a fast classification model evaluates whether the message is relevant to the agent. This prevents the agent from responding to every message in busy channels.

Passive channel learning#

Messages that are not directly addressed to the agent are queued for passive learning. The agent processes these in batches, using them to build context about team discussions, terminology, and ongoing work. The agent gradually learns from team conversations — even when not @mentioned.

Channel behavior#

In team mode, agents adapt their communication:

  • Responses are concise (the whole team sees them)
  • Detailed analysis goes in threads, not top-level messages
  • Messages are attributed with sender names (multi-user awareness)
  • Proactive warnings about risky changes are surfaced
  • Code is properly formatted

Personal mode vs. team mode#

Personal and team mode are mutually exclusive per agent. An agent is either DM'd by one user or participating in one channel — not both. Modes can be switched by unlinking the current one.

Personal mode Team mode
Where Slack DM Slack channel
Who interacts One user Multiple team members
Message routing All DMs go to the agent Classification gate filters relevance
Best for Personal assistant agents Team collaboration agents

Heartbeat triggers#

A Slack channel can trigger an immediate heartbeat check when a message arrives. This is separate from team mode — a heartbeat trigger channel is for event-driven monitoring, not conversation.

Each agent can have one heartbeat trigger channel with a configurable throttle interval (default: 60 seconds) that prevents the agent from triggering on every message in a fast-moving channel.

Typical use case: linking an incident channel as a heartbeat trigger. When someone posts an incident, the agent immediately runs its monitoring checks with the incident message as context.