@assistant-ui/mcp-docs-server 0.1.34 → 0.1.36
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.docs/organized/code-examples/waterfall.md +4 -4
- package/.docs/organized/code-examples/with-a2a.md +5 -5
- package/.docs/organized/code-examples/with-ag-ui.md +6 -6
- package/.docs/organized/code-examples/with-ai-sdk-v6.md +7 -7
- package/.docs/organized/code-examples/with-artifacts.md +7 -7
- package/.docs/organized/code-examples/with-assistant-transport.md +73 -57
- package/.docs/organized/code-examples/with-browser-extension.md +7 -7
- package/.docs/organized/code-examples/with-chain-of-thought.md +44 -93
- package/.docs/organized/code-examples/with-cloud-standalone.md +7 -7
- package/.docs/organized/code-examples/with-cloud.md +7 -7
- package/.docs/organized/code-examples/with-custom-thread-list.md +7 -7
- package/.docs/organized/code-examples/with-elevenlabs-conversational.md +9 -9
- package/.docs/organized/code-examples/with-elevenlabs-scribe.md +9 -9
- package/.docs/organized/code-examples/with-eve.md +343 -0
- package/.docs/organized/code-examples/with-expo.md +943 -940
- package/.docs/organized/code-examples/with-external-store.md +5 -5
- package/.docs/organized/code-examples/with-ffmpeg.md +8 -11
- package/.docs/organized/code-examples/with-generative-ui.md +33 -309
- package/.docs/organized/code-examples/with-google-adk.md +5 -5
- package/.docs/organized/code-examples/with-heat-graph.md +4 -4
- package/.docs/organized/code-examples/with-image-generation.md +7 -7
- package/.docs/organized/code-examples/with-interactables.md +169 -341
- package/.docs/organized/code-examples/with-langchain.md +7 -7
- package/.docs/organized/code-examples/with-langgraph.md +23 -160
- package/.docs/organized/code-examples/with-livekit.md +10 -10
- package/.docs/organized/code-examples/with-mcp.md +7 -7
- package/.docs/organized/code-examples/with-opencode.md +106 -580
- package/.docs/organized/code-examples/with-pi.md +2046 -0
- package/.docs/organized/code-examples/with-react-hook-form.md +16 -9
- package/.docs/organized/code-examples/with-react-ink-web.md +691 -0
- package/.docs/organized/code-examples/with-react-ink.md +29 -17
- package/.docs/organized/code-examples/with-react-router.md +12 -12
- package/.docs/organized/code-examples/with-resumable-stream.md +8 -8
- package/.docs/organized/code-examples/with-store.md +14 -10
- package/.docs/organized/code-examples/with-tanstack.md +21 -7
- package/.docs/organized/code-examples/with-tap-runtime.md +5 -5
- package/.docs/organized/code-examples/with-virtualized-thread.md +676 -0
- package/.docs/raw/docs/(docs)/architecture.mdx +13 -12
- package/.docs/raw/docs/(docs)/cli.mdx +4 -2
- package/.docs/raw/docs/(docs)/devtools.mdx +25 -2
- package/.docs/raw/docs/(docs)/index.mdx +5 -2
- package/.docs/raw/docs/(docs)/installation.mdx +5 -2
- package/.docs/raw/docs/(reference)/api-reference/external-store/message-conversion.mdx +16 -16
- package/.docs/raw/docs/(reference)/api-reference/hooks/composer-triggers.mdx +73 -42
- package/.docs/raw/docs/(reference)/api-reference/hooks/model-context.mdx +3 -20
- package/.docs/raw/docs/(reference)/api-reference/hooks/primitives.mdx +234 -123
- package/.docs/raw/docs/(reference)/api-reference/integrations/eve.mdx +51 -0
- package/.docs/raw/docs/(reference)/api-reference/integrations/index.mdx +4 -1
- package/.docs/raw/docs/(reference)/api-reference/integrations/react-ai-sdk.mdx +70 -38
- package/.docs/raw/docs/(reference)/api-reference/model-context/context.mdx +1 -1
- package/.docs/raw/docs/(reference)/api-reference/primitives/action-bar.mdx +30 -0
- package/.docs/raw/docs/(reference)/api-reference/primitives/attachment.mdx +7 -0
- package/.docs/raw/docs/(reference)/api-reference/primitives/branch-picker.mdx +26 -0
- package/.docs/raw/docs/(reference)/api-reference/primitives/chain-of-thought.mdx +15 -0
- package/.docs/raw/docs/(reference)/api-reference/primitives/composer.mdx +103 -0
- package/.docs/raw/docs/(reference)/api-reference/primitives/message-part.mdx +16 -0
- package/.docs/raw/docs/(reference)/api-reference/primitives/message.mdx +56 -0
- package/.docs/raw/docs/(reference)/api-reference/primitives/queue-item.mdx +12 -0
- package/.docs/raw/docs/(reference)/api-reference/primitives/selection-toolbar.mdx +12 -0
- package/.docs/raw/docs/(reference)/api-reference/primitives/suggestion.mdx +14 -0
- package/.docs/raw/docs/(reference)/api-reference/primitives/thread.mdx +57 -1
- package/.docs/raw/docs/(reference)/api-reference/tools/index.mdx +6 -0
- package/.docs/raw/docs/(reference)/api-reference/tools/interactables-legacy.mdx +55 -0
- package/.docs/raw/docs/(reference)/api-reference/tools/interactables.mdx +151 -0
- package/.docs/raw/docs/(reference)/api-reference/tools/rendering.mdx +17 -38
- package/.docs/raw/docs/(reference)/api-reference/tools/status.mdx +22 -0
- package/.docs/raw/docs/(reference)/api-reference/tools/toolkits.mdx +20 -27
- package/.docs/raw/docs/(reference)/api-reference/utilities/miscellaneous.mdx +40 -25
- package/.docs/raw/docs/guides/chain-of-thought.mdx +1 -1
- package/.docs/raw/docs/guides/headless-composer-input.mdx +113 -0
- package/.docs/raw/docs/guides/index.mdx +3 -0
- package/.docs/raw/docs/guides/input-history.mdx +55 -0
- package/.docs/raw/docs/guides/latex.mdx +28 -22
- package/.docs/raw/docs/guides/mentions.mdx +32 -7
- package/.docs/raw/docs/guides/slash-commands.mdx +3 -6
- package/.docs/raw/docs/guides/speech.mdx +5 -7
- package/.docs/raw/docs/guides/virtualization.mdx +133 -0
- package/.docs/raw/docs/guides/voice.mdx +3 -2
- package/.docs/raw/docs/ink/hooks.mdx +2 -2
- package/.docs/raw/docs/integrations/attachments/custom-adapter.mdx +4 -12
- package/.docs/raw/docs/integrations/auth/better-auth.mdx +7 -10
- package/.docs/raw/docs/integrations/auth/clerk.mdx +3 -9
- package/.docs/raw/docs/integrations/auth/next-auth.mdx +3 -8
- package/.docs/raw/docs/integrations/frameworks/ai-sdk.mdx +8 -5
- package/.docs/raw/docs/integrations/index.mdx +5 -12
- package/.docs/raw/docs/integrations/observability/helicone.mdx +3 -4
- package/.docs/raw/docs/integrations/observability/langfuse.mdx +3 -5
- package/.docs/raw/docs/integrations/observability/langsmith.mdx +3 -2
- package/.docs/raw/docs/integrations/persistence/custom-adapter.mdx +4 -3
- package/.docs/raw/docs/primitives/composer.mdx +8 -0
- package/.docs/raw/docs/primitives/thread.mdx +24 -0
- package/.docs/raw/docs/react-native/hooks.mdx +1 -1
- package/.docs/raw/docs/runtimes/ag-ui/runtime-options.mdx +22 -3
- package/.docs/raw/docs/runtimes/concepts/stability.mdx +1 -1
- package/.docs/raw/docs/runtimes/custom/data-stream.mdx +1 -1
- package/.docs/raw/docs/runtimes/custom/external-store.mdx +54 -0
- package/.docs/raw/docs/runtimes/custom/local-runtime.mdx +108 -4
- package/.docs/raw/docs/runtimes/eve/overview.mdx +100 -0
- package/.docs/raw/docs/runtimes/eve/quickstart.mdx +143 -0
- package/.docs/raw/docs/runtimes/langchain.mdx +386 -18
- package/.docs/raw/docs/runtimes/langgraph/quickstart.mdx +1 -1
- package/.docs/raw/docs/runtimes/langgraph/tutorial/part-1.mdx +1 -1
- package/.docs/raw/docs/runtimes/pick-a-runtime.mdx +12 -6
- package/.docs/raw/docs/tools/defining-tools.mdx +4 -0
- package/.docs/raw/docs/tools/interactables-legacy.mdx +410 -0
- package/.docs/raw/docs/tools/interactables.mdx +892 -223
- package/.docs/raw/docs/tools/mcp.mdx +4 -4
- package/.docs/raw/docs/tools/multi-agent.mdx +5 -0
- package/.docs/raw/docs/tools/tool-ui.mdx +37 -1
- package/.docs/raw/docs/ui/composer-trigger-popover.mdx +2 -0
- package/.docs/raw/docs/ui/dot-matrix.mdx +133 -0
- package/.docs/raw/docs/ui/file.mdx +1 -1
- package/.docs/raw/docs/ui/model-selector.mdx +219 -52
- package/.docs/raw/docs/ui/number-roll.mdx +154 -0
- package/.docs/raw/docs/ui/part-grouping.mdx +38 -0
- package/.docs/raw/docs/ui/reasoning.mdx +3 -3
- package/.docs/raw/docs/ui/streamdown.mdx +2 -0
- package/.docs/raw/docs/ui/syntax-highlighting.mdx +1 -1
- package/.docs/raw/docs/ui/thread.mdx +52 -0
- package/.docs/raw/docs/ui/tool-fallback.mdx +2 -2
- package/.docs/raw/docs/utilities/react-o11y.mdx +92 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +18 -2
- package/dist/index.js.map +1 -1
- package/package.json +4 -4
- package/src/index.ts +14 -6
- package/src/tools/tests/mcp-protocol.test.ts +9 -0
|
@@ -56,8 +56,9 @@ This command scaffolds a project from assistant-ui starter templates or examples
|
|
|
56
56
|
| `minimal` | Bare-bones starting point | `npx assistant-ui create -t minimal` |
|
|
57
57
|
| `cloud` | Cloud-backed persistence starter | `npx assistant-ui create -t cloud` |
|
|
58
58
|
| `cloud-clerk` | Cloud-backed starter with Clerk auth | `npx assistant-ui create -t cloud-clerk` |
|
|
59
|
-
| `
|
|
59
|
+
| `langchain` | LangGraph starter with the react-langchain adapter | `npx assistant-ui create -t langchain` |
|
|
60
60
|
| `mcp` | MCP starter template | `npx assistant-ui create -t mcp` |
|
|
61
|
+
| `eve` | Eve agent + Next.js starter | `npx assistant-ui create -t eve` |
|
|
61
62
|
|
|
62
63
|
**Available Examples**
|
|
63
64
|
|
|
@@ -66,6 +67,7 @@ Use `--example` to create a project from one of the monorepo examples with full
|
|
|
66
67
|
| Example | Description | Command |
|
|
67
68
|
|---------|-------------|---------|
|
|
68
69
|
| `with-ai-sdk-v6` | Vercel AI SDK v6 integration | `npx assistant-ui create my-app -e with-ai-sdk-v6` |
|
|
70
|
+
| `with-eve` | Eve agent integration | `npx assistant-ui create my-app -e with-eve` |
|
|
69
71
|
| `with-artifacts` | HTML artifact rendering with live preview | `npx assistant-ui create my-app -e with-artifacts` |
|
|
70
72
|
| `with-langgraph` | LangGraph agent with custom tools | `npx assistant-ui create my-app -e with-langgraph` |
|
|
71
73
|
| `with-cloud` | Assistant Cloud persistence | `npx assistant-ui create my-app -e with-cloud` |
|
|
@@ -116,7 +118,7 @@ Arguments:
|
|
|
116
118
|
project-directory name of the project directory
|
|
117
119
|
|
|
118
120
|
Options:
|
|
119
|
-
-t, --template <template> template to use (default, minimal, cloud, cloud-clerk,
|
|
121
|
+
-t, --template <template> template to use (default, minimal, cloud, cloud-clerk, langchain, mcp, eve)
|
|
120
122
|
-e, --example <example> create from an example (e.g., with-langgraph)
|
|
121
123
|
-p, --preset <name-or-url> preset name or URL (e.g., chatgpt)
|
|
122
124
|
--native create an Expo / React Native project
|
|
@@ -43,9 +43,32 @@ export function AssistantApp() {
|
|
|
43
43
|
|
|
44
44
|
### Verify the DevTools overlay
|
|
45
45
|
|
|
46
|
-
That's it! In development builds you should now see the DevTools in the lower-right corner of your site.
|
|
46
|
+
That's it! In development builds you should now see the DevTools launcher in the lower-right corner of your site. The panel renders inline in an isolated shadow root, and the whole component is stripped from production builds.
|
|
47
47
|
|
|
48
|
-

|
|
49
49
|
|
|
50
50
|
</Step>
|
|
51
51
|
</Steps>
|
|
52
|
+
|
|
53
|
+
## Custom tabs
|
|
54
|
+
|
|
55
|
+
The panel is extensible. Pass extra inspector tabs to `DevToolsModal` with `plugins`; each plugin renders from the inspected instance's projected data (`state`, `logs`, `modelContext`, `scopes`).
|
|
56
|
+
|
|
57
|
+
```tsx
|
|
58
|
+
import { createDevToolsPlugin, DevToolsModal } from "@assistant-ui/react-devtools";
|
|
59
|
+
|
|
60
|
+
const stateTab = createDevToolsPlugin({
|
|
61
|
+
id: "my-state",
|
|
62
|
+
label: "My state",
|
|
63
|
+
Component: ({ data }) => <pre>{JSON.stringify(data.state, null, 2)}</pre>,
|
|
64
|
+
});
|
|
65
|
+
|
|
66
|
+
export function AssistantApp() {
|
|
67
|
+
return (
|
|
68
|
+
<AssistantRuntimeProvider runtime={runtime}>
|
|
69
|
+
<DevToolsModal plugins={[stateTab]} />
|
|
70
|
+
{/* ...your assistant-ui... */}
|
|
71
|
+
</AssistantRuntimeProvider>
|
|
72
|
+
);
|
|
73
|
+
}
|
|
74
|
+
```
|
|
@@ -52,11 +52,14 @@ npx assistant-ui@latest create -t cloud
|
|
|
52
52
|
# Assistant Cloud + Clerk authentication
|
|
53
53
|
npx assistant-ui@latest create -t cloud-clerk
|
|
54
54
|
|
|
55
|
-
# LangGraph starter
|
|
56
|
-
npx assistant-ui@latest create -t
|
|
55
|
+
# LangGraph starter (react-langchain adapter)
|
|
56
|
+
npx assistant-ui@latest create -t langchain
|
|
57
57
|
|
|
58
58
|
# MCP starter template
|
|
59
59
|
npx assistant-ui@latest create -t mcp
|
|
60
|
+
|
|
61
|
+
# Eve agent starter template
|
|
62
|
+
npx assistant-ui@latest create -t eve
|
|
60
63
|
```
|
|
61
64
|
|
|
62
65
|
## What's Next?
|
|
@@ -34,11 +34,14 @@ npx assistant-ui@latest create -t cloud
|
|
|
34
34
|
# Assistant Cloud + Clerk authentication
|
|
35
35
|
npx assistant-ui@latest create -t cloud-clerk
|
|
36
36
|
|
|
37
|
-
# LangGraph starter
|
|
38
|
-
npx assistant-ui@latest create -t
|
|
37
|
+
# LangGraph starter (react-langchain adapter)
|
|
38
|
+
npx assistant-ui@latest create -t langchain
|
|
39
39
|
|
|
40
40
|
# MCP starter template
|
|
41
41
|
npx assistant-ui@latest create -t mcp
|
|
42
|
+
|
|
43
|
+
# Eve agent starter template
|
|
44
|
+
npx assistant-ui@latest create -t eve
|
|
42
45
|
```
|
|
43
46
|
|
|
44
47
|
**Add to an existing project:**
|
|
@@ -14,39 +14,39 @@ import { useExternalMessageConverter } from "@/generated/typeDocs";
|
|
|
14
14
|
|
|
15
15
|
## API Reference
|
|
16
16
|
|
|
17
|
-
###
|
|
17
|
+
### getExternalStoreMessages
|
|
18
18
|
|
|
19
|
-
|
|
20
|
-
<
|
|
21
|
-
|
|
19
|
+
```ts
|
|
20
|
+
const getExternalStoreMessages: <T>(input: { messages: readonly ThreadMessage[]; } | ThreadMessage | ThreadMessage["content"][number]) => T[];
|
|
21
|
+
```
|
|
22
22
|
|
|
23
|
-
|
|
24
|
-
This is a no-op if the target already has a bound message.
|
|
25
|
-
Use `getExternalStoreMessages` to retrieve the bound messages later.
|
|
23
|
+
### unstable_convertExternalMessages
|
|
26
24
|
|
|
27
25
|
```ts
|
|
28
|
-
const
|
|
26
|
+
const unstable_convertExternalMessages: <T extends WeakKey>(messages: T[], callback: useExternalMessageConverter.Callback<T>, isRunning: boolean, metadata: useExternalMessageConverter.Metadata) => ThreadMessage[];
|
|
29
27
|
```
|
|
30
28
|
|
|
31
|
-
###
|
|
29
|
+
### unstable_createMessageConverter
|
|
32
30
|
|
|
33
31
|
```ts
|
|
34
|
-
const
|
|
32
|
+
const unstable_createMessageConverter: <T extends object>(callback: useExternalMessageConverter.Callback<T>) => { useThreadMessages: ({ messages, isRunning, joinStrategy, metadata, }: { messages: T[]; isRunning: boolean; joinStrategy?: JoinStrategy | undefined; metadata?: useExternalMessageConverter.Metadata; }) => ThreadMessage[]; toThreadMessages: (messages: T[], isRunning?: boolean, metadata?: useExternalMessageConverter.Metadata) => ThreadMessage[]; toOriginalMessages: (input: ThreadState | ThreadMessage | ThreadMessage["content"][number]) => unknown[]; toOriginalMessage: (input: ThreadState | ThreadMessage | ThreadMessage["content"][number]) => {}; useOriginalMessage: () => {}; useOriginalMessages: () => unknown[]; };
|
|
35
33
|
```
|
|
36
34
|
|
|
37
35
|
### useExternalMessageConverter
|
|
38
36
|
|
|
39
37
|
<ParametersTable {...useExternalMessageConverter} />
|
|
40
38
|
|
|
41
|
-
###
|
|
39
|
+
### bindExternalStoreMessage
|
|
42
40
|
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
41
|
+
<Callout type="tip">
|
|
42
|
+
<strong>Experimental.</strong> This API is experimental and may change without notice.
|
|
43
|
+
</Callout>
|
|
46
44
|
|
|
47
|
-
|
|
45
|
+
Attach the original external store message(s) to a ThreadMessage or message part.
|
|
46
|
+
This is a no-op if the target already has a bound message.
|
|
47
|
+
Use `getExternalStoreMessages` to retrieve the bound messages later.
|
|
48
48
|
|
|
49
49
|
```ts
|
|
50
|
-
const
|
|
50
|
+
const bindExternalStoreMessage: <T>(target: object, message: T | T[]) => void;
|
|
51
51
|
```
|
|
52
52
|
{/* api-reference:end */}
|
|
@@ -3,7 +3,7 @@ title: Composer Trigger Hooks
|
|
|
3
3
|
description: Unstable assistant-ui hooks for mention menus, slash commands, and custom composer trigger popovers.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
import { unstable_useMentionAdapter, unstable_useSlashCommandAdapter } from "@/generated/typeDocs";
|
|
6
|
+
import { unstable_useLiveCompletionAdapter, unstable_useMentionAdapter, unstable_useSlashCommandAdapter } from "@/generated/typeDocs";
|
|
7
7
|
|
|
8
8
|
{/* AUTO-GENERATED PAGE by scripts/generate-api-reference.mts */}
|
|
9
9
|
{/* Do not edit manually. */}
|
|
@@ -14,47 +14,6 @@ import { unstable_useMentionAdapter, unstable_useSlashCommandAdapter } from "@/g
|
|
|
14
14
|
|
|
15
15
|
## API Reference
|
|
16
16
|
|
|
17
|
-
### unstable_useMentionAdapter
|
|
18
|
-
|
|
19
|
-
<Callout type="warn">
|
|
20
|
-
<strong>Deprecated.</strong> Under active development and might change without notice.
|
|
21
|
-
</Callout>
|
|
22
|
-
|
|
23
|
-
Creates a spreadable `{ adapter, directive }` bundle for `@` mentions.
|
|
24
|
-
Supports tools registered in model context, explicit items, or both —
|
|
25
|
-
flat or categorized.
|
|
26
|
-
|
|
27
|
-
```tsx
|
|
28
|
-
const mention = unstable_useMentionAdapter();
|
|
29
|
-
<ComposerTriggerPopover char="@" {...mention} />
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
<ParametersTable {...unstable_useMentionAdapter} />
|
|
33
|
-
|
|
34
|
-
### unstable_useSlashCommandAdapter
|
|
35
|
-
|
|
36
|
-
<Callout type="warn">
|
|
37
|
-
<strong>Deprecated.</strong> Under active development and may change without notice.
|
|
38
|
-
</Callout>
|
|
39
|
-
|
|
40
|
-
Bundles slash command definitions (with inline `execute` callbacks) into
|
|
41
|
-
`{adapter, action}` that plug directly into `ComposerTriggerPopover`.
|
|
42
|
-
`execute` stays in the hook closure and is never attached to the returned
|
|
43
|
-
`TriggerItem`, keeping items serializable.
|
|
44
|
-
|
|
45
|
-
```tsx
|
|
46
|
-
const slash = unstable_useSlashCommandAdapter({
|
|
47
|
-
commands: [
|
|
48
|
-
{ id: "summarize", execute: () => runSummarize(), icon: "FileText" },
|
|
49
|
-
{ id: "translate", execute: () => runTranslate(), icon: "Languages" },
|
|
50
|
-
],
|
|
51
|
-
});
|
|
52
|
-
|
|
53
|
-
<ComposerTriggerPopover char="/" {...slash} />
|
|
54
|
-
```
|
|
55
|
-
|
|
56
|
-
<ParametersTable {...unstable_useSlashCommandAdapter} />
|
|
57
|
-
|
|
58
17
|
### unstable_useTriggerPopoverRootContext
|
|
59
18
|
|
|
60
19
|
```ts
|
|
@@ -95,4 +54,76 @@ Like `useTriggerPopoverTriggers` but returns an empty map outside a root.
|
|
|
95
54
|
```ts
|
|
96
55
|
const unstable_useTriggerPopoverTriggersOptional: () => ReadonlyMap<string, RegisteredTrigger>;
|
|
97
56
|
```
|
|
57
|
+
|
|
58
|
+
### unstable_useLiveCompletionAdapter
|
|
59
|
+
|
|
60
|
+
<Callout type="tip">
|
|
61
|
+
<strong>Experimental.</strong> Under active development and may change without notice.
|
|
62
|
+
</Callout>
|
|
63
|
+
|
|
64
|
+
Bridges an async completion source (a server search, a gateway RPC) into the
|
|
65
|
+
synchronous `Unstable_TriggerAdapter` that `ComposerTriggerPopover` consumes.
|
|
66
|
+
`search(query)` returns the last fetched items synchronously and schedules a
|
|
67
|
+
debounced fetch when the query changes; when results arrive the returned
|
|
68
|
+
`adapter` identity changes, which re-runs the popover's lookup so the fresh
|
|
69
|
+
items render. This is a search-only adapter (`categories` are empty).
|
|
70
|
+
|
|
71
|
+
`isLoading` is `true` while a fetch is in flight. Pass it to the popover's
|
|
72
|
+
`isLoading` prop to render a loading state.
|
|
73
|
+
|
|
74
|
+
```tsx
|
|
75
|
+
const mentions = unstable_useLiveCompletionAdapter({
|
|
76
|
+
fetcher: (query) => searchUsers(query),
|
|
77
|
+
});
|
|
78
|
+
|
|
79
|
+
<ComposerTriggerPopover
|
|
80
|
+
char="@"
|
|
81
|
+
adapter={mentions.adapter}
|
|
82
|
+
isLoading={mentions.isLoading}
|
|
83
|
+
directive={{ onInserted }}
|
|
84
|
+
/>
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
<ParametersTable {...unstable_useLiveCompletionAdapter} />
|
|
88
|
+
|
|
89
|
+
### unstable_useMentionAdapter
|
|
90
|
+
|
|
91
|
+
<Callout type="tip">
|
|
92
|
+
<strong>Experimental.</strong> Under active development and might change without notice.
|
|
93
|
+
</Callout>
|
|
94
|
+
|
|
95
|
+
Creates a spreadable `{ adapter, directive }` bundle for `@` mentions.
|
|
96
|
+
Supports tools registered in model context, explicit items, or both —
|
|
97
|
+
flat or categorized.
|
|
98
|
+
|
|
99
|
+
```tsx
|
|
100
|
+
const mention = unstable_useMentionAdapter();
|
|
101
|
+
<ComposerTriggerPopover char="@" {...mention} />
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
<ParametersTable {...unstable_useMentionAdapter} />
|
|
105
|
+
|
|
106
|
+
### unstable_useSlashCommandAdapter
|
|
107
|
+
|
|
108
|
+
<Callout type="tip">
|
|
109
|
+
<strong>Experimental.</strong> Under active development and may change without notice.
|
|
110
|
+
</Callout>
|
|
111
|
+
|
|
112
|
+
Bundles slash command definitions (with inline `execute` callbacks) into
|
|
113
|
+
`{adapter, action}` that plug directly into `ComposerTriggerPopover`.
|
|
114
|
+
`execute` stays in the hook closure and is never attached to the returned
|
|
115
|
+
`TriggerItem`, keeping items serializable.
|
|
116
|
+
|
|
117
|
+
```tsx
|
|
118
|
+
const slash = unstable_useSlashCommandAdapter({
|
|
119
|
+
commands: [
|
|
120
|
+
{ id: "summarize", execute: () => runSummarize(), icon: "FileText" },
|
|
121
|
+
{ id: "translate", execute: () => runTranslate(), icon: "Languages" },
|
|
122
|
+
],
|
|
123
|
+
});
|
|
124
|
+
|
|
125
|
+
<ComposerTriggerPopover char="/" {...slash} />
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
<ParametersTable {...unstable_useSlashCommandAdapter} />
|
|
98
129
|
{/* api-reference:end */}
|
|
@@ -3,7 +3,7 @@ title: Model Context Hooks
|
|
|
3
3
|
description: React hooks for registering assistant-ui tools, data renderers, instructions, and model context providers.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
import {
|
|
6
|
+
import { useAuiToolOverrides } from "@/generated/typeDocs";
|
|
7
7
|
|
|
8
8
|
{/* AUTO-GENERATED PAGE by scripts/generate-api-reference.mts */}
|
|
9
9
|
{/* Do not edit manually. */}
|
|
@@ -14,19 +14,10 @@ import { useAssistantInteractable, useAuiToolOverrides, useInteractableState } f
|
|
|
14
14
|
|
|
15
15
|
## API Reference
|
|
16
16
|
|
|
17
|
-
### useAssistantInteractable
|
|
18
|
-
|
|
19
|
-
Registers an interactable with the AI assistant.
|
|
20
|
-
|
|
21
|
-
This hook handles registration only. To read and write the interactable's
|
|
22
|
-
state, use [useInteractableState](/docs/api-reference/hooks/model-context#useinteractablestate) with the returned id.
|
|
23
|
-
|
|
24
|
-
<ParametersTable {...useAssistantInteractable} />
|
|
25
|
-
|
|
26
17
|
### useAuiToolOverrides
|
|
27
18
|
|
|
28
|
-
<Callout type="
|
|
29
|
-
<strong>
|
|
19
|
+
<Callout type="tip">
|
|
20
|
+
<strong>Experimental.</strong> Experimental, API may change.
|
|
30
21
|
</Callout>
|
|
31
22
|
|
|
32
23
|
Overrides toolkit entries for the current assistant scope.
|
|
@@ -40,12 +31,4 @@ Overrides are registered at priority 1000, above toolkit defaults. Only one
|
|
|
40
31
|
mounted override provider may define a given tool name at a time.
|
|
41
32
|
|
|
42
33
|
<ParametersTable {...useAuiToolOverrides} />
|
|
43
|
-
|
|
44
|
-
### useInteractableState
|
|
45
|
-
|
|
46
|
-
Reads and writes the state of a registered interactable.
|
|
47
|
-
|
|
48
|
-
Pair with [useAssistantInteractable](/docs/api-reference/hooks/model-context#useassistantinteractable) which handles registration.
|
|
49
|
-
|
|
50
|
-
<ParametersTable {...useInteractableState} />
|
|
51
34
|
{/* api-reference:end */}
|