Skip to content

Slack CLI

136 stars
official open-source Has MCP macOS Cross-platform Windows Actively maintained

Slack's official CLI for creating, developing, and deploying Slack apps from the command line. Supports Bolt and Deno frameworks.

Slack CLI has both a CLI and an MCP server. See when to use each

When to use

Slack CLI is the essential tool for anyone building custom Slack apps. If you are developing workflow automations, bots, or internal tools that live inside Slack, this CLI replaces the fragmented web-based setup process with a single command-line workflow that covers the full lifecycle: scaffolding, local development, testing, and production deployment.The local development experience is the standout feature. Running slack run starts your app locally with hot reload and connects it to your Slack workspace through socket mode. You can test message handlers, slash commands, and interactive modals without deploying anything. Changes appear instantly. This tight feedback loop makes iterating on Slack apps feel like building a local web app rather than wrestling with webhook tunnels and manual re-deploys.For teams building on Slack's next-generation platform (Deno runtime), the CLI is the only supported development path. It handles function definitions, workflow composition, trigger management, and datastore operations. Bolt framework users (Node.js, Python, Java) also get first-class support with project scaffolding and manifest management.The deployment story is equally strong. A single slack deploy pushes your app to Slack's managed infrastructure — no servers to provision, no containers to configure, no CI/CD pipelines to build for simple apps. For teams that need more control, the CLI manages the app manifest and credential lifecycle while you handle hosting yourself.If your organization already uses Slack and you want to automate workflows, build custom integrations, or create internal tools, install this CLI. The time from zero to a working Slack app is under five minutes.

When to skip

Skip the Slack CLI if you are not building Slack apps. This is a development tool for creating and deploying applications on the Slack Platform. If you just want to interact with Slack as a user — reading messages, posting updates, managing channels — you need a Slack client, not this CLI. For agent-friendly message reading and sending, look at community tools like slkcli or slack-agent-cli instead.If you are building simple Slack integrations that only need incoming webhooks or basic bot responses, the Slack API with a standard HTTP client might be simpler than setting up the full CLI toolchain. The CLI shines for complex apps with multiple workflows, triggers, and interactive components. For a single webhook that posts deployment notifications, curl is enough.If your organization uses Microsoft Teams instead of Slack, this tool is irrelevant. There is no cross-platform compatibility. Similarly, if you use Discord for team communication, look at Discord's developer tools instead.For teams locked into specific hosting requirements — you must deploy to your own Kubernetes cluster, or compliance requires all code to run in your VPC — the managed deployment feature (slack deploy) will not work for you. You can still use the CLI for local development and manifest management, but you lose the one-command deployment advantage.If you are looking for a CLI to manage Slack workspace administration (user provisioning, channel management, analytics), this is not that tool. The Slack CLI is focused on app development, not workspace ops. Use the Slack Admin API directly for administrative automation.

Key Commands

slack create Create a new Slack app from a template (Bolt or Deno)
slack run Start the app in local development mode with hot reload
slack deploy Deploy the app to Slack's managed infrastructure
slack login Authenticate with your Slack workspace
slack trigger create Create a trigger to start a workflow (link, event, webhook, or schedule)
slack app list List all workspaces where the app is installed
slack activity Display app activity logs from the Slack Platform

GitHub Stats

repo slackapi/slack-cli
stars 136
language Go
license Apache-2.0
last commit Mar 13, 2026

Alternatives

tool description
Slack CLI current tool
slkcli Lightweight Slack CLI for macOS focused on agent-friendly message reading and sending. Not for app development.
slack-agent-cli Third-party Go CLI for Slack designed for non-human (agent) usage. Focused on workspace interaction, not app development.
shaharia-lab/slackcli Community Slack CLI with structured output formats (JSON, table, text) designed for AI tool integration and automation.

FAQ

Is Slack CLI free?
Yes. The Slack CLI is free and open-source under the Apache 2.0 license. You can create, develop, and deploy apps at no cost for the CLI itself. Slack's managed hosting (used with slack deploy) has its own usage limits tied to your Slack workspace plan.
What is the difference between Bolt and Deno Slack apps?
Bolt is Slack's framework for building apps in Node.js, Python, or Java — you host the app yourself. Deno apps run on Slack's next-generation managed platform with built-in hosting, datastores, and workflows. The Slack CLI supports both. Bolt apps use manifest.json while Deno apps define manifests in TypeScript.
Can I use Slack CLI with an existing Slack app?
Yes. Use slack app link to connect the CLI to an existing Slack app. This lets you manage the app manifest, deploy updates, and use local development mode with an app that was originally created through the Slack web UI.
Does Slack CLI work with Slack Enterprise Grid?
Yes. The CLI supports org-level app deployments on Enterprise Grid. You authenticate with slack login using your Enterprise Grid credentials and can deploy apps across your organization. Admin approval workflows still apply as configured by your org admins.

Last verified: Mar 14, 2026