How to Set Up Claude Code in Slack: 2 Routes Compared
Claude Code in Slack lets you delegate coding tasks from a channel and get PRs back. Here's the official 5-step setup plus a self-hosted bot alternative, with trade-offs to help you choose.
You give a coding task to a teammate, wait hours for a PR. What if you could just @mention a bot? Last December, Anthropic shipped Claude Code in Slack. I set it up with a teammate in ten minutes, and by the end of the day a bug report in our channel had turned into a merged PR without anyone opening a terminal.
Claude Code in Slack lets you delegate coding tasks straight from a team channel: mention @Claude with a bug or feature, and it spins up a cloud Claude Code session, posts progress updates back to the thread, and hands you a PR link when done. The official integration works on the existing Claude for Slack app, and it is currently in beta as a research preview, per Anthropic's announcement.
What Claude Code in Slack does
You describe the task in plain language, and Claude picks the repository, writes the code, and posts its progress where everyone can see it, as the official Claude Code docs explain. For example, you could type @Claude investigate why the login test fails and Claude will start working on it right away.
Two routes exist. The official app runs in Anthropic's cloud and needs a paid Claude plan plus a connected GitHub account. The community bot runs on your own machine and works with whatever model you point it at. This guide covers both, starting with the official path.
Before you start: what you need
You need a Pro, Max, or Ultra Claude plan, a Slack workspace that is not connected to Claude Tag, cloud sessions enabled at claude.ai/code, and a GitHub account linked to Claude with at least one repository. The prerequisites page lists these in order, and missing any one of them stops the setup cold.
- Claude plan: Free and Team plans are not listed as supported.
- Slack workspace: it must not already be connected to the separate Claude Tag app. A workspace on Claude Tag needs to disconnect before this works.
- Cloud sessions: enable them at claude.ai/code.
- GitHub: authenticate at least one repository so Claude has a codebase to work from.
- Slack account: the same Slack account that uses the Claude app must be linked to your Claude login.
Official setup: the 5 steps
The official setup is a five-step flow: install the Claude app from the Slack App Marketplace, connect your Claude account, configure cloud sessions and a repo, pick routing mode, then invite @Claude. Each step takes a minute, and the docs walk through them in this exact order.
Install the app
Have a Slack admin install Claude from the Slack App Marketplace.
Connect your Claude account
Open the App Home tab in Slack and link your Claude account there.
Configure cloud sessions
Enable cloud sessions and authenticate at least one GitHub repository here.
Pick routing mode
Choose between Code only (coding tasks only) and Code + Chat (coding plus regular chat replies).
Invite @Claude
Run /invite @Claude in the channel where you want to work. This works in public and private channels, but not in DMs.
The invite is the moment routing mode kicks in — if you picked Code + Chat, @Claude also answers general questions here.
How a task moves from mention to PR
When you mention @Claude with a task, it creates a cloud session on claude.ai/code, posts progress updates to the thread, and finishes with View session and Create PR buttons. That flow, documented in the official docs, is what makes the integration feel like a teammate rather than a tool.
For a fresh example, try asking it to add a dark mode toggle to your React app: type @Claude add a dark mode toggle to our React app and it will start working on that.
Know the limits before you rely on it. GitHub is the only supported code host at this stage. Each session produces one PR, so a large task needs to be broken into smaller asks. And the person mentioning @Claude must have cloud session access enabled, or nothing starts.
Self-hosted bot: the community alternative
If you want to run your own bot, the community project 'claude-code-slack-bot' (MIT, ~180 stars) gives you a copy-paste .env config and npm commands to connect your local Claude Code to Slack. It is a different model: instead of Anthropic's cloud, the bot runs your local Claude Code agent and shows the conversation in Slack.
The GitHub repository supplies the full config. You create a Slack app, grab three tokens, and drop them into a .env file:
SLACK_BOT_TOKEN=xoxb-your-bot-token
SLACK_APP_TOKEN=xapp-your-app-token
SLACK_SIGNING_SECRET=your-signing-secret
Then install and run:
npm install
npm run dev
You need Node.js 18 or newer. The bot supports threads, file uploads, MCP servers, and it can use AWS Bedrock or Vertex AI instead of the Anthropic API via CLAUDE_CODE_USE_BEDROCK and CLAUDE_CODE_USE_VERTEX environment flags.
Official app or self-hosted bot: which should you pick?
Pick the official app for a zero-maintenance, cloud-powered setup; pick the self-hosted bot if you want local control, custom MCP servers, or to avoid the Pro/Ultra plan cost.
| Dimension | Official app | Community bot |
|---|---|---|
| Where code runs | Anthropic cloud sessions | Your local machine |
| Git host | GitHub only | Whatever your local agent uses |
| Plan required | Pro, Max, or Ultra | None beyond your own API access |
| Setup effort | 5 steps in Slack + claude.ai | Node.js, Slack app config, npm install |
| Custom MCP servers | Not mentioned in docs | Supported |
Pros of the official app
- No server to run, no Node.js setup
- Cloud sessions scale without your laptop being on
- Tight integration with claude.ai/code session history
Cons of the official app
- Costs a Pro, Max, or Ultra plan
- GitHub only, one PR per session
For the community bot, the pros flip: it is free beyond your own API costs, it works with Bedrock or Vertex, and it keeps everything local. The cons are the ones the official app solves: you run it yourself, manage the Slack app config, and keep your machine online for it to work.
Common mistakes and how to avoid them
The most common failures are missing cloud session access, not connecting GitHub at claude.ai/code, and using a Slack workspace already linked to Claude Tag. Each one has a simple fix, and checking them before you start saves the most time.
Do this
- Connect GitHub and authenticate a repo in the same settings page
- Keep your local bot's Node.js at version 18 or newer
Avoid this
- Expecting it to work in DMs — it does not
- Using SLACK_BOT_TOKEN or SLACK_APP_TOKEN values from the wrong app
- Linking a workspace already connected to Claude Tag
- Running the community bot without Node.js 18+
The DM limitation surprises people most. The docs are clear that the integration works in channels only, so a private channel with just you and @Claude is the closest you get to a one-on-one session.
For the community bot, the token mistakes come from creating multiple Slack apps. Make sure the bot token and app token come from the same app you configured, or the connection fails silently.
Pick one small task, such as a typo fix or a failing test, and run it through the official app today; then try the community bot on a second repo to see which fits your workflow. If you are weighing Claude against other options, this note on Claude Code secrets is worth reading first, and the Fable 5.2 pricing breakdown helps with plan choices. New to AI editors entirely? This Cursor pricing post covers the other popular option.