home / skills / openclaw / skills / slack
This skill helps you control Slack via the slack tool in Clawdbot, enabling reactions, messages, pins, and member info.
npx playbooks add skill openclaw/skills --skill slackReview the files below or copy the command above to add this skill to your agents.
---
name: slack
description: Use when you need to control Slack from Clawdbot via the slack tool, including reacting to messages or pinning/unpinning items in Slack channels or DMs.
---
# Slack Actions
## Overview
Use `slack` to react, manage pins, send/edit/delete messages, and fetch member info. The tool uses the bot token configured for Clawdbot.
## Inputs to collect
- `channelId` and `messageId` (Slack message timestamp, e.g. `1712023032.1234`).
- For reactions, an `emoji` (Unicode or `:name:`).
- For message sends, a `to` target (`channel:<id>` or `user:<id>`) and `content`.
Message context lines include `slack message id` and `channel` fields you can reuse directly.
## Actions
### Action groups
| Action group | Default | Notes |
| --- | --- | --- |
| reactions | enabled | React + list reactions |
| messages | enabled | Read/send/edit/delete |
| pins | enabled | Pin/unpin/list |
| memberInfo | enabled | Member info |
| emojiList | enabled | Custom emoji list |
### React to a message
```json
{
"action": "react",
"channelId": "C123",
"messageId": "1712023032.1234",
"emoji": "✅"
}
```
### List reactions
```json
{
"action": "reactions",
"channelId": "C123",
"messageId": "1712023032.1234"
}
```
### Send a message
```json
{
"action": "sendMessage",
"to": "channel:C123",
"content": "Hello from Clawdbot"
}
```
### Edit a message
```json
{
"action": "editMessage",
"channelId": "C123",
"messageId": "1712023032.1234",
"content": "Updated text"
}
```
### Delete a message
```json
{
"action": "deleteMessage",
"channelId": "C123",
"messageId": "1712023032.1234"
}
```
### Read recent messages
```json
{
"action": "readMessages",
"channelId": "C123",
"limit": 20
}
```
### Pin a message
```json
{
"action": "pinMessage",
"channelId": "C123",
"messageId": "1712023032.1234"
}
```
### Unpin a message
```json
{
"action": "unpinMessage",
"channelId": "C123",
"messageId": "1712023032.1234"
}
```
### List pinned items
```json
{
"action": "listPins",
"channelId": "C123"
}
```
### Member info
```json
{
"action": "memberInfo",
"userId": "U123"
}
```
### Emoji list
```json
{
"action": "emojiList"
}
```
## Ideas to try
- React with ✅ to mark completed tasks.
- Pin key decisions or weekly status updates.
This skill provides programmatic control of Slack via Clawdbot's slack tool. It lets you react to messages, manage pins, send/edit/delete messages, and retrieve member or emoji lists using the bot token configured for Clawdbot. Use it to automate common Slack workflows and surface message context for other automations.
The skill accepts structured action requests that specify an action (for example: react, sendMessage, pinMessage) and the required identifiers such as channelId, messageId (Slack timestamp), or userId. For sending messages you provide a target like channel:<id> or user:<id> and a content string. The tool calls Slack APIs via the bot token and returns results such as reaction lists, message read results, pinned items, member details, or emoji lists.
What identifiers do I need to act on a message?
You need channelId and messageId (Slack message timestamp like 1712023032.1234).
Can I use both Unicode and :name: emoji formats?
Yes. The skill accepts Unicode emoji or colon-wrapped names (for custom emoji use the :name: format).