@dxos/plugin-assistant 0.8.4-main.422d1c7879 → 0.8.4-main.51f1e5ca51

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 (400) hide show
  1. package/dist/lib/browser/AssistantSettings-GG52BLKS.mjs +40 -0
  2. package/dist/lib/browser/AssistantSettings-GG52BLKS.mjs.map +7 -0
  3. package/dist/lib/browser/blueprints/index.mjs +26 -3
  4. package/dist/lib/browser/blueprints/index.mjs.map +4 -4
  5. package/dist/lib/browser/{chunk-ATHYBVGN.mjs → chunk-RIJNPAYC.mjs} +5 -5
  6. package/dist/lib/browser/chunk-RIJNPAYC.mjs.map +7 -0
  7. package/dist/lib/browser/{chunk-LMVTXH54.mjs → chunk-SEMCG4ZK.mjs} +58 -17
  8. package/dist/lib/browser/chunk-SEMCG4ZK.mjs.map +7 -0
  9. package/dist/lib/browser/cli/index.mjs +3 -4
  10. package/dist/lib/browser/cli/index.mjs.map +3 -3
  11. package/dist/lib/browser/{create-chat-LBZHGVSN.mjs → create-chat-FZJASOQS.mjs} +5 -13
  12. package/dist/lib/browser/create-chat-FZJASOQS.mjs.map +7 -0
  13. package/dist/lib/browser/{ensure-companion-chat-ZEZA34MZ.mjs → ensure-companion-chat-PHUWWFVY.mjs} +4 -4
  14. package/dist/lib/browser/ensure-companion-chat-PHUWWFVY.mjs.map +7 -0
  15. package/dist/lib/browser/index.mjs +804 -880
  16. package/dist/lib/browser/index.mjs.map +4 -4
  17. package/dist/lib/browser/meta.json +1 -1
  18. package/dist/lib/browser/{on-create-space-54RNX5JI.mjs → on-create-space-OQNCM7NC.mjs} +3 -3
  19. package/dist/lib/browser/{on-create-space-54RNX5JI.mjs.map → on-create-space-OQNCM7NC.mjs.map} +1 -1
  20. package/dist/lib/browser/operations/index.mjs +3 -3
  21. package/dist/lib/browser/operations/index.mjs.map +3 -3
  22. package/dist/lib/browser/{resolve-navigation-targets-NZOD66NY.mjs → resolve-navigation-targets-PMNR7D3P.mjs} +3 -3
  23. package/dist/lib/browser/{resolve-navigation-targets-NZOD66NY.mjs.map → resolve-navigation-targets-PMNR7D3P.mjs.map} +1 -1
  24. package/dist/lib/browser/{run-prompt-in-new-chat-THLK5YQC.mjs → run-prompt-in-new-chat-4XDYFKCV.mjs} +10 -39
  25. package/dist/lib/browser/run-prompt-in-new-chat-4XDYFKCV.mjs.map +7 -0
  26. package/dist/lib/browser/{set-current-chat-LRS3VFSH.mjs → set-current-chat-7V4DA66I.mjs} +4 -4
  27. package/dist/lib/browser/set-current-chat-7V4DA66I.mjs.map +7 -0
  28. package/dist/lib/browser/translations.mjs +171 -0
  29. package/dist/lib/browser/translations.mjs.map +7 -0
  30. package/dist/lib/browser/types/index.mjs +1 -3
  31. package/dist/lib/browser/{update-chat-name-3Y36KFAS.mjs → update-chat-name-ZGMU2UGN.mjs} +7 -22
  32. package/dist/lib/browser/update-chat-name-ZGMU2UGN.mjs.map +7 -0
  33. package/dist/lib/node-esm/AssistantSettings-23A5IMHS.mjs +41 -0
  34. package/dist/lib/node-esm/AssistantSettings-23A5IMHS.mjs.map +7 -0
  35. package/dist/lib/node-esm/blueprints/index.mjs +26 -3
  36. package/dist/lib/node-esm/blueprints/index.mjs.map +4 -4
  37. package/dist/lib/node-esm/{chunk-PXAJSTGZ.mjs → chunk-NCIZY5ZV.mjs} +5 -5
  38. package/dist/lib/node-esm/chunk-NCIZY5ZV.mjs.map +7 -0
  39. package/dist/lib/node-esm/{chunk-W3JZ2F4T.mjs → chunk-XAFVSEUJ.mjs} +58 -17
  40. package/dist/lib/node-esm/chunk-XAFVSEUJ.mjs.map +7 -0
  41. package/dist/lib/node-esm/cli/index.mjs +3 -4
  42. package/dist/lib/node-esm/cli/index.mjs.map +3 -3
  43. package/dist/lib/node-esm/{create-chat-3BEG4R6J.mjs → create-chat-RY6A4WUV.mjs} +5 -13
  44. package/dist/lib/node-esm/create-chat-RY6A4WUV.mjs.map +7 -0
  45. package/dist/lib/node-esm/{ensure-companion-chat-6K2WEWFP.mjs → ensure-companion-chat-BTDU5TS2.mjs} +4 -4
  46. package/dist/lib/node-esm/ensure-companion-chat-BTDU5TS2.mjs.map +7 -0
  47. package/dist/lib/node-esm/index.mjs +804 -880
  48. package/dist/lib/node-esm/index.mjs.map +4 -4
  49. package/dist/lib/node-esm/meta.json +1 -1
  50. package/dist/lib/node-esm/{on-create-space-YRPZ6HZY.mjs → on-create-space-4LWCYT3H.mjs} +3 -3
  51. package/dist/lib/node-esm/{on-create-space-YRPZ6HZY.mjs.map → on-create-space-4LWCYT3H.mjs.map} +1 -1
  52. package/dist/lib/node-esm/operations/index.mjs +3 -3
  53. package/dist/lib/node-esm/operations/index.mjs.map +3 -3
  54. package/dist/lib/node-esm/{resolve-navigation-targets-3PPK7XLH.mjs → resolve-navigation-targets-GHS3XPVP.mjs} +3 -3
  55. package/dist/lib/node-esm/{resolve-navigation-targets-3PPK7XLH.mjs.map → resolve-navigation-targets-GHS3XPVP.mjs.map} +1 -1
  56. package/dist/lib/node-esm/{run-prompt-in-new-chat-OUYKCMQ7.mjs → run-prompt-in-new-chat-UF54E34O.mjs} +10 -39
  57. package/dist/lib/node-esm/run-prompt-in-new-chat-UF54E34O.mjs.map +7 -0
  58. package/dist/lib/node-esm/{set-current-chat-SMXZJD3F.mjs → set-current-chat-SWPAOLZL.mjs} +4 -4
  59. package/dist/lib/node-esm/set-current-chat-SWPAOLZL.mjs.map +7 -0
  60. package/dist/lib/node-esm/translations.mjs +172 -0
  61. package/dist/lib/node-esm/translations.mjs.map +7 -0
  62. package/dist/lib/node-esm/types/index.mjs +1 -3
  63. package/dist/lib/node-esm/{update-chat-name-HM2P4NSI.mjs → update-chat-name-CW6K5M37.mjs} +7 -22
  64. package/dist/lib/node-esm/update-chat-name-CW6K5M37.mjs.map +7 -0
  65. package/dist/types/src/AssistantPlugin.d.ts.map +1 -1
  66. package/dist/types/src/blueprints/assistant/blueprint.d.ts +2 -2
  67. package/dist/types/src/blueprints/assistant/blueprint.d.ts.map +1 -1
  68. package/dist/types/src/capabilities/ai-service.d.ts.map +1 -1
  69. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  70. package/dist/types/src/capabilities/blueprint-definition.d.ts.map +1 -1
  71. package/dist/types/src/capabilities/companion-chat-provisioner.d.ts.map +1 -1
  72. package/dist/types/src/capabilities/edge-model-resolver.d.ts.map +1 -1
  73. package/dist/types/src/capabilities/index.d.ts +2 -2
  74. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  75. package/dist/types/src/capabilities/local-model-resolver.d.ts.map +1 -1
  76. package/dist/types/src/capabilities/markdown.d.ts +1 -1
  77. package/dist/types/src/capabilities/markdown.d.ts.map +1 -1
  78. package/dist/types/src/capabilities/migrations.d.ts.map +1 -1
  79. package/dist/types/src/capabilities/operation-handler.d.ts +1 -1
  80. package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -1
  81. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  82. package/dist/types/src/capabilities/settings.d.ts.map +1 -1
  83. package/dist/types/src/capabilities/state.d.ts.map +1 -1
  84. package/dist/types/src/capabilities/toolkit.d.ts.map +1 -1
  85. package/dist/types/src/cli/plugin.d.ts.map +1 -1
  86. package/dist/types/src/components/AssistantSettings/AssistantSettings.d.ts +1 -1
  87. package/dist/types/src/components/AssistantSettings/AssistantSettings.d.ts.map +1 -1
  88. package/dist/types/src/components/AssistantSettings/AssistantSettings.stories.d.ts.map +1 -1
  89. package/dist/types/src/components/Chat/Chat.d.ts +29 -39
  90. package/dist/types/src/components/Chat/Chat.d.ts.map +1 -1
  91. package/dist/types/src/components/Chat/context.d.ts +29 -0
  92. package/dist/types/src/components/Chat/context.d.ts.map +1 -0
  93. package/dist/types/src/components/ChatPrompt/ChatActions.d.ts.map +1 -1
  94. package/dist/types/src/components/ChatPrompt/ChatOptions.d.ts +5 -3
  95. package/dist/types/src/components/ChatPrompt/ChatOptions.d.ts.map +1 -1
  96. package/dist/types/src/components/ChatPrompt/ChatOptions.stories.d.ts +1 -1
  97. package/dist/types/src/components/ChatPrompt/ChatOptions.stories.d.ts.map +1 -1
  98. package/dist/types/src/components/ChatPrompt/ChatPresets.d.ts.map +1 -1
  99. package/dist/types/src/components/ChatPrompt/ChatPrompt.d.ts +28 -0
  100. package/dist/types/src/components/ChatPrompt/ChatPrompt.d.ts.map +1 -0
  101. package/dist/types/src/components/ChatPrompt/ChatReferences.d.ts.map +1 -1
  102. package/dist/types/src/components/ChatPrompt/ChatStatus.d.ts +20 -0
  103. package/dist/types/src/components/ChatPrompt/ChatStatus.d.ts.map +1 -0
  104. package/dist/types/src/components/ChatPrompt/ChatStatusIndicator.d.ts.map +1 -1
  105. package/dist/types/src/components/ChatPrompt/index.d.ts +2 -0
  106. package/dist/types/src/components/ChatPrompt/index.d.ts.map +1 -1
  107. package/dist/types/src/components/ChatThread/Anchor.stories.d.ts.map +1 -1
  108. package/dist/types/src/components/ChatThread/ChatThread.d.ts +6 -3
  109. package/dist/types/src/components/ChatThread/ChatThread.d.ts.map +1 -1
  110. package/dist/types/src/components/ChatThread/ChatThread.stories.d.ts +4 -3
  111. package/dist/types/src/components/ChatThread/ChatThread.stories.d.ts.map +1 -1
  112. package/dist/types/src/components/ChatThread/Link.d.ts.map +1 -1
  113. package/dist/types/src/components/ChatThread/MarkdownStream.stories.d.ts +1 -1
  114. package/dist/types/src/components/ChatThread/MarkdownStream.stories.d.ts.map +1 -1
  115. package/dist/types/src/components/ChatThread/registry.d.ts +18 -0
  116. package/dist/types/src/components/ChatThread/registry.d.ts.map +1 -1
  117. package/dist/types/src/components/ChatThread/sync.d.ts +1 -1
  118. package/dist/types/src/components/ChatThread/sync.d.ts.map +1 -1
  119. package/dist/types/src/components/ChatThread/tool-widget-state.d.ts.map +1 -1
  120. package/dist/types/src/components/ChatThread/widgets/FallbackWidget.d.ts +4 -4
  121. package/dist/types/src/components/ChatThread/widgets/FallbackWidget.d.ts.map +1 -1
  122. package/dist/types/src/components/ChatThread/widgets/ReasoningWidget.d.ts.map +1 -1
  123. package/dist/types/src/components/ChatThread/widgets/ReasoningWidget.stories.d.ts.map +1 -1
  124. package/dist/types/src/components/ChatThread/widgets/ReferenceWidget.d.ts.map +1 -1
  125. package/dist/types/src/components/ChatThread/widgets/SelectWidget.d.ts.map +1 -1
  126. package/dist/types/src/components/ChatThread/widgets/StatsWidget.d.ts.map +1 -1
  127. package/dist/types/src/components/ChatThread/widgets/StatusWidget.d.ts.map +1 -1
  128. package/dist/types/src/components/ChatThread/widgets/SuggestionWidget.d.ts.map +1 -1
  129. package/dist/types/src/components/ChatThread/widgets/SummaryWidget.d.ts.map +1 -1
  130. package/dist/types/src/components/ChatThread/widgets/ToolWidget.d.ts.map +1 -1
  131. package/dist/types/src/components/ChatThread/widgets/ToolWidget.stories.d.ts.map +1 -1
  132. package/dist/types/src/components/ChatThread/widgets/defaults.d.ts +5 -0
  133. package/dist/types/src/components/ChatThread/widgets/defaults.d.ts.map +1 -0
  134. package/dist/types/src/components/ChatThread/widgets/index.d.ts +1 -2
  135. package/dist/types/src/components/ChatThread/widgets/index.d.ts.map +1 -1
  136. package/dist/types/src/components/ProcessTree/ProcessTree.d.ts +2 -1
  137. package/dist/types/src/components/ProcessTree/ProcessTree.d.ts.map +1 -1
  138. package/dist/types/src/components/ProcessTree/ProcessTree.stories.d.ts +0 -1
  139. package/dist/types/src/components/ProcessTree/ProcessTree.stories.d.ts.map +1 -1
  140. package/dist/types/src/components/TemplateEditor/TemplateEditor.d.ts +2 -2
  141. package/dist/types/src/components/TemplateEditor/TemplateEditor.d.ts.map +1 -1
  142. package/dist/types/src/components/TemplateEditor/TemplateEditor.stories.d.ts.map +1 -1
  143. package/dist/types/src/components/TemplateEditor/TemplateForm.d.ts +3 -3
  144. package/dist/types/src/components/TemplateEditor/TemplateForm.d.ts.map +1 -1
  145. package/dist/types/src/components/TemplateEditor/TemplateForm.stories.d.ts.map +1 -1
  146. package/dist/types/src/components/TemplateEditor/extensions/handlebars-extension.d.ts.map +1 -1
  147. package/dist/types/src/components/TemplateEditor/extensions/xml-extension.d.ts.map +1 -1
  148. package/dist/types/src/components/ToolBlock/ToolBlock.d.ts +4 -4
  149. package/dist/types/src/components/ToolBlock/ToolBlock.d.ts.map +1 -1
  150. package/dist/types/src/components/Toolbox/Toolbox.d.ts +3 -3
  151. package/dist/types/src/components/Toolbox/Toolbox.d.ts.map +1 -1
  152. package/dist/types/src/components/Toolbox/Toolbox.stories.d.ts.map +1 -1
  153. package/dist/types/src/containers/AgentArticle/AgentArticle.d.ts.map +1 -1
  154. package/dist/types/src/containers/AgentArticle/AgentArticle.stories.d.ts.map +1 -1
  155. package/dist/types/src/containers/AgentProperties/AgentProperties.d.ts.map +1 -1
  156. package/dist/types/src/containers/AgentProperties/AgentProperties.stories.d.ts.map +1 -1
  157. package/dist/types/src/containers/BlueprintArticle/BlueprintArticle.d.ts +1 -1
  158. package/dist/types/src/containers/BlueprintArticle/BlueprintArticle.d.ts.map +1 -1
  159. package/dist/types/src/containers/ChatCompanion/ChatCompanion.d.ts +1 -1
  160. package/dist/types/src/containers/ChatContainer/ChatContainer.d.ts.map +1 -1
  161. package/dist/types/src/containers/ChatDialog/ChatDialog.d.ts.map +1 -1
  162. package/dist/types/src/containers/RoutineArticle/RoutineArticle.d.ts +6 -0
  163. package/dist/types/src/containers/RoutineArticle/RoutineArticle.d.ts.map +1 -0
  164. package/dist/types/src/containers/RoutineArticle/index.d.ts +2 -0
  165. package/dist/types/src/containers/RoutineArticle/index.d.ts.map +1 -0
  166. package/dist/types/src/containers/RoutineList/RoutineList.d.ts +6 -0
  167. package/dist/types/src/containers/RoutineList/RoutineList.d.ts.map +1 -0
  168. package/dist/types/src/containers/{PromptList/PromptList.stories.d.ts → RoutineList/RoutineList.stories.d.ts} +1 -1
  169. package/dist/types/src/containers/RoutineList/RoutineList.stories.d.ts.map +1 -0
  170. package/dist/types/src/containers/RoutineList/index.d.ts +2 -0
  171. package/dist/types/src/containers/RoutineList/index.d.ts.map +1 -0
  172. package/dist/types/src/containers/TracePanel/TracePanel.d.ts +3 -2
  173. package/dist/types/src/containers/TracePanel/TracePanel.d.ts.map +1 -1
  174. package/dist/types/src/containers/TracePanel/TracePanel.stories.d.ts +1 -4
  175. package/dist/types/src/containers/TracePanel/TracePanel.stories.d.ts.map +1 -1
  176. package/dist/types/src/containers/TracePanel/dxn-extractor.d.ts +1 -1
  177. package/dist/types/src/containers/TracePanel/dxn-extractor.d.ts.map +1 -1
  178. package/dist/types/src/containers/TracePanel/execution-graph.d.ts +81 -1
  179. package/dist/types/src/containers/TracePanel/execution-graph.d.ts.map +1 -1
  180. package/dist/types/src/containers/TracePanel/execution-graph.test.d.ts +2 -0
  181. package/dist/types/src/containers/TracePanel/execution-graph.test.d.ts.map +1 -0
  182. package/dist/types/src/containers/TracePanel/index.d.ts.map +1 -1
  183. package/dist/types/src/containers/TracePanel/testing/index.d.ts +3 -0
  184. package/dist/types/src/containers/TracePanel/testing/index.d.ts.map +1 -0
  185. package/dist/types/src/containers/TracePanel/testing/simulated-agent.d.ts +14 -0
  186. package/dist/types/src/containers/TracePanel/testing/simulated-agent.d.ts.map +1 -0
  187. package/dist/types/src/containers/TracePanel/testing/snapshot-playback.d.ts +12 -0
  188. package/dist/types/src/containers/TracePanel/testing/snapshot-playback.d.ts.map +1 -0
  189. package/dist/types/src/containers/TriggerStatus/TriggerStatus.d.ts.map +1 -1
  190. package/dist/types/src/containers/index.d.ts +2 -2
  191. package/dist/types/src/containers/index.d.ts.map +1 -1
  192. package/dist/types/src/extensions/prompt-extension.d.ts.map +1 -1
  193. package/dist/types/src/hooks/index.d.ts +2 -0
  194. package/dist/types/src/hooks/index.d.ts.map +1 -1
  195. package/dist/types/src/hooks/useBlueprintRegistry.d.ts +1 -1
  196. package/dist/types/src/hooks/useBlueprintRegistry.d.ts.map +1 -1
  197. package/dist/types/src/hooks/useChatKeymap.d.ts +12 -0
  198. package/dist/types/src/hooks/useChatKeymap.d.ts.map +1 -0
  199. package/dist/types/src/hooks/useChatProcessor.d.ts +1 -1
  200. package/dist/types/src/hooks/useChatProcessor.d.ts.map +1 -1
  201. package/dist/types/src/hooks/useChatServices.d.ts.map +1 -1
  202. package/dist/types/src/hooks/useChatToolbarActions.d.ts.map +1 -1
  203. package/dist/types/src/hooks/useContextBinder.d.ts.map +1 -1
  204. package/dist/types/src/hooks/useContextObjects.d.ts.map +1 -1
  205. package/dist/types/src/hooks/useDebug.d.ts +10 -0
  206. package/dist/types/src/hooks/useDebug.d.ts.map +1 -0
  207. package/dist/types/src/hooks/useFilteredTypes.d.ts.map +1 -1
  208. package/dist/types/src/hooks/useFlush.d.ts +1 -1
  209. package/dist/types/src/hooks/useFlush.d.ts.map +1 -1
  210. package/dist/types/src/hooks/usePresets.d.ts.map +1 -1
  211. package/dist/types/src/hooks/useReferencesProvider.d.ts.map +1 -1
  212. package/dist/types/src/index.d.ts +0 -3
  213. package/dist/types/src/index.d.ts.map +1 -1
  214. package/dist/types/src/operations/create-chat.d.ts +1 -1
  215. package/dist/types/src/operations/create-chat.d.ts.map +1 -1
  216. package/dist/types/src/operations/definitions.d.ts +24 -19
  217. package/dist/types/src/operations/definitions.d.ts.map +1 -1
  218. package/dist/types/src/operations/ensure-companion-chat.d.ts +1 -1
  219. package/dist/types/src/operations/ensure-companion-chat.d.ts.map +1 -1
  220. package/dist/types/src/operations/index.d.ts +1 -1
  221. package/dist/types/src/operations/index.d.ts.map +1 -1
  222. package/dist/types/src/operations/on-create-space.d.ts +1 -1
  223. package/dist/types/src/operations/on-create-space.d.ts.map +1 -1
  224. package/dist/types/src/operations/resolve-navigation-targets.d.ts +1 -1
  225. package/dist/types/src/operations/resolve-navigation-targets.d.ts.map +1 -1
  226. package/dist/types/src/operations/run-prompt-in-new-chat.d.ts +1 -1
  227. package/dist/types/src/operations/run-prompt-in-new-chat.d.ts.map +1 -1
  228. package/dist/types/src/operations/set-current-chat.d.ts +1 -1
  229. package/dist/types/src/operations/set-current-chat.d.ts.map +1 -1
  230. package/dist/types/src/operations/update-chat-name.d.ts +1 -1
  231. package/dist/types/src/operations/update-chat-name.d.ts.map +1 -1
  232. package/dist/types/src/processor/processor.d.ts +2 -2
  233. package/dist/types/src/processor/processor.d.ts.map +1 -1
  234. package/dist/types/src/queue-logger.d.ts.map +1 -1
  235. package/dist/types/src/testing/index.d.ts +1 -0
  236. package/dist/types/src/testing/index.d.ts.map +1 -1
  237. package/dist/types/src/testing/test-generator.d.ts +1 -1
  238. package/dist/types/src/testing/test-generator.d.ts.map +1 -1
  239. package/dist/types/src/testing/test-services.d.ts.map +1 -1
  240. package/dist/types/src/testing/test-trace.d.ts +5 -0
  241. package/dist/types/src/testing/test-trace.d.ts.map +1 -0
  242. package/dist/types/src/translations.d.ts.map +1 -1
  243. package/dist/types/src/types/Assistant.d.ts +22 -6
  244. package/dist/types/src/types/Assistant.d.ts.map +1 -1
  245. package/dist/types/src/types/Settings.d.ts +20 -5
  246. package/dist/types/src/types/Settings.d.ts.map +1 -1
  247. package/dist/types/src/types/capabilities.d.ts.map +1 -1
  248. package/dist/types/src/types/events.d.ts.map +1 -1
  249. package/dist/types/src/types/index.d.ts +0 -1
  250. package/dist/types/src/types/index.d.ts.map +1 -1
  251. package/dist/types/src/types/service.d.ts +1 -1
  252. package/dist/types/src/types/service.d.ts.map +1 -1
  253. package/dist/types/tsconfig.tsbuildinfo +1 -1
  254. package/package.json +95 -91
  255. package/src/AssistantPlugin.tsx +10 -12
  256. package/src/blueprints/assistant/blueprint.test.ts +3 -3
  257. package/src/blueprints/assistant/blueprint.ts +3 -3
  258. package/src/capabilities/app-graph-builder.ts +3 -3
  259. package/src/capabilities/blueprint-definition.ts +0 -4
  260. package/src/capabilities/index.ts +1 -1
  261. package/src/capabilities/markdown.ts +1 -1
  262. package/src/capabilities/migrations.ts +1 -8
  263. package/src/capabilities/operation-handler.ts +1 -1
  264. package/src/capabilities/react-surface.tsx +16 -10
  265. package/src/cli/plugin.ts +3 -4
  266. package/src/components/AssistantSettings/AssistantSettings.stories.tsx +3 -2
  267. package/src/components/AssistantSettings/AssistantSettings.tsx +22 -111
  268. package/src/components/Chat/Chat.tsx +56 -260
  269. package/src/components/Chat/context.ts +39 -0
  270. package/src/components/ChatPrompt/ChatActions.tsx +10 -10
  271. package/src/components/ChatPrompt/ChatOptions.stories.tsx +24 -10
  272. package/src/components/ChatPrompt/ChatOptions.tsx +60 -31
  273. package/src/components/ChatPrompt/ChatPrompt.tsx +179 -0
  274. package/src/components/ChatPrompt/ChatReferences.tsx +1 -1
  275. package/src/components/ChatPrompt/ChatStatus.tsx +123 -0
  276. package/src/components/ChatPrompt/index.ts +2 -0
  277. package/src/components/ChatThread/ChatThread.stories.tsx +3 -3
  278. package/src/components/ChatThread/ChatThread.tsx +31 -18
  279. package/src/components/ChatThread/DEBUG.md +41 -0
  280. package/src/components/ChatThread/MarkdownStream.stories.tsx +5 -4
  281. package/src/components/ChatThread/registry.tsx +53 -14
  282. package/src/components/ChatThread/sync.test.ts +80 -12
  283. package/src/components/ChatThread/sync.ts +1 -1
  284. package/src/components/ChatThread/widgets/ReasoningWidget.ts +6 -6
  285. package/src/components/ChatThread/widgets/ReferenceWidget.ts +3 -1
  286. package/src/components/ChatThread/widgets/SelectWidget.ts +3 -1
  287. package/src/components/ChatThread/widgets/StatsWidget.ts +3 -1
  288. package/src/components/ChatThread/widgets/StatusWidget.ts +3 -1
  289. package/src/components/ChatThread/widgets/SuggestionWidget.ts +1 -1
  290. package/src/components/ChatThread/widgets/SummaryWidget.tsx +3 -2
  291. package/src/components/ChatThread/widgets/ToolWidget.stories.tsx +2 -1
  292. package/src/components/ChatThread/widgets/defaults.ts +8 -0
  293. package/src/components/ChatThread/widgets/index.ts +1 -2
  294. package/src/components/ProcessTree/ProcessTree.stories.tsx +12 -38
  295. package/src/components/ProcessTree/ProcessTree.tsx +67 -35
  296. package/src/components/TemplateEditor/TemplateEditor.stories.tsx +3 -2
  297. package/src/components/TemplateEditor/TemplateEditor.tsx +5 -5
  298. package/src/components/TemplateEditor/TemplateForm.stories.tsx +4 -3
  299. package/src/components/TemplateEditor/TemplateForm.tsx +3 -3
  300. package/src/components/Toolbox/Toolbox.stories.tsx +2 -1
  301. package/src/components/Toolbox/Toolbox.tsx +2 -2
  302. package/src/containers/AgentArticle/AgentArticle.stories.tsx +1 -1
  303. package/src/containers/AgentArticle/AgentArticle.tsx +2 -2
  304. package/src/containers/AgentProperties/AgentProperties.stories.tsx +2 -1
  305. package/src/containers/AgentProperties/AgentProperties.tsx +2 -2
  306. package/src/containers/BlueprintArticle/BlueprintArticle.tsx +1 -1
  307. package/src/containers/ChatCompanion/ChatCompanion.tsx +1 -1
  308. package/src/containers/ChatContainer/ChatContainer.tsx +16 -6
  309. package/src/containers/ChatDialog/ChatDialog.tsx +3 -9
  310. package/src/containers/{PromptArticle/PromptArticle.tsx → RoutineArticle/RoutineArticle.tsx} +4 -4
  311. package/src/containers/RoutineArticle/index.ts +5 -0
  312. package/src/containers/{PromptList/PromptList.stories.tsx → RoutineList/RoutineList.stories.tsx} +10 -9
  313. package/src/containers/{PromptList/PromptList.tsx → RoutineList/RoutineList.tsx} +6 -5
  314. package/src/containers/RoutineList/index.ts +5 -0
  315. package/src/containers/TracePanel/TracePanel.stories.tsx +204 -198
  316. package/src/containers/TracePanel/TracePanel.tsx +69 -44
  317. package/src/containers/TracePanel/dxn-extractor.test.ts +7 -7
  318. package/src/containers/TracePanel/dxn-extractor.ts +4 -4
  319. package/src/containers/TracePanel/execution-graph.test.ts +382 -0
  320. package/src/containers/TracePanel/execution-graph.ts +340 -213
  321. package/src/containers/TracePanel/testing/index.ts +6 -0
  322. package/src/containers/TracePanel/testing/simulated-agent.ts +114 -0
  323. package/src/containers/TracePanel/testing/snapshot-playback.ts +45 -0
  324. package/src/containers/index.ts +2 -2
  325. package/src/hooks/index.ts +2 -0
  326. package/src/hooks/useBlueprintRegistry.ts +1 -1
  327. package/src/hooks/useChatKeymap.ts +52 -0
  328. package/src/hooks/useChatProcessor.ts +1 -1
  329. package/src/hooks/useDebug.ts +38 -0
  330. package/src/index.ts +0 -3
  331. package/src/operations/create-chat.ts +2 -2
  332. package/src/operations/definitions.ts +4 -4
  333. package/src/operations/ensure-companion-chat.ts +1 -1
  334. package/src/operations/index.ts +1 -1
  335. package/src/operations/on-create-space.ts +1 -1
  336. package/src/operations/prompt.test.ts +5 -6
  337. package/src/operations/resolve-navigation-targets.ts +1 -1
  338. package/src/operations/run-prompt-in-new-chat.ts +3 -3
  339. package/src/operations/set-current-chat.ts +1 -1
  340. package/src/operations/update-chat-name.ts +2 -2
  341. package/src/processor/processor.test.ts +1 -1
  342. package/src/processor/processor.ts +4 -4
  343. package/src/queue-logger.ts +1 -1
  344. package/src/testing/data/trace-timeline.dx.json +3737 -1200
  345. package/src/testing/index.ts +1 -0
  346. package/src/testing/test-generator.test.ts +1 -1
  347. package/src/testing/test-generator.ts +4 -4
  348. package/src/testing/test-trace.ts +20 -0
  349. package/src/testing/trace-timeline.conversations.json +1 -1
  350. package/src/testing/trace-timeline.test.ts +53 -49
  351. package/src/translations.ts +24 -31
  352. package/src/types/Assistant.ts +11 -0
  353. package/src/types/Settings.ts +62 -7
  354. package/src/types/index.ts +0 -1
  355. package/src/types/service.ts +1 -1
  356. package/dist/lib/browser/AssistantSettings-7QMO3LGF.mjs +0 -97
  357. package/dist/lib/browser/AssistantSettings-7QMO3LGF.mjs.map +0 -7
  358. package/dist/lib/browser/chunk-ATHYBVGN.mjs.map +0 -7
  359. package/dist/lib/browser/chunk-EZRS3J25.mjs +0 -30
  360. package/dist/lib/browser/chunk-EZRS3J25.mjs.map +0 -7
  361. package/dist/lib/browser/chunk-LMVTXH54.mjs.map +0 -7
  362. package/dist/lib/browser/create-chat-LBZHGVSN.mjs.map +0 -7
  363. package/dist/lib/browser/ensure-companion-chat-ZEZA34MZ.mjs.map +0 -7
  364. package/dist/lib/browser/run-prompt-in-new-chat-THLK5YQC.mjs.map +0 -7
  365. package/dist/lib/browser/set-current-chat-LRS3VFSH.mjs.map +0 -7
  366. package/dist/lib/browser/update-chat-name-3Y36KFAS.mjs.map +0 -7
  367. package/dist/lib/node-esm/AssistantSettings-UVUTKO7E.mjs +0 -98
  368. package/dist/lib/node-esm/AssistantSettings-UVUTKO7E.mjs.map +0 -7
  369. package/dist/lib/node-esm/chunk-NZIKC7AN.mjs +0 -32
  370. package/dist/lib/node-esm/chunk-NZIKC7AN.mjs.map +0 -7
  371. package/dist/lib/node-esm/chunk-PXAJSTGZ.mjs.map +0 -7
  372. package/dist/lib/node-esm/chunk-W3JZ2F4T.mjs.map +0 -7
  373. package/dist/lib/node-esm/create-chat-3BEG4R6J.mjs.map +0 -7
  374. package/dist/lib/node-esm/ensure-companion-chat-6K2WEWFP.mjs.map +0 -7
  375. package/dist/lib/node-esm/run-prompt-in-new-chat-OUYKCMQ7.mjs.map +0 -7
  376. package/dist/lib/node-esm/set-current-chat-SMXZJD3F.mjs.map +0 -7
  377. package/dist/lib/node-esm/update-chat-name-HM2P4NSI.mjs.map +0 -7
  378. package/dist/types/src/components/ChatProgress/ChatProgress.d.ts +0 -10
  379. package/dist/types/src/components/ChatProgress/ChatProgress.d.ts.map +0 -1
  380. package/dist/types/src/components/ChatProgress/index.d.ts +0 -2
  381. package/dist/types/src/components/ChatProgress/index.d.ts.map +0 -1
  382. package/dist/types/src/components/ChatThread/widgets/PromptWidget.d.ts +0 -15
  383. package/dist/types/src/components/ChatThread/widgets/PromptWidget.d.ts.map +0 -1
  384. package/dist/types/src/containers/PromptArticle/PromptArticle.d.ts +0 -6
  385. package/dist/types/src/containers/PromptArticle/PromptArticle.d.ts.map +0 -1
  386. package/dist/types/src/containers/PromptArticle/index.d.ts +0 -2
  387. package/dist/types/src/containers/PromptArticle/index.d.ts.map +0 -1
  388. package/dist/types/src/containers/PromptList/PromptList.d.ts +0 -6
  389. package/dist/types/src/containers/PromptList/PromptList.d.ts.map +0 -1
  390. package/dist/types/src/containers/PromptList/PromptList.stories.d.ts.map +0 -1
  391. package/dist/types/src/containers/PromptList/index.d.ts +0 -2
  392. package/dist/types/src/containers/PromptList/index.d.ts.map +0 -1
  393. package/dist/types/src/types/defs.d.ts +0 -2
  394. package/dist/types/src/types/defs.d.ts.map +0 -1
  395. package/src/components/ChatProgress/ChatProgress.tsx +0 -56
  396. package/src/components/ChatProgress/index.ts +0 -5
  397. package/src/components/ChatThread/widgets/PromptWidget.ts +0 -30
  398. package/src/containers/PromptArticle/index.ts +0 -5
  399. package/src/containers/PromptList/index.ts +0 -5
  400. package/src/types/defs.ts +0 -5
@@ -1,8 +1,31 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
- import {
3
- blueprint_default
4
- } from "../chunk-NZIKC7AN.mjs";
5
2
  import "../chunk-HSLMI22Q.mjs";
3
+
4
+ // src/blueprints/assistant/blueprint.ts
5
+ import { LayoutOperation } from "@dxos/app-toolkit";
6
+ import { templates } from "@dxos/assistant";
7
+ import { Blueprint } from "@dxos/compute";
8
+ import { AssistantOperation } from "#operations";
9
+ var BLUEPRINT_KEY = "org.dxos.blueprint.assistant";
10
+ var make = () => Blueprint.make({
11
+ key: BLUEPRINT_KEY,
12
+ name: "Assistant",
13
+ tools: Blueprint.toolDefinitions({
14
+ // TODO(wittjosiah): LayoutOperation.Open requires Capability.Service which is only available
15
+ // via the compute-runtime layer (plugin-automation). Once Capability.Service is propagated
16
+ // through LocalFunctionExecutionService, this will work without the compute-runtime dependency.
17
+ operations: [
18
+ LayoutOperation.Open,
19
+ AssistantOperation.ResolveNavigationTargets
20
+ ]
21
+ }),
22
+ instructions: templates.system
23
+ });
24
+ var blueprint = {
25
+ key: BLUEPRINT_KEY,
26
+ make
27
+ };
28
+ var blueprint_default = blueprint;
6
29
  export {
7
30
  blueprint_default as AssistantBlueprint
8
31
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": [],
4
- "sourcesContent": [],
5
- "mappings": "",
6
- "names": []
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 '#operations';\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
7
  }
@@ -19,10 +19,10 @@ import * as Schema from "effect/Schema";
19
19
  import { AiService } from "@dxos/ai";
20
20
  import { Capability } from "@dxos/app-framework";
21
21
  import { Chat } from "@dxos/assistant-toolkit";
22
- import { Prompt } from "@dxos/blueprints";
23
22
  import { SpaceSchema } from "@dxos/client/echo";
23
+ import { Routine } from "@dxos/compute";
24
+ import { Operation } from "@dxos/compute";
24
25
  import { Collection, Database, DXN, Feed, Obj, Ref } from "@dxos/echo";
25
- import { Operation } from "@dxos/operation";
26
26
  import { meta } from "#meta";
27
27
  var ASSISTANT_OPERATION = `${meta.id}.operation`;
28
28
  var OnCreateSpace = Operation.make({
@@ -100,8 +100,8 @@ var RunPromptInNewChat = Operation.make({
100
100
  objects: Schema.optional(Schema.Array(Obj.Unknown)),
101
101
  /** Blueprint keys to look up and bind to the new chat. */
102
102
  blueprints: Schema.optional(Schema.Array(Schema.String)),
103
- /** Raw instructions or an existing Prompt object reference (e.g. from the prompts surface). */
104
- prompt: Schema.Union(Schema.String, Ref.Ref(Prompt.Prompt)),
103
+ /** Raw instructions or an existing Routine object reference. */
104
+ prompt: Schema.Union(Schema.String, Ref.Ref(Routine.Routine)),
105
105
  /**
106
106
  * When true, skips opening the chat: runs the Agent prompt operation against the new chat via the compute runtime (traced).
107
107
  */
@@ -174,4 +174,4 @@ export {
174
174
  EnsureCompanionChat,
175
175
  definitions_exports
176
176
  };
177
- //# sourceMappingURL=chunk-PXAJSTGZ.mjs.map
177
+ //# sourceMappingURL=chunk-NCIZY5ZV.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/operations/definitions.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Schema from 'effect/Schema';\n\nimport { AiService } from '@dxos/ai';\nimport { Capability } from '@dxos/app-framework';\nimport { Chat } from '@dxos/assistant-toolkit';\nimport { SpaceSchema } from '@dxos/client/echo';\nimport { Routine } from '@dxos/compute';\nimport { Operation } from '@dxos/compute';\nimport { Collection, Database, DXN, Feed, Obj, Ref } from '@dxos/echo';\n\nimport { meta } from '#meta';\n\nconst ASSISTANT_OPERATION = `${meta.id}.operation`;\n\nexport const OnCreateSpace = Operation.make({\n meta: { key: `${ASSISTANT_OPERATION}.on-create-space`, name: 'On Create Space' },\n services: [Capability.Service],\n input: Schema.Struct({\n space: SpaceSchema,\n rootCollection: Collection.Collection,\n }),\n output: Schema.Void,\n});\n\nexport const CreateChat = Operation.make({\n meta: { key: `${ASSISTANT_OPERATION}.create-chat`, name: 'Create Chat' },\n services: [Capability.Service],\n input: Schema.Struct({\n db: Database.Database,\n name: Schema.optional(Schema.String),\n /** If false, chat is created in-memory only and not added to space. Defaults to true. */\n addToSpace: Schema.optional(Schema.Boolean),\n }),\n output: Schema.Struct({\n object: Chat.Chat,\n }),\n});\n\nexport const UpdateChatName = Operation.make({\n meta: { key: `${ASSISTANT_OPERATION}.update-chat-name`, name: 'Update Chat Name' },\n services: [Database.Service, Feed.FeedService, AiService.AiService],\n input: Schema.Struct({\n chat: Chat.Chat,\n }),\n output: Schema.Void,\n});\n\nexport const SetCurrentChat = Operation.make({\n meta: { key: `${ASSISTANT_OPERATION}.set-current-chat`, name: 'Set Current Chat' },\n services: [Capability.Service],\n input: Schema.Struct({\n companionTo: Obj.Unknown,\n chat: Chat.Chat.pipe(Schema.optional),\n }),\n output: Schema.Void,\n});\n\nexport const RunPromptInNewChat = Operation.make({\n meta: { key: `${ASSISTANT_OPERATION}.run-prompt-in-new-chat`, name: 'Run Prompt In New Chat' },\n services: [Capability.Service],\n input: Schema.Struct({\n db: Database.Database,\n /** Context objects to bind to the new chat. */\n objects: Schema.optional(Schema.Array(Obj.Unknown)),\n /** Blueprint keys to look up and bind to the new chat. */\n blueprints: Schema.optional(Schema.Array(Schema.String)),\n /** Raw instructions or an existing Routine object reference. */\n prompt: Schema.Union(Schema.String, Ref.Ref(Routine.Routine)),\n /**\n * When true, skips opening the chat: runs the Agent prompt operation against the new chat via the compute runtime (traced).\n */\n background: Schema.optional(Schema.Boolean),\n }),\n output: Schema.Struct({\n object: Chat.Chat,\n }),\n});\n\nconst NavigationTargetSchema = Schema.Struct({\n path: Schema.String.annotations({ description: 'Navigation path to use with the Open operation.' }),\n label: Schema.String.annotations({ description: 'Human-readable label.' }),\n type: Schema.String.annotations({ description: 'Object type.' }),\n});\n\nexport const ResolveNavigationTargets = Operation.make({\n meta: {\n key: `${ASSISTANT_OPERATION}.resolve-navigation-targets`,\n name: 'Resolve navigation targets',\n description:\n '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.',\n },\n input: Schema.Struct({\n query: Schema.optional(\n Schema.Struct({\n dxn: DXN.Schema.pipe(Schema.optional),\n }),\n ),\n }),\n output: Schema.Struct({\n targets: Schema.Array(NavigationTargetSchema),\n }),\n services: [Capability.Service],\n});\n\nexport const EnsureCompanionChat = Operation.make({\n meta: { key: `${ASSISTANT_OPERATION}.ensure-companion-chat`, name: 'Ensure Companion Chat' },\n services: [Capability.Service],\n input: Schema.Struct({\n db: Database.Database,\n companionTo: Obj.Unknown,\n }),\n output: Schema.Struct({\n chat: Chat.Chat,\n /** Whether the returned chat was already persisted in the space. */\n persisted: Schema.Boolean,\n }),\n});\n\nexport const BlueprintForm = Schema.Struct({\n key: Schema.String,\n name: Schema.String,\n description: Schema.optional(Schema.String),\n});\n"],
5
+ "mappings": "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",
6
+ "names": ["Schema", "AiService", "Capability", "Chat", "SpaceSchema", "Routine", "Operation", "Collection", "Database", "DXN", "Feed", "Obj", "Ref", "meta", "ASSISTANT_OPERATION", "id", "OnCreateSpace", "make", "key", "name", "services", "Service", "input", "Struct", "space", "rootCollection", "output", "Void", "CreateChat", "db", "optional", "String", "addToSpace", "Boolean", "object", "UpdateChatName", "FeedService", "chat", "SetCurrentChat", "companionTo", "Unknown", "pipe", "RunPromptInNewChat", "objects", "Array", "blueprints", "prompt", "Union", "background", "NavigationTargetSchema", "path", "annotations", "description", "label", "type", "ResolveNavigationTargets", "query", "dxn", "targets", "EnsureCompanionChat", "persisted", "BlueprintForm"]
7
+ }
@@ -7,32 +7,74 @@ import {
7
7
  var Assistant_exports = {};
8
8
  __export(Assistant_exports, {
9
9
  Chat: () => Chat,
10
+ ChatView: () => ChatView2,
11
+ ChatViews: () => ChatViews2,
12
+ ModelDefaults: () => ModelDefaults2,
13
+ ModelProvider: () => ModelProvider2,
14
+ ModelProviders: () => ModelProviders2,
10
15
  Settings: () => Settings2
11
16
  });
12
17
  import { Chat as ChatModule } from "@dxos/assistant-toolkit";
13
18
 
14
19
  // src/types/Settings.ts
15
20
  import * as Schema from "effect/Schema";
16
-
17
- // src/types/defs.ts
18
- var LLM_PROVIDERS = [
19
- "edge",
20
- "ollama",
21
- "lmstudio"
22
- ];
23
-
24
- // src/types/Settings.ts
21
+ import { getLiteralValues } from "@dxos/effect";
22
+ var ModelProvider = Schema.Union(Schema.Literal("edge").annotations({
23
+ title: "DXOS"
24
+ }), Schema.Literal("ollama").annotations({
25
+ title: "Ollama"
26
+ }), Schema.Literal("lmstudio").annotations({
27
+ title: "LM Studio"
28
+ }));
29
+ var ModelProviders = getLiteralValues(ModelProvider);
30
+ var ChatView = Schema.Union(Schema.Literal("normal").annotations({
31
+ title: "Normal"
32
+ }), Schema.Literal("summary").annotations({
33
+ title: "Summary"
34
+ }), Schema.Literal("thinking").annotations({
35
+ title: "Thinking"
36
+ }), Schema.Literal("debug").annotations({
37
+ title: "Debug"
38
+ }));
39
+ var ChatViews = getLiteralValues(ChatView);
40
+ var ModelDefaults = Schema.mutable(Schema.Struct({
41
+ edge: Schema.optional(Schema.String.annotations({
42
+ title: "Remote language model",
43
+ description: "Choose the remote language model used for AI requests."
44
+ })),
45
+ ollama: Schema.optional(Schema.String.annotations({
46
+ title: "Ollama language model",
47
+ description: "Choose the locally hosted Ollama model for AI requests."
48
+ })),
49
+ lmstudio: Schema.optional(Schema.String.annotations({
50
+ title: "LM Studio language model",
51
+ description: "Choose the locally hosted LM Studio model for AI requests."
52
+ }))
53
+ }));
25
54
  var Settings = Schema.mutable(Schema.Struct({
26
- llmProvider: Schema.optional(Schema.Literal(...LLM_PROVIDERS)),
27
- edgeModel: Schema.optional(Schema.String),
28
- ollamaModel: Schema.optional(Schema.String),
29
- lmstudioModel: Schema.optional(Schema.String),
30
- customPrompts: Schema.optional(Schema.Boolean)
55
+ customPrompts: Schema.optional(Schema.Boolean.annotations({
56
+ title: "Use custom prompts",
57
+ description: "Allow the assistant to use custom prompts defined in your spaces."
58
+ })),
59
+ chatView: Schema.optional(ChatView.annotations({
60
+ title: "Chat view",
61
+ 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."
62
+ })),
63
+ modelProvider: Schema.optional(ModelProvider.annotations({
64
+ title: "LLM provider",
65
+ description: "Select which language model service to use for AI responses."
66
+ })),
67
+ modelDefaults: Schema.optional(ModelDefaults)
31
68
  }));
32
69
 
33
70
  // src/types/Assistant.ts
34
71
  var Chat = ChatModule.Chat;
35
72
  var Settings2 = Settings;
73
+ var ChatViews2 = ChatViews;
74
+ var ChatView2 = ChatView;
75
+ var ModelProviders2 = ModelProviders;
76
+ var ModelProvider2 = ModelProvider;
77
+ var ModelDefaults2 = ModelDefaults;
36
78
 
37
79
  // src/types/capabilities.ts
38
80
  import * as Schema2 from "effect/Schema";
@@ -67,9 +109,9 @@ var AssistantEvents;
67
109
 
68
110
  // src/types/service.ts
69
111
  import * as Schema3 from "effect/Schema";
112
+ import { Operation } from "@dxos/compute";
70
113
  import { ComputeGraph } from "@dxos/conductor";
71
114
  import { Ref, Type } from "@dxos/echo";
72
- import { Operation } from "@dxos/operation";
73
115
  var ApiAuthorizationKey = Schema3.Struct({
74
116
  type: Schema3.Literal("api-key"),
75
117
  key: Schema3.String,
@@ -144,7 +186,6 @@ var categoryIcons = {
144
186
  };
145
187
 
146
188
  export {
147
- LLM_PROVIDERS,
148
189
  Assistant_exports,
149
190
  AssistantCapabilities,
150
191
  AssistantEvents,
@@ -152,4 +193,4 @@ export {
152
193
  ServiceType,
153
194
  categoryIcons
154
195
  };
155
- //# sourceMappingURL=chunk-W3JZ2F4T.mjs.map
196
+ //# sourceMappingURL=chunk-XAFVSEUJ.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/types/Assistant.ts", "../../../src/types/Settings.ts", "../../../src/types/capabilities.ts", "../../../src/types/events.ts", "../../../src/types/service.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { Chat as ChatModule } from '@dxos/assistant-toolkit';\n\n// Re-export Chat schema for backward compatibility.\nexport const Chat = ChatModule.Chat;\nexport type Chat = ChatModule.Chat;\n\n// Re-export Settings as merged const/type (not as namespace).\nimport * as SettingsModule from './Settings';\nexport const Settings = SettingsModule.Settings;\nexport type Settings = SettingsModule.Settings;\n\nexport const ChatViews = SettingsModule.ChatViews;\nexport const ChatView = SettingsModule.ChatView;\nexport type ChatView = SettingsModule.ChatView;\n\nexport const ModelProviders = SettingsModule.ModelProviders;\nexport const ModelProvider = SettingsModule.ModelProvider;\nexport type ModelProvider = SettingsModule.ModelProvider;\n\nexport const ModelDefaults = SettingsModule.ModelDefaults;\nexport type ModelDefaults = SettingsModule.ModelDefaults;\n", "//\n// Copyright 2024 DXOS.org\n//\n\n// @import-as-namespace\n\nimport * as Schema from 'effect/Schema';\n\nimport { getLiteralValues } from '@dxos/effect';\n\nexport const ModelProvider = Schema.Union(\n Schema.Literal('edge').annotations({ title: 'DXOS' }),\n Schema.Literal('ollama').annotations({ title: 'Ollama' }),\n Schema.Literal('lmstudio').annotations({ title: 'LM Studio' }),\n);\nexport type ModelProvider = Schema.Schema.Type<typeof ModelProvider>;\nexport const ModelProviders = getLiteralValues(ModelProvider);\n\nexport const ChatView = Schema.Union(\n Schema.Literal('normal').annotations({ title: 'Normal' }),\n Schema.Literal('summary').annotations({ title: 'Summary' }),\n Schema.Literal('thinking').annotations({ title: 'Thinking' }),\n Schema.Literal('debug').annotations({ title: 'Debug' }),\n);\nexport type ChatView = Schema.Schema.Type<typeof ChatView>;\nexport const ChatViews = getLiteralValues(ChatView);\n\nexport const ModelDefaults = Schema.mutable(\n Schema.Struct({\n edge: Schema.optional(\n Schema.String.annotations({\n title: 'Remote language model',\n description: 'Choose the remote language model used for AI requests.',\n }),\n ),\n ollama: Schema.optional(\n Schema.String.annotations({\n title: 'Ollama language model',\n description: 'Choose the locally hosted Ollama model for AI requests.',\n }),\n ),\n lmstudio: Schema.optional(\n Schema.String.annotations({\n title: 'LM Studio language model',\n description: 'Choose the locally hosted LM Studio model for AI requests.',\n }),\n ),\n }),\n);\nexport type ModelDefaults = Schema.Schema.Type<typeof ModelDefaults>;\n\nexport const Settings = Schema.mutable(\n Schema.Struct({\n customPrompts: Schema.optional(\n Schema.Boolean.annotations({\n title: 'Use custom prompts',\n description: 'Allow the assistant to use custom prompts defined in your spaces.',\n }),\n ),\n chatView: Schema.optional(\n ChatView.annotations({\n title: 'Chat view',\n description:\n 'Controls which message blocks are shown in the chat: normal hides reasoning, thinking shows reasoning, debug shows raw blocks, summary shows only conversational text.',\n }),\n ),\n modelProvider: Schema.optional(\n ModelProvider.annotations({\n title: 'LLM provider',\n description: 'Select which language model service to use for AI responses.',\n }),\n ),\n modelDefaults: Schema.optional(ModelDefaults),\n }),\n);\nexport interface Settings extends Schema.Schema.Type<typeof Settings> {}\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { type Atom } from '@effect-atom/atom-react';\nimport * as Schema from 'effect/Schema';\n\nimport { Capability } from '@dxos/app-framework';\nimport { type Obj } from '@dxos/echo';\n\nimport { meta } from '#meta';\n\nimport { type Assistant } from './';\n\nexport namespace AssistantCapabilities {\n export const Settings = Capability.make<Atom.Writable<Assistant.Settings>>(`${meta.id}.capability.settings`);\n\n export const StateSchema = Schema.mutable(\n Schema.Struct({\n /** Map of primary object dxn to current chat dxn. */\n currentChat: Schema.Record({ key: Schema.String, value: Schema.UndefinedOr(Schema.String) }),\n /** Map of chat object path to prompt text to auto-submit when the chat opens. */\n pendingPrompts: Schema.Record({ key: Schema.String, value: Schema.UndefinedOr(Schema.String) }),\n }),\n );\n\n export type AssistantState = Schema.Schema.Type<typeof StateSchema>;\n\n export const State = Capability.make<Atom.Writable<AssistantState>>(`${meta.id}.capability.state`);\n\n /** Session-scoped cache of transient (not yet persisted) companion chats keyed by companion DXN string. */\n export const CompanionChatCache = Capability.make<Atom.Writable<Record<string, Obj.Unknown | undefined>>>(\n `${meta.id}.capability.companion-chat-cache`,\n );\n}\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { ActivationEvent } from '@dxos/app-framework';\n\nimport { meta } from '#meta';\n\nexport namespace AssistantEvents {\n export const SetupAiServiceProviders = ActivationEvent.make(`${meta.id}.event.setup-ai-service-providers`);\n}\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport * as Schema from 'effect/Schema';\n\nimport { Operation } from '@dxos/compute';\nimport { ComputeGraph } from '@dxos/conductor';\nimport { Ref, Type } from '@dxos/echo';\n\n// TODO(burdon): Factor out and reconcile with https://github.com/dxos/dxos/blob/main/packages/plugins/plugin-token-manager/src/defs/presets.ts#L7\n\nconst ApiAuthorizationKey = Schema.Struct({\n type: Schema.Literal('api-key'),\n key: Schema.String,\n placement: Schema.Union(\n Schema.Struct({\n type: Schema.Literal('authorization-header'),\n }),\n Schema.Struct({\n type: Schema.Literal('query'),\n name: Schema.String,\n }),\n ),\n});\n\nconst ApiAuthorizationOauth = Schema.Struct({\n type: Schema.Literal('oauth'),\n clientId: Schema.String,\n clientSecret: Schema.String,\n tokenUrl: Schema.String,\n grantType: Schema.String,\n});\n\nexport const ApiAuthorization = Schema.Union(ApiAuthorizationKey, ApiAuthorizationOauth);\nexport type ApiAuthorization = Schema.Schema.Type<typeof ApiAuthorization>;\n\nconst ServiceInterfaceFunction = Schema.Struct({\n kind: Schema.Literal('function'),\n fn: Ref.Ref(Operation.PersistentOperation),\n});\n\nconst ServiceInterfaceWorkflow = Schema.Struct({\n kind: Schema.Literal('workflow'),\n workflow: Ref.Ref(ComputeGraph),\n});\n\nconst ServiceInterfaceApi = Schema.Struct({\n kind: Schema.Literal('api'),\n\n /**\n * URL to fetch the openapi schema.\n */\n schemaUrl: Schema.optional(Schema.String),\n\n /**\n * Inlined openapi schema.\n */\n schema: Schema.optional(Schema.Any),\n\n /**\n * Authorization configuration if required.\n */\n authorization: Schema.optional(ApiAuthorization),\n});\n\nconst ServiceInterface = Schema.Union(\n // Service types.\n ServiceInterfaceFunction,\n ServiceInterfaceWorkflow,\n ServiceInterfaceApi,\n) as any;\n\nexport type ServiceInterface = Schema.Schema.Type<typeof ServiceInterface>;\n\nexport const ServiceType = Schema.Struct({\n serviceId: Schema.String,\n name: Schema.optional(Schema.String),\n description: Schema.optional(Schema.String),\n category: Schema.optional(Schema.String),\n enabled: Schema.optional(Schema.Boolean),\n\n /**\n * Entries exposed: functions, workflows, and APIs.\n */\n interfaces: Schema.optional(Schema.Array(ServiceInterface)),\n}).pipe(\n Type.object({\n typename: 'org.dxos.type.service',\n version: '0.1.0',\n }),\n);\n\nexport interface ServiceType extends Schema.Schema.Type<typeof ServiceType> {}\n\n//\n// Service Registry\n//\n\nexport interface BaseServiceRegistry {\n queryServices(query?: ServiceQuery): Promise<ServiceType[]>;\n}\n\nexport type ServiceQuery = {\n name?: string;\n category?: string;\n};\n\nexport const categoryIcons: Record<string, string> = {\n finance: 'ph--bank--regular',\n health: 'ph--heart--regular',\n geolocation: 'ph--globe-simple--regular',\n education: 'ph--books--regular',\n entertainment: 'ph--music-notes--regular',\n shopping: 'ph--shopping-cart--regular',\n travel: 'ph--airplane-takeoff--regular',\n utilities: 'ph--lightning--regular',\n weather: 'ph--cloud-rain--regular',\n} as const;\n"],
5
+ "mappings": "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",
6
+ "names": ["ChatView", "ChatViews", "ModelDefaults", "ModelProvider", "ModelProviders", "Settings", "Chat", "ChatModule", "Schema", "getLiteralValues", "ModelProvider", "Union", "Literal", "annotations", "title", "ModelProviders", "ChatView", "ChatViews", "ModelDefaults", "mutable", "Struct", "edge", "optional", "String", "description", "ollama", "lmstudio", "Settings", "customPrompts", "Boolean", "chatView", "modelProvider", "modelDefaults", "Chat", "ChatModule", "Settings", "ChatViews", "ChatView", "ModelProviders", "ModelProvider", "ModelDefaults", "Schema", "Capability", "meta", "AssistantCapabilities", "Settings", "make", "id", "StateSchema", "mutable", "Struct", "currentChat", "Record", "key", "String", "value", "UndefinedOr", "pendingPrompts", "State", "CompanionChatCache", "ActivationEvent", "meta", "AssistantEvents", "SetupAiServiceProviders", "make", "id", "Schema", "Operation", "ComputeGraph", "Ref", "Type", "ApiAuthorizationKey", "Struct", "type", "Literal", "key", "String", "placement", "Union", "name", "ApiAuthorizationOauth", "clientId", "clientSecret", "tokenUrl", "grantType", "ApiAuthorization", "ServiceInterfaceFunction", "kind", "fn", "PersistentOperation", "ServiceInterfaceWorkflow", "workflow", "ServiceInterfaceApi", "schemaUrl", "optional", "schema", "Any", "authorization", "ServiceInterface", "ServiceType", "serviceId", "description", "category", "enabled", "Boolean", "interfaces", "Array", "pipe", "object", "typename", "version", "categoryIcons", "finance", "health", "geolocation", "education", "entertainment", "shopping", "travel", "utilities", "weather"]
7
+ }
@@ -5,8 +5,8 @@ import "../chunk-HSLMI22Q.mjs";
5
5
  import { ActivationEvents, Plugin } from "@dxos/app-framework";
6
6
  import { AppPlugin } from "@dxos/app-toolkit";
7
7
  import { ContextBinding } from "@dxos/assistant";
8
- import { Agent, Chat, McpServer, Memory, Plan, ResearchGraph } from "@dxos/assistant-toolkit";
9
- import { Blueprint, Prompt } from "@dxos/blueprints";
8
+ import { Agent, Chat, McpServer, Memory, Plan } from "@dxos/assistant-toolkit";
9
+ import { Blueprint, Routine } from "@dxos/compute";
10
10
  import { Sequence } from "@dxos/conductor";
11
11
  import { Feed } from "@dxos/echo";
12
12
  import { ClientEvents } from "@dxos/plugin-client/types";
@@ -34,8 +34,7 @@ var AssistantPlugin = Plugin.define(meta).pipe(
34
34
  Feed.Feed,
35
35
  HasSubject.HasSubject,
36
36
  Message.Message,
37
- Prompt.Prompt,
38
- ResearchGraph.ResearchGraph,
37
+ Routine.Routine,
39
38
  Agent.Agent,
40
39
  McpServer.McpServer,
41
40
  Plan.Plan,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/cli/plugin.ts"],
4
- "sourcesContent": ["//\n// Copyright 2026 DXOS.org\n//\n\nimport { ActivationEvents, Plugin } from '@dxos/app-framework';\nimport { AppPlugin } from '@dxos/app-toolkit';\nimport { ContextBinding } from '@dxos/assistant';\nimport { Agent, Chat, McpServer, Memory, Plan, ResearchGraph } from '@dxos/assistant-toolkit';\nimport { Blueprint, Prompt } from '@dxos/blueprints';\nimport { Sequence } from '@dxos/conductor';\nimport { Feed } from '@dxos/echo';\nimport { ClientEvents } from '@dxos/plugin-client/types';\nimport { Text } from '@dxos/schema';\nimport { HasSubject, Message } from '@dxos/types';\n\nimport {\n AiService,\n BlueprintDefinition,\n EdgeModelResolver,\n LocalModelResolver,\n Migrations,\n OperationHandler,\n Toolkit,\n} from '#capabilities';\nimport { meta } from '#meta';\nimport { AssistantEvents } from '#types';\n\n/**\n * Headless variant of `AssistantPlugin` for Node-only contexts (CLI, tests).\n * Omits modules that depend on browser globals or the React/UI stack:\n * translations, ReactSurface, MarkdownExtension, AppGraphBuilder, Settings,\n * AssistantState, CompanionChatProvisioner, metadata (`createObject` hooks),\n * and the `on-space-created` hook.\n */\nexport const AssistantPlugin = Plugin.define(meta).pipe(\n // Headless plugin has no ReactSurface; full Assistant fires SetupArtifactDefinition from the surface module.\n // Activate blueprint definitions on Startup so AgentHandlers (and other blueprint ops) register in CLI/tests.\n AppPlugin.addBlueprintDefinitionModule({\n activate: BlueprintDefinition,\n activatesOn: ActivationEvents.Startup,\n }),\n AppPlugin.addOperationHandlerModule({ activate: OperationHandler }),\n AppPlugin.addSchemaModule({\n schema: [\n Chat.Chat,\n Chat.CompanionTo,\n Blueprint.Blueprint,\n ContextBinding,\n Feed.Feed,\n HasSubject.HasSubject,\n Message.Message,\n Prompt.Prompt,\n ResearchGraph.ResearchGraph,\n Agent.Agent,\n McpServer.McpServer,\n Plan.Plan,\n Sequence,\n Memory.Memory,\n Text.Text,\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 activatesOn: ActivationEvents.Startup,\n activate: AiService,\n }),\n Plugin.addModule({\n activatesOn: ActivationEvents.Startup,\n activate: Toolkit,\n }),\n Plugin.addModule({\n activatesOn: ClientEvents.SetupMigration,\n activate: Migrations,\n }),\n Plugin.make,\n);\n"],
5
- "mappings": ";;;;AAIA,SAASA,kBAAkBC,cAAc;AACzC,SAASC,iBAAiB;AAC1B,SAASC,sBAAsB;AAC/B,SAASC,OAAOC,MAAMC,WAAWC,QAAQC,MAAMC,qBAAqB;AACpE,SAASC,WAAWC,cAAc;AAClC,SAASC,gBAAgB;AACzB,SAASC,YAAY;AACrB,SAASC,oBAAoB;AAC7B,SAASC,YAAY;AACrB,SAASC,YAAYC,eAAe;AAEpC,SACEC,WACAC,qBACAC,mBACAC,oBACAC,YACAC,kBACAC,eACK;AACP,SAASC,YAAY;AACrB,SAASC,uBAAuB;AASzB,IAAMC,kBAAkBC,OAAOC,OAAOC,IAAAA,EAAMC;;;EAGjDC,UAAUC,6BAA6B;IACrCC,UAAUC;IACVC,aAAaC,iBAAiBC;EAChC,CAAA;EACAN,UAAUO,0BAA0B;IAAEL,UAAUM;EAAiB,CAAA;EACjER,UAAUS,gBAAgB;IACxBC,QAAQ;MACNC,KAAKA;MACLA,KAAKC;MACLC,UAAUA;MACVC;MACAC,KAAKA;MACLC,WAAWA;MACXC,QAAQA;MACRC,OAAOA;MACPC,cAAcA;MACdC,MAAMA;MACNC,UAAUA;MACVC,KAAKA;MACLC;MACAC,OAAOA;MACPC,KAAKA;;EAET,CAAA;EACA7B,OAAO8B,UAAU;IACftB,aAAauB,gBAAgBC;IAC7B1B,UAAU2B;EACZ,CAAA;EACAjC,OAAO8B,UAAU;IACftB,aAAauB,gBAAgBC;IAC7B1B,UAAU4B;EACZ,CAAA;EACAlC,OAAO8B,UAAU;IACfK,uBAAuB;MAACJ,gBAAgBC;;IACxCxB,aAAaC,iBAAiBC;IAC9BJ,UAAU8B;EACZ,CAAA;EACApC,OAAO8B,UAAU;IACftB,aAAaC,iBAAiBC;IAC9BJ,UAAU+B;EACZ,CAAA;EACArC,OAAO8B,UAAU;IACftB,aAAa8B,aAAaC;IAC1BjC,UAAUkC;EACZ,CAAA;EACAxC,OAAOyC;AAAI;",
6
- "names": ["ActivationEvents", "Plugin", "AppPlugin", "ContextBinding", "Agent", "Chat", "McpServer", "Memory", "Plan", "ResearchGraph", "Blueprint", "Prompt", "Sequence", "Feed", "ClientEvents", "Text", "HasSubject", "Message", "AiService", "BlueprintDefinition", "EdgeModelResolver", "LocalModelResolver", "Migrations", "OperationHandler", "Toolkit", "meta", "AssistantEvents", "AssistantPlugin", "Plugin", "define", "meta", "pipe", "AppPlugin", "addBlueprintDefinitionModule", "activate", "BlueprintDefinition", "activatesOn", "ActivationEvents", "Startup", "addOperationHandlerModule", "OperationHandler", "addSchemaModule", "schema", "Chat", "CompanionTo", "Blueprint", "ContextBinding", "Feed", "HasSubject", "Message", "Prompt", "ResearchGraph", "Agent", "McpServer", "Plan", "Sequence", "Memory", "Text", "addModule", "AssistantEvents", "SetupAiServiceProviders", "EdgeModelResolver", "LocalModelResolver", "firesBeforeActivation", "AiService", "Toolkit", "ClientEvents", "SetupMigration", "Migrations", "make"]
4
+ "sourcesContent": ["//\n// Copyright 2026 DXOS.org\n//\n\nimport { ActivationEvents, Plugin } from '@dxos/app-framework';\nimport { AppPlugin } from '@dxos/app-toolkit';\nimport { ContextBinding } from '@dxos/assistant';\nimport { Agent, Chat, McpServer, Memory, Plan } from '@dxos/assistant-toolkit';\nimport { Blueprint, Routine } from '@dxos/compute';\nimport { Sequence } from '@dxos/conductor';\nimport { Feed } from '@dxos/echo';\nimport { ClientEvents } from '@dxos/plugin-client/types';\nimport { Text } from '@dxos/schema';\nimport { HasSubject, Message } from '@dxos/types';\n\nimport {\n AiService,\n BlueprintDefinition,\n EdgeModelResolver,\n LocalModelResolver,\n Migrations,\n OperationHandler,\n Toolkit,\n} from '#capabilities';\nimport { meta } from '#meta';\nimport { AssistantEvents } from '#types';\n\n/**\n * Headless variant of `AssistantPlugin` for Node-only contexts (CLI, tests).\n * Omits modules that depend on browser globals or the React/UI stack:\n * translations, ReactSurface, MarkdownExtension, AppGraphBuilder, Settings,\n * AssistantState, CompanionChatProvisioner, metadata (`createObject` hooks),\n * and the `on-space-created` hook.\n */\nexport const AssistantPlugin = Plugin.define(meta).pipe(\n // Headless plugin has no ReactSurface; full Assistant fires SetupArtifactDefinition from the surface module.\n // Activate blueprint definitions on Startup so AgentHandlers (and other blueprint ops) register in CLI/tests.\n AppPlugin.addBlueprintDefinitionModule({\n activate: BlueprintDefinition,\n activatesOn: ActivationEvents.Startup,\n }),\n AppPlugin.addOperationHandlerModule({ activate: OperationHandler }),\n AppPlugin.addSchemaModule({\n schema: [\n Chat.Chat,\n Chat.CompanionTo,\n Blueprint.Blueprint,\n ContextBinding,\n Feed.Feed,\n HasSubject.HasSubject,\n Message.Message,\n Routine.Routine,\n Agent.Agent,\n McpServer.McpServer,\n Plan.Plan,\n Sequence,\n Memory.Memory,\n Text.Text,\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 activatesOn: ActivationEvents.Startup,\n activate: AiService,\n }),\n Plugin.addModule({\n activatesOn: ActivationEvents.Startup,\n activate: Toolkit,\n }),\n Plugin.addModule({\n activatesOn: ClientEvents.SetupMigration,\n activate: Migrations,\n }),\n Plugin.make,\n);\n"],
5
+ "mappings": ";;;;AAIA,SAASA,kBAAkBC,cAAc;AACzC,SAASC,iBAAiB;AAC1B,SAASC,sBAAsB;AAC/B,SAASC,OAAOC,MAAMC,WAAWC,QAAQC,YAAY;AACrD,SAASC,WAAWC,eAAe;AACnC,SAASC,gBAAgB;AACzB,SAASC,YAAY;AACrB,SAASC,oBAAoB;AAC7B,SAASC,YAAY;AACrB,SAASC,YAAYC,eAAe;AAEpC,SACEC,WACAC,qBACAC,mBACAC,oBACAC,YACAC,kBACAC,eACK;AACP,SAASC,YAAY;AACrB,SAASC,uBAAuB;AASzB,IAAMC,kBAAkBzB,OAAO0B,OAAOH,IAAAA,EAAMI;;;EAGjD1B,UAAU2B,6BAA6B;IACrCC,UAAUZ;IACVa,aAAa/B,iBAAiBgC;EAChC,CAAA;EACA9B,UAAU+B,0BAA0B;IAAEH,UAAUR;EAAiB,CAAA;EACjEpB,UAAUgC,gBAAgB;IACxBC,QAAQ;MACN9B,KAAKA;MACLA,KAAK+B;MACL3B,UAAUA;MACVN;MACAS,KAAKA;MACLG,WAAWA;MACXC,QAAQA;MACRN,QAAQA;MACRN,MAAMA;MACNE,UAAUA;MACVE,KAAKA;MACLG;MACAJ,OAAOA;MACPO,KAAKA;;EAET,CAAA;EACAb,OAAOoC,UAAU;IACfN,aAAaN,gBAAgBa;IAC7BR,UAAUX;EACZ,CAAA;EACAlB,OAAOoC,UAAU;IACfN,aAAaN,gBAAgBa;IAC7BR,UAAUV;EACZ,CAAA;EACAnB,OAAOoC,UAAU;IACfE,uBAAuB;MAACd,gBAAgBa;;IACxCP,aAAa/B,iBAAiBgC;IAC9BF,UAAUb;EACZ,CAAA;EACAhB,OAAOoC,UAAU;IACfN,aAAa/B,iBAAiBgC;IAC9BF,UAAUP;EACZ,CAAA;EACAtB,OAAOoC,UAAU;IACfN,aAAalB,aAAa2B;IAC1BV,UAAUT;EACZ,CAAA;EACApB,OAAOwC;AAAI;",
6
+ "names": ["ActivationEvents", "Plugin", "AppPlugin", "ContextBinding", "Agent", "Chat", "McpServer", "Memory", "Plan", "Blueprint", "Routine", "Sequence", "Feed", "ClientEvents", "Text", "HasSubject", "Message", "AiService", "BlueprintDefinition", "EdgeModelResolver", "LocalModelResolver", "Migrations", "OperationHandler", "Toolkit", "meta", "AssistantEvents", "AssistantPlugin", "define", "pipe", "addBlueprintDefinitionModule", "activate", "activatesOn", "Startup", "addOperationHandlerModule", "addSchemaModule", "schema", "CompanionTo", "addModule", "SetupAiServiceProviders", "firesBeforeActivation", "SetupMigration", "make"]
7
7
  }
@@ -1,7 +1,7 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  CreateChat
4
- } from "./chunk-PXAJSTGZ.mjs";
4
+ } from "./chunk-NCIZY5ZV.mjs";
5
5
  import "./chunk-HSLMI22Q.mjs";
6
6
 
7
7
  // src/operations/create-chat.ts
@@ -9,11 +9,11 @@ import * as Effect from "effect/Effect";
9
9
  import { Capabilities, Capability } from "@dxos/app-framework";
10
10
  import { AiContextBinder } from "@dxos/assistant";
11
11
  import { Chat, DatabaseBlueprint, AgentWizardBlueprint } from "@dxos/assistant-toolkit";
12
- import { Blueprint } from "@dxos/blueprints";
12
+ import { Blueprint } from "@dxos/compute";
13
+ import { Operation } from "@dxos/compute";
13
14
  import { Feed, Filter, Obj, Ref } from "@dxos/echo";
14
15
  import { createFeedServiceLayer } from "@dxos/echo-db";
15
16
  import { invariant } from "@dxos/invariant";
16
- import { Operation } from "@dxos/operation";
17
17
  import { ClientCapabilities } from "@dxos/plugin-client/types";
18
18
  import { AssistantBlueprint } from "#blueprints";
19
19
  var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-assistant/src/operations/create-chat.ts";
@@ -21,15 +21,7 @@ var handler = CreateChat.pipe(Operation.withHandler(Effect.fnUntraced(function*
21
21
  const registry = yield* Capability.get(Capabilities.AtomRegistry);
22
22
  const client = yield* Capability.get(ClientCapabilities.Client);
23
23
  const space = client.spaces.get(db.spaceId);
24
- invariant(space, "Space not found", {
25
- F: __dxlog_file,
26
- L: 27,
27
- S: this,
28
- A: [
29
- "space",
30
- "'Space not found'"
31
- ]
32
- });
24
+ invariant(space, "Space not found", { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 20, S: this, A: ["space", "'Space not found'"] });
33
25
  const feed = space.db.add(Feed.make());
34
26
  const chat = Chat.make({
35
27
  name,
@@ -80,4 +72,4 @@ var create_chat_default = handler;
80
72
  export {
81
73
  create_chat_default as default
82
74
  };
83
- //# sourceMappingURL=create-chat-3BEG4R6J.mjs.map
75
+ //# sourceMappingURL=create-chat-RY6A4WUV.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/operations/create-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 { AiContextBinder } from '@dxos/assistant';\nimport { Chat, DatabaseBlueprint, AgentWizardBlueprint } from '@dxos/assistant-toolkit';\nimport { Blueprint } from '@dxos/compute';\nimport { Operation } from '@dxos/compute';\nimport { Feed, Filter, Obj, Ref } from '@dxos/echo';\nimport { createFeedServiceLayer } from '@dxos/echo-db';\nimport { invariant } from '@dxos/invariant';\nimport { ClientCapabilities } from '@dxos/plugin-client/types';\n\nimport { AssistantBlueprint } from '#blueprints';\n\nimport { CreateChat } from './definitions';\n\nconst handler: Operation.WithHandler<typeof CreateChat> = CreateChat.pipe(\n Operation.withHandler(\n Effect.fnUntraced(function* ({ db, name, addToSpace = true }) {\n const registry = yield* Capability.get(Capabilities.AtomRegistry);\n const client = yield* Capability.get(ClientCapabilities.Client);\n const space = client.spaces.get(db.spaceId);\n invariant(space, 'Space not found');\n const feed = space.db.add(Feed.make());\n const chat = Chat.make({ name, feed: Ref.make(feed) });\n Obj.setParent(feed, chat);\n if (addToSpace) {\n space.db.add(chat);\n }\n\n // TODO(wittjosiah): This should be a space-level setting.\n // TODO(burdon): Clone when activated. Copy-on-write for template.\n const blueprints = yield* Effect.promise(() => db.query(Filter.type(Blueprint.Blueprint)).run());\n let defaultAssistantBlueprint = blueprints.find((blueprint) => blueprint.key === AssistantBlueprint.key);\n if (!defaultAssistantBlueprint) {\n defaultAssistantBlueprint = db.add(AssistantBlueprint.make());\n }\n let defaultDatabaseBlueprint = blueprints.find((blueprint) => blueprint.key === DatabaseBlueprint.key);\n if (!defaultDatabaseBlueprint) {\n defaultDatabaseBlueprint = db.add(DatabaseBlueprint.make());\n }\n let defaultAgentWizardBlueprint = blueprints.find((blueprint) => blueprint.key === AgentWizardBlueprint.key);\n if (!defaultAgentWizardBlueprint) {\n defaultAgentWizardBlueprint = db.add(AgentWizardBlueprint.make());\n }\n // Dynamic import to avoid circular dependency with the barrel that also exports BlueprintManagerHandlers.\n const { BlueprintManagerBlueprint } = yield* Effect.promise(() => import('@dxos/assistant-toolkit'));\n let defaultBlueprintManagerBlueprint = blueprints.find(\n (blueprint) => blueprint.key === BlueprintManagerBlueprint.key,\n );\n if (!defaultBlueprintManagerBlueprint) {\n defaultBlueprintManagerBlueprint = db.add(BlueprintManagerBlueprint.make());\n }\n\n const feedServiceLayer = createFeedServiceLayer(space.queues);\n const runtime = yield* Effect.runtime<Feed.FeedService>().pipe(Effect.provide(feedServiceLayer));\n const binder = new AiContextBinder({ feed, runtime, registry });\n yield* Effect.promise(() =>\n binder.use((b: AiContextBinder) =>\n b.bind({\n blueprints: [\n Ref.make(defaultAssistantBlueprint!),\n Ref.make(defaultDatabaseBlueprint!),\n Ref.make(defaultAgentWizardBlueprint!),\n Ref.make(defaultBlueprintManagerBlueprint!),\n ],\n }),\n ),\n );\n\n return { object: chat };\n }),\n ),\n);\n\nexport default handler;\n"],
5
+ "mappings": ";;;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,cAAcC,kBAAkB;AACzC,SAASC,uBAAuB;AAChC,SAASC,MAAMC,mBAAmBC,4BAA4B;AAC9D,SAASC,iBAAiB;AAC1B,SAASC,iBAAiB;AAC1B,SAASC,MAAMC,QAAQC,KAAKC,WAAW;AACvC,SAASC,8BAA8B;AACvC,SAASC,iBAAiB;AAC1B,SAASC,0BAA0B;AAEnC,SAASC,0BAA0B;AAInC,IAAA,eAA0DC;IAIpD,UAAMC,WAAgBC,KAAAA,UAAeC,YAAmBC,kBAAM,WAAA,EAAA,IAAA,MAAA,aAAA,KAAA,GAAA;AAC9D,QAAMC,WAAQJ,OAAOK,WAAcC,IAAAA,aAAO,YAAA;AAC1CC,QAAAA,SAAUH,OAAO,WAAA,IAAA,mBAAA,MAAA;AACjB,QAAMI,QAAOJ,OAAQ,OAAKK,IAAKC,GAAI,OAAA;AACnC,YAAMC,OAAOC,mBAAU,EAAA,YAAA,YAAA,GAAA,cAAA,GAAA,IAAA,GAAA,MAAA,GAAA,CAAA,SAAA,mBAAA,EAAA,CAAA;QAAEC,OAAAA,MAAAA,GAAAA,IAAAA,KAAAA,KAAAA,CAAAA;QAAML,OAAMM,KAAQ,KAACN;IAAM;IAChDO,MAAAA,IAAUP,KAAAA,IAAMG;EACpB,CAAA;MACEP,UAASY,MAAIL,IAAAA;AACf,MAAA,YAAA;AAEA,UAAA,GAAA,IAAA,IAAA;EACA;AAGA,QAAKM,aAAAA,OAA2B,eAAA,MAAA,GAAA,MAAA,OAAA,KAAA,UAAA,SAAA,CAAA,EAAA,IAAA,CAAA;MAC9BA,4BAA4BC,WAAOC,KAAAA,CAAAA,cAAmBT,UAAI,QAAA,mBAAA,GAAA;AAC5D,MAAA,CAAA,2BAAA;AACIU,gCAA2BC,GAAAA,IAAAA,mBAAiBC,KAAcA,CAAAA;EAC9D;MACEF,2BAA2BF,WAAOK,KAAAA,CAAAA,cAAsB,UAAA,QAAA,kBAAA,GAAA;AAC1D,MAAA,CAAA,0BAAA;AACIC,+BAAAA,GAA8BH,IAAAA,kBAAiBC,KAAAA,CAAAA;EACnD;MACEE,8BAA8BN,WAAOO,KAAAA,CAAAA,cAAqBf,UAAI,QAAA,qBAAA,GAAA;AAChE,MAAA,CAAA,6BAAA;AACA,kCAAA,GAAA,IAAA,qBAAA,KAAA,CAAA;EACA;AAIA,QAAKgB,EAAAA,0BAAAA,IAAAA,OAAkC,eAAA,MAAA,OAAA,yBAAA,CAAA;MACrCA,mCAAmCR,WAAOS,KAAAA,CAAAA,cAAAA,UAA8B,QAAA,0BAAA,GAAA;AAC1E,MAAA,CAAA,kCAAA;AAEA,uCAAyBC,GAAAA,IAAAA,0BAAmC,KAAA,CAAA;EAC5D;AACA,QAAMC,mBAAaC,uBAAgB,MAAA,MAAA;QAAEtB,WAAAA,OAAAA,eAAAA,EAAAA,KAAAA,eAAAA,gBAAAA,CAAAA;QAAMuB,SAAAA,IAAAA,gBAAAA;IAASC;IAAS,SAAAD;IAC7D;;wBAIYrB,MAAKO,OAAAA,IAAAA,CAAAA,MAAAA,EAAAA,KAAAA;gBACD;MACRH,IAAIJ,KAAKc,yBAAAA;MACTV,IAAIJ,KAAKgB,wBAAAA;MACV,IAAA,KAAA,2BAAA;MACH,IAAA,KAAA,gCAAA;IAIG;EAAEO,CAAAA,CAAAA,CAAAA;AAAa,SAAA;IACxB,QAAA;EAIJ;;;",
6
+ "names": ["Effect", "Capabilities", "Capability", "AiContextBinder", "Chat", "DatabaseBlueprint", "AgentWizardBlueprint", "Blueprint", "Operation", "Feed", "Filter", "Obj", "Ref", "createFeedServiceLayer", "invariant", "ClientCapabilities", "AssistantBlueprint", "CreateChat", "client", "Capability", "ClientCapabilities", "Client", "space", "spaces", "spaceId", "invariant", "feed", "Feed", "make", "chat", "Chat", "name", "Ref", "setParent", "add", "defaultAssistantBlueprint", "db", "AssistantBlueprint", "defaultDatabaseBlueprint", "blueprints", "blueprint", "DatabaseBlueprint", "defaultAgentWizardBlueprint", "AgentWizardBlueprint", "defaultBlueprintManagerBlueprint", "BlueprintManagerBlueprint", "createFeedServiceLayer", "binder", "AiContextBinder", "runtime", "registry", "object"]
7
+ }
@@ -1,20 +1,20 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  AssistantCapabilities
4
- } from "./chunk-W3JZ2F4T.mjs";
4
+ } from "./chunk-XAFVSEUJ.mjs";
5
5
  import {
6
6
  CreateChat,
7
7
  EnsureCompanionChat,
8
8
  SetCurrentChat
9
- } from "./chunk-PXAJSTGZ.mjs";
9
+ } from "./chunk-NCIZY5ZV.mjs";
10
10
  import "./chunk-HSLMI22Q.mjs";
11
11
 
12
12
  // src/operations/ensure-companion-chat.ts
13
13
  import * as Effect from "effect/Effect";
14
14
  import { Capabilities, Capability } from "@dxos/app-framework";
15
15
  import { Chat } from "@dxos/assistant-toolkit";
16
+ import { Operation } from "@dxos/compute";
16
17
  import { Filter, Obj, Query } from "@dxos/echo";
17
- import { Operation } from "@dxos/operation";
18
18
  var handler = EnsureCompanionChat.pipe(Operation.withHandler(Effect.fnUntraced(function* ({ db, companionTo }) {
19
19
  const operationInvoker = yield* Capability.get(Capabilities.OperationInvoker);
20
20
  const companionDxn = Obj.getDXN(companionTo).toString();
@@ -63,4 +63,4 @@ var ensure_companion_chat_default = handler;
63
63
  export {
64
64
  ensure_companion_chat_default as default
65
65
  };
66
- //# sourceMappingURL=ensure-companion-chat-6K2WEWFP.mjs.map
66
+ //# sourceMappingURL=ensure-companion-chat-BTDU5TS2.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/operations/ensure-companion-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 { Chat } from '@dxos/assistant-toolkit';\nimport { Operation } from '@dxos/compute';\nimport { Filter, Obj, Query } from '@dxos/echo';\n\nimport { AssistantCapabilities } from '../types';\nimport { CreateChat, EnsureCompanionChat, SetCurrentChat } from './definitions';\n\nconst handler: Operation.WithHandler<typeof EnsureCompanionChat> = EnsureCompanionChat.pipe(\n Operation.withHandler(\n Effect.fnUntraced(function* ({ db, companionTo }) {\n const operationInvoker = yield* Capability.get(Capabilities.OperationInvoker);\n const companionDxn = Obj.getDXN(companionTo).toString();\n\n // 1. Look for an existing persisted companion chat in the space.\n const existingChats = yield* Effect.promise(() =>\n db.query(Query.select(Filter.id(companionTo.id)).targetOf(Chat.CompanionTo).source()).run(),\n );\n if (existingChats.length > 0) {\n const chat = existingChats.at(-1) as Chat.Chat;\n // Cache the persisted chat so the graph connector can resolve it immediately\n // via the cache fallback, without waiting for AtomObj.make(ref) to hydrate.\n yield* Capabilities.updateAtomValue(AssistantCapabilities.CompanionChatCache, (current) => ({\n ...current,\n [companionDxn]: chat,\n }));\n yield* Effect.promise(() => operationInvoker.invokePromise(SetCurrentChat, { companionTo, chat }));\n return { chat, persisted: true };\n }\n\n // 2. Return cached transient chat for this companion if present.\n const cache = yield* Capabilities.getAtomValue(AssistantCapabilities.CompanionChatCache);\n const cached = cache[companionDxn] as Chat.Chat | undefined;\n if (cached) {\n return { chat: cached, persisted: false };\n }\n\n // 3. Create a new transient chat, cache it, and return it without persisting.\n const { data } = yield* Effect.promise(() =>\n operationInvoker.invokePromise(CreateChat, { db, addToSpace: false }),\n );\n if (!data?.object) {\n return yield* Effect.fail(new Error('CreateChat did not return a chat object'));\n }\n const chat = data.object;\n yield* Capabilities.updateAtomValue(AssistantCapabilities.CompanionChatCache, (current) => ({\n ...current,\n [companionDxn]: chat,\n }));\n return { chat, persisted: false };\n }),\n ),\n);\n\nexport default handler;\n"],
5
+ "mappings": ";;;;;;;;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,cAAcC,kBAAkB;AACzC,SAASC,YAAY;AACrB,SAASC,iBAAiB;AAC1B,SAASC,QAAQC,KAAKC,aAAa;AAKnC,IAAMC,UAA6DC,oBAAoBC,KACrFC,UAAUC,YACDC,kBAAW,WAAW,EAAEC,IAAIC,YAAW,GAAE;AAC9C,QAAMC,mBAAmB,OAAOC,WAAWC,IAAIC,aAAaC,gBAAgB;AAC5E,QAAMC,eAAeC,IAAIC,OAAOR,WAAAA,EAAaS,SAAQ;AAGrD,QAAMC,gBAAgB,OAAcC,eAAQ,MAC1CZ,GAAGa,MAAMC,MAAMC,OAAOC,OAAOC,GAAGhB,YAAYgB,EAAE,CAAA,EAAGC,SAASC,KAAKC,WAAW,EAAEC,OAAM,CAAA,EAAIC,IAAG,CAAA;AAE3F,MAAIX,cAAcY,SAAS,GAAG;AAC5B,UAAMC,QAAOb,cAAcc,GAAG,EAAC;AAG/B,WAAOpB,aAAaqB,gBAAgBC,sBAAsBC,oBAAoB,CAACC,aAAa;MAC1F,GAAGA;MACH,CAACtB,YAAAA,GAAeiB;IAClB,EAAA;AACA,WAAcZ,eAAQ,MAAMV,iBAAiB4B,cAAcC,gBAAgB;MAAE9B;MAAauB,MAAAA;IAAK,CAAA,CAAA;AAC/F,WAAO;MAAEA,MAAAA;MAAMQ,WAAW;IAAK;EACjC;AAGA,QAAMC,QAAQ,OAAO5B,aAAa6B,aAAaP,sBAAsBC,kBAAkB;AACvF,QAAMO,SAASF,MAAM1B,YAAAA;AACrB,MAAI4B,QAAQ;AACV,WAAO;MAAEX,MAAMW;MAAQH,WAAW;IAAM;EAC1C;AAGA,QAAM,EAAEI,KAAI,IAAK,OAAcxB,eAAQ,MACrCV,iBAAiB4B,cAAcO,YAAY;IAAErC;IAAIsC,YAAY;EAAM,CAAA,CAAA;AAErE,MAAI,CAACF,MAAMG,QAAQ;AACjB,WAAO,OAAcC,YAAK,IAAIC,MAAM,yCAAA,CAAA;EACtC;AACA,QAAMjB,OAAOY,KAAKG;AAClB,SAAOlC,aAAaqB,gBAAgBC,sBAAsBC,oBAAoB,CAACC,aAAa;IAC1F,GAAGA;IACH,CAACtB,YAAAA,GAAeiB;EAClB,EAAA;AACA,SAAO;IAAEA;IAAMQ,WAAW;EAAM;AAClC,CAAA,CAAA,CAAA;AAIJ,IAAA,gCAAetC;",
6
+ "names": ["Effect", "Capabilities", "Capability", "Chat", "Operation", "Filter", "Obj", "Query", "handler", "EnsureCompanionChat", "pipe", "Operation", "withHandler", "fnUntraced", "db", "companionTo", "operationInvoker", "Capability", "get", "Capabilities", "OperationInvoker", "companionDxn", "Obj", "getDXN", "toString", "existingChats", "promise", "query", "Query", "select", "Filter", "id", "targetOf", "Chat", "CompanionTo", "source", "run", "length", "chat", "at", "updateAtomValue", "AssistantCapabilities", "CompanionChatCache", "current", "invokePromise", "SetCurrentChat", "persisted", "cache", "getAtomValue", "cached", "data", "CreateChat", "addToSpace", "object", "fail", "Error"]
7
+ }