@dxos/plugin-assistant 0.8.4-main.abd8ff62ef → 0.8.4-main.bc2380dfbc

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 (414) hide show
  1. package/LICENSE +102 -5
  2. package/README.md +1 -1
  3. package/dist/lib/neutral/AgentArticle-5XDDEXMP.mjs +169 -0
  4. package/dist/lib/neutral/AgentArticle-5XDDEXMP.mjs.map +7 -0
  5. package/dist/lib/neutral/AgentProperties-CNH4JMDZ.mjs +100 -0
  6. package/dist/lib/neutral/AgentProperties-CNH4JMDZ.mjs.map +7 -0
  7. package/dist/lib/neutral/AssistantPlugin.mjs +10 -0
  8. package/dist/lib/neutral/AssistantPlugin.node.mjs +46 -0
  9. package/dist/lib/neutral/AssistantPlugin.node.mjs.map +7 -0
  10. package/dist/lib/neutral/AssistantPlugin.workerd.mjs +40 -0
  11. package/dist/lib/neutral/AssistantPlugin.workerd.mjs.map +7 -0
  12. package/dist/lib/neutral/BlueprintArticle-U7LUBFOS.mjs +27 -0
  13. package/dist/lib/neutral/BlueprintArticle-U7LUBFOS.mjs.map +7 -0
  14. package/dist/lib/neutral/ChatArticle-WVAFZPVI.mjs +8 -0
  15. package/dist/lib/neutral/ChatCompanion-DFRMRUK3.mjs +133 -0
  16. package/dist/lib/neutral/ChatCompanion-DFRMRUK3.mjs.map +7 -0
  17. package/dist/lib/neutral/ChatDialog-QKZLG7SQ.mjs +72 -0
  18. package/dist/lib/neutral/ChatDialog-QKZLG7SQ.mjs.map +7 -0
  19. package/dist/lib/neutral/PlanArticle-TS5ULWYS.mjs +28 -0
  20. package/dist/lib/neutral/PlanArticle-TS5ULWYS.mjs.map +7 -0
  21. package/dist/lib/neutral/RoutineArticle-H7ECM7AH.mjs +116 -0
  22. package/dist/lib/neutral/RoutineArticle-H7ECM7AH.mjs.map +7 -0
  23. package/dist/lib/neutral/RoutineList-CLDXGQUD.mjs +48 -0
  24. package/dist/lib/neutral/RoutineList-CLDXGQUD.mjs.map +7 -0
  25. package/dist/lib/neutral/TracePanel-C77SPEIS.mjs +672 -0
  26. package/dist/lib/neutral/TracePanel-C77SPEIS.mjs.map +7 -0
  27. package/dist/lib/neutral/TriggerStatus-WTFYUIG5.mjs +92 -0
  28. package/dist/lib/neutral/TriggerStatus-WTFYUIG5.mjs.map +7 -0
  29. package/dist/lib/neutral/ai-service-GJXMI5OI.mjs +22 -0
  30. package/dist/lib/neutral/ai-service-GJXMI5OI.mjs.map +7 -0
  31. package/dist/lib/neutral/app-graph-builder-5QBICPYP.mjs +200 -0
  32. package/dist/lib/neutral/app-graph-builder-5QBICPYP.mjs.map +7 -0
  33. package/dist/lib/neutral/blueprint-definition-VXJYQ5AE.mjs +32 -0
  34. package/dist/lib/neutral/blueprint-definition-VXJYQ5AE.mjs.map +7 -0
  35. package/dist/lib/neutral/blueprints/index.mjs +8 -0
  36. package/dist/lib/neutral/capabilities/index.mjs +35 -0
  37. package/dist/lib/neutral/capabilities/index.mjs.map +7 -0
  38. package/dist/lib/neutral/chunk-3FIV362Z.mjs +8 -0
  39. package/dist/lib/neutral/chunk-3FIV362Z.mjs.map +7 -0
  40. package/dist/lib/neutral/chunk-4CQZCMRP.mjs +25 -0
  41. package/dist/lib/neutral/chunk-4CQZCMRP.mjs.map +7 -0
  42. package/dist/lib/{browser/blueprints/index.mjs → neutral/chunk-5H6UJHLF.mjs} +4 -5
  43. package/dist/lib/neutral/chunk-5H6UJHLF.mjs.map +7 -0
  44. package/dist/lib/neutral/chunk-ITJX2YZZ.mjs +98 -0
  45. package/dist/lib/neutral/chunk-ITJX2YZZ.mjs.map +7 -0
  46. package/dist/lib/neutral/chunk-IZQWGJNG.mjs +380 -0
  47. package/dist/lib/neutral/chunk-IZQWGJNG.mjs.map +7 -0
  48. package/dist/lib/neutral/chunk-SLIPV6NN.mjs +106 -0
  49. package/dist/lib/neutral/chunk-SLIPV6NN.mjs.map +7 -0
  50. package/dist/lib/neutral/companion-chat-provisioner-2Y6PRSDK.mjs +116 -0
  51. package/dist/lib/neutral/companion-chat-provisioner-2Y6PRSDK.mjs.map +7 -0
  52. package/dist/lib/{browser/chunk-VK53MITK.mjs → neutral/components/index.mjs} +139 -141
  53. package/dist/lib/neutral/components/index.mjs.map +7 -0
  54. package/dist/lib/neutral/containers/index.mjs +29 -0
  55. package/dist/lib/neutral/containers/index.mjs.map +7 -0
  56. package/dist/lib/{browser/create-chat-E2ZLVTLP.mjs → neutral/create-chat-QQZURUBW.mjs} +10 -12
  57. package/dist/lib/neutral/create-chat-QQZURUBW.mjs.map +7 -0
  58. package/dist/lib/neutral/create-object-UZCJCPWM.mjs +93 -0
  59. package/dist/lib/neutral/create-object-UZCJCPWM.mjs.map +7 -0
  60. package/dist/lib/neutral/edge-model-resolver-XDNBZ3US.mjs +21 -0
  61. package/dist/lib/neutral/edge-model-resolver-XDNBZ3US.mjs.map +7 -0
  62. package/dist/lib/{browser/ensure-companion-chat-7GDMXSQW.mjs → neutral/ensure-companion-chat-5S4LZM2H.mjs} +9 -16
  63. package/dist/lib/neutral/ensure-companion-chat-5S4LZM2H.mjs.map +7 -0
  64. package/dist/lib/{browser/chunk-M55MBYG7.mjs → neutral/hooks/index.mjs} +106 -111
  65. package/dist/lib/neutral/hooks/index.mjs.map +7 -0
  66. package/dist/lib/neutral/index.mjs +32 -0
  67. package/dist/lib/neutral/local-model-resolver-I2BENFFS.mjs +24 -0
  68. package/dist/lib/neutral/local-model-resolver-I2BENFFS.mjs.map +7 -0
  69. package/dist/lib/neutral/markdown-KTBFOMFM.mjs +110 -0
  70. package/dist/lib/neutral/markdown-KTBFOMFM.mjs.map +7 -0
  71. package/dist/lib/neutral/meta.json +1 -0
  72. package/dist/lib/neutral/meta.mjs +12 -0
  73. package/dist/lib/neutral/migrations-7DEMVBOG.mjs +28 -0
  74. package/dist/lib/neutral/migrations-7DEMVBOG.mjs.map +7 -0
  75. package/dist/lib/{browser/on-create-space-4J3KTNAJ.mjs → neutral/on-create-space-Q2R7OSP6.mjs} +4 -7
  76. package/dist/lib/neutral/on-create-space-Q2R7OSP6.mjs.map +7 -0
  77. package/dist/lib/neutral/operation-handler-SF36MOB5.mjs +13 -0
  78. package/dist/lib/neutral/operation-handler-SF36MOB5.mjs.map +7 -0
  79. package/dist/lib/neutral/operations/index.mjs +8 -0
  80. package/dist/lib/neutral/plugin.mjs +16 -0
  81. package/dist/lib/neutral/plugin.mjs.map +7 -0
  82. package/dist/lib/neutral/react-surface-T4R65UJU.mjs +174 -0
  83. package/dist/lib/neutral/react-surface-T4R65UJU.mjs.map +7 -0
  84. package/dist/lib/{browser/resolve-navigation-targets-3ZPQE6SZ.mjs → neutral/resolve-navigation-targets-VXBSWV5L.mjs} +3 -5
  85. package/dist/lib/neutral/resolve-navigation-targets-VXBSWV5L.mjs.map +7 -0
  86. package/dist/lib/{browser/run-prompt-in-new-chat-AA3KPBDN.mjs → neutral/run-prompt-in-new-chat-VJXXZ6SI.mjs} +16 -19
  87. package/dist/lib/neutral/run-prompt-in-new-chat-VJXXZ6SI.mjs.map +7 -0
  88. package/dist/lib/{browser/set-current-chat-P4VHI3YF.mjs → neutral/set-current-chat-ZFDCYK5I.mjs} +4 -10
  89. package/dist/lib/neutral/set-current-chat-ZFDCYK5I.mjs.map +7 -0
  90. package/dist/lib/neutral/settings-W4BLWQ53.mjs +28 -0
  91. package/dist/lib/neutral/settings-W4BLWQ53.mjs.map +7 -0
  92. package/dist/lib/neutral/state-H3G7QCU6.mjs +28 -0
  93. package/dist/lib/neutral/state-H3G7QCU6.mjs.map +7 -0
  94. package/dist/lib/neutral/testing.mjs +8 -0
  95. package/dist/lib/neutral/toggle-trace-panel-debug-JGTB6KVJ.mjs +21 -0
  96. package/dist/lib/neutral/toggle-trace-panel-debug-JGTB6KVJ.mjs.map +7 -0
  97. package/dist/lib/neutral/toolkit-GVWXPDLJ.mjs +14 -0
  98. package/dist/lib/neutral/toolkit-GVWXPDLJ.mjs.map +7 -0
  99. package/dist/lib/{browser → neutral}/translations.mjs +5 -2
  100. package/dist/lib/neutral/translations.mjs.map +7 -0
  101. package/dist/lib/neutral/types/index.mjs +20 -0
  102. package/dist/lib/neutral/types/index.mjs.map +7 -0
  103. package/dist/lib/{browser/update-chat-name-VWKNUON7.mjs → neutral/update-chat-name-ENXRUMDJ.mjs} +3 -5
  104. package/dist/lib/neutral/update-chat-name-ENXRUMDJ.mjs.map +7 -0
  105. package/dist/types/src/AssistantPlugin.d.ts.map +1 -1
  106. package/dist/types/src/AssistantPlugin.node.d.ts.map +1 -1
  107. package/dist/types/src/AssistantPlugin.workerd.d.ts +4 -0
  108. package/dist/types/src/AssistantPlugin.workerd.d.ts.map +1 -0
  109. package/dist/types/src/capabilities/companion-chat-provisioner.d.ts.map +1 -1
  110. package/dist/types/src/capabilities/create-object.d.ts +31 -0
  111. package/dist/types/src/capabilities/create-object.d.ts.map +1 -0
  112. package/dist/types/src/capabilities/index.d.ts +27 -1
  113. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  114. package/dist/types/src/capabilities/markdown.d.ts +1 -1
  115. package/dist/types/src/capabilities/migrations.d.ts +2 -1
  116. package/dist/types/src/capabilities/migrations.d.ts.map +1 -1
  117. package/dist/types/src/components/Chat/Chat.d.ts +11 -5
  118. package/dist/types/src/components/Chat/Chat.d.ts.map +1 -1
  119. package/dist/types/src/components/ChatPrompt/ChatOptions.d.ts +2 -2
  120. package/dist/types/src/components/ChatPrompt/ChatOptions.d.ts.map +1 -1
  121. package/dist/types/src/components/ChatPrompt/ChatReferences.d.ts +2 -2
  122. package/dist/types/src/components/ChatPrompt/ChatReferences.d.ts.map +1 -1
  123. package/dist/types/src/components/ChatThread/ChatThread.stories.d.ts +2 -3
  124. package/dist/types/src/components/ChatThread/ChatThread.stories.d.ts.map +1 -1
  125. package/dist/types/src/components/ChatThread/registry.d.ts.map +1 -1
  126. package/dist/types/src/components/ChatThread/widgets/StatusWidget.d.ts +2 -15
  127. package/dist/types/src/components/ChatThread/widgets/StatusWidget.d.ts.map +1 -1
  128. package/dist/types/src/components/ChatThread/widgets/SummaryWidget.d.ts.map +1 -1
  129. package/dist/types/src/components/ProcessTree/ProcessTree.d.ts.map +1 -1
  130. package/dist/types/src/components/TaskList/TaskList.d.ts +10 -0
  131. package/dist/types/src/components/TaskList/TaskList.d.ts.map +1 -0
  132. package/dist/types/src/components/TaskList/TaskList.stories.d.ts +16 -0
  133. package/dist/types/src/components/TaskList/TaskList.stories.d.ts.map +1 -0
  134. package/dist/types/src/components/TaskList/index.d.ts +2 -0
  135. package/dist/types/src/components/TaskList/index.d.ts.map +1 -0
  136. package/dist/types/src/components/TemplateEditor/TemplateForm.d.ts +1 -2
  137. package/dist/types/src/components/TemplateEditor/TemplateForm.d.ts.map +1 -1
  138. package/dist/types/src/components/TemplateEditor/TemplateForm.stories.d.ts +1 -1
  139. package/dist/types/src/components/TemplateEditor/TemplateForm.stories.d.ts.map +1 -1
  140. package/dist/types/src/components/Toolbox/Toolbox.d.ts.map +1 -1
  141. package/dist/types/src/components/index.d.ts +1 -0
  142. package/dist/types/src/components/index.d.ts.map +1 -1
  143. package/dist/types/src/containers/AgentArticle/AgentArticle.d.ts.map +1 -1
  144. package/dist/types/src/containers/{ChatContainer/ChatContainer.d.ts → ChatArticle/ChatArticle.d.ts} +3 -3
  145. package/dist/types/src/containers/ChatArticle/ChatArticle.d.ts.map +1 -0
  146. package/dist/types/src/containers/ChatArticle/index.d.ts +2 -0
  147. package/dist/types/src/containers/ChatArticle/index.d.ts.map +1 -0
  148. package/dist/types/src/containers/ChatCompanion/ChatCompanion.d.ts.map +1 -1
  149. package/dist/types/src/containers/PlanArticle/PlanArticle.d.ts +6 -0
  150. package/dist/types/src/containers/PlanArticle/PlanArticle.d.ts.map +1 -0
  151. package/dist/types/src/containers/PlanArticle/index.d.ts +2 -0
  152. package/dist/types/src/containers/PlanArticle/index.d.ts.map +1 -0
  153. package/dist/types/src/containers/RoutineArticle/RoutineArticle.d.ts.map +1 -1
  154. package/dist/types/src/containers/RoutineArticle/RoutineArticle.stories.d.ts +15 -0
  155. package/dist/types/src/containers/RoutineArticle/RoutineArticle.stories.d.ts.map +1 -0
  156. package/dist/types/src/containers/TracePanel/TracePanel.d.ts.map +1 -1
  157. package/dist/types/src/containers/TracePanel/TracePanel.stories.d.ts.map +1 -1
  158. package/dist/types/src/containers/TracePanel/execution-graph.d.ts +11 -2
  159. package/dist/types/src/containers/TracePanel/execution-graph.d.ts.map +1 -1
  160. package/dist/types/src/containers/TracePanel/span-tree.d.ts +73 -0
  161. package/dist/types/src/containers/TracePanel/span-tree.d.ts.map +1 -0
  162. package/dist/types/src/containers/TracePanel/span-tree.test.d.ts +2 -0
  163. package/dist/types/src/containers/TracePanel/span-tree.test.d.ts.map +1 -0
  164. package/dist/types/src/containers/index.d.ts +4 -3
  165. package/dist/types/src/containers/index.d.ts.map +1 -1
  166. package/dist/types/src/feed-logger.d.ts +13 -0
  167. package/dist/types/src/feed-logger.d.ts.map +1 -0
  168. package/dist/types/src/hooks/useBlueprintRegistry.d.ts +3 -3
  169. package/dist/types/src/hooks/useBlueprintRegistry.d.ts.map +1 -1
  170. package/dist/types/src/hooks/useChatProcessor.d.ts +1 -1
  171. package/dist/types/src/hooks/useChatProcessor.d.ts.map +1 -1
  172. package/dist/types/src/hooks/useChatServices.d.ts +1 -1
  173. package/dist/types/src/hooks/useChatServices.d.ts.map +1 -1
  174. package/dist/types/src/hooks/useChatToolbarActions.d.ts.map +1 -1
  175. package/dist/types/src/hooks/useContextBinder.d.ts +2 -2
  176. package/dist/types/src/hooks/useContextBinder.d.ts.map +1 -1
  177. package/dist/types/src/hooks/useContextObjects.d.ts +2 -2
  178. package/dist/types/src/hooks/useContextObjects.d.ts.map +1 -1
  179. package/dist/types/src/index.d.ts +2 -4
  180. package/dist/types/src/index.d.ts.map +1 -1
  181. package/dist/types/src/operations/create-chat.d.ts +2 -2
  182. package/dist/types/src/operations/create-chat.d.ts.map +1 -1
  183. package/dist/types/src/operations/ensure-companion-chat.d.ts +2 -2
  184. package/dist/types/src/operations/ensure-companion-chat.d.ts.map +1 -1
  185. package/dist/types/src/operations/index.d.ts +0 -1
  186. package/dist/types/src/operations/index.d.ts.map +1 -1
  187. package/dist/types/src/operations/on-create-space.d.ts +2 -2
  188. package/dist/types/src/operations/on-create-space.d.ts.map +1 -1
  189. package/dist/types/src/operations/run-prompt-in-new-chat.d.ts +2 -2
  190. package/dist/types/src/operations/run-prompt-in-new-chat.d.ts.map +1 -1
  191. package/dist/types/src/operations/set-current-chat.d.ts +2 -2
  192. package/dist/types/src/operations/set-current-chat.d.ts.map +1 -1
  193. package/dist/types/src/operations/toggle-trace-panel-debug.d.ts +5 -0
  194. package/dist/types/src/operations/toggle-trace-panel-debug.d.ts.map +1 -0
  195. package/dist/types/src/operations/update-chat-name.d.ts +2 -2
  196. package/dist/types/src/operations/update-chat-name.d.ts.map +1 -1
  197. package/dist/types/src/plugin.d.ts +4 -0
  198. package/dist/types/src/plugin.d.ts.map +1 -0
  199. package/dist/types/src/processor/processor.d.ts +11 -11
  200. package/dist/types/src/processor/processor.d.ts.map +1 -1
  201. package/dist/types/src/testing/test-generator.d.ts +2 -3
  202. package/dist/types/src/testing/test-generator.d.ts.map +1 -1
  203. package/dist/types/src/testing/test-sequence.d.ts +3 -3
  204. package/dist/types/src/testing/test-sequence.d.ts.map +1 -1
  205. package/dist/types/src/testing.d.ts +2 -0
  206. package/dist/types/src/testing.d.ts.map +1 -0
  207. package/dist/types/src/translations.d.ts.map +1 -1
  208. package/dist/types/src/types/Assistant.d.ts +1 -0
  209. package/dist/types/src/types/Assistant.d.ts.map +1 -1
  210. package/dist/types/src/types/AssistantCapabilities.d.ts +30 -0
  211. package/dist/types/src/types/AssistantCapabilities.d.ts.map +1 -0
  212. package/dist/types/src/types/AssistantEvents.d.ts +3 -0
  213. package/dist/types/src/types/AssistantEvents.d.ts.map +1 -0
  214. package/dist/types/src/{operations/definitions.d.ts → types/AssistantOperation.d.ts} +10 -6
  215. package/dist/types/src/types/AssistantOperation.d.ts.map +1 -0
  216. package/dist/types/src/types/Settings.d.ts +1 -0
  217. package/dist/types/src/types/Settings.d.ts.map +1 -1
  218. package/dist/types/src/types/index.d.ts +3 -2
  219. package/dist/types/src/types/index.d.ts.map +1 -1
  220. package/dist/types/src/util/suggestions.d.ts +9 -0
  221. package/dist/types/src/util/suggestions.d.ts.map +1 -0
  222. package/dist/types/src/util/suggestions.test.d.ts +2 -0
  223. package/dist/types/src/util/suggestions.test.d.ts.map +1 -0
  224. package/dist/types/tsconfig.tsbuildinfo +1 -1
  225. package/package.json +152 -128
  226. package/src/AssistantPlugin.node.ts +7 -88
  227. package/src/AssistantPlugin.test.ts +3 -3
  228. package/src/AssistantPlugin.ts +126 -0
  229. package/src/AssistantPlugin.workerd.ts +41 -0
  230. package/src/blueprints/assistant/blueprint.ts +1 -1
  231. package/src/capabilities/app-graph-builder.ts +48 -9
  232. package/src/capabilities/companion-chat-provisioner.ts +4 -5
  233. package/src/capabilities/create-object.ts +107 -0
  234. package/src/capabilities/index.ts +1 -0
  235. package/src/capabilities/markdown.ts +2 -2
  236. package/src/capabilities/migrations.ts +3 -3
  237. package/src/capabilities/react-surface.tsx +15 -7
  238. package/src/components/Chat/Chat.tsx +35 -5
  239. package/src/components/ChatPrompt/ChatMcpErrors.tsx +1 -1
  240. package/src/components/ChatPrompt/ChatOptions.stories.tsx +4 -4
  241. package/src/components/ChatPrompt/ChatOptions.tsx +12 -11
  242. package/src/components/ChatPrompt/ChatPrompt.tsx +3 -3
  243. package/src/components/ChatPrompt/ChatReferences.tsx +3 -3
  244. package/src/components/ChatPrompt/ChatStatus.tsx +1 -1
  245. package/src/components/ChatPrompt/ChatStatusIndicator.tsx +1 -1
  246. package/src/components/ChatThread/Anchor.stories.tsx +3 -3
  247. package/src/components/ChatThread/ChatThread.stories.tsx +25 -29
  248. package/src/components/ChatThread/ChatThread.tsx +1 -1
  249. package/src/components/ChatThread/registry.tsx +8 -4
  250. package/src/components/ChatThread/sync.test.ts +4 -6
  251. package/src/components/ChatThread/widgets/ReasoningWidget.ts +2 -2
  252. package/src/components/ChatThread/widgets/StatusWidget.ts +3 -83
  253. package/src/components/ChatThread/widgets/SummaryWidget.tsx +1 -3
  254. package/src/components/ProcessTree/ProcessTree.tsx +2 -1
  255. package/src/components/TaskList/TaskList.stories.tsx +44 -0
  256. package/src/components/TaskList/TaskList.tsx +45 -0
  257. package/src/{cli → components/TaskList}/index.ts +1 -1
  258. package/src/components/TemplateEditor/TemplateEditor.stories.tsx +1 -1
  259. package/src/components/TemplateEditor/TemplateForm.stories.tsx +2 -6
  260. package/src/components/TemplateEditor/TemplateForm.tsx +48 -69
  261. package/src/components/Toolbox/Toolbox.stories.tsx +4 -4
  262. package/src/components/Toolbox/Toolbox.tsx +2 -2
  263. package/src/components/index.ts +1 -0
  264. package/src/containers/AgentArticle/AgentArticle.stories.tsx +7 -7
  265. package/src/containers/AgentArticle/AgentArticle.tsx +11 -7
  266. package/src/containers/AgentProperties/AgentProperties.stories.tsx +4 -4
  267. package/src/containers/AgentProperties/AgentProperties.tsx +4 -4
  268. package/src/containers/{ChatContainer/ChatContainer.tsx → ChatArticle/ChatArticle.tsx} +11 -9
  269. package/src/containers/ChatArticle/index.ts +5 -0
  270. package/src/containers/ChatCompanion/ChatCompanion.tsx +20 -29
  271. package/src/containers/PlanArticle/PlanArticle.tsx +33 -0
  272. package/src/containers/PlanArticle/index.ts +5 -0
  273. package/src/containers/RoutineArticle/RoutineArticle.stories.tsx +75 -0
  274. package/src/containers/RoutineArticle/RoutineArticle.tsx +74 -24
  275. package/src/containers/RoutineList/RoutineList.stories.tsx +3 -3
  276. package/src/containers/RoutineList/RoutineList.tsx +3 -3
  277. package/src/containers/TracePanel/TracePanel.stories.tsx +33 -26
  278. package/src/containers/TracePanel/TracePanel.tsx +72 -33
  279. package/src/containers/TracePanel/dxn-extractor.ts +7 -7
  280. package/src/containers/TracePanel/execution-graph.test.ts +218 -213
  281. package/src/containers/TracePanel/execution-graph.ts +316 -271
  282. package/src/containers/TracePanel/span-tree.test.ts +166 -0
  283. package/src/containers/TracePanel/span-tree.ts +214 -0
  284. package/src/containers/index.ts +4 -3
  285. package/src/{queue-logger.ts → feed-logger.ts} +37 -27
  286. package/src/hooks/useBlueprintRegistry.ts +12 -6
  287. package/src/hooks/useChatProcessor.ts +3 -3
  288. package/src/hooks/useChatServices.ts +1 -1
  289. package/src/hooks/useChatToolbarActions.ts +86 -88
  290. package/src/hooks/useContextBinder.ts +4 -4
  291. package/src/hooks/useContextObjects.ts +2 -2
  292. package/src/index.ts +2 -9
  293. package/src/operations/create-chat.ts +16 -11
  294. package/src/operations/ensure-companion-chat.ts +47 -45
  295. package/src/operations/index.ts +1 -2
  296. package/src/operations/on-create-space.ts +3 -3
  297. package/src/operations/prompt.test.ts +5 -5
  298. package/src/operations/resolve-navigation-targets.ts +2 -2
  299. package/src/operations/run-prompt-in-new-chat.ts +85 -84
  300. package/src/operations/set-current-chat.ts +3 -4
  301. package/src/operations/toggle-trace-panel-debug.ts +27 -0
  302. package/src/operations/update-chat-name.ts +2 -2
  303. package/src/plugin.ts +11 -0
  304. package/src/processor/processor.test.ts +1 -1
  305. package/src/processor/processor.ts +15 -15
  306. package/src/testing/test-generator.test.ts +41 -52
  307. package/src/testing/test-generator.ts +174 -189
  308. package/src/testing/test-sequence.ts +3 -3
  309. package/src/testing/trace-timeline.conversations.json +1 -1
  310. package/src/testing/trace-timeline.test.ts +3 -5
  311. package/src/testing.ts +7 -0
  312. package/src/translations.ts +5 -2
  313. package/src/types/Assistant.ts +2 -1
  314. package/src/types/AssistantCapabilities.ts +35 -0
  315. package/src/types/AssistantEvents.ts +11 -0
  316. package/src/{operations/definitions.ts → types/AssistantOperation.ts} +15 -0
  317. package/src/types/Settings.ts +6 -0
  318. package/src/types/index.ts +5 -2
  319. package/src/util/suggestions.test.ts +52 -0
  320. package/src/util/suggestions.ts +42 -0
  321. package/dist/lib/browser/blueprints/index.mjs.map +0 -7
  322. package/dist/lib/browser/chunk-DVOOFAWU.mjs +0 -175
  323. package/dist/lib/browser/chunk-DVOOFAWU.mjs.map +0 -7
  324. package/dist/lib/browser/chunk-M55MBYG7.mjs.map +0 -7
  325. package/dist/lib/browser/chunk-SEMCG4ZK.mjs +0 -195
  326. package/dist/lib/browser/chunk-SEMCG4ZK.mjs.map +0 -7
  327. package/dist/lib/browser/chunk-VK53MITK.mjs.map +0 -7
  328. package/dist/lib/browser/cli/index.mjs +0 -73
  329. package/dist/lib/browser/cli/index.mjs.map +0 -7
  330. package/dist/lib/browser/components/index.mjs +0 -20
  331. package/dist/lib/browser/create-chat-E2ZLVTLP.mjs.map +0 -7
  332. package/dist/lib/browser/ensure-companion-chat-7GDMXSQW.mjs.map +0 -7
  333. package/dist/lib/browser/hooks/index.mjs +0 -39
  334. package/dist/lib/browser/index.mjs +0 -84
  335. package/dist/lib/browser/index.mjs.map +0 -7
  336. package/dist/lib/browser/meta.json +0 -1
  337. package/dist/lib/browser/on-create-space-4J3KTNAJ.mjs.map +0 -7
  338. package/dist/lib/browser/operations/index.mjs +0 -13
  339. package/dist/lib/browser/operations/index.mjs.map +0 -7
  340. package/dist/lib/browser/resolve-navigation-targets-3ZPQE6SZ.mjs.map +0 -7
  341. package/dist/lib/browser/run-prompt-in-new-chat-AA3KPBDN.mjs.map +0 -7
  342. package/dist/lib/browser/set-current-chat-P4VHI3YF.mjs.map +0 -7
  343. package/dist/lib/browser/translations.mjs.map +0 -7
  344. package/dist/lib/browser/types/index.mjs +0 -18
  345. package/dist/lib/browser/update-chat-name-VWKNUON7.mjs.map +0 -7
  346. package/dist/lib/node-esm/AssistantSettings-23A5IMHS.mjs +0 -41
  347. package/dist/lib/node-esm/AssistantSettings-23A5IMHS.mjs.map +0 -7
  348. package/dist/lib/node-esm/blueprints/index.mjs +0 -32
  349. package/dist/lib/node-esm/blueprints/index.mjs.map +0 -7
  350. package/dist/lib/node-esm/chunk-FWC3ZGPH.mjs +0 -933
  351. package/dist/lib/node-esm/chunk-FWC3ZGPH.mjs.map +0 -7
  352. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +0 -11
  353. package/dist/lib/node-esm/chunk-JKEB3NFZ.mjs +0 -2302
  354. package/dist/lib/node-esm/chunk-JKEB3NFZ.mjs.map +0 -7
  355. package/dist/lib/node-esm/chunk-MBDVPB4V.mjs +0 -176
  356. package/dist/lib/node-esm/chunk-MBDVPB4V.mjs.map +0 -7
  357. package/dist/lib/node-esm/chunk-XAFVSEUJ.mjs +0 -196
  358. package/dist/lib/node-esm/chunk-XAFVSEUJ.mjs.map +0 -7
  359. package/dist/lib/node-esm/cli/index.mjs +0 -74
  360. package/dist/lib/node-esm/cli/index.mjs.map +0 -7
  361. package/dist/lib/node-esm/components/index.mjs +0 -21
  362. package/dist/lib/node-esm/create-chat-UQQ3542N.mjs +0 -74
  363. package/dist/lib/node-esm/create-chat-UQQ3542N.mjs.map +0 -7
  364. package/dist/lib/node-esm/ensure-companion-chat-LVCPD4DJ.mjs +0 -66
  365. package/dist/lib/node-esm/ensure-companion-chat-LVCPD4DJ.mjs.map +0 -7
  366. package/dist/lib/node-esm/hooks/index.mjs +0 -40
  367. package/dist/lib/node-esm/index.mjs +0 -85
  368. package/dist/lib/node-esm/index.mjs.map +0 -7
  369. package/dist/lib/node-esm/meta.json +0 -1
  370. package/dist/lib/node-esm/on-create-space-M63UBTTT.mjs +0 -23
  371. package/dist/lib/node-esm/on-create-space-M63UBTTT.mjs.map +0 -7
  372. package/dist/lib/node-esm/operations/index.mjs +0 -14
  373. package/dist/lib/node-esm/operations/index.mjs.map +0 -7
  374. package/dist/lib/node-esm/resolve-navigation-targets-HO77CAFT.mjs +0 -23
  375. package/dist/lib/node-esm/resolve-navigation-targets-HO77CAFT.mjs.map +0 -7
  376. package/dist/lib/node-esm/run-prompt-in-new-chat-RIRYYYPK.mjs +0 -107
  377. package/dist/lib/node-esm/run-prompt-in-new-chat-RIRYYYPK.mjs.map +0 -7
  378. package/dist/lib/node-esm/set-current-chat-Z7GJ52VX.mjs +0 -55
  379. package/dist/lib/node-esm/set-current-chat-Z7GJ52VX.mjs.map +0 -7
  380. package/dist/lib/node-esm/translations.mjs +0 -173
  381. package/dist/lib/node-esm/translations.mjs.map +0 -7
  382. package/dist/lib/node-esm/types/index.mjs +0 -19
  383. package/dist/lib/node-esm/update-chat-name-GV4HX32Z.mjs +0 -57
  384. package/dist/lib/node-esm/update-chat-name-GV4HX32Z.mjs.map +0 -7
  385. package/dist/types/src/cli/index.d.ts +0 -2
  386. package/dist/types/src/cli/index.d.ts.map +0 -1
  387. package/dist/types/src/cli/plugin.d.ts +0 -10
  388. package/dist/types/src/cli/plugin.d.ts.map +0 -1
  389. package/dist/types/src/containers/ChatContainer/ChatContainer.d.ts.map +0 -1
  390. package/dist/types/src/containers/ChatContainer/index.d.ts +0 -2
  391. package/dist/types/src/containers/ChatContainer/index.d.ts.map +0 -1
  392. package/dist/types/src/operations/definitions.d.ts.map +0 -1
  393. package/dist/types/src/queue-logger.d.ts +0 -11
  394. package/dist/types/src/queue-logger.d.ts.map +0 -1
  395. package/dist/types/src/types/capabilities.d.ts +0 -32
  396. package/dist/types/src/types/capabilities.d.ts.map +0 -1
  397. package/dist/types/src/types/events.d.ts +0 -5
  398. package/dist/types/src/types/events.d.ts.map +0 -1
  399. package/src/AssistantPlugin.tsx +0 -238
  400. package/src/cli/plugin.ts +0 -83
  401. package/src/containers/ChatContainer/index.ts +0 -5
  402. package/src/types/capabilities.ts +0 -35
  403. package/src/types/events.ts +0 -11
  404. /package/dist/lib/{browser/chunk-J5LGTIGS.mjs.map → neutral/AssistantPlugin.mjs.map} +0 -0
  405. /package/dist/lib/{browser → neutral}/AssistantSettings-GG52BLKS.mjs +0 -0
  406. /package/dist/lib/{browser → neutral}/AssistantSettings-GG52BLKS.mjs.map +0 -0
  407. /package/dist/lib/{browser/components/index.mjs.map → neutral/ChatArticle-WVAFZPVI.mjs.map} +0 -0
  408. /package/dist/lib/{browser/hooks → neutral/blueprints}/index.mjs.map +0 -0
  409. /package/dist/lib/{browser → neutral}/chunk-J5LGTIGS.mjs +0 -0
  410. /package/dist/lib/{browser/types/index.mjs.map → neutral/chunk-J5LGTIGS.mjs.map} +0 -0
  411. /package/dist/lib/{node-esm/components → neutral}/index.mjs.map +0 -0
  412. /package/dist/lib/{node-esm/chunk-HSLMI22Q.mjs.map → neutral/meta.mjs.map} +0 -0
  413. /package/dist/lib/{node-esm/hooks → neutral/operations}/index.mjs.map +0 -0
  414. /package/dist/lib/{node-esm/types/index.mjs.map → neutral/testing.mjs.map} +0 -0
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/capabilities/index.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capability } from '@dxos/app-framework';\n// eslint-disable-next-line unused-imports/no-unused-imports\nimport type { Blueprint, OperationHandlerSet } from '@dxos/compute';\n\nexport const AiService = Capability.lazy('AiService', () => import('./ai-service'));\nexport const AppGraphBuilder = Capability.lazy('AppGraphBuilder', () => import('./app-graph-builder'));\nexport const BlueprintDefinition = Capability.lazy('BlueprintDefinition', () => import('./blueprint-definition'));\nexport const CompanionChatProvisioner = Capability.lazy(\n 'CompanionChatProvisioner',\n () => import('./companion-chat-provisioner'),\n);\nexport const CreateObject = Capability.lazy('CreateObject', () => import('./create-object'));\nexport const EdgeModelResolver = Capability.lazy('EdgeModelResolver', () => import('./edge-model-resolver'));\nexport const LocalModelResolver = Capability.lazy('LocalModelResolver', () => import('./local-model-resolver'));\nexport const MarkdownExtension = Capability.lazy('MarkdownExtension', () => import('./markdown'));\nexport const Migrations = Capability.lazy('AssistantMigrations', () => import('./migrations'));\nexport const OperationHandler = Capability.lazy<OperationHandlerSet.OperationHandlerSet>(\n 'OperationHandler',\n () => import('./operation-handler'),\n);\nexport const ReactSurface = Capability.lazy('ReactSurface', () => import('./react-surface'));\nexport const Settings = Capability.lazy('Settings', () => import('./settings'));\nexport const AssistantState = Capability.lazy('AssistantState', () => import('./state'));\nexport const Toolkit = Capability.lazy('Toolkit', () => import('./toolkit'));\n"],
5
+ "mappings": ";;;AAIA,SAASA,kBAAkB;AAIpB,IAAMC,YAAYD,WAAWE,KAAK,aAAa,MAAM,OAAO,4BAAA,CAAA;AAC5D,IAAMC,kBAAkBH,WAAWE,KAAK,mBAAmB,MAAM,OAAO,mCAAA,CAAA;AACxE,IAAME,sBAAsBJ,WAAWE,KAAK,uBAAuB,MAAM,OAAO,sCAAA,CAAA;AAChF,IAAMG,2BAA2BL,WAAWE,KACjD,4BACA,MAAM,OAAO,4CAAA,CAAA;AAER,IAAMI,eAAeN,WAAWE,KAAK,gBAAgB,MAAM,OAAO,+BAAA,CAAA;AAClE,IAAMK,oBAAoBP,WAAWE,KAAK,qBAAqB,MAAM,OAAO,qCAAA,CAAA;AAC5E,IAAMM,qBAAqBR,WAAWE,KAAK,sBAAsB,MAAM,OAAO,sCAAA,CAAA;AAC9E,IAAMO,oBAAoBT,WAAWE,KAAK,qBAAqB,MAAM,OAAO,0BAAA,CAAA;AAC5E,IAAMQ,aAAaV,WAAWE,KAAK,uBAAuB,MAAM,OAAO,4BAAA,CAAA;AACvE,IAAMS,mBAAmBX,WAAWE,KACzC,oBACA,MAAM,OAAO,mCAAA,CAAA;AAER,IAAMU,eAAeZ,WAAWE,KAAK,gBAAgB,MAAM,OAAO,+BAAA,CAAA;AAClE,IAAMW,WAAWb,WAAWE,KAAK,YAAY,MAAM,OAAO,0BAAA,CAAA;AAC1D,IAAMY,iBAAiBd,WAAWE,KAAK,kBAAkB,MAAM,OAAO,uBAAA,CAAA;AACtE,IAAMa,UAAUf,WAAWE,KAAK,WAAW,MAAM,OAAO,yBAAA,CAAA;",
6
+ "names": ["Capability", "AiService", "lazy", "AppGraphBuilder", "BlueprintDefinition", "CompanionChatProvisioner", "CreateObject", "EdgeModelResolver", "LocalModelResolver", "MarkdownExtension", "Migrations", "OperationHandler", "ReactSurface", "Settings", "AssistantState", "Toolkit"]
7
+ }
@@ -0,0 +1,8 @@
1
+ // src/operations/index.ts
2
+ import { OperationHandlerSet } from "@dxos/compute";
3
+ var AssistantOperationHandlerSet = OperationHandlerSet.lazy(() => import("./create-chat-QQZURUBW.mjs"), () => import("./ensure-companion-chat-5S4LZM2H.mjs"), () => import("./on-create-space-Q2R7OSP6.mjs"), () => import("./resolve-navigation-targets-VXBSWV5L.mjs"), () => import("./run-prompt-in-new-chat-VJXXZ6SI.mjs"), () => import("./set-current-chat-ZFDCYK5I.mjs"), () => import("./toggle-trace-panel-debug-JGTB6KVJ.mjs"), () => import("./update-chat-name-ENXRUMDJ.mjs"));
4
+
5
+ export {
6
+ AssistantOperationHandlerSet
7
+ };
8
+ //# sourceMappingURL=chunk-3FIV362Z.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/operations/index.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { OperationHandlerSet } from '@dxos/compute';\n\nexport const AssistantOperationHandlerSet = OperationHandlerSet.lazy(\n () => import('./create-chat'),\n () => import('./ensure-companion-chat'),\n () => import('./on-create-space'),\n () => import('./resolve-navigation-targets'),\n () => import('./run-prompt-in-new-chat'),\n () => import('./set-current-chat'),\n () => import('./toggle-trace-panel-debug'),\n () => import('./update-chat-name'),\n);\n"],
5
+ "mappings": ";AAIA,SAASA,2BAA2B;AAE7B,IAAMC,+BAA+BD,oBAAoBE,KAC9D,MAAM,OAAO,4BAAA,GACb,MAAM,OAAO,sCAAA,GACb,MAAM,OAAO,gCAAA,GACb,MAAM,OAAO,2CAAA,GACb,MAAM,OAAO,uCAAA,GACb,MAAM,OAAO,iCAAA,GACb,MAAM,OAAO,yCAAA,GACb,MAAM,OAAO,iCAAA,CAAA;",
6
+ "names": ["OperationHandlerSet", "AssistantOperationHandlerSet", "lazy"]
7
+ }
@@ -0,0 +1,25 @@
1
+ // src/meta.ts
2
+ import { trim } from "@dxos/util";
3
+ var meta = {
4
+ id: "org.dxos.plugin.assistant",
5
+ name: "Assistant",
6
+ description: trim`
7
+ Intelligent AI assistant that can analyze and interact with objects across your spaces.
8
+ Chat naturally to get insights, search content, and perform actions using AI-powered context awareness.
9
+ `,
10
+ icon: "ph--sparkle--regular",
11
+ iconHue: "sky",
12
+ source: "https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-assistant",
13
+ tags: [
14
+ "labs"
15
+ ]
16
+ };
17
+ var ASSISTANT_DIALOG = `${meta.id}.assistant.dialog`;
18
+ var ASSISTANT_COMPANION_VARIANT = "assistant-chat";
19
+
20
+ export {
21
+ meta,
22
+ ASSISTANT_DIALOG,
23
+ ASSISTANT_COMPANION_VARIANT
24
+ };
25
+ //# sourceMappingURL=chunk-4CQZCMRP.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/meta.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type Plugin } from '@dxos/app-framework';\nimport { trim } from '@dxos/util';\n\nexport const meta: Plugin.Meta = {\n id: 'org.dxos.plugin.assistant',\n name: 'Assistant',\n description: trim`\n Intelligent AI assistant that can analyze and interact with objects across your spaces.\n Chat naturally to get insights, search content, and perform actions using AI-powered context awareness.\n `,\n icon: 'ph--sparkle--regular',\n iconHue: 'sky',\n source: 'https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-assistant',\n tags: ['labs'],\n};\n\nexport const ASSISTANT_DIALOG = `${meta.id}.assistant.dialog`;\n\n/** Companion variant identifier for the assistant chat panel. */\nexport const ASSISTANT_COMPANION_VARIANT = 'assistant-chat';\n"],
5
+ "mappings": ";AAKA,SAASA,YAAY;AAEd,IAAMC,OAAoB;EAC/BC,IAAI;EACJC,MAAM;EACNC,aAAaJ;;;;EAIbK,MAAM;EACNC,SAAS;EACTC,QAAQ;EACRC,MAAM;IAAC;;AACT;AAEO,IAAMC,mBAAmB,GAAGR,KAAKC,EAAE;AAGnC,IAAMQ,8BAA8B;",
6
+ "names": ["trim", "meta", "id", "name", "description", "icon", "iconHue", "source", "tags", "ASSISTANT_DIALOG", "ASSISTANT_COMPANION_VARIANT"]
7
+ }
@@ -1,10 +1,8 @@
1
- import "../chunk-J5LGTIGS.mjs";
2
-
3
1
  // src/blueprints/assistant/blueprint.ts
4
2
  import { LayoutOperation } from "@dxos/app-toolkit";
5
3
  import { templates } from "@dxos/assistant";
6
4
  import { Blueprint } from "@dxos/compute";
7
- import { AssistantOperation } from "#operations";
5
+ import { AssistantOperation } from "#types";
8
6
  var BLUEPRINT_KEY = "org.dxos.blueprint.assistant";
9
7
  var make = () => Blueprint.make({
10
8
  key: BLUEPRINT_KEY,
@@ -25,7 +23,8 @@ var blueprint = {
25
23
  make
26
24
  };
27
25
  var blueprint_default = blueprint;
26
+
28
27
  export {
29
- blueprint_default as AssistantBlueprint
28
+ blueprint_default
30
29
  };
31
- //# sourceMappingURL=index.mjs.map
30
+ //# sourceMappingURL=chunk-5H6UJHLF.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/blueprints/assistant/blueprint.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { LayoutOperation } from '@dxos/app-toolkit';\nimport { templates } from '@dxos/assistant';\nimport { Blueprint } from '@dxos/compute';\n\nimport { AssistantOperation } from '#types';\n\nconst BLUEPRINT_KEY = 'org.dxos.blueprint.assistant';\n\nconst make = () =>\n Blueprint.make({\n key: BLUEPRINT_KEY,\n name: 'Assistant',\n tools: Blueprint.toolDefinitions({\n // TODO(wittjosiah): LayoutOperation.Open requires Capability.Service which is only available\n // via the compute-runtime layer (plugin-automation). Once Capability.Service is propagated\n // through LocalFunctionExecutionService, this will work without the compute-runtime dependency.\n operations: [LayoutOperation.Open, AssistantOperation.ResolveNavigationTargets],\n }),\n instructions: templates.system,\n });\n\nconst blueprint: Blueprint.Definition = {\n key: BLUEPRINT_KEY,\n make,\n};\n\nexport default blueprint;\n"],
5
+ "mappings": ";AAIA,SAASA,uBAAuB;AAChC,SAASC,iBAAiB;AAC1B,SAASC,iBAAiB;AAE1B,SAASC,0BAA0B;AAEnC,IAAMC,gBAAgB;AAEtB,IAAMC,OAAO,MACXH,UAAUG,KAAK;EACbC,KAAKF;EACLG,MAAM;EACNC,OAAON,UAAUO,gBAAgB;;;;IAI/BC,YAAY;MAACV,gBAAgBW;MAAMR,mBAAmBS;;EACxD,CAAA;EACAC,cAAcZ,UAAUa;AAC1B,CAAA;AAEF,IAAMC,YAAkC;EACtCT,KAAKF;EACLC;AACF;AAEA,IAAA,oBAAeU;",
6
+ "names": ["LayoutOperation", "templates", "Blueprint", "AssistantOperation", "BLUEPRINT_KEY", "make", "key", "name", "tools", "toolDefinitions", "operations", "Open", "ResolveNavigationTargets", "instructions", "system", "blueprint"]
7
+ }
@@ -0,0 +1,98 @@
1
+ // src/AssistantPlugin.ts
2
+ import * as Effect from "effect/Effect";
3
+ import { ActivationEvent, ActivationEvents, Capability, Plugin } from "@dxos/app-framework";
4
+ import { AppActivationEvents, AppPlugin } from "@dxos/app-toolkit";
5
+ import { AiContext } from "@dxos/assistant";
6
+ import { Agent, Chat, McpServer, Memory, Plan } from "@dxos/assistant-toolkit";
7
+ import { Blueprint, Operation, Routine } from "@dxos/compute";
8
+ import { Sequence } from "@dxos/conductor";
9
+ import { Feed } from "@dxos/echo";
10
+ import { ClientEvents } from "@dxos/plugin-client";
11
+ import { DeckEvents } from "@dxos/plugin-deck";
12
+ import { MarkdownEvents } from "@dxos/plugin-markdown";
13
+ import { SpaceCapabilities, SpaceEvents } from "@dxos/plugin-space";
14
+ import { Text } from "@dxos/schema";
15
+ import { HasSubject, Message } from "@dxos/types";
16
+ import { AiService, AppGraphBuilder, AssistantState, BlueprintDefinition, CompanionChatProvisioner, CreateObject, EdgeModelResolver, LocalModelResolver, MarkdownExtension, Migrations, OperationHandler, ReactSurface, Settings, Toolkit } from "#capabilities";
17
+ import { meta } from "#meta";
18
+ import { translations } from "#translations";
19
+ import { AssistantEvents, AssistantOperation } from "#types";
20
+ var AssistantPlugin = Plugin.define(meta).pipe(AppPlugin.addAppGraphModule({
21
+ activate: AppGraphBuilder
22
+ }), AppPlugin.addBlueprintDefinitionModule({
23
+ activate: BlueprintDefinition
24
+ }), AppPlugin.addCreateObjectModule({
25
+ activate: CreateObject
26
+ }), AppPlugin.addOperationHandlerModule({
27
+ activate: OperationHandler
28
+ }), AppPlugin.addSchemaModule({
29
+ schema: [
30
+ Chat.Chat,
31
+ Chat.CompanionTo,
32
+ Blueprint.Blueprint,
33
+ AiContext.Binding,
34
+ Feed.Feed,
35
+ HasSubject.HasSubject,
36
+ Message.Message,
37
+ Routine.Routine,
38
+ Agent.Agent,
39
+ McpServer.McpServer,
40
+ Plan.Plan,
41
+ Sequence.Sequence,
42
+ Memory.Memory,
43
+ Text.Text
44
+ ]
45
+ }), AppPlugin.addSettingsModule({
46
+ activate: Settings
47
+ }), AppPlugin.addSurfaceModule({
48
+ activate: ReactSurface,
49
+ firesBeforeActivation: [
50
+ AppActivationEvents.SetupArtifactDefinition
51
+ ]
52
+ }), AppPlugin.addTranslationsModule({
53
+ translations
54
+ }), Plugin.addModule({
55
+ id: "markdown",
56
+ activatesOn: MarkdownEvents.SetupExtensions,
57
+ activate: MarkdownExtension
58
+ }), Plugin.addModule({
59
+ // TODO(wittjosiah): Does not integrate with settings store.
60
+ // Should this be a different event?
61
+ // Should settings store be renamed to be more generic?
62
+ activatesOn: AppActivationEvents.SetupSettings,
63
+ activate: AssistantState
64
+ }), Plugin.addModule({
65
+ id: "on-space-created",
66
+ activatesOn: SpaceEvents.SpaceCreated,
67
+ activate: () => Effect.succeed(Capability.contributes(SpaceCapabilities.OnCreateSpace, (params) => Operation.invoke(AssistantOperation.OnCreateSpace, params)))
68
+ }), Plugin.addModule({
69
+ activatesOn: AssistantEvents.SetupAiServiceProviders,
70
+ activate: EdgeModelResolver
71
+ }), Plugin.addModule({
72
+ activatesOn: AssistantEvents.SetupAiServiceProviders,
73
+ activate: LocalModelResolver
74
+ }), Plugin.addModule({
75
+ firesBeforeActivation: [
76
+ AssistantEvents.SetupAiServiceProviders
77
+ ],
78
+ // TODO(dmaretskyi): This should activate lazily when the AI chat is used.
79
+ activatesOn: ActivationEvents.Startup,
80
+ activate: AiService
81
+ }), Plugin.addModule({
82
+ // TODO(wittjosiah): Use a different event.
83
+ activatesOn: ActivationEvents.Startup,
84
+ activate: Toolkit
85
+ }), Plugin.addModule({
86
+ activatesOn: ActivationEvent.allOf(ActivationEvents.OperationInvokerReady, AppActivationEvents.AppGraphReady, DeckEvents.StateReady),
87
+ activate: CompanionChatProvisioner
88
+ }), Plugin.addModule({
89
+ activatesOn: ClientEvents.SetupMigration,
90
+ activate: Migrations
91
+ }), Plugin.make);
92
+ var AssistantPlugin_default = AssistantPlugin;
93
+
94
+ export {
95
+ AssistantPlugin,
96
+ AssistantPlugin_default
97
+ };
98
+ //# sourceMappingURL=chunk-ITJX2YZZ.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/AssistantPlugin.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { ActivationEvent, ActivationEvents, Capability, Plugin } from '@dxos/app-framework';\nimport { AppActivationEvents, AppPlugin } from '@dxos/app-toolkit';\nimport { AiContext } from '@dxos/assistant';\nimport { Agent, Chat, McpServer, Memory, Plan } from '@dxos/assistant-toolkit';\nimport { Blueprint, Operation, Routine } from '@dxos/compute';\nimport { Sequence } from '@dxos/conductor';\nimport { Feed } from '@dxos/echo';\nimport { ClientEvents } from '@dxos/plugin-client';\nimport { DeckEvents } from '@dxos/plugin-deck';\nimport { MarkdownEvents } from '@dxos/plugin-markdown';\nimport { SpaceCapabilities, SpaceEvents } from '@dxos/plugin-space';\nimport { Text } from '@dxos/schema';\nimport { HasSubject, Message } from '@dxos/types';\n\nimport {\n AiService,\n AppGraphBuilder,\n AssistantState,\n BlueprintDefinition,\n CompanionChatProvisioner,\n CreateObject,\n EdgeModelResolver,\n LocalModelResolver,\n MarkdownExtension,\n Migrations,\n OperationHandler,\n ReactSurface,\n Settings,\n Toolkit,\n} from '#capabilities';\nimport { meta } from '#meta';\nimport { translations } from '#translations';\nimport { AssistantEvents, AssistantOperation } from '#types';\n\nexport const AssistantPlugin = Plugin.define(meta).pipe(\n AppPlugin.addAppGraphModule({ activate: AppGraphBuilder }),\n AppPlugin.addBlueprintDefinitionModule({ activate: BlueprintDefinition }),\n AppPlugin.addCreateObjectModule({ activate: CreateObject }),\n AppPlugin.addOperationHandlerModule({ activate: OperationHandler }),\n AppPlugin.addSchemaModule({\n schema: [\n Chat.Chat,\n Chat.CompanionTo,\n Blueprint.Blueprint,\n AiContext.Binding,\n Feed.Feed,\n HasSubject.HasSubject,\n Message.Message,\n Routine.Routine,\n Agent.Agent,\n McpServer.McpServer,\n Plan.Plan,\n Sequence.Sequence,\n Memory.Memory,\n Text.Text,\n ],\n }),\n AppPlugin.addSettingsModule({ activate: Settings }),\n AppPlugin.addSurfaceModule({\n activate: ReactSurface,\n firesBeforeActivation: [AppActivationEvents.SetupArtifactDefinition],\n }),\n AppPlugin.addTranslationsModule({ translations }),\n Plugin.addModule({\n id: 'markdown',\n activatesOn: MarkdownEvents.SetupExtensions,\n activate: MarkdownExtension,\n }),\n Plugin.addModule({\n // TODO(wittjosiah): Does not integrate with settings store.\n // Should this be a different event?\n // Should settings store be renamed to be more generic?\n activatesOn: AppActivationEvents.SetupSettings,\n activate: AssistantState,\n }),\n Plugin.addModule({\n id: 'on-space-created',\n activatesOn: SpaceEvents.SpaceCreated,\n activate: () =>\n Effect.succeed(\n Capability.contributes(SpaceCapabilities.OnCreateSpace, (params) =>\n Operation.invoke(AssistantOperation.OnCreateSpace, params),\n ),\n ),\n }),\n Plugin.addModule({\n activatesOn: AssistantEvents.SetupAiServiceProviders,\n activate: EdgeModelResolver,\n }),\n Plugin.addModule({\n activatesOn: AssistantEvents.SetupAiServiceProviders,\n activate: LocalModelResolver,\n }),\n Plugin.addModule({\n firesBeforeActivation: [AssistantEvents.SetupAiServiceProviders],\n // TODO(dmaretskyi): This should activate lazily when the AI chat is used.\n activatesOn: ActivationEvents.Startup,\n activate: AiService,\n }),\n Plugin.addModule({\n // TODO(wittjosiah): Use a different event.\n activatesOn: ActivationEvents.Startup,\n activate: Toolkit,\n }),\n Plugin.addModule({\n activatesOn: ActivationEvent.allOf(\n ActivationEvents.OperationInvokerReady,\n AppActivationEvents.AppGraphReady,\n DeckEvents.StateReady,\n ),\n activate: CompanionChatProvisioner,\n }),\n Plugin.addModule({\n activatesOn: ClientEvents.SetupMigration,\n activate: Migrations,\n }),\n Plugin.make,\n);\n\nexport default AssistantPlugin;\n"],
5
+ "mappings": ";AAIA,YAAYA,YAAY;AAExB,SAASC,iBAAiBC,kBAAkBC,YAAYC,cAAc;AACtE,SAASC,qBAAqBC,iBAAiB;AAC/C,SAASC,iBAAiB;AAC1B,SAASC,OAAOC,MAAMC,WAAWC,QAAQC,YAAY;AACrD,SAASC,WAAWC,WAAWC,eAAe;AAC9C,SAASC,gBAAgB;AACzB,SAASC,YAAY;AACrB,SAASC,oBAAoB;AAC7B,SAASC,kBAAkB;AAC3B,SAASC,sBAAsB;AAC/B,SAASC,mBAAmBC,mBAAmB;AAC/C,SAASC,YAAY;AACrB,SAASC,YAAYC,eAAe;AAEpC,SACEC,WACAC,iBACAC,gBACAC,qBACAC,0BACAC,cACAC,mBACAC,oBACAC,mBACAC,YACAC,kBACAC,cACAC,UACAC,eACK;AACP,SAASC,YAAY;AACrB,SAASC,oBAAoB;AAC7B,SAASC,iBAAiBC,0BAA0B;AAE7C,IAAMC,kBAAkBxC,OAAOyC,OAAOL,IAAAA,EAAMM,KACjDxC,UAAUyC,kBAAkB;EAAEC,UAAUrB;AAAgB,CAAA,GACxDrB,UAAU2C,6BAA6B;EAAED,UAAUnB;AAAoB,CAAA,GACvEvB,UAAU4C,sBAAsB;EAAEF,UAAUjB;AAAa,CAAA,GACzDzB,UAAU6C,0BAA0B;EAAEH,UAAUZ;AAAiB,CAAA,GACjE9B,UAAU8C,gBAAgB;EACxBC,QAAQ;IACN5C,KAAKA;IACLA,KAAK6C;IACLzC,UAAUA;IACVN,UAAUgD;IACVtC,KAAKA;IACLO,WAAWA;IACXC,QAAQA;IACRV,QAAQA;IACRP,MAAMA;IACNE,UAAUA;IACVE,KAAKA;IACLI,SAASA;IACTL,OAAOA;IACPY,KAAKA;;AAET,CAAA,GACAjB,UAAUkD,kBAAkB;EAAER,UAAUV;AAAS,CAAA,GACjDhC,UAAUmD,iBAAiB;EACzBT,UAAUX;EACVqB,uBAAuB;IAACrD,oBAAoBsD;;AAC9C,CAAA,GACArD,UAAUsD,sBAAsB;EAAEnB;AAAa,CAAA,GAC/CrC,OAAOyD,UAAU;EACfC,IAAI;EACJC,aAAa3C,eAAe4C;EAC5BhB,UAAUd;AACZ,CAAA,GACA9B,OAAOyD,UAAU;;;;EAIfE,aAAa1D,oBAAoB4D;EACjCjB,UAAUpB;AACZ,CAAA,GACAxB,OAAOyD,UAAU;EACfC,IAAI;EACJC,aAAazC,YAAY4C;EACzBlB,UAAU,MACDmB,eACLhE,WAAWiE,YAAY/C,kBAAkBgD,eAAe,CAACC,WACvDxD,UAAUyD,OAAO5B,mBAAmB0B,eAAeC,MAAAA,CAAAA,CAAAA;AAG3D,CAAA,GACAlE,OAAOyD,UAAU;EACfE,aAAarB,gBAAgB8B;EAC7BxB,UAAUhB;AACZ,CAAA,GACA5B,OAAOyD,UAAU;EACfE,aAAarB,gBAAgB8B;EAC7BxB,UAAUf;AACZ,CAAA,GACA7B,OAAOyD,UAAU;EACfH,uBAAuB;IAAChB,gBAAgB8B;;;EAExCT,aAAa7D,iBAAiBuE;EAC9BzB,UAAUtB;AACZ,CAAA,GACAtB,OAAOyD,UAAU;;EAEfE,aAAa7D,iBAAiBuE;EAC9BzB,UAAUT;AACZ,CAAA,GACAnC,OAAOyD,UAAU;EACfE,aAAa9D,gBAAgByE,MAC3BxE,iBAAiByE,uBACjBtE,oBAAoBuE,eACpBzD,WAAW0D,UAAU;EAEvB7B,UAAUlB;AACZ,CAAA,GACA1B,OAAOyD,UAAU;EACfE,aAAa7C,aAAa4D;EAC1B9B,UAAUb;AACZ,CAAA,GACA/B,OAAO2E,IAAI;AAGb,IAAA,0BAAenC;",
6
+ "names": ["Effect", "ActivationEvent", "ActivationEvents", "Capability", "Plugin", "AppActivationEvents", "AppPlugin", "AiContext", "Agent", "Chat", "McpServer", "Memory", "Plan", "Blueprint", "Operation", "Routine", "Sequence", "Feed", "ClientEvents", "DeckEvents", "MarkdownEvents", "SpaceCapabilities", "SpaceEvents", "Text", "HasSubject", "Message", "AiService", "AppGraphBuilder", "AssistantState", "BlueprintDefinition", "CompanionChatProvisioner", "CreateObject", "EdgeModelResolver", "LocalModelResolver", "MarkdownExtension", "Migrations", "OperationHandler", "ReactSurface", "Settings", "Toolkit", "meta", "translations", "AssistantEvents", "AssistantOperation", "AssistantPlugin", "define", "pipe", "addAppGraphModule", "activate", "addBlueprintDefinitionModule", "addCreateObjectModule", "addOperationHandlerModule", "addSchemaModule", "schema", "CompanionTo", "Binding", "addSettingsModule", "addSurfaceModule", "firesBeforeActivation", "SetupArtifactDefinition", "addTranslationsModule", "addModule", "id", "activatesOn", "SetupExtensions", "SetupSettings", "SpaceCreated", "succeed", "contributes", "OnCreateSpace", "params", "invoke", "SetupAiServiceProviders", "Startup", "allOf", "OperationInvokerReady", "AppGraphReady", "StateReady", "SetupMigration", "make"]
7
+ }
@@ -0,0 +1,380 @@
1
+ import {
2
+ __export
3
+ } from "./chunk-J5LGTIGS.mjs";
4
+
5
+ // src/types/Assistant.ts
6
+ var Assistant_exports = {};
7
+ __export(Assistant_exports, {
8
+ Chat: () => Chat,
9
+ ChatView: () => ChatView2,
10
+ ChatViews: () => ChatViews2,
11
+ ModelDefaults: () => ModelDefaults2,
12
+ ModelProvider: () => ModelProvider2,
13
+ ModelProviders: () => ModelProviders2,
14
+ Settings: () => Settings2
15
+ });
16
+ import { Chat as ChatModule } from "@dxos/assistant-toolkit";
17
+
18
+ // src/types/Settings.ts
19
+ import * as Schema from "effect/Schema";
20
+ import { getLiteralValues } from "@dxos/effect";
21
+ var ModelProvider = Schema.Union(Schema.Literal("edge").annotations({
22
+ title: "DXOS"
23
+ }), Schema.Literal("ollama").annotations({
24
+ title: "Ollama"
25
+ }), Schema.Literal("lmstudio").annotations({
26
+ title: "LM Studio"
27
+ }));
28
+ var ModelProviders = getLiteralValues(ModelProvider);
29
+ var ChatView = Schema.Union(Schema.Literal("normal").annotations({
30
+ title: "Normal"
31
+ }), Schema.Literal("summary").annotations({
32
+ title: "Summary"
33
+ }), Schema.Literal("thinking").annotations({
34
+ title: "Thinking"
35
+ }), Schema.Literal("debug").annotations({
36
+ title: "Debug"
37
+ }));
38
+ var ChatViews = getLiteralValues(ChatView);
39
+ var ModelDefaults = Schema.mutable(Schema.Struct({
40
+ edge: Schema.optional(Schema.String.annotations({
41
+ title: "Remote language model",
42
+ description: "Choose the remote language model used for AI requests."
43
+ })),
44
+ ollama: Schema.optional(Schema.String.annotations({
45
+ title: "Ollama language model",
46
+ description: "Choose the locally hosted Ollama model for AI requests."
47
+ })),
48
+ lmstudio: Schema.optional(Schema.String.annotations({
49
+ title: "LM Studio language model",
50
+ description: "Choose the locally hosted LM Studio model for AI requests."
51
+ }))
52
+ }));
53
+ var Settings = Schema.mutable(Schema.Struct({
54
+ customPrompts: Schema.optional(Schema.Boolean.annotations({
55
+ title: "Use custom prompts",
56
+ description: "Allow the assistant to use custom prompts defined in your spaces."
57
+ })),
58
+ chatView: Schema.optional(ChatView.annotations({
59
+ title: "Chat view",
60
+ description: "Controls which message blocks are shown in the chat: normal hides reasoning, thinking shows reasoning, debug shows raw blocks, summary shows only conversational text."
61
+ })),
62
+ modelProvider: Schema.optional(ModelProvider.annotations({
63
+ title: "LLM provider",
64
+ description: "Select which language model service to use for AI responses."
65
+ })),
66
+ modelDefaults: Schema.optional(ModelDefaults),
67
+ tracePanelDebug: Schema.optional(Schema.Boolean.annotations({
68
+ title: "Trace panel debug",
69
+ description: "Show the raw span tree as JSON in the trace panel instead of the commit graph."
70
+ }))
71
+ }));
72
+
73
+ // src/types/Assistant.ts
74
+ var Chat = ChatModule.Chat;
75
+ var Settings2 = Settings;
76
+ var ChatViews2 = ChatViews;
77
+ var ChatView2 = ChatView;
78
+ var ModelProviders2 = ModelProviders;
79
+ var ModelProvider2 = ModelProvider;
80
+ var ModelDefaults2 = ModelDefaults;
81
+
82
+ // src/types/AssistantOperation.ts
83
+ var AssistantOperation_exports = {};
84
+ __export(AssistantOperation_exports, {
85
+ BlueprintForm: () => BlueprintForm,
86
+ CreateChat: () => CreateChat,
87
+ EnsureCompanionChat: () => EnsureCompanionChat,
88
+ OnCreateSpace: () => OnCreateSpace,
89
+ ResolveNavigationTargets: () => ResolveNavigationTargets,
90
+ RunPromptInNewChat: () => RunPromptInNewChat,
91
+ SetCurrentChat: () => SetCurrentChat,
92
+ ToggleTracePanelDebug: () => ToggleTracePanelDebug,
93
+ UpdateChatName: () => UpdateChatName
94
+ });
95
+ import * as Schema2 from "effect/Schema";
96
+ import { AiService } from "@dxos/ai";
97
+ import { Capability } from "@dxos/app-framework";
98
+ import { Chat as Chat2 } from "@dxos/assistant-toolkit";
99
+ import { SpaceSchema } from "@dxos/client/echo";
100
+ import { Routine, Operation } from "@dxos/compute";
101
+ import { Collection, Database, DXN, Feed, Obj, Ref } from "@dxos/echo";
102
+ import { meta } from "#meta";
103
+ var ASSISTANT_OPERATION = `${meta.id}.operation`;
104
+ var OnCreateSpace = Operation.make({
105
+ meta: {
106
+ key: `${ASSISTANT_OPERATION}.on-create-space`,
107
+ name: "On Create Space"
108
+ },
109
+ services: [
110
+ Capability.Service
111
+ ],
112
+ input: Schema2.Struct({
113
+ space: SpaceSchema,
114
+ rootCollection: Collection.Collection
115
+ }),
116
+ output: Schema2.Void
117
+ });
118
+ var CreateChat = Operation.make({
119
+ meta: {
120
+ key: `${ASSISTANT_OPERATION}.create-chat`,
121
+ name: "Create Chat"
122
+ },
123
+ services: [
124
+ Capability.Service
125
+ ],
126
+ input: Schema2.Struct({
127
+ db: Database.Database,
128
+ name: Schema2.optional(Schema2.String),
129
+ /** If false, chat is created in-memory only and not added to space. Defaults to true. */
130
+ addToSpace: Schema2.optional(Schema2.Boolean)
131
+ }),
132
+ output: Schema2.Struct({
133
+ object: Chat2.Chat
134
+ })
135
+ });
136
+ var UpdateChatName = Operation.make({
137
+ meta: {
138
+ key: `${ASSISTANT_OPERATION}.update-chat-name`,
139
+ name: "Update Chat Name"
140
+ },
141
+ services: [
142
+ Database.Service,
143
+ Feed.FeedService,
144
+ AiService.AiService
145
+ ],
146
+ input: Schema2.Struct({
147
+ chat: Chat2.Chat
148
+ }),
149
+ output: Schema2.Void
150
+ });
151
+ var SetCurrentChat = Operation.make({
152
+ meta: {
153
+ key: `${ASSISTANT_OPERATION}.set-current-chat`,
154
+ name: "Set Current Chat"
155
+ },
156
+ services: [
157
+ Capability.Service
158
+ ],
159
+ input: Schema2.Struct({
160
+ companionTo: Obj.Unknown,
161
+ chat: Chat2.Chat.pipe(Schema2.optional)
162
+ }),
163
+ output: Schema2.Void
164
+ });
165
+ var RunPromptInNewChat = Operation.make({
166
+ meta: {
167
+ key: `${ASSISTANT_OPERATION}.run-prompt-in-new-chat`,
168
+ name: "Run Prompt In New Chat"
169
+ },
170
+ services: [
171
+ Capability.Service
172
+ ],
173
+ input: Schema2.Struct({
174
+ db: Database.Database,
175
+ /** Context objects to bind to the new chat. */
176
+ objects: Schema2.optional(Schema2.Array(Obj.Unknown)),
177
+ /** Blueprint keys to look up and bind to the new chat. */
178
+ blueprints: Schema2.optional(Schema2.Array(Schema2.String)),
179
+ /** Raw instructions or an existing Routine object reference. */
180
+ prompt: Schema2.Union(Schema2.String, Ref.Ref(Routine.Routine)),
181
+ /**
182
+ * When true, skips opening the chat: runs the Agent prompt operation against the new chat via the compute runtime (traced).
183
+ */
184
+ background: Schema2.optional(Schema2.Boolean)
185
+ }),
186
+ output: Schema2.Struct({
187
+ object: Chat2.Chat
188
+ })
189
+ });
190
+ var NavigationTargetSchema = Schema2.Struct({
191
+ path: Schema2.String.annotations({
192
+ description: "Navigation path to use with the Open operation."
193
+ }),
194
+ label: Schema2.String.annotations({
195
+ description: "Human-readable label."
196
+ }),
197
+ type: Schema2.String.annotations({
198
+ description: "Object type."
199
+ })
200
+ });
201
+ var ResolveNavigationTargets = Operation.make({
202
+ meta: {
203
+ key: `${ASSISTANT_OPERATION}.resolve-navigation-targets`,
204
+ name: "Resolve navigation targets",
205
+ description: "Resolve navigation targets within the application. The returned paths can be used with the Open operation. Without a query, returns pages that can be navigated to."
206
+ },
207
+ input: Schema2.Struct({
208
+ query: Schema2.optional(Schema2.Struct({
209
+ dxn: DXN.Schema.pipe(Schema2.optional)
210
+ }))
211
+ }),
212
+ output: Schema2.Struct({
213
+ targets: Schema2.Array(NavigationTargetSchema)
214
+ }),
215
+ services: [
216
+ Capability.Service
217
+ ]
218
+ });
219
+ var EnsureCompanionChat = Operation.make({
220
+ meta: {
221
+ key: `${ASSISTANT_OPERATION}.ensure-companion-chat`,
222
+ name: "Ensure Companion Chat"
223
+ },
224
+ services: [
225
+ Capability.Service
226
+ ],
227
+ input: Schema2.Struct({
228
+ db: Database.Database,
229
+ companionTo: Obj.Unknown
230
+ }),
231
+ output: Schema2.Struct({
232
+ chat: Chat2.Chat,
233
+ /** Whether the returned chat was already persisted in the space. */
234
+ persisted: Schema2.Boolean
235
+ })
236
+ });
237
+ var BlueprintForm = Schema2.Struct({
238
+ key: Schema2.String,
239
+ name: Schema2.String,
240
+ description: Schema2.optional(Schema2.String)
241
+ });
242
+ var ToggleTracePanelDebug = Operation.make({
243
+ meta: {
244
+ key: `${ASSISTANT_OPERATION}.toggle-trace-panel-debug`,
245
+ name: "Toggle trace panel debug",
246
+ description: "Toggle trace panel between commit graph and raw span tree JSON."
247
+ },
248
+ services: [
249
+ Capability.Service
250
+ ],
251
+ input: Schema2.Struct({
252
+ state: Schema2.optional(Schema2.Boolean)
253
+ }),
254
+ output: Schema2.Boolean
255
+ });
256
+
257
+ // src/types/AssistantCapabilities.ts
258
+ var AssistantCapabilities_exports = {};
259
+ __export(AssistantCapabilities_exports, {
260
+ CompanionChatCache: () => CompanionChatCache,
261
+ Settings: () => Settings3,
262
+ State: () => State,
263
+ StateSchema: () => StateSchema
264
+ });
265
+ import * as Schema3 from "effect/Schema";
266
+ import { Capability as Capability2 } from "@dxos/app-framework";
267
+ import { meta as meta2 } from "#meta";
268
+ var Settings3 = Capability2.make(`${meta2.id}.capability.settings`);
269
+ var StateSchema = Schema3.mutable(Schema3.Struct({
270
+ /** Map of primary object dxn to current chat dxn. */
271
+ currentChat: Schema3.Record({
272
+ key: Schema3.String,
273
+ value: Schema3.UndefinedOr(Schema3.String)
274
+ }),
275
+ /** Map of chat object path to prompt text to auto-submit when the chat opens. */
276
+ pendingPrompts: Schema3.Record({
277
+ key: Schema3.String,
278
+ value: Schema3.UndefinedOr(Schema3.String)
279
+ })
280
+ }));
281
+ var State = Capability2.make(`${meta2.id}.capability.state`);
282
+ var CompanionChatCache = Capability2.make(`${meta2.id}.capability.companion-chat-cache`);
283
+
284
+ // src/types/AssistantEvents.ts
285
+ var AssistantEvents_exports = {};
286
+ __export(AssistantEvents_exports, {
287
+ SetupAiServiceProviders: () => SetupAiServiceProviders
288
+ });
289
+ import { ActivationEvent } from "@dxos/app-framework";
290
+ import { meta as meta3 } from "#meta";
291
+ var SetupAiServiceProviders = ActivationEvent.make(`${meta3.id}.event.setup-ai-service-providers`);
292
+
293
+ // src/types/service.ts
294
+ import * as Schema4 from "effect/Schema";
295
+ import { Operation as Operation2 } from "@dxos/compute";
296
+ import { ComputeGraph } from "@dxos/conductor";
297
+ import { Ref as Ref2, Type } from "@dxos/echo";
298
+ var ApiAuthorizationKey = Schema4.Struct({
299
+ type: Schema4.Literal("api-key"),
300
+ key: Schema4.String,
301
+ placement: Schema4.Union(Schema4.Struct({
302
+ type: Schema4.Literal("authorization-header")
303
+ }), Schema4.Struct({
304
+ type: Schema4.Literal("query"),
305
+ name: Schema4.String
306
+ }))
307
+ });
308
+ var ApiAuthorizationOauth = Schema4.Struct({
309
+ type: Schema4.Literal("oauth"),
310
+ clientId: Schema4.String,
311
+ clientSecret: Schema4.String,
312
+ tokenUrl: Schema4.String,
313
+ grantType: Schema4.String
314
+ });
315
+ var ApiAuthorization = Schema4.Union(ApiAuthorizationKey, ApiAuthorizationOauth);
316
+ var ServiceInterfaceFunction = Schema4.Struct({
317
+ kind: Schema4.Literal("function"),
318
+ fn: Ref2.Ref(Operation2.PersistentOperation)
319
+ });
320
+ var ServiceInterfaceWorkflow = Schema4.Struct({
321
+ kind: Schema4.Literal("workflow"),
322
+ workflow: Ref2.Ref(ComputeGraph)
323
+ });
324
+ var ServiceInterfaceApi = Schema4.Struct({
325
+ kind: Schema4.Literal("api"),
326
+ /**
327
+ * URL to fetch the openapi schema.
328
+ */
329
+ schemaUrl: Schema4.optional(Schema4.String),
330
+ /**
331
+ * Inlined openapi schema.
332
+ */
333
+ schema: Schema4.optional(Schema4.Any),
334
+ /**
335
+ * Authorization configuration if required.
336
+ */
337
+ authorization: Schema4.optional(ApiAuthorization)
338
+ });
339
+ var ServiceInterface = Schema4.Union(
340
+ // Service types.
341
+ ServiceInterfaceFunction,
342
+ ServiceInterfaceWorkflow,
343
+ ServiceInterfaceApi
344
+ );
345
+ var ServiceType = Schema4.Struct({
346
+ serviceId: Schema4.String,
347
+ name: Schema4.optional(Schema4.String),
348
+ description: Schema4.optional(Schema4.String),
349
+ category: Schema4.optional(Schema4.String),
350
+ enabled: Schema4.optional(Schema4.Boolean),
351
+ /**
352
+ * Entries exposed: functions, workflows, and APIs.
353
+ */
354
+ interfaces: Schema4.optional(Schema4.Array(ServiceInterface))
355
+ }).pipe(Type.object({
356
+ typename: "org.dxos.type.service",
357
+ version: "0.1.0"
358
+ }));
359
+ var categoryIcons = {
360
+ finance: "ph--bank--regular",
361
+ health: "ph--heart--regular",
362
+ geolocation: "ph--globe-simple--regular",
363
+ education: "ph--books--regular",
364
+ entertainment: "ph--music-notes--regular",
365
+ shopping: "ph--shopping-cart--regular",
366
+ travel: "ph--airplane-takeoff--regular",
367
+ utilities: "ph--lightning--regular",
368
+ weather: "ph--cloud-rain--regular"
369
+ };
370
+
371
+ export {
372
+ Assistant_exports,
373
+ AssistantOperation_exports,
374
+ AssistantCapabilities_exports,
375
+ AssistantEvents_exports,
376
+ ApiAuthorization,
377
+ ServiceType,
378
+ categoryIcons
379
+ };
380
+ //# sourceMappingURL=chunk-IZQWGJNG.mjs.map