@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
@@ -1,107 +0,0 @@
1
- import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
- import {
3
- AssistantCapabilities
4
- } from "./chunk-XAFVSEUJ.mjs";
5
- import {
6
- CreateChat,
7
- RunPromptInNewChat
8
- } from "./chunk-MBDVPB4V.mjs";
9
- import "./chunk-HSLMI22Q.mjs";
10
-
11
- // src/operations/run-prompt-in-new-chat.ts
12
- import * as Effect from "effect/Effect";
13
- import { Capabilities, Capability } from "@dxos/app-framework";
14
- import { getObjectPathFromObject, LayoutOperation } from "@dxos/app-toolkit";
15
- import { AiContextBinder } from "@dxos/assistant";
16
- import { AgentPrompt } from "@dxos/assistant-toolkit";
17
- import { Blueprint, Routine, Template, Operation } from "@dxos/compute";
18
- import { Database, Filter, Obj, Ref } from "@dxos/echo";
19
- import { createFeedServiceLayer } from "@dxos/echo-db";
20
- import { invariant } from "@dxos/invariant";
21
- import { log } from "@dxos/log";
22
- import { AutomationCapabilities } from "@dxos/plugin-automation/types";
23
- import { ClientCapabilities } from "@dxos/plugin-client/types";
24
- import { Text } from "@dxos/schema";
25
- var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-assistant/src/operations/run-prompt-in-new-chat.ts";
26
- var handler = RunPromptInNewChat.pipe(Operation.withHandler(Effect.fnUntraced(function* ({ db, prompt, objects, blueprints, background }) {
27
- const registry = yield* Capability.get(Capabilities.AtomRegistry);
28
- const { object: chat } = yield* Operation.invoke(CreateChat, {
29
- db
30
- });
31
- if (objects && objects.length > 0 || blueprints && blueprints.length > 0) {
32
- const feedTarget = chat.feed.target;
33
- invariant(feedTarget, "Chat feed not found.", { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 26, S: this, A: ["feedTarget", "'Chat feed not found.'"] });
34
- const client = yield* Capability.get(ClientCapabilities.Client);
35
- const space = client.spaces.get(db.spaceId);
36
- invariant(space, "Space not found.", { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 29, S: this, A: ["space", "'Space not found.'"] });
37
- const feedServiceLayer = createFeedServiceLayer(space.queues);
38
- const runtime2 = yield* Effect.runtime().pipe(Effect.provide(feedServiceLayer));
39
- const binder = new AiContextBinder({
40
- feed: feedTarget,
41
- runtime: runtime2,
42
- registry
43
- });
44
- yield* Effect.promise(() => binder.use(async (b) => {
45
- const bindingProps = {};
46
- if (objects && objects.length > 0) {
47
- bindingProps.objects = objects.map((obj) => Ref.make(obj));
48
- }
49
- if (blueprints && blueprints.length > 0) {
50
- const allBlueprints = await db.query(Filter.type(Blueprint.Blueprint)).run();
51
- const matchedBlueprints = allBlueprints.filter((blueprint) => blueprint.key && blueprints.includes(blueprint.key));
52
- if (matchedBlueprints.length > 0) {
53
- bindingProps.blueprints = matchedBlueprints.map((blueprint) => Ref.make(blueprint));
54
- }
55
- }
56
- await b.bind(bindingProps);
57
- }));
58
- }
59
- if (background) {
60
- const promptRef = typeof prompt === "string" ? Ref.make(Routine.make({
61
- instructions: prompt,
62
- blueprints: [],
63
- context: []
64
- })) : prompt;
65
- yield* Database.flush();
66
- const computeRuntime = yield* Capability.get(AutomationCapabilities.ComputeRuntime);
67
- const runtime2 = yield* computeRuntime.getRuntime(db.spaceId).runtimeEffect;
68
- yield* Operation.invoke(AgentPrompt, {
69
- prompt: promptRef,
70
- input: {},
71
- chat: Ref.make(chat)
72
- }).pipe(Effect.provide(runtime2), Effect.catchAll((error) => {
73
- log.catch(error, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 66, S: this });
74
- return Effect.void;
75
- }));
76
- return {
77
- object: chat
78
- };
79
- }
80
- const chatPath = getObjectPathFromObject(chat);
81
- const pendingPromptText = typeof prompt === "string" ? prompt : yield* Effect.gen(function* () {
82
- const promptObj = yield* Effect.promise(() => prompt.load());
83
- const source = yield* Effect.promise(() => promptObj.instructions.source.load());
84
- invariant(Obj.instanceOf(Text.Text, source), "Prompt template source must be Text.", { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 77, S: this, A: ["Obj.instanceOf(Text.Text, source)", "'Prompt template source must be Text.'"] });
85
- return Template.process(source.content ?? "");
86
- });
87
- yield* Capabilities.updateAtomValue(AssistantCapabilities.State, (current) => ({
88
- ...current,
89
- pendingPrompts: {
90
- ...current.pendingPrompts,
91
- [chatPath]: pendingPromptText
92
- }
93
- }));
94
- yield* Operation.invoke(LayoutOperation.Open, {
95
- subject: [
96
- chatPath
97
- ]
98
- });
99
- return {
100
- object: chat
101
- };
102
- }, (effect, { db }) => effect.pipe(Effect.provide(Database.layer(db))))));
103
- var run_prompt_in_new_chat_default = handler;
104
- export {
105
- run_prompt_in_new_chat_default as default
106
- };
107
- //# sourceMappingURL=run-prompt-in-new-chat-RIRYYYPK.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/operations/run-prompt-in-new-chat.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { getObjectPathFromObject, LayoutOperation } from '@dxos/app-toolkit';\nimport { AiContextBinder } from '@dxos/assistant';\nimport { AgentPrompt } from '@dxos/assistant-toolkit';\nimport { Blueprint, Routine, Template, Operation } from '@dxos/compute';\nimport { Database, Feed, Filter, Obj, Ref } from '@dxos/echo';\nimport { createFeedServiceLayer } from '@dxos/echo-db';\nimport { invariant } from '@dxos/invariant';\nimport { log } from '@dxos/log';\nimport { AutomationCapabilities } from '@dxos/plugin-automation/types';\nimport { ClientCapabilities } from '@dxos/plugin-client/types';\nimport { Text } from '@dxos/schema';\n\nimport { AssistantCapabilities } from '../types';\nimport { CreateChat, RunPromptInNewChat } from './definitions';\n\nconst handler: Operation.WithHandler<typeof RunPromptInNewChat> = RunPromptInNewChat.pipe(\n Operation.withHandler(\n Effect.fnUntraced(\n function* ({ db, prompt, objects, blueprints, background }) {\n const registry = yield* Capability.get(Capabilities.AtomRegistry);\n const { object: chat } = yield* Operation.invoke(CreateChat, { db });\n\n if ((objects && objects.length > 0) || (blueprints && blueprints.length > 0)) {\n const feedTarget = chat.feed.target;\n invariant(feedTarget, 'Chat feed not found.');\n const client = yield* Capability.get(ClientCapabilities.Client);\n const space = client.spaces.get(db.spaceId);\n invariant(space, 'Space not found.');\n const feedServiceLayer = createFeedServiceLayer(space.queues);\n const runtime = yield* Effect.runtime<Feed.FeedService>().pipe(Effect.provide(feedServiceLayer));\n const binder = new AiContextBinder({ feed: feedTarget, runtime, registry });\n yield* Effect.promise(() =>\n binder.use(async (b: AiContextBinder) => {\n const bindingProps: Parameters<AiContextBinder['bind']>[0] = {};\n\n if (objects && objects.length > 0) {\n bindingProps.objects = objects.map((obj) => Ref.make(obj));\n }\n\n if (blueprints && blueprints.length > 0) {\n const allBlueprints = await db.query(Filter.type(Blueprint.Blueprint)).run();\n const matchedBlueprints = allBlueprints.filter(\n (blueprint) => blueprint.key && blueprints.includes(blueprint.key),\n );\n if (matchedBlueprints.length > 0) {\n bindingProps.blueprints = matchedBlueprints.map((blueprint) => Ref.make(blueprint));\n }\n }\n\n await b.bind(bindingProps);\n }),\n );\n }\n\n if (background) {\n const promptRef =\n typeof prompt === 'string'\n ? Ref.make(\n Routine.make({\n instructions: prompt,\n blueprints: [],\n context: [],\n }),\n )\n : prompt;\n yield* Database.flush();\n const computeRuntime = yield* Capability.get(AutomationCapabilities.ComputeRuntime);\n const runtime = yield* computeRuntime.getRuntime(db.spaceId).runtimeEffect;\n yield* Operation.invoke(AgentPrompt, {\n prompt: promptRef,\n input: {},\n chat: Ref.make(chat),\n }).pipe(\n Effect.provide(runtime),\n Effect.catchAll((error) => {\n log.catch(error);\n return Effect.void;\n }),\n );\n return { object: chat };\n }\n\n const chatPath = getObjectPathFromObject(chat);\n const pendingPromptText =\n typeof prompt === 'string'\n ? prompt\n : yield* Effect.gen(function* () {\n const promptObj = yield* Effect.promise(() => prompt.load());\n const source = yield* Effect.promise(() => promptObj.instructions.source.load());\n invariant(Obj.instanceOf(Text.Text, source), 'Prompt template source must be Text.');\n return Template.process(source.content ?? '');\n });\n yield* Capabilities.updateAtomValue(AssistantCapabilities.State, (current) => ({\n ...current,\n pendingPrompts: { ...current.pendingPrompts, [chatPath]: pendingPromptText },\n }));\n yield* Operation.invoke(LayoutOperation.Open, { subject: [chatPath] });\n return { object: chat };\n },\n (effect, { db }) => effect.pipe(Effect.provide(Database.layer(db))),\n ),\n ),\n);\n\nexport default handler;\n"],
5
- "mappings": "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",
6
- "names": ["Effect", "Capabilities", "Capability", "getObjectPathFromObject", "LayoutOperation", "AiContextBinder", "AgentPrompt", "Blueprint", "Routine", "Template", "Operation", "Database", "Filter", "Obj", "Ref", "createFeedServiceLayer", "invariant", "log", "AutomationCapabilities", "ClientCapabilities", "Text", "RunPromptInNewChat", "object", "Operation", "invoke", "db", "objects", "invariant", "feedTarget", "client", "Capability", "space", "spaces", "feedServiceLayer", "createFeedServiceLayer", "runtime", "Effect", "binder", "AiContextBinder", "feed", "registry", "length", "bindingProps", "blueprints", "matchedBlueprints", "allBlueprints", "map", "blueprint", "make", "background", "instructions", "context", "prompt", "Database", "computeRuntime", "AgentPrompt", "promptRef", "input", "chat", "Ref", "pipe", "log", "catch", "error", "promptObj", "promise", "load", "instanceOf", "Text", "source", "Template", "content", "Capabilities", "updateAtomValue", "AssistantCapabilities", "pendingPrompts", "pendingPromptText", "subject", "chatPath", "effect"]
7
- }
@@ -1,55 +0,0 @@
1
- import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
- import {
3
- AssistantCapabilities
4
- } from "./chunk-XAFVSEUJ.mjs";
5
- import {
6
- CreateChat,
7
- SetCurrentChat
8
- } from "./chunk-MBDVPB4V.mjs";
9
- import "./chunk-HSLMI22Q.mjs";
10
-
11
- // src/operations/set-current-chat.ts
12
- import * as Effect from "effect/Effect";
13
- import { Capabilities, Capability } from "@dxos/app-framework";
14
- import { Operation } from "@dxos/compute";
15
- import { Obj } from "@dxos/echo";
16
- var handler = SetCurrentChat.pipe(Operation.withHandler(Effect.fnUntraced(function* ({ companionTo, chat }) {
17
- const companionToId = Obj.getDXN(companionTo).toString();
18
- if (chat) {
19
- const chatId = Obj.getDXN(chat).toString();
20
- yield* Capabilities.updateAtomValue(AssistantCapabilities.State, (current) => ({
21
- ...current,
22
- currentChat: {
23
- ...current.currentChat,
24
- [companionToId]: chatId
25
- }
26
- }));
27
- } else {
28
- const operationInvoker = yield* Capability.get(Capabilities.OperationInvoker);
29
- const db = Obj.getDatabase(companionTo);
30
- if (db) {
31
- const { data } = yield* Effect.promise(() => operationInvoker.invokePromise(CreateChat, {
32
- db,
33
- addToSpace: false
34
- }));
35
- if (data?.object) {
36
- yield* Capabilities.updateAtomValue(AssistantCapabilities.CompanionChatCache, (current) => ({
37
- ...current,
38
- [companionToId]: data.object
39
- }));
40
- }
41
- }
42
- yield* Capabilities.updateAtomValue(AssistantCapabilities.State, (current) => ({
43
- ...current,
44
- currentChat: {
45
- ...current.currentChat,
46
- [companionToId]: void 0
47
- }
48
- }));
49
- }
50
- })));
51
- var set_current_chat_default = handler;
52
- export {
53
- set_current_chat_default as default
54
- };
55
- //# sourceMappingURL=set-current-chat-Z7GJ52VX.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/operations/set-current-chat.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { Operation } from '@dxos/compute';\nimport { Obj } from '@dxos/echo';\n\nimport { AssistantCapabilities } from '../types';\nimport { CreateChat, SetCurrentChat } from './definitions';\n\nconst handler: Operation.WithHandler<typeof SetCurrentChat> = SetCurrentChat.pipe(\n Operation.withHandler(\n Effect.fnUntraced(function* ({ companionTo, chat }) {\n const companionToId = Obj.getDXN(companionTo).toString();\n\n if (chat) {\n const chatId = Obj.getDXN(chat).toString();\n yield* Capabilities.updateAtomValue(AssistantCapabilities.State, (current) => ({\n ...current,\n currentChat: { ...current.currentChat, [companionToId]: chatId },\n }));\n } else {\n // New thread: create a transient chat and cache it so the graph connector\n // can resolve it immediately via the cache fallback tier.\n const operationInvoker = yield* Capability.get(Capabilities.OperationInvoker);\n const db = Obj.getDatabase(companionTo);\n if (db) {\n const { data } = yield* Effect.promise(() =>\n operationInvoker.invokePromise(CreateChat, { db, addToSpace: false }),\n );\n if (data?.object) {\n yield* Capabilities.updateAtomValue(AssistantCapabilities.CompanionChatCache, (current) => ({\n ...current,\n [companionToId]: data.object,\n }));\n }\n }\n yield* Capabilities.updateAtomValue(AssistantCapabilities.State, (current) => ({\n ...current,\n currentChat: { ...current.currentChat, [companionToId]: undefined },\n }));\n }\n }),\n ),\n);\n\nexport default handler;\n"],
5
- "mappings": ";;;;;;;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,cAAcC,kBAAkB;AACzC,SAASC,iBAAiB;AAC1B,SAASC,WAAW;AAKpB,IAAMC,UAAwDC,eAAeC,KAC3EC,UAAUC,YACDC,kBAAW,WAAW,EAAEC,aAAaC,KAAI,GAAE;AAChD,QAAMC,gBAAgBC,IAAIC,OAAOJ,WAAAA,EAAaK,SAAQ;AAEtD,MAAIJ,MAAM;AACR,UAAMK,SAASH,IAAIC,OAAOH,IAAAA,EAAMI,SAAQ;AACxC,WAAOE,aAAaC,gBAAgBC,sBAAsBC,OAAO,CAACC,aAAa;MAC7E,GAAGA;MACHC,aAAa;QAAE,GAAGD,QAAQC;QAAa,CAACV,aAAAA,GAAgBI;MAAO;IACjE,EAAA;EACF,OAAO;AAGL,UAAMO,mBAAmB,OAAOC,WAAWC,IAAIR,aAAaS,gBAAgB;AAC5E,UAAMC,KAAKd,IAAIe,YAAYlB,WAAAA;AAC3B,QAAIiB,IAAI;AACN,YAAM,EAAEE,KAAI,IAAK,OAAcC,eAAQ,MACrCP,iBAAiBQ,cAAcC,YAAY;QAAEL;QAAIM,YAAY;MAAM,CAAA,CAAA;AAErE,UAAIJ,MAAMK,QAAQ;AAChB,eAAOjB,aAAaC,gBAAgBC,sBAAsBgB,oBAAoB,CAACd,aAAa;UAC1F,GAAGA;UACH,CAACT,aAAAA,GAAgBiB,KAAKK;QACxB,EAAA;MACF;IACF;AACA,WAAOjB,aAAaC,gBAAgBC,sBAAsBC,OAAO,CAACC,aAAa;MAC7E,GAAGA;MACHC,aAAa;QAAE,GAAGD,QAAQC;QAAa,CAACV,aAAAA,GAAgBwB;MAAU;IACpE,EAAA;EACF;AACF,CAAA,CAAA,CAAA;AAIJ,IAAA,2BAAehC;",
6
- "names": ["Effect", "Capabilities", "Capability", "Operation", "Obj", "handler", "SetCurrentChat", "pipe", "Operation", "withHandler", "fnUntraced", "companionTo", "chat", "companionToId", "Obj", "getDXN", "toString", "chatId", "Capabilities", "updateAtomValue", "AssistantCapabilities", "State", "current", "currentChat", "operationInvoker", "Capability", "get", "OperationInvoker", "db", "getDatabase", "data", "promise", "invokePromise", "CreateChat", "addToSpace", "object", "CompanionChatCache", "undefined"]
7
- }
@@ -1,173 +0,0 @@
1
- import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
- import "./chunk-HSLMI22Q.mjs";
3
-
4
- // src/translations.ts
5
- import { Chat, Agent, McpServer } from "@dxos/assistant-toolkit";
6
- import { Blueprint, Routine } from "@dxos/compute";
7
- import { Sequence } from "@dxos/conductor";
8
- import { Type } from "@dxos/echo";
9
- import { translations as componentsTranslations } from "@dxos/react-ui-components/translations";
10
- import { translations as formTranslations } from "@dxos/react-ui-form/translations";
11
- import { meta } from "#meta";
12
- var translations = [
13
- ...componentsTranslations,
14
- ...formTranslations,
15
- {
16
- "en-US": {
17
- [Blueprint.Blueprint.typename]: {
18
- "typename.label": "Blueprint",
19
- "typename.label_zero": "Blueprints",
20
- "typename.label_one": "Blueprint",
21
- "typename.label_other": "Blueprints",
22
- "object-name.placeholder": "New blueprint",
23
- "add-object.label": "Add blueprint",
24
- "rename-object.label": "Rename blueprint",
25
- "delete-object.label": "Delete blueprint",
26
- "object-deleted.label": "Blueprint deleted"
27
- },
28
- [Type.getTypename(Routine.Routine)]: {
29
- "typename.label": "Routine",
30
- "typename.label_zero": "Routines",
31
- "typename.label_one": "Routine",
32
- "typename.label_other": "Routines",
33
- "object-name.placeholder": "New routine",
34
- "add-object.label": "Add routine",
35
- "rename-object.label": "Rename routine",
36
- "delete-object.label": "Delete routine",
37
- "object-deleted.label": "Routine deleted"
38
- },
39
- [Sequence.typename]: {
40
- "typename.label": "Sequence",
41
- "typename.label_zero": "Sequences",
42
- "typename.label_one": "Sequence",
43
- "typename.label_other": "Sequences",
44
- "object-name.placeholder": "New sequence",
45
- "add-object.label": "Add sequence",
46
- "rename-object.label": "Rename sequence",
47
- "delete-object.label": "Delete sequence",
48
- "object-deleted.label": "Sequence deleted"
49
- },
50
- [Chat.Chat.typename]: {
51
- "typename.label": "AI Chat",
52
- "object-name.placeholder": "New AI Chat",
53
- "add-object.label": "Add AI chat",
54
- "rename-object.label": "Rename AI Chat",
55
- "delete-object.label": "Delete AI Chat",
56
- "object-deleted.label": "AI Chat deleted"
57
- },
58
- [McpServer.McpServer.typename]: {
59
- "typename.label": "MCP Server",
60
- "typename.label_zero": "MCP Servers",
61
- "typename.label_one": "MCP Server",
62
- "typename.label_other": "MCP Servers"
63
- },
64
- [Agent.Agent.typename]: {
65
- "typename.label": "Agent",
66
- "typename.label_zero": "Agents",
67
- "typename.label_one": "Agent",
68
- "typename.label_other": "Agents",
69
- "object-name.placeholder": "New agent",
70
- "add-object.label": "Add agent",
71
- "rename-object.label": "Rename agent",
72
- "delete-object.label": "Delete agent",
73
- "object-deleted.label": "Agent deleted"
74
- },
75
- // TODO(burdon): Reconcile with react-ui-chat.
76
- [meta.id]: {
77
- "templates.label": "Templates",
78
- "open-ambient-chat.label": "Open Assistant",
79
- "assistant-chat.label": "Assistant",
80
- "plugin.name": "Assistant",
81
- "settings.title": "Assistant settings",
82
- "object.placeholder": "New prompt",
83
- "create-object.label": "Create prompt",
84
- "create-trigger.label": "Create trigger",
85
- "create-stack-section.label": "Create prompt",
86
- "command.placeholder": "Enter slash command...",
87
- "template.placeholder": "Enter template...",
88
- "value.placeholder": "Enter value...",
89
- "prompt-rules.label": "Prompt Rules",
90
- "typename.placeholder": "Enter typename of objects which this template is for",
91
- "description.placeholder": "Enter description of when this template should be used",
92
- "select-preset-template.placeholder": "Select preset",
93
- "service-registry.label": "Service Registry",
94
- "type-filter.placeholder": "Type",
95
- "any-type-filter.label": "Any",
96
- "no-blueprint.message": "No active blueprints",
97
- "tool-call.label": "Calling",
98
- "tool-result.label": "Success",
99
- "tool-error.label": "Tool call failed",
100
- "invocations.label": "Invocations",
101
- "trace.label": "Trace",
102
- "assistant-dialog.title": "Assistant",
103
- "open-assistant.label": "Open assistant",
104
- "reset-blueprints.label": "Reset blueprints",
105
- "no-results.message": "No results",
106
- "cancel.button": "Cancel",
107
- "save.button": "Save",
108
- "new-thread.button": "New Chat",
109
- "rename-thread.button": "Rename Chat",
110
- "chat-history.label": "Chat History",
111
- "chat-update-name.label": "Update AI Chat name",
112
- "toolkit.label": "Toolkit",
113
- "stats.label": "Stats",
114
- "summary.label": "Summary",
115
- "thinking.label": "Thinking",
116
- "search.placeholder": "Search...",
117
- "prompt.placeholder": "Enter question or command...",
118
- "context-objects.button": "Add to context",
119
- "context-settings.button": "Chat settings",
120
- "microphone.button": "Click to speak",
121
- "cancel-processing.button": "Stop processing",
122
- "options.blueprints.title": "Skills",
123
- "options.mcp.title": "MCP",
124
- "options.chat-model.title": "Models",
125
- "remove-object.label": "Remove object",
126
- "chat-view.title": "View",
127
- "chat-view.normal.label": "Normal",
128
- "chat-view.summary.label": "Summary",
129
- "chat-view.thinking.label": "Thinking",
130
- "chat-view.debug.label": "Debug",
131
- "mcp-server-add.label": "Add MCP server",
132
- "mcp-server-remove.label": "Remove MCP server",
133
- "mcp-server-name.label": "Server name",
134
- "mcp-server-name.placeholder": "Name",
135
- "mcp-server-url.label": "Server URL",
136
- "mcp-server-url.placeholder": "https://...",
137
- "mcp-server-protocol.label": "Protocol",
138
- "mcp-server-api-key.label": "API key",
139
- "mcp-server-api-key.placeholder": "API key (optional)",
140
- "mcp-server-error.label": "MCP server unavailable",
141
- "debug.button": "Debug",
142
- "online-switch.label": "Online",
143
- "run-prompt.label": "Run prompt",
144
- "typename.label": "Typename",
145
- "branch-thread.menu": "Branch chat",
146
- "chat-toolbar.title": "Chat toolbar",
147
- // Trigger status
148
- "trigger-status-disabled.label": "Triggers disabled",
149
- "trigger-status-idle.label": "Triggers idle",
150
- "trigger-status-edge.label": "Triggers will run on EDGE",
151
- "trigger-status-running.label": "Trigger running",
152
- "trigger-status-error.label": "Trigger error",
153
- "trigger-runtime.label": "Auto trigger execution",
154
- "trigger-last-invocation.label": "Last run",
155
- "trigger-duration.label": "Duration",
156
- // AgentArticle.
157
- "project-empty-spec.message": "Open the Properties companion to configure the agent.",
158
- "project-empty-spec.description": "Open the Assistant companion to interact with the agent.",
159
- "artifacts.label": "Artifacts",
160
- "input-queue.label": "Inputs",
161
- // AgentProperties.
162
- "instructions.label": "Instructions",
163
- "instructions.placeholder": "Enter instructions, goals, and constraints for the assistant.",
164
- "reset-history.button": "Reset",
165
- "subscriptions.label": "Subscriptions"
166
- }
167
- }
168
- }
169
- ];
170
- export {
171
- translations
172
- };
173
- //# sourceMappingURL=translations.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/translations.ts"],
4
- "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { Chat, Agent, McpServer } from '@dxos/assistant-toolkit';\nimport { Blueprint, Routine } from '@dxos/compute';\nimport { Sequence } from '@dxos/conductor';\nimport { Type } from '@dxos/echo';\nimport { type Resource } from '@dxos/react-ui';\nimport { translations as componentsTranslations } from '@dxos/react-ui-components/translations';\nimport { translations as formTranslations } from '@dxos/react-ui-form/translations';\n\nimport { meta } from '#meta';\n\n// TODO(burdon): Standardize translation names.\nexport const translations: Resource[] = [\n ...componentsTranslations,\n ...formTranslations,\n {\n 'en-US': {\n [Blueprint.Blueprint.typename]: {\n 'typename.label': 'Blueprint',\n 'typename.label_zero': 'Blueprints',\n 'typename.label_one': 'Blueprint',\n 'typename.label_other': 'Blueprints',\n 'object-name.placeholder': 'New blueprint',\n 'add-object.label': 'Add blueprint',\n 'rename-object.label': 'Rename blueprint',\n 'delete-object.label': 'Delete blueprint',\n 'object-deleted.label': 'Blueprint deleted',\n },\n [Type.getTypename(Routine.Routine)]: {\n 'typename.label': 'Routine',\n 'typename.label_zero': 'Routines',\n 'typename.label_one': 'Routine',\n 'typename.label_other': 'Routines',\n 'object-name.placeholder': 'New routine',\n 'add-object.label': 'Add routine',\n 'rename-object.label': 'Rename routine',\n 'delete-object.label': 'Delete routine',\n 'object-deleted.label': 'Routine deleted',\n },\n [Sequence.typename]: {\n 'typename.label': 'Sequence',\n 'typename.label_zero': 'Sequences',\n 'typename.label_one': 'Sequence',\n 'typename.label_other': 'Sequences',\n 'object-name.placeholder': 'New sequence',\n 'add-object.label': 'Add sequence',\n 'rename-object.label': 'Rename sequence',\n 'delete-object.label': 'Delete sequence',\n 'object-deleted.label': 'Sequence deleted',\n },\n [Chat.Chat.typename]: {\n 'typename.label': 'AI Chat',\n 'object-name.placeholder': 'New AI Chat',\n 'add-object.label': 'Add AI chat',\n 'rename-object.label': 'Rename AI Chat',\n 'delete-object.label': 'Delete AI Chat',\n 'object-deleted.label': 'AI Chat deleted',\n },\n [McpServer.McpServer.typename]: {\n 'typename.label': 'MCP Server',\n 'typename.label_zero': 'MCP Servers',\n 'typename.label_one': 'MCP Server',\n 'typename.label_other': 'MCP Servers',\n },\n [Agent.Agent.typename]: {\n 'typename.label': 'Agent',\n 'typename.label_zero': 'Agents',\n 'typename.label_one': 'Agent',\n 'typename.label_other': 'Agents',\n 'object-name.placeholder': 'New agent',\n 'add-object.label': 'Add agent',\n 'rename-object.label': 'Rename agent',\n 'delete-object.label': 'Delete agent',\n 'object-deleted.label': 'Agent deleted',\n },\n // TODO(burdon): Reconcile with react-ui-chat.\n [meta.id]: {\n 'templates.label': 'Templates',\n 'open-ambient-chat.label': 'Open Assistant',\n 'assistant-chat.label': 'Assistant',\n 'plugin.name': 'Assistant',\n 'settings.title': 'Assistant settings',\n 'object.placeholder': 'New prompt',\n 'create-object.label': 'Create prompt',\n 'create-trigger.label': 'Create trigger',\n 'create-stack-section.label': 'Create prompt',\n 'command.placeholder': 'Enter slash command...',\n 'template.placeholder': 'Enter template...',\n 'value.placeholder': 'Enter value...',\n 'prompt-rules.label': 'Prompt Rules',\n 'typename.placeholder': 'Enter typename of objects which this template is for',\n 'description.placeholder': 'Enter description of when this template should be used',\n 'select-preset-template.placeholder': 'Select preset',\n 'service-registry.label': 'Service Registry',\n 'type-filter.placeholder': 'Type',\n 'any-type-filter.label': 'Any',\n 'no-blueprint.message': 'No active blueprints',\n 'tool-call.label': 'Calling',\n 'tool-result.label': 'Success',\n 'tool-error.label': 'Tool call failed',\n\n 'invocations.label': 'Invocations',\n 'trace.label': 'Trace',\n\n 'assistant-dialog.title': 'Assistant',\n 'open-assistant.label': 'Open assistant',\n 'reset-blueprints.label': 'Reset blueprints',\n\n 'no-results.message': 'No results',\n\n 'cancel.button': 'Cancel',\n 'save.button': 'Save',\n 'new-thread.button': 'New Chat',\n 'rename-thread.button': 'Rename Chat',\n 'chat-history.label': 'Chat History',\n 'chat-update-name.label': 'Update AI Chat name',\n\n 'toolkit.label': 'Toolkit',\n 'stats.label': 'Stats',\n 'summary.label': 'Summary',\n 'thinking.label': 'Thinking',\n\n 'search.placeholder': 'Search...',\n 'prompt.placeholder': 'Enter question or command...',\n 'context-objects.button': 'Add to context',\n 'context-settings.button': 'Chat settings',\n 'microphone.button': 'Click to speak',\n 'cancel-processing.button': 'Stop processing',\n\n 'options.blueprints.title': 'Skills',\n 'options.mcp.title': 'MCP',\n 'options.chat-model.title': 'Models',\n 'remove-object.label': 'Remove object',\n\n 'chat-view.title': 'View',\n 'chat-view.normal.label': 'Normal',\n 'chat-view.summary.label': 'Summary',\n 'chat-view.thinking.label': 'Thinking',\n 'chat-view.debug.label': 'Debug',\n 'mcp-server-add.label': 'Add MCP server',\n 'mcp-server-remove.label': 'Remove MCP server',\n 'mcp-server-name.label': 'Server name',\n 'mcp-server-name.placeholder': 'Name',\n 'mcp-server-url.label': 'Server URL',\n 'mcp-server-url.placeholder': 'https://...',\n 'mcp-server-protocol.label': 'Protocol',\n 'mcp-server-api-key.label': 'API key',\n 'mcp-server-api-key.placeholder': 'API key (optional)',\n 'mcp-server-error.label': 'MCP server unavailable',\n\n 'debug.button': 'Debug',\n 'online-switch.label': 'Online',\n 'run-prompt.label': 'Run prompt',\n 'typename.label': 'Typename',\n 'branch-thread.menu': 'Branch chat',\n 'chat-toolbar.title': 'Chat toolbar',\n\n // Trigger status\n 'trigger-status-disabled.label': 'Triggers disabled',\n 'trigger-status-idle.label': 'Triggers idle',\n 'trigger-status-edge.label': 'Triggers will run on EDGE',\n 'trigger-status-running.label': 'Trigger running',\n 'trigger-status-error.label': 'Trigger error',\n 'trigger-runtime.label': 'Auto trigger execution',\n 'trigger-last-invocation.label': 'Last run',\n 'trigger-duration.label': 'Duration',\n\n // AgentArticle.\n 'project-empty-spec.message': 'Open the Properties companion to configure the agent.',\n 'project-empty-spec.description': 'Open the Assistant companion to interact with the agent.',\n 'artifacts.label': 'Artifacts',\n 'input-queue.label': 'Inputs',\n\n // AgentProperties.\n 'instructions.label': 'Instructions',\n 'instructions.placeholder': 'Enter instructions, goals, and constraints for the assistant.',\n 'reset-history.button': 'Reset',\n 'subscriptions.label': 'Subscriptions',\n },\n },\n },\n];\n"],
5
- "mappings": "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",
6
- "names": ["Chat", "Agent", "McpServer", "Blueprint", "Routine", "Sequence", "Type", "translations", "componentsTranslations", "formTranslations", "meta", "typename", "getTypename", "id"]
7
- }
@@ -1,19 +0,0 @@
1
- import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
- import {
3
- ApiAuthorization,
4
- AssistantCapabilities,
5
- AssistantEvents,
6
- Assistant_exports,
7
- ServiceType,
8
- categoryIcons
9
- } from "../chunk-XAFVSEUJ.mjs";
10
- import "../chunk-HSLMI22Q.mjs";
11
- export {
12
- ApiAuthorization,
13
- Assistant_exports as Assistant,
14
- AssistantCapabilities,
15
- AssistantEvents,
16
- ServiceType,
17
- categoryIcons
18
- };
19
- //# sourceMappingURL=index.mjs.map
@@ -1,57 +0,0 @@
1
- import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
- import {
3
- UpdateChatName
4
- } from "./chunk-MBDVPB4V.mjs";
5
- import "./chunk-HSLMI22Q.mjs";
6
-
7
- // src/operations/update-chat-name.ts
8
- import * as LanguageModel from "@effect/ai/LanguageModel";
9
- import * as Prompt from "@effect/ai/Prompt";
10
- import * as Effect from "effect/Effect";
11
- import { AiPreprocessor, AiService } from "@dxos/ai";
12
- import { Operation } from "@dxos/compute";
13
- import { Database, Feed, Filter, Obj } from "@dxos/echo";
14
- import { log } from "@dxos/log";
15
- import { Message } from "@dxos/types";
16
- import { trim } from "@dxos/util";
17
- var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-assistant/src/operations/update-chat-name.ts";
18
- var handler = UpdateChatName.pipe(Operation.withHandler(Effect.fnUntraced(function* ({ chat }) {
19
- log.info("updating chat name", {
20
- chat
21
- }, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 15, S: this });
22
- const feed = yield* Database.load(chat.feed);
23
- const history = yield* Feed.runQuery(feed, Filter.type(Message.Message));
24
- log.info("history", {
25
- history: history.length
26
- }, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 20, S: this });
27
- const system = trim`
28
- It is extremely important that you respond only with the title and nothing else.
29
- Do not use markdown or other formatting.
30
- If you cannot do this effectively respond with "New Chat".
31
-
32
- <example_reply>
33
- Fishing Trip
34
- </example_reply>
35
- `;
36
- const prompt = "Suggest a name for this chat";
37
- const historyPrompt = yield* AiPreprocessor.preprocessPrompt(history, {
38
- system,
39
- cacheControl: "ephemeral"
40
- });
41
- const response = yield* LanguageModel.generateText({
42
- prompt: Prompt.merge(historyPrompt, prompt)
43
- });
44
- const newName = response.text.replaceAll(/[^a-zA-Z0-9\s]/g, "").trim();
45
- Obj.update(chat, (chat2) => {
46
- chat2.name = newName;
47
- });
48
- log.info("chat name updated", {
49
- chat,
50
- newName: chat.name
51
- }, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 44, S: this });
52
- }, Effect.provide(AiService.model("@anthropic/claude-haiku-4-5")))));
53
- var update_chat_name_default = handler;
54
- export {
55
- update_chat_name_default as default
56
- };
57
- //# sourceMappingURL=update-chat-name-GV4HX32Z.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/operations/update-chat-name.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as LanguageModel from '@effect/ai/LanguageModel';\nimport * as Prompt from '@effect/ai/Prompt';\nimport * as Effect from 'effect/Effect';\n\nimport { AiPreprocessor, AiService } from '@dxos/ai';\nimport { Operation } from '@dxos/compute';\nimport { Database, Feed, Filter, Obj } from '@dxos/echo';\nimport { log } from '@dxos/log';\nimport { Message } from '@dxos/types';\nimport { trim } from '@dxos/util';\n\nimport { UpdateChatName } from './definitions';\n\nconst handler: Operation.WithHandler<typeof UpdateChatName> = UpdateChatName.pipe(\n Operation.withHandler(\n Effect.fnUntraced(\n function* ({ chat }) {\n log.info('updating chat name', { chat });\n\n const feed = yield* Database.load(chat.feed);\n const history = yield* Feed.runQuery(feed, Filter.type(Message.Message));\n\n log.info('history', { history: history.length });\n\n const system = trim`\n It is extremely important that you respond only with the title and nothing else.\n Do not use markdown or other formatting.\n If you cannot do this effectively respond with \"New Chat\".\n\n <example_reply>\n Fishing Trip\n </example_reply>\n `;\n const prompt = 'Suggest a name for this chat';\n\n const historyPrompt = yield* AiPreprocessor.preprocessPrompt(history, {\n system,\n cacheControl: 'ephemeral',\n });\n\n const response = yield* LanguageModel.generateText({\n prompt: Prompt.merge(historyPrompt, prompt),\n });\n\n const newName = response.text.replaceAll(/[^a-zA-Z0-9\\s]/g, '').trim();\n\n Obj.update(chat, (chat) => {\n chat.name = newName;\n });\n log.info('chat name updated', { chat, newName: chat.name });\n },\n Effect.provide(AiService.model('@anthropic/claude-haiku-4-5')),\n ),\n ),\n);\n\nexport default handler;\n"],
5
- "mappings": ";;;;;;;AAIA,YAAYA,mBAAmB;AAC/B,YAAYC,YAAY;AACxB,YAAYC,YAAY;AAExB,SAASC,gBAAgBC,iBAAiB;AAC1C,SAASC,iBAAiB;AAC1B,SAASC,UAAUC,MAAMC,QAAQC,WAAW;AAC5C,SAASC,WAAW;AACpB,SAASC,eAAe;AACxB,SAASC,YAAY;AAIrB,IAAA,eAA8DC;cAIrBC,eAAAA,KAAAA,UAAAA,YAAAA,kBAAAA,WAAAA,EAAAA,KAAAA,GAAAA;AAAK,MAAA,KAAA,sBAAA;IAEtC;EACA,GAAA,EAAA,YAAMC,YAAiBC,GAAAA,cAAcC,GAAAA,IAAMC,GAAAA,KAAOC,CAAAA;AAElDC,QAAIC,OAAK,OAAW,SAAA,KAAA,KAAA,IAAA;QAAEN,UAASA,OAAQO,KAAM,SAAA,MAAA,OAAA,KAAA,QAAA,OAAA,CAAA;AAAC,MAAA,KAAA,WAAA;IAE9C,SAAMC,QAAc;;;;;;;;;;;QAYlBA,SAAAA;QACAC,gBAAc,OAAA,eAAA,iBAAA,SAAA;IAChB;IAEA,cAAiB;;AAEjB,QAAA,WAAA,OAAA,2BAAA;IAEA,QAAgBC,aAASC,eAAe,MAAC;EAEzCC,CAAAA;QACEb,UAAYc,SAAAA,KAAAA,WAAAA,mBAAAA,EAAAA,EAAAA,KAAAA;AACd,MAAA,OAAA,MAAA,CAAAd,UAAA;AACIO,IAAAA,MAAK,OAAA;;MAA6BO,KAAAA,qBAAkB;IAAC;IAE3DC,SAAc,KAACC;EAKrB,GAAA,EAAA,YAAeC,YAAQ,GAAA,cAAA,GAAA,IAAA,GAAA,KAAA,CAAA;;;",
6
- "names": ["LanguageModel", "Prompt", "Effect", "AiPreprocessor", "AiService", "Operation", "Database", "Feed", "Filter", "Obj", "log", "Message", "trim", "UpdateChatName", "chat", "history", "Feed", "feed", "Filter", "type", "log", "info", "length", "system", "cacheControl", "response", "text", "Obj", "newName", "Effect", "AiService", "handler"]
7
- }
@@ -1,2 +0,0 @@
1
- export * from './plugin';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/cli/index.ts"],"names":[],"mappings":"AAIA,cAAc,UAAU,CAAC"}
@@ -1,10 +0,0 @@
1
- import { Plugin } from '@dxos/app-framework';
2
- /**
3
- * Headless variant of `AssistantPlugin` for Node-only contexts (CLI, tests).
4
- * Omits modules that depend on browser globals or the React/UI stack:
5
- * translations, ReactSurface, MarkdownExtension, AppGraphBuilder, Settings,
6
- * AssistantState, CompanionChatProvisioner, metadata (`createObject` hooks),
7
- * and the `on-space-created` hook.
8
- */
9
- export declare const AssistantPlugin: Plugin.PluginFactory<void>;
10
- //# sourceMappingURL=plugin.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../../src/cli/plugin.ts"],"names":[],"mappings":"AAIA,OAAO,EAAoB,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAuB/D;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,4BAgD3B,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ChatContainer.d.ts","sourceRoot":"","sources":["../../../../../src/containers/ChatContainer/ChatContainer.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAwC,MAAM,OAAO,CAAC;AAI7D,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,KAAK,KAAK,EAAY,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAQ,KAAK,GAAG,EAAE,MAAM,YAAY,CAAC;AAI5C,OAAO,EAAyB,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAExE,OAAO,EAAyC,KAAK,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAE9E,MAAM,MAAM,kBAAkB,GAAG,CAC7B,UAAU,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,GAAG,SAAS,CAAC,GACxD,UAAU,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,GAAG,SAAS,CAAC,CAC3D,GAAG;IACF,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,WAAW,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC;CAC3B,GAAG,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;AAEnC,eAAO,MAAM,aAAa,2FA8ExB,CAAC"}
@@ -1,2 +0,0 @@
1
- export { ChatContainer as default } from './ChatContainer';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/containers/ChatContainer/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,IAAI,OAAO,EAAE,MAAM,iBAAiB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"definitions.d.ts","sourceRoot":"","sources":["../../../../src/operations/definitions.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGjD,OAAO,EAAW,SAAS,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAc,QAAQ,EAAO,IAAI,EAAE,GAAG,EAAO,MAAM,YAAY,CAAC;AAMvE,eAAO,MAAM,aAAa;;;;;;4BAQxB,CAAC;AAEH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;sBAYrB,CAAC;AAEH,eAAO,MAAM,cAAc;;;;;;;;;;mEAOzB,CAAC;AAEH,eAAO,MAAM,cAAc;;;;;;;;;;;4BAQzB,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAmB7B,CAAC;AAQH,eAAO,MAAM,wBAAwB;;;;;;;;;;sBAkBnC,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;sBAY9B,CAAC;AAEH,eAAO,MAAM,aAAa;;;;EAIxB,CAAC"}
@@ -1,11 +0,0 @@
1
- import { type Sequence, type SequenceEvent, type SequenceLogger } from '@dxos/conductor';
2
- export declare class QueueLogger implements SequenceLogger {
3
- private readonly sequence;
4
- private _space;
5
- private _invocationTraceQueue;
6
- constructor(sequence: Sequence);
7
- log(event: SequenceEvent): void;
8
- private _getTraceQueueDxn;
9
- private _getTraceEventQueue;
10
- }
11
- //# sourceMappingURL=queue-logger.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"queue-logger.d.ts","sourceRoot":"","sources":["../../../src/queue-logger.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,aAAa,EAAE,KAAK,cAAc,EAAE,MAAM,iBAAiB,CAAC;AASzF,qBAAa,WAAY,YAAW,cAAc;IAIpC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAHrC,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,qBAAqB,CAA8B;IAE3D,YAA6B,QAAQ,EAAE,QAAQ,EAwB9C;IAED,GAAG,CAAC,KAAK,EAAE,aAAa,QAgFvB;IAED,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,mBAAmB;CAI5B"}
@@ -1,32 +0,0 @@
1
- import { type Atom } from '@effect-atom/atom-react';
2
- import * as Schema from 'effect/Schema';
3
- import { Capability } from '@dxos/app-framework';
4
- import { type Obj } from '@dxos/echo';
5
- export declare namespace AssistantCapabilities {
6
- const Settings: Capability.InterfaceDef<Atom.Writable<import("./Settings").Settings, import("./Settings").Settings>>;
7
- const StateSchema: Schema.mutable<Schema.Struct<{
8
- /** Map of primary object dxn to current chat dxn. */
9
- currentChat: Schema.Record$<typeof Schema.String, Schema.UndefinedOr<typeof Schema.String>>;
10
- /** Map of chat object path to prompt text to auto-submit when the chat opens. */
11
- pendingPrompts: Schema.Record$<typeof Schema.String, Schema.UndefinedOr<typeof Schema.String>>;
12
- }>>;
13
- type AssistantState = Schema.Schema.Type<typeof StateSchema>;
14
- const State: Capability.InterfaceDef<Atom.Writable<{
15
- currentChat: {
16
- readonly [x: string]: string | undefined;
17
- };
18
- pendingPrompts: {
19
- readonly [x: string]: string | undefined;
20
- };
21
- }, {
22
- currentChat: {
23
- readonly [x: string]: string | undefined;
24
- };
25
- pendingPrompts: {
26
- readonly [x: string]: string | undefined;
27
- };
28
- }>>;
29
- /** Session-scoped cache of transient (not yet persisted) companion chats keyed by companion DXN string. */
30
- const CompanionChatCache: Capability.InterfaceDef<Atom.Writable<Record<string, Obj.Unknown | undefined>, Record<string, Obj.Unknown | undefined>>>;
31
- }
32
- //# sourceMappingURL=capabilities.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../../../../src/types/capabilities.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,YAAY,CAAC;AAMtC,yBAAiB,qBAAqB,CAAC,CAAC;IAC/B,MAAM,QAAQ,sGAAuF,CAAC;IAEtG,MAAM,WAAW;QAEpB,qDAAqD;;QAErD,iFAAiF;;OAGpF,CAAC;IAEF,KAAY,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,WAAW,CAAC,CAAC;IAE7D,MAAM,KAAK;;;;;;;;;;;;;;OAAgF,CAAC;IAEnG,2GAA2G;IACpG,MAAM,kBAAkB,0HAE9B,CAAC;CACH"}
@@ -1,5 +0,0 @@
1
- import { ActivationEvent } from '@dxos/app-framework';
2
- export declare namespace AssistantEvents {
3
- const SetupAiServiceProviders: ActivationEvent.ActivationEvent;
4
- }
5
- //# sourceMappingURL=events.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../../src/types/events.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAItD,yBAAiB,eAAe,CAAC,CAAC;IACzB,MAAM,uBAAuB,iCAAsE,CAAC;CAC5G"}