Your agent can communicate with you and your team in Slack. People mention it in a channel or DM it, and the agent replies in the same thread — using its full context, capabilities, and history — just like it does in the portal chat. It can also search, read, post messages, add files, and react with emoji. Each Slack-enabled agent has its own identity in Slack, with its own Slack app, bot user, and token.Documentation Index
Fetch the complete documentation index at: https://docs.abundly.ai/llms.txt
Use this file to discover all available pages before exploring further.
How to enable
Go to Settings → Capabilities and enable Slack. Then pick a Slack mode, paste in your bot token and Slack app ID, and point your Slack app’s Event Subscriptions URL at the webhook Abundly shows you. See the step-by-step guide below.Slack modes
The Slack capability has two modes, selectable on the capability card. You can switch modes at any time under Settings → Capabilities → Slack.Chat mode (default)
The natural choice for most agents. Slack threads and DMs behave as persistent agent chats — the same abstraction as the portal chat. People start a conversation by @mentioning the agent in a channel or sending it a DM, and then keep replying in the same thread without having to @mention every time. Chat mode already supports everything most agents need on Slack, including:- Posting proactively to any channel the bot has been invited to
- Sending DMs
- Adding reactions
- Running all Slack tools (search, user lookup, etc.)
Trigger mode
Each Slack event your app subscribes to is forwarded to the agent as a raw trigger payload for it to interpret with your instructions. There is no automatic reply; the agent only responds or takes action if your instructions call for it. Trigger mode is intended for ambient monitoring or custom automations on specific event types (for example: “whenever someone reacts with 🚨 in #alerts, file an incident”). It is not the right mode for normal interactive Slack use.Example use cases
- “Post a daily standup summary to #engineering every morning”
- “Whenever a new potential customer is mentioned on the #sales channel, research how the customer fits our ideal profile, and add relevant info to the slack thread”
- “Notify #alerts when you are unable to solve a support ticket”
- “When a support request needs follow-up, add an :eyes: reaction so the team sees it’s being handled”
- “When a teammate shares a design mockup in a Slack thread, summarize the feedback and save the file as an agent document for follow-up”
How to connect to your Slack workspace
Create a Slack app from the manifest
Abundly generates an app manifest tailored to your agent. It includes the webhook URL, OAuth scopes, and the event subscriptions Slack needs for threads, DMs, and group DMs.
- In Abundly, go to Settings → Capabilities, enable Slack, and copy the App Manifest.
- Visit api.slack.com/apps and click Create New App → From a manifest.
- Select your workspace, paste the manifest, then click Next and Create.
Manifest template
Install the app and copy your credentials
After creating the app:
- Copy the App ID from the Basic Information page.
- Go to Install App in the left sidebar and click Install to Workspace, then authorize the app.
- Copy the Bot User OAuth Token from the OAuth & Permissions page.
Configure in Abundly
Back in Settings → Capabilities → Slack, paste the bot token and app ID and save. Click Test connection to confirm Abundly can reach your workspace.
Verify the Event Subscriptions URL in Slack
If Slack didn’t verify the URL automatically when you created the app from the manifest:
- Go back to your app at api.slack.com/apps.
- Open Event Subscriptions, enable events, and paste the webhook URL shown in Abundly.
- Slack verifies the URL — it should show Verified ✓.
- Click Save Changes.
How conversations work in Chat mode
With the default manifest and Chat mode, the agent listens broadly but replies selectively:- @mentions in a channel start a new chat — the agent replies in the thread with full context.
- DMs and group DMs start (or continue) a chat — the agent replies naturally.
- Follow-up thread replies in a thread the agent already joined continue the same chat, so you don’t need to @mention on every message.
- All other messages are ignored silently, so normal channel chatter doesn’t spam the agent.
Customizing scopes and events
The manifest includes defaults that work for most use cases. You can customize them in your Slack app settings:| Setting | Description |
|---|---|
| Scopes | What the agent can do in Slack. See the full list of scopes. |
| Bot events | Which events Slack sends to the agent. See the full list of events. |
message.channels and message.groups and add app_mention instead — the agent will then only receive @mentions and DMs.
Accessing other Slack API methods
Beyond posting messages, reading channels, and reacting to messages, your agent can call any Slack Web API method — for example pinning messages, adding bookmarks, or listing user groups. Just ask in plain language:- “Pin the latest status update in #launch”
- “Add a bookmark to #onboarding linking to our new-hire checklist”
- “List all user groups in the workspace and tell me who’s in @design-team”
Working with file attachments
Your agent can both receive files from Slack and send files back into Slack messages and DMs. Incoming files. When people share files in Slack, your agent can download those attachments into agent documents and use them in multi-step workflows — for example, reading and summarizing an attached PDF, saving it to the document library, or forwarding it to another capability like Notion. Outgoing files. The agent can attach files when it posts to a channel or sends a DM. Supported sources include agent documents, images and other files produced by other capabilities, external URLs, and raw SVG content (auto-converted to PNG). Multiple files can be attached to a single message. Example prompts:- “Generate a pie chart of last month’s sales by region and post it to #sales with a short summary”
- “When the weekly report PDF is ready, DM it to @Jane”
- “Take the diagram you just drew and share it in the thread”
files:read and files:write, which are needed for file workflows.
Troubleshooting
Agent isn't responding to messages
Agent isn't responding to messages
- Check the mode — In Settings → Capabilities → Slack, confirm you’re in Chat mode if you expect the agent to reply automatically. Trigger mode does not auto-reply unless your instructions say so.
- Check event subscriptions — In your Slack app settings, go to Event Subscriptions and ensure:
- The Request URL matches the webhook URL shown in Abundly.
- The “Enable Events” toggle is ON.
- The bot events from the manifest are present (
message.imfor DMs, plusmessage.channels/message.groupsfor public / private channel messages — orapp_mentionwithapp_mentions:readif you’ve narrowed to mention-only).
- Invite the agent — Type
/invite @YourAgentNamein the channel, or DM the bot directly. - Test the connection — Use the Test connection button in Abundly to confirm the bot token is valid.
Agent replies only to @mentions, never to regular channel messages
Agent replies only to @mentions, never to regular channel messages
By default, the agent listens to all messages in channels it’s in, but only replies to @mentions, DMs, and follow-ups inside threads it’s already part of. That’s intentional — it keeps the agent from jumping into every conversation. To change this behavior, adjust your agent’s instructions or customize the bot events in your Slack app.
Agent is responding to too many messages
Agent is responding to too many messages
By default the agent receives all messages in channels, groups and DMs it’s a member of, so it can keep a conversation going in a thread without requiring an @mention every time. If you’d rather have it respond only when directly @mentioned:
- In your Slack app’s Event Subscriptions, replace
message.channelsandmessage.groupsin the bot events withapp_mention. - Add
app_mentions:readtoscopes.boton OAuth & Permissions. - Reinstall the app from the Install App page, then update the new bot token in Abundly.
Permission errors
Permission errors
Ensure your Slack app has these minimum scopes:
channels:read,groups:read,im:read— To see public channels, private channels, and DMschannels:history,groups:history,im:history,mpim:history— To read message content in each conversation typechat:write— To send messagesim:write— To open DM conversationsusers:read— To resolve user IDs and display names

