@assistant-ui/mcp-docs-server 0.2.0 → 0.2.1
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 +12 -13
- package/.docs/organized/code-examples/with-a2a.md +16 -11
- package/.docs/organized/code-examples/with-ag-ui.md +14 -12
- package/.docs/organized/code-examples/with-ai-sdk-v7.md +13 -12
- package/.docs/organized/code-examples/with-artifacts.md +13 -12
- package/.docs/organized/code-examples/with-assistant-transport.md +19 -27
- package/.docs/organized/code-examples/with-browser-extension.md +17 -10
- package/.docs/organized/code-examples/with-chain-of-thought.md +16 -14
- package/.docs/organized/code-examples/with-cloud-standalone.md +9 -10
- package/.docs/organized/code-examples/with-cloud.md +18 -13
- package/.docs/organized/code-examples/with-custom-thread-list.md +13 -12
- package/.docs/organized/code-examples/with-elevenlabs-conversational.md +13 -13
- package/.docs/organized/code-examples/with-elevenlabs-scribe.md +17 -15
- package/.docs/organized/code-examples/with-eve.md +65 -11
- package/.docs/organized/code-examples/with-expo.md +20 -19
- package/.docs/organized/code-examples/with-external-store.md +16 -11
- package/.docs/organized/code-examples/with-ffmpeg.md +20 -14
- package/.docs/organized/code-examples/with-generative-ui.md +16 -17
- package/.docs/organized/code-examples/with-google-adk.md +17 -12
- package/.docs/organized/code-examples/with-heat-graph.md +6 -7
- package/.docs/organized/code-examples/with-image-generation.md +9 -10
- package/.docs/organized/code-examples/with-interactables.md +13 -12
- package/.docs/organized/code-examples/with-langchain.md +7 -8
- package/.docs/organized/code-examples/with-langgraph.md +17 -11
- package/.docs/organized/code-examples/with-livekit.md +12 -12
- package/.docs/organized/code-examples/with-mcp.md +13 -14
- package/.docs/organized/code-examples/with-nuxt.md +2492 -0
- package/.docs/organized/code-examples/with-opencode.md +23 -14
- package/.docs/organized/code-examples/with-pi.md +59 -57
- package/.docs/organized/code-examples/with-react-hook-form.md +14 -13
- package/.docs/organized/code-examples/with-react-ink-web.md +7 -8
- package/.docs/organized/code-examples/with-react-ink.md +5 -5
- package/.docs/organized/code-examples/with-react-router.md +15 -9
- package/.docs/organized/code-examples/with-resumable-stream.md +11 -12
- package/.docs/organized/code-examples/with-store.md +27 -16
- package/.docs/organized/code-examples/with-tanstack.md +18 -12
- package/.docs/organized/code-examples/with-tap-runtime.md +15 -15
- package/.docs/organized/code-examples/with-virtualized-thread.md +8 -9
- package/.docs/organized/code-examples/with-vue.md +408 -0
- package/.docs/raw/docs/(docs)/cli.mdx +1 -1
- package/.docs/raw/docs/(docs)/index.mdx +9 -76
- package/.docs/raw/docs/(docs)/installation.mdx +4 -18
- package/.docs/raw/docs/(reference)/api-reference/context-providers/assistant-runtime-provider.mdx +24 -4
- package/.docs/raw/docs/(reference)/api-reference/integrations/eve.mdx +8 -0
- package/.docs/raw/docs/(reference)/api-reference/utilities/miscellaneous.mdx +24 -1
- package/.docs/raw/docs/cloud/ai-sdk-assistant-ui.mdx +1 -1
- package/.docs/raw/docs/cloud/ai-sdk.mdx +2 -2
- package/.docs/raw/docs/copilots/model-context.mdx +4 -3
- package/.docs/raw/docs/copilots/motivation.mdx +4 -4
- package/.docs/raw/docs/guides/chain-of-thought.mdx +1 -1
- package/.docs/raw/docs/guides/electron.mdx +1 -1
- package/.docs/raw/docs/guides/resumable-streams.mdx +74 -3
- package/.docs/raw/docs/guides/suggestions.mdx +9 -9
- package/.docs/raw/docs/ink/hooks.mdx +9 -4
- package/.docs/raw/docs/ink/primitives.mdx +4 -3
- package/.docs/raw/docs/integrations/attachments/custom-adapter.mdx +16 -0
- package/.docs/raw/docs/integrations/auth/better-auth.mdx +1 -1
- package/.docs/raw/docs/integrations/auth/clerk.mdx +1 -1
- package/.docs/raw/docs/integrations/auth/next-auth.mdx +1 -1
- package/.docs/raw/docs/integrations/frameworks/cloudflare-agents/overview.mdx +1 -1
- package/.docs/raw/docs/integrations/frameworks/mastra/full-stack.mdx +2 -2
- package/.docs/raw/docs/integrations/frameworks/mastra/separate-server.mdx +1 -1
- package/.docs/raw/docs/integrations/gateways/index.mdx +2 -2
- package/.docs/raw/docs/integrations/observability/helicone.mdx +2 -2
- package/.docs/raw/docs/integrations/observability/langfuse.mdx +1 -1
- package/.docs/raw/docs/integrations/observability/langsmith.mdx +2 -2
- package/.docs/raw/docs/migrations/toolkit-tools.mdx +15 -13
- package/.docs/raw/docs/migrations/v0-15.mdx +84 -4
- package/.docs/raw/docs/primitives/attachment.mdx +2 -2
- package/.docs/raw/docs/primitives/composer.mdx +2 -2
- package/.docs/raw/docs/primitives/message.mdx +33 -1
- package/.docs/raw/docs/primitives/suggestion.mdx +1 -1
- package/.docs/raw/docs/react-native/hooks.mdx +14 -4
- package/.docs/raw/docs/react-native/index.mdx +1 -1
- package/.docs/raw/docs/react-native/primitives.mdx +2 -2
- package/.docs/raw/docs/runtimes/ai-sdk/v4-legacy.mdx +1 -1
- package/.docs/raw/docs/runtimes/ai-sdk/v5-legacy.mdx +1 -1
- package/.docs/raw/docs/runtimes/ai-sdk/v6-legacy.mdx +9 -10
- package/.docs/raw/docs/runtimes/ai-sdk/v7.mdx +9 -10
- package/.docs/raw/docs/runtimes/concepts/threads.mdx +40 -1
- package/.docs/raw/docs/runtimes/custom/assistant-transport.mdx +18 -0
- package/.docs/raw/docs/runtimes/custom/external-store.mdx +30 -1
- package/.docs/raw/docs/runtimes/custom/local-runtime.mdx +36 -9
- package/.docs/raw/docs/runtimes/eve/overview.mdx +51 -0
- package/.docs/raw/docs/runtimes/eve/quickstart.mdx +51 -2
- package/.docs/raw/docs/runtimes/google-adk/hooks.mdx +9 -12
- package/.docs/raw/docs/runtimes/langgraph/streaming.mdx +1 -1
- package/.docs/raw/docs/runtimes/langgraph/tutorial/part-2.mdx +7 -7
- package/.docs/raw/docs/runtimes/langgraph/tutorial/part-3.mdx +4 -4
- package/.docs/raw/docs/runtimes/opencode/hooks.mdx +1 -0
- package/.docs/raw/docs/runtimes/opencode/overview.mdx +10 -0
- package/.docs/raw/docs/tools/backend.mdx +2 -2
- package/.docs/raw/docs/tools/defining-tools.mdx +9 -7
- package/.docs/raw/docs/tools/dynamic-tools.mdx +6 -4
- package/.docs/raw/docs/tools/interactables-legacy.mdx +24 -11
- package/.docs/raw/docs/tools/interactables.mdx +24 -13
- package/.docs/raw/docs/tools/mcp-apps.mdx +35 -6
- package/.docs/raw/docs/tools/mcp.mdx +9 -7
- package/.docs/raw/docs/tools/tool-ui.mdx +26 -22
- package/.docs/raw/docs/tools/user-managed-mcp.mdx +12 -7
- package/.docs/raw/docs/ui/file.mdx +6 -1
- package/.docs/raw/docs/ui/mcp-config.mdx +8 -3
- package/.docs/raw/docs/ui/model-selector.mdx +8 -8
- package/.docs/raw/docs/ui/part-grouping.mdx +1 -1
- package/.docs/raw/docs/ui/thread.mdx +24 -5
- package/.docs/raw/docs/utilities/react-o11y.mdx +7 -9
- package/dist/constants.js +2 -2
- package/dist/constants.js.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/prepare-docs/prepare.js.map +1 -1
- package/dist/tools/docs.js +4 -2
- package/dist/tools/docs.js.map +1 -1
- package/dist/tools/examples.js +2 -1
- package/dist/tools/examples.js.map +1 -1
- package/dist/tools/resources.js +2 -1
- package/dist/tools/resources.js.map +1 -1
- package/dist/tools/tests/test-setup.js +2 -1
- package/dist/tools/tests/test-setup.js.map +1 -1
- package/dist/tools/xulux-templates.js +4 -2
- package/dist/tools/xulux-templates.js.map +1 -1
- package/dist/utils/mdx.js +2 -1
- package/dist/utils/mdx.js.map +1 -1
- package/dist/xulux/catalog-client.js +1 -1
- package/dist/xulux/catalog-client.js.map +1 -1
- package/package.json +4 -4
- package/src/tools/tests/docs.test.ts +2 -2
|
@@ -188,7 +188,12 @@ export default function RootLayout({
|
|
|
188
188
|
```tsx
|
|
189
189
|
"use client";
|
|
190
190
|
|
|
191
|
-
import {
|
|
191
|
+
import {
|
|
192
|
+
AssistantRuntimeProvider,
|
|
193
|
+
AuiConfig,
|
|
194
|
+
Tools,
|
|
195
|
+
useAui,
|
|
196
|
+
} from "@assistant-ui/react";
|
|
192
197
|
import {
|
|
193
198
|
SidebarInset,
|
|
194
199
|
SidebarProvider,
|
|
@@ -211,6 +216,12 @@ import { ToolGroup } from "@/components/tools/tool-group";
|
|
|
211
216
|
import toolkit from "@/components/tools/toolkit";
|
|
212
217
|
import { useEffect } from "react";
|
|
213
218
|
|
|
219
|
+
const SetFallbackDataUI = () => {
|
|
220
|
+
const aui = useAui();
|
|
221
|
+
useEffect(() => aui.dataRenderers.setFallbackDataUI(OpenCodeDataPart), [aui]);
|
|
222
|
+
return null;
|
|
223
|
+
};
|
|
224
|
+
|
|
214
225
|
const THREAD_COMPONENTS: ThreadComponents = {
|
|
215
226
|
ToolFallback: FallbackTool,
|
|
216
227
|
ToolGroup,
|
|
@@ -223,14 +234,13 @@ export default function Home() {
|
|
|
223
234
|
process.env.NEXT_PUBLIC_OPENCODE_BASE_URL ?? "http://localhost:4096",
|
|
224
235
|
});
|
|
225
236
|
|
|
226
|
-
const
|
|
237
|
+
const config = AuiConfig({
|
|
227
238
|
tools: Tools({ toolkit }),
|
|
228
239
|
});
|
|
229
240
|
|
|
230
|
-
useEffect(() => aui.dataRenderers.setFallbackDataUI(OpenCodeDataPart), [aui]);
|
|
231
|
-
|
|
232
241
|
return (
|
|
233
|
-
<AssistantRuntimeProvider
|
|
242
|
+
<AssistantRuntimeProvider config={config} runtime={runtime}>
|
|
243
|
+
<SetFallbackDataUI />
|
|
234
244
|
<SidebarProvider>
|
|
235
245
|
<div className="flex h-dvh w-full overflow-hidden pr-0.5">
|
|
236
246
|
<ThreadListSidebar />
|
|
@@ -1889,11 +1899,11 @@ export default withAui(nextConfig);
|
|
|
1889
1899
|
"@assistant-ui/react-markdown": "workspace:*",
|
|
1890
1900
|
"@assistant-ui/react-opencode": "workspace:*",
|
|
1891
1901
|
"@assistant-ui/ui": "workspace:*",
|
|
1892
|
-
"@pierre/diffs": "^1.
|
|
1902
|
+
"@pierre/diffs": "^1.3.5",
|
|
1893
1903
|
"class-variance-authority": "^0.7.1",
|
|
1894
1904
|
"clsx": "^2.1.1",
|
|
1895
|
-
"lucide-react": "^1.
|
|
1896
|
-
"next": "^16.
|
|
1905
|
+
"lucide-react": "^1.29.0",
|
|
1906
|
+
"next": "^16.3.0",
|
|
1897
1907
|
"react": "^19.2.8",
|
|
1898
1908
|
"react-dom": "^19.2.8",
|
|
1899
1909
|
"tailwind-merge": "^3.6.0",
|
|
@@ -1903,14 +1913,13 @@ export default withAui(nextConfig);
|
|
|
1903
1913
|
"@assistant-ui/next": "workspace:*",
|
|
1904
1914
|
"@assistant-ui/x-buildutils": "workspace:*",
|
|
1905
1915
|
"@tailwindcss/postcss": "^4.3.3",
|
|
1906
|
-
"@types/node": "^26.1.
|
|
1907
|
-
"@types/react": "^19.2.
|
|
1908
|
-
"@types/react-dom": "^19.2.
|
|
1909
|
-
"postcss": "^8.5.
|
|
1916
|
+
"@types/node": "^26.1.2",
|
|
1917
|
+
"@types/react": "^19.2.18",
|
|
1918
|
+
"@types/react-dom": "^19.2.4",
|
|
1919
|
+
"postcss": "^8.5.26",
|
|
1910
1920
|
"tailwindcss": "^4.3.3",
|
|
1911
1921
|
"tw-animate-css": "^1.4.0",
|
|
1912
|
-
"typescript": "
|
|
1913
|
-
"typescript-7": "npm:typescript@^7.0.2"
|
|
1922
|
+
"typescript": "^7.0.2"
|
|
1914
1923
|
}
|
|
1915
1924
|
}
|
|
1916
1925
|
|
|
@@ -727,6 +727,7 @@ import { useModelSelectorEfforts } from "@/components/assistant-ui/model-selecto
|
|
|
727
727
|
import {
|
|
728
728
|
Tooltip,
|
|
729
729
|
TooltipContent,
|
|
730
|
+
TooltipProvider,
|
|
730
731
|
TooltipTrigger,
|
|
731
732
|
} from "@/components/ui/radix/tooltip";
|
|
732
733
|
import { cn } from "@/lib/utils";
|
|
@@ -764,54 +765,56 @@ export const ThinkingLevelSlider = ({
|
|
|
764
765
|
return (
|
|
765
766
|
<div className="flex items-center justify-between gap-3 border-t px-3 py-2">
|
|
766
767
|
<span className="text-muted-foreground text-xs">{label}</span>
|
|
767
|
-
<
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
<
|
|
788
|
-
<
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
{
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
768
|
+
<TooltipProvider>
|
|
769
|
+
<div
|
|
770
|
+
role="radiogroup"
|
|
771
|
+
aria-label={label}
|
|
772
|
+
className="flex items-end"
|
|
773
|
+
onKeyDown={(event) => {
|
|
774
|
+
if (event.key === "ArrowRight" || event.key === "ArrowUp") {
|
|
775
|
+
selectIndex(event, activeIndex + 1);
|
|
776
|
+
} else if (event.key === "ArrowLeft" || event.key === "ArrowDown") {
|
|
777
|
+
selectIndex(event, activeIndex - 1);
|
|
778
|
+
} else if (event.key === "Home") {
|
|
779
|
+
selectIndex(event, 0);
|
|
780
|
+
} else if (event.key === "End") {
|
|
781
|
+
selectIndex(event, lastIndex);
|
|
782
|
+
}
|
|
783
|
+
}}
|
|
784
|
+
>
|
|
785
|
+
{efforts.map((option, index) => {
|
|
786
|
+
const isActive = index === activeIndex;
|
|
787
|
+
return (
|
|
788
|
+
<Tooltip key={option.id} disableHoverableContent>
|
|
789
|
+
<TooltipTrigger asChild>
|
|
790
|
+
<button
|
|
791
|
+
type="button"
|
|
792
|
+
role="radio"
|
|
793
|
+
aria-checked={isActive}
|
|
794
|
+
aria-label={option.name}
|
|
795
|
+
tabIndex={index === Math.max(activeIndex, 0) ? 0 : -1}
|
|
796
|
+
data-state={isActive ? "on" : "off"}
|
|
797
|
+
onClick={() => setEffort(option.id)}
|
|
798
|
+
className="group focus-visible:ring-ring/50 flex h-6 w-3.5 items-end justify-center rounded-sm outline-none focus-visible:ring-2"
|
|
799
|
+
>
|
|
800
|
+
<span
|
|
801
|
+
className={cn(
|
|
802
|
+
"rounded-full transition-all duration-150 ease-out",
|
|
803
|
+
isActive
|
|
804
|
+
? "bg-primary h-4.5 w-0.5"
|
|
805
|
+
: "bg-muted-foreground/40 group-hover:bg-foreground/70 h-2.5 w-0.5 group-hover:h-4 group-hover:w-[3px] group-focus-visible:h-4 group-focus-visible:w-[3px]",
|
|
806
|
+
)}
|
|
807
|
+
/>
|
|
808
|
+
</button>
|
|
809
|
+
</TooltipTrigger>
|
|
810
|
+
<TooltipContent side="top" sideOffset={2}>
|
|
811
|
+
{option.name}
|
|
812
|
+
</TooltipContent>
|
|
813
|
+
</Tooltip>
|
|
814
|
+
);
|
|
815
|
+
})}
|
|
816
|
+
</div>
|
|
817
|
+
</TooltipProvider>
|
|
815
818
|
<span className="text-foreground min-w-12 text-end text-xs">
|
|
816
819
|
{efforts[activeIndex]?.name}
|
|
817
820
|
</span>
|
|
@@ -1958,11 +1961,11 @@ export default withAui(nextConfig);
|
|
|
1958
1961
|
"@assistant-ui/react-markdown": "workspace:*",
|
|
1959
1962
|
"@assistant-ui/react-pi": "workspace:*",
|
|
1960
1963
|
"@assistant-ui/ui": "workspace:*",
|
|
1961
|
-
"@earendil-works/pi-coding-agent": "^0.
|
|
1964
|
+
"@earendil-works/pi-coding-agent": "^0.84.1",
|
|
1962
1965
|
"class-variance-authority": "^0.7.1",
|
|
1963
1966
|
"clsx": "^2.1.1",
|
|
1964
|
-
"lucide-react": "^1.
|
|
1965
|
-
"next": "^16.
|
|
1967
|
+
"lucide-react": "^1.29.0",
|
|
1968
|
+
"next": "^16.3.0",
|
|
1966
1969
|
"radix-ui": "^1.6.7",
|
|
1967
1970
|
"react": "^19.2.8",
|
|
1968
1971
|
"react-dom": "^19.2.8",
|
|
@@ -1972,14 +1975,13 @@ export default withAui(nextConfig);
|
|
|
1972
1975
|
"@assistant-ui/next": "workspace:*",
|
|
1973
1976
|
"@assistant-ui/x-buildutils": "workspace:*",
|
|
1974
1977
|
"@tailwindcss/postcss": "^4.3.3",
|
|
1975
|
-
"@types/node": "^26.1.
|
|
1976
|
-
"@types/react": "^19.2.
|
|
1977
|
-
"@types/react-dom": "^19.2.
|
|
1978
|
-
"postcss": "^8.5.
|
|
1978
|
+
"@types/node": "^26.1.2",
|
|
1979
|
+
"@types/react": "^19.2.18",
|
|
1980
|
+
"@types/react-dom": "^19.2.4",
|
|
1981
|
+
"postcss": "^8.5.26",
|
|
1979
1982
|
"tailwindcss": "^4.3.3",
|
|
1980
1983
|
"tw-animate-css": "^1.4.0",
|
|
1981
|
-
"typescript": "
|
|
1982
|
-
"typescript-7": "npm:typescript@^7.0.2"
|
|
1984
|
+
"typescript": "^7.0.2"
|
|
1983
1985
|
}
|
|
1984
1986
|
}
|
|
1985
1987
|
|
|
@@ -248,6 +248,7 @@ import {
|
|
|
248
248
|
useAssistantInstructions,
|
|
249
249
|
useAui,
|
|
250
250
|
AuiProvider,
|
|
251
|
+
AuiConfig,
|
|
251
252
|
Suggestions,
|
|
252
253
|
} from "@assistant-ui/react";
|
|
253
254
|
|
|
@@ -292,7 +293,8 @@ export default function Home() {
|
|
|
292
293
|
},
|
|
293
294
|
});
|
|
294
295
|
|
|
295
|
-
const aui = useAui(
|
|
296
|
+
const aui = useAui();
|
|
297
|
+
const config = AuiConfig({
|
|
296
298
|
suggestions: Suggestions([
|
|
297
299
|
{
|
|
298
300
|
title: "Fill out the form",
|
|
@@ -309,7 +311,7 @@ export default function Home() {
|
|
|
309
311
|
});
|
|
310
312
|
|
|
311
313
|
return (
|
|
312
|
-
<AuiProvider
|
|
314
|
+
<AuiProvider extends={aui} config={config}>
|
|
313
315
|
<ResizablePanelGroup orientation="horizontal">
|
|
314
316
|
<ResizablePanel defaultSize={60} minSize={40} style={panelStyle}>
|
|
315
317
|
<div className="bg-muted/30 h-full overflow-y-auto">
|
|
@@ -615,34 +617,33 @@ export default withAui(nextConfig);
|
|
|
615
617
|
"start": "next start"
|
|
616
618
|
},
|
|
617
619
|
"dependencies": {
|
|
618
|
-
"@ai-sdk/openai": "^4.0.
|
|
620
|
+
"@ai-sdk/openai": "^4.0.34",
|
|
619
621
|
"@assistant-ui/react": "workspace:*",
|
|
620
622
|
"@assistant-ui/react-ai-sdk": "workspace:*",
|
|
621
623
|
"@assistant-ui/react-hook-form": "workspace:*",
|
|
622
624
|
"@assistant-ui/react-markdown": "workspace:*",
|
|
623
625
|
"@assistant-ui/ui": "workspace:*",
|
|
624
|
-
"ai": "^7.0.
|
|
626
|
+
"ai": "^7.0.56",
|
|
625
627
|
"class-variance-authority": "^0.7.1",
|
|
626
628
|
"clsx": "^2.1.1",
|
|
627
|
-
"lucide-react": "^1.
|
|
628
|
-
"next": "^16.
|
|
629
|
+
"lucide-react": "^1.29.0",
|
|
630
|
+
"next": "^16.3.0",
|
|
629
631
|
"react": "^19.2.8",
|
|
630
632
|
"react-dom": "^19.2.8",
|
|
631
|
-
"react-hook-form": "^7.
|
|
633
|
+
"react-hook-form": "^7.84.0",
|
|
632
634
|
"tailwind-merge": "^3.6.0"
|
|
633
635
|
},
|
|
634
636
|
"devDependencies": {
|
|
635
637
|
"@assistant-ui/next": "workspace:*",
|
|
636
638
|
"@assistant-ui/x-buildutils": "workspace:*",
|
|
637
639
|
"@tailwindcss/postcss": "^4.3.3",
|
|
638
|
-
"@types/node": "^26.1.
|
|
639
|
-
"@types/react": "^19.2.
|
|
640
|
-
"@types/react-dom": "^19.2.
|
|
641
|
-
"postcss": "^8.5.
|
|
640
|
+
"@types/node": "^26.1.2",
|
|
641
|
+
"@types/react": "^19.2.18",
|
|
642
|
+
"@types/react-dom": "^19.2.4",
|
|
643
|
+
"postcss": "^8.5.26",
|
|
642
644
|
"tailwindcss": "^4.3.3",
|
|
643
645
|
"tw-animate-css": "^1.4.0",
|
|
644
|
-
"typescript": "
|
|
645
|
-
"typescript-7": "npm:typescript@^7.0.2"
|
|
646
|
+
"typescript": "^7.0.2"
|
|
646
647
|
}
|
|
647
648
|
}
|
|
648
649
|
|
|
@@ -554,22 +554,21 @@ export default config;
|
|
|
554
554
|
"@assistant-ui/react-ai-sdk": "workspace:*",
|
|
555
555
|
"@assistant-ui/react-ink": "workspace:*",
|
|
556
556
|
"@assistant-ui/react-ink-markdown": "workspace:*",
|
|
557
|
-
"@wterm/dom": "^0.3.
|
|
558
|
-
"@wterm/react": "^0.3.
|
|
559
|
-
"ai": "^7.0.
|
|
557
|
+
"@wterm/dom": "^0.3.2",
|
|
558
|
+
"@wterm/react": "^0.3.2",
|
|
559
|
+
"ai": "^7.0.56",
|
|
560
560
|
"ink": "^7.1.1",
|
|
561
561
|
"ink-web": "^0.2.0",
|
|
562
|
-
"next": "^16.
|
|
562
|
+
"next": "^16.3.0",
|
|
563
563
|
"react": "^19.2.8",
|
|
564
564
|
"react-dom": "^19.2.8",
|
|
565
565
|
"react-reconciler": "^0.33.0",
|
|
566
566
|
"scheduler": "^0.27.0"
|
|
567
567
|
},
|
|
568
568
|
"devDependencies": {
|
|
569
|
-
"@types/node": "^26.1.
|
|
570
|
-
"@types/react": "^19.2.
|
|
571
|
-
"typescript": "
|
|
572
|
-
"typescript-7": "npm:typescript@^7.0.2"
|
|
569
|
+
"@types/node": "^26.1.2",
|
|
570
|
+
"@types/react": "^19.2.18",
|
|
571
|
+
"typescript": "^7.0.2"
|
|
573
572
|
}
|
|
574
573
|
}
|
|
575
574
|
|
|
@@ -20,9 +20,9 @@
|
|
|
20
20
|
"react": "^19.2.8"
|
|
21
21
|
},
|
|
22
22
|
"devDependencies": {
|
|
23
|
-
"@types/react": "^19.2.
|
|
23
|
+
"@types/react": "^19.2.18",
|
|
24
24
|
"esbuild": "^0.28.1",
|
|
25
|
-
"tsx": "^4.23.
|
|
25
|
+
"tsx": "^4.23.10",
|
|
26
26
|
"typescript": "^7.0.2"
|
|
27
27
|
}
|
|
28
28
|
}
|
|
@@ -36,10 +36,10 @@ import { useMemo } from "react";
|
|
|
36
36
|
import { Box, Text } from "ink";
|
|
37
37
|
import {
|
|
38
38
|
AssistantRuntimeProvider,
|
|
39
|
+
AuiConfig,
|
|
39
40
|
useLocalRuntime,
|
|
40
41
|
StatusBarPrimitive,
|
|
41
42
|
Tools,
|
|
42
|
-
useAui,
|
|
43
43
|
} from "@assistant-ui/react-ink";
|
|
44
44
|
import { Thread } from "./components/thread.js";
|
|
45
45
|
import { createScriptedAdapter, MODEL_NAME } from "./scripted-adapter.js";
|
|
@@ -57,12 +57,12 @@ const StatusBar = () => (
|
|
|
57
57
|
export const App = () => {
|
|
58
58
|
const adapter = useMemo(() => createScriptedAdapter(), []);
|
|
59
59
|
const runtime = useLocalRuntime(adapter);
|
|
60
|
-
const
|
|
60
|
+
const config = AuiConfig({
|
|
61
61
|
tools: Tools({ toolkit }),
|
|
62
62
|
});
|
|
63
63
|
|
|
64
64
|
return (
|
|
65
|
-
<AssistantRuntimeProvider
|
|
65
|
+
<AssistantRuntimeProvider runtime={runtime} config={config}>
|
|
66
66
|
<Box flexDirection="column" padding={1}>
|
|
67
67
|
<Box>
|
|
68
68
|
<Text bold color="cyan">
|
|
@@ -686,7 +686,12 @@ export async function action({ request }: Route.ActionArgs) {
|
|
|
686
686
|
|
|
687
687
|
```tsx
|
|
688
688
|
import { Thread } from "@/components/assistant-ui/thread";
|
|
689
|
-
import {
|
|
689
|
+
import {
|
|
690
|
+
useAui,
|
|
691
|
+
AuiProvider,
|
|
692
|
+
AuiConfig,
|
|
693
|
+
Suggestions,
|
|
694
|
+
} from "@assistant-ui/react";
|
|
690
695
|
|
|
691
696
|
export function meta() {
|
|
692
697
|
return [
|
|
@@ -696,7 +701,8 @@ export function meta() {
|
|
|
696
701
|
}
|
|
697
702
|
|
|
698
703
|
function ThreadWithSuggestions() {
|
|
699
|
-
const aui = useAui(
|
|
704
|
+
const aui = useAui();
|
|
705
|
+
const config = AuiConfig({
|
|
700
706
|
suggestions: Suggestions([
|
|
701
707
|
{
|
|
702
708
|
title: "Hello!",
|
|
@@ -711,7 +717,7 @@ function ThreadWithSuggestions() {
|
|
|
711
717
|
]),
|
|
712
718
|
});
|
|
713
719
|
return (
|
|
714
|
-
<AuiProvider
|
|
720
|
+
<AuiProvider extends={aui} config={config}>
|
|
715
721
|
<Thread />
|
|
716
722
|
</AuiProvider>
|
|
717
723
|
);
|
|
@@ -779,8 +785,8 @@ export default function Home() {
|
|
|
779
785
|
"clsx": "^2.1.1",
|
|
780
786
|
"eventsource-parser": "^3.1.0",
|
|
781
787
|
"isbot": "^5.2.1",
|
|
782
|
-
"lucide-react": "^1.
|
|
783
|
-
"openai": "^
|
|
788
|
+
"lucide-react": "^1.29.0",
|
|
789
|
+
"openai": "^7.4.0",
|
|
784
790
|
"react": "^19.2.8",
|
|
785
791
|
"react-dom": "^19.2.8",
|
|
786
792
|
"react-router": "^8.3.0",
|
|
@@ -790,14 +796,14 @@ export default function Home() {
|
|
|
790
796
|
"devDependencies": {
|
|
791
797
|
"@react-router/dev": "^8.3.0",
|
|
792
798
|
"@tailwindcss/vite": "^4.3.3",
|
|
793
|
-
"@types/node": "^26.1.
|
|
794
|
-
"@types/react": "^19.2.
|
|
795
|
-
"@types/react-dom": "^19.2.
|
|
799
|
+
"@types/node": "^26.1.2",
|
|
800
|
+
"@types/react": "^19.2.18",
|
|
801
|
+
"@types/react-dom": "^19.2.4",
|
|
796
802
|
"tailwindcss": "^4.3.3",
|
|
797
803
|
"tw-animate-css": "^1.4.0",
|
|
798
804
|
"typescript": "npm:@typescript/typescript6@^6.0.2",
|
|
799
805
|
"typescript-7": "npm:typescript@^7.0.2",
|
|
800
|
-
"vite": "^8.1
|
|
806
|
+
"vite": "^8.2.1",
|
|
801
807
|
"vite-tsconfig-paths": "^6.1.1"
|
|
802
808
|
}
|
|
803
809
|
}
|
|
@@ -514,23 +514,23 @@ export default withAui(nextConfig);
|
|
|
514
514
|
"start": "next start"
|
|
515
515
|
},
|
|
516
516
|
"dependencies": {
|
|
517
|
-
"@ai-sdk/openai": "^4.0.
|
|
518
|
-
"@ai-sdk/react": "^4.0.
|
|
517
|
+
"@ai-sdk/openai": "^4.0.34",
|
|
518
|
+
"@ai-sdk/react": "^4.0.59",
|
|
519
519
|
"@assistant-ui/react": "workspace:*",
|
|
520
520
|
"@assistant-ui/react-ai-sdk": "workspace:*",
|
|
521
521
|
"@assistant-ui/react-markdown": "workspace:*",
|
|
522
522
|
"@assistant-ui/store": "workspace:*",
|
|
523
523
|
"@assistant-ui/tap": "workspace:*",
|
|
524
524
|
"@assistant-ui/ui": "workspace:*",
|
|
525
|
-
"ai": "^7.0.
|
|
525
|
+
"ai": "^7.0.56",
|
|
526
526
|
"assistant-stream": "workspace:*",
|
|
527
527
|
"class-variance-authority": "^0.7.1",
|
|
528
528
|
"clsx": "^2.1.1",
|
|
529
|
-
"lucide-react": "^1.
|
|
530
|
-
"next": "^16.
|
|
529
|
+
"lucide-react": "^1.29.0",
|
|
530
|
+
"next": "^16.3.0",
|
|
531
531
|
"react": "^19.2.8",
|
|
532
532
|
"react-dom": "^19.2.8",
|
|
533
|
-
"redis": "^6.
|
|
533
|
+
"redis": "^6.2.0",
|
|
534
534
|
"tailwind-merge": "^3.6.0",
|
|
535
535
|
"zod": "^4.4.3"
|
|
536
536
|
},
|
|
@@ -538,14 +538,13 @@ export default withAui(nextConfig);
|
|
|
538
538
|
"@assistant-ui/next": "workspace:*",
|
|
539
539
|
"@assistant-ui/x-buildutils": "workspace:*",
|
|
540
540
|
"@tailwindcss/postcss": "^4.3.3",
|
|
541
|
-
"@types/node": "^26.1.
|
|
542
|
-
"@types/react": "^19.2.
|
|
543
|
-
"@types/react-dom": "^19.2.
|
|
544
|
-
"postcss": "^8.5.
|
|
541
|
+
"@types/node": "^26.1.2",
|
|
542
|
+
"@types/react": "^19.2.18",
|
|
543
|
+
"@types/react-dom": "^19.2.4",
|
|
544
|
+
"postcss": "^8.5.26",
|
|
545
545
|
"tailwindcss": "^4.3.3",
|
|
546
546
|
"tw-animate-css": "^1.4.0",
|
|
547
|
-
"typescript": "
|
|
548
|
-
"typescript-7": "npm:typescript@^7.0.2"
|
|
547
|
+
"typescript": "^7.0.2"
|
|
549
548
|
}
|
|
550
549
|
}
|
|
551
550
|
|
|
@@ -108,6 +108,7 @@ import { useState } from "react";
|
|
|
108
108
|
import {
|
|
109
109
|
useAui,
|
|
110
110
|
AuiProvider,
|
|
111
|
+
AuiConfig,
|
|
111
112
|
useAuiState,
|
|
112
113
|
useAuiEvent,
|
|
113
114
|
} from "@assistant-ui/store";
|
|
@@ -256,13 +257,13 @@ const EventLog = () => {
|
|
|
256
257
|
* Note: The fooList scope is also registered in foo-scope.ts as a default,
|
|
257
258
|
* but we're explicitly passing it here for clarity in the example.
|
|
258
259
|
*/
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
});
|
|
260
|
+
const config = AuiConfig({
|
|
261
|
+
fooList: FooListResource({ initialValues: true }),
|
|
262
|
+
});
|
|
263
263
|
|
|
264
|
+
export const ExampleApp = () => {
|
|
264
265
|
return (
|
|
265
|
-
<AuiProvider
|
|
266
|
+
<AuiProvider config={config}>
|
|
266
267
|
<div className="space-y-6">
|
|
267
268
|
<div className="rounded-lg border border-gray-200 bg-white p-4 shadow-sm dark:border-gray-700 dark:bg-gray-800">
|
|
268
269
|
<div className="flex items-center justify-between">
|
|
@@ -345,6 +346,7 @@ import {
|
|
|
345
346
|
useAui,
|
|
346
347
|
useAuiState,
|
|
347
348
|
AuiProvider,
|
|
349
|
+
AuiConfig,
|
|
348
350
|
useClientList,
|
|
349
351
|
Derived,
|
|
350
352
|
useAssistantEmit,
|
|
@@ -425,7 +427,8 @@ const FooProvider = ({
|
|
|
425
427
|
index: number;
|
|
426
428
|
children: ReactNode;
|
|
427
429
|
}) => {
|
|
428
|
-
const aui = useAui(
|
|
430
|
+
const aui = useAui();
|
|
431
|
+
const config = AuiConfig({
|
|
429
432
|
foo: Derived({
|
|
430
433
|
source: "fooList",
|
|
431
434
|
query: { index },
|
|
@@ -433,7 +436,11 @@ const FooProvider = ({
|
|
|
433
436
|
}),
|
|
434
437
|
});
|
|
435
438
|
|
|
436
|
-
return
|
|
439
|
+
return (
|
|
440
|
+
<AuiProvider extends={aui} config={config}>
|
|
441
|
+
{children}
|
|
442
|
+
</AuiProvider>
|
|
443
|
+
);
|
|
437
444
|
};
|
|
438
445
|
|
|
439
446
|
export const FooList = ({
|
|
@@ -494,7 +501,7 @@ export default withAui(nextConfig);
|
|
|
494
501
|
"dependencies": {
|
|
495
502
|
"@assistant-ui/store": "workspace:*",
|
|
496
503
|
"@assistant-ui/tap": "workspace:*",
|
|
497
|
-
"next": "^16.
|
|
504
|
+
"next": "^16.3.0",
|
|
498
505
|
"react": "^19.2.8",
|
|
499
506
|
"react-dom": "^19.2.8"
|
|
500
507
|
},
|
|
@@ -502,14 +509,13 @@ export default withAui(nextConfig);
|
|
|
502
509
|
"@assistant-ui/next": "workspace:*",
|
|
503
510
|
"@assistant-ui/x-buildutils": "workspace:*",
|
|
504
511
|
"@tailwindcss/postcss": "^4.3.3",
|
|
505
|
-
"@types/node": "^26.1.
|
|
506
|
-
"@types/react": "^19.2.
|
|
507
|
-
"@types/react-dom": "^19.2.
|
|
508
|
-
"postcss": "^8.5.
|
|
512
|
+
"@types/node": "^26.1.2",
|
|
513
|
+
"@types/react": "^19.2.18",
|
|
514
|
+
"@types/react-dom": "^19.2.4",
|
|
515
|
+
"postcss": "^8.5.26",
|
|
509
516
|
"tailwindcss": "^4.3.3",
|
|
510
517
|
"tw-animate-css": "^1.4.0",
|
|
511
|
-
"typescript": "
|
|
512
|
-
"typescript-7": "npm:typescript@^7.0.2"
|
|
518
|
+
"typescript": "^7.0.2"
|
|
513
519
|
}
|
|
514
520
|
}
|
|
515
521
|
|
|
@@ -615,14 +621,19 @@ const FooListResource = resource(
|
|
|
615
621
|
|
|
616
622
|
```typescript
|
|
617
623
|
const FooProvider = ({ index, children }) => {
|
|
618
|
-
const aui = useAui(
|
|
624
|
+
const aui = useAui();
|
|
625
|
+
const config = AuiConfig({
|
|
619
626
|
foo: Derived({
|
|
620
627
|
source: "fooList",
|
|
621
628
|
query: { index },
|
|
622
629
|
get: (aui) => aui.fooList().foo({ index }),
|
|
623
630
|
}),
|
|
624
631
|
});
|
|
625
|
-
return
|
|
632
|
+
return (
|
|
633
|
+
<AuiProvider extends={aui} config={config}>
|
|
634
|
+
{children}
|
|
635
|
+
</AuiProvider>
|
|
636
|
+
);
|
|
626
637
|
};
|
|
627
638
|
```
|
|
628
639
|
|
|
@@ -65,13 +65,13 @@
|
|
|
65
65
|
"@assistant-ui/react": "workspace:*",
|
|
66
66
|
"@assistant-ui/react-markdown": "workspace:*",
|
|
67
67
|
"@tailwindcss/vite": "^4.3.3",
|
|
68
|
-
"@tanstack/react-router": "^1.170.
|
|
69
|
-
"@tanstack/react-start": "^1.168.
|
|
68
|
+
"@tanstack/react-router": "^1.170.21",
|
|
69
|
+
"@tanstack/react-start": "^1.168.38",
|
|
70
70
|
"class-variance-authority": "^0.7.1",
|
|
71
71
|
"clsx": "^2.1.1",
|
|
72
|
-
"lucide-react": "^1.
|
|
72
|
+
"lucide-react": "^1.29.0",
|
|
73
73
|
"nitro": "^3.0.260311-beta",
|
|
74
|
-
"openai": "^
|
|
74
|
+
"openai": "^7.4.0",
|
|
75
75
|
"react": "^19.2.8",
|
|
76
76
|
"react-dom": "^19.2.8",
|
|
77
77
|
"remark-gfm": "^4.0.1",
|
|
@@ -81,12 +81,12 @@
|
|
|
81
81
|
},
|
|
82
82
|
"devDependencies": {
|
|
83
83
|
"@assistant-ui/x-buildutils": "workspace:*",
|
|
84
|
-
"@types/node": "^26.1.
|
|
85
|
-
"@types/react": "^19.2.
|
|
86
|
-
"@types/react-dom": "^19.2.
|
|
87
|
-
"@vitejs/plugin-react": "^6.0.
|
|
84
|
+
"@types/node": "^26.1.2",
|
|
85
|
+
"@types/react": "^19.2.18",
|
|
86
|
+
"@types/react-dom": "^19.2.4",
|
|
87
|
+
"@vitejs/plugin-react": "^6.0.5",
|
|
88
88
|
"typescript": "^7.0.2",
|
|
89
|
-
"vite": "^8.1
|
|
89
|
+
"vite": "^8.2.1"
|
|
90
90
|
}
|
|
91
91
|
}
|
|
92
92
|
|
|
@@ -321,13 +321,19 @@ function RootDocument({ children }: { children: React.ReactNode }) {
|
|
|
321
321
|
```tsx
|
|
322
322
|
import { createFileRoute } from "@tanstack/react-router";
|
|
323
323
|
import { Thread } from "@/components/assistant-ui/thread";
|
|
324
|
-
import {
|
|
324
|
+
import {
|
|
325
|
+
useAui,
|
|
326
|
+
AuiProvider,
|
|
327
|
+
AuiConfig,
|
|
328
|
+
Suggestions,
|
|
329
|
+
} from "@assistant-ui/react";
|
|
325
330
|
import { MyRuntimeProvider } from "@/components/MyRuntimeProvider";
|
|
326
331
|
|
|
327
332
|
export const Route = createFileRoute("/")({ component: App });
|
|
328
333
|
|
|
329
334
|
function ThreadWithSuggestions() {
|
|
330
|
-
const aui = useAui(
|
|
335
|
+
const aui = useAui();
|
|
336
|
+
const config = AuiConfig({
|
|
331
337
|
suggestions: Suggestions([
|
|
332
338
|
{
|
|
333
339
|
title: "Hello!",
|
|
@@ -342,7 +348,7 @@ function ThreadWithSuggestions() {
|
|
|
342
348
|
]),
|
|
343
349
|
});
|
|
344
350
|
return (
|
|
345
|
-
<AuiProvider
|
|
351
|
+
<AuiProvider extends={aui} config={config}>
|
|
346
352
|
<Thread />
|
|
347
353
|
</AuiProvider>
|
|
348
354
|
);
|