@assistant-ui/mcp-docs-server 0.2.3 → 0.3.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.
Files changed (452) hide show
  1. package/README.md +16 -43
  2. package/dist/index.d.ts +2 -3
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/index.js +3 -91
  5. package/dist/index.js.map +1 -1
  6. package/dist/proxy.d.ts +9 -0
  7. package/dist/proxy.d.ts.map +1 -0
  8. package/dist/proxy.js +91 -0
  9. package/dist/proxy.js.map +1 -0
  10. package/package.json +8 -12
  11. package/src/index.ts +3 -115
  12. package/src/proxy.test.ts +385 -0
  13. package/src/proxy.ts +126 -0
  14. package/.docs/organized/code-examples/waterfall.md +0 -807
  15. package/.docs/organized/code-examples/with-a2a.md +0 -675
  16. package/.docs/organized/code-examples/with-ag-ui.md +0 -553
  17. package/.docs/organized/code-examples/with-ai-sdk-v7.md +0 -466
  18. package/.docs/organized/code-examples/with-artifacts.md +0 -815
  19. package/.docs/organized/code-examples/with-assistant-transport.md +0 -576
  20. package/.docs/organized/code-examples/with-browser-extension.md +0 -371
  21. package/.docs/organized/code-examples/with-chain-of-thought.md +0 -962
  22. package/.docs/organized/code-examples/with-cloud-standalone.md +0 -681
  23. package/.docs/organized/code-examples/with-cloud.md +0 -439
  24. package/.docs/organized/code-examples/with-custom-thread-list.md +0 -569
  25. package/.docs/organized/code-examples/with-elevenlabs-conversational.md +0 -527
  26. package/.docs/organized/code-examples/with-elevenlabs-scribe.md +0 -697
  27. package/.docs/organized/code-examples/with-eve.md +0 -405
  28. package/.docs/organized/code-examples/with-expo.md +0 -2246
  29. package/.docs/organized/code-examples/with-external-store.md +0 -421
  30. package/.docs/organized/code-examples/with-ffmpeg.md +0 -829
  31. package/.docs/organized/code-examples/with-generative-ui.md +0 -1810
  32. package/.docs/organized/code-examples/with-google-adk.md +0 -368
  33. package/.docs/organized/code-examples/with-heat-graph.md +0 -304
  34. package/.docs/organized/code-examples/with-image-generation.md +0 -463
  35. package/.docs/organized/code-examples/with-interactables.md +0 -733
  36. package/.docs/organized/code-examples/with-langchain.md +0 -446
  37. package/.docs/organized/code-examples/with-langgraph.md +0 -855
  38. package/.docs/organized/code-examples/with-livekit.md +0 -643
  39. package/.docs/organized/code-examples/with-mcp.md +0 -782
  40. package/.docs/organized/code-examples/with-nuxt.md +0 -2428
  41. package/.docs/organized/code-examples/with-opencode.md +0 -1974
  42. package/.docs/organized/code-examples/with-openui.md +0 -450
  43. package/.docs/organized/code-examples/with-pi.md +0 -2084
  44. package/.docs/organized/code-examples/with-react-hook-form.md +0 -727
  45. package/.docs/organized/code-examples/with-react-ink-web.md +0 -740
  46. package/.docs/organized/code-examples/with-react-ink.md +0 -473
  47. package/.docs/organized/code-examples/with-react-router.md +0 -936
  48. package/.docs/organized/code-examples/with-resumable-stream.md +0 -668
  49. package/.docs/organized/code-examples/with-store.md +0 -679
  50. package/.docs/organized/code-examples/with-svelte.md +0 -415
  51. package/.docs/organized/code-examples/with-sveltekit.md +0 -1061
  52. package/.docs/organized/code-examples/with-tanstack.md +0 -812
  53. package/.docs/organized/code-examples/with-tap-runtime.md +0 -813
  54. package/.docs/organized/code-examples/with-virtualized-thread.md +0 -681
  55. package/.docs/organized/code-examples/with-vue.md +0 -408
  56. package/.docs/raw/docs/(getting-started)/architecture.mdx +0 -146
  57. package/.docs/raw/docs/(getting-started)/base-ui.mdx +0 -39
  58. package/.docs/raw/docs/(getting-started)/cli.mdx +0 -542
  59. package/.docs/raw/docs/(getting-started)/devtools.mdx +0 -79
  60. package/.docs/raw/docs/(getting-started)/index.mdx +0 -23
  61. package/.docs/raw/docs/(getting-started)/installation.mdx +0 -483
  62. package/.docs/raw/docs/(getting-started)/llm.mdx +0 -211
  63. package/.docs/raw/docs/(getting-started)/rtl.mdx +0 -78
  64. package/.docs/raw/docs/(reference)/api-reference/adapters/attachments.mdx +0 -36
  65. package/.docs/raw/docs/(reference)/api-reference/adapters/feedback.mdx +0 -20
  66. package/.docs/raw/docs/(reference)/api-reference/adapters/index.mdx +0 -34
  67. package/.docs/raw/docs/(reference)/api-reference/adapters/model.mdx +0 -44
  68. package/.docs/raw/docs/(reference)/api-reference/adapters/persistence.mdx +0 -59
  69. package/.docs/raw/docs/(reference)/api-reference/adapters/runtime.mdx +0 -20
  70. package/.docs/raw/docs/(reference)/api-reference/adapters/suggestions.mdx +0 -26
  71. package/.docs/raw/docs/(reference)/api-reference/context-providers/assistant-runtime-provider.mdx +0 -84
  72. package/.docs/raw/docs/(reference)/api-reference/context-providers/index.mdx +0 -22
  73. package/.docs/raw/docs/(reference)/api-reference/context-providers/scoped-providers.mdx +0 -64
  74. package/.docs/raw/docs/(reference)/api-reference/external-store/index.mdx +0 -22
  75. package/.docs/raw/docs/(reference)/api-reference/external-store/message-conversion.mdx +0 -57
  76. package/.docs/raw/docs/(reference)/api-reference/external-store/runtime.mdx +0 -49
  77. package/.docs/raw/docs/(reference)/api-reference/generative-ui/a2ui.mdx +0 -40
  78. package/.docs/raw/docs/(reference)/api-reference/generative-ui/actions.mdx +0 -56
  79. package/.docs/raw/docs/(reference)/api-reference/generative-ui/components.mdx +0 -86
  80. package/.docs/raw/docs/(reference)/api-reference/generative-ui/index.mdx +0 -39
  81. package/.docs/raw/docs/(reference)/api-reference/generative-ui/json-generative-ui.mdx +0 -42
  82. package/.docs/raw/docs/(reference)/api-reference/generative-ui/rendering.mdx +0 -84
  83. package/.docs/raw/docs/(reference)/api-reference/generative-ui/slack.mdx +0 -85
  84. package/.docs/raw/docs/(reference)/api-reference/generative-ui/spec.mdx +0 -45
  85. package/.docs/raw/docs/(reference)/api-reference/generative-ui/teams.mdx +0 -93
  86. package/.docs/raw/docs/(reference)/api-reference/generative-ui/tokens.mdx +0 -62
  87. package/.docs/raw/docs/(reference)/api-reference/hooks/composer-triggers.mdx +0 -129
  88. package/.docs/raw/docs/(reference)/api-reference/hooks/index.mdx +0 -31
  89. package/.docs/raw/docs/(reference)/api-reference/hooks/model-context.mdx +0 -34
  90. package/.docs/raw/docs/(reference)/api-reference/hooks/primitives.mdx +0 -350
  91. package/.docs/raw/docs/(reference)/api-reference/hooks/runtimes.mdx +0 -28
  92. package/.docs/raw/docs/(reference)/api-reference/hooks/state.mdx +0 -97
  93. package/.docs/raw/docs/(reference)/api-reference/integrations/ai-sdk.mdx +0 -200
  94. package/.docs/raw/docs/(reference)/api-reference/integrations/cloud-ai-sdk.mdx +0 -24
  95. package/.docs/raw/docs/(reference)/api-reference/integrations/eve.mdx +0 -118
  96. package/.docs/raw/docs/(reference)/api-reference/integrations/index.mdx +0 -28
  97. package/.docs/raw/docs/(reference)/api-reference/integrations/react-data-stream.mdx +0 -37
  98. package/.docs/raw/docs/(reference)/api-reference/model-context/context.mdx +0 -50
  99. package/.docs/raw/docs/(reference)/api-reference/model-context/index.mdx +0 -22
  100. package/.docs/raw/docs/(reference)/api-reference/model-context/registry.mdx +0 -20
  101. package/.docs/raw/docs/(reference)/api-reference/overview.mdx +0 -566
  102. package/.docs/raw/docs/(reference)/api-reference/primitives/action-bar-more.mdx +0 -152
  103. package/.docs/raw/docs/(reference)/api-reference/primitives/action-bar.mdx +0 -239
  104. package/.docs/raw/docs/(reference)/api-reference/primitives/assistant-if.mdx +0 -208
  105. package/.docs/raw/docs/(reference)/api-reference/primitives/assistant-modal.mdx +0 -108
  106. package/.docs/raw/docs/(reference)/api-reference/primitives/attachment.mdx +0 -99
  107. package/.docs/raw/docs/(reference)/api-reference/primitives/branch-picker.mdx +0 -145
  108. package/.docs/raw/docs/(reference)/api-reference/primitives/chain-of-thought.mdx +0 -82
  109. package/.docs/raw/docs/(reference)/api-reference/primitives/composer.mdx +0 -637
  110. package/.docs/raw/docs/(reference)/api-reference/primitives/composition.mdx +0 -22
  111. package/.docs/raw/docs/(reference)/api-reference/primitives/error.mdx +0 -65
  112. package/.docs/raw/docs/(reference)/api-reference/primitives/index.mdx +0 -73
  113. package/.docs/raw/docs/(reference)/api-reference/primitives/message-part.mdx +0 -117
  114. package/.docs/raw/docs/(reference)/api-reference/primitives/message.mdx +0 -339
  115. package/.docs/raw/docs/(reference)/api-reference/primitives/queue-item.mdx +0 -77
  116. package/.docs/raw/docs/(reference)/api-reference/primitives/selection-toolbar.mdx +0 -88
  117. package/.docs/raw/docs/(reference)/api-reference/primitives/suggestion.mdx +0 -81
  118. package/.docs/raw/docs/(reference)/api-reference/primitives/thread-list-item-more.mdx +0 -129
  119. package/.docs/raw/docs/(reference)/api-reference/primitives/thread-list-item.mdx +0 -138
  120. package/.docs/raw/docs/(reference)/api-reference/primitives/thread-list.mdx +0 -122
  121. package/.docs/raw/docs/(reference)/api-reference/primitives/thread.mdx +0 -289
  122. package/.docs/raw/docs/(reference)/api-reference/runtimes/assistant-runtime.mdx +0 -20
  123. package/.docs/raw/docs/(reference)/api-reference/runtimes/attachment-runtime.mdx +0 -24
  124. package/.docs/raw/docs/(reference)/api-reference/runtimes/composer-runtime.mdx +0 -32
  125. package/.docs/raw/docs/(reference)/api-reference/runtimes/index.mdx +0 -43
  126. package/.docs/raw/docs/(reference)/api-reference/runtimes/message-part-runtime.mdx +0 -43
  127. package/.docs/raw/docs/(reference)/api-reference/runtimes/message-runtime.mdx +0 -24
  128. package/.docs/raw/docs/(reference)/api-reference/runtimes/queue-state.mdx +0 -20
  129. package/.docs/raw/docs/(reference)/api-reference/runtimes/thread-list-item-runtime.mdx +0 -24
  130. package/.docs/raw/docs/(reference)/api-reference/runtimes/thread-list-runtime.mdx +0 -24
  131. package/.docs/raw/docs/(reference)/api-reference/runtimes/thread-runtime.mdx +0 -36
  132. package/.docs/raw/docs/(reference)/api-reference/tools/component-tools.mdx +0 -85
  133. package/.docs/raw/docs/(reference)/api-reference/tools/index.mdx +0 -45
  134. package/.docs/raw/docs/(reference)/api-reference/tools/interactables-legacy.mdx +0 -55
  135. package/.docs/raw/docs/(reference)/api-reference/tools/interactables.mdx +0 -151
  136. package/.docs/raw/docs/(reference)/api-reference/tools/rendering.mdx +0 -106
  137. package/.docs/raw/docs/(reference)/api-reference/tools/status.mdx +0 -62
  138. package/.docs/raw/docs/(reference)/api-reference/tools/toolkits.mdx +0 -178
  139. package/.docs/raw/docs/(reference)/api-reference/transport/assistant-transport.mdx +0 -48
  140. package/.docs/raw/docs/(reference)/api-reference/transport/frame.mdx +0 -62
  141. package/.docs/raw/docs/(reference)/api-reference/transport/index.mdx +0 -22
  142. package/.docs/raw/docs/(reference)/api-reference/utilities/index.mdx +0 -19
  143. package/.docs/raw/docs/(reference)/api-reference/utilities/miscellaneous.mdx +0 -152
  144. package/.docs/raw/docs/(reference)/api-reference/voice/index.mdx +0 -22
  145. package/.docs/raw/docs/(reference)/api-reference/voice/session.mdx +0 -54
  146. package/.docs/raw/docs/(reference)/api-reference/voice/speech-dictation.mdx +0 -36
  147. package/.docs/raw/docs/cloud/ai-sdk-assistant-ui.mdx +0 -527
  148. package/.docs/raw/docs/cloud/ai-sdk.mdx +0 -604
  149. package/.docs/raw/docs/cloud/authorization.mdx +0 -252
  150. package/.docs/raw/docs/cloud/index.mdx +0 -46
  151. package/.docs/raw/docs/cloud/langgraph.mdx +0 -554
  152. package/.docs/raw/docs/copilots/assistant-frame.mdx +0 -411
  153. package/.docs/raw/docs/copilots/make-assistant-visible.mdx +0 -82
  154. package/.docs/raw/docs/copilots/model-context.mdx +0 -156
  155. package/.docs/raw/docs/copilots/motivation.mdx +0 -202
  156. package/.docs/raw/docs/copilots/use-assistant-instructions.mdx +0 -64
  157. package/.docs/raw/docs/guides/attachments.mdx +0 -619
  158. package/.docs/raw/docs/guides/branching.mdx +0 -76
  159. package/.docs/raw/docs/guides/chain-of-thought.mdx +0 -164
  160. package/.docs/raw/docs/guides/chatgpt-subscription.mdx +0 -108
  161. package/.docs/raw/docs/guides/context-api.mdx +0 -619
  162. package/.docs/raw/docs/guides/dictation.mdx +0 -298
  163. package/.docs/raw/docs/guides/editing.mdx +0 -102
  164. package/.docs/raw/docs/guides/electron.mdx +0 -369
  165. package/.docs/raw/docs/guides/headless-composer-input.mdx +0 -113
  166. package/.docs/raw/docs/guides/image-generation.mdx +0 -74
  167. package/.docs/raw/docs/guides/index.mdx +0 -117
  168. package/.docs/raw/docs/guides/input-history.mdx +0 -55
  169. package/.docs/raw/docs/guides/latex.mdx +0 -158
  170. package/.docs/raw/docs/guides/mentions.mdx +0 -575
  171. package/.docs/raw/docs/guides/message-timing.mdx +0 -215
  172. package/.docs/raw/docs/guides/quoting.mdx +0 -169
  173. package/.docs/raw/docs/guides/resumable-stream-deployment.mdx +0 -212
  174. package/.docs/raw/docs/guides/resumable-stream-stores.mdx +0 -152
  175. package/.docs/raw/docs/guides/resumable-streams.mdx +0 -292
  176. package/.docs/raw/docs/guides/slash-commands.mdx +0 -358
  177. package/.docs/raw/docs/guides/speech.mdx +0 -172
  178. package/.docs/raw/docs/guides/suggestions.mdx +0 -384
  179. package/.docs/raw/docs/guides/virtualization.mdx +0 -133
  180. package/.docs/raw/docs/guides/voice.mdx +0 -310
  181. package/.docs/raw/docs/ink/adapters.mdx +0 -99
  182. package/.docs/raw/docs/ink/custom-backend.mdx +0 -254
  183. package/.docs/raw/docs/ink/hooks.mdx +0 -469
  184. package/.docs/raw/docs/ink/index.mdx +0 -237
  185. package/.docs/raw/docs/ink/migration.mdx +0 -138
  186. package/.docs/raw/docs/ink/primitives.mdx +0 -1259
  187. package/.docs/raw/docs/integrations/attachments/custom-adapter.mdx +0 -528
  188. package/.docs/raw/docs/integrations/auth/better-auth.mdx +0 -188
  189. package/.docs/raw/docs/integrations/auth/clerk.mdx +0 -166
  190. package/.docs/raw/docs/integrations/auth/next-auth.mdx +0 -191
  191. package/.docs/raw/docs/integrations/frameworks/ai-sdk.mdx +0 -88
  192. package/.docs/raw/docs/integrations/frameworks/cloudflare-agents.mdx +0 -283
  193. package/.docs/raw/docs/integrations/frameworks/mastra/full-stack.mdx +0 -188
  194. package/.docs/raw/docs/integrations/frameworks/mastra/overview.mdx +0 -57
  195. package/.docs/raw/docs/integrations/frameworks/mastra/separate-server.mdx +0 -201
  196. package/.docs/raw/docs/integrations/gateways/index.mdx +0 -162
  197. package/.docs/raw/docs/integrations/index.mdx +0 -178
  198. package/.docs/raw/docs/integrations/observability/helicone.mdx +0 -129
  199. package/.docs/raw/docs/integrations/observability/langfuse.mdx +0 -161
  200. package/.docs/raw/docs/integrations/observability/langsmith.mdx +0 -151
  201. package/.docs/raw/docs/integrations/persistence/custom-adapter.mdx +0 -773
  202. package/.docs/raw/docs/migrations/deprecation-policy.mdx +0 -42
  203. package/.docs/raw/docs/migrations/index.mdx +0 -50
  204. package/.docs/raw/docs/migrations/react-compatibility.mdx +0 -74
  205. package/.docs/raw/docs/migrations/react-langgraph-v0-7.mdx +0 -328
  206. package/.docs/raw/docs/migrations/toolkit-tools.mdx +0 -236
  207. package/.docs/raw/docs/migrations/v0-11.mdx +0 -172
  208. package/.docs/raw/docs/migrations/v0-12.mdx +0 -302
  209. package/.docs/raw/docs/migrations/v0-14.mdx +0 -297
  210. package/.docs/raw/docs/migrations/v0-15.mdx +0 -270
  211. package/.docs/raw/docs/primitives/action-bar.mdx +0 -352
  212. package/.docs/raw/docs/primitives/assistant-modal.mdx +0 -216
  213. package/.docs/raw/docs/primitives/attachment.mdx +0 -217
  214. package/.docs/raw/docs/primitives/branch-picker.mdx +0 -222
  215. package/.docs/raw/docs/primitives/chain-of-thought.mdx +0 -315
  216. package/.docs/raw/docs/primitives/composer.mdx +0 -659
  217. package/.docs/raw/docs/primitives/error.mdx +0 -142
  218. package/.docs/raw/docs/primitives/index.mdx +0 -99
  219. package/.docs/raw/docs/primitives/message.mdx +0 -618
  220. package/.docs/raw/docs/primitives/selection-toolbar.mdx +0 -191
  221. package/.docs/raw/docs/primitives/suggestion.mdx +0 -254
  222. package/.docs/raw/docs/primitives/thread-list.mdx +0 -467
  223. package/.docs/raw/docs/primitives/thread.mdx +0 -509
  224. package/.docs/raw/docs/react-native/adapters.mdx +0 -94
  225. package/.docs/raw/docs/react-native/custom-backend.mdx +0 -207
  226. package/.docs/raw/docs/react-native/hooks.mdx +0 -339
  227. package/.docs/raw/docs/react-native/index.mdx +0 -289
  228. package/.docs/raw/docs/react-native/migration.mdx +0 -142
  229. package/.docs/raw/docs/react-native/primitives.mdx +0 -976
  230. package/.docs/raw/docs/runtimes/a2a/client-and-hooks.mdx +0 -399
  231. package/.docs/raw/docs/runtimes/a2a/overview.mdx +0 -60
  232. package/.docs/raw/docs/runtimes/a2a/quickstart.mdx +0 -216
  233. package/.docs/raw/docs/runtimes/ag-ui/agent-state.mdx +0 -124
  234. package/.docs/raw/docs/runtimes/ag-ui/overview.mdx +0 -70
  235. package/.docs/raw/docs/runtimes/ag-ui/quickstart.mdx +0 -243
  236. package/.docs/raw/docs/runtimes/ag-ui/runtime-options.mdx +0 -267
  237. package/.docs/raw/docs/runtimes/ai-sdk/overview.mdx +0 -61
  238. package/.docs/raw/docs/runtimes/ai-sdk/v4-legacy.mdx +0 -122
  239. package/.docs/raw/docs/runtimes/ai-sdk/v5-legacy.mdx +0 -135
  240. package/.docs/raw/docs/runtimes/ai-sdk/v6-legacy.mdx +0 -636
  241. package/.docs/raw/docs/runtimes/ai-sdk/v7.mdx +0 -731
  242. package/.docs/raw/docs/runtimes/claude-managed-agents.mdx +0 -118
  243. package/.docs/raw/docs/runtimes/concepts/adapters.mdx +0 -265
  244. package/.docs/raw/docs/runtimes/concepts/architecture.mdx +0 -167
  245. package/.docs/raw/docs/runtimes/concepts/stability.mdx +0 -68
  246. package/.docs/raw/docs/runtimes/concepts/threads.mdx +0 -513
  247. package/.docs/raw/docs/runtimes/custom/assistant-transport.mdx +0 -763
  248. package/.docs/raw/docs/runtimes/custom/data-stream.mdx +0 -339
  249. package/.docs/raw/docs/runtimes/custom/external-store.mdx +0 -957
  250. package/.docs/raw/docs/runtimes/custom/local-runtime.mdx +0 -902
  251. package/.docs/raw/docs/runtimes/custom/overview.mdx +0 -71
  252. package/.docs/raw/docs/runtimes/eve/overview.mdx +0 -151
  253. package/.docs/raw/docs/runtimes/eve/quickstart.mdx +0 -192
  254. package/.docs/raw/docs/runtimes/google-adk/api.mdx +0 -256
  255. package/.docs/raw/docs/runtimes/google-adk/hooks.mdx +0 -784
  256. package/.docs/raw/docs/runtimes/google-adk/overview.mdx +0 -69
  257. package/.docs/raw/docs/runtimes/google-adk/quickstart.mdx +0 -229
  258. package/.docs/raw/docs/runtimes/langchain.mdx +0 -901
  259. package/.docs/raw/docs/runtimes/langgraph/agent-state.mdx +0 -181
  260. package/.docs/raw/docs/runtimes/langgraph/generative-ui.mdx +0 -305
  261. package/.docs/raw/docs/runtimes/langgraph/interrupts.mdx +0 -104
  262. package/.docs/raw/docs/runtimes/langgraph/overview.mdx +0 -84
  263. package/.docs/raw/docs/runtimes/langgraph/quickstart.mdx +0 -496
  264. package/.docs/raw/docs/runtimes/langgraph/streaming.mdx +0 -144
  265. package/.docs/raw/docs/runtimes/langgraph/threads.mdx +0 -113
  266. package/.docs/raw/docs/runtimes/langgraph/tutorial/introduction.mdx +0 -29
  267. package/.docs/raw/docs/runtimes/langgraph/tutorial/part-1.mdx +0 -93
  268. package/.docs/raw/docs/runtimes/langgraph/tutorial/part-2.mdx +0 -347
  269. package/.docs/raw/docs/runtimes/langgraph/tutorial/part-3.mdx +0 -393
  270. package/.docs/raw/docs/runtimes/opencode/hooks.mdx +0 -194
  271. package/.docs/raw/docs/runtimes/opencode/overview.mdx +0 -58
  272. package/.docs/raw/docs/runtimes/opencode/quickstart.mdx +0 -119
  273. package/.docs/raw/docs/runtimes/pick-a-runtime.mdx +0 -133
  274. package/.docs/raw/docs/tools/a2ui.mdx +0 -107
  275. package/.docs/raw/docs/tools/backend.mdx +0 -147
  276. package/.docs/raw/docs/tools/defining-tools.mdx +0 -574
  277. package/.docs/raw/docs/tools/dynamic-tools.mdx +0 -112
  278. package/.docs/raw/docs/tools/generative-ui-primitive.mdx +0 -180
  279. package/.docs/raw/docs/tools/generative-ui-slack.mdx +0 -167
  280. package/.docs/raw/docs/tools/generative-ui-teams.mdx +0 -160
  281. package/.docs/raw/docs/tools/generative-ui.mdx +0 -322
  282. package/.docs/raw/docs/tools/index.mdx +0 -72
  283. package/.docs/raw/docs/tools/interactables.mdx +0 -1084
  284. package/.docs/raw/docs/tools/mcp-apps.mdx +0 -363
  285. package/.docs/raw/docs/tools/mcp.mdx +0 -466
  286. package/.docs/raw/docs/tools/multi-agent.mdx +0 -237
  287. package/.docs/raw/docs/tools/openui.mdx +0 -175
  288. package/.docs/raw/docs/tools/tool-ui.mdx +0 -1020
  289. package/.docs/raw/docs/tools/user-managed-mcp.mdx +0 -428
  290. package/.docs/raw/docs/ui/assistant-modal.mdx +0 -166
  291. package/.docs/raw/docs/ui/assistant-sidebar.mdx +0 -89
  292. package/.docs/raw/docs/ui/attachment.mdx +0 -279
  293. package/.docs/raw/docs/ui/composer-trigger-popover.mdx +0 -247
  294. package/.docs/raw/docs/ui/context-display.mdx +0 -148
  295. package/.docs/raw/docs/ui/directive-text.mdx +0 -114
  296. package/.docs/raw/docs/ui/file.mdx +0 -159
  297. package/.docs/raw/docs/ui/follow-up-suggestions.mdx +0 -82
  298. package/.docs/raw/docs/ui/image.mdx +0 -102
  299. package/.docs/raw/docs/ui/markdown.mdx +0 -103
  300. package/.docs/raw/docs/ui/mcp-config.mdx +0 -107
  301. package/.docs/raw/docs/ui/mermaid.mdx +0 -92
  302. package/.docs/raw/docs/ui/message-timing.mdx +0 -93
  303. package/.docs/raw/docs/ui/model-selector.mdx +0 -455
  304. package/.docs/raw/docs/ui/part-grouping.mdx +0 -614
  305. package/.docs/raw/docs/ui/quote.mdx +0 -211
  306. package/.docs/raw/docs/ui/reasoning.mdx +0 -214
  307. package/.docs/raw/docs/ui/scrollbar.mdx +0 -77
  308. package/.docs/raw/docs/ui/sources.mdx +0 -186
  309. package/.docs/raw/docs/ui/streamdown.mdx +0 -392
  310. package/.docs/raw/docs/ui/syntax-highlighting.mdx +0 -205
  311. package/.docs/raw/docs/ui/thread-list.mdx +0 -411
  312. package/.docs/raw/docs/ui/thread.mdx +0 -559
  313. package/.docs/raw/docs/ui/tool-fallback.mdx +0 -141
  314. package/.docs/raw/docs/ui/tool-group.mdx +0 -240
  315. package/.docs/raw/docs/ui/voice.mdx +0 -173
  316. package/.docs/raw/docs/utilities/heat-graph.mdx +0 -237
  317. package/.docs/raw/docs/utilities/react-o11y.mdx +0 -362
  318. package/.docs/raw/docs/utilities/tw-shimmer.mdx +0 -212
  319. package/dist/constants.d.ts +0 -14
  320. package/dist/constants.d.ts.map +0 -1
  321. package/dist/constants.js +0 -19
  322. package/dist/constants.js.map +0 -1
  323. package/dist/prepare-docs/code-examples.d.ts +0 -5
  324. package/dist/prepare-docs/code-examples.d.ts.map +0 -1
  325. package/dist/prepare-docs/code-examples.js +0 -117
  326. package/dist/prepare-docs/code-examples.js.map +0 -1
  327. package/dist/prepare-docs/copy-raw.d.ts +0 -5
  328. package/dist/prepare-docs/copy-raw.d.ts.map +0 -1
  329. package/dist/prepare-docs/copy-raw.js +0 -49
  330. package/dist/prepare-docs/copy-raw.js.map +0 -1
  331. package/dist/prepare-docs/prepare.d.ts +0 -1
  332. package/dist/prepare-docs/prepare.js +0 -22
  333. package/dist/prepare-docs/prepare.js.map +0 -1
  334. package/dist/prompts/xulux-playground.d.ts +0 -12
  335. package/dist/prompts/xulux-playground.d.ts.map +0 -1
  336. package/dist/prompts/xulux-playground.js +0 -33
  337. package/dist/prompts/xulux-playground.js.map +0 -1
  338. package/dist/tools/docs.d.ts +0 -22
  339. package/dist/tools/docs.d.ts.map +0 -1
  340. package/dist/tools/docs.js +0 -177
  341. package/dist/tools/docs.js.map +0 -1
  342. package/dist/tools/examples.d.ts +0 -24
  343. package/dist/tools/examples.d.ts.map +0 -1
  344. package/dist/tools/examples.js +0 -87
  345. package/dist/tools/examples.js.map +0 -1
  346. package/dist/tools/resources.d.ts +0 -6
  347. package/dist/tools/resources.d.ts.map +0 -1
  348. package/dist/tools/resources.js +0 -75
  349. package/dist/tools/resources.js.map +0 -1
  350. package/dist/tools/search.d.ts +0 -24
  351. package/dist/tools/search.d.ts.map +0 -1
  352. package/dist/tools/search.js +0 -39
  353. package/dist/tools/search.js.map +0 -1
  354. package/dist/tools/tests/mcp-test-client.d.ts +0 -15
  355. package/dist/tools/tests/mcp-test-client.d.ts.map +0 -1
  356. package/dist/tools/tests/mcp-test-client.js +0 -68
  357. package/dist/tools/tests/mcp-test-client.js.map +0 -1
  358. package/dist/tools/tests/test-setup.d.ts +0 -7
  359. package/dist/tools/tests/test-setup.d.ts.map +0 -1
  360. package/dist/tools/tests/test-setup.js +0 -36
  361. package/dist/tools/tests/test-setup.js.map +0 -1
  362. package/dist/tools/xulux-templates.d.ts +0 -58
  363. package/dist/tools/xulux-templates.d.ts.map +0 -1
  364. package/dist/tools/xulux-templates.js +0 -84
  365. package/dist/tools/xulux-templates.js.map +0 -1
  366. package/dist/utils/cache.d.ts +0 -5
  367. package/dist/utils/cache.d.ts.map +0 -1
  368. package/dist/utils/cache.js +0 -18
  369. package/dist/utils/cache.js.map +0 -1
  370. package/dist/utils/logger.d.ts +0 -10
  371. package/dist/utils/logger.d.ts.map +0 -1
  372. package/dist/utils/logger.js +0 -20
  373. package/dist/utils/logger.js.map +0 -1
  374. package/dist/utils/mcp-format.d.ts +0 -11
  375. package/dist/utils/mcp-format.d.ts.map +0 -1
  376. package/dist/utils/mcp-format.js +0 -14
  377. package/dist/utils/mcp-format.js.map +0 -1
  378. package/dist/utils/mdx.d.ts +0 -12
  379. package/dist/utils/mdx.d.ts.map +0 -1
  380. package/dist/utils/mdx.js +0 -45
  381. package/dist/utils/mdx.js.map +0 -1
  382. package/dist/utils/paths.d.ts +0 -12
  383. package/dist/utils/paths.d.ts.map +0 -1
  384. package/dist/utils/paths.js +0 -93
  385. package/dist/utils/paths.js.map +0 -1
  386. package/dist/utils/search.d.ts +0 -10
  387. package/dist/utils/search.d.ts.map +0 -1
  388. package/dist/utils/search.js +0 -97
  389. package/dist/utils/search.js.map +0 -1
  390. package/dist/utils/security.d.ts +0 -5
  391. package/dist/utils/security.d.ts.map +0 -1
  392. package/dist/utils/security.js +0 -22
  393. package/dist/utils/security.js.map +0 -1
  394. package/dist/xulux/catalog-client.d.ts +0 -14
  395. package/dist/xulux/catalog-client.d.ts.map +0 -1
  396. package/dist/xulux/catalog-client.js +0 -112
  397. package/dist/xulux/catalog-client.js.map +0 -1
  398. package/dist/xulux/fallback-catalog.d.ts +0 -7
  399. package/dist/xulux/fallback-catalog.d.ts.map +0 -1
  400. package/dist/xulux/fallback-catalog.js +0 -47
  401. package/dist/xulux/fallback-catalog.js.map +0 -1
  402. package/dist/xulux/fetch-sandbox.d.ts +0 -5
  403. package/dist/xulux/fetch-sandbox.d.ts.map +0 -1
  404. package/dist/xulux/fetch-sandbox.js +0 -40
  405. package/dist/xulux/fetch-sandbox.js.map +0 -1
  406. package/dist/xulux/template-service.d.ts +0 -84
  407. package/dist/xulux/template-service.d.ts.map +0 -1
  408. package/dist/xulux/template-service.js +0 -223
  409. package/dist/xulux/template-service.js.map +0 -1
  410. package/dist/xulux/types.d.ts +0 -55
  411. package/dist/xulux/types.d.ts.map +0 -1
  412. package/dist/xulux/types.js +0 -6
  413. package/dist/xulux/types.js.map +0 -1
  414. package/src/constants.ts +0 -24
  415. package/src/prepare-docs/code-examples.ts +0 -158
  416. package/src/prepare-docs/copy-raw.ts +0 -50
  417. package/src/prepare-docs/prepare.ts +0 -24
  418. package/src/prompts/xulux-playground.ts +0 -36
  419. package/src/tools/docs.ts +0 -255
  420. package/src/tools/examples.ts +0 -114
  421. package/src/tools/resources.ts +0 -111
  422. package/src/tools/search.ts +0 -46
  423. package/src/tools/tests/completions.test.ts +0 -60
  424. package/src/tools/tests/directory-size-cap.test.ts +0 -50
  425. package/src/tools/tests/docs.test.ts +0 -147
  426. package/src/tools/tests/examples.test.ts +0 -94
  427. package/src/tools/tests/integration.test.ts +0 -45
  428. package/src/tools/tests/json-parsing.test.ts +0 -23
  429. package/src/tools/tests/listings-cache.test.ts +0 -19
  430. package/src/tools/tests/mcp-protocol.test.ts +0 -216
  431. package/src/tools/tests/mcp-test-client.ts +0 -111
  432. package/src/tools/tests/path-traversal.test.ts +0 -84
  433. package/src/tools/tests/resources.test.ts +0 -133
  434. package/src/tools/tests/search.test.ts +0 -37
  435. package/src/tools/tests/test-setup.ts +0 -50
  436. package/src/tools/tests/xulux-templates.test.ts +0 -325
  437. package/src/tools/xulux-templates.ts +0 -141
  438. package/src/utils/cache.ts +0 -20
  439. package/src/utils/logger.ts +0 -20
  440. package/src/utils/mcp-format.ts +0 -14
  441. package/src/utils/mdx.ts +0 -59
  442. package/src/utils/paths.ts +0 -139
  443. package/src/utils/search.ts +0 -131
  444. package/src/utils/security.ts +0 -52
  445. package/src/utils/tests/cache.test.ts +0 -51
  446. package/src/utils/tests/mcp-format.test.ts +0 -22
  447. package/src/utils/tests/security.test.ts +0 -119
  448. package/src/xulux/catalog-client.ts +0 -150
  449. package/src/xulux/fallback-catalog.ts +0 -63
  450. package/src/xulux/fetch-sandbox.ts +0 -56
  451. package/src/xulux/template-service.ts +0 -406
  452. package/src/xulux/types.ts +0 -64
@@ -1,114 +0,0 @@
1
- ---
2
- title: Directive Text
3
- description: Render mention directives as inline chips in user messages.
4
- platforms: ["react"]
5
- ---
6
-
7
- import { DirectiveTextSample } from "@/components/pages/docs/samples/directive-text";
8
-
9
- <DirectiveTextSample />
10
-
11
- `DirectiveText` parses the directive syntax written by [`ComposerTriggerPopover`](/docs/ui/composer-trigger-popover) (default: `:type[label]{name=id}`) and renders each segment as an inline chip. Use it as the `Text` component in user messages so the raw directive syntax never shows up.
12
-
13
- ## Getting Started
14
-
15
- <Steps>
16
- <Step>
17
-
18
- ### Add `directive-text`
19
-
20
- <InstallCommand shadcn={["directive-text"]} />
21
-
22
- This adds `/components/assistant-ui/directive-text.tsx` with `DirectiveText` and the `createDirectiveText(formatter, options?)` factory.
23
-
24
- </Step>
25
- <Step>
26
-
27
- ### Use in user messages
28
-
29
- Pass `DirectiveText` as the `Text` component in `MessagePrimitive.Parts`:
30
-
31
- ```tsx title="components/assistant-ui/thread.tsx"
32
- import { DirectiveText } from "@/components/assistant-ui/directive-text";
33
-
34
- const UserMessage = () => (
35
- <MessagePrimitive.Root>
36
- <MessagePrimitive.Parts components={{ Text: DirectiveText }} />
37
- </MessagePrimitive.Root>
38
- );
39
- ```
40
-
41
- Keep your markdown renderer (e.g. `MarkdownText`) for assistant messages — assistants rarely emit directive syntax.
42
-
43
- </Step>
44
- </Steps>
45
-
46
- ## Icons per Directive Type
47
-
48
- `DirectiveText` ships icon-free by default — every parsed segment renders as a plain label chip regardless of its `type`. To add icons, use the `createDirectiveText` factory and pass an `iconMap` that routes each `type` string to an icon component, plus an optional `fallbackIcon` for unmapped types:
49
-
50
- ```tsx
51
- import { createDirectiveText } from "@/components/assistant-ui/directive-text";
52
- import { unstable_defaultDirectiveFormatter } from "@assistant-ui/react";
53
- import { FileTextIcon, SparklesIcon, UserIcon, WrenchIcon } from "lucide-react";
54
-
55
- const DirectiveTextWithIcons = createDirectiveText(
56
- unstable_defaultDirectiveFormatter,
57
- {
58
- iconMap: {
59
- tool: WrenchIcon,
60
- user: UserIcon,
61
- file: FileTextIcon,
62
- },
63
- fallbackIcon: SparklesIcon,
64
- },
65
- );
66
-
67
- <MessagePrimitive.Parts components={{ Text: DirectiveTextWithIcons }} />;
68
- ```
69
-
70
- A matching `iconMap` / `fallbackIcon` option is accepted by [`ComposerTriggerPopover`](/docs/ui/composer-trigger-popover), where it routes `item.metadata.icon` strings instead of `type` — keeping icon configuration consistent across the composer and the rendered message.
71
-
72
- ## Custom Formatter
73
-
74
- The default format is `:type[label]{name=id}`. For a different format, build a custom `Unstable_DirectiveFormatter` and wrap it with `createDirectiveText`:
75
-
76
- ```tsx
77
- import type { Unstable_DirectiveFormatter } from "@assistant-ui/react";
78
- import { createDirectiveText } from "@/components/assistant-ui/directive-text";
79
-
80
- const slashFormatter: Unstable_DirectiveFormatter = {
81
- serialize: (item) => `/${item.id}`,
82
- parse: (text) => {
83
- /* return alternating text / mention segments */
84
- },
85
- };
86
-
87
- const SlashDirectiveText = createDirectiveText(slashFormatter);
88
- ```
89
-
90
- Pass the **same formatter** to the composer trigger's `directive={{ formatter }}` (or `action={{ formatter }}`) so insertion and rendering stay consistent.
91
-
92
- ## Customizing the Chip
93
-
94
- Because `directive-text.tsx` is copied into your project, you can also edit it directly — swap the chip styling, read `data-directive-id` to link to a detail page, or replace the chip wrapper entirely.
95
-
96
- ## API Reference
97
-
98
- ### `DirectiveText`
99
-
100
- A `TextMessagePartComponent` that parses `:type[label]{name=id}` directives and renders them as inline chips. Uses the default formatter from `@assistant-ui/react` and renders chips without icons. For per-type icons, build a component with `createDirectiveText(formatter, { iconMap })`.
101
-
102
- ### `createDirectiveText(formatter, options?)`
103
-
104
- Factory that returns a `TextMessagePartComponent` bound to a custom `Unstable_DirectiveFormatter`.
105
-
106
- | Option | Type | Description |
107
- | --- | --- | --- |
108
- | `iconMap` | `Record<string, ComponentType<{ className?: string }>>` | Maps a directive segment's `type` to an icon rendered inside the chip |
109
- | `fallbackIcon` | `ComponentType<{ className?: string }>` | Icon used when no `iconMap` entry matches. When neither option resolves, the chip renders without an icon. |
110
-
111
- ## Related
112
-
113
- - [Composer Trigger Popover](/docs/ui/composer-trigger-popover) — the picker that inserts directives
114
- - [Mentions guide](/docs/guides/mentions) — directive format, backend parsing
@@ -1,159 +0,0 @@
1
- ---
2
- title: File
3
- description: Display file message parts with icon, name, size, and download button.
4
- platforms: ["react"]
5
- ---
6
-
7
- import { FileSample } from "@/components/pages/docs/samples/file";
8
-
9
- <FileSample />
10
-
11
- ## Getting Started
12
-
13
- <Steps>
14
- <Step>
15
-
16
- ### Add `file`
17
-
18
- <InstallCommand shadcn={["file"]} />
19
-
20
- </Step>
21
- <Step>
22
-
23
- ### Use in your application
24
-
25
- The shipped `Thread` component renders `file` parts through `File` by default, in both assistant and user messages. In a custom thread, pass `File` to `MessagePrimitive.Parts`:
26
-
27
- ```tsx title="/components/assistant-ui/thread.tsx" {1,8}
28
- import { File } from "@/components/assistant-ui/file";
29
-
30
- const UserMessage: FC = () => {
31
- return (
32
- <MessagePrimitive.Root className="...">
33
- <MessagePrimitive.Parts>
34
- {({ part }) => {
35
- if (part.type === "file") return <File {...part} />;
36
- return null;
37
- }}
38
- </MessagePrimitive.Parts>
39
- </MessagePrimitive.Root>
40
- );
41
- };
42
- ```
43
-
44
- </Step>
45
- </Steps>
46
-
47
- ## Variants
48
-
49
- Use the `variant` prop to change the visual style.
50
-
51
- ```tsx
52
- <File.Root variant="outline" /> // Border (default)
53
- <File.Root variant="ghost" /> // No border
54
- <File.Root variant="muted" /> // Background fill
55
- ```
56
-
57
- ## Sizes
58
-
59
- Use the `size` prop to change padding and font size.
60
-
61
- ```tsx
62
- <File.Root size="sm" /> // Compact
63
- <File.Root size="default" /> // Default
64
- <File.Root size="lg" /> // Larger
65
- ```
66
-
67
- ## MimeType Icons
68
-
69
- The component automatically selects an appropriate icon based on the file's MIME type:
70
-
71
- | MIME Type | Icon |
72
- |-----------|------|
73
- | `image/*` | ImageIcon |
74
- | `application/pdf` | FileTextIcon |
75
- | `application/json` | BracesIcon |
76
- | `text/*` | FileTextIcon |
77
- | `audio/*` | MusicIcon |
78
- | `video/*` | VideoIcon |
79
- | fallback | FileIcon |
80
-
81
- ## API Reference
82
-
83
- ### Composable API
84
-
85
- The component exports composable sub-components:
86
-
87
- ```tsx
88
- import {
89
- File,
90
- FileRoot,
91
- FileIconDisplay,
92
- FileName,
93
- FileSize,
94
- FileDownload,
95
- } from "@/components/assistant-ui/file";
96
-
97
- <FileRoot variant="muted" size="lg">
98
- <FileIconDisplay mimeType="application/pdf" />
99
- <div className="flex flex-col gap-0.5">
100
- <FileName>report.pdf</FileName>
101
- <FileSize bytes={2048} className="text-xs" />
102
- </div>
103
- <FileDownload
104
- data="SGVsbG8gV29ybGQh"
105
- mimeType="application/pdf"
106
- filename="report.pdf"
107
- />
108
- </FileRoot>
109
- ```
110
-
111
- | Component | Description |
112
- |-----------|-------------|
113
- | `File` | Default export, renders complete file part |
114
- | `File.Root` | Container with variant and size styling |
115
- | `File.Icon` | MIME type-aware icon, or pass custom `children` |
116
- | `File.Name` | Truncated filename |
117
- | `File.Size` | Human-readable file size |
118
- | `File.Download` | Download link button; renders nothing without a browser-resolvable target (`sourceType: "id"`, urls that are not http(s)/blob/data) |
119
-
120
- ### Custom Icon
121
-
122
- Pass `children` to `File.Icon` to override the default MIME type icon:
123
-
124
- ```tsx
125
- <File.Icon>
126
- <MyCustomIcon className="size-5" />
127
- </File.Icon>
128
- ```
129
-
130
- ## Utilities
131
-
132
- The component also exports utility functions:
133
-
134
- ```tsx
135
- import {
136
- getMimeTypeIcon,
137
- getFileDataKind,
138
- getBase64Size,
139
- formatFileSize,
140
- } from "@/components/assistant-ui/file";
141
-
142
- // Get icon component for a MIME type
143
- const Icon = getMimeTypeIcon("application/pdf"); // FileTextIcon
144
-
145
- // Classify the data field of a file part; a declared sourceType wins over sniffing, except a data: payload declared as "url"
146
- const kind = getFileDataKind("https://example.com/report.pdf"); // "url"
147
- const ref = getFileDataKind("file-abc123", "id"); // "id"
148
-
149
- // Calculate size from base64 string
150
- const bytes = getBase64Size("SGVsbG8gV29ybGQh"); // 12
151
-
152
- // Format bytes to human-readable
153
- const size = formatFileSize(2048); // "2.0 KB"
154
- ```
155
-
156
- ## Related Components
157
-
158
- - [Image](/docs/ui/image) - Image message parts
159
- - [Attachment](/docs/ui/attachment) - File attachments in composer and messages
@@ -1,82 +0,0 @@
1
- ---
2
- title: Follow-Up Suggestions
3
- description: Render runtime-generated follow-up prompt chips after an assistant response.
4
- platforms: ["react"]
5
- ---
6
-
7
- import { FollowUpSuggestionsSample } from "@/components/pages/docs/samples/follow-up-suggestions";
8
-
9
- <FollowUpSuggestionsSample />
10
-
11
- `ThreadFollowupSuggestions` renders the current thread's runtime suggestions as clickable prompt chips. Use it for follow-up prompts that arrive after a response, such as suggested next questions, refinements, or task shortcuts.
12
-
13
- <Callout type="info">
14
- This component reads from `thread.suggestions`. For static welcome-screen prompts, use `ThreadPrimitive.Suggestions` instead.
15
- </Callout>
16
-
17
- ## Getting Started
18
-
19
- <Steps>
20
- <Step>
21
-
22
- ### Add `follow-up-suggestions`
23
-
24
- <InstallCommand shadcn={["follow-up-suggestions"]} />
25
-
26
- This adds a `/components/assistant-ui/follow-up-suggestions.tsx` file to your project. The default `thread` component already renders `ThreadFollowupSuggestions`, so installing it standalone is only needed when you build your own thread layout.
27
-
28
- </Step>
29
- <Step>
30
-
31
- ### Provide runtime suggestions
32
-
33
- Pass suggestions through your runtime. External-store runtimes, AI SDK runtimes, and local runtimes can all surface follow-up prompts through `thread.suggestions`.
34
-
35
- ```tsx title="/app/assistant.tsx" {7-10}
36
- const runtime = useExternalStoreRuntime({
37
- messages,
38
- convertMessage,
39
- onNew: async (message) => {
40
- // append the message in your store
41
- },
42
- suggestions: [
43
- { prompt: "Summarize this as action items" },
44
- { prompt: "Write a shorter version" },
45
- ],
46
- });
47
- ```
48
-
49
- </Step>
50
- <Step>
51
-
52
- ### Render after messages
53
-
54
- Place `ThreadFollowupSuggestions` near the bottom of your thread viewport, after the assistant message list and before the composer.
55
-
56
- ```tsx title="/components/assistant-ui/thread.tsx" {1,10}
57
- import { ThreadFollowupSuggestions } from "@/components/assistant-ui/follow-up-suggestions";
58
-
59
- const ThreadViewportFooter = () => {
60
- return (
61
- <ThreadPrimitive.ViewportFooter>
62
- <ThreadPrimitive.ScrollToBottom />
63
- <ThreadFollowupSuggestions />
64
- <Composer />
65
- </ThreadPrimitive.ViewportFooter>
66
- );
67
- };
68
- ```
69
-
70
- </Step>
71
- </Steps>
72
-
73
- ## Behavior
74
-
75
- The component only renders when the thread is not empty, not currently running, and has at least one suggestion. Each suggestion uses `ThreadPrimitive.Suggestion`, replaces the composer text with the prompt, and sends it immediately.
76
-
77
- Suggestions stay on a single line. When they overflow, the row scrolls horizontally without a scrollbar, and each edge with clipped content fades out — so no fade shows at the start edge until you scroll.
78
-
79
- ## Related Components
80
-
81
- - [Thread](/docs/ui/thread) - Complete chat interface with message list and composer
82
- - [Suggestions guide](/docs/guides/suggestions) - Runtime and static suggestion patterns
@@ -1,102 +0,0 @@
1
- ---
2
- title: Image
3
- description: Display image message parts with preview, loading states, and fullscreen dialog.
4
- platforms: ["react"]
5
- ---
6
-
7
- import { ImageSample } from "@/components/pages/docs/samples/image";
8
-
9
- <ImageSample />
10
-
11
- ## Getting Started
12
-
13
- <Steps>
14
- <Step>
15
-
16
- ### Add `image`
17
-
18
- <InstallCommand shadcn={["image"]} />
19
-
20
- </Step>
21
- <Step>
22
-
23
- ### Use in your application
24
-
25
- The shipped `Thread` component renders `image` parts through `Image` by default, in both assistant and user messages. In a custom thread, pass `Image` to `MessagePrimitive.Parts`:
26
-
27
- ```tsx title="/components/assistant-ui/thread.tsx" {1,8}
28
- import { Image } from "@/components/assistant-ui/image";
29
-
30
- const AssistantMessage: FC = () => {
31
- return (
32
- <MessagePrimitive.Root className="...">
33
- <MessagePrimitive.Parts>
34
- {({ part }) => {
35
- if (part.type === "image") return <Image {...part} />;
36
- return null;
37
- }}
38
- </MessagePrimitive.Parts>
39
- </MessagePrimitive.Root>
40
- );
41
- };
42
- ```
43
-
44
- </Step>
45
- </Steps>
46
-
47
- ## Variants
48
-
49
- Use the `variant` prop to change the visual style.
50
-
51
- ```tsx
52
- <Image.Root variant="outline" /> // Border (default)
53
- <Image.Root variant="ghost" /> // No border
54
- <Image.Root variant="muted" /> // Background fill
55
- ```
56
-
57
- ## Sizes
58
-
59
- Use the `size` prop to control the maximum width.
60
-
61
- ```tsx
62
- <Image.Root size="sm" /> // max-w-64 (256px)
63
- <Image.Root size="default" /> // max-w-96 (384px)
64
- <Image.Root size="lg" /> // max-w-[512px]
65
- <Image.Root size="full" /> // w-full
66
- ```
67
-
68
- ## API Reference
69
-
70
- ### Composable API
71
-
72
- The component exports composable sub-components:
73
-
74
- ```tsx
75
- import {
76
- Image,
77
- ImageRoot,
78
- ImagePreview,
79
- ImageFilename,
80
- ImageZoom,
81
- } from "@/components/assistant-ui/image";
82
-
83
- <ImageRoot variant="muted" size="lg">
84
- <ImageZoom src="https://example.com/photo.jpg" alt="Photo">
85
- <ImagePreview src="https://example.com/photo.jpg" alt="Photo" />
86
- </ImageZoom>
87
- <ImageFilename>photo.jpg</ImageFilename>
88
- </ImageRoot>
89
- ```
90
-
91
- | Component | Description |
92
- |-----------|-------------|
93
- | `Image` | Default export, renders complete image part |
94
- | `Image.Root` | Container with variant and size styling |
95
- | `Image.Preview` | Image container with loading/error states |
96
- | `Image.Filename` | Optional filename display below image |
97
- | `Image.Zoom` | Medium-style zoom overlay (click to expand, ESC to close) |
98
-
99
- ## Related Components
100
-
101
- - [Attachment](/docs/ui/attachment) - File attachments in composer and messages
102
- - [File](/docs/ui/file) - Non-image file message parts
@@ -1,103 +0,0 @@
1
- ---
2
- title: Markdown
3
- description: Display rich text with headings, lists, links, and code blocks.
4
- platforms: ["react"]
5
- ---
6
-
7
- import { MarkdownSample } from "@/components/pages/docs/samples/markdown";
8
- import { PreviewCode } from "@/components/pages/docs/preview-code.server";
9
- import { MarkdownCodeBlockSample } from "@/components/pages/docs/samples/markdown/code-block-and-copy";
10
- import { MarkdownRichDocumentSample } from "@/components/pages/docs/samples/markdown/rich-document";
11
- import { MarkdownStreamingSample } from "@/components/pages/docs/samples/markdown/streaming-markdown";
12
- import { MarkdownGfmSample } from "@/components/pages/docs/samples/markdown/gfm-extras";
13
-
14
- <MarkdownSample />
15
-
16
- <Callout>
17
- Markdown support is already included by default in the `Thread` component.
18
- </Callout>
19
-
20
- ## Enabling markdown support
21
-
22
- <Steps>
23
-
24
- <Step>
25
- ### Add `markdown-text`
26
-
27
- <InstallCommand shadcn={["markdown-text"]} />
28
-
29
- This adds a `/components/assistant-ui/markdown-text.tsx` file to your project, which you can adjust as needed.
30
-
31
- </Step>
32
-
33
- <Step>
34
-
35
- ### Use it in your application
36
-
37
- Pass the `MarkdownText` component to the `MessagePrimitive.Parts` component
38
-
39
- ```tsx title="/components/assistant-ui/thread.tsx" {1,7}
40
- import { MarkdownText } from "@/components/assistant-ui/markdown-text";
41
-
42
- const AssistantMessage: FC = () => {
43
- return (
44
- <MessagePrimitive.Root className="...">
45
- <div className="...">
46
- <MessagePrimitive.Parts>
47
- {({ part }) => part.type === "text" ? <MarkdownText /> : null}
48
- </MessagePrimitive.Parts>
49
- </div>
50
- <AssistantActionBar />
51
-
52
- <BranchPicker className="..." />
53
- </MessagePrimitive.Root>
54
- );
55
- };
56
- ```
57
-
58
- </Step>
59
-
60
- </Steps>
61
-
62
- ## Examples
63
-
64
- ### Code Block and Copy
65
-
66
- Fenced code blocks get a language header and a copy button, and inline code keeps compact styling. The preview also uses [syntax highlighting](/docs/ui/syntax-highlighting), which the copied component does not include by default.
67
-
68
- <PreviewCode file="components/pages/docs/samples/markdown/code-block-and-copy" name="MarkdownWithCode">
69
- <MarkdownCodeBlockSample />
70
- </PreviewCode>
71
-
72
- ### Rich Document
73
-
74
- The renderer shows headings, emphasis, links, nested lists, a blockquote, a divider, and a table from one completed response.
75
-
76
- <PreviewCode file="components/pages/docs/samples/markdown/rich-document" name="MarkdownDocument">
77
- <MarkdownRichDocumentSample />
78
- </PreviewCode>
79
-
80
- ### Streaming Markdown
81
-
82
- Select Replay. The markdown increases in steps, and the text part shows a running status until the last chunk.
83
-
84
- <PreviewCode file="components/pages/docs/samples/markdown/streaming-markdown" name="StreamingMarkdown">
85
- <MarkdownStreamingSample />
86
- </PreviewCode>
87
-
88
- ### GitHub Flavored Markdown
89
-
90
- Task-list checkboxes, strikethrough text, a bare autolink, and an aligned table show through the built-in GFM support.
91
-
92
- <PreviewCode file="components/pages/docs/samples/markdown/gfm-extras" name="GfmMarkdown">
93
- <MarkdownGfmSample />
94
- </PreviewCode>
95
-
96
- ## Syntax highlighting
97
-
98
- Syntax Highlighting is not included by default, see [Syntax Highlighting](/docs/ui/syntax-highlighting) to learn how to add it.
99
-
100
- ## Related Components
101
-
102
- - [Syntax Highlighting](/docs/ui/syntax-highlighting) - Add code highlighting to markdown
103
- - [Mermaid](/docs/ui/mermaid) - Render diagrams in markdown code blocks
@@ -1,107 +0,0 @@
1
- ---
2
- title: MCP Config Dialog
3
- description: Drop-in shadcn dialog that lists MCP connectors and custom servers, with inline OAuth/bearer auth controls and an add form.
4
- platforms: ["react"]
5
- ---
6
-
7
- `McpConfigDialog` is a shadcn template that wraps the [`@assistant-ui/react-mcp`](/docs/tools/user-managed-mcp) primitives. Render it anywhere inside an `McpManagerResource`-mounted client and your users get a styled MCP server panel — no manual primitive composition.
8
-
9
- ## Getting Started
10
-
11
- <Steps>
12
- <Step>
13
-
14
- ### Install the package and the component
15
-
16
- <InstallCommand npm={["@assistant-ui/react-mcp"]} />
17
-
18
- <InstallCommand shadcn={["mcp-config"]} />
19
-
20
- </Step>
21
- <Step>
22
-
23
- ### Mount the manager
24
-
25
- ```tsx title="app/providers.tsx"
26
- "use client";
27
-
28
- import { AuiConfig, AuiProvider, useAui } from "@assistant-ui/react";
29
- import { McpManagerResource, defineConnector } from "@assistant-ui/react-mcp";
30
-
31
- const connectors = [
32
- defineConnector({
33
- id: "linear",
34
- name: "Linear",
35
- url: "https://mcp.linear.app",
36
- auth: { type: "oauth", scopes: ["read"] },
37
- }),
38
- ];
39
-
40
- export function Providers({ children }: { children: React.ReactNode }) {
41
- const aui = useAui();
42
- const config = AuiConfig({ mcp: McpManagerResource({ connectors }) });
43
- return (
44
- <AuiProvider extends={aui} config={config}>
45
- {children}
46
- </AuiProvider>
47
- );
48
- }
49
- ```
50
-
51
- </Step>
52
- <Step>
53
-
54
- ### Drop the dialog in
55
-
56
- ```tsx title="app/page.tsx"
57
- import { McpConfigDialog } from "@/components/assistant-ui/mcp-config";
58
-
59
- export default function Page() {
60
- return (
61
- <header className="flex items-center justify-between">
62
- <h1>My app</h1>
63
- <McpConfigDialog />
64
- </header>
65
- );
66
- }
67
- ```
68
-
69
- That's it. The default trigger is an outline `"🔌 MCP servers"` button. Click it to open the dialog, which renders a **Connectors** list (your app-defined presets with connect/authorize/disconnect controls), a **Custom servers** list (user-added entries with the same controls plus a remove button), and an inline **Add server** form for URL + name + auth selection.
70
-
71
- </Step>
72
- <Step>
73
-
74
- ### Override the trigger (optional)
75
-
76
- Pass children to swap the default button for your own:
77
-
78
- ```tsx
79
- <McpConfigDialog>
80
- <Button variant="ghost">Servers</Button>
81
- </McpConfigDialog>
82
- ```
83
-
84
- </Step>
85
- <Step>
86
-
87
- ### Wire up the OAuth callback
88
-
89
- Required for any OAuth-enabled connector or custom server. See the [OAuth callback section in the react-mcp guide](/docs/tools/user-managed-mcp#handle-the-oauth-callback) for the route handler.
90
-
91
- </Step>
92
- </Steps>
93
-
94
- ## Related
95
-
96
- <Cards>
97
- <Card
98
- title="User-managed MCP servers"
99
- description="Full @assistant-ui/react-mcp guide — connectors, custom servers, OAuth, storage, custom primitives."
100
- href="/docs/tools/user-managed-mcp"
101
- />
102
- <Card
103
- title="Server-side MCP"
104
- description="App-developer-controlled MCP servers wired into the API route."
105
- href="/docs/tools/mcp"
106
- />
107
- </Cards>