@assistant-ui/mcp-docs-server 0.1.31 → 0.1.32

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 (247) hide show
  1. package/.docs/organized/code-examples/waterfall.md +8 -8
  2. package/.docs/organized/code-examples/with-a2a.md +10 -10
  3. package/.docs/organized/code-examples/with-ag-ui.md +11 -11
  4. package/.docs/organized/code-examples/with-ai-sdk-v6.md +13 -13
  5. package/.docs/organized/code-examples/with-artifacts.md +13 -13
  6. package/.docs/organized/code-examples/with-assistant-transport.md +10 -10
  7. package/.docs/organized/code-examples/with-browser-extension.md +345 -0
  8. package/.docs/organized/code-examples/with-chain-of-thought.md +54 -17
  9. package/.docs/organized/code-examples/with-cloud-standalone.md +13 -13
  10. package/.docs/organized/code-examples/with-cloud.md +13 -13
  11. package/.docs/organized/code-examples/with-custom-thread-list.md +13 -13
  12. package/.docs/organized/code-examples/with-elevenlabs-conversational.md +17 -16
  13. package/.docs/organized/code-examples/with-elevenlabs-scribe.md +17 -16
  14. package/.docs/organized/code-examples/with-expo.md +24 -24
  15. package/.docs/organized/code-examples/with-external-store.md +10 -10
  16. package/.docs/organized/code-examples/with-ffmpeg.md +13 -13
  17. package/.docs/organized/code-examples/with-generative-ui.md +210 -13
  18. package/.docs/organized/code-examples/with-google-adk.md +10 -10
  19. package/.docs/organized/code-examples/with-heat-graph.md +8 -8
  20. package/.docs/organized/code-examples/with-image-generation.md +454 -0
  21. package/.docs/organized/code-examples/with-interactables.md +13 -13
  22. package/.docs/organized/code-examples/with-langchain.md +12 -12
  23. package/.docs/organized/code-examples/with-langgraph.md +15 -12
  24. package/.docs/organized/code-examples/with-livekit.md +18 -17
  25. package/.docs/organized/code-examples/with-mcp.md +748 -0
  26. package/.docs/organized/code-examples/with-opencode.md +11 -11
  27. package/.docs/organized/code-examples/with-parent-id-grouping.md +11 -11
  28. package/.docs/organized/code-examples/with-react-hook-form.md +14 -14
  29. package/.docs/organized/code-examples/with-react-ink.md +4 -4
  30. package/.docs/organized/code-examples/with-react-router.md +15 -15
  31. package/.docs/organized/code-examples/with-resumable-stream.md +660 -0
  32. package/.docs/organized/code-examples/with-store.md +8 -8
  33. package/.docs/organized/code-examples/with-tanstack.md +14 -14
  34. package/.docs/organized/code-examples/with-tap-runtime.md +11 -10
  35. package/.docs/raw/docs/(docs)/cli.mdx +1 -0
  36. package/.docs/raw/docs/(docs)/index.mdx +2 -2
  37. package/.docs/raw/docs/(docs)/installation.mdx +1 -1
  38. package/.docs/raw/docs/(reference)/api-reference/adapters/attachments.mdx +26 -24
  39. package/.docs/raw/docs/(reference)/api-reference/adapters/feedback.mdx +20 -0
  40. package/.docs/raw/docs/(reference)/api-reference/adapters/index.mdx +20 -12
  41. package/.docs/raw/docs/(reference)/api-reference/adapters/model.mdx +44 -0
  42. package/.docs/raw/docs/(reference)/api-reference/adapters/persistence.mdx +37 -16
  43. package/.docs/raw/docs/(reference)/api-reference/adapters/runtime.mdx +12 -23
  44. package/.docs/raw/docs/(reference)/api-reference/adapters/suggestions.mdx +20 -0
  45. package/.docs/raw/docs/(reference)/api-reference/context-providers/assistant-runtime-provider.mdx +37 -8
  46. package/.docs/raw/docs/(reference)/api-reference/context-providers/index.mdx +11 -9
  47. package/.docs/raw/docs/(reference)/api-reference/context-providers/scoped-providers.mdx +64 -0
  48. package/.docs/raw/docs/(reference)/api-reference/external-store/index.mdx +22 -0
  49. package/.docs/raw/docs/(reference)/api-reference/external-store/message-conversion.mdx +52 -0
  50. package/.docs/raw/docs/(reference)/api-reference/external-store/runtime.mdx +36 -0
  51. package/.docs/raw/docs/(reference)/api-reference/hooks/composer-triggers.mdx +98 -0
  52. package/.docs/raw/docs/(reference)/api-reference/hooks/index.mdx +18 -13
  53. package/.docs/raw/docs/(reference)/api-reference/hooks/model-context.mdx +18 -57
  54. package/.docs/raw/docs/(reference)/api-reference/hooks/primitives.mdx +640 -0
  55. package/.docs/raw/docs/(reference)/api-reference/hooks/runtimes.mdx +15 -28
  56. package/.docs/raw/docs/(reference)/api-reference/hooks/state.mdx +64 -18
  57. package/.docs/raw/docs/(reference)/api-reference/hooks/utilities.mdx +434 -0
  58. package/.docs/raw/docs/(reference)/api-reference/integrations/cloud-ai-sdk.mdx +24 -0
  59. package/.docs/raw/docs/(reference)/api-reference/integrations/index.mdx +11 -12
  60. package/.docs/raw/docs/(reference)/api-reference/integrations/react-ai-sdk.mdx +79 -0
  61. package/.docs/raw/docs/(reference)/api-reference/model-context/context.mdx +52 -0
  62. package/.docs/raw/docs/(reference)/api-reference/model-context/index.mdx +22 -0
  63. package/.docs/raw/docs/(reference)/api-reference/model-context/registry.mdx +20 -0
  64. package/.docs/raw/docs/(reference)/api-reference/overview.mdx +110 -131
  65. package/.docs/raw/docs/(reference)/api-reference/primitives/action-bar-more.mdx +78 -221
  66. package/.docs/raw/docs/(reference)/api-reference/primitives/action-bar.mdx +127 -242
  67. package/.docs/raw/docs/(reference)/api-reference/primitives/assistant-if.mdx +39 -20
  68. package/.docs/raw/docs/(reference)/api-reference/primitives/assistant-modal.mdx +66 -87
  69. package/.docs/raw/docs/(reference)/api-reference/primitives/attachment.mdx +50 -58
  70. package/.docs/raw/docs/(reference)/api-reference/primitives/branch-picker.mdx +80 -48
  71. package/.docs/raw/docs/(reference)/api-reference/primitives/chain-of-thought.mdx +67 -0
  72. package/.docs/raw/docs/(reference)/api-reference/primitives/composer.mdx +323 -461
  73. package/.docs/raw/docs/(reference)/api-reference/primitives/error.mdx +36 -43
  74. package/.docs/raw/docs/(reference)/api-reference/primitives/index.mdx +29 -24
  75. package/.docs/raw/docs/(reference)/api-reference/primitives/message-part.mdx +63 -245
  76. package/.docs/raw/docs/(reference)/api-reference/primitives/message.mdx +175 -591
  77. package/.docs/raw/docs/(reference)/api-reference/primitives/queue-item.mdx +65 -0
  78. package/.docs/raw/docs/(reference)/api-reference/primitives/selection-toolbar.mdx +35 -22
  79. package/.docs/raw/docs/(reference)/api-reference/primitives/suggestion.mdx +57 -140
  80. package/.docs/raw/docs/(reference)/api-reference/primitives/thread-list-item-more.mdx +70 -161
  81. package/.docs/raw/docs/(reference)/api-reference/primitives/thread-list-item.mdx +84 -108
  82. package/.docs/raw/docs/(reference)/api-reference/primitives/thread-list.mdx +77 -96
  83. package/.docs/raw/docs/(reference)/api-reference/primitives/thread.mdx +173 -349
  84. package/.docs/raw/docs/(reference)/api-reference/runtimes/assistant-runtime.mdx +9 -21
  85. package/.docs/raw/docs/(reference)/api-reference/runtimes/attachment-runtime.mdx +10 -21
  86. package/.docs/raw/docs/(reference)/api-reference/runtimes/composer-runtime.mdx +15 -70
  87. package/.docs/raw/docs/(reference)/api-reference/runtimes/index.mdx +18 -13
  88. package/.docs/raw/docs/(reference)/api-reference/runtimes/message-part-runtime.mdx +25 -28
  89. package/.docs/raw/docs/(reference)/api-reference/runtimes/message-runtime.mdx +11 -63
  90. package/.docs/raw/docs/(reference)/api-reference/runtimes/queue-state.mdx +20 -0
  91. package/.docs/raw/docs/(reference)/api-reference/runtimes/thread-list-item-runtime.mdx +11 -48
  92. package/.docs/raw/docs/(reference)/api-reference/runtimes/thread-list-runtime.mdx +10 -47
  93. package/.docs/raw/docs/(reference)/api-reference/runtimes/thread-runtime.mdx +18 -30
  94. package/.docs/raw/docs/(reference)/api-reference/tools/component-tools.mdx +68 -0
  95. package/.docs/raw/docs/(reference)/api-reference/tools/index.mdx +39 -0
  96. package/.docs/raw/docs/(reference)/api-reference/tools/rendering.mdx +79 -0
  97. package/.docs/raw/docs/(reference)/api-reference/tools/status.mdx +42 -0
  98. package/.docs/raw/docs/(reference)/api-reference/tools/toolkits.mdx +92 -0
  99. package/.docs/raw/docs/(reference)/api-reference/transport/assistant-transport.mdx +48 -0
  100. package/.docs/raw/docs/(reference)/api-reference/transport/frame.mdx +62 -0
  101. package/.docs/raw/docs/(reference)/api-reference/transport/index.mdx +22 -0
  102. package/.docs/raw/docs/(reference)/api-reference/utilities/index.mdx +19 -0
  103. package/.docs/raw/docs/(reference)/api-reference/utilities/miscellaneous.mdx +131 -0
  104. package/.docs/raw/docs/(reference)/api-reference/voice/index.mdx +22 -0
  105. package/.docs/raw/docs/(reference)/api-reference/voice/session.mdx +54 -0
  106. package/.docs/raw/docs/(reference)/api-reference/voice/speech-dictation.mdx +36 -0
  107. package/.docs/raw/docs/cloud/ai-sdk.mdx +1 -1
  108. package/.docs/raw/docs/cloud/index.mdx +2 -2
  109. package/.docs/raw/docs/guides/attachments.mdx +4 -4
  110. package/.docs/raw/docs/guides/branching.mdx +1 -1
  111. package/.docs/raw/docs/guides/chain-of-thought.mdx +5 -5
  112. package/.docs/raw/docs/guides/context-api.mdx +4 -4
  113. package/.docs/raw/docs/guides/dictation.mdx +2 -2
  114. package/.docs/raw/docs/guides/editing.mdx +1 -1
  115. package/.docs/raw/docs/guides/generative-ui.mdx +142 -0
  116. package/.docs/raw/docs/guides/image-generation.mdx +74 -0
  117. package/.docs/raw/docs/guides/index.mdx +2 -2
  118. package/.docs/raw/docs/guides/interactables.mdx +2 -2
  119. package/.docs/raw/docs/guides/latex.mdx +2 -2
  120. package/.docs/raw/docs/guides/mcp-apps.mdx +231 -0
  121. package/.docs/raw/docs/guides/mentions.mdx +2 -2
  122. package/.docs/raw/docs/guides/message-timing.mdx +38 -5
  123. package/.docs/raw/docs/guides/multi-agent.mdx +2 -2
  124. package/.docs/raw/docs/guides/quoting.mdx +1 -1
  125. package/.docs/raw/docs/guides/resumable-stream-deployment.mdx +212 -0
  126. package/.docs/raw/docs/guides/resumable-stream-stores.mdx +152 -0
  127. package/.docs/raw/docs/guides/resumable-streams.mdx +210 -0
  128. package/.docs/raw/docs/guides/slash-commands.mdx +1 -1
  129. package/.docs/raw/docs/guides/speech.mdx +2 -2
  130. package/.docs/raw/docs/guides/suggestions.mdx +88 -4
  131. package/.docs/raw/docs/guides/tool-ui.mdx +2 -2
  132. package/.docs/raw/docs/guides/tools.mdx +66 -5
  133. package/.docs/raw/docs/guides/voice.mdx +2 -2
  134. package/.docs/raw/docs/ink/adapters.mdx +37 -1
  135. package/.docs/raw/docs/ink/custom-backend.mdx +59 -8
  136. package/.docs/raw/docs/ink/index.mdx +10 -11
  137. package/.docs/raw/docs/ink/primitives.mdx +349 -8
  138. package/.docs/raw/docs/integrations/auth/better-auth.mdx +1 -1
  139. package/.docs/raw/docs/integrations/auth/clerk.mdx +1 -1
  140. package/.docs/raw/docs/integrations/auth/next-auth.mdx +1 -1
  141. package/.docs/raw/docs/integrations/frameworks/ai-sdk.mdx +2 -2
  142. package/.docs/raw/docs/integrations/frameworks/cloudflare-agents/overview.mdx +282 -0
  143. package/.docs/raw/docs/integrations/frameworks/mastra/overview.mdx +2 -2
  144. package/.docs/raw/docs/integrations/frameworks/mastra/separate-server.mdx +1 -1
  145. package/.docs/raw/docs/integrations/gateways/index.mdx +9 -4
  146. package/.docs/raw/docs/integrations/index.mdx +15 -3
  147. package/.docs/raw/docs/integrations/observability/langfuse.mdx +8 -1
  148. package/.docs/raw/docs/integrations/observability/langsmith.mdx +8 -4
  149. package/.docs/raw/docs/integrations/tools/react-mcp.mdx +337 -0
  150. package/.docs/raw/docs/primitives/composer.mdx +53 -0
  151. package/.docs/raw/docs/primitives/index.mdx +2 -2
  152. package/.docs/raw/docs/primitives/suggestion.mdx +9 -0
  153. package/.docs/raw/docs/react-native/hooks.mdx +2 -2
  154. package/.docs/raw/docs/react-native/index.mdx +4 -4
  155. package/.docs/raw/docs/runtimes/a2a/client-and-hooks.mdx +4 -4
  156. package/.docs/raw/docs/runtimes/a2a/overview.mdx +2 -2
  157. package/.docs/raw/docs/runtimes/ag-ui/overview.mdx +2 -2
  158. package/.docs/raw/docs/runtimes/ag-ui/runtime-options.mdx +32 -1
  159. package/.docs/raw/docs/runtimes/ai-sdk/overview.mdx +2 -2
  160. package/.docs/raw/docs/runtimes/ai-sdk/v4-legacy.mdx +7 -2
  161. package/.docs/raw/docs/runtimes/ai-sdk/v5-legacy.mdx +1 -1
  162. package/.docs/raw/docs/runtimes/ai-sdk/v6.mdx +7 -0
  163. package/.docs/raw/docs/runtimes/custom/data-stream.mdx +27 -2
  164. package/.docs/raw/docs/runtimes/custom/external-store.mdx +9 -1
  165. package/.docs/raw/docs/runtimes/custom/overview.mdx +2 -2
  166. package/.docs/raw/docs/runtimes/google-adk/overview.mdx +2 -2
  167. package/.docs/raw/docs/runtimes/langchain.mdx +2 -2
  168. package/.docs/raw/docs/runtimes/langgraph/overview.mdx +2 -2
  169. package/.docs/raw/docs/runtimes/opencode/overview.mdx +2 -2
  170. package/.docs/raw/docs/runtimes/opencode/quickstart.mdx +1 -1
  171. package/.docs/raw/docs/runtimes/pick-a-runtime.mdx +12 -5
  172. package/.docs/raw/docs/ui/composer-trigger-popover.mdx +11 -1
  173. package/.docs/raw/docs/ui/mcp-config.mdx +102 -0
  174. package/.docs/raw/docs/ui/model-selector.mdx +8 -8
  175. package/.docs/raw/docs/ui/sources.mdx +17 -0
  176. package/.docs/raw/docs/ui/streamdown.mdx +34 -2
  177. package/.docs/raw/docs/ui/thread-list.mdx +2 -2
  178. package/.docs/raw/docs/ui/thread.mdx +2 -2
  179. package/README.md +14 -72
  180. package/dist/constants.d.ts +12 -9
  181. package/dist/constants.d.ts.map +1 -1
  182. package/dist/constants.js +13 -9
  183. package/dist/constants.js.map +1 -1
  184. package/dist/index.d.ts +7 -3
  185. package/dist/index.d.ts.map +1 -1
  186. package/dist/index.js +25 -24
  187. package/dist/index.js.map +1 -1
  188. package/dist/prepare-docs/code-examples.d.ts +4 -1
  189. package/dist/prepare-docs/code-examples.d.ts.map +1 -1
  190. package/dist/prepare-docs/code-examples.js +109 -121
  191. package/dist/prepare-docs/code-examples.js.map +1 -1
  192. package/dist/prepare-docs/copy-raw.d.ts +4 -1
  193. package/dist/prepare-docs/copy-raw.d.ts.map +1 -1
  194. package/dist/prepare-docs/copy-raw.js +45 -42
  195. package/dist/prepare-docs/copy-raw.js.map +1 -1
  196. package/dist/prepare-docs/prepare.d.ts +1 -2
  197. package/dist/prepare-docs/prepare.js +17 -17
  198. package/dist/prepare-docs/prepare.js.map +1 -1
  199. package/dist/stdio.d.ts +1 -3
  200. package/dist/stdio.js +6 -3
  201. package/dist/stdio.js.map +1 -1
  202. package/dist/tools/docs.d.ts +20 -15
  203. package/dist/tools/docs.d.ts.map +1 -1
  204. package/dist/tools/docs.js +140 -161
  205. package/dist/tools/docs.js.map +1 -1
  206. package/dist/tools/examples.d.ts +20 -15
  207. package/dist/tools/examples.d.ts.map +1 -1
  208. package/dist/tools/examples.js +74 -86
  209. package/dist/tools/examples.js.map +1 -1
  210. package/dist/tools/tests/test-setup.d.ts +5 -2
  211. package/dist/tools/tests/test-setup.d.ts.map +1 -1
  212. package/dist/tools/tests/test-setup.js +21 -28
  213. package/dist/tools/tests/test-setup.js.map +1 -1
  214. package/dist/utils/logger.d.ts +8 -5
  215. package/dist/utils/logger.d.ts.map +1 -1
  216. package/dist/utils/logger.js +17 -17
  217. package/dist/utils/logger.js.map +1 -1
  218. package/dist/utils/mcp-format.d.ts +8 -5
  219. package/dist/utils/mcp-format.d.ts.map +1 -1
  220. package/dist/utils/mcp-format.js +9 -9
  221. package/dist/utils/mcp-format.js.map +1 -1
  222. package/dist/utils/mdx.d.ts +8 -6
  223. package/dist/utils/mdx.d.ts.map +1 -1
  224. package/dist/utils/mdx.js +22 -22
  225. package/dist/utils/mdx.js.map +1 -1
  226. package/dist/utils/paths.d.ts +9 -6
  227. package/dist/utils/paths.d.ts.map +1 -1
  228. package/dist/utils/paths.js +66 -76
  229. package/dist/utils/paths.js.map +1 -1
  230. package/dist/utils/security.d.ts +4 -1
  231. package/dist/utils/security.d.ts.map +1 -1
  232. package/dist/utils/security.js +19 -40
  233. package/dist/utils/security.js.map +1 -1
  234. package/package.json +5 -5
  235. package/.docs/raw/docs/(reference)/api-reference/adapters/feedback-speech.mdx +0 -41
  236. package/.docs/raw/docs/(reference)/api-reference/context-providers/text-message-part-provider.mdx +0 -40
  237. package/.docs/raw/docs/(reference)/api-reference/integrations/react-data-stream.mdx +0 -260
  238. package/.docs/raw/docs/(reference)/api-reference/integrations/react-hook-form.mdx +0 -103
  239. package/.docs/raw/docs/(reference)/api-reference/integrations/vercel-ai-sdk.mdx +0 -254
  240. package/dist/prepare-docs/prepare.d.ts.map +0 -1
  241. package/dist/stdio.d.ts.map +0 -1
  242. /package/.docs/raw/docs/{(reference)/migrations → migrations}/deprecation-policy.mdx +0 -0
  243. /package/.docs/raw/docs/{(reference) → migrations}/react-compatibility.mdx +0 -0
  244. /package/.docs/raw/docs/{(reference)/migrations → migrations}/react-langgraph-v0-7.mdx +0 -0
  245. /package/.docs/raw/docs/{(reference)/migrations → migrations}/v0-11.mdx +0 -0
  246. /package/.docs/raw/docs/{(reference)/migrations → migrations}/v0-12.mdx +0 -0
  247. /package/.docs/raw/docs/{(reference)/migrations → migrations}/v0-14.mdx +0 -0
@@ -64,29 +64,29 @@
64
64
  "dependencies": {
65
65
  "@assistant-ui/react": "workspace:*",
66
66
  "@assistant-ui/react-markdown": "workspace:*",
67
- "@tailwindcss/vite": "^4.2.4",
68
- "@tanstack/react-router": "^1.169.2",
69
- "@tanstack/react-start": "^1.167.64",
67
+ "@tailwindcss/vite": "^4.3.0",
68
+ "@tanstack/react-router": "^1.170.6",
69
+ "@tanstack/react-start": "^1.168.9",
70
70
  "class-variance-authority": "^0.7.1",
71
71
  "clsx": "^2.1.1",
72
- "lucide-react": "^1.14.0",
72
+ "lucide-react": "^1.16.0",
73
73
  "nitro": "^3.0.260311-beta",
74
- "openai": "^6.36.0",
75
- "react": "^19.2.5",
76
- "react-dom": "^19.2.5",
74
+ "openai": "^6.38.0",
75
+ "react": "^19.2.6",
76
+ "react-dom": "^19.2.6",
77
77
  "remark-gfm": "^4.0.1",
78
- "tailwind-merge": "^3.5.0",
79
- "tailwindcss": "^4.2.4",
78
+ "tailwind-merge": "^3.6.0",
79
+ "tailwindcss": "^4.3.0",
80
80
  "vite-tsconfig-paths": "^6.1.1"
81
81
  },
82
82
  "devDependencies": {
83
83
  "@assistant-ui/x-buildutils": "workspace:*",
84
- "@types/node": "^25.6.0",
85
- "@types/react": "^19.2.14",
84
+ "@types/node": "^25.9.1",
85
+ "@types/react": "^19.2.15",
86
86
  "@types/react-dom": "^19.2.3",
87
- "@vitejs/plugin-react": "^6.0.1",
87
+ "@vitejs/plugin-react": "^6.0.2",
88
88
  "typescript": "^6.0.3",
89
- "vite": "^8.0.10"
89
+ "vite": "^8.0.14"
90
90
  }
91
91
  }
92
92
 
@@ -458,7 +458,7 @@ export const chatStream = createServerFn({ method: "POST" })
458
458
  });
459
459
 
460
460
  const stream = await openai.chat.completions.create({
461
- model: "gpt-4o-mini",
461
+ model: "gpt-5.4-nano",
462
462
  messages: data.messages,
463
463
  stream: true,
464
464
  });
@@ -601,20 +601,20 @@ export default nextConfig;
601
601
  "@assistant-ui/ui": "workspace:*",
602
602
  "class-variance-authority": "^0.7.1",
603
603
  "clsx": "^2.1.1",
604
- "lucide-react": "^1.14.0",
605
- "next": "^16.2.4",
606
- "react": "^19.2.5",
607
- "react-dom": "^19.2.5",
608
- "tailwind-merge": "^3.5.0"
604
+ "lucide-react": "^1.16.0",
605
+ "next": "^16.2.6",
606
+ "react": "^19.2.6",
607
+ "react-dom": "^19.2.6",
608
+ "tailwind-merge": "^3.6.0"
609
609
  },
610
610
  "devDependencies": {
611
611
  "@assistant-ui/x-buildutils": "workspace:*",
612
- "@tailwindcss/postcss": "^4.2.4",
613
- "@types/node": "^25.6.0",
614
- "@types/react": "^19.2.14",
612
+ "@tailwindcss/postcss": "^4.3.0",
613
+ "@types/node": "^25.9.1",
614
+ "@types/react": "^19.2.15",
615
615
  "@types/react-dom": "^19.2.3",
616
- "postcss": "^8.5.14",
617
- "tailwindcss": "^4.2.4",
616
+ "postcss": "^8.5.15",
617
+ "tailwindcss": "^4.3.0",
618
618
  "tw-animate-css": "^1.4.0",
619
619
  "typescript": "^6.0.3"
620
620
  }
@@ -789,6 +789,7 @@ You can extend this example to:
789
789
  "@/lib/utils": ["../../packages/ui/src/lib/utils"],
790
790
  "@assistant-ui/ui/*": ["../../packages/ui/src/*"],
791
791
  "@assistant-ui/*": ["../../packages/*/src"],
792
+ "@assistant-ui/core/*": ["../../packages/core/src/*"],
792
793
  "@assistant-ui/react/*": ["../../packages/react/src/*"],
793
794
  "@assistant-ui/tap": ["../../packages/tap/src"],
794
795
  "@assistant-ui/tap/*": ["../../packages/tap/src/*"],
@@ -71,6 +71,7 @@ Use `--example` to create a project from one of the monorepo examples with full
71
71
  | `with-cloud` | Assistant Cloud persistence | `npx assistant-ui create my-app -e with-cloud` |
72
72
  | `with-ag-ui` | [AG-UI protocol](/docs/runtimes/ag-ui) integration | `npx assistant-ui create my-app -e with-ag-ui` |
73
73
  | `with-assistant-transport` | Custom backend via Assistant Transport | `npx assistant-ui create my-app -e with-assistant-transport` |
74
+ | `with-resumable-stream` | Resumable LLM stream that survives reload mid-response | `npx assistant-ui create my-app -e with-resumable-stream` |
74
75
  | `with-chain-of-thought` | Chain-of-thought with JS execution | `npx assistant-ui create my-app -e with-chain-of-thought` |
75
76
  | `with-external-store` | External message store | `npx assistant-ui create my-app -e with-external-store` |
76
77
  | `with-custom-thread-list` | Custom thread list UI | `npx assistant-ui create my-app -e with-custom-thread-list` |
@@ -1,6 +1,6 @@
1
1
  ---
2
- title: Introduction
3
- description: Beautiful, enterprise-grade AI chat interfaces for React, React Native, and terminal applications.
2
+ title: Documentation
3
+ description: Build production-grade AI chat experiences in React with assistant-ui — components, runtimes, and primitives for ChatGPT-style UIs, copilots, and agents.
4
4
  platforms: ["react"]
5
5
  ---
6
6
 
@@ -137,7 +137,7 @@ export const maxDuration = 30;
137
137
  export async function POST(req: Request) {
138
138
  const { messages, system, tools } = await req.json();
139
139
  const result = streamText({
140
- model: openai("gpt-4o-mini"),
140
+ model: openai("gpt-5.4-nano"),
141
141
  system,
142
142
  messages: await convertToModelMessages(messages),
143
143
  tools: frontendTools(tools),
@@ -1,34 +1,36 @@
1
1
  ---
2
2
  title: Attachment Adapters
3
- description: Upload and compose file attachment handlers.
3
+ description: Attachment adapters for uploading files, handling lifecycle events, and bringing app-owned content into assistant-ui composers and messages.
4
4
  ---
5
5
 
6
- Attachment adapters control how files become assistant-ui attachments.
6
+ import { AttachmentAdapter, CloudFileAttachmentAdapter, CompositeAttachmentAdapter, SimpleImageAttachmentAdapter, SimpleTextAttachmentAdapter } from "@/generated/typeDocs";
7
7
 
8
- ```tsx
9
- import {
10
- CompositeAttachmentAdapter,
11
- SimpleImageAttachmentAdapter,
12
- SimpleTextAttachmentAdapter,
13
- useLocalRuntime,
14
- } from "@assistant-ui/react";
8
+ {/* AUTO-GENERATED PAGE by scripts/generate-api-reference.mts */}
9
+ {/* Do not edit manually. */}
15
10
 
16
- const attachments = new CompositeAttachmentAdapter([
17
- new SimpleImageAttachmentAdapter(),
18
- new SimpleTextAttachmentAdapter(),
19
- ]);
11
+ {/* api-reference:start */}
12
+ {/* AUTO-GENERATED by scripts/generate-api-reference.mts */}
13
+ {/* Do not edit this block manually. */}
20
14
 
21
- const runtime = useLocalRuntime(chatModelAdapter, {
22
- adapters: { attachments },
23
- });
24
- ```
15
+ ## API Reference
25
16
 
26
- ## Common Exports
17
+ ### AttachmentAdapter
27
18
 
28
- - `AttachmentAdapter` is the interface for custom attachment handling.
29
- - `SimpleImageAttachmentAdapter` converts supported image files.
30
- - `SimpleTextAttachmentAdapter` converts supported text files.
31
- - `CompositeAttachmentAdapter` tries multiple attachment adapters in order.
32
- - `CloudFileAttachmentAdapter` uploads files through Assistant Cloud.
19
+ <ParametersTable {...AttachmentAdapter} />
33
20
 
34
- For a custom implementation guide, see [Custom Attachment Adapter](/docs/integrations/attachments/custom-adapter).
21
+ ### CloudFileAttachmentAdapter
22
+
23
+ <ParametersTable {...CloudFileAttachmentAdapter} />
24
+
25
+ ### CompositeAttachmentAdapter
26
+
27
+ <ParametersTable {...CompositeAttachmentAdapter} />
28
+
29
+ ### SimpleImageAttachmentAdapter
30
+
31
+ <ParametersTable {...SimpleImageAttachmentAdapter} />
32
+
33
+ ### SimpleTextAttachmentAdapter
34
+
35
+ <ParametersTable {...SimpleTextAttachmentAdapter} />
36
+ {/* api-reference:end */}
@@ -0,0 +1,20 @@
1
+ ---
2
+ title: Feedback Adapter
3
+ description: Capture and respond to message feedback submitted through action primitives or runtime actions.
4
+ ---
5
+
6
+ import { FeedbackAdapter } from "@/generated/typeDocs";
7
+
8
+ {/* AUTO-GENERATED PAGE by scripts/generate-api-reference.mts */}
9
+ {/* Do not edit manually. */}
10
+
11
+ {/* api-reference:start */}
12
+ {/* AUTO-GENERATED by scripts/generate-api-reference.mts */}
13
+ {/* Do not edit this block manually. */}
14
+
15
+ ## API Reference
16
+
17
+ ### FeedbackAdapter
18
+
19
+ <ParametersTable {...FeedbackAdapter} />
20
+ {/* api-reference:end */}
@@ -1,26 +1,34 @@
1
1
  ---
2
- title: Overview
3
- description: Interfaces for persistence, files, speech, dictation, feedback, suggestions, and runtime composition.
2
+ title: Adapters API Reference
3
+ description: Adapter interfaces for connecting chat models, persistence, file attachments, feedback, and suggestions to assistant-ui React runtimes.
4
4
  ---
5
5
 
6
- {/* AUTO-GENERATED by scripts/generate-api-reference-overviews.mts */}
7
- {/* Do not edit manually. */}
6
+ {/* AUTO-GENERATED PAGE by scripts/generate-api-reference.mts */}
7
+ {/* The page list is generated from exported APIs; edit only the manual prose slot. */}
8
8
 
9
- Adapters let you replace runtime behavior without replacing the UI. They are usually passed through runtime options or provided by integration packages.
9
+ {/* api-manual:start */}
10
+ Adapters define the boundaries between assistant-ui and the systems around it. Use them when you need custom model execution, attachment handling, persistence, feedback collection, or prompt suggestions.
11
+ {/* api-manual:end */}
10
12
 
11
13
  ## Pages
12
14
 
13
15
  <Cards>
14
- <Card title={"Runtime Adapter Context"} href={"/docs/api-reference/adapters/runtime"}>
15
- {"Provide runtime adapters through React context."}
16
- </Card>
17
16
  <Card title={"Attachment Adapters"} href={"/docs/api-reference/adapters/attachments"}>
18
- {"Upload and compose file attachment handlers."}
17
+ {"Attachment adapters for uploading files, handling lifecycle events, and bringing app-owned content into assistant-ui composers and messages."}
18
+ </Card>
19
+ <Card title={"Feedback Adapter"} href={"/docs/api-reference/adapters/feedback"}>
20
+ {"Capture and respond to message feedback submitted through action primitives or runtime actions."}
21
+ </Card>
22
+ <Card title={"Model Adapters"} href={"/docs/api-reference/adapters/model"}>
23
+ {"Adapter interfaces for connecting chat models, streaming responses, and model execution to assistant-ui runtimes."}
19
24
  </Card>
20
25
  <Card title={"Persistence Adapters"} href={"/docs/api-reference/adapters/persistence"}>
21
- {"Persist message history and thread lists."}
26
+ {"Persistence adapters for saving assistant-ui message history, remote thread lists, and long-running chat sessions across browser reloads."}
27
+ </Card>
28
+ <Card title={"Runtime Adapter Context"} href={"/docs/api-reference/adapters/runtime"}>
29
+ {"Provide assistant-ui runtime adapters through React context for model, attachment, speech, and feedback behavior."}
22
30
  </Card>
23
- <Card title={"Feedback and Speech Adapters"} href={"/docs/api-reference/adapters/feedback-speech"}>
24
- {"Capture message feedback and connect speech or dictation."}
31
+ <Card title={"Suggestion Adapters"} href={"/docs/api-reference/adapters/suggestions"}>
32
+ {"Suggestion adapters for providing starter prompts, contextual actions, and guided composer options to assistant-ui runtimes."}
25
33
  </Card>
26
34
  </Cards>
@@ -0,0 +1,44 @@
1
+ ---
2
+ title: Model Adapters
3
+ description: Adapter interfaces for connecting chat models, streaming responses, and model execution to assistant-ui runtimes.
4
+ ---
5
+
6
+ import { ChatModelAdapter, ChatModelRunOptions, ChatModelRunResult, ChatModelRunUpdate, CreateResumeRunConfig, CreateStartRunConfig, LanguageModelConfig } from "@/generated/typeDocs";
7
+
8
+ {/* AUTO-GENERATED PAGE by scripts/generate-api-reference.mts */}
9
+ {/* Do not edit manually. */}
10
+
11
+ {/* api-reference:start */}
12
+ {/* AUTO-GENERATED by scripts/generate-api-reference.mts */}
13
+ {/* Do not edit this block manually. */}
14
+
15
+ ## API Reference
16
+
17
+ ### ChatModelAdapter
18
+
19
+ <ParametersTable {...ChatModelAdapter} />
20
+
21
+ ### ChatModelRunOptions
22
+
23
+ <ParametersTable {...ChatModelRunOptions} />
24
+
25
+ ### ChatModelRunResult
26
+
27
+ <ParametersTable {...ChatModelRunResult} />
28
+
29
+ ### ChatModelRunUpdate
30
+
31
+ <ParametersTable {...ChatModelRunUpdate} />
32
+
33
+ ### CreateResumeRunConfig
34
+
35
+ <ParametersTable {...CreateResumeRunConfig} />
36
+
37
+ ### CreateStartRunConfig
38
+
39
+ <ParametersTable {...CreateStartRunConfig} />
40
+
41
+ ### LanguageModelConfig
42
+
43
+ <ParametersTable {...LanguageModelConfig} />
44
+ {/* api-reference:end */}
@@ -1,34 +1,55 @@
1
1
  ---
2
2
  title: Persistence Adapters
3
- description: Persist message history and thread lists.
3
+ description: Persistence adapters for saving assistant-ui message history, remote thread lists, and long-running chat sessions across browser reloads.
4
4
  ---
5
5
 
6
- assistant-ui has two persistence layers:
6
+ import { GenericThreadHistoryAdapter, InMemoryThreadListAdapter, MessageFormatAdapter, RemoteThreadListAdapter, ThreadHistoryAdapter } from "@/generated/typeDocs";
7
7
 
8
- - `ThreadHistoryAdapter` persists messages for a single runtime thread.
9
- - `RemoteThreadListAdapter` manages a backend-backed list of threads, including creating, loading, archiving, deleting, and title generation.
8
+ {/* AUTO-GENERATED PAGE by scripts/generate-api-reference.mts */}
9
+ {/* Do not edit manually. */}
10
10
 
11
- ## Thread History
11
+ {/* api-reference:start */}
12
+ {/* AUTO-GENERATED by scripts/generate-api-reference.mts */}
13
+ {/* Do not edit this block manually. */}
12
14
 
13
- ```tsx
14
- const runtime = useLocalRuntime(chatModelAdapter, {
15
- adapters: {
16
- history: myHistoryAdapter,
17
- },
18
- });
19
- ```
15
+ ## API Reference
16
+
17
+ ### GenericThreadHistoryAdapter
18
+
19
+ <ParametersTable {...GenericThreadHistoryAdapter} />
20
+
21
+ ### InMemoryThreadListAdapter
22
+
23
+ <ParametersTable {...InMemoryThreadListAdapter} />
20
24
 
21
- Use a history adapter when the app has one active thread or when thread list management lives somewhere else.
25
+ ### MessageFormatAdapter
22
26
 
23
- ## Remote Thread Lists
27
+ <ParametersTable {...MessageFormatAdapter} />
24
28
 
29
+ ### RemoteThreadListAdapter
30
+
31
+ {/* api-example:RemoteThreadListAdapter:start */}
25
32
  ```tsx
26
33
  const runtime = useRemoteThreadListRuntime({
27
34
  adapter: myRemoteThreadListAdapter,
28
35
  runtimeHook: () => useLocalRuntime(chatModelAdapter),
29
36
  });
30
37
  ```
38
+ {/* api-example:RemoteThreadListAdapter:end */}
39
+
40
+ <ParametersTable {...RemoteThreadListAdapter} />
41
+
42
+ ### ThreadHistoryAdapter
31
43
 
32
- Use a remote thread list adapter when your backend owns conversation metadata and users can switch between many threads.
44
+ {/* api-example:ThreadHistoryAdapter:start */}
45
+ ```tsx
46
+ const runtime = useLocalRuntime(chatModelAdapter, {
47
+ adapters: {
48
+ history: myHistoryAdapter,
49
+ },
50
+ });
51
+ ```
52
+ {/* api-example:ThreadHistoryAdapter:end */}
33
53
 
34
- Assistant Cloud provides managed persistence through `AssistantCloud` and cloud runtime helpers. See [Threads](/docs/runtimes/concepts/threads) for the full threading model.
54
+ <ParametersTable {...ThreadHistoryAdapter} />
55
+ {/* api-reference:end */}
@@ -1,31 +1,20 @@
1
1
  ---
2
2
  title: Runtime Adapter Context
3
- description: Provide runtime adapters through React context.
3
+ description: Provide assistant-ui runtime adapters through React context for model, attachment, speech, and feedback behavior.
4
4
  ---
5
5
 
6
- `RuntimeAdapterProvider` lets framework integrations provide adapters around a runtime hook instead of threading them through every hook call.
6
+ import { RuntimeAdapters } from "@/generated/typeDocs";
7
7
 
8
- ```tsx
9
- import {
10
- RuntimeAdapterProvider,
11
- useLocalRuntime,
12
- } from "@assistant-ui/react";
8
+ {/* AUTO-GENERATED PAGE by scripts/generate-api-reference.mts */}
9
+ {/* Do not edit manually. */}
13
10
 
14
- function RuntimeRoot({ children }) {
15
- return (
16
- <RuntimeAdapterProvider
17
- adapters={{
18
- history,
19
- attachments,
20
- feedback,
21
- }}
22
- >
23
- {children}
24
- </RuntimeAdapterProvider>
25
- );
26
- }
27
- ```
11
+ {/* api-reference:start */}
12
+ {/* AUTO-GENERATED by scripts/generate-api-reference.mts */}
13
+ {/* Do not edit this block manually. */}
28
14
 
29
- Runtime hooks merge context adapters with hook-specific options. Hook options are the right place for per-runtime configuration; the provider is useful when an integration or backend wrapper owns the adapter setup.
15
+ ## API Reference
30
16
 
31
- Use `useRuntimeAdapters` only when building a runtime integration that needs to read the adapter context directly.
17
+ ### RuntimeAdapters
18
+
19
+ <ParametersTable {...RuntimeAdapters} />
20
+ {/* api-reference:end */}
@@ -0,0 +1,20 @@
1
+ ---
2
+ title: Suggestion Adapters
3
+ description: Suggestion adapters for providing starter prompts, contextual actions, and guided composer options to assistant-ui runtimes.
4
+ ---
5
+
6
+ import { SuggestionAdapter } from "@/generated/typeDocs";
7
+
8
+ {/* AUTO-GENERATED PAGE by scripts/generate-api-reference.mts */}
9
+ {/* Do not edit manually. */}
10
+
11
+ {/* api-reference:start */}
12
+ {/* AUTO-GENERATED by scripts/generate-api-reference.mts */}
13
+ {/* Do not edit this block manually. */}
14
+
15
+ ## API Reference
16
+
17
+ ### SuggestionAdapter
18
+
19
+ <ParametersTable {...SuggestionAdapter} />
20
+ {/* api-reference:end */}
@@ -1,16 +1,22 @@
1
1
  ---
2
- title: <AssistantRuntimeProvider />
3
- description: Root provider that connects your runtime to assistant-ui components.
2
+ title: AssistantRuntimeProvider
3
+ description: Root React provider that connects an assistant-ui runtime to primitives, hooks, threads, and composer state.
4
4
  ---
5
5
 
6
- import { AssistantRuntimeProvider } from "@/generated/typeDocs";
6
+ import { AssistantRuntimeProvider, AuiProvider } from "@/generated/typeDocs";
7
7
 
8
- The `AssistantRuntimeProvider` provides data and APIs used by assistant-ui components.
8
+ {/* AUTO-GENERATED PAGE by scripts/generate-api-reference.mts */}
9
+ {/* Do not edit manually. */}
9
10
 
10
- Almost all components in assistant-ui require an `AssistantRuntimeProvider` around them to function properly.
11
+ {/* api-reference:start */}
12
+ {/* AUTO-GENERATED by scripts/generate-api-reference.mts */}
13
+ {/* Do not edit this block manually. */}
11
14
 
12
- You must either wrap your app in an `AssistantRuntimeProvider` or pass a `runtime` to the `<Thread />` component instead.
15
+ ## API Reference
13
16
 
17
+ ### AssistantRuntimeProvider
18
+
19
+ {/* api-example:AssistantRuntimeProvider:start */}
14
20
  ```tsx {1, 8, 10}
15
21
  import { AssistantRuntimeProvider } from "@assistant-ui/react";
16
22
  import { useChatRuntime, AssistantChatTransport } from "@assistant-ui/react-ai-sdk";
@@ -29,7 +35,30 @@ const MyApp = () => {
29
35
  );
30
36
  };
31
37
  ```
32
-
33
- #### Properties
38
+ {/* api-example:AssistantRuntimeProvider:end */}
34
39
 
35
40
  <ParametersTable {...AssistantRuntimeProvider} />
41
+
42
+ ### AuiProvider
43
+
44
+ Supplies an `AssistantClient` to the React tree.
45
+
46
+ Place near the root of any subtree that uses [useAui](/docs/api-reference/hooks/state#useaui) or the
47
+ primitives built on it. Components rendered outside an `AuiProvider`
48
+ receive a default client whose scope accessors throw on use, so
49
+ missing-provider mistakes surface at the point of use.
50
+
51
+ When mounting a runtime built with one of the runtime hooks, use
52
+ [AssistantRuntimeProvider](/docs/api-reference/context-providers/assistant-runtime-provider#assistantruntimeprovider) — it installs an `AuiProvider`
53
+ internally — rather than wiring `AuiProvider` yourself.
54
+
55
+ ```tsx
56
+ function ScopedAssistant({ children, scopes }) {
57
+ const aui = useAui(scopes);
58
+
59
+ return <AuiProvider value={aui}>{children}</AuiProvider>;
60
+ }
61
+ ```
62
+
63
+ <ParametersTable {...AuiProvider} />
64
+ {/* api-reference:end */}
@@ -1,20 +1,22 @@
1
1
  ---
2
- title: Overview
3
- description: Context providers that establish assistant-ui runtime and message-part scopes.
2
+ title: Context Providers API Reference
3
+ description: React context providers including AssistantRuntimeProvider that scope assistant-ui runtime, thread, message part, and attachment state for primitives, hooks, and custom chat components.
4
4
  ---
5
5
 
6
- {/* AUTO-GENERATED by scripts/generate-api-reference-overviews.mts */}
7
- {/* Do not edit manually. */}
6
+ {/* AUTO-GENERATED PAGE by scripts/generate-api-reference.mts */}
7
+ {/* The page list is generated from exported APIs; edit only the manual prose slot. */}
8
8
 
9
- Context providers establish the scopes that primitives and hooks read from. Most apps only use `AssistantRuntimeProvider` directly; lower-level providers are for custom renderers and advanced composition.
9
+ {/* api-manual:start */}
10
+ Context providers define where assistant-ui primitives and hooks read their state. Most apps only need `AssistantRuntimeProvider`, while scoped providers support custom renderers, isolated message parts, and advanced composition.
11
+ {/* api-manual:end */}
10
12
 
11
13
  ## Pages
12
14
 
13
15
  <Cards>
14
- <Card title={"<AssistantRuntimeProvider />"} href={"/docs/api-reference/context-providers/assistant-runtime-provider"}>
15
- {"Root provider that connects your runtime to assistant-ui components."}
16
+ <Card title={"AssistantRuntimeProvider"} href={"/docs/api-reference/context-providers/assistant-runtime-provider"}>
17
+ {"Root React provider that connects an assistant-ui runtime to primitives, hooks, threads, and composer state."}
16
18
  </Card>
17
- <Card title={"<TextMessagePartProvider />"} href={"/docs/api-reference/context-providers/text-message-part-provider"}>
18
- {"Context provider for reusing text components outside of message content."}
19
+ <Card title={"Scoped Providers"} href={"/docs/api-reference/context-providers/scoped-providers"}>
20
+ {"Lower-level assistant-ui providers for custom renderers, scoped message parts, attachments, and advanced composition."}
19
21
  </Card>
20
22
  </Cards>
@@ -0,0 +1,64 @@
1
+ ---
2
+ title: Scoped Providers
3
+ description: Lower-level assistant-ui providers for custom renderers, scoped message parts, attachments, and advanced composition.
4
+ ---
5
+
6
+ import { ChainOfThoughtByIndicesProvider, ComposerAttachmentByIndexProvider, MessageAttachmentByIndexProvider, MessageByIndexProvider, MessageProvider, PartByIndexProvider, ReadonlyThreadProvider, RuntimeAdapterProvider, SuggestionByIndexProvider, TextMessagePartProvider, ThreadListItemByIndexProvider, ThreadListItemRuntimeProvider } from "@/generated/typeDocs";
7
+
8
+ {/* AUTO-GENERATED PAGE by scripts/generate-api-reference.mts */}
9
+ {/* Do not edit manually. */}
10
+
11
+ {/* api-reference:start */}
12
+ {/* AUTO-GENERATED by scripts/generate-api-reference.mts */}
13
+ {/* Do not edit this block manually. */}
14
+
15
+ ## API Reference
16
+
17
+ ### ChainOfThoughtByIndicesProvider
18
+
19
+ <ParametersTable {...ChainOfThoughtByIndicesProvider} />
20
+
21
+ ### ComposerAttachmentByIndexProvider
22
+
23
+ <ParametersTable {...ComposerAttachmentByIndexProvider} />
24
+
25
+ ### MessageAttachmentByIndexProvider
26
+
27
+ <ParametersTable {...MessageAttachmentByIndexProvider} />
28
+
29
+ ### MessageByIndexProvider
30
+
31
+ <ParametersTable {...MessageByIndexProvider} />
32
+
33
+ ### MessageProvider
34
+
35
+ <ParametersTable {...MessageProvider} />
36
+
37
+ ### PartByIndexProvider
38
+
39
+ <ParametersTable {...PartByIndexProvider} />
40
+
41
+ ### ReadonlyThreadProvider
42
+
43
+ <ParametersTable {...ReadonlyThreadProvider} />
44
+
45
+ ### RuntimeAdapterProvider
46
+
47
+ <ParametersTable {...RuntimeAdapterProvider} />
48
+
49
+ ### SuggestionByIndexProvider
50
+
51
+ <ParametersTable {...SuggestionByIndexProvider} />
52
+
53
+ ### TextMessagePartProvider
54
+
55
+ <ParametersTable {...TextMessagePartProvider} />
56
+
57
+ ### ThreadListItemByIndexProvider
58
+
59
+ <ParametersTable {...ThreadListItemByIndexProvider} />
60
+
61
+ ### ThreadListItemRuntimeProvider
62
+
63
+ <ParametersTable {...ThreadListItemRuntimeProvider} />
64
+ {/* api-reference:end */}
@@ -0,0 +1,22 @@
1
+ ---
2
+ title: External Store API Reference
3
+ description: External store runtime, message conversion helpers, and adapters for assistant-ui React apps that own their chat state outside the runtime.
4
+ ---
5
+
6
+ {/* AUTO-GENERATED PAGE by scripts/generate-api-reference.mts */}
7
+ {/* The page list is generated from exported APIs; edit only the manual prose slot. */}
8
+
9
+ {/* api-manual:start */}
10
+ External store APIs are for applications that already have their own message, thread, or persistence model. They let assistant-ui render and control that state without forcing the app to adopt the built-in runtime storage shape.
11
+ {/* api-manual:end */}
12
+
13
+ ## Pages
14
+
15
+ <Cards>
16
+ <Card title={"Message Conversion"} href={"/docs/api-reference/external-store/message-conversion"}>
17
+ {"Convert external message formats into assistant-ui's message and thread state for the external store runtime."}
18
+ </Card>
19
+ <Card title={"External Store Runtime"} href={"/docs/api-reference/external-store/runtime"}>
20
+ {"Runtime components, options, and adapters for using assistant-ui with externally owned chat state."}
21
+ </Card>
22
+ </Cards>