@assistant-ui/mcp-docs-server 0.2.2 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (459) 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 +76 -0
  9. package/dist/proxy.js.map +1 -0
  10. package/package.json +9 -13
  11. package/src/index.ts +3 -115
  12. package/src/proxy.test.ts +250 -0
  13. package/src/proxy.ts +111 -0
  14. package/.docs/organized/code-examples/waterfall.md +0 -807
  15. package/.docs/organized/code-examples/with-a2a.md +0 -674
  16. package/.docs/organized/code-examples/with-ag-ui.md +0 -552
  17. package/.docs/organized/code-examples/with-ai-sdk-v7.md +0 -465
  18. package/.docs/organized/code-examples/with-artifacts.md +0 -814
  19. package/.docs/organized/code-examples/with-assistant-transport.md +0 -575
  20. package/.docs/organized/code-examples/with-browser-extension.md +0 -371
  21. package/.docs/organized/code-examples/with-chain-of-thought.md +0 -960
  22. package/.docs/organized/code-examples/with-cloud-standalone.md +0 -681
  23. package/.docs/organized/code-examples/with-cloud.md +0 -438
  24. package/.docs/organized/code-examples/with-custom-thread-list.md +0 -568
  25. package/.docs/organized/code-examples/with-elevenlabs-conversational.md +0 -526
  26. package/.docs/organized/code-examples/with-elevenlabs-scribe.md +0 -696
  27. package/.docs/organized/code-examples/with-eve.md +0 -404
  28. package/.docs/organized/code-examples/with-expo.md +0 -2063
  29. package/.docs/organized/code-examples/with-external-store.md +0 -420
  30. package/.docs/organized/code-examples/with-ffmpeg.md +0 -828
  31. package/.docs/organized/code-examples/with-generative-ui.md +0 -1812
  32. package/.docs/organized/code-examples/with-google-adk.md +0 -367
  33. package/.docs/organized/code-examples/with-heat-graph.md +0 -304
  34. package/.docs/organized/code-examples/with-image-generation.md +0 -462
  35. package/.docs/organized/code-examples/with-interactables.md +0 -732
  36. package/.docs/organized/code-examples/with-langchain.md +0 -445
  37. package/.docs/organized/code-examples/with-langgraph.md +0 -854
  38. package/.docs/organized/code-examples/with-livekit.md +0 -642
  39. package/.docs/organized/code-examples/with-mcp.md +0 -780
  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 -449
  43. package/.docs/organized/code-examples/with-pi.md +0 -2083
  44. package/.docs/organized/code-examples/with-react-hook-form.md +0 -724
  45. package/.docs/organized/code-examples/with-react-ink-web.md +0 -690
  46. package/.docs/organized/code-examples/with-react-ink.md +0 -472
  47. package/.docs/organized/code-examples/with-react-router.md +0 -935
  48. package/.docs/organized/code-examples/with-resumable-stream.md +0 -667
  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 -811
  53. package/.docs/organized/code-examples/with-tap-runtime.md +0 -812
  54. package/.docs/organized/code-examples/with-virtualized-thread.md +0 -680
  55. package/.docs/organized/code-examples/with-vue.md +0 -408
  56. package/.docs/raw/docs/(docs)/architecture.mdx +0 -146
  57. package/.docs/raw/docs/(docs)/base-ui.mdx +0 -39
  58. package/.docs/raw/docs/(docs)/cli.mdx +0 -542
  59. package/.docs/raw/docs/(docs)/devtools.mdx +0 -79
  60. package/.docs/raw/docs/(docs)/index.mdx +0 -21
  61. package/.docs/raw/docs/(docs)/installation.mdx +0 -483
  62. package/.docs/raw/docs/(docs)/llm.mdx +0 -211
  63. package/.docs/raw/docs/(docs)/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 -20
  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 -52
  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/cloud-ai-sdk.mdx +0 -24
  94. package/.docs/raw/docs/(reference)/api-reference/integrations/eve.mdx +0 -97
  95. package/.docs/raw/docs/(reference)/api-reference/integrations/index.mdx +0 -28
  96. package/.docs/raw/docs/(reference)/api-reference/integrations/react-ai-sdk.mdx +0 -200
  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 -619
  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 -149
  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 -602
  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 -400
  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 -209
  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 -236
  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/overview.mdx +0 -282
  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 -839
  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 -255
  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 -716
  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 -346
  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 -1008
  289. package/.docs/raw/docs/tools/user-managed-mcp.mdx +0 -428
  290. package/.docs/raw/docs/ui/accordion.mdx +0 -266
  291. package/.docs/raw/docs/ui/assistant-modal.mdx +0 -166
  292. package/.docs/raw/docs/ui/assistant-sidebar.mdx +0 -89
  293. package/.docs/raw/docs/ui/attachment.mdx +0 -259
  294. package/.docs/raw/docs/ui/badge.mdx +0 -150
  295. package/.docs/raw/docs/ui/composer-trigger-popover.mdx +0 -212
  296. package/.docs/raw/docs/ui/context-display.mdx +0 -148
  297. package/.docs/raw/docs/ui/diff-viewer.mdx +0 -280
  298. package/.docs/raw/docs/ui/directive-text.mdx +0 -114
  299. package/.docs/raw/docs/ui/dot-matrix.mdx +0 -133
  300. package/.docs/raw/docs/ui/file.mdx +0 -159
  301. package/.docs/raw/docs/ui/follow-up-suggestions.mdx +0 -82
  302. package/.docs/raw/docs/ui/image.mdx +0 -102
  303. package/.docs/raw/docs/ui/markdown.mdx +0 -64
  304. package/.docs/raw/docs/ui/mcp-config.mdx +0 -107
  305. package/.docs/raw/docs/ui/mermaid.mdx +0 -92
  306. package/.docs/raw/docs/ui/message-timing.mdx +0 -93
  307. package/.docs/raw/docs/ui/model-selector.mdx +0 -455
  308. package/.docs/raw/docs/ui/number-roll.mdx +0 -154
  309. package/.docs/raw/docs/ui/part-grouping.mdx +0 -614
  310. package/.docs/raw/docs/ui/quote.mdx +0 -211
  311. package/.docs/raw/docs/ui/reasoning.mdx +0 -186
  312. package/.docs/raw/docs/ui/scrollbar.mdx +0 -77
  313. package/.docs/raw/docs/ui/select.mdx +0 -254
  314. package/.docs/raw/docs/ui/sources.mdx +0 -177
  315. package/.docs/raw/docs/ui/streamdown.mdx +0 -392
  316. package/.docs/raw/docs/ui/syntax-highlighting.mdx +0 -205
  317. package/.docs/raw/docs/ui/tabs.mdx +0 -271
  318. package/.docs/raw/docs/ui/thread-list.mdx +0 -372
  319. package/.docs/raw/docs/ui/thread.mdx +0 -512
  320. package/.docs/raw/docs/ui/tool-fallback.mdx +0 -127
  321. package/.docs/raw/docs/ui/tool-group.mdx +0 -240
  322. package/.docs/raw/docs/ui/voice.mdx +0 -173
  323. package/.docs/raw/docs/utilities/heat-graph.mdx +0 -237
  324. package/.docs/raw/docs/utilities/react-o11y.mdx +0 -362
  325. package/.docs/raw/docs/utilities/tw-shimmer.mdx +0 -212
  326. package/dist/constants.d.ts +0 -14
  327. package/dist/constants.d.ts.map +0 -1
  328. package/dist/constants.js +0 -19
  329. package/dist/constants.js.map +0 -1
  330. package/dist/prepare-docs/code-examples.d.ts +0 -5
  331. package/dist/prepare-docs/code-examples.d.ts.map +0 -1
  332. package/dist/prepare-docs/code-examples.js +0 -117
  333. package/dist/prepare-docs/code-examples.js.map +0 -1
  334. package/dist/prepare-docs/copy-raw.d.ts +0 -5
  335. package/dist/prepare-docs/copy-raw.d.ts.map +0 -1
  336. package/dist/prepare-docs/copy-raw.js +0 -49
  337. package/dist/prepare-docs/copy-raw.js.map +0 -1
  338. package/dist/prepare-docs/prepare.d.ts +0 -1
  339. package/dist/prepare-docs/prepare.js +0 -22
  340. package/dist/prepare-docs/prepare.js.map +0 -1
  341. package/dist/prompts/xulux-playground.d.ts +0 -12
  342. package/dist/prompts/xulux-playground.d.ts.map +0 -1
  343. package/dist/prompts/xulux-playground.js +0 -33
  344. package/dist/prompts/xulux-playground.js.map +0 -1
  345. package/dist/tools/docs.d.ts +0 -22
  346. package/dist/tools/docs.d.ts.map +0 -1
  347. package/dist/tools/docs.js +0 -177
  348. package/dist/tools/docs.js.map +0 -1
  349. package/dist/tools/examples.d.ts +0 -24
  350. package/dist/tools/examples.d.ts.map +0 -1
  351. package/dist/tools/examples.js +0 -87
  352. package/dist/tools/examples.js.map +0 -1
  353. package/dist/tools/resources.d.ts +0 -6
  354. package/dist/tools/resources.d.ts.map +0 -1
  355. package/dist/tools/resources.js +0 -75
  356. package/dist/tools/resources.js.map +0 -1
  357. package/dist/tools/search.d.ts +0 -24
  358. package/dist/tools/search.d.ts.map +0 -1
  359. package/dist/tools/search.js +0 -39
  360. package/dist/tools/search.js.map +0 -1
  361. package/dist/tools/tests/mcp-test-client.d.ts +0 -15
  362. package/dist/tools/tests/mcp-test-client.d.ts.map +0 -1
  363. package/dist/tools/tests/mcp-test-client.js +0 -68
  364. package/dist/tools/tests/mcp-test-client.js.map +0 -1
  365. package/dist/tools/tests/test-setup.d.ts +0 -7
  366. package/dist/tools/tests/test-setup.d.ts.map +0 -1
  367. package/dist/tools/tests/test-setup.js +0 -36
  368. package/dist/tools/tests/test-setup.js.map +0 -1
  369. package/dist/tools/xulux-templates.d.ts +0 -58
  370. package/dist/tools/xulux-templates.d.ts.map +0 -1
  371. package/dist/tools/xulux-templates.js +0 -84
  372. package/dist/tools/xulux-templates.js.map +0 -1
  373. package/dist/utils/cache.d.ts +0 -5
  374. package/dist/utils/cache.d.ts.map +0 -1
  375. package/dist/utils/cache.js +0 -18
  376. package/dist/utils/cache.js.map +0 -1
  377. package/dist/utils/logger.d.ts +0 -10
  378. package/dist/utils/logger.d.ts.map +0 -1
  379. package/dist/utils/logger.js +0 -20
  380. package/dist/utils/logger.js.map +0 -1
  381. package/dist/utils/mcp-format.d.ts +0 -11
  382. package/dist/utils/mcp-format.d.ts.map +0 -1
  383. package/dist/utils/mcp-format.js +0 -14
  384. package/dist/utils/mcp-format.js.map +0 -1
  385. package/dist/utils/mdx.d.ts +0 -12
  386. package/dist/utils/mdx.d.ts.map +0 -1
  387. package/dist/utils/mdx.js +0 -45
  388. package/dist/utils/mdx.js.map +0 -1
  389. package/dist/utils/paths.d.ts +0 -12
  390. package/dist/utils/paths.d.ts.map +0 -1
  391. package/dist/utils/paths.js +0 -93
  392. package/dist/utils/paths.js.map +0 -1
  393. package/dist/utils/search.d.ts +0 -10
  394. package/dist/utils/search.d.ts.map +0 -1
  395. package/dist/utils/search.js +0 -97
  396. package/dist/utils/search.js.map +0 -1
  397. package/dist/utils/security.d.ts +0 -5
  398. package/dist/utils/security.d.ts.map +0 -1
  399. package/dist/utils/security.js +0 -22
  400. package/dist/utils/security.js.map +0 -1
  401. package/dist/xulux/catalog-client.d.ts +0 -14
  402. package/dist/xulux/catalog-client.d.ts.map +0 -1
  403. package/dist/xulux/catalog-client.js +0 -67
  404. package/dist/xulux/catalog-client.js.map +0 -1
  405. package/dist/xulux/fallback-catalog.d.ts +0 -7
  406. package/dist/xulux/fallback-catalog.d.ts.map +0 -1
  407. package/dist/xulux/fallback-catalog.js +0 -47
  408. package/dist/xulux/fallback-catalog.js.map +0 -1
  409. package/dist/xulux/fetch-sandbox.d.ts +0 -5
  410. package/dist/xulux/fetch-sandbox.d.ts.map +0 -1
  411. package/dist/xulux/fetch-sandbox.js +0 -40
  412. package/dist/xulux/fetch-sandbox.js.map +0 -1
  413. package/dist/xulux/template-service.d.ts +0 -84
  414. package/dist/xulux/template-service.d.ts.map +0 -1
  415. package/dist/xulux/template-service.js +0 -223
  416. package/dist/xulux/template-service.js.map +0 -1
  417. package/dist/xulux/types.d.ts +0 -55
  418. package/dist/xulux/types.d.ts.map +0 -1
  419. package/dist/xulux/types.js +0 -6
  420. package/dist/xulux/types.js.map +0 -1
  421. package/src/constants.ts +0 -24
  422. package/src/prepare-docs/code-examples.ts +0 -158
  423. package/src/prepare-docs/copy-raw.ts +0 -50
  424. package/src/prepare-docs/prepare.ts +0 -24
  425. package/src/prompts/xulux-playground.ts +0 -36
  426. package/src/tools/docs.ts +0 -255
  427. package/src/tools/examples.ts +0 -114
  428. package/src/tools/resources.ts +0 -111
  429. package/src/tools/search.ts +0 -46
  430. package/src/tools/tests/completions.test.ts +0 -60
  431. package/src/tools/tests/directory-size-cap.test.ts +0 -50
  432. package/src/tools/tests/docs.test.ts +0 -144
  433. package/src/tools/tests/examples.test.ts +0 -94
  434. package/src/tools/tests/integration.test.ts +0 -45
  435. package/src/tools/tests/json-parsing.test.ts +0 -23
  436. package/src/tools/tests/listings-cache.test.ts +0 -19
  437. package/src/tools/tests/mcp-protocol.test.ts +0 -216
  438. package/src/tools/tests/mcp-test-client.ts +0 -111
  439. package/src/tools/tests/path-traversal.test.ts +0 -81
  440. package/src/tools/tests/resources.test.ts +0 -133
  441. package/src/tools/tests/search.test.ts +0 -37
  442. package/src/tools/tests/test-setup.ts +0 -50
  443. package/src/tools/tests/xulux-templates.test.ts +0 -262
  444. package/src/tools/xulux-templates.ts +0 -141
  445. package/src/utils/cache.ts +0 -20
  446. package/src/utils/logger.ts +0 -20
  447. package/src/utils/mcp-format.ts +0 -14
  448. package/src/utils/mdx.ts +0 -59
  449. package/src/utils/paths.ts +0 -139
  450. package/src/utils/search.ts +0 -131
  451. package/src/utils/security.ts +0 -52
  452. package/src/utils/tests/cache.test.ts +0 -51
  453. package/src/utils/tests/mcp-format.test.ts +0 -22
  454. package/src/utils/tests/security.test.ts +0 -119
  455. package/src/xulux/catalog-client.ts +0 -105
  456. package/src/xulux/fallback-catalog.ts +0 -63
  457. package/src/xulux/fetch-sandbox.ts +0 -56
  458. package/src/xulux/template-service.ts +0 -406
  459. package/src/xulux/types.ts +0 -60
@@ -1,240 +0,0 @@
1
- ---
2
- title: ToolGroup
3
- description: Wrapper for consecutive tool calls with collapsible and styled options.
4
- platforms: ["react"]
5
- ---
6
-
7
- import {
8
- ToolGroupSample,
9
- ToolGroupStreamingSample,
10
- } from "@/components/docs/samples/tool-group";
11
-
12
- A wrapper component that groups consecutive tool calls together, displaying them in a collapsible container with auto-expand behavior during streaming.
13
-
14
- <ToolGroupSample />
15
-
16
- ## Getting Started
17
-
18
- <Steps>
19
- <Step>
20
-
21
- ### Add `tool-group` and `tool-fallback`
22
-
23
- <InstallCommand shadcn={["tool-group", "tool-fallback"]} />
24
-
25
- This adds `/components/assistant-ui/tool-group.tsx` and `/components/assistant-ui/tool-fallback.tsx` files to your project, which you can adjust as needed.
26
-
27
- </Step>
28
- <Step>
29
-
30
- ### Use it in your application
31
-
32
- Use `MessagePrimitive.GroupedParts` with `groupPartByType` to map tool-call parts to `"group-tool"`. The group case wraps `children`; the tool-call leaf renders the resolved tool UI or your fallback.
33
-
34
- ```tsx title="/components/assistant-ui/thread.tsx"
35
- import { MessagePrimitive, groupPartByType } from "@assistant-ui/react";
36
- import { ToolFallback } from "@/components/assistant-ui/tool-fallback";
37
- import {
38
- ToolGroupContent,
39
- ToolGroupRoot,
40
- ToolGroupTrigger,
41
- } from "@/components/assistant-ui/tool-group";
42
-
43
- const AssistantMessage = () => {
44
- return (
45
- <MessagePrimitive.Root>
46
- <MessagePrimitive.GroupedParts
47
- groupBy={groupPartByType({
48
- "tool-call": ["group-tool"],
49
- })}
50
- >
51
- {({ part, children }) => {
52
- switch (part.type) {
53
- case "group-tool":
54
- return (
55
- <ToolGroupRoot>
56
- <ToolGroupTrigger
57
- count={part.indices.length}
58
- active={part.status.type === "running"}
59
- />
60
- <ToolGroupContent>{children}</ToolGroupContent>
61
- </ToolGroupRoot>
62
- );
63
- case "tool-call":
64
- return part.toolUI ?? <ToolFallback {...part} />;
65
- default:
66
- return null;
67
- }
68
- }}
69
- </MessagePrimitive.GroupedParts>
70
- </MessagePrimitive.Root>
71
- );
72
- };
73
- ```
74
-
75
- </Step>
76
- </Steps>
77
-
78
- ## Variants
79
-
80
- Use the `variant` prop on `ToolGroup.Root` to change the visual style:
81
-
82
- ```tsx
83
- <ToolGroup.Root variant="outline">...</ToolGroup.Root>
84
- <ToolGroup.Root variant="muted">...</ToolGroup.Root>
85
- ```
86
-
87
- | Variant | Description |
88
- | --------- | ---------------------------------- |
89
- | `outline` | Rounded border (default) |
90
- | `ghost` | No additional styling |
91
- | `muted` | Muted background with border |
92
-
93
- ## Examples
94
-
95
- ### Streaming Demo (Custom UI + Fallback)
96
-
97
- Interactive demo showing tool group with **custom tool UIs** and `ToolFallback` working together. Watch as weather cards stream in with loading states, followed by a search tool using the fallback UI.
98
-
99
- <ToolGroupStreamingSample />
100
-
101
- ### Custom Tool UIs
102
-
103
- ToolGroup works with any custom tool UI components:
104
-
105
- ```tsx
106
- // Custom Weather Tool UI
107
- function WeatherToolUI({ location, temperature, condition }) {
108
- return (
109
- <div className="flex items-center gap-3 rounded-lg border p-3">
110
- <WeatherIcon condition={condition} />
111
- <div>
112
- <div className="text-xs text-muted-foreground">{location}</div>
113
- <div className="text-lg font-medium">{temperature}°F</div>
114
- </div>
115
- </div>
116
- );
117
- }
118
-
119
- // Use in ToolGroup
120
- <ToolGroupRoot variant="outline">
121
- <ToolGroupTrigger count={3} />
122
- <ToolGroupContent>
123
- <WeatherToolUI location="New York" temperature={65} condition="Cloudy" />
124
- <WeatherToolUI location="London" temperature={55} condition="Rainy" />
125
- <SearchToolUI query="best restaurants" results={24} />
126
- </ToolGroupContent>
127
- </ToolGroupRoot>
128
- ```
129
-
130
- ## Composable API
131
-
132
- All sub-components are exported for custom layouts:
133
-
134
- | Component | Description |
135
- | --------- | ----------- |
136
- | `ToolGroup.Root` | Collapsible container with scroll lock and variants |
137
- | `ToolGroup.Trigger` | Header with tool count, shimmer animation, and chevron |
138
- | `ToolGroup.Content` | Animated collapsible content wrapper |
139
-
140
- ```tsx
141
- import {
142
- ToolGroup,
143
- ToolGroupRoot,
144
- ToolGroupTrigger,
145
- ToolGroupContent,
146
- } from "@/components/assistant-ui/tool-group";
147
-
148
- // Compound component syntax
149
- <ToolGroup.Root variant="outline" defaultOpen>
150
- <ToolGroup.Trigger count={3} active={false} />
151
- <ToolGroup.Content>
152
- {/* Any tool UI components - custom or ToolFallback */}
153
- </ToolGroup.Content>
154
- </ToolGroup.Root>
155
- ```
156
-
157
- ## API Reference
158
-
159
- ### ToolGroupRoot
160
-
161
- <ParametersTable
162
- type="ToolGroupRootProps"
163
- parameters={[
164
- {
165
- name: "variant",
166
- type: '"outline" | "ghost" | "muted"',
167
- default: '"outline"',
168
- description: "Visual variant of the tool group container.",
169
- },
170
- {
171
- name: "open",
172
- type: "boolean",
173
- description: "Controlled open state.",
174
- },
175
- {
176
- name: "onOpenChange",
177
- type: "(open: boolean) => void",
178
- description: "Callback when open state changes.",
179
- },
180
- {
181
- name: "defaultOpen",
182
- type: "boolean",
183
- default: "false",
184
- description: "Initial open state for uncontrolled usage.",
185
- },
186
- ]}
187
- />
188
-
189
- ### ToolGroupTrigger
190
-
191
- <ParametersTable
192
- type="ToolGroupTriggerProps"
193
- parameters={[
194
- {
195
- name: "count",
196
- type: "number",
197
- required: true,
198
- description: "Number of tool calls to display in the label.",
199
- },
200
- {
201
- name: "active",
202
- type: "boolean",
203
- default: "false",
204
- description: "Shows loading spinner and shimmer animation when true.",
205
- },
206
- ]}
207
- />
208
-
209
- ### ToolGroup (Legacy Wrapper)
210
-
211
- `ToolGroup` is kept for existing code that still uses the deprecated `components.ToolGroup` prop on `MessagePrimitive.Parts`. Prefer composing `ToolGroupRoot`, `ToolGroupTrigger`, and `ToolGroupContent` inside `MessagePrimitive.GroupedParts`.
212
-
213
- <ParametersTable
214
- type="ToolGroupProps"
215
- parameters={[
216
- {
217
- name: "startIndex",
218
- type: "number",
219
- required: true,
220
- description: "The index of the first tool call in the group.",
221
- },
222
- {
223
- name: "endIndex",
224
- type: "number",
225
- required: true,
226
- description: "The index of the last tool call in the group.",
227
- },
228
- {
229
- name: "children",
230
- type: "ReactNode",
231
- required: true,
232
- description: "The rendered tool call components.",
233
- },
234
- ]}
235
- />
236
-
237
- ## Related Components
238
-
239
- - [ToolFallback](/docs/ui/tool-fallback) - Default UI for tools without custom renderers
240
- - [PartGrouping](/docs/ui/part-grouping) - Advanced message part grouping (experimental)
@@ -1,173 +0,0 @@
1
- ---
2
- title: Voice
3
- description: Realtime voice session controls with connect, mute, and status indicator.
4
- platforms: ["react"]
5
- ---
6
-
7
- import { VoiceSample, VoiceVariantsSample, VoiceStatesSample } from "@/components/docs/samples/voice";
8
-
9
- A control bar for realtime bidirectional voice sessions with an animated orb indicator. Works with any `RealtimeVoiceAdapter` (LiveKit, ElevenLabs, etc.).
10
-
11
- <VoiceSample />
12
-
13
- ## Getting Started
14
-
15
- <Steps>
16
- <Step>
17
-
18
- ### Add the component
19
-
20
- <InstallCommand shadcn={["voice"]} />
21
-
22
- This adds `/components/assistant-ui/voice.tsx` to your project, which you can adjust as needed.
23
-
24
- </Step>
25
- <Step>
26
-
27
- ### Configure a voice adapter
28
-
29
- Pass a `RealtimeVoiceAdapter` to your runtime. See the [Realtime Voice guide](/docs/guides/voice) for details.
30
-
31
- ```tsx
32
- const runtime = useChatRuntime({
33
- adapters: {
34
- voice: myVoiceAdapter,
35
- },
36
- });
37
- ```
38
-
39
- </Step>
40
- <Step>
41
-
42
- ### Use in your application
43
-
44
- ```tsx title="app/page.tsx"
45
- import { Thread } from "@/components/assistant-ui/thread";
46
- import { VoiceControl } from "@/components/assistant-ui/voice";
47
- import { AuiIf } from "@assistant-ui/react";
48
-
49
- export default function Chat() {
50
- return (
51
- <div className="flex h-full flex-col">
52
- <AuiIf condition={(s) => s.thread.capabilities.voice}>
53
- <VoiceControl />
54
- </AuiIf>
55
- <div className="min-h-0 flex-1">
56
- <Thread />
57
- </div>
58
- </div>
59
- );
60
- }
61
- ```
62
-
63
- </Step>
64
- </Steps>
65
-
66
- ## Anatomy
67
-
68
- The `VoiceControl` component is built with the following hooks and conditionals:
69
-
70
- ```tsx
71
- import { AuiIf, useVoiceState, useVoiceControls } from "@assistant-ui/react";
72
-
73
- <div className="aui-voice-control">
74
- <VoiceIndicator />
75
-
76
- <AuiIf condition={(s) => s.thread.voice == null}>
77
- <VoiceConnectButton />
78
- </AuiIf>
79
-
80
- <AuiIf condition={(s) => s.thread.voice?.status.type === "running"}>
81
- <VoiceMuteButton />
82
- <VoiceDisconnectButton />
83
- </AuiIf>
84
- </div>
85
- ```
86
-
87
- ## Examples
88
-
89
- ### Conditionally show voice controls
90
-
91
- Only render when a voice adapter is configured:
92
-
93
- ```tsx
94
- <AuiIf condition={(s) => s.thread.capabilities.voice}>
95
- <VoiceControl />
96
- </AuiIf>
97
- ```
98
-
99
- ### Voice toggle in composer
100
-
101
- Add a compact voice toggle button inside the composer action area:
102
-
103
- ```tsx
104
- function ComposerVoiceToggle() {
105
- const voiceState = useVoiceState();
106
- const { connect, disconnect } = useVoiceControls();
107
- const isActive =
108
- voiceState?.status.type === "running" ||
109
- voiceState?.status.type === "starting";
110
-
111
- return (
112
- <AuiIf condition={(s) => s.thread.capabilities.voice}>
113
- <button
114
- type="button"
115
- onClick={() => (isActive ? disconnect() : connect())}
116
- aria-label={isActive ? "End voice" : "Start voice"}
117
- >
118
- {isActive ? <PhoneOffIcon /> : <PhoneIcon />}
119
- </button>
120
- </AuiIf>
121
- );
122
- }
123
- ```
124
-
125
- ### Custom indicator colors
126
-
127
- Override the indicator styles by targeting the `aui-voice-indicator` class:
128
-
129
- ```css
130
- .aui-voice-indicator {
131
- /* Override active color */
132
- &.bg-green-500 {
133
- background: theme("colors.blue.500");
134
- }
135
- }
136
- ```
137
-
138
- ## States
139
-
140
- The `VoiceOrb` responds to five voice session states with distinct animations:
141
-
142
- <VoiceStatesSample />
143
-
144
- ## Variants
145
-
146
- Four built-in color palettes. Size is controlled via `className`.
147
-
148
- <VoiceVariantsSample />
149
-
150
- ## Sub-components
151
-
152
- | Component | Description |
153
- |-----------|-------------|
154
- | `VoiceOrb` | Animated orb visual with gradient, glow, and ripple effects. Accepts `state` and `variant` props. |
155
- | `VoiceControl` | Control bar with status dot, connect/disconnect, and mute/unmute buttons. |
156
- | `VoiceConnectButton` | Calls `connect()`. Shown when no session is active. |
157
- | `VoiceMuteButton` | Toggles `mute()`/`unmute()`. Shown when session is running. |
158
- | `VoiceDisconnectButton` | Calls `disconnect()`. Shown when session is active. |
159
-
160
- All sub-components are exported and can be used independently for custom layouts.
161
-
162
- ## State Selectors
163
-
164
- Use these with `AuiIf` or `useAuiState` to build custom voice UI:
165
-
166
- | Selector | Type | Description |
167
- |----------|------|-------------|
168
- | `s.thread.capabilities.voice` | `boolean` | Whether a voice adapter is configured |
169
- | `s.thread.voice` | `VoiceSessionState \| undefined` | `undefined` when no session |
170
- | `s.thread.voice?.status.type` | `"starting" \| "running" \| "ended"` | Session phase |
171
- | `s.thread.voice?.isMuted` | `boolean` | Microphone muted state |
172
- | `s.thread.voice?.mode` | `"listening" \| "speaking"` | Who is currently active (user or agent) |
173
- | `useVoiceVolume()` | `number` | Real-time audio level (0–1), separate from main state to avoid 20Hz re-renders |
@@ -1,237 +0,0 @@
1
- ---
2
- title: heat-graph
3
- description: Headless, composable activity heatmap components for React.
4
- platforms: ["react"]
5
- ---
6
-
7
- import { HeatGraphDemo } from "@/app/(demos)/heat-graph/heat-graph-demo";
8
-
9
- `heat-graph` provides headless, Radix-style primitives for building GitHub-style activity heatmap graphs.
10
-
11
- - **Composable** — Radix-style compound components you fully control
12
- - **Headless** — Zero styling opinions, bring your own CSS/Tailwind
13
- - **Tooltip built-in** — Powered by Radix Popper for positioning
14
- - **Customizable bucketing** — Plug in your own classification function
15
-
16
- <HeatGraphDemo />
17
-
18
- ## Installation
19
-
20
- <Tabs items={["shadcn", "npm", "pnpm", "yarn"]}>
21
- <Tab value="shadcn">
22
- ```sh
23
- npx shadcn@latest add @assistant-ui/heat-graph
24
- ```
25
- This installs a pre-styled `HeatGraph` component to `components/assistant-ui/heat-graph.tsx` along with the `heat-graph` package. The `@assistant-ui` namespace resolves through the registry entry configured in [Manual Setup](/docs/installation#manual-setup).
26
- </Tab>
27
- <Tab value="npm">
28
- ```sh
29
- npm install heat-graph
30
- ```
31
- </Tab>
32
- <Tab value="pnpm">
33
- ```sh
34
- pnpm add heat-graph
35
- ```
36
- </Tab>
37
- <Tab value="yarn">
38
- ```sh
39
- yarn add heat-graph
40
- ```
41
- </Tab>
42
- </Tabs>
43
-
44
- ## Quick Start
45
-
46
- ```tsx title="components/activity-graph.tsx"
47
- "use client";
48
-
49
- import * as HeatGraph from "heat-graph";
50
-
51
- const COLORS = ["#ebedf0", "#c6d7f9", "#8fb0f3", "#5888e8", "#2563eb"];
52
-
53
- export function ActivityGraph({ data }: { data: HeatGraph.DataPoint[] }) {
54
- return (
55
- <HeatGraph.Root data={data} weekStart="monday" colorScale={COLORS}>
56
- <HeatGraph.Grid className="gap-[3px]">
57
- {() => (
58
- <HeatGraph.Cell className="aspect-square rounded-sm" />
59
- )}
60
- </HeatGraph.Grid>
61
- <HeatGraph.Tooltip>
62
- {({ cell }) => (
63
- <div>
64
- {cell.count} contributions on {cell.date.toLocaleDateString()}
65
- </div>
66
- )}
67
- </HeatGraph.Tooltip>
68
- </HeatGraph.Root>
69
- );
70
- }
71
- ```
72
-
73
- <Callout type="info">
74
- Components using Heat Graph must be Client Components (`"use client"`), since they rely on React Context and interactivity.
75
- </Callout>
76
-
77
- ## Anatomy
78
-
79
- ```tsx
80
- import * as HeatGraph from "heat-graph";
81
-
82
- <HeatGraph.Root data={data} colorScale={colors}>
83
-
84
- {/* Month labels — iterates internally, renders each label */}
85
- <HeatGraph.MonthLabels>
86
- {({ label, totalWeeks }) => (
87
- <span style={{ left: `${(label.column / totalWeeks) * 100}%` }}>
88
- {HeatGraph.MONTH_SHORT[label.month]}
89
- </span>
90
- )}
91
- </HeatGraph.MonthLabels>
92
-
93
- {/* Day-of-week labels — iterates internally, renders each label */}
94
- <HeatGraph.DayLabels>
95
- {({ label }) => (
96
- <span>{HeatGraph.DAY_SHORT[label.dayOfWeek]}</span>
97
- )}
98
- </HeatGraph.DayLabels>
99
-
100
- {/* Grid + Cells — iterates internally, renders each cell */}
101
- <HeatGraph.Grid>
102
- {() => <HeatGraph.Cell />}
103
- </HeatGraph.Grid>
104
-
105
- {/* Legend — iterates internally, renders each level */}
106
- <HeatGraph.Legend>
107
- {() => <HeatGraph.LegendLevel />}
108
- </HeatGraph.Legend>
109
-
110
- {/* Tooltip */}
111
- <HeatGraph.Tooltip>
112
- {({ cell }) => <div>{cell.count} on {cell.date.toLocaleDateString()}</div>}
113
- </HeatGraph.Tooltip>
114
-
115
- </HeatGraph.Root>
116
- ```
117
-
118
- ## API Reference
119
-
120
- ### Root
121
-
122
- The top-level provider. Renders a `<div>` that computes the grid layout and provides state to all children. Accepts all standard div props.
123
-
124
- | Prop | Type | Default | Description |
125
- | ------------ | ---------------------- | ------------------- | -------------------------------------------------- |
126
- | `data` | `DataPoint[]` | required | Array of `{ date: string \| Date, count: number }` |
127
- | `start` | `string \| Date` | 1 year before `end` | Start of the date range |
128
- | `end` | `string \| Date` | today | End of the date range |
129
- | `weekStart` | `"sunday" \| "monday"` | `"sunday"` | First day of the week |
130
- | `classify` | `ClassifyFn` | `autoLevels(5)` | Bucketing function mapping counts to levels |
131
- | `colorScale` | `string[]` | — | Array of colors, one per level (index 0 = lowest) |
132
-
133
- ### Grid
134
-
135
- A `<div>` with CSS Grid layout. Renders `gridTemplateColumns` and `gridTemplateRows` based on the computed data. Accepts all standard div props.
136
-
137
- Iterates over cells internally, calling the children render function for each cell. Each cell is wrapped in a context that `Cell` reads from.
138
-
139
- ```ts
140
- type CellData = {
141
- date: Date;
142
- count: number;
143
- level: number;
144
- column: number;
145
- row: number;
146
- };
147
- ```
148
-
149
- ### Cell
150
-
151
- A `<div>` that reads from cell context. Automatically applies:
152
- - Grid positioning (`gridColumn`, `gridRow`)
153
- - Background color from `colorScale`
154
- - Tooltip hover handlers
155
-
156
- Accepts all standard div props. Pass `colorScale` to override the Root-level color scale.
157
-
158
- ### MonthLabels
159
-
160
- Iterates over month labels, calling the children render function for each label.
161
-
162
- ```tsx
163
- <HeatGraph.MonthLabels>
164
- {({ label, totalWeeks }) => (
165
- <span style={{ left: `${(label.column / totalWeeks) * 100}%` }}>
166
- {HeatGraph.MONTH_SHORT[label.month]}
167
- </span>
168
- )}
169
- </HeatGraph.MonthLabels>
170
- ```
171
-
172
- Each label has `{ month: number, column: number }`. Use `totalWeeks` to compute label positions. Use `MONTH_SHORT[label.month]` for English labels, or format with `Intl.DateTimeFormat` for localization.
173
-
174
- ### DayLabels
175
-
176
- Iterates over day-of-week labels, calling the children render function for each label.
177
-
178
- ```tsx
179
- <HeatGraph.DayLabels>
180
- {({ label }) => (
181
- <span>{HeatGraph.DAY_SHORT[label.dayOfWeek]}</span>
182
- )}
183
- </HeatGraph.DayLabels>
184
- ```
185
-
186
- Each label has `{ dayOfWeek: number, row: number }` where `dayOfWeek` is 0=Sun..6=Sat. Use `DAY_SHORT[label.dayOfWeek]` for English labels, or format with `Intl.DateTimeFormat` for localization.
187
-
188
- ### Legend
189
-
190
- Iterates over legend levels, calling the children render function for each item. Each item has `{ level: number, color: string | undefined }`.
191
-
192
- ### LegendLevel
193
-
194
- A `<div>` that reads from legend item context. Automatically applies `backgroundColor` from the color scale. Use inside `Legend`.
195
-
196
- ### Tooltip
197
-
198
- Renders only when a cell is hovered. Positioned by Radix Popper relative to the hovered cell. Accepts Radix Popper `Content` props (`side`, `sideOffset`, `align`, etc.).
199
-
200
- ```tsx
201
- <HeatGraph.Tooltip side="top" sideOffset={8} className="...">
202
- {({ cell }) => <div>{cell.count} contributions</div>}
203
- </HeatGraph.Tooltip>
204
- ```
205
-
206
- ### autoLevels(n)
207
-
208
- Default classification function. Maps counts into `n` evenly-distributed levels (0 to n-1). Level 0 is always count 0.
209
-
210
- ```ts
211
- type ClassifyFn = (counts: number[]) => (count: number) => number;
212
- ```
213
-
214
- To provide a custom classifier:
215
-
216
- ```tsx
217
- const myClassify: HeatGraph.ClassifyFn = (counts) => {
218
- const p75 = percentile(counts, 75);
219
- return (count) => {
220
- if (count === 0) return 0;
221
- if (count < p75 * 0.25) return 1;
222
- if (count < p75 * 0.5) return 2;
223
- if (count < p75) return 3;
224
- return 4;
225
- };
226
- };
227
-
228
- <HeatGraph.Root data={data} classify={myClassify}>
229
- ```
230
-
231
- ### MONTH_SHORT
232
-
233
- English month abbreviations array: `["Jan", "Feb", ..., "Dec"]`. Index by `MonthLabel.month`.
234
-
235
- ### DAY_SHORT
236
-
237
- English day abbreviations array: `["Sun", "Mon", ..., "Sat"]`. Index by `DayLabel.dayOfWeek`.