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
CLI

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.
All reasons and checks

shaharia-lab/slackcli

Install

Works in

Manual install

brew tap shaharia-lab/tap && brew install slackcli

The recommended README route for macOS and Linux. Prebuilt binaries and a Bun build also exist.

Access and checks

How we review

Broad 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.

CLI tools

A Slack CLI and skill: the agent reads channels and threads and searches messages and files, and drafts or sends only when you ask

CLIBroad access576Repository stars

An MCP server for Slack: channel history, threads, DMs, search and unreads, with posting off by default

MCP serverBroad access1.9KRepository stars
Official

Slack export without admin rights and a local MCP server: the agent analyzes your messages, threads, files and users

MCP serverExtended access2.9KRepository stars

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

SkillBroad access2.9KRepository stars

A Python CLI that turns Claude Code JSONL transcripts into readable HTML and Markdown with search, filters and a timeline.

CLIMinimal access1.3KRepository stars

Comparison with similar tools

Cards that share the main search query, and how they differ.

ToolOfficialAuthenticationRepository starsMain difference
SlackCLI (this card)no277
Slack MCP Servernokey is optional1,896Works as a Slack MCP server; SlackCLI offers a CLI and a skill with send confirmation
agent-slackno576Also 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.

README badge

Report a problem