@dxos/plugin-assistant 0.8.4-main.9735255 → 0.8.4-main.9be5663bfe

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 (604) hide show
  1. package/dist/lib/browser/AssistantSettings-7QMO3LGF.mjs +97 -0
  2. package/dist/lib/browser/AssistantSettings-7QMO3LGF.mjs.map +7 -0
  3. package/dist/lib/browser/blueprints/index.mjs +3 -7
  4. package/dist/lib/browser/chunk-ATHYBVGN.mjs +176 -0
  5. package/dist/lib/browser/chunk-ATHYBVGN.mjs.map +7 -0
  6. package/dist/lib/browser/chunk-EZRS3J25.mjs +30 -0
  7. package/dist/lib/browser/chunk-EZRS3J25.mjs.map +7 -0
  8. package/dist/lib/browser/chunk-RUV2WOQH.mjs +154 -0
  9. package/dist/lib/browser/chunk-RUV2WOQH.mjs.map +7 -0
  10. package/dist/lib/browser/create-chat-LBZHGVSN.mjs +82 -0
  11. package/dist/lib/browser/create-chat-LBZHGVSN.mjs.map +7 -0
  12. package/dist/lib/browser/ensure-companion-chat-FR4AWZ2P.mjs +65 -0
  13. package/dist/lib/browser/ensure-companion-chat-FR4AWZ2P.mjs.map +7 -0
  14. package/dist/lib/browser/index.mjs +3163 -245
  15. package/dist/lib/browser/index.mjs.map +4 -4
  16. package/dist/lib/browser/meta.json +1 -1
  17. package/dist/lib/browser/on-create-space-54RNX5JI.mjs +22 -0
  18. package/dist/lib/browser/on-create-space-54RNX5JI.mjs.map +7 -0
  19. package/dist/lib/browser/operations/index.mjs +13 -0
  20. package/dist/lib/browser/operations/index.mjs.map +7 -0
  21. package/dist/lib/browser/resolve-navigation-targets-NZOD66NY.mjs +22 -0
  22. package/dist/lib/browser/resolve-navigation-targets-NZOD66NY.mjs.map +7 -0
  23. package/dist/lib/browser/run-prompt-in-new-chat-4YQ37XIS.mjs +136 -0
  24. package/dist/lib/browser/run-prompt-in-new-chat-4YQ37XIS.mjs.map +7 -0
  25. package/dist/lib/browser/set-current-chat-WJI3WAVM.mjs +54 -0
  26. package/dist/lib/browser/set-current-chat-WJI3WAVM.mjs.map +7 -0
  27. package/dist/lib/browser/types/index.mjs +1 -4
  28. package/dist/lib/browser/update-chat-name-3Y36KFAS.mjs +71 -0
  29. package/dist/lib/browser/update-chat-name-3Y36KFAS.mjs.map +7 -0
  30. package/dist/lib/node-esm/AssistantSettings-UVUTKO7E.mjs +98 -0
  31. package/dist/lib/node-esm/AssistantSettings-UVUTKO7E.mjs.map +7 -0
  32. package/dist/lib/node-esm/blueprints/index.mjs +3 -7
  33. package/dist/lib/node-esm/chunk-NZIKC7AN.mjs +32 -0
  34. package/dist/lib/node-esm/chunk-NZIKC7AN.mjs.map +7 -0
  35. package/dist/lib/node-esm/chunk-PXAJSTGZ.mjs +177 -0
  36. package/dist/lib/node-esm/chunk-PXAJSTGZ.mjs.map +7 -0
  37. package/dist/lib/node-esm/chunk-PY4X6FJT.mjs +155 -0
  38. package/dist/lib/node-esm/chunk-PY4X6FJT.mjs.map +7 -0
  39. package/dist/lib/node-esm/create-chat-3BEG4R6J.mjs +83 -0
  40. package/dist/lib/node-esm/create-chat-3BEG4R6J.mjs.map +7 -0
  41. package/dist/lib/node-esm/ensure-companion-chat-BLP7NT32.mjs +66 -0
  42. package/dist/lib/node-esm/ensure-companion-chat-BLP7NT32.mjs.map +7 -0
  43. package/dist/lib/node-esm/index.mjs +3163 -245
  44. package/dist/lib/node-esm/index.mjs.map +4 -4
  45. package/dist/lib/node-esm/meta.json +1 -1
  46. package/dist/lib/node-esm/on-create-space-YRPZ6HZY.mjs +23 -0
  47. package/dist/lib/node-esm/on-create-space-YRPZ6HZY.mjs.map +7 -0
  48. package/dist/lib/node-esm/operations/index.mjs +14 -0
  49. package/dist/lib/node-esm/operations/index.mjs.map +7 -0
  50. package/dist/lib/node-esm/resolve-navigation-targets-3PPK7XLH.mjs +23 -0
  51. package/dist/lib/node-esm/resolve-navigation-targets-3PPK7XLH.mjs.map +7 -0
  52. package/dist/lib/node-esm/run-prompt-in-new-chat-2IJBSDTM.mjs +137 -0
  53. package/dist/lib/node-esm/run-prompt-in-new-chat-2IJBSDTM.mjs.map +7 -0
  54. package/dist/lib/node-esm/set-current-chat-KBMMZULR.mjs +55 -0
  55. package/dist/lib/node-esm/set-current-chat-KBMMZULR.mjs.map +7 -0
  56. package/dist/lib/node-esm/types/index.mjs +1 -4
  57. package/dist/lib/node-esm/update-chat-name-HM2P4NSI.mjs +72 -0
  58. package/dist/lib/node-esm/update-chat-name-HM2P4NSI.mjs.map +7 -0
  59. package/dist/types/src/AssistantPlugin.d.ts.map +1 -1
  60. package/dist/types/src/blueprints/assistant/blueprint.d.ts +4 -0
  61. package/dist/types/src/blueprints/assistant/blueprint.d.ts.map +1 -0
  62. package/dist/types/src/blueprints/assistant/blueprint.test.d.ts +2 -0
  63. package/dist/types/src/blueprints/assistant/blueprint.test.d.ts.map +1 -0
  64. package/dist/types/src/blueprints/assistant/index.d.ts +2 -0
  65. package/dist/types/src/blueprints/assistant/index.d.ts.map +1 -0
  66. package/dist/types/src/blueprints/index.d.ts +1 -6
  67. package/dist/types/src/blueprints/index.d.ts.map +1 -1
  68. package/dist/types/src/capabilities/ai-service.d.ts +6 -0
  69. package/dist/types/src/capabilities/ai-service.d.ts.map +1 -0
  70. package/dist/types/src/capabilities/app-graph-builder.d.ts +6 -0
  71. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -0
  72. package/dist/types/src/capabilities/blueprint-definition.d.ts +5 -0
  73. package/dist/types/src/capabilities/blueprint-definition.d.ts.map +1 -0
  74. package/dist/types/src/capabilities/companion-chat-provisioner.d.ts +9 -0
  75. package/dist/types/src/capabilities/companion-chat-provisioner.d.ts.map +1 -0
  76. package/dist/types/src/capabilities/edge-model-resolver.d.ts +7 -0
  77. package/dist/types/src/capabilities/edge-model-resolver.d.ts.map +1 -0
  78. package/dist/types/src/capabilities/index.d.ts +41 -11
  79. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  80. package/dist/types/src/capabilities/local-model-resolver.d.ts +13 -0
  81. package/dist/types/src/capabilities/local-model-resolver.d.ts.map +1 -0
  82. package/dist/types/src/capabilities/markdown.d.ts +5 -0
  83. package/dist/types/src/capabilities/markdown.d.ts.map +1 -0
  84. package/dist/types/src/capabilities/migrations.d.ts +5 -0
  85. package/dist/types/src/capabilities/migrations.d.ts.map +1 -0
  86. package/dist/types/src/capabilities/operation-handler.d.ts +6 -0
  87. package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -0
  88. package/dist/types/src/capabilities/react-surface.d.ts +5 -0
  89. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
  90. package/dist/types/src/capabilities/{settings/settings.d.ts → settings.d.ts} +4 -3
  91. package/dist/types/src/capabilities/settings.d.ts.map +1 -0
  92. package/dist/types/src/capabilities/state.d.ts +21 -0
  93. package/dist/types/src/capabilities/state.d.ts.map +1 -0
  94. package/dist/types/src/capabilities/toolkit.d.ts +6 -0
  95. package/dist/types/src/capabilities/toolkit.d.ts.map +1 -0
  96. package/dist/types/src/components/AssistantSettings/AssistantSettings.d.ts +4 -6
  97. package/dist/types/src/components/AssistantSettings/AssistantSettings.d.ts.map +1 -1
  98. package/dist/types/src/components/AssistantSettings/AssistantSettings.stories.d.ts +553 -0
  99. package/dist/types/src/components/AssistantSettings/AssistantSettings.stories.d.ts.map +1 -0
  100. package/dist/types/src/components/AssistantSettings/index.d.ts +1 -1
  101. package/dist/types/src/components/AssistantSettings/index.d.ts.map +1 -1
  102. package/dist/types/src/components/Chat/Chat.d.ts +15 -11
  103. package/dist/types/src/components/Chat/Chat.d.ts.map +1 -1
  104. package/dist/types/src/components/ChatProgress/ChatProgress.d.ts +6 -3
  105. package/dist/types/src/components/ChatProgress/ChatProgress.d.ts.map +1 -1
  106. package/dist/types/src/components/ChatPrompt/ChatActions.d.ts +2 -1
  107. package/dist/types/src/components/ChatPrompt/ChatActions.d.ts.map +1 -1
  108. package/dist/types/src/components/ChatPrompt/ChatOptions.d.ts.map +1 -1
  109. package/dist/types/src/components/ChatPrompt/ChatReferences.d.ts.map +1 -1
  110. package/dist/types/src/components/ChatThread/ChatThread.d.ts +3 -3
  111. package/dist/types/src/components/ChatThread/ChatThread.d.ts.map +1 -1
  112. package/dist/types/src/components/ChatThread/ChatThread.stories.d.ts +535 -303
  113. package/dist/types/src/components/ChatThread/ChatThread.stories.d.ts.map +1 -1
  114. package/dist/types/src/components/ChatThread/MarkdownStream.stories.d.ts +573 -0
  115. package/dist/types/src/components/ChatThread/MarkdownStream.stories.d.ts.map +1 -0
  116. package/dist/types/src/components/ChatThread/registry.d.ts.map +1 -1
  117. package/dist/types/src/components/ChatThread/sync.d.ts +6 -5
  118. package/dist/types/src/components/ChatThread/sync.d.ts.map +1 -1
  119. package/dist/types/src/components/ChatThread/tool-widget-state.d.ts +18 -0
  120. package/dist/types/src/components/ChatThread/tool-widget-state.d.ts.map +1 -0
  121. package/dist/types/src/components/ChatThread/tool-widget-state.test.d.ts +2 -0
  122. package/dist/types/src/components/ChatThread/tool-widget-state.test.d.ts.map +1 -0
  123. package/dist/types/src/components/ChatThread/widgets/FallbackWidget.d.ts +8 -0
  124. package/dist/types/src/components/ChatThread/widgets/FallbackWidget.d.ts.map +1 -0
  125. package/dist/types/src/components/ChatThread/widgets/PromptWidget.d.ts +14 -0
  126. package/dist/types/src/components/ChatThread/widgets/PromptWidget.d.ts.map +1 -0
  127. package/dist/types/src/components/ChatThread/widgets/ReasoningWidget.d.ts +25 -0
  128. package/dist/types/src/components/ChatThread/widgets/ReasoningWidget.d.ts.map +1 -0
  129. package/dist/types/src/components/ChatThread/widgets/ReasoningWidget.stories.d.ts +18 -0
  130. package/dist/types/src/components/ChatThread/widgets/ReasoningWidget.stories.d.ts.map +1 -0
  131. package/dist/types/src/components/ChatThread/widgets/ReferenceWidget.d.ts +9 -0
  132. package/dist/types/src/components/ChatThread/widgets/ReferenceWidget.d.ts.map +1 -0
  133. package/dist/types/src/components/ChatThread/widgets/SelectWidget.d.ts +14 -0
  134. package/dist/types/src/components/ChatThread/widgets/SelectWidget.d.ts.map +1 -0
  135. package/dist/types/src/components/ChatThread/widgets/StatsWidget.d.ts +12 -0
  136. package/dist/types/src/components/ChatThread/widgets/StatsWidget.d.ts.map +1 -0
  137. package/dist/types/src/components/ChatThread/widgets/StatusWidget.d.ts +25 -0
  138. package/dist/types/src/components/ChatThread/widgets/StatusWidget.d.ts.map +1 -0
  139. package/dist/types/src/components/ChatThread/widgets/SuggestionWidget.d.ts +11 -0
  140. package/dist/types/src/components/ChatThread/widgets/SuggestionWidget.d.ts.map +1 -0
  141. package/dist/types/src/components/ChatThread/widgets/SummaryWidget.d.ts +5 -0
  142. package/dist/types/src/components/ChatThread/widgets/SummaryWidget.d.ts.map +1 -0
  143. package/dist/types/src/components/ChatThread/widgets/ToolWidget.d.ts +9 -0
  144. package/dist/types/src/components/ChatThread/widgets/ToolWidget.d.ts.map +1 -0
  145. package/dist/types/src/components/ChatThread/widgets/ToolWidget.stories.d.ts +553 -0
  146. package/dist/types/src/components/ChatThread/widgets/ToolWidget.stories.d.ts.map +1 -0
  147. package/dist/types/src/components/ChatThread/widgets/index.d.ts +11 -0
  148. package/dist/types/src/components/ChatThread/widgets/index.d.ts.map +1 -0
  149. package/dist/types/src/components/ProcessTree/ProcessTree.d.ts +10 -0
  150. package/dist/types/src/components/ProcessTree/ProcessTree.d.ts.map +1 -0
  151. package/dist/types/src/components/ProcessTree/ProcessTree.stories.d.ts +8 -0
  152. package/dist/types/src/components/ProcessTree/ProcessTree.stories.d.ts.map +1 -0
  153. package/dist/types/src/components/ProcessTree/index.d.ts +2 -0
  154. package/dist/types/src/components/ProcessTree/index.d.ts.map +1 -0
  155. package/dist/types/src/components/TemplateEditor/TemplateEditor.d.ts +5 -4
  156. package/dist/types/src/components/TemplateEditor/TemplateEditor.d.ts.map +1 -1
  157. package/dist/types/src/components/TemplateEditor/TemplateEditor.stories.d.ts +529 -295
  158. package/dist/types/src/components/TemplateEditor/TemplateEditor.stories.d.ts.map +1 -1
  159. package/dist/types/src/components/TemplateEditor/TemplateForm.d.ts.map +1 -1
  160. package/dist/types/src/components/TemplateEditor/TemplateForm.stories.d.ts +529 -295
  161. package/dist/types/src/components/TemplateEditor/TemplateForm.stories.d.ts.map +1 -1
  162. package/dist/types/src/components/ToolBlock/ToolBlock.d.ts +0 -9
  163. package/dist/types/src/components/ToolBlock/ToolBlock.d.ts.map +1 -1
  164. package/dist/types/src/components/Toolbox/Toolbox.d.ts +10 -8
  165. package/dist/types/src/components/Toolbox/Toolbox.d.ts.map +1 -1
  166. package/dist/types/src/components/Toolbox/Toolbox.stories.d.ts +529 -295
  167. package/dist/types/src/components/Toolbox/Toolbox.stories.d.ts.map +1 -1
  168. package/dist/types/src/components/Typewriter/AssistantToolbar.d.ts +2 -2
  169. package/dist/types/src/components/Typewriter/AssistantToolbar.d.ts.map +1 -1
  170. package/dist/types/src/components/Typewriter/Typewriter.d.ts.map +1 -1
  171. package/dist/types/src/components/Typewriter/Typewriter.stories.d.ts.map +1 -1
  172. package/dist/types/src/components/index.d.ts +3 -12
  173. package/dist/types/src/components/index.d.ts.map +1 -1
  174. package/dist/types/src/containers/AgentArticle/AgentArticle.d.ts +6 -0
  175. package/dist/types/src/containers/AgentArticle/AgentArticle.d.ts.map +1 -0
  176. package/dist/types/src/containers/AgentArticle/AgentArticle.stories.d.ts +554 -0
  177. package/dist/types/src/containers/AgentArticle/AgentArticle.stories.d.ts.map +1 -0
  178. package/dist/types/src/containers/AgentArticle/index.d.ts +2 -0
  179. package/dist/types/src/containers/AgentArticle/index.d.ts.map +1 -0
  180. package/dist/types/src/containers/AgentProperties/AgentProperties.d.ts +6 -0
  181. package/dist/types/src/containers/AgentProperties/AgentProperties.d.ts.map +1 -0
  182. package/dist/types/src/containers/AgentProperties/AgentProperties.stories.d.ts +554 -0
  183. package/dist/types/src/containers/AgentProperties/AgentProperties.stories.d.ts.map +1 -0
  184. package/dist/types/src/containers/AgentProperties/index.d.ts +2 -0
  185. package/dist/types/src/containers/AgentProperties/index.d.ts.map +1 -0
  186. package/dist/types/src/containers/BlueprintArticle/BlueprintArticle.d.ts +6 -0
  187. package/dist/types/src/containers/BlueprintArticle/BlueprintArticle.d.ts.map +1 -0
  188. package/dist/types/src/containers/BlueprintArticle/index.d.ts +2 -0
  189. package/dist/types/src/containers/BlueprintArticle/index.d.ts.map +1 -0
  190. package/dist/types/src/containers/ChatCompanion/ChatCompanion.d.ts +18 -0
  191. package/dist/types/src/containers/ChatCompanion/ChatCompanion.d.ts.map +1 -0
  192. package/dist/types/src/containers/ChatCompanion/index.d.ts +2 -0
  193. package/dist/types/src/containers/ChatCompanion/index.d.ts.map +1 -0
  194. package/dist/types/src/containers/ChatContainer/ChatContainer.d.ts +12 -0
  195. package/dist/types/src/containers/ChatContainer/ChatContainer.d.ts.map +1 -0
  196. package/dist/types/src/containers/ChatContainer/index.d.ts +2 -0
  197. package/dist/types/src/containers/ChatContainer/index.d.ts.map +1 -0
  198. package/dist/types/src/{components → containers/ChatDialog}/ChatDialog.d.ts +2 -3
  199. package/dist/types/src/containers/ChatDialog/ChatDialog.d.ts.map +1 -0
  200. package/dist/types/src/containers/ChatDialog/index.d.ts +2 -0
  201. package/dist/types/src/containers/ChatDialog/index.d.ts.map +1 -0
  202. package/dist/types/src/containers/PromptArticle/PromptArticle.d.ts +6 -0
  203. package/dist/types/src/containers/PromptArticle/PromptArticle.d.ts.map +1 -0
  204. package/dist/types/src/containers/PromptArticle/index.d.ts +2 -0
  205. package/dist/types/src/containers/PromptArticle/index.d.ts.map +1 -0
  206. package/dist/types/src/containers/PromptList/PromptList.d.ts +6 -0
  207. package/dist/types/src/containers/PromptList/PromptList.d.ts.map +1 -0
  208. package/dist/types/src/containers/PromptList/PromptList.stories.d.ts +559 -0
  209. package/dist/types/src/containers/PromptList/PromptList.stories.d.ts.map +1 -0
  210. package/dist/types/src/containers/PromptList/index.d.ts +2 -0
  211. package/dist/types/src/containers/PromptList/index.d.ts.map +1 -0
  212. package/dist/types/src/containers/TracePanel/TracePanel.d.ts +6 -0
  213. package/dist/types/src/containers/TracePanel/TracePanel.d.ts.map +1 -0
  214. package/dist/types/src/containers/TracePanel/dxn-extractor.d.ts +19 -0
  215. package/dist/types/src/containers/TracePanel/dxn-extractor.d.ts.map +1 -0
  216. package/dist/types/src/containers/TracePanel/dxn-extractor.test.d.ts +2 -0
  217. package/dist/types/src/containers/TracePanel/dxn-extractor.test.d.ts.map +1 -0
  218. package/dist/types/src/containers/TracePanel/index.d.ts +4 -0
  219. package/dist/types/src/containers/TracePanel/index.d.ts.map +1 -0
  220. package/dist/types/src/containers/TriggerStatus/TriggerStatus.d.ts +4 -0
  221. package/dist/types/src/containers/TriggerStatus/TriggerStatus.d.ts.map +1 -0
  222. package/dist/types/src/containers/TriggerStatus/index.d.ts +2 -0
  223. package/dist/types/src/containers/TriggerStatus/index.d.ts.map +1 -0
  224. package/dist/types/src/containers/index.d.ts +12 -0
  225. package/dist/types/src/containers/index.d.ts.map +1 -0
  226. package/dist/types/src/extensions/index.d.ts +2 -0
  227. package/dist/types/src/extensions/index.d.ts.map +1 -0
  228. package/dist/types/src/extensions/prompt-extension.d.ts +10 -0
  229. package/dist/types/src/extensions/prompt-extension.d.ts.map +1 -0
  230. package/dist/types/src/hooks/useBlueprintRegistry.d.ts.map +1 -1
  231. package/dist/types/src/hooks/useChatProcessor.d.ts +7 -6
  232. package/dist/types/src/hooks/useChatProcessor.d.ts.map +1 -1
  233. package/dist/types/src/hooks/useChatServices.d.ts +3 -6
  234. package/dist/types/src/hooks/useChatServices.d.ts.map +1 -1
  235. package/dist/types/src/hooks/useChatToolbarActions.d.ts +2 -2
  236. package/dist/types/src/hooks/useChatToolbarActions.d.ts.map +1 -1
  237. package/dist/types/src/hooks/useContextBinder.d.ts +3 -2
  238. package/dist/types/src/hooks/useContextBinder.d.ts.map +1 -1
  239. package/dist/types/src/hooks/useContextObjects.d.ts.map +1 -1
  240. package/dist/types/src/hooks/useFilteredTypes.d.ts +1 -1
  241. package/dist/types/src/hooks/useFilteredTypes.d.ts.map +1 -1
  242. package/dist/types/src/hooks/usePresets.d.ts +1 -1
  243. package/dist/types/src/hooks/usePresets.d.ts.map +1 -1
  244. package/dist/types/src/hooks/useReferencesProvider.d.ts.map +1 -1
  245. package/dist/types/src/index.d.ts +1 -1
  246. package/dist/types/src/index.d.ts.map +1 -1
  247. package/dist/types/src/meta.d.ts +2 -0
  248. package/dist/types/src/meta.d.ts.map +1 -1
  249. package/dist/types/src/operations/create-chat.d.ts +5 -0
  250. package/dist/types/src/operations/create-chat.d.ts.map +1 -0
  251. package/dist/types/src/operations/definitions.d.ts +135 -0
  252. package/dist/types/src/operations/definitions.d.ts.map +1 -0
  253. package/dist/types/src/operations/ensure-companion-chat.d.ts +5 -0
  254. package/dist/types/src/operations/ensure-companion-chat.d.ts.map +1 -0
  255. package/dist/types/src/operations/index.d.ts +4 -0
  256. package/dist/types/src/operations/index.d.ts.map +1 -0
  257. package/dist/types/src/operations/on-create-space.d.ts +5 -0
  258. package/dist/types/src/operations/on-create-space.d.ts.map +1 -0
  259. package/dist/types/src/operations/resolve-navigation-targets.d.ts +15 -0
  260. package/dist/types/src/operations/resolve-navigation-targets.d.ts.map +1 -0
  261. package/dist/types/src/operations/run-prompt-in-new-chat.d.ts +5 -0
  262. package/dist/types/src/operations/run-prompt-in-new-chat.d.ts.map +1 -0
  263. package/dist/types/src/operations/set-current-chat.d.ts +5 -0
  264. package/dist/types/src/operations/set-current-chat.d.ts.map +1 -0
  265. package/dist/types/src/operations/update-chat-name.d.ts +5 -0
  266. package/dist/types/src/operations/update-chat-name.d.ts.map +1 -0
  267. package/dist/types/src/processor/index.d.ts +0 -1
  268. package/dist/types/src/processor/index.d.ts.map +1 -1
  269. package/dist/types/src/processor/processor.d.ts +33 -28
  270. package/dist/types/src/processor/processor.d.ts.map +1 -1
  271. package/dist/types/src/testing/test-generator.d.ts.map +1 -1
  272. package/dist/types/src/testing/test-services.d.ts +1 -1
  273. package/dist/types/src/testing/test-services.d.ts.map +1 -1
  274. package/dist/types/src/translations.d.ts +529 -295
  275. package/dist/types/src/translations.d.ts.map +1 -1
  276. package/dist/types/src/types/Assistant.d.ts +17 -39
  277. package/dist/types/src/types/Assistant.d.ts.map +1 -1
  278. package/dist/types/src/types/Settings.d.ts +10 -0
  279. package/dist/types/src/types/Settings.d.ts.map +1 -0
  280. package/dist/types/src/types/capabilities.d.ts +11 -0
  281. package/dist/types/src/types/capabilities.d.ts.map +1 -1
  282. package/dist/types/src/types/index.d.ts +1 -1
  283. package/dist/types/src/types/index.d.ts.map +1 -1
  284. package/dist/types/src/types/service.d.ts.map +1 -1
  285. package/dist/types/tsconfig.tsbuildinfo +1 -1
  286. package/package.json +120 -92
  287. package/src/AssistantPlugin.tsx +148 -52
  288. package/src/blueprints/assistant/blueprint.conversations.json +1 -0
  289. package/src/blueprints/assistant/blueprint.test.ts +46 -0
  290. package/src/blueprints/assistant/blueprint.ts +31 -0
  291. package/src/blueprints/assistant/index.ts +5 -0
  292. package/src/blueprints/index.ts +1 -8
  293. package/src/capabilities/{ai-service/ai-service.ts → ai-service.ts} +4 -3
  294. package/src/capabilities/app-graph-builder.ts +217 -0
  295. package/src/capabilities/blueprint-definition.ts +58 -0
  296. package/src/capabilities/companion-chat-provisioner.ts +164 -0
  297. package/src/capabilities/{edge-model-resolver/edge-model-resolver.ts → edge-model-resolver.ts} +4 -3
  298. package/src/capabilities/index.ts +22 -11
  299. package/src/capabilities/{local-model-resolver/local-model-resolver.ts → local-model-resolver.ts} +4 -3
  300. package/src/capabilities/markdown.ts +40 -0
  301. package/src/capabilities/migrations.ts +34 -0
  302. package/src/capabilities/operation-handler.ts +16 -0
  303. package/src/capabilities/react-surface.tsx +157 -0
  304. package/src/capabilities/{settings/settings.ts → settings.ts} +5 -4
  305. package/src/capabilities/{state/state.ts → state.ts} +11 -3
  306. package/src/capabilities/toolkit.ts +13 -0
  307. package/src/components/AssistantSettings/AssistantSettings.stories.tsx +34 -0
  308. package/src/components/AssistantSettings/AssistantSettings.tsx +104 -92
  309. package/src/components/AssistantSettings/index.ts +2 -2
  310. package/src/components/Chat/Chat.tsx +88 -45
  311. package/src/components/ChatProgress/ChatProgress.tsx +9 -7
  312. package/src/components/ChatPrompt/ChatActions.tsx +25 -5
  313. package/src/components/ChatPrompt/ChatOptions.tsx +43 -29
  314. package/src/components/ChatPrompt/ChatReferences.tsx +18 -8
  315. package/src/components/ChatThread/ChatThread.stories.tsx +31 -48
  316. package/src/components/ChatThread/ChatThread.tsx +28 -17
  317. package/src/components/ChatThread/Link.tsx +1 -1
  318. package/src/components/ChatThread/MarkdownStream.stories.tsx +243 -0
  319. package/src/components/ChatThread/registry.tsx +107 -43
  320. package/src/components/ChatThread/sync.test.ts +12 -10
  321. package/src/components/ChatThread/sync.ts +43 -32
  322. package/src/components/ChatThread/testing/thinking.md +21 -0
  323. package/src/components/ChatThread/testing/thread-1.md +30 -0
  324. package/src/components/ChatThread/testing/{thread.md → thread-2.md} +19 -0
  325. package/src/components/ChatThread/testing/thread-widgets.md +79 -0
  326. package/src/components/ChatThread/tool-widget-state.test.ts +34 -0
  327. package/src/components/ChatThread/tool-widget-state.ts +48 -0
  328. package/src/components/ChatThread/widgets/FallbackWidget.tsx +26 -0
  329. package/src/components/ChatThread/widgets/PromptWidget.ts +28 -0
  330. package/src/components/ChatThread/widgets/ReasoningWidget.stories.tsx +68 -0
  331. package/src/components/ChatThread/widgets/ReasoningWidget.ts +133 -0
  332. package/src/components/ChatThread/widgets/ReferenceWidget.ts +31 -0
  333. package/src/components/ChatThread/widgets/SelectWidget.ts +37 -0
  334. package/src/components/ChatThread/widgets/StatsWidget.ts +29 -0
  335. package/src/components/ChatThread/widgets/StatusWidget.ts +133 -0
  336. package/src/components/ChatThread/widgets/SuggestionWidget.ts +41 -0
  337. package/src/components/ChatThread/widgets/SummaryWidget.tsx +28 -0
  338. package/src/components/ChatThread/widgets/ToolWidget.stories.tsx +54 -0
  339. package/src/components/ChatThread/widgets/ToolWidget.tsx +156 -0
  340. package/src/components/ChatThread/widgets/index.ts +14 -0
  341. package/src/components/ProcessTree/ProcessTree.stories.tsx +109 -0
  342. package/src/components/ProcessTree/ProcessTree.tsx +85 -0
  343. package/src/components/ProcessTree/index.ts +5 -0
  344. package/src/components/TemplateEditor/TemplateEditor.stories.tsx +4 -9
  345. package/src/components/TemplateEditor/TemplateEditor.tsx +50 -42
  346. package/src/components/TemplateEditor/TemplateForm.stories.tsx +7 -6
  347. package/src/components/TemplateEditor/TemplateForm.tsx +9 -10
  348. package/src/components/TemplateEditor/extensions/handlebars-extension.ts +4 -4
  349. package/src/components/ToolBlock/ToolBlock.tsx +21 -20
  350. package/src/components/Toolbox/Toolbox.stories.tsx +4 -6
  351. package/src/components/Toolbox/Toolbox.tsx +66 -60
  352. package/src/components/Typewriter/AssistantToolbar.tsx +7 -7
  353. package/src/components/Typewriter/Typewriter.stories.tsx +18 -15
  354. package/src/components/Typewriter/Typewriter.tsx +6 -10
  355. package/src/components/Typewriter/assistant-extension.tsx +5 -8
  356. package/src/components/index.ts +3 -7
  357. package/src/containers/AgentArticle/AgentArticle.stories.tsx +105 -0
  358. package/src/containers/AgentArticle/AgentArticle.tsx +157 -0
  359. package/src/containers/AgentArticle/index.ts +5 -0
  360. package/src/containers/AgentProperties/AgentProperties.stories.tsx +91 -0
  361. package/src/containers/AgentProperties/AgentProperties.tsx +169 -0
  362. package/src/containers/AgentProperties/index.ts +5 -0
  363. package/src/containers/BlueprintArticle/BlueprintArticle.tsx +29 -0
  364. package/src/containers/BlueprintArticle/index.ts +5 -0
  365. package/src/{components → containers/ChatCompanion}/ChatCompanion.tsx +23 -44
  366. package/src/containers/ChatCompanion/index.ts +5 -0
  367. package/src/containers/ChatContainer/ChatContainer.tsx +95 -0
  368. package/src/containers/ChatContainer/index.ts +5 -0
  369. package/src/{components → containers/ChatDialog}/ChatDialog.tsx +10 -12
  370. package/src/containers/ChatDialog/index.ts +5 -0
  371. package/src/containers/PromptArticle/PromptArticle.tsx +59 -0
  372. package/src/containers/PromptArticle/index.ts +5 -0
  373. package/src/containers/PromptList/PromptList.stories.tsx +129 -0
  374. package/src/containers/PromptList/PromptList.tsx +49 -0
  375. package/src/containers/PromptList/index.ts +5 -0
  376. package/src/containers/TracePanel/TracePanel.tsx +361 -0
  377. package/src/containers/TracePanel/dxn-extractor.test.ts +153 -0
  378. package/src/containers/TracePanel/dxn-extractor.ts +178 -0
  379. package/src/containers/TracePanel/index.ts +9 -0
  380. package/src/containers/TriggerStatus/TriggerStatus.tsx +144 -0
  381. package/src/containers/TriggerStatus/index.ts +5 -0
  382. package/src/containers/index.ts +16 -0
  383. package/src/extensions/index.ts +5 -0
  384. package/src/extensions/prompt-extension.ts +111 -0
  385. package/src/hooks/useBlueprintRegistry.ts +8 -4
  386. package/src/hooks/useChatProcessor.ts +30 -17
  387. package/src/hooks/useChatServices.ts +7 -28
  388. package/src/hooks/useChatToolbarActions.ts +13 -12
  389. package/src/hooks/useContextBinder.ts +17 -6
  390. package/src/hooks/useContextObjects.ts +8 -4
  391. package/src/hooks/useFilteredTypes.ts +3 -3
  392. package/src/hooks/usePresets.ts +2 -1
  393. package/src/hooks/useReferencesProvider.ts +1 -5
  394. package/src/index.ts +1 -1
  395. package/src/meta.ts +6 -3
  396. package/src/operations/create-chat.ts +80 -0
  397. package/src/operations/definitions.ts +127 -0
  398. package/src/operations/ensure-companion-chat.ts +61 -0
  399. package/src/operations/index.ts +17 -0
  400. package/src/operations/on-create-space.ts +24 -0
  401. package/src/operations/resolve-navigation-targets.ts +26 -0
  402. package/src/operations/run-prompt-in-new-chat.ts +113 -0
  403. package/src/operations/set-current-chat.ts +50 -0
  404. package/src/operations/update-chat-name.ts +61 -0
  405. package/src/processor/index.ts +0 -1
  406. package/src/processor/presets.ts +2 -2
  407. package/src/processor/processor.test.ts +18 -50
  408. package/src/processor/processor.ts +190 -129
  409. package/src/queue-logger.ts +2 -2
  410. package/src/testing/test-generator.ts +45 -14
  411. package/src/testing/test-sequence.ts +3 -3
  412. package/src/testing/test-services.ts +2 -2
  413. package/src/translations.ts +134 -83
  414. package/src/types/Assistant.ts +8 -56
  415. package/src/types/Settings.ts +21 -0
  416. package/src/types/capabilities.ts +11 -3
  417. package/src/types/events.ts +2 -2
  418. package/src/types/index.ts +3 -1
  419. package/src/types/service.ts +5 -5
  420. package/dist/lib/browser/BlueprintArticle-WP3G5GLG.mjs +0 -31
  421. package/dist/lib/browser/BlueprintArticle-WP3G5GLG.mjs.map +0 -7
  422. package/dist/lib/browser/ChatCompanion-ECQYUQ2B.mjs +0 -153
  423. package/dist/lib/browser/ChatCompanion-ECQYUQ2B.mjs.map +0 -7
  424. package/dist/lib/browser/ChatContainer-QCCOFBUX.mjs +0 -73
  425. package/dist/lib/browser/ChatContainer-QCCOFBUX.mjs.map +0 -7
  426. package/dist/lib/browser/ChatDialog-SMK4RSZU.mjs +0 -85
  427. package/dist/lib/browser/ChatDialog-SMK4RSZU.mjs.map +0 -7
  428. package/dist/lib/browser/PromptArticle-K362ZPAE.mjs +0 -53
  429. package/dist/lib/browser/PromptArticle-K362ZPAE.mjs.map +0 -7
  430. package/dist/lib/browser/ai-service-5GUDOEWF.mjs +0 -21
  431. package/dist/lib/browser/ai-service-5GUDOEWF.mjs.map +0 -7
  432. package/dist/lib/browser/app-graph-builder-DSNH2OMY.mjs +0 -212
  433. package/dist/lib/browser/app-graph-builder-DSNH2OMY.mjs.map +0 -7
  434. package/dist/lib/browser/blueprint-definition-DGHH7MUU.mjs +0 -14
  435. package/dist/lib/browser/blueprint-definition-DGHH7MUU.mjs.map +0 -7
  436. package/dist/lib/browser/chunk-3JYPE2MM.mjs +0 -1832
  437. package/dist/lib/browser/chunk-3JYPE2MM.mjs.map +0 -7
  438. package/dist/lib/browser/chunk-DKQMSMBN.mjs +0 -326
  439. package/dist/lib/browser/chunk-DKQMSMBN.mjs.map +0 -7
  440. package/dist/lib/browser/chunk-EXVT7D4B.mjs +0 -23
  441. package/dist/lib/browser/chunk-EXVT7D4B.mjs.map +0 -7
  442. package/dist/lib/browser/chunk-ML3QCFKA.mjs +0 -265
  443. package/dist/lib/browser/chunk-ML3QCFKA.mjs.map +0 -7
  444. package/dist/lib/browser/chunk-MRJVYGLU.mjs +0 -208
  445. package/dist/lib/browser/chunk-MRJVYGLU.mjs.map +0 -7
  446. package/dist/lib/browser/chunk-V772AMZM.mjs +0 -250
  447. package/dist/lib/browser/chunk-V772AMZM.mjs.map +0 -7
  448. package/dist/lib/browser/chunk-WGQTU6UJ.mjs +0 -41
  449. package/dist/lib/browser/chunk-WGQTU6UJ.mjs.map +0 -7
  450. package/dist/lib/browser/edge-model-resolver-26BOY6HY.mjs +0 -20
  451. package/dist/lib/browser/edge-model-resolver-26BOY6HY.mjs.map +0 -7
  452. package/dist/lib/browser/local-model-resolver-ZFIM6GGV.mjs +0 -19
  453. package/dist/lib/browser/local-model-resolver-ZFIM6GGV.mjs.map +0 -7
  454. package/dist/lib/browser/operation-resolver-7XJLBRQY.mjs +0 -132
  455. package/dist/lib/browser/operation-resolver-7XJLBRQY.mjs.map +0 -7
  456. package/dist/lib/browser/react-surface-NCITRSJJ.mjs +0 -109
  457. package/dist/lib/browser/react-surface-NCITRSJJ.mjs.map +0 -7
  458. package/dist/lib/browser/repair-6QGAKOVM.mjs +0 -54
  459. package/dist/lib/browser/repair-6QGAKOVM.mjs.map +0 -7
  460. package/dist/lib/browser/settings-4ZDLUMYE.mjs +0 -32
  461. package/dist/lib/browser/settings-4ZDLUMYE.mjs.map +0 -7
  462. package/dist/lib/browser/state-AN6336ZX.mjs +0 -26
  463. package/dist/lib/browser/state-AN6336ZX.mjs.map +0 -7
  464. package/dist/lib/browser/toolkit-7AVTEPMA.mjs +0 -18
  465. package/dist/lib/browser/toolkit-7AVTEPMA.mjs.map +0 -7
  466. package/dist/lib/node-esm/BlueprintArticle-WZ76E2C4.mjs +0 -32
  467. package/dist/lib/node-esm/BlueprintArticle-WZ76E2C4.mjs.map +0 -7
  468. package/dist/lib/node-esm/ChatCompanion-Q4FUZ2MW.mjs +0 -154
  469. package/dist/lib/node-esm/ChatCompanion-Q4FUZ2MW.mjs.map +0 -7
  470. package/dist/lib/node-esm/ChatContainer-AKI33HIB.mjs +0 -74
  471. package/dist/lib/node-esm/ChatContainer-AKI33HIB.mjs.map +0 -7
  472. package/dist/lib/node-esm/ChatDialog-AP45PVZR.mjs +0 -86
  473. package/dist/lib/node-esm/ChatDialog-AP45PVZR.mjs.map +0 -7
  474. package/dist/lib/node-esm/PromptArticle-D4HAIIC6.mjs +0 -54
  475. package/dist/lib/node-esm/PromptArticle-D4HAIIC6.mjs.map +0 -7
  476. package/dist/lib/node-esm/ai-service-PXKKCFIF.mjs +0 -22
  477. package/dist/lib/node-esm/ai-service-PXKKCFIF.mjs.map +0 -7
  478. package/dist/lib/node-esm/app-graph-builder-TJCUEXW5.mjs +0 -213
  479. package/dist/lib/node-esm/app-graph-builder-TJCUEXW5.mjs.map +0 -7
  480. package/dist/lib/node-esm/blueprint-definition-SEMDEIYG.mjs +0 -15
  481. package/dist/lib/node-esm/blueprint-definition-SEMDEIYG.mjs.map +0 -7
  482. package/dist/lib/node-esm/chunk-355W5B27.mjs +0 -251
  483. package/dist/lib/node-esm/chunk-355W5B27.mjs.map +0 -7
  484. package/dist/lib/node-esm/chunk-75PHXBN3.mjs +0 -327
  485. package/dist/lib/node-esm/chunk-75PHXBN3.mjs.map +0 -7
  486. package/dist/lib/node-esm/chunk-DCA5QWQT.mjs +0 -209
  487. package/dist/lib/node-esm/chunk-DCA5QWQT.mjs.map +0 -7
  488. package/dist/lib/node-esm/chunk-MSBPC4RJ.mjs +0 -42
  489. package/dist/lib/node-esm/chunk-MSBPC4RJ.mjs.map +0 -7
  490. package/dist/lib/node-esm/chunk-POWB2BPC.mjs +0 -25
  491. package/dist/lib/node-esm/chunk-POWB2BPC.mjs.map +0 -7
  492. package/dist/lib/node-esm/chunk-XI5T3MJC.mjs +0 -1833
  493. package/dist/lib/node-esm/chunk-XI5T3MJC.mjs.map +0 -7
  494. package/dist/lib/node-esm/chunk-ZRIPP7YF.mjs +0 -267
  495. package/dist/lib/node-esm/chunk-ZRIPP7YF.mjs.map +0 -7
  496. package/dist/lib/node-esm/edge-model-resolver-G5KMODPO.mjs +0 -21
  497. package/dist/lib/node-esm/edge-model-resolver-G5KMODPO.mjs.map +0 -7
  498. package/dist/lib/node-esm/local-model-resolver-KDZLYI7Y.mjs +0 -20
  499. package/dist/lib/node-esm/local-model-resolver-KDZLYI7Y.mjs.map +0 -7
  500. package/dist/lib/node-esm/operation-resolver-SX4WMNA7.mjs +0 -133
  501. package/dist/lib/node-esm/operation-resolver-SX4WMNA7.mjs.map +0 -7
  502. package/dist/lib/node-esm/react-surface-ST6V7LPE.mjs +0 -110
  503. package/dist/lib/node-esm/react-surface-ST6V7LPE.mjs.map +0 -7
  504. package/dist/lib/node-esm/repair-QJ7CQDKU.mjs +0 -55
  505. package/dist/lib/node-esm/repair-QJ7CQDKU.mjs.map +0 -7
  506. package/dist/lib/node-esm/settings-CQEOHR3R.mjs +0 -33
  507. package/dist/lib/node-esm/settings-CQEOHR3R.mjs.map +0 -7
  508. package/dist/lib/node-esm/state-HDON4REW.mjs +0 -27
  509. package/dist/lib/node-esm/state-HDON4REW.mjs.map +0 -7
  510. package/dist/lib/node-esm/toolkit-OWGCEKOO.mjs +0 -19
  511. package/dist/lib/node-esm/toolkit-OWGCEKOO.mjs.map +0 -7
  512. package/dist/types/src/blueprints/assistant-blueprint.d.ts +0 -209
  513. package/dist/types/src/blueprints/assistant-blueprint.d.ts.map +0 -1
  514. package/dist/types/src/capabilities/ai-service/ai-service.d.ts +0 -5
  515. package/dist/types/src/capabilities/ai-service/ai-service.d.ts.map +0 -1
  516. package/dist/types/src/capabilities/ai-service/index.d.ts +0 -3
  517. package/dist/types/src/capabilities/ai-service/index.d.ts.map +0 -1
  518. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts +0 -6
  519. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +0 -1
  520. package/dist/types/src/capabilities/app-graph-builder/index.d.ts +0 -3
  521. package/dist/types/src/capabilities/app-graph-builder/index.d.ts.map +0 -1
  522. package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts +0 -21
  523. package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts.map +0 -1
  524. package/dist/types/src/capabilities/blueprint-definition/index.d.ts +0 -4
  525. package/dist/types/src/capabilities/blueprint-definition/index.d.ts.map +0 -1
  526. package/dist/types/src/capabilities/edge-model-resolver/edge-model-resolver.d.ts +0 -6
  527. package/dist/types/src/capabilities/edge-model-resolver/edge-model-resolver.d.ts.map +0 -1
  528. package/dist/types/src/capabilities/edge-model-resolver/index.d.ts +0 -3
  529. package/dist/types/src/capabilities/edge-model-resolver/index.d.ts.map +0 -1
  530. package/dist/types/src/capabilities/local-model-resolver/index.d.ts +0 -3
  531. package/dist/types/src/capabilities/local-model-resolver/index.d.ts.map +0 -1
  532. package/dist/types/src/capabilities/local-model-resolver/local-model-resolver.d.ts +0 -12
  533. package/dist/types/src/capabilities/local-model-resolver/local-model-resolver.d.ts.map +0 -1
  534. package/dist/types/src/capabilities/operation-resolver/index.d.ts +0 -3
  535. package/dist/types/src/capabilities/operation-resolver/index.d.ts.map +0 -1
  536. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +0 -5
  537. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts.map +0 -1
  538. package/dist/types/src/capabilities/react-surface/index.d.ts +0 -3
  539. package/dist/types/src/capabilities/react-surface/index.d.ts.map +0 -1
  540. package/dist/types/src/capabilities/react-surface/react-surface.d.ts +0 -5
  541. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +0 -1
  542. package/dist/types/src/capabilities/repair/index.d.ts +0 -3
  543. package/dist/types/src/capabilities/repair/index.d.ts.map +0 -1
  544. package/dist/types/src/capabilities/repair/repair.d.ts +0 -6
  545. package/dist/types/src/capabilities/repair/repair.d.ts.map +0 -1
  546. package/dist/types/src/capabilities/settings/index.d.ts +0 -15
  547. package/dist/types/src/capabilities/settings/index.d.ts.map +0 -1
  548. package/dist/types/src/capabilities/settings/settings.d.ts.map +0 -1
  549. package/dist/types/src/capabilities/state/index.d.ts +0 -11
  550. package/dist/types/src/capabilities/state/index.d.ts.map +0 -1
  551. package/dist/types/src/capabilities/state/state.d.ts +0 -13
  552. package/dist/types/src/capabilities/state/state.d.ts.map +0 -1
  553. package/dist/types/src/capabilities/toolkit/index.d.ts +0 -3
  554. package/dist/types/src/capabilities/toolkit/index.d.ts.map +0 -1
  555. package/dist/types/src/capabilities/toolkit/toolkit.d.ts +0 -5
  556. package/dist/types/src/capabilities/toolkit/toolkit.d.ts.map +0 -1
  557. package/dist/types/src/components/BlueprintArticle.d.ts +0 -7
  558. package/dist/types/src/components/BlueprintArticle.d.ts.map +0 -1
  559. package/dist/types/src/components/ChatCompanion.d.ts +0 -13
  560. package/dist/types/src/components/ChatCompanion.d.ts.map +0 -1
  561. package/dist/types/src/components/ChatContainer.d.ts +0 -19
  562. package/dist/types/src/components/ChatContainer.d.ts.map +0 -1
  563. package/dist/types/src/components/ChatDialog.d.ts.map +0 -1
  564. package/dist/types/src/components/PromptArticle.d.ts +0 -7
  565. package/dist/types/src/components/PromptArticle.d.ts.map +0 -1
  566. package/dist/types/src/functions/index.d.ts +0 -4
  567. package/dist/types/src/functions/index.d.ts.map +0 -1
  568. package/dist/types/src/functions/object-list.d.ts +0 -10
  569. package/dist/types/src/functions/object-list.d.ts.map +0 -1
  570. package/dist/types/src/functions/object-load.d.ts +0 -8
  571. package/dist/types/src/functions/object-load.d.ts.map +0 -1
  572. package/dist/types/src/functions/object-search.d.ts +0 -10
  573. package/dist/types/src/functions/object-search.d.ts.map +0 -1
  574. package/dist/types/src/processor/update-name.d.ts +0 -10
  575. package/dist/types/src/processor/update-name.d.ts.map +0 -1
  576. package/dist/types/src/types/AssistantAction.d.ts +0 -95
  577. package/dist/types/src/types/AssistantAction.d.ts.map +0 -1
  578. package/src/blueprints/assistant-blueprint.ts +0 -62
  579. package/src/capabilities/ai-service/index.ts +0 -7
  580. package/src/capabilities/app-graph-builder/app-graph-builder.ts +0 -180
  581. package/src/capabilities/app-graph-builder/index.ts +0 -7
  582. package/src/capabilities/blueprint-definition/blueprint-definition.ts +0 -60
  583. package/src/capabilities/blueprint-definition/index.ts +0 -8
  584. package/src/capabilities/edge-model-resolver/index.ts +0 -7
  585. package/src/capabilities/local-model-resolver/index.ts +0 -7
  586. package/src/capabilities/operation-resolver/index.ts +0 -7
  587. package/src/capabilities/operation-resolver/operation-resolver.ts +0 -110
  588. package/src/capabilities/react-surface/index.ts +0 -7
  589. package/src/capabilities/react-surface/react-surface.tsx +0 -95
  590. package/src/capabilities/repair/index.ts +0 -7
  591. package/src/capabilities/repair/repair.ts +0 -63
  592. package/src/capabilities/settings/index.ts +0 -7
  593. package/src/capabilities/state/index.ts +0 -7
  594. package/src/capabilities/toolkit/index.ts +0 -7
  595. package/src/capabilities/toolkit/toolkit.ts +0 -26
  596. package/src/components/BlueprintArticle.tsx +0 -29
  597. package/src/components/ChatContainer.tsx +0 -61
  598. package/src/components/PromptArticle.tsx +0 -50
  599. package/src/functions/index.ts +0 -7
  600. package/src/functions/object-list.ts +0 -49
  601. package/src/functions/object-load.ts +0 -47
  602. package/src/functions/object-search.ts +0 -46
  603. package/src/processor/update-name.ts +0 -59
  604. package/src/types/AssistantAction.ts +0 -75
@@ -10,23 +10,24 @@ import * as Array from 'effect/Array';
10
10
  import * as Option from 'effect/Option';
11
11
  import React, { type PropsWithChildren, useCallback, useEffect, useMemo, useRef, useState } from 'react';
12
12
 
13
+ import { type Chat as ChatModule } from '@dxos/assistant-toolkit';
13
14
  import { Event } from '@dxos/async';
14
- import { type Database, Obj } from '@dxos/echo';
15
+ import { type Database, Filter, Obj } from '@dxos/echo';
15
16
  import { useVoiceInput } from '@dxos/plugin-transcription';
16
- import { useQueue } from '@dxos/react-client/echo';
17
+ import { type Queue, useQuery } from '@dxos/react-client/echo';
17
18
  import { useIdentity } from '@dxos/react-client/halo';
18
19
  import { Input, type ThemedClassName, useDynamicRef, useTranslation } from '@dxos/react-ui';
19
20
  import { ChatEditor, type ChatEditorController, type ChatEditorProps } from '@dxos/react-ui-chat';
20
21
  import { type MarkdownStreamController } from '@dxos/react-ui-components';
21
- import { MenuProvider, ToolbarMenu } from '@dxos/react-ui-menu';
22
+ import { Menu, MenuRootProps } from '@dxos/react-ui-menu';
22
23
  import { Message } from '@dxos/types';
23
- import { mx } from '@dxos/ui-theme';
24
- import { isTruthy } from '@dxos/util';
24
+ import { composable, composableProps, mx } from '@dxos/ui-theme';
25
+ import { isTruthy, trim } from '@dxos/util';
26
+
27
+ import { useChatToolbarActions } from '#hooks';
28
+ import { meta } from '#meta';
25
29
 
26
- import { useChatToolbarActions } from '../../hooks';
27
- import { meta } from '../../meta';
28
30
  import { type AiChatProcessor } from '../../processor';
29
- import { type Assistant } from '../../types';
30
31
  import {
31
32
  ChatActions,
32
33
  type ChatActionsProps,
@@ -36,7 +37,6 @@ import {
36
37
  ChatStatusIndicator,
37
38
  } from '../ChatPrompt';
38
39
  import { ChatThread as NaturalChatThread, type ChatThreadProps as NaturalChatThreadProps } from '../ChatThread';
39
-
40
40
  import { type ChatEvent } from './events';
41
41
 
42
42
  //
@@ -49,7 +49,7 @@ type ChatContextValue = {
49
49
  debug?: boolean;
50
50
  event: Event<ChatEvent>;
51
51
  db?: Database.Database;
52
- chat?: Assistant.Chat;
52
+ chat?: ChatModule.Chat;
53
53
  messages: Message.Message[];
54
54
  processor: AiChatProcessor;
55
55
  };
@@ -62,22 +62,47 @@ export const [ChatContextProvider, useChatContext] = createContext<ChatContextVa
62
62
 
63
63
  type ChatRootProps = PropsWithChildren<
64
64
  Pick<ChatContextValue, 'db' | 'chat' | 'processor'> & {
65
+ queue?: Queue;
65
66
  onEvent?: (event: ChatEvent) => void;
66
67
  }
67
68
  >;
68
69
 
69
- const ChatRoot = ({ children, chat, processor, onEvent, ...props }: ChatRootProps) => {
70
+ const ChatRoot = ({ children, chat, queue, processor, onEvent, ...props }: ChatRootProps) => {
70
71
  const [debug, setDebug] = useState(false);
71
72
  const pending = useAtomValue(processor.messages);
72
73
  const streaming = useAtomValue(processor.streaming);
73
74
  const lastPrompt = useRef<string | undefined>(undefined);
74
75
 
75
76
  // Messages.
76
- const queue = useQueue<Message.Message>(chat?.queue.dxn);
77
+ const storedMessages = useQuery(queue, Filter.type(Message.Message));
77
78
  const messages = useMemo(() => {
78
- const queueMessages = queue?.objects?.filter(Obj.instanceOf(Message.Message)) ?? [];
79
- return Array.dedupeWith([...queueMessages, ...pending], ({ id: a }, { id: b }) => a === b);
80
- }, [queue?.objects, pending]);
79
+ return Array.dedupeWith([...storedMessages, ...pending], ({ id: a }, { id: b }) => a === b);
80
+ }, [storedMessages, pending]);
81
+
82
+ // Debug.
83
+ const dump = useCallback(async () => {
84
+ const objects = processor.context.getObjects();
85
+ const blueprints = processor.context.getBlueprints();
86
+ const system = await processor.getSystemPrompt();
87
+ const tools = await processor.getTools();
88
+
89
+ // eslint-disable-next-line no-console
90
+ // eslint-disable-next-line no-console
91
+ console.group('Chat', { objects, blueprints });
92
+ // eslint-disable-next-line no-console
93
+ console.log(trim`
94
+ System Prompt:
95
+ ${system}
96
+ `);
97
+ // eslint-disable-next-line no-console
98
+ console.log(trim`
99
+ Tools:
100
+ ${Object.values(tools)
101
+ .map((tool) => JSON.stringify(tool, null, 2))
102
+ .join('\n')}
103
+ `);
104
+ console.groupEnd();
105
+ }, [processor]);
81
106
 
82
107
  // Events.
83
108
  const event = useMemo(() => new Event<ChatEvent>(), []);
@@ -85,7 +110,14 @@ const ChatRoot = ({ children, chat, processor, onEvent, ...props }: ChatRootProp
85
110
  return event.on((ev) => {
86
111
  switch (ev.type) {
87
112
  case 'toggle-debug': {
88
- setDebug((current) => !current);
113
+ setDebug((debug) => {
114
+ if (debug) {
115
+ return false;
116
+ } else {
117
+ void dump();
118
+ return true;
119
+ }
120
+ });
89
121
  break;
90
122
  }
91
123
 
@@ -118,7 +150,7 @@ const ChatRoot = ({ children, chat, processor, onEvent, ...props }: ChatRootProp
118
150
 
119
151
  onEvent?.(ev);
120
152
  });
121
- }, [event, processor, streaming, onEvent]);
153
+ }, [event, dump, processor, streaming, onEvent]);
122
154
 
123
155
  const db = props.db ?? (chat && Obj.getDatabase(chat));
124
156
 
@@ -143,24 +175,30 @@ ChatRoot.displayName = 'Chat.Root';
143
175
  // Viewport
144
176
  //
145
177
 
146
- type ChatViewportProps = ThemedClassName<PropsWithChildren>;
178
+ const CHAT_VIEWPORT_NAME = 'Chat.Viewport';
147
179
 
148
- const ChatViewport = ({ classNames, children }: ChatViewportProps) => {
180
+ type ChatViewportProps = {};
181
+
182
+ const ChatViewport = composable<HTMLDivElement, ChatViewportProps>(({ children, ...props }, forwardedRef) => {
149
183
  return (
150
- <div role='none' className={mx('flex flex-col bs-full is-full', classNames)}>
184
+ <div {...composableProps(props, { classNames: 'dx-expander flex flex-col' })} ref={forwardedRef}>
151
185
  {children}
152
186
  </div>
153
187
  );
154
- };
188
+ });
189
+
190
+ ChatViewport.displayName = CHAT_VIEWPORT_NAME;
155
191
 
156
192
  //
157
193
  // Thread
158
194
  //
159
195
 
196
+ const CHAT_THREAD_NAME = 'Chat.Thread';
197
+
160
198
  type ChatThreadProps = Omit<NaturalChatThreadProps, 'identity' | 'messages' | 'tools'>;
161
199
 
162
200
  const ChatThread = (props: ChatThreadProps) => {
163
- const { debug, event, messages, processor } = useChatContext(ChatThread.displayName);
201
+ const { debug, event, messages, processor } = useChatContext(CHAT_THREAD_NAME);
164
202
  const identity = useIdentity();
165
203
  const error = useAtomValue(processor.error).pipe(Option.getOrUndefined);
166
204
 
@@ -206,12 +244,14 @@ const ChatThread = (props: ChatThreadProps) => {
206
244
  );
207
245
  };
208
246
 
209
- ChatThread.displayName = 'Chat.Thread';
247
+ ChatThread.displayName = CHAT_THREAD_NAME;
210
248
 
211
249
  //
212
250
  // Prompt
213
251
  //
214
252
 
253
+ const CHAT_PROMPT_NAME = 'Chat.Prompt';
254
+
215
255
  type ChatPromptProps = ThemedClassName<
216
256
  {
217
257
  outline?: boolean;
@@ -238,7 +278,7 @@ const ChatPrompt = ({
238
278
  onOnlineChange,
239
279
  }: ChatPromptProps) => {
240
280
  const { t } = useTranslation(meta.id);
241
- const { db, processor, event } = useChatContext(ChatPrompt.displayName);
281
+ const { db, processor, event } = useChatContext(CHAT_PROMPT_NAME);
242
282
 
243
283
  const error = useAtomValue(processor.error).pipe(Option.getOrUndefined);
244
284
  const streaming = useAtomValue(processor.streaming);
@@ -337,9 +377,9 @@ const ChatPrompt = ({
337
377
  <div
338
378
  role='group'
339
379
  className={mx(
340
- 'flex flex-col is-full density-fine',
380
+ 'flex flex-col w-full dx-density-fine',
341
381
  outline &&
342
- 'bg-groupSurface border border-subduedSeparator transition transition-border [&:has(.cm-content:focus)]:border-separator rounded',
382
+ 'bg-group-surface border border-subdued-separator transition transition-border [&:has(.cm-content:focus)]:border-separator rounded-sm',
343
383
  classNames,
344
384
  )}
345
385
  >
@@ -349,8 +389,8 @@ const ChatPrompt = ({
349
389
  ref={editorRef}
350
390
  autoFocus
351
391
  lineWrapping
352
- classNames='col-span-2 pbs-0.5'
353
- placeholder={placeholder ?? t('prompt placeholder')}
392
+ classNames='col-span-2 pt-0.5'
393
+ placeholder={placeholder ?? t('prompt.placeholder')}
354
394
  extensions={extensions}
355
395
  onSubmit={handleSubmit}
356
396
  />
@@ -381,8 +421,8 @@ const ChatPrompt = ({
381
421
  {/* TODO(burdon): Move offline switch into dialog. */}
382
422
  {online !== undefined && (
383
423
  <Input.Root>
384
- <Input.Label srOnly>{t('online switch label')}</Input.Label>
385
- <Input.Switch classNames='mli-2' checked={online} onCheckedChange={onOnlineChange} />
424
+ <Input.Label srOnly>{t('online-switch.label')}</Input.Label>
425
+ <Input.Switch classNames='mx-2' checked={online} onCheckedChange={onOnlineChange} />
386
426
  </Input.Root>
387
427
  )}
388
428
  </ChatActions>
@@ -392,29 +432,32 @@ const ChatPrompt = ({
392
432
  );
393
433
  };
394
434
 
395
- ChatPrompt.displayName = 'Chat.Prompt';
435
+ ChatPrompt.displayName = CHAT_PROMPT_NAME;
396
436
 
397
437
  //
398
438
  // Toolbar
399
439
  //
400
440
 
401
- type ChatToolbarProps = ThemedClassName<{ companionTo?: Obj.Unknown }>;
402
-
403
- const ChatToolbar = ({ classNames, companionTo }: ChatToolbarProps) => {
404
- const { chat } = useChatContext(ChatToolbar.displayName);
405
- const menu = useChatToolbarActions({ chat, companionTo });
441
+ const CHAT_TOOLBAR_NAME = 'Chat.Toolbar';
406
442
 
407
- return (
408
- <MenuProvider
409
- {...menu}
410
- attendableId={companionTo ? Obj.getDXN(companionTo).toString() : chat ? Obj.getDXN(chat).toString() : ''}
411
- >
412
- <ToolbarMenu classNames={classNames} textBlockWidth />
413
- </MenuProvider>
414
- );
443
+ type ChatToolbarProps = Pick<MenuRootProps, 'attendableId'> & {
444
+ companionTo?: Obj.Unknown;
415
445
  };
416
446
 
417
- ChatToolbar.displayName = 'Chat.Toolbar';
447
+ const ChatToolbar = composable<HTMLDivElement, ChatToolbarProps>(
448
+ ({ attendableId, companionTo, ...props }, forwardedRef) => {
449
+ const { chat } = useChatContext(CHAT_TOOLBAR_NAME);
450
+ const menuActions = useChatToolbarActions({ chat, companionTo });
451
+
452
+ return (
453
+ <Menu.Root {...menuActions} attendableId={attendableId}>
454
+ <Menu.Toolbar {...composableProps(props)} ref={forwardedRef} />
455
+ </Menu.Root>
456
+ );
457
+ },
458
+ );
459
+
460
+ ChatToolbar.displayName = CHAT_TOOLBAR_NAME;
418
461
 
419
462
  //
420
463
  // Chat
@@ -5,16 +5,18 @@
5
5
  import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';
6
6
 
7
7
  import { addEventListener } from '@dxos/async';
8
+ import { type Queue } from '@dxos/echo-db';
8
9
  import { ProgressBar, type ProgressBarProps, TextCrawl, useExecutionGraph } from '@dxos/react-ui-components';
9
10
 
10
- import { type Assistant } from '../../types';
11
-
12
11
  export type ChatProgressProps = {
13
- chat: Assistant.Chat;
12
+ traceQueue?: Queue;
14
13
  };
15
14
 
16
- export const ChatProgress = ({ chat }: ChatProgressProps) => {
17
- const { commits } = useExecutionGraph(chat.traceQueue?.target, true);
15
+ /**
16
+ * Displays execution progress from the space's invocation trace queue.
17
+ */
18
+ export const ChatProgress = ({ traceQueue }: ChatProgressProps) => {
19
+ const { commits } = useExecutionGraph(traceQueue, true);
18
20
  const nodes = useMemo(() => commits.map((commit) => ({ id: commit.id, message: commit.message })), [commits]);
19
21
  const lines = useMemo(() => commits.map((commit) => commit.message), [commits]);
20
22
 
@@ -46,9 +48,9 @@ export const ChatProgress = ({ chat }: ChatProgressProps) => {
46
48
  }, [nodes.length]);
47
49
 
48
50
  return (
49
- <div role='none' tabIndex={0} ref={ref} className='flex flex-col outline-none'>
51
+ <div role='none' tabIndex={0} ref={ref} className='flex flex-col outline-hidden'>
50
52
  <ProgressBar nodes={nodes} index={index} onSelect={handleSelect} />
51
- <TextCrawl classNames='pis-4 text-sm text-description' lines={lines} autoAdvance />
53
+ <TextCrawl classNames='ps-4 text-sm text-description' lines={lines} autoAdvance />
52
54
  </div>
53
55
  );
54
56
  };
@@ -7,7 +7,8 @@ import React, { type PropsWithChildren } from 'react';
7
7
  import { IconButton, type ThemedClassName, useTranslation } from '@dxos/react-ui';
8
8
  import { mx } from '@dxos/ui-theme';
9
9
 
10
- import { meta } from '../../meta';
10
+ import { meta } from '#meta';
11
+
11
12
  import { type ChatEvent } from '../Chat';
12
13
 
13
14
  export type ChatActionsProps = ThemedClassName<
@@ -15,15 +16,24 @@ export type ChatActionsProps = ThemedClassName<
15
16
  microphone?: boolean;
16
17
  recording?: boolean;
17
18
  processing?: boolean;
19
+ debug?: boolean;
18
20
  onEvent?: (event: ChatEvent) => void;
19
21
  }>
20
22
  >;
21
23
 
22
- export const ChatActions = ({ classNames, children, microphone, recording, processing, onEvent }: ChatActionsProps) => {
24
+ export const ChatActions = ({
25
+ classNames,
26
+ children,
27
+ microphone,
28
+ recording,
29
+ processing,
30
+ debug,
31
+ onEvent,
32
+ }: ChatActionsProps) => {
23
33
  const { t } = useTranslation(meta.id);
24
34
 
25
35
  return (
26
- <div className={mx('flex items-center mie-1', classNames)}>
36
+ <div className={mx('flex items-center me-1', classNames)}>
27
37
  {children}
28
38
 
29
39
  <IconButton
@@ -31,7 +41,7 @@ export const ChatActions = ({ classNames, children, microphone, recording, proce
31
41
  variant='ghost'
32
42
  icon='ph--x--regular'
33
43
  iconOnly
34
- label={t('cancel processing button')}
44
+ label={t('cancel-processing.button')}
35
45
  onClick={() => onEvent?.({ type: 'cancel' })}
36
46
  />
37
47
 
@@ -43,13 +53,23 @@ export const ChatActions = ({ classNames, children, microphone, recording, proce
43
53
  icon='ph--microphone--regular'
44
54
  iconOnly
45
55
  noTooltip
46
- label={t('microphone button')}
56
+ label={t('microphone.button')}
47
57
  onMouseDown={() => onEvent?.({ type: 'record-start' })}
48
58
  onMouseUp={() => onEvent?.({ type: 'record-stop' })}
49
59
  onTouchStart={() => onEvent?.({ type: 'record-start' })}
50
60
  onTouchEnd={() => onEvent?.({ type: 'record-stop' })}
51
61
  />
52
62
  )}
63
+
64
+ {debug && (
65
+ <IconButton
66
+ variant='ghost'
67
+ icon='ph--wrench--regular'
68
+ iconOnly
69
+ label={t('debug.button')}
70
+ onClick={() => onEvent?.({ type: 'toggle-debug' })}
71
+ />
72
+ )}
53
73
  </div>
54
74
  );
55
75
  };
@@ -2,26 +2,23 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
+ import * as Option from 'effect/Option';
5
6
  import React, { type JSX, useMemo, useState } from 'react';
6
7
 
7
8
  import { type AiContextBinder } from '@dxos/assistant';
8
9
  import { type Blueprint } from '@dxos/blueprints';
9
10
  import { type Database, Filter, Obj, Type } from '@dxos/echo';
11
+ import { Annotation } from '@dxos/echo';
10
12
  import { useQuery } from '@dxos/react-client/echo';
11
13
  import { IconButton, Popover, Select, useTranslation } from '@dxos/react-ui';
12
- import { Listbox, SearchList, useSearchListResults } from '@dxos/react-ui-searchlist';
14
+ import { Listbox, SearchList, useSearchListResults } from '@dxos/react-ui-search';
13
15
  import { Tabs } from '@dxos/react-ui-tabs';
16
+ import { getStyles, mx } from '@dxos/ui-theme';
14
17
 
15
- import {
16
- useActiveBlueprints,
17
- useBlueprintHandlers,
18
- useBlueprints,
19
- useContextObjects,
20
- useFilteredTypes,
21
- } from '../../hooks';
22
- import { meta } from '../../meta';
18
+ import { useActiveBlueprints, useBlueprintHandlers, useBlueprints, useContextObjects, useFilteredTypes } from '#hooks';
19
+ import { meta } from '#meta';
23
20
 
24
- const panelClassNames = 'is-[calc(100dvw-.5rem)] sm:is-max md:is-72 max-is-[--text-content]';
21
+ const panelClassNames = 'w-[calc(100dvw-.5rem)] sm:w-max md:w-72 max-w-document-width';
25
22
 
26
23
  export type ChatOptionsProps = {
27
24
  db: Database.Database;
@@ -42,7 +39,7 @@ export const ChatOptions = ({ db, context, blueprintRegistry, presets, preset, o
42
39
  <div role='none' className='flex p-2'>
43
40
  <Popover.Root>
44
41
  <Popover.Trigger asChild>
45
- <IconButton variant='ghost' icon='ph--plus--regular' iconOnly label={t('context objects button')} />
42
+ <IconButton variant='ghost' icon='ph--plus--regular' iconOnly label={t('context-objects.button')} />
46
43
  </Popover.Trigger>
47
44
  <Popover.Portal>
48
45
  <Popover.Content side='top' classNames={panelClassNames}>
@@ -60,27 +57,34 @@ export const ChatOptions = ({ db, context, blueprintRegistry, presets, preset, o
60
57
  variant='ghost'
61
58
  icon='ph--sliders-horizontal--regular'
62
59
  iconOnly
63
- label={t('context settings button')}
60
+ label={t('context-settings.button')}
64
61
  />
65
62
  </Popover.Trigger>
66
63
  <Popover.Portal>
67
64
  <Popover.Content side='top' classNames={panelClassNames}>
68
65
  <Popover.Viewport>
69
66
  <Tabs.Root orientation='horizontal' defaultValue='blueprints' defaultActivePart='list' tabIndex={-1}>
70
- <Tabs.Viewport classNames='max-bs-[--radix-popover-content-available-height] grid grid-rows-[1fr_min-content] [&_[cmdk-root]]:contents [&_[role="tabpanel"]]:grid [&_[role="tabpanel"]]:grid-rows-[1fr_min-content] [&_[role="listbox"]]:min-bs-0 [&_[role="listbox"]]:overflow-y-auto [&_[role="tabpanel"]]:min-bs-0 [&_[role="tabpanel"]]:pli-cardSpacingChrome [&_[role="tabpanel"][data-state="active"]]:order-first [&_[role="tabpanel"][data-state="inactive"]]:hidden'>
71
- <Tabs.Tabpanel value='blueprints' tabIndex={-1} classNames='dx-focus-ring-inset'>
67
+ <Tabs.Viewport
68
+ classNames={mx(
69
+ 'max-h-(--radix-popover-content-available-height) grid grid-rows-[1fr_min-content]',
70
+ '[&_[cmdk-root]]:contents [&_[role="tabpanel"]]:grid [&_[role="tabpanel"]]:grid-rows-[1fr_min-content]',
71
+ '[&_[role="listbox"]]:min-h-0 [&_[role="listbox"]]:overflow-y-auto',
72
+ '[&_[role="tabpanel"]]:min-h-0 [&_[role="tabpanel"]]:px-form-chrome [&_[role="tabpanel"][data-state="active"]]:order-first [&_[role="tabpanel"][data-state="inactive"]]:hidden',
73
+ )}
74
+ >
75
+ <Tabs.Panel value='blueprints' tabIndex={-1} classNames='dx-focus-ring-inset'>
72
76
  <BlueprintsPanel blueprintRegistry={blueprintRegistry} db={db} context={context} />
73
- </Tabs.Tabpanel>
74
- <Tabs.Tabpanel value='model' tabIndex={-1} classNames='dx-focus-ring-inset !pli-0'>
77
+ </Tabs.Panel>
78
+ <Tabs.Panel value='model' tabIndex={-1} classNames='dx-focus-ring-inset px-0!'>
75
79
  <ModelsPanel presets={presets} preset={preset} onPresetChange={onPresetChange} />
76
- </Tabs.Tabpanel>
77
- <Tabs.Tablist classNames='sm:overflow-x-hidden justify-center p-[--dx-cardSpacingChrome] border-bs border-subduedSeparator order-last'>
80
+ </Tabs.Panel>
81
+ <Tabs.Tablist classNames='justify-center p-form-chrome border-y border-subdued-separator order-last'>
78
82
  <Tabs.IconTab
79
83
  value='blueprints'
80
84
  icon='ph--blueprint--regular'
81
- label={t('blueprints in context title')}
85
+ label={t('blueprints-in-context.title')}
82
86
  />
83
- <Tabs.IconTab value='model' label={t('chat model title')} icon='ph--cpu--regular' />
87
+ <Tabs.IconTab value='model' label={t('chat-model.title')} icon='ph--cpu--regular' />
84
88
  </Tabs.Tablist>
85
89
  </Tabs.Viewport>
86
90
  </Tabs.Root>
@@ -111,7 +115,7 @@ const BlueprintsPanel = ({
111
115
 
112
116
  return (
113
117
  <SearchList.Root onSearch={handleSearch}>
114
- <SearchList.Content classNames='plb-cardSpacingChrome'>
118
+ <SearchList.Content classNames='py-form-chrome'>
115
119
  <SearchList.Viewport>
116
120
  {results.map((blueprint) => {
117
121
  const isActive = activeBlueprints.has(blueprint.key);
@@ -128,7 +132,7 @@ const BlueprintsPanel = ({
128
132
  })}
129
133
  </SearchList.Viewport>
130
134
  </SearchList.Content>
131
- <SearchList.Input placeholder={t('search placeholder')} classNames='mbe-cardSpacingChrome' autoFocus />
135
+ <SearchList.Input placeholder={t('search.placeholder')} classNames='mb-form-chrome' autoFocus />
132
136
  </SearchList.Root>
133
137
  );
134
138
  };
@@ -164,7 +168,7 @@ const ObjectsPanel = ({ db, context }: Pick<ChatOptionsProps, 'db' | 'context'>)
164
168
  const typename = Type.getTypename(type);
165
169
  return {
166
170
  typename,
167
- label: t('typename label', { ns: typename, defaultValue: typename }),
171
+ label: t('typename.label', { ns: typename, defaultValue: typename }),
168
172
  };
169
173
  });
170
174
 
@@ -190,16 +194,23 @@ const ObjectsPanel = ({ db, context }: Pick<ChatOptionsProps, 'db' | 'context'>)
190
194
 
191
195
  return (
192
196
  <SearchList.Root onSearch={handleSearch}>
193
- <SearchList.Content classNames='p-cardSpacingChrome [&:has([cmdk-list-sizer]:empty)]:plb-0'>
197
+ <SearchList.Content classNames='p-form-chrome [&:has([cmdk-list-sizer]:empty)]:py-0'>
194
198
  <SearchList.Viewport>
195
199
  {results.length ? (
196
200
  results.map((object) => {
197
201
  const isActive = contextObjects.findIndex((obj) => obj.id === object.id) !== -1;
202
+ const { icon, hue } = Option.fromNullable(Obj.getSchema(object)).pipe(
203
+ Option.flatMap(Annotation.IconAnnotation.get),
204
+ Option.getOrElse(() => ({ icon: DEFAULT_OBJECT_ICON, hue: undefined as string | undefined })),
205
+ );
206
+ const styles = hue ? getStyles(hue) : undefined;
198
207
  return (
199
208
  <SearchList.Item
200
209
  classNames='flex items-center overflow-hidden'
201
210
  key={object.id}
202
211
  value={object.id}
212
+ icon={icon}
213
+ iconClassNames={styles?.surfaceText}
203
214
  label={Obj.getLabel(object) ?? Obj.getTypename(object) ?? object.id}
204
215
  checked={isActive}
205
216
  onSelect={() => onUpdateObject?.(Obj.getDXN(object), !isActive)}
@@ -207,19 +218,19 @@ const ObjectsPanel = ({ db, context }: Pick<ChatOptionsProps, 'db' | 'context'>)
207
218
  );
208
219
  })
209
220
  ) : (
210
- <SearchList.Item value='__empty__' label={t('no results')} />
221
+ <SearchList.Item value='__empty__' label={t('no-results.message')} />
211
222
  )}
212
223
  </SearchList.Viewport>
213
224
  </SearchList.Content>
214
225
 
215
- <div role='none' className='grid grid-cols-[min-content_1fr] gap-2 pli-cardSpacingChrome mbe-cardSpacingChrome'>
226
+ <div role='none' className='grid grid-cols-[min-content_1fr] gap-2 px-form-chrome mb-form-chrome'>
216
227
  <Select.Root value={typename === ANY ? undefined : typename} onValueChange={setTypename}>
217
- <Select.TriggerButton density='fine' placeholder={t('type filter placeholder')} />
228
+ <Select.TriggerButton placeholder={t('type-filter.placeholder')} />
218
229
  <Select.Portal>
219
230
  <Select.Content>
220
231
  <Select.ScrollUpButton />
221
232
  <Select.Viewport>
222
- <Select.Option value={ANY}>{t('any type filter label')}</Select.Option>
233
+ <Select.Option value={ANY}>{t('any-type-filter.label')}</Select.Option>
223
234
  {typenames.map(({ typename, label }) => (
224
235
  <Select.Option key={typename} value={typename}>
225
236
  {label}
@@ -231,8 +242,11 @@ const ObjectsPanel = ({ db, context }: Pick<ChatOptionsProps, 'db' | 'context'>)
231
242
  </Select.Content>
232
243
  </Select.Portal>
233
244
  </Select.Root>
234
- <SearchList.Input placeholder={t('search placeholder')} classNames='mbe-0' autoFocus />
245
+ <SearchList.Input placeholder={t('search.placeholder')} classNames='mb-0' autoFocus />
235
246
  </div>
236
247
  </SearchList.Root>
237
248
  );
238
249
  };
250
+
251
+ // TODO(dmaretskyi): Extract those somewhere else.
252
+ const DEFAULT_OBJECT_ICON = 'ph--cube--regular';
@@ -2,15 +2,16 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
+ import * as Option from 'effect/Option';
5
6
  import React from 'react';
6
7
 
7
8
  import { type AiContextBinder } from '@dxos/assistant';
8
- import { type Database, Obj } from '@dxos/echo';
9
- import { IconButton, type Label, type ThemedClassName, toLocalizedString, useTranslation } from '@dxos/react-ui';
10
- import { mx } from '@dxos/ui-theme';
9
+ import { Annotation, type Database, Obj } from '@dxos/echo';
10
+ import { Icon, IconButton, type Label, type ThemedClassName, toLocalizedString, useTranslation } from '@dxos/react-ui';
11
+ import { getStyles, mx } from '@dxos/ui-theme';
11
12
 
12
- import { useContextObjects } from '../../hooks';
13
- import { meta } from '../../meta';
13
+ import { useContextObjects } from '#hooks';
14
+ import { meta } from '#meta';
14
15
 
15
16
  export type ChatReferencesProps = ThemedClassName<{
16
17
  context: AiContextBinder;
@@ -26,15 +27,21 @@ export const ChatReferences = ({ classNames, context, db }: ChatReferencesProps)
26
27
  {objects.map((obj) => {
27
28
  const dxn = Obj.getDXN(obj);
28
29
  const typename = Obj.getTypename(obj);
29
- const label: Label = Obj.getLabel(obj) ?? (typename ? ['object name placeholder', { ns: typename }] : obj.id);
30
+ const label: Label = Obj.getLabel(obj) ?? (typename ? ['object-name.placeholder', { ns: typename }] : obj.id);
31
+ const { icon, hue } = Option.fromNullable(Obj.getSchema(obj)).pipe(
32
+ Option.flatMap(Annotation.IconAnnotation.get),
33
+ Option.getOrElse(() => ({ icon: DEFAULT_OBJECT_ICON, hue: undefined as string | undefined })),
34
+ );
35
+ const styles = hue ? getStyles(hue) : undefined;
30
36
  return (
31
- <li key={dxn.toString()} className='dx-tag plb-0 pis-2 flex items-center' data-hue='neutral'>
37
+ <li key={dxn.toString()} className='dx-tag py-0 ps-2 flex items-center gap-1' data-hue='neutral'>
38
+ <Icon icon={icon} size={4} classNames={styles?.surfaceText} />
32
39
  {toLocalizedString(label, t)}
33
40
  <IconButton
34
41
  icon='ph--x--bold'
35
42
  iconOnly
36
43
  variant='ghost'
37
- label={t('remove object in context label')}
44
+ label={t('remove-object-in-context.label')}
38
45
  classNames='p-0 hover:bg-transparent'
39
46
  size={3}
40
47
  onClick={() => onUpdateObject?.(dxn, false)}
@@ -45,3 +52,6 @@ export const ChatReferences = ({ classNames, context, db }: ChatReferencesProps)
45
52
  </ul>
46
53
  );
47
54
  };
55
+
56
+ // TODO(dmaretskyi): Extract those somewhere else.
57
+ const DEFAULT_OBJECT_ICON = 'ph--cube--regular';