C
Cody
Communication & Messaging

Connecting OpenClaw with Slack: A Practical Guide

·4 min read

OpenClaw is built around Slack. Unlike most AI integrations that bolt onto Slack as an afterthought, OpenClaw's core interface is a Slack bot that lives in your workspace and responds to questions from your team. This guide explains what the Slack integration actually involves, how to set it up, and what to expect once it's running.

How OpenClaw Integrations Work

OpenClaw is a self-hosted AI assistant that runs on your own server — typically an EC2 instance — and connects to Slack. It uses Claude under the hood to process requests. Out of the box, OpenClaw doesn't ship with pre-built connections to third-party tools. Instead, integrations are built using the skills system: markdown files in ~/.openclaw/skills/ that give Claude instructions for a particular domain, combined with HTTP tool calls to any API you expose to it.

In practice, adding a real integration means: getting API credentials from the third-party service, building or configuring a small proxy/endpoint that OpenClaw can call, and writing a skill file that tells Claude how to use it. For some tools this is an afternoon of work. For others — like Slack — it's considerably more involved.

Connecting OpenClaw with Slack: Step by Step

Step 1: Create a Slack App in Your Workspace

Go to api.slack.com/apps and create a new app from a manifest. OpenClaw requires specific OAuth scopes to read messages, send replies, and handle slash commands. At minimum you'll need: app_mentions:read, chat:write, channels:history, im:history, im:write. You'll also need to enable Socket Mode or configure event subscriptions pointing at your OpenClaw server's public endpoint.

Step 2: Configure OpenClaw with Your Slack Credentials

Once your Slack app is created, copy the Bot Token (xoxb-...) and Signing Secret into your OpenClaw configuration. If you're using Socket Mode (recommended for servers without a public domain), you'll also need an App-Level Token (xapp-...). Set these as environment variables on your EC2 instance and restart the OpenClaw daemon.

Step 3: Install the App and Test

Install the app to your workspace via the OAuth flow. Invite the bot to a channel (/invite @yourcody) and mention it with a test question. If the bot responds, the core integration is working. From here you can configure which channels it listens in, set up a dedicated #ask-cody channel, and start adding skill files for the tools your team uses.

Challenges and Caveats

Socket Mode vs Public Endpoints

If your OpenClaw server doesn't have a static public IP or domain, Socket Mode is the easier path — it uses outbound WebSocket connections rather than requiring Slack to reach your server. However, Socket Mode has different rate limits and reconnection behaviour. For production teams, a proper public HTTPS endpoint is more reliable.

Slack's Rate Limits Apply to Your Bot

Slack applies rate limits per method per workspace. If your team is active and multiple people are querying the bot simultaneously, you may hit the Tier 2/3 limits on chat.postMessage. OpenClaw handles basic retry logic, but very high-volume workspaces may need to think about message queuing.


Skip All of This — Use Cody Instead

Cody is the fully-managed version of OpenClaw — you get all the Slack integration without configuring apps, managing tokens, or running a server. Install Cody in your Slack workspace in minutes.

Get started with Cody →


Related Guides


Need the model-flexible version? See: How to Connect Slack to OpenClaw: Setup, Models, and Workflow Guide.