Create a Slack App and connect it to your Agno agent.
To connect an agent to Slack, you need three pieces in place:
A public endpoint for Slack to send events to. In development, use ngrok to forward Slack traffic to your local AgentOS server.
A Slack app that represents your agent in the workspace. This is what users see under Apps in Slack, with its own name, icon, and permissions.
Credentials so your agent can talk to Slack and verify incoming requests. You’ll use a bot token for Slack API calls and a signing secret for webhook verification.
Create a Slack app for your agent and configure the permissions and events it needs.
Manifest
Manual
The manifest is the quickest setup path. It pre-configures the scopes, events, and settings needed for DMs, @mentions, and Human-in-the-Loop interactions.
Download manifest.json and replace https://YOUR-URL with your ngrok URL
Select your workspace, choose JSON, and paste the manifest contents
Click Next, review the summary, then click Create
Your Slack app now has the required scopes and event subscriptions.
This path configures each setting individually. Use it when you need custom scopes or want to understand what the manifest abstracts. Each area below maps to a page in the Slack app dashboard.
Name it (e.g., “My Agent”), select your workspace, then click Create App
2
Configure App Home
App Home is your agent’s surface in Slack. Users find it under Apps and start conversations there.
Click App Home in the sidebar
Under Show Tabs, enable Messages Tab
Check Allow users to send Slash commands and messages from the messages tab
3
Enable Agents & AI Apps
Streaming responses and task cards use Slack’s assistant UI, which has its own feature toggle.
Click Agents & AI Apps in the sidebar
Toggle the feature On
Without this, users see a spinner until the full response is ready (see Streaming).
4
Add OAuth scopes
Scopes are the permissions your app requests, and each one grants a single capability like reading messages, sending replies, or accessing files.Go to OAuth & Permissions → Scopes → Bot Token Scopes and add:
Scope
Purpose
Required?
app_mentions:read
See @mentions
Yes
chat:write
Send messages
Yes
im:history
Read DM history
Yes
assistant:write
Slack’s assistant UI with streaming
Yes
channels:read
See public channel membership
Yes
channels:history
Read public channel history
Recommended
groups:read
See private channel membership
Optional
groups:history
Read private channel history
Optional
files:read
Access shared files
Optional
files:write
Upload files
Optional
users:read
Look up user profiles
Optional
users:read.email
Look up user emails
Optional
Start with the required scopes and add optional ones later, keeping in mind that each change needs a reinstall. Slack’s scopes reference documents the full catalog.
5
Subscribe to events
Events tell Slack when to call your webhook. Go to Event Subscriptions:
Toggle Enable Events to On
Enter Request URL: https://YOUR-NGROK-URL/slack/events
Slack sends a verification challenge to that URL
The verification challenge needs a live endpoint. If it fails, complete the Connect your agent step first, then return and retry.
Once the agent is running, verify everything works by sending it a message. The quickest check is a direct message: find your agent under Apps in Slack and say hello.To test in a channel, invite the agent and then mention it:
/invite @MyAgent@MyAgent hello!
Each thread keeps its own conversation, so follow-up messages in the same thread don’t need another @mention.
If the agent replies, events are flowing from Slack through AgentOS to your agent. Setup is complete.