SOLFIND
Web Lens
Portal home

Quickstart: Creating a Slack app | Slack Developer Docs

https://docs.slack.dev/quickstart/ • 53 KB fetched
Open original page


Quickstart: Creating a Slack app | Slack Developer Docs guide Skip to main content Guides Reference Samples Tools Changelog Dev Program MANAGE APPS * Welcome! * Quickstart * Resources * * Slack platform concepts * AI in Slack * APIs * App management * App manifests * Admin resources * Authentication * Block Kit * Enterprise * Enterprise Search for apps * GovSlack * Interactivity * Messaging * Slack Marketplace * Surfaces * Workflows * * Legacy * * 日本語版ページ * * Quickstart Copy as markdown On this page Quickstart: Creating a Slack app This quickstart guide covers how to create a Slack app using the Slack CLI and the Bolt frameworks, in either Python or JavaScript . By the end, you'll have a local environment configured with a running customized app to modify and make your own. Prerequisites ​ Before you begin building, grab the required tools by following the three steps below. If you don't have a Slack workspace already, we recommend also setting up a developer sandbox . MacOS/Linux Windows 1 Install the Slack CLI Download the command-line tool for developing Slack apps. curl -fsSL https://downloads.slack-edge.com/slack-cli/install.sh | bash 2 Connect to your workspace Log in and authenticate with your Slack workspace. slack login 3 Use our preconfigured template Create a project by selecting "Starter App", then either "Bolt for Python" or "Bolt for JavaScript". slack create first-slack-app Now you've got everything you need to start developing on the Slack platform! Creating a project ​ The slack create Slack CLI command created a new Bolt project on your system. This contains the code that handles logic for your app. Navigate into that project: $ cd first-slack-app and open the project in an editor of your choice. Running the app ​ The starter app is ready to run from the start. By using the slack run command, and selecting "Create a new app", you'll install the app to the team you choose. The details of the app shown are found in the manifest.json file. $ slack run ... INFO:slack_bolt.App:⚡️ Bolt app is running! ... With the app running, test it out with the following steps in the Slack workspace your app is running in: * Open a direct message with your app or invite the bot @first-slack-app (local) to a public channel. * Send "hello" to the current conversation and wait for a response. * Click the attached button labeled "Click Me" to post another reply. After confirming the app responds, celebrate! But now it's time to add on. Updating the app ​ You may have a running Slack app, but the defaults included leave opportunities abound. Let's personalize this app by editing this code to respond with a kind farewell. * Python * JavaScript Open the app.py file. Add the following import to the top of the file and a message listener after the "hello" handler: app.py import random @app . message ( "goodbye" ) def message_goodbye ( say ) : responses = [ "Adios" , "Au revoir" , "Farewell" ] parting = random . choice ( responses ) say ( f" { parting } !" ) Open the app.js file. Add the following message listener after the "hello" handler: app.js app . message ( 'goodbye' , async ( { say } ) => { const responses = [ 'Adios' , 'Au revoir' , 'Farewell' ] ; const parting = responses [ Math . floor ( Math . random ( ) * responses . length ) ] ; await say ( ` ${ parting } ! ` ) ; } ) ; Once the file is updated, save the changes. You should notice the app restarting in your terminal. Open Slack to perform these steps: * Return to the direct message or public channel with your bot. * Send "goodbye" to the conversation. * Receive a parting response from before and repeat "goodbye" to find another one. Your app can be stopped by pressing CTRL+C in the terminal to end these chats. Customizing app settings ​ The created app will have some placeholder values and a small set of scopes to start, but we recommend exploring the customizations possible on app settings. Open app settings for your app with the following command: $ slack app settings This will open the following page in a web browser: On these pages you're free to make changes such as updating your app icon, configuring app features, and perhaps even distributing your app! Next steps ​ You can now continue customizing your app with various features to make it right for whatever job's at hand. Here are some ideas about what to explore next: * Check out the Agent quickstart to get up and running with an agent. * Browse our curated catalog of samples for more apps to use as a starting point for development. * Try using the Slack MCP Plugin to aid in agent-assisted development. Previous Welcome! Next Developer support Copy as markdown * Prerequisites * Creating a project * Running the app * Updating the app * Next steps . * Tools * Slack CLI * Bolt frameworks * Slack SDKs * Block Kit Builder * Developer program * Code samples & tutorials * LLM? Read llms.txt * All tools Learn * Learning paths * Workshops * Slack certifications * Trailhead * Resource library * All learning resources Community * Slack community * Slack events Resources * Docs * Blog * Slack marketplace * Developer newsletter Manage Apps * Your apps * Status * Privacy * Terms * Cookie Preferences * Support * Changelog * Your Privacy Choices © 2026 Slack Technologies, LLC, a Salesforce company. All rights reserved. Various trademarks held by their respective owners. * * *

Links found on this page

  1. Skip to main content [direct]
  2. Guides [direct]
  3. Reference [direct]
  4. Samples [direct]
  5. Tools [direct]
  6. Changelog [direct]
  7. Dev Program [direct]
  8. MANAGE APPS [direct]
  9. Quickstart [direct]
  10. Resources [direct]
  11. Slack platform concepts [direct]
  12. AI in Slack [direct]
  13. APIs [direct]
  14. App management [direct]
  15. App manifests [direct]
  16. Admin resources [direct]
  17. Authentication [direct]
  18. Block Kit [direct]
  19. Enterprise [direct]
  20. Enterprise Search for apps [direct]
  21. GovSlack [direct]
  22. Interactivity [direct]
  23. Messaging [direct]
  24. Slack Marketplace [direct]
  25. Surfaces [direct]
  26. Workflows [direct]
  27. Legacy [direct]
  28. 日本語版ページ [direct]
  29. Slack CLI [direct]
  30. Python [direct]
  31. JavaScript [direct]
  32. developer sandbox [direct]
  33. slack create [direct]
  34. slack run [direct]
  35. scopes [direct]
  36. Agent quickstart [direct]
  37. Slack MCP Plugin [direct]
  38. Slack CLI [direct]
  39. Bolt frameworks [direct]
  40. Block Kit Builder [direct]
  41. Code samples & tutorials [direct]
  42. LLM? Read llms.txt [direct]
  43. Learning paths [direct]
  44. Workshops [direct]
  45. Slack certifications [direct]
  46. Trailhead [direct]
  47. Resource library [direct]
  48. All learning resources [direct]
  49. Slack community [direct]
  50. Slack events [direct]
  51. Blog [direct]
  52. Slack marketplace [direct]
  53. Developer newsletter [direct]
  54. Status [direct]
  55. Privacy [direct]
  56. Terms [direct]
  57. Your Privacy Choices [direct]