Releases: slackapi/bolt-js
@slack/[email protected]
📚 Changelog
What's Changed
👾 Enhancements
- feat: add support for work objects in #2652 - Thanks @vegeris!
- feat: extend ack timeout for function executed events in #2645 - Thanks @WilliamBergamin!
- feat: add hasBeenCalled on complete & fail utility in #2677 - Thanks @WilliamBergamin!
🐛 Bug fixes
- fix: anticipate optional chained parameters as undefined when parsing events details in #2700 - Thanks @hello-ashleyintech!
📚 Documentation
- docs: add AI to quickstart in #2676 - Thanks @haleychaas!
🤖 Dependencies
- chore(deps-dev): update serverless requirement from ^4.21.1 to ^4.22.0 in /examples/deploy-aws-lambda in #2704
- chore(deps-dev): bump @types/node from 24.8.1 to 24.9.1 in #2703
- chore(deps-dev): bump @types/node from 24.7.2 to 24.8.1 in #2692
- chore(deps-dev): update serverless requirement from ^4.20.2 to ^4.21.1 in /examples/deploy-aws-lambda in #2691
- chore(deps-dev): bump @types/node from 24.7.0 to 24.7.2 in #2679
- chore(deps): update @slack/types requirement from ^2.17.0 to ^2.18.0 in #2702
- chore(deps): update @slack/web-api requirement from ^7.11.0 to ^7.12.0 in #2701
- chore(deps): update @slack/bolt requirement from ^4.4.0 to ^4.5.0 in /examples/message-metadata in #2687
- chore(deps): update @slack/bolt requirement from ^4.4.0 to ^4.5.0 in /examples/socket-mode in #2686
- chore(deps): update @slack/bolt requirement from ^4.4.0 to ^4.5.0 in /examples/socket-mode-oauth in #2685
- chore(deps): update @slack/bolt requirement from ^4.4.0 to ^4.5.0 in /examples/oauth in #2684
- chore(deps): update @slack/bolt requirement from ^4.4.0 to ^4.5.0 in /examples/oauth-express-receiver in #2683
- chore(deps): update @slack/bolt requirement from ^4.4.0 to ^4.5.0 in /examples/getting-started-typescript in #2682
- chore(deps): update @slack/bolt requirement from ^4.4.0 to ^4.5.0 in /examples/deploy-heroku in #2681
- chore(deps): update @slack/bolt requirement from ^4.4.0 to ^4.5.0 in /examples/deploy-aws-lambda in #2680
🧰 Maintenance
- chore(release): version @slack/[email protected] in #2705 - Thanks @vegeris!
Milestone: https://github.com/slackapi/bolt-js/milestone/60?closed=1
Full Changelog: https://github.com/slackapi/bolt-js/compare/@slack/[email protected]...@slack/[email protected]
Package: https://www.npmjs.com/package/@slack/bolt/v/4.6.0
@slack/[email protected]
AI-Enabled Features: Loading States, Text Streaming, and Feedback Buttons
🍿 Preview
2025-10-06-loading-state-text-streaming-feedback.mov
📚 Changelog
⚡ Getting Started
Try the AI Agent Sample app to explore the AI-enabled features and existing Assistant helper:
# Create a new AI Agent app
$ slack create slack-ai-agent-app --template slack-samples/bolt-js-assistant-template
$ cd slack-ai-agent-app/
# Add your OPENAI_API_KEY
$ export OPENAI_API_KEY=sk-proj-ahM...
# Run the local dev server
$ slack runAfter the app starts, send a message to the "slack-ai-agent-app" bot for a unique response.
⌛ Loading States
Loading states allows you to not only set the status (e.g. "My app is typing...") but also sprinkle some personality by cycling through a collection of loading messages:
Web Client SDK:
app.event('message', async ({ client, context, event, logger }) => {
// ...
await client.assistant.threads.setStatus({
channel_id: channelId,
thread_ts: threadTs,
status: 'thinking...',
loading_messages: [
'Teaching the hamsters to type faster…',
'Untangling the internet cables…',
'Consulting the office goldfish…',
'Polishing up the response just for you…',
'Convincing the AI to stop overthinking…',
],
});
// Start a new message stream
});Assistant Class:
const assistant = new Assistant({
threadStarted: assistantThreadStarted,
threadContextChanged: assistantThreadContextChanged,
userMessage: async ({ client, context, logger, message, getThreadContext, say, setTitle, setStatus }) => {
await setStatus({
status: 'thinking...',
loading_messages: [
'Teaching the hamsters to type faster…',
'Untangling the internet cables…',
'Consulting the office goldfish…',
'Polishing up the response just for you…',
'Convincing the AI to stop overthinking…',
],
});
},
});🔮 Text Streaming Helper
The client.chatStream() helper utility can be used to streamline calling the 3 text streaming methods:
app.event('message', async ({ client, context, event, logger }) => {
// ...
// Start a new message stream
const streamer = client.chatStream({
channel: channelId,
recipient_team_id: teamId,
recipient_user_id: userId,
thread_ts: threadTs,
});
// Loop over OpenAI response stream
// https://platform.openai.com/docs/api-reference/responses/create
for await (const chunk of llmResponse) {
if (chunk.type === 'response.output_text.delta') {
await streamer.append({
markdown_text: chunk.delta,
});
}
}
// Stop the stream and attach feedback buttons
await streamer.stop({ blocks: [feedbackBlock] });
});🔠 Text Streaming Methods
Alternative to the Text Streaming Helper is to call the individual methods.
1) client.chat.startStream
First, start a chat text stream to stream a response to any message:
app.event('message', async ({ client, context, event, logger }) => {
// ...
const streamResponse = await client.chat.startStream({
channel: channelId,
recipient_team_id: teamId,
recipient_user_id: userId,
thread_ts: threadTs,
});
const streamTs = streamResponse.ts2) client.chat.appendStream
After starting a chat text stream, you can then append text to it in chunks (often from your favourite LLM SDK) to convey a streaming effect:
for await (const chunk of llmResponse) {
if (chunk.type === 'response.output_text.delta') {
await client.chat.appendSteam({
channel: channelId,
markdown_text: chunk.delta,
ts: streamTs,
});
}
}3) client.chat.stopStream
Lastly, you can stop the chat text stream to finalize your message:
await client.chat.stopStream({
blocks: [feedbackBlock],
channel: channelId,
ts: streamTs,
});👍🏻 Feedback Buttons
Add feedback buttons to the bottom of a message, after stopping a text stream, to gather user feedback:
const feedbackBlock = {
type: 'context_actions',
elements: [{
type: 'feedback_buttons',
action_id: 'feedback',
positive_button: {
text: { type: 'plain_text', text: 'Good Response' },
accessibility_label: 'Submit positive feedback on this response',
value: 'good-feedback',
},
negative_button: {
text: { type: 'plain_text', text: 'Bad Response' },
accessibility_label: 'Submit negative feedback on this response',
value: 'bad-feedback',
},
}],
};
// Using the Text Streaming Helper
await streamer.stop({ blocks: [feedbackBlock] });// Or, using the Text Streaming Method
await client.chat.stopStream({
blocks: [feedbackBlock],
channel: channelId,
ts: streamTs,
});- https://docs.slack.dev/reference/block-kit/blocks/context-actions-block/
- https://docs.slack.dev/reference/block-kit/block-elements/feedback-buttons-element/
- https://docs.slack.dev/reference/block-kit/block-elements/icon-button-element/
What's Changed
👾 Enhancements
- feat: add ai-enabled features text streaming methods, feedback blocks, and loading state in #2674 - Thanks @zimeg!
🐛 Bug fixes
- Fix: allows Assistant say function to properly pass metadata in #2569 - Thanks @jamessimone!
- refactor: check payload type before extracting assistant thread info in #2603 - Thanks @zimeg!
- fix: better ES module support for App class in #2632 - Thanks @malewis5!
- fix(typescript): accept empty list of suggested prompts for the assistant class in #2650 - Thanks @zimeg!
📚 Documentation
- docs(fix): redirect links for project package migration guides to the tools site in #2539 - Thanks @zimeg!
- Docs: moved over custom steps dynamic options page. in #2552 - Thanks @technically-tracy!
- docs: updated nav in #2564 - Thanks @technically-tracy!
- docs: rotate tokens on a separate schedule with the oauth package in #2558 - Thanks @zimeg!
- docs: guide quick start app creation using the slack cli in #2535 - Thanks @zimeg!
- Update event-listening.md in #2584 - Thanks @jfbn!
- docs: Update language around AI apps in #2606 - Thanks @haleychaas!
- docs: fix listener middleware function and use global middleware examples in #2610 - Thanks @zimeg!
- docs: update ai hugging face tutorial examples in #2613 - Thanks @zimeg!
- docs: guide building an app tutorial using the slack cli in #2597 - Thanks @zimeg!
- docs: use the app logger in examples in #2651 - Thanks @zimeg!
- docs: updates for combined quickstart in #2661 - Thanks @haleychaas!
🤖 Dependencies
- Update axios dependency to version ^1.12.0 in #2657 - Thanks @malewis5!
- chore(deps): update @slack/web-api requirement from ^7.9.1 to ^7.9.2 in #2541 - Thanks @dependabot[bot]!
- chore(deps): update @slack/bolt requirement from ^4.3.0 to ^4.4.0 in /examples/deploy-heroku in #2542 - Thanks @dependabot[bot]!
- chore(deps): update @slack/bolt requirement from ^4.3.0 to ^4.4.0 in /examples/getting-started-typescript in #2543 - Thanks @dependabot[bot]!
- chore(deps): update @slack/bolt requirement from ^4.3.0 to ^4.4.0 in /examples/oauth in #2544 - Thanks @dependabot[bot]!
- chore(deps): update @slack/bolt requirement from ^4.3.0 to ^4.4.0 in /examples/oauth-express-receiver in #2545 - Thanks @dependabot[bot]!
- chore(deps): update @slack/bolt requirement from ^4.3.0 to ^4.4.0 in /examples/socket-mode-oauth in #2546 - Thanks @dependabot[bot]!
- chore(deps): update @slack/bolt requirement from ^4.3.0 to ^4.4.0 in /examples/deploy-aws-lambda in #2547 - Thanks @dependabot[bot]!
- chore(deps): update @slack/bolt requirement from ^4.3.0 to ^4.4.0 in /examples/socket-mode in #2548 - Thanks @dependabot[bot]!
- chore(deps): update @slack/bolt requirement from ^4.3.0 to ^4.4.0 in /examples/message-metadata in #2549 - Thanks...
@slack/[email protected]
What's Changed
🚀 Features
- feat: support for synchronous custom step handling by @WilliamBergamin in #2408
🐛 Fixes
- fix: socket mode should warn when ack is invoked multiple times by @WilliamBergamin in #2519
🧰 Maintenance
- fix: bump sinon version by @WilliamBergamin in #2522
- test: confirm socket mode receiver acknowledges processed events by @zimeg in #2520
- chore: release @slack/[email protected] by @WilliamBergamin in #2538
🤖 Dependencies
- chore(deps): update @slack/bolt requirement from ^4.2.1 to ^4.3.0 in /examples/oauth-express-receiver by @dependabot in #2532
- chore(deps): update @slack/bolt requirement from ^4.2.1 to ^4.3.0 in /examples/socket-mode-oauth by @dependabot in #2527
- chore(deps-dev): bump @types/node from 22.15.3 to 22.15.17 by @dependabot in #2523
- chore(deps): update @slack/bolt requirement from ^4.2.1 to ^4.3.0 in /examples/oauth by @dependabot in #2531
- chore(deps): update @slack/bolt requirement from ^4.2.1 to ^4.3.0 in /examples/deploy-aws-lambda by @dependabot in #2524
- chore(deps): update @slack/bolt requirement from ^4.2.1 to ^4.3.0 in /examples/socket-mode by @dependabot in #2530
- chore(deps): update @slack/bolt requirement from ^4.2.1 to ^4.3.0 in /examples/message-metadata by @dependabot in #2529
- chore(deps): update @slack/bolt requirement from ^4.2.1 to ^4.3.0 in /examples/deploy-heroku by @dependabot in #2525
- chore(deps-dev): update serverless requirement from ^4.14.2 to ^4.14.3 in /examples/deploy-aws-lambda by @dependabot in #2526
- chore(deps): update @slack/bolt requirement from ^4.2.1 to ^4.3.0 in /examples/getting-started-typescript by @dependabot in #2528
- chore(deps-dev): bump @types/node from 22.15.17 to 22.15.19 by @dependabot in #2536
Full Changelog: https://github.com/slackapi/bolt-js/compare/@slack/[email protected]...@slack/[email protected]
Milstone: https://github.com/slackapi/bolt-js/milestone/58?closed=1
@slack/[email protected]
What's Changed
🐛 Fixes
- fix: configure dependbot to group react deps by @WilliamBergamin in #2440
- fix: refactor function handler for follow up auto ack behavior by @WilliamBergamin in #2424
- fix: always attach the function bot access token to the context if available by @zimeg in #2513
- fix: allow all web api client option types in app initialization by @zimeg in #2501
- fix: always attach the function inputs to the context if available by @zimeg in #2517
📚 Documentation
- Docs - matches site css to slack.dev and docs.slack.dev by @slackapi in #2434
- fixes broken apps navbar link by @slackapi in #2443
- API Docs: AI app with Hugging Face tutorial by @haleychaas in #2464
- API Docs: Fix directory paste error by @haleychaas in #2466
- API Docs: Update links to go to new site by @haleychaas in #2494
- API Docs: Update AI tutorial to include markdown block by @haleychaas in #2486
- API Docs: Replace OpenAI references with Hugging Face by @haleychaas in #2507
🧰 Maintenance
- ci: label updates to example app dependencies with an 'area:examples' label by @zimeg in #2485
- ci: increase updated versions to depend on the latest releases by @zimeg in #2468
🤖 Dependencies
- chore(deps-dev): bump stylelint from 16.14.1 to 16.15.0 in /docs by @dependabot in #2435
- chore(deps-dev): bump @types/node from 22.13.5 to 22.13.8 by @dependabot in #2436
- chore(deps-dev): bump @types/node from 22.13.8 to 22.13.9 by @dependabot in #2441
- chore(deps): bump the react group in /docs with 2 updates by @dependabot in #2442
- chore(deps-dev): bump typescript from 5.7.3 to 5.8.2 in /examples/custom-receiver by @dependabot in #2438
- chore(deps-dev): bump typescript from 5.7.3 to 5.8.2 in /examples/getting-started-typescript by @dependabot in #2439
- Docs: Update reference to "Concepts guides". by @technically-tracy in #2446
- chore(deps-dev): bump @types/node from 22.13.9 to 22.13.10 by @dependabot in #2450
- chore(deps): bump prismjs from 1.29.0 to 1.30.0 in /docs by @dependabot in #2452
- chore(deps): bump axios to 1.8.3 to address CVE-2025-27152 by @zimeg in #2453
- chore(deps): bump @babel/helpers from 7.26.0 to 7.26.10 in /docs by @dependabot in #2456
- chore(deps): bump @babel/runtime from 7.26.0 to 7.26.10 in /docs by @dependabot in #2457
- chore(deps): bump @babel/runtime-corejs3 from 7.26.9 to 7.26.10 in /docs by @dependabot in #2458
- chore(deps-dev): bump @types/node from 22.13.10 to 22.13.13 by @dependabot in #2463
- chore(deps-dev): bump @types/node from 22.13.13 to 22.13.14 by @dependabot in #2467
- chore(deps-dev): bump stylelint from 16.15.0 to 16.17.0 in /docs by @dependabot in #2469
- chore(deps): update @slack/socket-mode requirement from ^2.0.3 to ^2.0.4 by @dependabot in #2470
- chore(deps): bump css-minimizer-webpack-plugin from 7.0.0 to 7.0.2 in /docs by @dependabot in #2471
- chore(deps): update @slack/types requirement from ^2.13.0 to ^2.14.0 by @dependabot in #2472
- chore(deps): update @slack/web-api requirement from ^7.8.0 to ^7.9.1 by @dependabot in #2473
- chore(deps): update @slack/oauth requirement from ^3.0.2 to ^3.0.3 by @dependabot in #2474
- chore(deps): update @slack/bolt requirement from ^4.2.0 to ^4.2.1 in /examples/deploy-aws-lambda by @dependabot in #2475
- chore(deps-dev): update serverless requirement from ^4.4.18 to ^4.9.1 in /examples/deploy-aws-lambda by @dependabot in #2476
- chore(deps): update @slack/bolt requirement from ^4.2.0 to ^4.2.1 in /examples/deploy-heroku by @dependabot in #2477
- chore(deps): update @slack/bolt requirement from ^4.2.0 to ^4.2.1 in /examples/getting-started-typescript by @dependabot in #2478
- chore(deps): update @slack/bolt requirement from ^4.2.0 to ^4.2.1 in /examples/message-metadata by @dependabot in #2479
- chore(deps): update @slack/bolt requirement from ^4.2.0 to ^4.2.1 in /examples/oauth by @dependabot in #2480
- chore(deps): update @slack/bolt requirement from ^4.2.0 to ^4.2.1 in /examples/oauth-express-receiver by @dependabot in #2481
- chore(deps): update @slack/bolt requirement from ^4.2.0 to ^4.2.1 in /examples/socket-mode by @dependabot in #2482
- chore(deps): update @slack/bolt requirement from ^4.2.0 to ^4.2.1 in /examples/socket-mode-oauth by @dependabot in #2483
- chore(deps): bump the react group in /docs with 2 updates by @dependabot in #2488
- chore(deps): bump image-size from 1.2.0 to 1.2.1 in /docs by @dependabot in #2489
- chore(deps-dev): bump typescript from 5.8.2 to 5.8.3 in /examples/custom-receiver by @dependabot in #2490
- chore(deps-dev): bump typescript from 5.8.2 to 5.8.3 in /examples/getting-started-typescript by @dependabot in #2491
- chore(deps-dev): bump @types/node from 22.13.14 to 22.14.0 by @dependabot in #2493
- chore(deps-dev): update serverless requirement from ^4.9.1 to ^4.11.1 in /examples/deploy-aws-lambda by @dependabot in #2492
- chore(deps): bump estree-util-value-to-estree from 3.3.2 to 3.3.3 in /docs by @dependabot in #2495
- chore(deps-dev): bump @types/node from 22.14.0 to 22.14.1 by @dependabot in #2498
- chore(deps-dev): update serverless requirement from ^4.11.1 to ^4.12.0 in /examples/deploy-aws-lambda by @dependabot in #2499
- chore(deps-dev): update serverless requirement from ^4.12.0 to ^4.14.1 in /examples/deploy-aws-lambda by @dependabot in #2503
- chore(deps-dev): bump stylelint-config-standard from 37.0.0 to 38.0.0 in /docs by @dependabot in #2514
- chore(deps): bump http-proxy-middleware from 2.0.7 to 2.0.9 in /docs by @dependabot in #2504
- chore(deps-dev): bump @types/node from 22.14.1 to 22.15.3 by @dependabot in #2511
- chore(deps-dev): update serverless requirement from ^4.14.1 to ^4.14.2 in /examples/deploy-aws-lambda by @dependabot in #2516
- chore(deps): bump koa from 2.16.1 to 3.0.0 in /examples/custom-receiver by @dependabot in #2512
- chore: release @slack/[email protected] by @hello-ashleyintech in #2518
Thank you to all our lovely contributors ✨
Full Changelog: https://github.com/slackapi/bolt-js/compare/@slack/[email protected]...@slack/[email protected]
@slack/[email protected]
What's Changed
🐛 Fixes
- bug: make
@types/expressan optional peer dependency by @WilliamBergamin in #2421
📚 Documentation
- docs: Syncing config files with Deno Slack SDK and Slack CLI docs by @slackapi in #2373
- docs: nested sidebar format by @lukegalbraithrussell in #2374
- docs(example): update aws lambda deployment to latest dependencies by @zimeg in #2383
- docs(examples): fix the "deploy to heroku" button using latest dependencies by @zimeg in #2385
- docs: fixed typo in getting-started.mdx by @tomdevisser29 in #2406
- docs: update getting-started.mdx by @msoyka in #2402
- docs: update Heroku version in deployment guide. by @technically-tracy in #2419
- docs - typo for link going to original site by @lukegalbraithrussell in #2431
- docs: Migrate custom steps tutorials. by @technically-tracy in #2429
- docs: remove mention of assistants and replace with AI apps by @haleychaas in #2432
🧰 Maintenance
- ci: complete all sample tests even if one fails fast by @zimeg in #2386
- ci: add example app dependencies to weekly dependabot configurations by @zimeg in #2387
- ci: test samples and examples with a packaged bolt build by @zimeg in #2372
- fix: improve the maintainers_guide local development instruction by @WilliamBergamin in #2422
- chore: release @slack/[email protected] by @WilliamBergamin in #2433
🤖 Dependencies
- chore(deps-dev): bump @types/node from 22.13.4 to 22.13.5 by @dependabot in #2428
- chore(deps-dev): bump @types/node from 22.13.0 to 22.13.1 by @dependabot in #2420
- chore(deps-dev): bump @types/node from 22.13.1 to 22.13.4 by @dependabot in #2425
- chore(deps-dev): bump @types/node from 22.10.7 to 22.13.0 by @dependabot in #2416
- chore(deps): bump actions/stale from 9.0.0 to 9.1.0 by @dependabot in #2415
- chore(deps-dev): bump @types/node from 22.10.5 to 22.10.7 by @dependabot in #2403
- chore(deps-dev): bump @types/node from 22.10.2 to 22.10.5 by @dependabot in #2382
docs
- chore(deps-dev): bump stylelint-config-standard from 36.0.1 to 37.0.0 in /docs by @dependabot in #2412
- chore(deps): bump the docusaurus group in /docs with 5 updates by @dependabot in #2392
- chore(deps-dev): bump stylelint from 16.11.0 to 16.12.0 in /docs by @dependabot in #2379
- chore(deps): bump prism-react-renderer from 2.4.0 to 2.4.1 in /docs by @dependabot in #2378
examples
- chore(deps-dev): bump @types/node from 18.19.71 to 22.10.7 in /examples/custom-receiver by @dependabot in #2404
- chore(deps-dev): bump typescript from 5.3.3 to 5.7.3 in /examples/getting-started-typescript by @dependabot in #2393
- chore(deps): bump @slack/bolt from 3.22.0 to 4.2.0 in /examples/getting-started-typescript by @dependabot in #2394
- chore(deps-dev): bump @types/node from 18.19.70 to 22.10.5 in /examples/getting-started-typescript by @dependabot in #2395
- chore(deps): bump @slack/bolt from 3.22.0 to 4.2.0 in /examples/message-metadata by @dependabot in #2396
- chore(deps): bump @slack/bolt from 3.22.0 to 4.2.0 in /examples/socket-mode-oauth by @dependabot in #2400
- chore(deps): bump @slack/bolt from 3.22.0 to 4.2.0 in /examples/socket-mode by @dependabot in #2399
- chore(deps): bump @slack/bolt from 3.22.0 to 4.2.0 in /examples/oauth-express-receiver by @dependabot in #2398
- chore(deps): bump @slack/bolt from 3.22.0 to 4.2.0 in /examples/oauth by @dependabot in #2397
- chore(deps): bump @slack/bolt from 3.22.0 to 4.2.0 in /examples/custom-properties by @dependabot in #2388
- chore(deps-dev): bump typescript from 5.3.3 to 5.7.3 in /examples/custom-receiver by @dependabot in #2390
- chore(deps): bump @slack/bolt from 3.22.0 to 4.2.0 in /examples/custom-receiver by @dependabot in #2391
New Contributors
- @tomdevisser29 made their first contribution in #2406
- @msoyka made their first contribution in #2402
Full Changelog: https://github.com/slackapi/bolt-js/compare/@slack/[email protected]...@slack/[email protected]
@slack/[email protected]
What's Changed
Hello! 👋 This release updates dependencies to keep packages secure and makes the logger of your app public for use outside of event listeners when using TypeScript! 🔐 🌲
const app = new App({ ... });
(async () => {
await app.start(process.env.PORT || 3000);
app.logger.info('⚡️ Bolt app is running!'); // The app logger can now be used here!
})();🎁 Enhancements
🔐 Security
- chore(deps): bump slack and axios dependencies to latest secure versions in #2360 - thanks @hello-ashleyintech!
📚 Documentation
- docs: show descriptions of function listener arguments in #2364 - thanks @zimeg!
- docs: replace redirected or missing links to bolt documentation in #2367 - thanks @zimeg!
🧰 Maintenance
- build: install @types/express@^v5 as a dev dependency for express@^5 in #2355 - thanks @zimeg!
- ci: check for linting errors without writing required changes in #2357 - thanks @zimeg!
- build: find the biome config schema from the installed path in #2363 - thanks @zimeg!
- build: ignore autogenerated docusaurus files when running the formatter in #2362 - thanks @zimeg!
- build: update the redirected repo homepage url to postfix js in #2370 - thanks @zimeg!
🤖 Dependencies
- chore(deps): bump codecov/codecov-action from 4 to 5 in #2349 - thanks @dependabot!
- chore(deps): bump the docusaurus group in /docs with 5 updates in #2350 - thanks @dependabot!
- chore(deps): bump path-to-regexp from 1.8.0 to 1.9.0 in /docs in #2352 - thanks @dependabot!
- chore(deps-dev): bump stylelint from 16.10.0 to 16.11.0 in /docs in #2351 - thanks @dependabot!
- chore(deps): bump path-to-regexp and express in /docs in #2358 - thanks @dependabot!
- chore(deps-dev): @types/node from 22.9.3 to 22.10.1 in #2359 - thanks @dependabot!
- chore(deps): bump nanoid from 3.3.7 to 3.3.8 in /docs in #2368 - thanks @dependabot!
- chore(deps-dev): @types/node from 22.10.1 to 22.10.2 in #2369 - thanks @dependabot!
Full Changelog: https://github.com/slackapi/bolt-js/compare/@slack/[email protected]...@slack/[email protected]
@slack/[email protected]
What's Changed
- 🏭 A fix related to the TypeScript types for the Assistant handler utilities. Fixes #2319 in #2325, thanks @misscoded!
- 📚 Our bolt-js online documentation at https://tools.slack.dev/bolt-js/ received many updates. Thanks to @lukegalbraithrussell, @haleychaas and @kuredev!
Changelog
- Docs: agents and assistants by @lukegalbraithrussell in #2295
- fix: Assistant utility types by @misscoded in #2325
- Docs: Tutorial for assistant app by @haleychaas in #2331
- docs: Changed "App Token" to "App-Level Tokens" by @kuredev in #2336
- docs: add xapp section by @kuredev in #2339
New Contributors
- @haleychaas made their first contribution in #2331
- @kuredev made their first contribution in #2336
Full Changelog: https://github.com/slackapi/bolt-js/compare/@slack/[email protected]...@slack/[email protected]
@slack/[email protected]
What's Changed
This pre-release contains the proposed socket-mode library fix addressing runaway connection spawning spiral behaviour observed in slackapi/node-slack-sdk#2094 and fixed in slackapi/node-slack-sdk#2099.
Developers wishing to evaluate the fix for their app may try out this pre-release.
Full Changelog: https://github.com/slackapi/bolt-js/compare/@slack/[email protected]...@slack/[email protected]
@slack/[email protected]
What's Changed
- fix: Include metadata with Assistant
sayutil by @misscoded in #2300 - docs: concept focused nav by @lukegalbraithrussell in #2302
- feat: Add
titleto setSuggestedPrompts utility by @misscoded in #2308
Full Changelog: https://github.com/slackapi/bolt-js/compare/@slack/[email protected]...@slack/[email protected]
@slack/[email protected]
What's Changed
- Fix a bug where parsing assistant thread message event fails for beta feature enabled apps by @seratch in #2298
Full Changelog: https://github.com/slackapi/bolt-js/compare/@slack/[email protected]...@slack/[email protected]