SlackCLI CLI
SlackCLI reads, searches and sends messages across several Slack workspaces from a terminal and from Claude Code.
- 277 ★ on the repository
- Last commit
- MIT
Broad access
Why this level
- Slack session tokens give access to every workspace on the account and are stored on the machine.
- The utility sends, edits and deletes messages in your name.
Install
- Works in
Manual install
brew tap shaharia-lab/tap && brew install slackcliThe recommended README route for macOS and Linux. Prebuilt binaries and a Bun build also exist.
Access and checks
How we reviewBroad accessThe tool can change data, run commands or handle secrets.
- Slack session tokens give access to every workspace on the account and are stored on the machine.
- The utility sends, edits and deletes messages in your name.
This is third-party code. Review the repository files before installing.
What it does
SlackCLI is an unofficial utility for working with existing Slack workspaces without creating an app. `slackcli conversations unread` and `slackcli search messages` show what was missed and search history, while `slackcli messages send` sends messages and replies, including by message link. The client handles reactions, edits and deletion, drafts, files, Canvas as Markdown and Block Kit. `--json` output suits scripts and agents. The Claude Code plugin adds a `/slackcli` skill that checks installation and login itself and asks for confirmation before sending, editing or reacting.
Who it is for. People in several Slack workspaces who want to triage unread items and reply from a terminal and hand that routine to an agent.
Good fit when
- The morning starts with unread items across three workspaces and a short digest is needed.
- A "deploy failed" message must be found in `engineering` and answered.
- A Canvas should be read as Markdown and passed to an agent as context.
- Search results are piped into a script through `--json` and `jq`.
Not a fit when
- A bot or official Slack app with managed permissions is needed: the utility acts as your own account.
- Company policy forbids browser session tokens outside the Slack client.
- Messages must be sent without human confirmation.
Example request
Show unread messages across all my Slack workspaces, highlight mentions of me and draft replies without sending them.Limitations
The project is unofficial and unaffiliated with Slack Technologies. Sign-in through `slackcli auth login-auto` opens a browser and stores session tokens for every workspace on the account, and drafts work only with browser session tokens. Building from source needs Bun 1.4.1. The plugin needs Claude Code with `/plugin` support. Slack rules and company policy may restrict this kind of login. The latest repository update is from November 2026, and Slack token formats may change.
How to disable. Run `slackcli auth logout`: the command removes all workspaces and the stored browser profile. Then remove the binary with `brew uninstall slackcli` and the plugin through `/plugin` in Claude Code.
FAQ
Do I need to create a Slack app?
No, `slackcli auth login-auto` opens a browser, you sign in as usual and the CLI captures session tokens. App tokens `xoxb-` and `xoxp-` are also supported.
How do I install the Claude Code skill?
In Claude Code run `/plugin marketplace add shaharia-lab/slackcli`, then `/plugin install slackcli@slackcli`. The skill is called `/slackcli`.
Can I pass a message link?
Yes, a message link works instead of a channel ID or timestamp, for example `slackcli messages send --permalink="$LINK" --message="On it"`. Channels and people can be named directly.
Which login methods exist?
Five: `auth login-auto` through a browser, `auth login` with an app token, `auth login-browser` with session tokens, `auth parse-curl` from a cURL command and `auth extract-tokens` with a manual extraction guide.
Can I read files and Canvas?
Yes. `slackcli canvas read F123` prints a Canvas as Markdown, and `slackcli files info F123` shows file details and lets you download it.
Discussion
No questions or reviews yet.
Related
CLI toolsA Slack CLI and skill: the agent reads channels and threads and searches messages and files, and drafts or sends only when you ask
Slack MCP and Skills Plugin: the official Slack plugin
Slack MCP and Skills Plugin
Slack skills and MCP in one plugin: Claude Code, Cursor and Codex get search, messaging, Block Kit and nine skills for building Slack apps
An MCP server for Slack: channel history, threads, DMs, search and unreads, with posting off by default
Slack export without admin rights and a local MCP server: the agent analyzes your messages, threads, files and users
Claude-to-IM
claude-to-im
A bridge between Claude Code or Codex and messengers: talk to the agent from Telegram, Discord, Feishu, QQ or WeChat
A Python CLI that turns Claude Code JSONL transcripts into readable HTML and Markdown with search, filters and a timeline.
Comparison with similar tools
Cards that share the main search query, and how they differ.
| Tool | Official | Authentication | Repository stars | Main difference |
|---|---|---|---|---|
| SlackCLI (this card) | no | 277 | ||
| Slack MCP Server | no | key is optional | 1,896 | Works as a Slack MCP server; SlackCLI offers a CLI and a skill with send confirmation |
| agent-slack | no | 576 | Also a Slack CLI for agents; SlackCLI adds drafts, Canvas and several workspaces behind one login |
README in short
The document covers installation through Homebrew and prebuilt binaries, several login methods and a task table with commands. Releases ship with `checksums.txt`. The Claude Code plugin sits in the `plugins/slackcli` folder of the repository.