@assistant-ui/mcp-docs-server 0.1.39 → 0.2.0

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.
Files changed (136) hide show
  1. package/.docs/organized/code-examples/waterfall.md +7 -7
  2. package/.docs/organized/code-examples/with-a2a.md +7 -7
  3. package/.docs/organized/code-examples/with-ag-ui.md +8 -8
  4. package/.docs/organized/code-examples/with-ai-sdk-v7.md +9 -9
  5. package/.docs/organized/code-examples/with-artifacts.md +463 -138
  6. package/.docs/organized/code-examples/with-assistant-transport.md +7 -7
  7. package/.docs/organized/code-examples/with-browser-extension.md +6 -6
  8. package/.docs/organized/code-examples/with-chain-of-thought.md +11 -11
  9. package/.docs/organized/code-examples/with-cloud-standalone.md +9 -9
  10. package/.docs/organized/code-examples/with-cloud.md +9 -9
  11. package/.docs/organized/code-examples/with-custom-thread-list.md +9 -9
  12. package/.docs/organized/code-examples/with-elevenlabs-conversational.md +11 -11
  13. package/.docs/organized/code-examples/with-elevenlabs-scribe.md +11 -11
  14. package/.docs/organized/code-examples/with-eve.md +8 -8
  15. package/.docs/organized/code-examples/with-expo.md +26 -46
  16. package/.docs/organized/code-examples/with-external-store.md +7 -7
  17. package/.docs/organized/code-examples/with-ffmpeg.md +9 -9
  18. package/.docs/organized/code-examples/with-generative-ui.md +10 -10
  19. package/.docs/organized/code-examples/with-google-adk.md +8 -8
  20. package/.docs/organized/code-examples/with-heat-graph.md +6 -6
  21. package/.docs/organized/code-examples/with-image-generation.md +9 -9
  22. package/.docs/organized/code-examples/with-interactables.md +9 -9
  23. package/.docs/organized/code-examples/with-langchain.md +9 -9
  24. package/.docs/organized/code-examples/with-langgraph.md +9 -9
  25. package/.docs/organized/code-examples/with-livekit.md +11 -11
  26. package/.docs/organized/code-examples/with-mcp.md +28 -23
  27. package/.docs/organized/code-examples/with-opencode.md +8 -11
  28. package/.docs/organized/code-examples/with-pi.md +14 -14
  29. package/.docs/organized/code-examples/with-react-hook-form.md +10 -10
  30. package/.docs/organized/code-examples/with-react-ink-web.md +5 -5
  31. package/.docs/organized/code-examples/with-react-ink.md +2 -2
  32. package/.docs/organized/code-examples/with-react-router.md +11 -11
  33. package/.docs/organized/code-examples/with-resumable-stream.md +10 -10
  34. package/.docs/organized/code-examples/with-store.md +6 -6
  35. package/.docs/organized/code-examples/with-tanstack.md +9 -9
  36. package/.docs/organized/code-examples/with-tap-runtime.md +7 -7
  37. package/.docs/organized/code-examples/with-virtualized-thread.md +8 -8
  38. package/.docs/raw/docs/(docs)/cli.mdx +2 -0
  39. package/.docs/raw/docs/(docs)/devtools.mdx +7 -2
  40. package/.docs/raw/docs/(reference)/api-reference/generative-ui/a2ui.mdx +40 -0
  41. package/.docs/raw/docs/(reference)/api-reference/generative-ui/index.mdx +3 -0
  42. package/.docs/raw/docs/(reference)/api-reference/hooks/primitives.mdx +19 -420
  43. package/.docs/raw/docs/(reference)/api-reference/hooks/state.mdx +4 -1
  44. package/.docs/raw/docs/(reference)/api-reference/integrations/react-ai-sdk.mdx +21 -0
  45. package/.docs/raw/docs/(reference)/api-reference/model-context/context.mdx +1 -9
  46. package/.docs/raw/docs/(reference)/api-reference/primitives/assistant-if.mdx +1 -18
  47. package/.docs/raw/docs/cloud/langgraph.mdx +1 -1
  48. package/.docs/raw/docs/copilots/model-context.mdx +1 -1
  49. package/.docs/raw/docs/copilots/motivation.mdx +1 -1
  50. package/.docs/raw/docs/guides/attachments.mdx +3 -3
  51. package/.docs/raw/docs/guides/branching.mdx +2 -2
  52. package/.docs/raw/docs/guides/context-api.mdx +89 -111
  53. package/.docs/raw/docs/guides/editing.mdx +5 -5
  54. package/.docs/raw/docs/guides/electron.mdx +369 -0
  55. package/.docs/raw/docs/guides/index.mdx +10 -0
  56. package/.docs/raw/docs/guides/quoting.mdx +3 -3
  57. package/.docs/raw/docs/guides/resumable-stream-deployment.mdx +2 -2
  58. package/.docs/raw/docs/ink/hooks.mdx +3 -3
  59. package/.docs/raw/docs/ink/primitives.mdx +14 -7
  60. package/.docs/raw/docs/integrations/auth/better-auth.mdx +2 -2
  61. package/.docs/raw/docs/integrations/auth/clerk.mdx +2 -2
  62. package/.docs/raw/docs/integrations/auth/next-auth.mdx +3 -3
  63. package/.docs/raw/docs/integrations/observability/langsmith.mdx +1 -1
  64. package/.docs/raw/docs/integrations/persistence/custom-adapter.mdx +36 -9
  65. package/.docs/raw/docs/migrations/v0-15.mdx +156 -0
  66. package/.docs/raw/docs/primitives/composer.mdx +1 -1
  67. package/.docs/raw/docs/primitives/thread-list.mdx +2 -2
  68. package/.docs/raw/docs/react-native/hooks.mdx +3 -3
  69. package/.docs/raw/docs/react-native/index.mdx +2 -2
  70. package/.docs/raw/docs/react-native/primitives.mdx +39 -5
  71. package/.docs/raw/docs/runtimes/ai-sdk/overview.mdx +3 -3
  72. package/.docs/raw/docs/runtimes/ai-sdk/v4-legacy.mdx +4 -4
  73. package/.docs/raw/docs/runtimes/ai-sdk/v5-legacy.mdx +4 -4
  74. package/.docs/raw/docs/runtimes/ai-sdk/v6-legacy.mdx +4 -4
  75. package/.docs/raw/docs/runtimes/ai-sdk/v7.mdx +2 -2
  76. package/.docs/raw/docs/runtimes/concepts/threads.mdx +10 -10
  77. package/.docs/raw/docs/runtimes/custom/assistant-transport.mdx +2 -2
  78. package/.docs/raw/docs/runtimes/custom/external-store.mdx +1 -1
  79. package/.docs/raw/docs/runtimes/custom/local-runtime.mdx +3 -3
  80. package/.docs/raw/docs/runtimes/langchain.mdx +2 -2
  81. package/.docs/raw/docs/runtimes/langgraph/overview.mdx +1 -1
  82. package/.docs/raw/docs/runtimes/opencode/hooks.mdx +3 -1
  83. package/.docs/raw/docs/tools/a2ui.mdx +107 -0
  84. package/.docs/raw/docs/tools/interactables-legacy.mdx +4 -4
  85. package/.docs/raw/docs/tools/interactables.mdx +3 -3
  86. package/.docs/raw/docs/tools/mcp-apps.mdx +61 -2
  87. package/.docs/raw/docs/tools/user-managed-mcp.mdx +52 -7
  88. package/.docs/raw/docs/ui/follow-up-suggestions.mdx +2 -0
  89. package/.docs/raw/docs/ui/model-selector.mdx +1 -1
  90. package/.docs/raw/docs/ui/part-grouping.mdx +0 -4
  91. package/.docs/raw/docs/ui/reasoning.mdx +1 -1
  92. package/dist/index.d.ts +1 -1
  93. package/dist/index.js +2 -2
  94. package/dist/index.js.map +1 -1
  95. package/dist/prepare-docs/code-examples.js.map +1 -1
  96. package/dist/prepare-docs/prepare.d.ts +1 -1
  97. package/dist/stdio.d.ts +1 -1
  98. package/dist/tools/docs.d.ts +6 -10
  99. package/dist/tools/docs.d.ts.map +1 -1
  100. package/dist/tools/docs.js +2 -2
  101. package/dist/tools/docs.js.map +1 -1
  102. package/dist/tools/examples.d.ts +4 -8
  103. package/dist/tools/examples.d.ts.map +1 -1
  104. package/dist/tools/examples.js +2 -2
  105. package/dist/tools/examples.js.map +1 -1
  106. package/dist/tools/resources.d.ts +1 -1
  107. package/dist/tools/resources.d.ts.map +1 -1
  108. package/dist/tools/resources.js +1 -1
  109. package/dist/tools/resources.js.map +1 -1
  110. package/dist/tools/search.d.ts +4 -10
  111. package/dist/tools/search.d.ts.map +1 -1
  112. package/dist/tools/search.js +2 -2
  113. package/dist/tools/search.js.map +1 -1
  114. package/dist/tools/tests/mcp-test-client.d.ts +15 -0
  115. package/dist/tools/tests/mcp-test-client.d.ts.map +1 -0
  116. package/dist/tools/tests/mcp-test-client.js +68 -0
  117. package/dist/tools/tests/mcp-test-client.js.map +1 -0
  118. package/dist/tools/tests/test-setup.d.ts.map +1 -1
  119. package/dist/tools/xulux-templates.d.ts +9 -23
  120. package/dist/tools/xulux-templates.d.ts.map +1 -1
  121. package/dist/tools/xulux-templates.js +4 -4
  122. package/dist/tools/xulux-templates.js.map +1 -1
  123. package/dist/utils/logger.d.ts.map +1 -1
  124. package/dist/utils/security.js.map +1 -1
  125. package/package.json +4 -3
  126. package/src/index.ts +2 -2
  127. package/src/tools/docs.ts +2 -2
  128. package/src/tools/examples.ts +2 -2
  129. package/src/tools/resources.ts +1 -4
  130. package/src/tools/search.ts +2 -2
  131. package/src/tools/tests/completions.test.ts +40 -26
  132. package/src/tools/tests/integration.test.ts +3 -4
  133. package/src/tools/tests/mcp-protocol.test.ts +160 -175
  134. package/src/tools/tests/mcp-test-client.ts +111 -0
  135. package/src/tools/tests/resources.test.ts +97 -66
  136. package/src/tools/xulux-templates.ts +4 -4
@@ -449,22 +449,22 @@ export default withAui(nextConfig);
449
449
  "@assistant-ui/ui": "workspace:*",
450
450
  "class-variance-authority": "^0.7.1",
451
451
  "clsx": "^2.1.1",
452
- "lucide-react": "^1.24.0",
453
- "next": "^16.2.10",
454
- "react": "^19.2.7",
455
- "react-dom": "^19.2.7",
452
+ "lucide-react": "^1.26.0",
453
+ "next": "^16.2.11",
454
+ "react": "^19.2.8",
455
+ "react-dom": "^19.2.8",
456
456
  "tailwind-merge": "^3.6.0",
457
457
  "zod": "^4.4.3"
458
458
  },
459
459
  "devDependencies": {
460
460
  "@assistant-ui/next": "workspace:*",
461
461
  "@assistant-ui/x-buildutils": "workspace:*",
462
- "@tailwindcss/postcss": "^4.3.2",
462
+ "@tailwindcss/postcss": "^4.3.3",
463
463
  "@types/node": "^26.1.1",
464
464
  "@types/react": "^19.2.17",
465
465
  "@types/react-dom": "^19.2.3",
466
- "postcss": "^8.5.19",
467
- "tailwindcss": "^4.3.2",
466
+ "postcss": "^8.5.23",
467
+ "tailwindcss": "^4.3.3",
468
468
  "tw-animate-css": "^1.4.0",
469
469
  "typescript": "npm:@typescript/typescript6@^6.0.2",
470
470
  "typescript-7": "npm:typescript@^7.0.2"
@@ -236,20 +236,20 @@ export function MyThread() {
236
236
  "@assistant-ui/ui": "workspace:*",
237
237
  "class-variance-authority": "^0.7.1",
238
238
  "clsx": "^2.1.1",
239
- "lucide-react": "^1.24.0",
240
- "react": "^19.2.7",
241
- "react-dom": "^19.2.7",
239
+ "lucide-react": "^1.26.0",
240
+ "react": "^19.2.8",
241
+ "react-dom": "^19.2.8",
242
242
  "tailwind-merge": "^3.6.0"
243
243
  },
244
244
  "devDependencies": {
245
- "@tailwindcss/postcss": "^4.3.2",
245
+ "@tailwindcss/postcss": "^4.3.3",
246
246
  "@types/chrome": "^0.2.2",
247
247
  "@types/node": "^26.1.1",
248
248
  "@types/react": "^19.2.17",
249
249
  "@types/react-dom": "^19.2.3",
250
250
  "esbuild": "^0.28.1",
251
- "postcss": "^8.5.19",
252
- "tailwindcss": "^4.3.2",
251
+ "postcss": "^8.5.23",
252
+ "tailwindcss": "^4.3.3",
253
253
  "tsx": "^4.23.1",
254
254
  "tw-animate-css": "^1.4.0",
255
255
  "typescript": "^7.0.2"
@@ -429,7 +429,7 @@ import {
429
429
  MessagePrimitive,
430
430
  SuggestionPrimitive,
431
431
  ThreadPrimitive,
432
- useThread,
432
+ useAuiState,
433
433
  } from "@assistant-ui/react";
434
434
  import { ArrowDownIcon, ArrowUpIcon, SquareIcon } from "lucide-react";
435
435
 
@@ -588,7 +588,7 @@ const SourcesLayout: FC<PropsWithChildren> = ({ children }) => {
588
588
  };
589
589
 
590
590
  const Composer: FC = () => {
591
- const isRunning = useThread((state) => state.isRunning);
591
+ const isRunning = useAuiState((s) => s.thread.isRunning);
592
592
 
593
593
  return (
594
594
  <ComposerPrimitive.Root className="border-input bg-background has-[textarea:focus-visible]:border-foreground/60 flex w-full flex-col rounded-2xl border px-1 pt-2 transition-colors outline-none">
@@ -800,30 +800,30 @@ export default withAui(nextConfig);
800
800
  "start": "next start"
801
801
  },
802
802
  "dependencies": {
803
- "@ai-sdk/openai": "^4.0.14",
803
+ "@ai-sdk/openai": "^4.0.20",
804
804
  "@assistant-ui/react": "workspace:*",
805
805
  "@assistant-ui/react-ai-sdk": "workspace:*",
806
806
  "@assistant-ui/react-markdown": "workspace:*",
807
807
  "@assistant-ui/ui": "workspace:*",
808
- "ai": "^7.0.28",
808
+ "ai": "^7.0.37",
809
809
  "class-variance-authority": "^0.7.1",
810
810
  "clsx": "^2.1.1",
811
- "lucide-react": "^1.24.0",
812
- "next": "^16.2.10",
813
- "react": "^19.2.7",
814
- "react-dom": "^19.2.7",
811
+ "lucide-react": "^1.26.0",
812
+ "next": "^16.2.11",
813
+ "react": "^19.2.8",
814
+ "react-dom": "^19.2.8",
815
815
  "tailwind-merge": "^3.6.0",
816
816
  "zod": "^4.4.3"
817
817
  },
818
818
  "devDependencies": {
819
819
  "@assistant-ui/next": "workspace:*",
820
820
  "@assistant-ui/x-buildutils": "workspace:*",
821
- "@tailwindcss/postcss": "^4.3.2",
821
+ "@tailwindcss/postcss": "^4.3.3",
822
822
  "@types/node": "^26.1.1",
823
823
  "@types/react": "^19.2.17",
824
824
  "@types/react-dom": "^19.2.3",
825
- "postcss": "^8.5.19",
826
- "tailwindcss": "^4.3.2",
825
+ "postcss": "^8.5.23",
826
+ "tailwindcss": "^4.3.3",
827
827
  "tw-animate-css": "^1.4.0",
828
828
  "typescript": "npm:@typescript/typescript6@^6.0.2",
829
829
  "typescript-7": "npm:typescript@^7.0.2"
@@ -568,26 +568,26 @@ export default withAui(nextConfig);
568
568
  "start": "next start"
569
569
  },
570
570
  "dependencies": {
571
- "@ai-sdk/openai": "^4.0.14",
571
+ "@ai-sdk/openai": "^4.0.20",
572
572
  "@assistant-ui/cloud-ai-sdk": "workspace:*",
573
- "ai": "^7.0.28",
573
+ "ai": "^7.0.37",
574
574
  "class-variance-authority": "^0.7.1",
575
575
  "clsx": "^2.1.1",
576
- "lucide-react": "^1.24.0",
577
- "next": "^16.2.10",
578
- "react": "^19.2.7",
579
- "react-dom": "^19.2.7",
576
+ "lucide-react": "^1.26.0",
577
+ "next": "^16.2.11",
578
+ "react": "^19.2.8",
579
+ "react-dom": "^19.2.8",
580
580
  "tailwind-merge": "^3.6.0"
581
581
  },
582
582
  "devDependencies": {
583
583
  "@assistant-ui/next": "workspace:*",
584
584
  "@assistant-ui/x-buildutils": "workspace:*",
585
- "@tailwindcss/postcss": "^4.3.2",
585
+ "@tailwindcss/postcss": "^4.3.3",
586
586
  "@types/node": "^26.1.1",
587
587
  "@types/react": "^19.2.17",
588
588
  "@types/react-dom": "^19.2.3",
589
- "postcss": "^8.5.19",
590
- "tailwindcss": "^4.3.2",
589
+ "postcss": "^8.5.23",
590
+ "tailwindcss": "^4.3.3",
591
591
  "tw-animate-css": "^1.4.0",
592
592
  "typescript": "npm:@typescript/typescript6@^6.0.2",
593
593
  "typescript-7": "npm:typescript@^7.0.2"
@@ -326,29 +326,29 @@ export default withAui(nextConfig);
326
326
  "start": "next start"
327
327
  },
328
328
  "dependencies": {
329
- "@ai-sdk/openai": "^4.0.14",
329
+ "@ai-sdk/openai": "^4.0.20",
330
330
  "@assistant-ui/react": "workspace:*",
331
331
  "@assistant-ui/react-ai-sdk": "workspace:*",
332
332
  "@assistant-ui/react-markdown": "workspace:*",
333
333
  "@assistant-ui/ui": "workspace:*",
334
- "ai": "^7.0.28",
334
+ "ai": "^7.0.37",
335
335
  "class-variance-authority": "^0.7.1",
336
336
  "clsx": "^2.1.1",
337
- "lucide-react": "^1.24.0",
338
- "next": "^16.2.10",
339
- "react": "^19.2.7",
340
- "react-dom": "^19.2.7",
337
+ "lucide-react": "^1.26.0",
338
+ "next": "^16.2.11",
339
+ "react": "^19.2.8",
340
+ "react-dom": "^19.2.8",
341
341
  "tailwind-merge": "^3.6.0"
342
342
  },
343
343
  "devDependencies": {
344
344
  "@assistant-ui/next": "workspace:*",
345
345
  "@assistant-ui/x-buildutils": "workspace:*",
346
- "@tailwindcss/postcss": "^4.3.2",
346
+ "@tailwindcss/postcss": "^4.3.3",
347
347
  "@types/node": "^26.1.1",
348
348
  "@types/react": "^19.2.17",
349
349
  "@types/react-dom": "^19.2.3",
350
- "postcss": "^8.5.19",
351
- "tailwindcss": "^4.3.2",
350
+ "postcss": "^8.5.23",
351
+ "tailwindcss": "^4.3.3",
352
352
  "tw-animate-css": "^1.4.0",
353
353
  "typescript": "npm:@typescript/typescript6@^6.0.2",
354
354
  "typescript-7": "npm:typescript@^7.0.2"
@@ -460,31 +460,31 @@ export default withAui(nextConfig);
460
460
  "start": "next start"
461
461
  },
462
462
  "dependencies": {
463
- "@ai-sdk/openai": "^4.0.14",
463
+ "@ai-sdk/openai": "^4.0.20",
464
464
  "@assistant-ui/react": "workspace:*",
465
465
  "@assistant-ui/react-ai-sdk": "workspace:*",
466
466
  "@assistant-ui/react-markdown": "workspace:*",
467
467
  "@assistant-ui/ui": "workspace:*",
468
- "ai": "^7.0.28",
468
+ "ai": "^7.0.37",
469
469
  "assistant-stream": "workspace:*",
470
470
  "class-variance-authority": "^0.7.1",
471
471
  "clsx": "^2.1.1",
472
- "lucide-react": "^1.24.0",
473
- "next": "^16.2.10",
474
- "react": "^19.2.7",
475
- "react-dom": "^19.2.7",
472
+ "lucide-react": "^1.26.0",
473
+ "next": "^16.2.11",
474
+ "react": "^19.2.8",
475
+ "react-dom": "^19.2.8",
476
476
  "tailwind-merge": "^3.6.0",
477
477
  "zod": "^4.4.3"
478
478
  },
479
479
  "devDependencies": {
480
480
  "@assistant-ui/next": "workspace:*",
481
481
  "@assistant-ui/x-buildutils": "workspace:*",
482
- "@tailwindcss/postcss": "^4.3.2",
482
+ "@tailwindcss/postcss": "^4.3.3",
483
483
  "@types/node": "^26.1.1",
484
484
  "@types/react": "^19.2.17",
485
485
  "@types/react-dom": "^19.2.3",
486
- "postcss": "^8.5.19",
487
- "tailwindcss": "^4.3.2",
486
+ "postcss": "^8.5.23",
487
+ "tailwindcss": "^4.3.3",
488
488
  "tw-animate-css": "^1.4.0",
489
489
  "typescript": "npm:@typescript/typescript6@^6.0.2",
490
490
  "typescript-7": "npm:typescript@^7.0.2"
@@ -439,25 +439,25 @@ export default withAui(nextConfig);
439
439
  "version": "0.0.0",
440
440
  "type": "module",
441
441
  "dependencies": {
442
- "@ai-sdk/openai": "^4.0.14",
443
- "@ai-sdk/react": "^4.0.30",
442
+ "@ai-sdk/openai": "^4.0.20",
443
+ "@ai-sdk/react": "^4.0.40",
444
444
  "@assistant-ui/react": "workspace:^",
445
445
  "@assistant-ui/react-ai-sdk": "workspace:*",
446
446
  "@assistant-ui/react-markdown": "workspace:^",
447
447
  "@assistant-ui/ui": "workspace:*",
448
- "@elevenlabs/client": "^1.15.0",
449
- "@tailwindcss/postcss": "^4.3.2",
450
- "ai": "^7.0.28",
448
+ "@elevenlabs/client": "^1.15.2",
449
+ "@tailwindcss/postcss": "^4.3.3",
450
+ "ai": "^7.0.37",
451
451
  "class-variance-authority": "^0.7.1",
452
452
  "clsx": "^2.1.1",
453
- "lucide-react": "^1.24.0",
453
+ "lucide-react": "^1.26.0",
454
454
  "motion": "^12.42.2",
455
- "next": "^16.2.10",
456
- "postcss": "^8.5.19",
457
- "react": "^19.2.7",
458
- "react-dom": "^19.2.7",
455
+ "next": "^16.2.11",
456
+ "postcss": "^8.5.23",
457
+ "react": "^19.2.8",
458
+ "react-dom": "^19.2.8",
459
459
  "tailwind-merge": "^3.6.0",
460
- "tailwindcss": "^4.3.2",
460
+ "tailwindcss": "^4.3.3",
461
461
  "zod": "^4.4.3"
462
462
  },
463
463
  "devDependencies": {
@@ -562,25 +562,25 @@ export default withAui(nextConfig);
562
562
  "version": "0.0.0",
563
563
  "type": "module",
564
564
  "dependencies": {
565
- "@ai-sdk/openai": "^4.0.14",
566
- "@ai-sdk/react": "^4.0.30",
565
+ "@ai-sdk/openai": "^4.0.20",
566
+ "@ai-sdk/react": "^4.0.40",
567
567
  "@assistant-ui/react": "workspace:^",
568
568
  "@assistant-ui/react-ai-sdk": "workspace:*",
569
569
  "@assistant-ui/react-markdown": "workspace:^",
570
570
  "@assistant-ui/ui": "workspace:*",
571
- "@elevenlabs/client": "^1.15.0",
572
- "@tailwindcss/postcss": "^4.3.2",
573
- "ai": "^7.0.28",
571
+ "@elevenlabs/client": "^1.15.2",
572
+ "@tailwindcss/postcss": "^4.3.3",
573
+ "ai": "^7.0.37",
574
574
  "class-variance-authority": "^0.7.1",
575
575
  "clsx": "^2.1.1",
576
- "lucide-react": "^1.24.0",
576
+ "lucide-react": "^1.26.0",
577
577
  "motion": "^12.42.2",
578
- "next": "^16.2.10",
579
- "postcss": "^8.5.19",
580
- "react": "^19.2.7",
581
- "react-dom": "^19.2.7",
578
+ "next": "^16.2.11",
579
+ "postcss": "^8.5.23",
580
+ "react": "^19.2.8",
581
+ "react-dom": "^19.2.8",
582
582
  "tailwind-merge": "^3.6.0",
583
- "tailwindcss": "^4.3.2",
583
+ "tailwindcss": "^4.3.3",
584
584
  "zod": "^4.4.3"
585
585
  },
586
586
  "devDependencies": {
@@ -281,22 +281,22 @@ export default withEve(withAui(nextConfig));
281
281
  "@assistant-ui/ui": "workspace:*",
282
282
  "class-variance-authority": "^0.7.1",
283
283
  "clsx": "^2.1.1",
284
- "eve": "^0.24.3",
285
- "lucide-react": "^1.24.0",
286
- "next": "^16.2.10",
287
- "react": "^19.2.7",
288
- "react-dom": "^19.2.7",
284
+ "eve": "^0.27.6",
285
+ "lucide-react": "^1.26.0",
286
+ "next": "^16.2.11",
287
+ "react": "^19.2.8",
288
+ "react-dom": "^19.2.8",
289
289
  "tailwind-merge": "^3.6.0"
290
290
  },
291
291
  "devDependencies": {
292
292
  "@assistant-ui/next": "workspace:*",
293
293
  "@assistant-ui/x-buildutils": "workspace:*",
294
- "@tailwindcss/postcss": "^4.3.2",
294
+ "@tailwindcss/postcss": "^4.3.3",
295
295
  "@types/node": "^26.1.1",
296
296
  "@types/react": "^19.2.17",
297
297
  "@types/react-dom": "^19.2.3",
298
- "postcss": "^8.5.19",
299
- "tailwindcss": "^4.3.2",
298
+ "postcss": "^8.5.23",
299
+ "tailwindcss": "^4.3.3",
300
300
  "tw-animate-css": "^1.4.0",
301
301
  "typescript": "npm:@typescript/typescript6@^6.0.2",
302
302
  "typescript-7": "npm:typescript@^7.0.2"
@@ -117,7 +117,7 @@ function NewChatButton() {
117
117
  hitSlop={8}
118
118
  onPress={() => {
119
119
  haptics.selection();
120
- aui.threads().switchToNewThread();
120
+ aui.threads.switchToNewThread();
121
121
  }}
122
122
  style={{ marginRight: 16 }}
123
123
  >
@@ -362,7 +362,7 @@ function AttachButton() {
362
362
  for (const asset of result.assets) {
363
363
  // iOS may report HEIC, which OpenAI rejects; normalize to JPEG.
364
364
  const dataUrl = `data:image/jpeg;base64,${asset.base64}`;
365
- await aui.composer().addAttachment({
365
+ await aui.composer.addAttachment({
366
366
  name: asset.fileName ?? "image.jpg",
367
367
  contentType: "image/jpeg",
368
368
  type: "image",
@@ -853,14 +853,12 @@ const styles = StyleSheet.create({
853
853
  ## components/assistant-ui/thread.tsx
854
854
 
855
855
  ```tsx
856
- import { useRef } from "react";
857
856
  import {
858
857
  View,
859
858
  Text,
860
859
  StyleSheet,
861
860
  KeyboardAvoidingView,
862
861
  Platform,
863
- type FlatList,
864
862
  } from "react-native";
865
863
  import { useSafeAreaInsets } from "react-native-safe-area-context";
866
864
  import { MessageBubble } from "./message";
@@ -915,37 +913,19 @@ function EmptyState() {
915
913
  }
916
914
 
917
915
  function ChatMessages() {
918
- const listRef = useRef<FlatList>(null);
919
- const nearBottom = useRef(true);
920
-
921
916
  return (
922
917
  <>
923
918
  <ThreadPrimitive.Empty>
924
919
  <EmptyState />
925
920
  </ThreadPrimitive.Empty>
926
921
  <ThreadPrimitive.If empty={false}>
927
- <ThreadPrimitive.Messages
928
- // Messages isn't a forwardRef component, but it spreads extra props
929
- // onto its FlatList, so React 19 still forwards this ref to the list.
930
- {...({ ref: listRef } as object)}
922
+ <ThreadPrimitive.MessagesFlatList
931
923
  style={styles.flex}
932
924
  contentContainerStyle={styles.messageList}
933
925
  showsVerticalScrollIndicator={false}
934
- scrollEventThrottle={32}
935
- onScroll={(e) => {
936
- const { contentOffset, contentSize, layoutMeasurement } =
937
- e.nativeEvent;
938
- nearBottom.current =
939
- contentOffset.y + layoutMeasurement.height >=
940
- contentSize.height - 48;
941
- }}
942
- onContentSizeChange={() => {
943
- if (nearBottom.current)
944
- listRef.current?.scrollToEnd({ animated: true });
945
- }}
946
926
  >
947
927
  {() => <MessageBubble />}
948
- </ThreadPrimitive.Messages>
928
+ </ThreadPrimitive.MessagesFlatList>
949
929
  </ThreadPrimitive.If>
950
930
  </>
951
931
  );
@@ -1470,7 +1450,7 @@ export function ThreadListDrawer({ navigation }: DrawerContentComponentProps) {
1470
1450
  <Pressable
1471
1451
  onPressIn={haptics.selection}
1472
1452
  onPress={() => {
1473
- aui.threads().switchToNewThread();
1453
+ aui.threads.switchToNewThread();
1474
1454
  navigation.closeDrawer();
1475
1455
  }}
1476
1456
  style={({ pressed }) => [
@@ -1567,7 +1547,7 @@ export function ThreadListItem({ onSelect }: { onSelect: () => void }) {
1567
1547
  <Pressable
1568
1548
  onPressIn={haptics.selection}
1569
1549
  onPress={() => {
1570
- aui.threadListItem().switchTo();
1550
+ aui.threadListItem.switchTo();
1571
1551
  onSelect();
1572
1552
  }}
1573
1553
  style={({ pressed }) => [
@@ -1955,35 +1935,35 @@ module.exports = withAui(config);
1955
1935
  "export:web": "expo export --platform web && node scripts/flatten-assets.mjs"
1956
1936
  },
1957
1937
  "dependencies": {
1958
- "@ai-sdk/openai": "^4.0.14",
1959
- "@ai-sdk/react": "^4.0.30",
1938
+ "@ai-sdk/openai": "^4.0.20",
1939
+ "@ai-sdk/react": "^4.0.40",
1960
1940
  "@assistant-ui/react-ai-sdk": "workspace:*",
1961
1941
  "@assistant-ui/react-native": "workspace:*",
1962
1942
  "@expo/vector-icons": "^15.1.1",
1963
1943
  "@react-navigation/drawer": "7.9.4",
1964
1944
  "@react-navigation/native": "7.1.33",
1965
- "ai": "^7.0.28",
1966
- "expo": "~57.0.4",
1967
- "expo-clipboard": "~57.0.0",
1968
- "expo-constants": "~57.0.3",
1969
- "expo-font": "~57.0.0",
1970
- "expo-haptics": "~57.0.0",
1971
- "expo-image": "~57.0.0",
1972
- "expo-image-picker": "~57.0.2",
1973
- "expo-linking": "~57.0.2",
1974
- "expo-router": "~57.0.4",
1975
- "expo-server": "~57.0.0",
1976
- "expo-splash-screen": "~57.0.2",
1977
- "expo-status-bar": "~57.0.0",
1978
- "expo-symbols": "^57.0.0",
1979
- "expo-system-ui": "~57.0.0",
1945
+ "ai": "^7.0.37",
1946
+ "expo": "~57.0.8",
1947
+ "expo-clipboard": "~57.0.1",
1948
+ "expo-constants": "~57.0.7",
1949
+ "expo-font": "~57.0.1",
1950
+ "expo-haptics": "~57.0.1",
1951
+ "expo-image": "~57.0.1",
1952
+ "expo-image-picker": "~57.0.6",
1953
+ "expo-linking": "~57.0.4",
1954
+ "expo-router": "~57.0.8",
1955
+ "expo-server": "~57.0.1",
1956
+ "expo-splash-screen": "~57.0.5",
1957
+ "expo-status-bar": "~57.0.1",
1958
+ "expo-symbols": "^57.0.1",
1959
+ "expo-system-ui": "~57.0.1",
1980
1960
  "react": "19.2.3",
1981
1961
  "react-dom": "19.2.3",
1982
1962
  "react-native": "0.86.0",
1983
- "react-native-gesture-handler": "~3.0.2",
1963
+ "react-native-gesture-handler": "~3.1.0",
1984
1964
  "react-native-reanimated": "4.5.0",
1985
- "react-native-safe-area-context": "~5.7.0",
1986
- "react-native-screens": "4.25.2",
1965
+ "react-native-safe-area-context": "~5.8.0",
1966
+ "react-native-screens": "4.26.2",
1987
1967
  "react-native-web": "~0.21.2",
1988
1968
  "react-native-worklets": "0.10.0",
1989
1969
  "zod": "^4.4.3"
@@ -318,21 +318,21 @@ export default withAui(nextConfig);
318
318
  "@assistant-ui/ui": "workspace:*",
319
319
  "class-variance-authority": "^0.7.1",
320
320
  "clsx": "^2.1.1",
321
- "lucide-react": "^1.24.0",
322
- "next": "^16.2.10",
323
- "react": "^19.2.7",
324
- "react-dom": "^19.2.7",
321
+ "lucide-react": "^1.26.0",
322
+ "next": "^16.2.11",
323
+ "react": "^19.2.8",
324
+ "react-dom": "^19.2.8",
325
325
  "tailwind-merge": "^3.6.0"
326
326
  },
327
327
  "devDependencies": {
328
328
  "@assistant-ui/next": "workspace:*",
329
329
  "@assistant-ui/x-buildutils": "workspace:*",
330
- "@tailwindcss/postcss": "^4.3.2",
330
+ "@tailwindcss/postcss": "^4.3.3",
331
331
  "@types/node": "^26.1.1",
332
332
  "@types/react": "^19.2.17",
333
333
  "@types/react-dom": "^19.2.3",
334
- "postcss": "^8.5.19",
335
- "tailwindcss": "^4.3.2",
334
+ "postcss": "^8.5.23",
335
+ "tailwindcss": "^4.3.3",
336
336
  "tw-animate-css": "^1.4.0",
337
337
  "typescript": "npm:@typescript/typescript6@^6.0.2",
338
338
  "typescript-7": "npm:typescript@^7.0.2"
@@ -713,32 +713,32 @@ export default withAui(nextConfig);
713
713
  "start": "next start"
714
714
  },
715
715
  "dependencies": {
716
- "@ai-sdk/openai": "^4.0.14",
716
+ "@ai-sdk/openai": "^4.0.20",
717
717
  "@assistant-ui/react": "workspace:*",
718
718
  "@assistant-ui/react-ai-sdk": "workspace:*",
719
719
  "@assistant-ui/react-markdown": "workspace:*",
720
720
  "@assistant-ui/ui": "workspace:*",
721
721
  "@ffmpeg/ffmpeg": "^0.12.15",
722
722
  "@ffmpeg/util": "^0.12.2",
723
- "ai": "^7.0.28",
723
+ "ai": "^7.0.37",
724
724
  "class-variance-authority": "^0.7.1",
725
725
  "clsx": "^2.1.1",
726
- "lucide-react": "^1.24.0",
727
- "next": "^16.2.10",
728
- "react": "^19.2.7",
729
- "react-dom": "^19.2.7",
726
+ "lucide-react": "^1.26.0",
727
+ "next": "^16.2.11",
728
+ "react": "^19.2.8",
729
+ "react-dom": "^19.2.8",
730
730
  "tailwind-merge": "^3.6.0",
731
731
  "zod": "^4.4.3"
732
732
  },
733
733
  "devDependencies": {
734
734
  "@assistant-ui/next": "workspace:*",
735
735
  "@assistant-ui/x-buildutils": "workspace:*",
736
- "@tailwindcss/postcss": "^4.3.2",
736
+ "@tailwindcss/postcss": "^4.3.3",
737
737
  "@types/node": "^26.1.1",
738
738
  "@types/react": "^19.2.17",
739
739
  "@types/react-dom": "^19.2.3",
740
- "postcss": "^8.5.19",
741
- "tailwindcss": "^4.3.2",
740
+ "postcss": "^8.5.23",
741
+ "tailwindcss": "^4.3.3",
742
742
  "tw-animate-css": "^1.4.0",
743
743
  "typescript": "npm:@typescript/typescript6@^6.0.2",
744
744
  "typescript-7": "npm:typescript@^7.0.2"
@@ -1500,30 +1500,30 @@ export default withAui(nextConfig);
1500
1500
  "test": "vitest run"
1501
1501
  },
1502
1502
  "dependencies": {
1503
- "@ai-sdk/openai": "^4.0.14",
1503
+ "@ai-sdk/openai": "^4.0.20",
1504
1504
  "@assistant-ui/react": "workspace:*",
1505
1505
  "@assistant-ui/react-ai-sdk": "workspace:*",
1506
1506
  "@assistant-ui/ui": "workspace:*",
1507
- "ai": "^7.0.28",
1507
+ "ai": "^7.0.37",
1508
1508
  "class-variance-authority": "^0.7.1",
1509
1509
  "clsx": "^2.1.1",
1510
- "lucide-react": "^1.24.0",
1511
- "next": "^16.2.10",
1512
- "react": "^19.2.7",
1513
- "react-dom": "^19.2.7",
1514
- "recharts": "^3.9.2",
1510
+ "lucide-react": "^1.26.0",
1511
+ "next": "^16.2.11",
1512
+ "react": "^19.2.8",
1513
+ "react-dom": "^19.2.8",
1514
+ "recharts": "^3.10.0",
1515
1515
  "tailwind-merge": "^3.6.0",
1516
1516
  "zod": "^4.4.3"
1517
1517
  },
1518
1518
  "devDependencies": {
1519
1519
  "@assistant-ui/next": "workspace:*",
1520
1520
  "@assistant-ui/x-buildutils": "workspace:*",
1521
- "@tailwindcss/postcss": "^4.3.2",
1521
+ "@tailwindcss/postcss": "^4.3.3",
1522
1522
  "@types/node": "^26.1.1",
1523
1523
  "@types/react": "^19.2.17",
1524
1524
  "@types/react-dom": "^19.2.3",
1525
- "postcss": "^8.5.19",
1526
- "tailwindcss": "^4.3.2",
1525
+ "postcss": "^8.5.23",
1526
+ "tailwindcss": "^4.3.3",
1527
1527
  "tw-animate-css": "^1.4.0",
1528
1528
  "typescript": "npm:@typescript/typescript6@^6.0.2",
1529
1529
  "typescript-7": "npm:typescript@^7.0.2",
@@ -305,25 +305,25 @@ export default withAui(nextConfig);
305
305
  "@assistant-ui/react-google-adk": "workspace:*",
306
306
  "@assistant-ui/react-markdown": "workspace:*",
307
307
  "@assistant-ui/ui": "workspace:*",
308
- "@google/adk": "^1.3.0",
308
+ "@google/adk": "^1.4.0",
309
309
  "class-variance-authority": "^0.7.1",
310
310
  "clsx": "^2.1.1",
311
- "lucide-react": "^1.24.0",
312
- "next": "^16.2.10",
313
- "react": "^19.2.7",
314
- "react-dom": "^19.2.7",
311
+ "lucide-react": "^1.26.0",
312
+ "next": "^16.2.11",
313
+ "react": "^19.2.8",
314
+ "react-dom": "^19.2.8",
315
315
  "tailwind-merge": "^3.6.0",
316
316
  "zod": "^4.4.3"
317
317
  },
318
318
  "devDependencies": {
319
319
  "@assistant-ui/next": "workspace:*",
320
320
  "@assistant-ui/x-buildutils": "workspace:*",
321
- "@tailwindcss/postcss": "^4.3.2",
321
+ "@tailwindcss/postcss": "^4.3.3",
322
322
  "@types/node": "^26.1.1",
323
323
  "@types/react": "^19.2.17",
324
324
  "@types/react-dom": "^19.2.3",
325
- "postcss": "^8.5.19",
326
- "tailwindcss": "^4.3.2",
325
+ "postcss": "^8.5.23",
326
+ "tailwindcss": "^4.3.3",
327
327
  "tw-animate-css": "^1.4.0",
328
328
  "typescript": "npm:@typescript/typescript6@^6.0.2",
329
329
  "typescript-7": "npm:typescript@^7.0.2"