This beta release contains feature enhancements to Bolt JS for developers participating in the Slack Platform Beta ๐
Create a new app from a Github sample template
$ slack create my-app -t slack-samples/bolt-js-starter-template -b future
Run your app for local development from the CLI. We take care of installation, tokens and starting the app in development mode.
$ slack run
Declare a manifest.js or manifest.ts file import handly utility functions and define any recomposable units contained such as Functions, Workflows and Triggers.
# my-app/manifest.js
const { Manifest } = require('@slack/bolt');
module.exports = Manifest({
runOnSlack: false,
name: '',
displayName: '',
description: '',
botScopes: ['chat:write'],
socketModeEnabled: true,
workflows: [TimeOffWorkflow],
features: {
appHome: {
messagesTabEnabled: true,
messagesTabReadOnlyEnabled: true,
},
},
settings: {
interactivity: {
is_enabled: true,
},
org_deploy_enabled: false,
},
});
SlackFunction.Write a recomposable unit of logic:
Example:
const myFunc = new SlackFunction('fn_callback_id', () => {});
Attach optional handlers for block_action and view events related to your function.
Example:
myFunc.action('action_id', () => {})
.view('view_callback_id', () => {});
slack.json file in their project root are now Slack CLI compatible by @srajiangget-manifest start and get-hooks by @srajiangmanifest.js authoring by @srajiang @neptunelhttps://github.com/slackapi/bolt-js/compare/@slack/bolt@3.12.1...@slack/bolt@4.0.0-nextGen.2
Fetched April 3, 2026