slack — Claude Code skill: what it does, how to install
This skill connects Slack workflows to OpenClaw through the message tool. Use it when an agent needs to read or send Slack messages.
npx skills add openclaw/openclaw --skill slack -a claude-codeWhat slack does
The skill defines Slack messaging through the message tool with channel: "slack". The agent can send to the current conversation or target another channel or user, keep a reply in a thread, and use message actions exposed for the current Slack account. It follows the tool schema instead of assuming that every Slack action is available.
The workflow uses stable Slack IDs, targets such as channel: and user:, and a Slack timestamp in threadId for another thread. Before editing, deleting, pinning, or reacting to an ambiguous message, the agent reads the conversation and resolves the exact ID. With multiple accounts, pass accountId. The setup requires channels.slack configuration and the message tool.
Install it when your agent needs controlled Slack actions in channels and threads. It adds little value to a project with no Slack workflow.
What it helps with
- send a message to a Slack channel by ID
- keep an answer in the current thread
- resolve a message before deleting or reacting
- select the right Slack account with
accountId
Example prompts for the agent
- Send this text to `channel:` and keep the reply in the current thread.
- Read the current thread and answer the latest message.
- Find the target message from the conversation, then add a reaction only after checking its ID.
How to install slack
1Skills CLI (Vercel)
npx skills add openclaw/openclaw --skill slack -a claude-code2Manually: put the files in place
~/.claude/skills/slack/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/slack/
1Skills CLI (Vercel)
npx skills add openclaw/openclaw --skill slack -a codex2Manually: put the files in place
.agents/skills/slack/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add openclaw/openclaw --skill slack -a cursor2Manually: put the files in place
.cursor/skills/slack/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install openclaw/openclaw slack2Manually: put the files in place
.github/skills/slack/SKILL.md1Skills CLI (Vercel)
npx skills add openclaw/openclaw --skill slack -a gemini-cli2Platform CLI
gemini skills install https://github.com/openclaw/openclaw --path extensions/slack/skills/slackManually: put the files in place
.devin/skills/slack/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add openclaw/openclaw --skill slack -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
From the same set45
The whole set →Similar
Questions about slack
How do I install slack in Claude Code?
Run npx skills add openclaw/openclaw --skill slack -a claude-code. The skill file is placed at ~/.claude/skills/slack/SKILL.md.
What does slack do?
It defines Slack messaging workflows through OpenClaw's message tool, including channel sends, threaded replies, and message actions exposed by the current account.
What does slack need to work?
It requires channels.slack configuration and the message tool. When several Slack accounts are configured, pass accountId explicitly.
Source text
SKILL.md · MIT
---
name: slack
description: "Slack messaging workflows through OpenClaw's message tool."
metadata: { "openclaw": { "emoji": "💬", "requires": { "config": ["channels.slack"] } } }
allowed-tools: ["message"]
---
# Slack
Use the `message` tool with `channel: "slack"`. The tool schema lists the actions enabled for the current Slack account; do not assume an action that is not present.
## Workflow
- Prefer stable Slack IDs from context. Sends outside the current conversation use `channel:<id>` or `user:<id>` targets.
- Keep replies in the current thread unless the user asks for a top-level post. For another thread, pass its Slack timestamp as `threadId`; use the same timestamp as `messageId` for message-specific actions.
- Before editing, deleting, pinning, or reacting to an ambiguous message, read the conversation and resolve its exact ID.
- When multiple Slack accounts are configured, pass `accountId` rather than guessing.
- Confirm destructive deletes when the target or intent is unclear.
Slack formatting, mentions, and available actions are described automatically by the current `message` tool hints. Follow those hints instead of maintaining a second action catalog here.
© openclaw · MIT · openclaw/openclaw