| name | configure |
| description | Configure Slack channel tokens (bot token + app-level token). Use when writing or rotating the Slack bot and app-level tokens for the slack-channel plugin. Trigger with "/slack-channel:configure", "configure slack tokens", or "set up my slack bot token". |
| version | 1.0.1 |
| author | Jeremy Longshore <jeremy@intentsolutions.io> |
| license | Apache-2.0 |
| compatibility | Requires Claude Code with the slack-channel plugin and a Slack app that already exists (tokens come from api.slack.com/apps); POSIX shell for chmod/mkdir. |
| tags | ["slack","tokens","configuration","security"] |
| user-invocable | true |
| argument-hint | <bot-token> <app-token> |
| allowed-tools | ["Write","Bash(chmod:*)","Bash(mkdir:*)"] |
/slack-channel:configure
Overview
Configure the Slack channel with your bot token and app-level token. This is
the single place tokens touch disk: the skill validates both token prefixes,
writes them to the state directory's .env, and locks the file to owner-only
permissions. It never echoes tokens back. The install walkthrough
(/slack-channel:install Step 3) delegates here.
Prerequisites
- A Slack app already created (via
/slack-channel:install Step 1 or
manually at api.slack.com/apps) with:
- the Bot User OAuth Token (
xoxb-...) from OAuth & Permissions, and
- the App-Level Token (
xapp-..., scope connections:write) from
Socket Mode settings.
- A writable home directory — state lives at
~/.claude/channels/slack/.
Usage
Pass both tokens as arguments, bot token first:
/slack-channel:configure <xoxb-bot-token> <xapp-app-token>
Instructions
-
Parse the two arguments from $ARGUMENTS:
- First token must start with
xoxb- (Bot User OAuth Token)
- Second token must start with
xapp- (App-Level Token)
-
If either token is missing or has the wrong prefix, show this error and stop:
Error: Two tokens required.
- Bot token (starts with xoxb-) from OAuth & Permissions
- App token (starts with xapp-) from Socket Mode settings
Usage: /slack-channel:configure xoxb-... xapp-...
-
Create the state directory if it doesn't exist:
~/.claude/channels/slack/
-
Write the .env file at ~/.claude/channels/slack/.env:
SLACK_BOT_TOKEN=<bot-token>
SLACK_APP_TOKEN=<app-token>
-
Set file permissions to owner-only:
chmod 600 ~/.claude/channels/slack/.env
-
Confirm success:
Slack channel configured.
Start Claude with the Slack channel:
claude --channels plugin:slack-channel@claude-code-plugins
Or for development:
claude --dangerously-load-development-channels server:slack
Next: opt in a channel and pick its interaction mode with
/slack-channel:access channel <id> (defaults to mention-to-engage;
pass --ambient for a dedicated bot channel). See ACCESS.md "Interaction modes".