Slack (Socket Mode)
Use when you need to control Slack from OpenClaw via the message tool, including reacting to messages or pinning/unpinning items in Slack channels or DMs.
MIT-0 · Free to use, modify, and redistribute. No attribution required.
⭐ 0 · 52 · 0 current installs · 0 all-time installs
byYamini Chua@ailven
MIT-0
Security Scan
OpenClaw
Benign
high confidencePurpose & Capability
Name/description, declared config path (channels.slack), and the SKILL.md actions (send, react, read, pin, member-info, etc.) are consistent with a Slack bot operating in Socket Mode. There are no unrelated binaries or environment variables requested.
Instruction Scope
SKILL.md stays within Slack operations (read/send/edit/delete messages, reactions, pins, list custom emoji, member-info). It explicitly returns potentially sensitive profile fields (email, timezone, profile status). The instructions do not direct data to external endpoints, but they do encourage periodic reads which could increase exposure of channel contents if used autonomously.
Install Mechanism
This is an instruction-only skill with no install spec and no code files beyond a benign package.json. Nothing will be downloaded or written during install by the skill itself.
Credentials
No environment variables are declared; the skill relies on the configured Slack bot token under channels.slack (declared required config path). That is proportionate, but the bot token must have scopes that permit reading messages and user profile/email data — these are sensitive capabilities that you should verify are necessary and limited to the correct workspace.
Persistence & Privilege
The skill does not request always:true and is user-invocable with normal autonomous invocation allowed. It does not attempt to modify other skills or system-wide settings.
Assessment
This skill appears to do what it says: control Slack via the bot token configured at channels.slack. Before installing, verify: (1) which bot token/config entry channels.slack points to and that it is scoped only as broadly as needed (chat:write, reactions:write, pins, channels:history or equivalent, users:read/users:read.email if member emails are exposed); (2) you are comfortable that the agent may read channel messages and user profile info (emails are sensitive); (3) you are okay with the agent performing periodic reads or autonomous actions if you enable automated runs. Because this is instruction-only (no install), installation risk is low, but token scope and privacy are the primary risks — restrict the bot to the minimum scopes and workspace channels required.Like a lobster shell, security has layers — review code before you run it.
Current versionv1.0.1
Download ziplatest
License
MIT-0
Free to use, modify, and redistribute. No attribution required.
Runtime requirements
💬 Clawdis
Configchannels.slack
SKILL.md
Slack Actions
Overview
Use the message tool with these actions to control Slack: send, react, reactions, read, edit, delete, download-file, pin, unpin, list-pins, member-info, emoji-list. The tool uses the bot token configured for OpenClaw.
Inputs to collect
channelId(e.g.C123) andmessageId(Slack message timestamp, e.g.1712023032.1234).- For reactions, an
emoji(Unicode or:name:). - For message sends, a
totarget (channel:<id>likeC123or user mention<@U123>).
Message context lines include slack message id and channel fields you can reuse directly.
Actions
Action groups | Default | Notes
| 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 |
Common Patterns
Send a message to a channel
/message
action: send
channel: slack
to: C123
message: Hello @everyone!
Send a message to a specific user
/message
action: send
channel: slack
to: <@U123>
message: Hi there!
React to a message
/message
action: react
channelId: C123
messageId: 1712023032.1234
emoji: ✅
List reactions on a message
/message
action: reactions
channelId: C123
messageId: 1712023032.1234
Edit a message
/message
action: edit
channelId: C123
messageId: 1712023032.1234
message: Updated text
Delete a message
/message
action: delete
channelId: C123
messageId: 1712023032.1234
Read recent messages from a channel
/message
action: read
channelId: C123
limit: 20
Pin a message
/message
action: pin
channelId: C123
messageId: 1712023032.1234
Unpin a message
/message
action: unpin
channelId: C123
messageId: 1712023032.1234
List pinned messages in a channel
/message
action: list-pins
channelId: C123
Get member info by user ID
/message
action: member-info
userId: U123
Returns: real_name, display_name, email, avatar URLs, timezone, profile status, etc.
List custom emojis
/message
action: emoji-list
Tips & Gotchas
- Mention format: Use
<@U...>instead of@Nameto ensure Slack parses the mention correctly. - Member lookup: If you don't know a user's ID, check recent message context or project board assignee fields. You can also use
member-infoonce you have any guessable ID. - DM policy: Direct messages require
im:writescope and may need explicit pairing if your channel config is restrictive. - Socket Mode vs Bot API: OpenClaw uses Socket Mode for real-time events; all write operations go through bot token scopes.
Ideas to try
- React with ✅ to mark completed tasks.
- Pin key decisions or weekly status updates.
- Introduce yourself using
<@UserID>to trigger notifications. - Monitor channel activity with periodic
readcalls.
Files
2 totalSelect a file
Select a file to preview.
Comments
Loading comments…
