Skip to content
Agentmart
Submit a tool

slack

Send messages, manage channels, reactions, and files in Slack with declarative channel-level permissions

Skill by mrjf

IndexedMIT★ 8
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/mrjf-slack

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Send messages, manage channels, reactions, and files in Slack with declarative channel-level permissions

Use cases: productivity

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found
Runs as
Node.js package

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/slack

Tools it pre-approves 1

From allowed-tools in SKILL.md: the agent may use these without asking you each time.

  • Bash(./scripts/*)

What's inside

Skill name
slack
Description
Send messages, manage channels, reactions, and files in Slack with declarative channel-level permissions
License
MIT
Allowed tools
Bash(./scripts/*)
Instructions
48 lines in SKILL.md · view on GitHub

Before installing

  • Ships executable scripts
  • Pre-approves some shell commands

Files (50)

  • BAND.md
  • SKILL.md
  • settings.json · deploy/
  • band-config.schema.json · schemas/
  • channel.json · schemas/defs/
  • message-result.json · schemas/defs/
  • ok.json · schemas/defs/
  • reaction-result.json · schemas/defs/
  • ts.json · schemas/defs/
  • channel-info.json · schemas/input/
  • channel-list.json · schemas/input/
  • file-upload.json · schemas/input/
  • message-list.json · schemas/input/
  • message-search.json · schemas/input/
  • message-send.json · schemas/input/
  • reaction-add.json · schemas/input/
  • reaction-remove.json · schemas/input/
  • thread-reply.json · schemas/input/
  • channel-info.json · schemas/output/
  • channel-list.json · schemas/output/
  • file-upload.json · schemas/output/
  • message-list.json · schemas/output/
  • message-search.json · schemas/output/
  • message-send.json · schemas/output/
  • reaction-add.json · schemas/output/
  • reaction-remove.json · schemas/output/
  • thread-reply.json · schemas/output/
  • slack-perms.sh · scripts/_lib/
  • channel-info · scripts/
  • channel-list · scripts/
  • file-upload · scripts/
  • message-list · scripts/
  • message-search · scripts/
  • message-send · scripts/
  • reaction-add · scripts/
  • reaction-remove · scripts/
  • run.sh · scripts/resources/channel-info/
  • run.sh · scripts/resources/channel-list/
  • run.sh · scripts/resources/file-upload/
  • run.sh · scripts/resources/message-list/
  • run.sh · scripts/resources/message-search/
  • run.sh · scripts/resources/message-send/
  • run.sh · scripts/resources/reaction-add/
  • run.sh · scripts/resources/reaction-remove/
  • run.sh · scripts/resources/thread-reply/
  • thread-reply · scripts/
  • slack-helpers.ts · test/
  • slack-skill-messages.test.ts · test/
  • slack-skill-permissions.test.ts · test/
  • slack-skill-structure.test.ts · test/

SKILL.md (first lines)

# Slack

Send messages, manage channels, reactions, and files in Slack. All operations respect declarative channel-level and feature-level permissions defined in the `slack` section of `BAND.md`.

**IMPORTANT: You MUST use ONLY the scripts provided below for ALL Slack operations. Do NOT use `curl`, the Slack API directly, any Slack CLI, SDK, or any other tool. Every Slack interaction must go through `./scripts/<script-name>`. If a script doesn't exist for what you need, say so — do not work around it.**

Run scripts with `./scripts/<script-name>`, e.g. `./scripts/channel-list --limit=5`. Use `--help` on any script to see its parameters.

## Permissions

Scripts enforce restrictions from the `slack` config section in `BAND.md` before making any API call. This provides application-level authorization on top of Slack API scopes:

- **channels.allow** — If set, ONLY these channels work. Empty means none allowed.
- **channels.deny** — Always blocked. Deny takes precedence over allow.
- **dm** — Direct messages (default: disabled).
- **threads** — Thread replies (default: disabled).
- **reactions** — Adding/removing reactions (default: disabled).
- **files** — File uploads (default: disabled).
- **search** — Message search (default: disabled).

## Available scripts

### Messages
- **`message-send`** — Send a message to a channel. Input: `channel`, `text`, `thread_ts`
- **`message-list`** — List recent messages in a channel. Input: `channel`, `limit`
- **`message-search`** — Search messages. Requires `SLACK_USER_TOKEN`. Input: `query`, `channel`, `limit`

### Channels
- **`channel-list`** — List channels. Input: `types`, `limit`
- **`channel-info`** — Get channel details. Input: `channel`

### Threads
- **`thread-reply`** — Reply to a thread. Input: `channel`, `thread_ts`, `text`

### Reactions
- **`reaction-add`** — Add a reaction to a message. Input: `channel`, `timestamp`, `emoji`
- **`reaction-remove`** — Remove a reaction from a message. Input: `channel`, `timestamp`, `emoji`

### Files
- **`file-upload`** — Upload a file to a channel. Input: `channel`, `filename`, `content`, `title`

## Notes

- `message-search` requires a user token (`xoxp-`), not a bot token. Set `SLACK_USER_TOKEN` for search.
- Channel references accept `#channel-name` or Slack channel IDs (e.g., `C01234ABCDE`).
- Execution target is `local-lima` — scripts run in an isolated Lima VM.

From mrjf/bands, MIT.

Signals

Stars
8
Forks
0
Open issues
8
Last commit (this folder)
May 16, 2026 (5 months ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from mrjf

Cite this page

slack skill. Agent Mart. https://agentmart.dev/skills/mrjf-slack (last updated 2026-10-24)