Skip to content

Commit 4334db6

Browse files
authored
Remove mention of assistants and replace with AI apps (#1443)
* remove mention of assistants and replace with AI apps * accidental deletion * backticks to single quotes
1 parent 1f39bab commit 4334db6

File tree

5 files changed

+4275
-10890
lines changed

5 files changed

+4275
-10890
lines changed
Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: Agents & Assistants
2+
title: AI Apps
33
lang: en
44
---
55

@@ -9,11 +9,11 @@ If you don't have a paid workspace for development, you can join the [Developer
99

1010
:::
1111

12-
Agents and assistants comprise a new messaging experience for Slack. If you're unfamiliar with using agents and assistants within Slack, you'll want to read the [API documentation on the subject](https://api.slack.com/docs/apps/ai). Then come back here to implement them with Bolt!
12+
AI apps comprise a new messaging experience for Slack. If you're unfamiliar with using AI apps within Slack, you'll want to read the [API documentation on the subject](https://api.slack.com/docs/apps/ai). Then come back here to implement them with Bolt!
1313

14-
## Configuring your app to support assistants {#configuring-your-app}
14+
## Configuring your app to support AI apps features {#configuring-your-app}
1515

16-
1. Within [App Settings](https://api.slack.com/apps), enable the **Agents & Assistants** feature.
16+
1. Within [App Settings](https://api.slack.com/apps), enable the **Agents & AI Apps** feature.
1717

1818
2. Within the App Settings **OAuth & Permissions** page, add the following scopes:
1919
* [`assistant:write`](https://api.slack.com/scopes/assistant:write)
@@ -27,7 +27,7 @@ Agents and assistants comprise a new messaging experience for Slack. If you're u
2727

2828
## The `Assistant` class instance {#assistant-class}
2929

30-
The [`Assistant`](/reference#the-assistantconfig-configuration-object) class can be used to handle the incoming events expected from a user interacting with an assistant in Slack. A typical flow would look like:
30+
The [`Assistant`](/reference#the-assistantconfig-configuration-object) class can be used to handle the incoming events expected from a user interacting with an AI app in Slack. A typical flow would look like:
3131

3232
1. [The user starts a thread](#handling-a-new-thread). The `Assistant` class handles the incoming [`assistant_thread_started`](https://api.slack.com/events/assistant_thread_started) event.
3333
2. [The thread context may change at any point](#handling-thread-context-changes). The `Assistant` class can handle any incoming [`assistant_thread_context_changed`](https://api.slack.com/events/assistant_thread_context_changed) events. The class also provides a default `context` store to keep track of thread context changes as the user moves through Slack.
@@ -71,23 +71,23 @@ assistant.userMessage((req, ctx) -> {
7171
app.assistant(assistant);
7272
```
7373

74-
While the `assistant_thread_started` and `assistant_thread_context_changed` events do provide Slack-client thread context information, the `message.im` event does not. Any subsequent user message events won't contain thread context data. For that reason, Bolt not only provides a way to store thread context — the `threadContextService` property — but it also provides a `DefaultAssistantThreadContextService` instance that is utilized by default. This implementation relies on storing and retrieving [message metadata](https://api.slack.com/metadata/using) as the user interacts with the assistant.
74+
While the `assistant_thread_started` and `assistant_thread_context_changed` events do provide Slack-client thread context information, the `message.im` event does not. Any subsequent user message events won't contain thread context data. For that reason, Bolt not only provides a way to store thread context — the `threadContextService` property — but it also provides a `DefaultAssistantThreadContextService` instance that is utilized by default. This implementation relies on storing and retrieving [message metadata](https://api.slack.com/metadata/using) as the user interacts with the app.
7575

7676
If you do provide your own `threadContextService` property, it must feature `get` and `save` methods.
7777

7878
:::tip
79-
Be sure to give the [assistants reference docs](/reference#agents--assistants) a look!
79+
Be sure to give the [AI apps reference docs](/reference#agents--assistants) a look!
8080
:::
8181

8282
## Handling a new thread {#handling-a-new-thread}
8383

84-
When the user opens a new thread with your assistant, the [`assistant_thread_started`](https://api.slack.com/events/assistant_thread_started) event will be sent to your app.
84+
When the user opens a new thread with your AI app, the [`assistant_thread_started`](https://api.slack.com/events/assistant_thread_started) event will be sent to your app.
8585

8686
:::tip
87-
When a user opens an assistant thread while in a channel, the channel info is stored as the thread's `AssistantThreadContext` data. You can grab that info by using the `context.getThreadContext()` utility, as subsequent user message event payloads won't include the channel info.
87+
When a user opens a thread with your app while in a channel, the channel info is stored as the thread's `AssistantThreadContext` data. You can grab that info by using the `context.getThreadContext()` utility, as subsequent user message event payloads won't include the channel info.
8888
:::
8989

90-
### Block Kit interactions in the assistant thread {#block-kit-interactions}
90+
### Block Kit interactions in the AI app thread {#block-kit-interactions}
9191

9292
For advanced use cases, Block Kit buttons may be used instead of suggested prompts, as well as the sending of messages with structured [metadata](https://api.slack.com/metadata) to trigger subsequent interactions with the user.
9393

@@ -181,17 +181,17 @@ If you use the built-in `Assistant` middleware without any custom configuration,
181181

182182
As long as you use the built-in approach, you don't need to store the context data within a datastore. The downside of this default behavior is the overhead of additional calls to the Slack API. These calls include those to `conversations.history`, which are used to look up the stored message metadata that contains the thread context (via `context.getThreadContextService().findCurrentContext(channelId, threadTs)`).
183183

184-
If you prefer storing this data elsewhere, you can pass your own custom `AssistantThreadContextService` implementation to the `Assistant` constructor. We provide `DefaultAssistantThreadContextService`, which is a reference implementation that uses the assistant thread message metadata. You can use this for production apps, but if you want to use a different datastore for it, you can implement your own class that inherits `AssistantThreadContextService` interface.
184+
If you prefer storing this data elsewhere, you can pass your own custom `AssistantThreadContextService` implementation to the `Assistant` constructor. We provide `DefaultAssistantThreadContextService`, which is a reference implementation that uses the AI app thread message metadata. You can use this for production apps, but if you want to use a different datastore for it, you can implement your own class that inherits `AssistantThreadContextService` interface.
185185

186186
```java
187187
Assistant assistant = new Assistant(new YourOwnAssistantThreadContextService());
188188
```
189189

190190
## Handling the user response {#handling-user-response}
191191

192-
When the user messages your assistant, the [`message.im`](https://api.slack.com/events/message.im) event will be sent to your app.
192+
When the user messages your app, the [`message.im`](https://api.slack.com/events/message.im) event will be sent to your app.
193193

194-
Messages sent to the assistant do not contain a [subtype](https://api.slack.com/events/message#subtypes) and must be deduced based on their shape and any provided [message metadata](https://api.slack.com/metadata/using).
194+
Messages sent to the app do not contain a [subtype](https://api.slack.com/events/message#subtypes) and must be deduced based on their shape and any provided [message metadata](https://api.slack.com/metadata/using).
195195

196196
There are three utilities that are particularly useful in curating the user experience:
197197
* [`say`](https://tools.slack.dev/bolt-python/api-docs/slack_bolt/#slack_bolt.Say)

docs/docusaurus.config.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,10 @@ const config = {
4848
"@docusaurus/plugin-client-redirects",
4949
{
5050
redirects: [
51+
{
52+
to: '/guides/ai-apps',
53+
from: '/guides/assistants'
54+
}
5155
],
5256
createRedirects(existingPath) {
5357
if (existingPath.includes('/guides')) {

0 commit comments

Comments
 (0)