The new Slack platform and the features described below are in beta and under active development.

Create or remove an app

Create an app

Verify workspace authentication

The first step in creating a new app is to ensure that your CLI is authenticated into the workspace you want to develop in. You can do this with slack auth list:

$ slack auth list 

ACTIVE  myworkspace (Team ID: T123456789)
User ID: U123456789
Last update: 2022-03-24 18:20:47 -07:00

To change your active workspace authorization run slack login

Ensure that the workspace you want to build an app for has the ACTIVE label next to it. In the above example, myworkspace is ready to be used.

Scaffold a new app

With our CLI authenticated into the workspace we want to develop in, the next step is to scaffold an app with slack create:

$ slack create my-app

The above command will scaffold a new app named my-app in a directory with the same name.

If you don't pass an app name, slack will scaffold an app with a random alphanumeric name.

$ slack create my-app

Creating new Slack app at /Users/me/dev/my-app

⚙️  Created project directory
   Detected a Deno project

📦 Installed project dependencies

✨ my-app successfully created

🧭 Explore your project's README.md for documentation and code samples, and at any time run `slack help` to display a list of available commands

🧑‍🚀 Follow the steps below to try out your new project

1️⃣  Change into your project directory with: cd my-app

2️⃣  Develop locally and see changes in real-time with: slack run

3️⃣  When you're ready to deploy for production use: slack deploy

Create an app from a template

If you pass --template (or -t) to the create command, you can pass a Github repo as a template for your app.

For example, if you wanted to use our demo "Reverse String" app as a template, you could create your app like this:

slack create -t slackapi/deno-reverse-string

The above will scaffold a new app using the repository available here.

Here's a fun tip: you can even use a specific branch of a template repo by using the --branch (or -b) flag and passing the name of a branch:

slack create -t slackapi/deno-reverse-string -b main

After creating an app, don't forget to cd into your app project's directory.

Remove an app

Uninstall an app from your workspace

All good things must come to an end. To uninstall an app using the CLI (remove an app from a workspace, change permissions, or delete the app in its entirety), use the slack uninstall command. Then, choose the workspace you want to uninstall the app from.

**Before using the command**
All of the data related to your app will also be deleted (your app's related workflows, functions, and datastores). This decision is final and can not be undone.
Choose a workspace  my-workspace T123456789
   my-app U123456789

❗ Danger zone! Uninstalling your app will also delete:
  - the app, workflows, and functions from this workspace
  - all app data and datastores from this workspace

❓ Are you sure you want to uninstall? Yes

🏠 Workspace uninstall
   Uninstalled the app "my-app" from workspace "workspace"

📚 App Manifest
   Deleted the app manifest for "my-app" from workspace "workspace"

🏘️ Installed Workspaces
   There are no workspaces with the app installed

Onward

Your wish is our command! For information about other actions you can perform from the CLI, refer to Using the Slack CLI and Commands.

Check out more about how to configure your app via the manifest. You can also start building functions to perform some logic, chain them together in workflows, then invoke those workflows by building triggers.

Have 2 minutes to provide some feedback?

We'd love to hear about your experience with the new Slack platform. Please complete our short survey so we can use your feedback to improve.