OpenClaw Slack Setup for Teams

Give your whole team an AI assistant inside Slack. OpenClaw can summarize channels, draft replies, answer questions in threads and run tasks, all from the workspace you already use. This guide sets it up with the official app manifest and Socket Mode, then covers the team settings that keep it useful and safe.

Quick answer

Create a Slack app from the OpenClaw manifest, generate an app-level token with connections:write, install it to get the bot token, add both to OpenClaw and restart the gateway. Then /invite @OpenClaw to your channels.

Why Slack

What teams use OpenClaw in Slack for

Catch up fast

"Summarize what happened in #product this week."

Draft replies

"Help me reply to this customer thread politely."

Answer questions

"Where's our refund policy?" answered in a thread.

Standups and notes

"Collect today's updates and post a summary at 5pm."

Support triage

Flag urgent messages in #support and suggest an owner.

Charts and tables

Answers with native Slack charts, tables and forms.

Before you start

What you need

  • OpenClaw running on an always-on machine

    Your team will expect it to answer during work hours. A VPS or office server is ideal.

  • Permission to install apps

    A workspace admin, or approval from one. Many company workspaces require admin approval for new apps.

  • A plan for access

    Decide which channels and people can use it. See team settings.

1
Step 1

Create the Slack app from the manifest

  1. Go to api.slack.com/apps, click Create New App and choose From a manifest.
  2. Pick your workspace.
  3. Paste the manifest below. Rename the bot first if you like. Then click Next and Create.
Make it yours

Manifest builder

Customize the name your team sees. Scopes and events stay as OpenClaw needs them.

App manifest (JSON)

This is the official base manifest from the OpenClaw docs. It sets up Socket Mode, the bot user, App Home, Slack's Agent View with suggested prompts, a slash command, 23 bot scopes and the events OpenClaw listens to.

2
Step 2

Generate the app-level token

  1. In your new app, open Basic Information › App-Level Tokens and click Generate Token and Scopes.
  2. Name it (for example "socket") and add the connections:write scope.
  3. Click Generate and copy the token. It starts with xapp-.
3
Step 3

Install the app to your workspace

  1. Open Install App and click Install to Workspace. If your workspace needs admin approval, request it here.
  2. Review the permissions and click Allow.
  3. Copy the Bot User OAuth Token. It starts with xoxb-.
xapp-…App-level tokenOpens the Socket Mode connection
xoxb-…Bot tokenReads and posts messages as the bot

Keep both secret. Anyone with them can act as your bot in your workspace.

4
Step 4

Connect OpenClaw to Slack

Store the tokens as environment variables, not in the config file. Add them to ~/.openclaw/.env so the background service can read them:

~/.openclaw/.env
SLACK_APP_TOKEN=xapp-...
SLACK_BOT_TOKEN=xoxb-...

Then point the Slack channel at them in ~/.openclaw/openclaw.json:

~/.openclaw/openclaw.json (JSON5)
{
  channels: {
    slack: {
      enabled: true,
      mode: "socket",
      appToken: { source: "env", provider: "default", id: "SLACK_APP_TOKEN" },
      botToken: { source: "env", provider: "default", id: "SLACK_BOT_TOKEN" },
    },
  },
}

Restart and check the connection:

Terminal
openclaw gateway restart
openclaw channels status --probe
5
Step 5

Approve yourself and invite it to channels

  1. DM the app. Find OpenClaw under Apps in Slack's sidebar and send a message. Direct messages use pairing by default, so you'll get a code.
  2. Approve it:
    Terminal
    openclaw pairing list slack
    openclaw pairing approve slack <CODE>
  3. Invite it to a channel by typing this in the channel:
    Slack
    /invite @OpenClaw
  4. Mention it to ask something: "@OpenClaw summarize this channel."
For teams

Recommended team settings

A shared assistant acts with whatever access you give it. Start narrow and widen as your team gets comfortable.

Running a large company? OpenClaw supports Enterprise Grid org-wide installs across Grid organizations. Read the security guide before rolling out widely.

Permissions

What the Slack permissions are for

Your admin will ask what the app can access. Here are the manifest's bot scopes in plain English:

AreaScopesWhy OpenClaw needs it
Mentionsapp_mentions:readSee when someone @mentions it
Channelschannels:history, channels:read, groups:history, groups:readRead public and private channels it's been invited to
Direct messagesim:*, mpim:*Chat one-to-one and in group DMs
Postingchat:write, assistant:writeReply, and work in Slack's agent view
CommandscommandsThe slash command
Filesfiles:read, files:writeRead shared files and upload results
Reactions and pinsreactions:*, pins:*, emoji:readReact, see reactions and pin key messages
Peopleusers:read, usergroups:readKnow who's who and handle @group mentions

The bot can only read channels it has been invited to.

What you get

OpenClaw features in Slack

Agent View

Opens in Slack's assistant panel with suggested prompts like "Summarize this channel".

Slash command

/openclaw sends a message from anywhere.

App Home

A home tab and private messages tab for one-to-one chats.

Block Kit

Native charts, tables and forms in replies.

Threads

Each thread can keep its own session and context.

Files, reactions, pins

Works with what your team shares and marks as important.

Connection type

Socket Mode vs HTTP Request URLs

ModeHow it worksBest for
Socket Mode defaultOpenClaw opens an outgoing connection to Slack with the app-level token. No public URL or open ports.Almost everyone, including laptops and private servers
HTTP Request URLsSlack sends events to a public HTTPS address on your server, verified with the signing secretSetups that need classic webhooks behind a load balancer
RelayEvents arrive through a trusted routerManaged deployments
Troubleshooting

Fix common Slack problems

No reply in a channel

Invite it with /invite @OpenClaw, mention it, and make sure the channel is in your allowlist.

Socket Mode won't connect

Check SLACK_APP_TOKEN starts with xapp- and has connections:write. The bot token starts with xoxb-, so check they aren't swapped.

missing_scope

You changed the manifest after installing. Go to Install App and reinstall to apply new scopes.

Can't DM the app

Make sure the App Home messages tab is enabled (it is in the manifest), then reinstall.

Install needs approval

Your workspace restricts apps. Ask an admin to approve OpenClaw. Share the permissions table above.

Tokens not found

The background service reads ~/.openclaw/.env. Put the tokens there, not only in your terminal session.

More fixes: troubleshooting guide.

FAQ

OpenClaw Slack questions

How do I add OpenClaw to Slack?

Create a Slack app from the OpenClaw manifest at api.slack.com/apps, generate an app-level token with connections:write, install the app to get the bot token, add both tokens to OpenClaw and restart the gateway. Then invite the bot to channels with /invite.

Does OpenClaw need a public URL for Slack?

No. OpenClaw uses Socket Mode by default, which opens an outgoing connection to Slack. HTTP Request URL mode, which needs a public HTTPS address and the signing secret, is optional.

Which Slack tokens does OpenClaw need?

Two for Socket Mode: an app-level token starting with xapp- that has the connections:write scope, and a bot token starting with xoxb- from installing the app. HTTP mode also uses the signing secret.

Can my whole team use one OpenClaw in Slack?

Yes. Invite it to shared channels, limit it with a channel allowlist and requireMention, and consider a separate team agent with its own memory and limited tools through multi-agent routing.

Does OpenClaw work with Slack Enterprise Grid?

Yes. OpenClaw supports org-wide installs across Enterprise Grid organizations.

Can OpenClaw read all my Slack channels?

No. The bot can only read channels it has been invited to, plus direct messages sent to it. You can narrow it further with a channel allowlist.

Other channels