SlackCLI gives an AI agent that can run shell commands a way to search, read and act on Slack without first building a custom Slack app integration. It is an unofficial third-party project—not Slack’s official CLI, which is for building Slack apps—and its documentation describes both browser-session and Slack app-token authentication. The choice affects feature access, credential handling and how much endpoint-change risk you accept.
What SlackCLI does—and what it does not
SlackCLI exposes Slack operations as terminal commands. Its project documentation says data-returning commands support JSON output, making results suitable for scripts or an agent workflow. That can be a lightweight alternative to implementing a custom SDK integration or MCP server when the agent already has controlled shell access.
As an Amazon Associate I earn from qualifying purchases.
The project’s README calls it an “Unofficial project. SlackCLI is not affiliated with, endorsed by, or supported by Slack Technologies.” SlackCLI is therefore distinct from Slack’s own CLI, which serves the separate purpose of building Slack apps. The documented features and behavior described here are project claims, not independent testing or a security audit. [SlackCLI repository]
Recommended Free Tools
A CLI does not bypass workspace permissions or organizational policy. Whether a particular login route or operation is allowed depends on the workspace and its administrators.
#1 Best Overall
Install and authenticate
The project documents Homebrew installation on macOS and Linux, platform binaries, and source installation with Bun. Follow the current installation instructions for the release and platform you use; then inspect slackcli --help and the relevant command-group help, since flags can vary by installed version.
Choose an authentication route
| Route | How the project describes it | Trade-off to consider |
|---|---|---|
| Browser session | Opens Slack in a browser and stores session credentials locally. | Can access certain features unavailable through app-token authentication, including documented draft operations. Session credentials expire with the session; the project describes headless renewal after an initial browser sign-in, but that should not be treated as a permanent guarantee. |
| Slack app token | Documented for bot, CI and service-account scenarios. | The project describes app tokens as more stable and able to survive browser logout, but notes that some browser-session features, such as draft operations, are not available through this route. |
Choose based on the operations your agent needs, your workspace’s rules and how credentials will be managed. Check the project’s current authentication guide before setting up automation; session behavior and supported details can change.
Use commands to give an agent Slack context
These examples are documented by SlackCLI. Confirm the syntax against help for your installed version before relying on it in an automated workflow.
slackcli conversations unread --json— retrieve unread conversations as JSON.slackcli conversations read --permalink="$LINK" --json— read a conversation or thread identified by a Slack permalink.slackcli search messages "deploy failed" --in=engineering --json— search messages in a channel.slackcli canvas read F1234567890 --json— read a Canvas as Markdown.
Documented task coverage also includes searching channels and people, reading threads and unread state, sending or replying to messages, reacting, and some file and saved-item operations. The project says data-returning commands support --json; write commands can also return structured results. Coverage and exact flags are project-documented capabilities, not a guarantee that every operation is available in every workspace.
Separate reading from writing
Give the agent a narrow operating rule: it may use read and search commands to gather context, but it must get explicit human approval before sending, editing or reacting. For example:
You may search and read Slack to answer my question. Before sending, editing, or reacting to any message, show me the exact action and wait for my approval.
This is an operating practice, not a permission boundary enforced by SlackCLI. Use an automation identity distinct from a person’s account for server use where appropriate, and ensure the identity’s access matches the intended work.
Rank #3
For example, an agent can locate an incident thread with search, read it for the relevant context, draft a proposed reply, and present that reply for approval. The send command should run only after approval:
The Tool Desk
Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →slackcli messages send --permalink="$LINK" --message="Approved reply text"
Because this command writes to Slack, a JSON result or successful process exit is not a substitute for reviewing the intended channel, thread and message before execution.
Protect the credentials SlackCLI stores
The repository identifies ~/.config/slackcli/ as its configuration location, including a workspace credential file and browser profile containing live credentials. It documents the configuration directory as mode 0700 and the workspace file as mode 0600. Those permissions reduce access for other local users, but they do not make the files safe to expose.
Rank #4
- Do not commit the configuration directory or its contents to source control.
- Do not sync or share the workspace credential file or browser profile as ordinary project files.
- Keep automation credentials in the secret-management approach approved for your environment, and limit who or what can access them.
- If credentials may have been exposed, revoke or rotate them using the applicable Slack or session controls, then reauthenticate.
Browser-session tokens are tied to a session and can expire. The project describes unattended renewal, but because this is an unofficial tool and session behavior can change, do not build a critical workflow on the assumption that renewal will always continue working.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Account for endpoint changes and API limits
Draft operations can be less stable
The repository says browser-session draft commands use undocumented web-client endpoints because Slack has no public API for drafts. It warns that those endpoints may change without notice. If draft support is essential, treat it as a maintenance-sensitive feature and have a fallback plan; do not assume it has the stability of a documented public API.
Large lookups can increase API calls
The project warns that commands resolving many users or channels may make one API call per entity, increasing rate-limit pressure in large workspaces. JSON output makes results easier to process, but it does not remove Slack API limits. Keep queries targeted and handle rate-limit failures in any automation.
Decide whether a CLI is the right integration
SlackCLI is a plausible fit when a shell-capable agent needs documented Slack context or straightforward actions, and the team can manage local credentials and review writes. Compare the practical requirements before choosing it over a custom Slack app or another integration route:
- Setup: Can you install and operate a CLI, or do you need a managed integration?
- Authentication: Does browser-session access or an app-token workflow fit the workspace’s identity and credential policies?
- Coverage: Are the required reads and writes documented and available through the chosen authentication route?
- Agent interface: Is shell execution with structured JSON a suitable interface for your agent?
- Maintenance: Can you tolerate breakage in operations built on undocumented endpoints?
- Governance: Can you enforce human review for writes and protect the stored credentials?
The project article reports “over 400 tests,” and the repository describes “400+ tests.” These are project claims, not independent evidence of security, reliability or compatibility with a particular workspace.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.
Do these 3 things before closing this tab:
1Fix the driver behind crashes, sound loss and screen glitches2Clear out junk files and repair common Windows errors3Scan for outdated or missing drivers - takes under a minute




