@dxos/plugin-assistant 0.8.4-main.422d1c7879 → 0.8.4-main.4668b7de9b

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 (675) hide show
  1. package/LICENSE +102 -5
  2. package/PLUGIN.mdl +439 -0
  3. package/README.md +1 -1
  4. package/dist/lib/neutral/AgentArticle-OYQPCK3Q.mjs +161 -0
  5. package/dist/lib/neutral/AgentArticle-OYQPCK3Q.mjs.map +7 -0
  6. package/dist/lib/neutral/AgentProperties-W6LD56IB.mjs +40 -0
  7. package/dist/lib/neutral/AgentProperties-W6LD56IB.mjs.map +7 -0
  8. package/dist/lib/neutral/AssistantPlugin.mjs +10 -0
  9. package/dist/lib/neutral/AssistantPlugin.node.mjs +66 -0
  10. package/dist/lib/neutral/AssistantPlugin.node.mjs.map +7 -0
  11. package/dist/lib/neutral/AssistantPlugin.workerd.mjs +40 -0
  12. package/dist/lib/neutral/AssistantPlugin.workerd.mjs.map +7 -0
  13. package/dist/lib/neutral/AssistantSettings-GG52BLKS.mjs +40 -0
  14. package/dist/lib/neutral/AssistantSettings-GG52BLKS.mjs.map +7 -0
  15. package/dist/lib/neutral/BlueprintArticle-ZBOZNZM7.mjs +27 -0
  16. package/dist/lib/neutral/BlueprintArticle-ZBOZNZM7.mjs.map +7 -0
  17. package/dist/lib/neutral/ChatArticle-PWD4OEFZ.mjs +8 -0
  18. package/dist/lib/neutral/ChatCompanion-TPY7HF3C.mjs +122 -0
  19. package/dist/lib/neutral/ChatCompanion-TPY7HF3C.mjs.map +7 -0
  20. package/dist/lib/neutral/ChatDialog-DCA6FLOV.mjs +73 -0
  21. package/dist/lib/neutral/ChatDialog-DCA6FLOV.mjs.map +7 -0
  22. package/dist/lib/neutral/PlanArticle-TS5ULWYS.mjs +28 -0
  23. package/dist/lib/neutral/PlanArticle-TS5ULWYS.mjs.map +7 -0
  24. package/dist/lib/neutral/RoutineArticle-5NYXHRG6.mjs +119 -0
  25. package/dist/lib/neutral/RoutineArticle-5NYXHRG6.mjs.map +7 -0
  26. package/dist/lib/neutral/RoutineList-SO5ETHNT.mjs +48 -0
  27. package/dist/lib/neutral/RoutineList-SO5ETHNT.mjs.map +7 -0
  28. package/dist/lib/neutral/RoutineProperties-FISLMW2R.mjs +17 -0
  29. package/dist/lib/neutral/RoutineProperties-FISLMW2R.mjs.map +7 -0
  30. package/dist/lib/neutral/TracePanel-CHJHFTTQ.mjs +136 -0
  31. package/dist/lib/neutral/TracePanel-CHJHFTTQ.mjs.map +7 -0
  32. package/dist/lib/neutral/TriggerStatus-X7Y5JFZJ.mjs +93 -0
  33. package/dist/lib/neutral/TriggerStatus-X7Y5JFZJ.mjs.map +7 -0
  34. package/dist/lib/neutral/ai-context-IABBIEHG.mjs +42 -0
  35. package/dist/lib/neutral/ai-context-IABBIEHG.mjs.map +7 -0
  36. package/dist/lib/neutral/ai-service-3SH2UQIR.mjs +42 -0
  37. package/dist/lib/neutral/ai-service-3SH2UQIR.mjs.map +7 -0
  38. package/dist/lib/neutral/app-graph-builder-RJW5O57E.mjs +199 -0
  39. package/dist/lib/neutral/app-graph-builder-RJW5O57E.mjs.map +7 -0
  40. package/dist/lib/neutral/blueprint-definition-VXJYQ5AE.mjs +32 -0
  41. package/dist/lib/neutral/blueprint-definition-VXJYQ5AE.mjs.map +7 -0
  42. package/dist/lib/{browser → neutral}/blueprints/index.mjs +1 -1
  43. package/dist/lib/neutral/capabilities/index.mjs +37 -0
  44. package/dist/lib/neutral/capabilities/index.mjs.map +7 -0
  45. package/dist/lib/neutral/chunk-47OH7ZF6.mjs +8 -0
  46. package/dist/lib/neutral/chunk-47OH7ZF6.mjs.map +7 -0
  47. package/dist/lib/{browser/chunk-EZRS3J25.mjs → neutral/chunk-5H6UJHLF.mjs} +3 -3
  48. package/dist/lib/neutral/chunk-5H6UJHLF.mjs.map +7 -0
  49. package/dist/lib/neutral/chunk-6BUTAYVO.mjs +123 -0
  50. package/dist/lib/neutral/chunk-6BUTAYVO.mjs.map +7 -0
  51. package/dist/lib/neutral/chunk-A2XIILMZ.mjs +107 -0
  52. package/dist/lib/neutral/chunk-A2XIILMZ.mjs.map +7 -0
  53. package/dist/lib/neutral/chunk-UWI53RCD.mjs +386 -0
  54. package/dist/lib/neutral/chunk-UWI53RCD.mjs.map +7 -0
  55. package/dist/lib/neutral/chunk-XYHPOGTK.mjs +43 -0
  56. package/dist/lib/neutral/chunk-XYHPOGTK.mjs.map +7 -0
  57. package/dist/lib/neutral/companion-chat-provisioner-7RTSXL6M.mjs +116 -0
  58. package/dist/lib/neutral/companion-chat-provisioner-7RTSXL6M.mjs.map +7 -0
  59. package/dist/lib/neutral/components/index.mjs +2384 -0
  60. package/dist/lib/neutral/components/index.mjs.map +7 -0
  61. package/dist/lib/neutral/containers/index.mjs +29 -0
  62. package/dist/lib/neutral/containers/index.mjs.map +7 -0
  63. package/dist/lib/neutral/create-chat-67GZNG3T.mjs +54 -0
  64. package/dist/lib/neutral/create-chat-67GZNG3T.mjs.map +7 -0
  65. package/dist/lib/neutral/create-object-XPVVVEKF.mjs +89 -0
  66. package/dist/lib/neutral/create-object-XPVVVEKF.mjs.map +7 -0
  67. package/dist/lib/neutral/edge-model-resolver-7SMCGDRL.mjs +50 -0
  68. package/dist/lib/neutral/edge-model-resolver-7SMCGDRL.mjs.map +7 -0
  69. package/dist/lib/{browser/ensure-companion-chat-ZEZA34MZ.mjs → neutral/ensure-companion-chat-AMOF3C66.mjs} +14 -21
  70. package/dist/lib/neutral/ensure-companion-chat-AMOF3C66.mjs.map +7 -0
  71. package/dist/lib/neutral/execution-graph/index.mjs +658 -0
  72. package/dist/lib/neutral/execution-graph/index.mjs.map +7 -0
  73. package/dist/lib/neutral/hooks/index.mjs +965 -0
  74. package/dist/lib/neutral/hooks/index.mjs.map +7 -0
  75. package/dist/lib/neutral/index.mjs +32 -0
  76. package/dist/lib/neutral/local-model-resolver-I2BENFFS.mjs +24 -0
  77. package/dist/lib/neutral/local-model-resolver-I2BENFFS.mjs.map +7 -0
  78. package/dist/lib/neutral/markdown-KTBFOMFM.mjs +110 -0
  79. package/dist/lib/neutral/markdown-KTBFOMFM.mjs.map +7 -0
  80. package/dist/lib/neutral/meta.json +1 -0
  81. package/dist/lib/neutral/meta.mjs +12 -0
  82. package/dist/lib/neutral/migrations-7DEMVBOG.mjs +28 -0
  83. package/dist/lib/neutral/migrations-7DEMVBOG.mjs.map +7 -0
  84. package/dist/lib/{browser/on-create-space-54RNX5JI.mjs → neutral/on-create-space-Q2R7OSP6.mjs} +5 -8
  85. package/dist/lib/neutral/on-create-space-Q2R7OSP6.mjs.map +7 -0
  86. package/dist/lib/neutral/operation-handler-SF36MOB5.mjs +13 -0
  87. package/dist/lib/neutral/operation-handler-SF36MOB5.mjs.map +7 -0
  88. package/dist/lib/neutral/operations/index.mjs +8 -0
  89. package/dist/lib/neutral/operations/index.mjs.map +7 -0
  90. package/dist/lib/neutral/plugin.mjs +16 -0
  91. package/dist/lib/neutral/plugin.mjs.map +7 -0
  92. package/dist/lib/neutral/react-surface-XRTBW5OJ.mjs +174 -0
  93. package/dist/lib/neutral/react-surface-XRTBW5OJ.mjs.map +7 -0
  94. package/dist/lib/{browser/resolve-navigation-targets-NZOD66NY.mjs → neutral/resolve-navigation-targets-ZHIMMH7L.mjs} +6 -6
  95. package/dist/lib/neutral/resolve-navigation-targets-ZHIMMH7L.mjs.map +7 -0
  96. package/dist/lib/{browser/run-prompt-in-new-chat-THLK5YQC.mjs → neutral/run-prompt-in-new-chat-NRDYPCJK.mjs} +21 -55
  97. package/dist/lib/neutral/run-prompt-in-new-chat-NRDYPCJK.mjs.map +7 -0
  98. package/dist/lib/{browser/set-current-chat-LRS3VFSH.mjs → neutral/set-current-chat-VWBPSIMZ.mjs} +7 -13
  99. package/dist/lib/neutral/set-current-chat-VWBPSIMZ.mjs.map +7 -0
  100. package/dist/lib/neutral/settings-W4BLWQ53.mjs +28 -0
  101. package/dist/lib/neutral/settings-W4BLWQ53.mjs.map +7 -0
  102. package/dist/lib/neutral/state-H3G7QCU6.mjs +28 -0
  103. package/dist/lib/neutral/state-H3G7QCU6.mjs.map +7 -0
  104. package/dist/lib/neutral/testing.mjs +8 -0
  105. package/dist/lib/neutral/testing.mjs.map +7 -0
  106. package/dist/lib/neutral/toggle-trace-panel-debug-JGTB6KVJ.mjs +21 -0
  107. package/dist/lib/neutral/toggle-trace-panel-debug-JGTB6KVJ.mjs.map +7 -0
  108. package/dist/lib/neutral/toolkit-GVWXPDLJ.mjs +14 -0
  109. package/dist/lib/neutral/toolkit-GVWXPDLJ.mjs.map +7 -0
  110. package/dist/lib/neutral/translations.mjs +175 -0
  111. package/dist/lib/neutral/translations.mjs.map +7 -0
  112. package/dist/lib/neutral/types/index.mjs +20 -0
  113. package/dist/lib/neutral/types/index.mjs.map +7 -0
  114. package/dist/lib/{browser/update-chat-name-3Y36KFAS.mjs → neutral/update-chat-name-ENXRUMDJ.mjs} +8 -25
  115. package/dist/lib/neutral/update-chat-name-ENXRUMDJ.mjs.map +7 -0
  116. package/dist/types/src/AssistantPlugin.d.ts +3 -1
  117. package/dist/types/src/AssistantPlugin.d.ts.map +1 -1
  118. package/dist/types/src/AssistantPlugin.node.d.ts +5 -0
  119. package/dist/types/src/AssistantPlugin.node.d.ts.map +1 -0
  120. package/dist/types/src/AssistantPlugin.test.d.ts +2 -0
  121. package/dist/types/src/AssistantPlugin.test.d.ts.map +1 -0
  122. package/dist/types/src/AssistantPlugin.workerd.d.ts +4 -0
  123. package/dist/types/src/AssistantPlugin.workerd.d.ts.map +1 -0
  124. package/dist/types/src/blueprints/assistant/blueprint.d.ts +2 -2
  125. package/dist/types/src/blueprints/assistant/blueprint.d.ts.map +1 -1
  126. package/dist/types/src/blueprints/assistant/blueprint.node.test.d.ts +2 -0
  127. package/dist/types/src/blueprints/assistant/blueprint.node.test.d.ts.map +1 -0
  128. package/dist/types/src/capabilities/ai-context.d.ts +6 -0
  129. package/dist/types/src/capabilities/ai-context.d.ts.map +1 -0
  130. package/dist/types/src/capabilities/ai-service.d.ts +2 -2
  131. package/dist/types/src/capabilities/ai-service.d.ts.map +1 -1
  132. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  133. package/dist/types/src/capabilities/blueprint-definition.d.ts.map +1 -1
  134. package/dist/types/src/capabilities/companion-chat-provisioner.d.ts.map +1 -1
  135. package/dist/types/src/capabilities/create-object.d.ts +31 -0
  136. package/dist/types/src/capabilities/create-object.d.ts.map +1 -0
  137. package/dist/types/src/capabilities/edge-model-resolver.d.ts +1 -1
  138. package/dist/types/src/capabilities/edge-model-resolver.d.ts.map +1 -1
  139. package/dist/types/src/capabilities/index.d.ts +30 -2
  140. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  141. package/dist/types/src/capabilities/local-model-resolver.d.ts.map +1 -1
  142. package/dist/types/src/capabilities/markdown.d.ts.map +1 -1
  143. package/dist/types/src/capabilities/migrations.d.ts +2 -1
  144. package/dist/types/src/capabilities/migrations.d.ts.map +1 -1
  145. package/dist/types/src/capabilities/operation-handler.d.ts +1 -1
  146. package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -1
  147. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  148. package/dist/types/src/capabilities/settings.d.ts.map +1 -1
  149. package/dist/types/src/capabilities/state.d.ts.map +1 -1
  150. package/dist/types/src/capabilities/toolkit.d.ts.map +1 -1
  151. package/dist/types/src/components/AgentProperties/AgentProperties.d.ts +7 -0
  152. package/dist/types/src/components/AgentProperties/AgentProperties.d.ts.map +1 -0
  153. package/dist/types/src/{containers → components}/AgentProperties/AgentProperties.stories.d.ts +1 -2
  154. package/dist/types/src/components/AgentProperties/AgentProperties.stories.d.ts.map +1 -0
  155. package/dist/types/src/components/AgentProperties/index.d.ts +2 -0
  156. package/dist/types/src/components/AgentProperties/index.d.ts.map +1 -0
  157. package/dist/types/src/components/AssistantSettings/AssistantSettings.d.ts +1 -1
  158. package/dist/types/src/components/AssistantSettings/AssistantSettings.d.ts.map +1 -1
  159. package/dist/types/src/components/AssistantSettings/AssistantSettings.stories.d.ts.map +1 -1
  160. package/dist/types/src/components/Chat/Chat.d.ts +36 -40
  161. package/dist/types/src/components/Chat/Chat.d.ts.map +1 -1
  162. package/dist/types/src/components/Chat/context.d.ts +29 -0
  163. package/dist/types/src/components/Chat/context.d.ts.map +1 -0
  164. package/dist/types/src/components/ChatPrompt/ChatActions.d.ts.map +1 -1
  165. package/dist/types/src/components/ChatPrompt/ChatMcpErrors.d.ts +12 -0
  166. package/dist/types/src/components/ChatPrompt/ChatMcpErrors.d.ts.map +1 -0
  167. package/dist/types/src/components/ChatPrompt/ChatOptions.d.ts +8 -7
  168. package/dist/types/src/components/ChatPrompt/ChatOptions.d.ts.map +1 -1
  169. package/dist/types/src/components/ChatPrompt/ChatOptions.stories.d.ts +1 -1
  170. package/dist/types/src/components/ChatPrompt/ChatOptions.stories.d.ts.map +1 -1
  171. package/dist/types/src/components/ChatPrompt/ChatPresets.d.ts.map +1 -1
  172. package/dist/types/src/components/ChatPrompt/ChatPrompt.d.ts +28 -0
  173. package/dist/types/src/components/ChatPrompt/ChatPrompt.d.ts.map +1 -0
  174. package/dist/types/src/components/ChatPrompt/ChatReferences.d.ts +2 -2
  175. package/dist/types/src/components/ChatPrompt/ChatReferences.d.ts.map +1 -1
  176. package/dist/types/src/components/ChatPrompt/ChatStatus.d.ts +20 -0
  177. package/dist/types/src/components/ChatPrompt/ChatStatus.d.ts.map +1 -0
  178. package/dist/types/src/components/ChatPrompt/ChatStatusIndicator.d.ts.map +1 -1
  179. package/dist/types/src/components/ChatPrompt/index.d.ts +3 -0
  180. package/dist/types/src/components/ChatPrompt/index.d.ts.map +1 -1
  181. package/dist/types/src/components/ChatThread/Anchor.stories.d.ts.map +1 -1
  182. package/dist/types/src/components/ChatThread/ChatThread.d.ts +6 -3
  183. package/dist/types/src/components/ChatThread/ChatThread.d.ts.map +1 -1
  184. package/dist/types/src/components/ChatThread/ChatThread.stories.d.ts +5 -5
  185. package/dist/types/src/components/ChatThread/ChatThread.stories.d.ts.map +1 -1
  186. package/dist/types/src/components/ChatThread/Link.d.ts +2 -2
  187. package/dist/types/src/components/ChatThread/Link.d.ts.map +1 -1
  188. package/dist/types/src/components/ChatThread/MarkdownStream.stories.d.ts +1 -1
  189. package/dist/types/src/components/ChatThread/MarkdownStream.stories.d.ts.map +1 -1
  190. package/dist/types/src/components/ChatThread/registry.d.ts +18 -0
  191. package/dist/types/src/components/ChatThread/registry.d.ts.map +1 -1
  192. package/dist/types/src/components/ChatThread/sync.d.ts +3 -3
  193. package/dist/types/src/components/ChatThread/sync.d.ts.map +1 -1
  194. package/dist/types/src/components/ChatThread/tool-widget-state.d.ts.map +1 -1
  195. package/dist/types/src/components/ChatThread/widgets/FallbackWidget.d.ts +4 -4
  196. package/dist/types/src/components/ChatThread/widgets/FallbackWidget.d.ts.map +1 -1
  197. package/dist/types/src/components/ChatThread/widgets/ReasoningWidget.d.ts.map +1 -1
  198. package/dist/types/src/components/ChatThread/widgets/ReasoningWidget.stories.d.ts.map +1 -1
  199. package/dist/types/src/components/ChatThread/widgets/ReferenceWidget.d.ts.map +1 -1
  200. package/dist/types/src/components/ChatThread/widgets/SelectWidget.d.ts.map +1 -1
  201. package/dist/types/src/components/ChatThread/widgets/StatsWidget.d.ts.map +1 -1
  202. package/dist/types/src/components/ChatThread/widgets/StatusWidget.d.ts +2 -15
  203. package/dist/types/src/components/ChatThread/widgets/StatusWidget.d.ts.map +1 -1
  204. package/dist/types/src/components/ChatThread/widgets/SuggestionWidget.d.ts.map +1 -1
  205. package/dist/types/src/components/ChatThread/widgets/SummaryWidget.d.ts.map +1 -1
  206. package/dist/types/src/components/ChatThread/widgets/ToolWidget.d.ts.map +1 -1
  207. package/dist/types/src/components/ChatThread/widgets/ToolWidget.stories.d.ts.map +1 -1
  208. package/dist/types/src/components/ChatThread/widgets/defaults.d.ts +5 -0
  209. package/dist/types/src/components/ChatThread/widgets/defaults.d.ts.map +1 -0
  210. package/dist/types/src/components/ChatThread/widgets/index.d.ts +1 -2
  211. package/dist/types/src/components/ChatThread/widgets/index.d.ts.map +1 -1
  212. package/dist/types/src/components/ProcessTree/ProcessTree.d.ts +4 -3
  213. package/dist/types/src/components/ProcessTree/ProcessTree.d.ts.map +1 -1
  214. package/dist/types/src/components/ProcessTree/ProcessTree.stories.d.ts +0 -1
  215. package/dist/types/src/components/ProcessTree/ProcessTree.stories.d.ts.map +1 -1
  216. package/dist/types/src/components/RoutineProperties/RoutineProperties.d.ts +7 -0
  217. package/dist/types/src/components/RoutineProperties/RoutineProperties.d.ts.map +1 -0
  218. package/dist/types/src/components/RoutineProperties/RoutineProperties.stories.d.ts +15 -0
  219. package/dist/types/src/components/RoutineProperties/RoutineProperties.stories.d.ts.map +1 -0
  220. package/dist/types/src/components/RoutineProperties/index.d.ts +2 -0
  221. package/dist/types/src/components/RoutineProperties/index.d.ts.map +1 -0
  222. package/dist/types/src/components/TaskList/TaskList.d.ts +10 -0
  223. package/dist/types/src/components/TaskList/TaskList.d.ts.map +1 -0
  224. package/dist/types/src/components/TaskList/TaskList.stories.d.ts +16 -0
  225. package/dist/types/src/components/TaskList/TaskList.stories.d.ts.map +1 -0
  226. package/dist/types/src/components/TaskList/index.d.ts +2 -0
  227. package/dist/types/src/components/TaskList/index.d.ts.map +1 -0
  228. package/dist/types/src/components/TemplateEditor/TemplateEditor.d.ts +5 -3
  229. package/dist/types/src/components/TemplateEditor/TemplateEditor.d.ts.map +1 -1
  230. package/dist/types/src/components/TemplateEditor/TemplateEditor.stories.d.ts.map +1 -1
  231. package/dist/types/src/components/TemplateEditor/TemplateForm.d.ts +4 -5
  232. package/dist/types/src/components/TemplateEditor/TemplateForm.d.ts.map +1 -1
  233. package/dist/types/src/components/TemplateEditor/TemplateForm.stories.d.ts +1 -1
  234. package/dist/types/src/components/TemplateEditor/TemplateForm.stories.d.ts.map +1 -1
  235. package/dist/types/src/components/TemplateEditor/extensions/handlebars-extension.d.ts.map +1 -1
  236. package/dist/types/src/components/TemplateEditor/extensions/xml-extension.d.ts.map +1 -1
  237. package/dist/types/src/components/ToolBlock/ToolBlock.d.ts +4 -4
  238. package/dist/types/src/components/ToolBlock/ToolBlock.d.ts.map +1 -1
  239. package/dist/types/src/components/Toolbox/Toolbox.d.ts +3 -3
  240. package/dist/types/src/components/Toolbox/Toolbox.d.ts.map +1 -1
  241. package/dist/types/src/components/Toolbox/Toolbox.stories.d.ts.map +1 -1
  242. package/dist/types/src/components/index.d.ts +3 -0
  243. package/dist/types/src/components/index.d.ts.map +1 -1
  244. package/dist/types/src/containers/AgentArticle/AgentArticle.d.ts.map +1 -1
  245. package/dist/types/src/containers/AgentArticle/AgentArticle.stories.d.ts +0 -2
  246. package/dist/types/src/containers/AgentArticle/AgentArticle.stories.d.ts.map +1 -1
  247. package/dist/types/src/containers/AgentProperties/AgentProperties.d.ts +1 -1
  248. package/dist/types/src/containers/AgentProperties/AgentProperties.d.ts.map +1 -1
  249. package/dist/types/src/containers/BlueprintArticle/BlueprintArticle.d.ts +1 -1
  250. package/dist/types/src/containers/BlueprintArticle/BlueprintArticle.d.ts.map +1 -1
  251. package/dist/types/src/containers/{ChatContainer/ChatContainer.d.ts → ChatArticle/ChatArticle.d.ts} +3 -3
  252. package/dist/types/src/containers/ChatArticle/ChatArticle.d.ts.map +1 -0
  253. package/dist/types/src/containers/ChatArticle/ChatArticle.stories.d.ts +15 -0
  254. package/dist/types/src/containers/ChatArticle/ChatArticle.stories.d.ts.map +1 -0
  255. package/dist/types/src/containers/ChatArticle/index.d.ts +2 -0
  256. package/dist/types/src/containers/ChatArticle/index.d.ts.map +1 -0
  257. package/dist/types/src/containers/ChatCompanion/ChatCompanion.d.ts +11 -3
  258. package/dist/types/src/containers/ChatCompanion/ChatCompanion.d.ts.map +1 -1
  259. package/dist/types/src/containers/ChatDialog/ChatDialog.d.ts.map +1 -1
  260. package/dist/types/src/containers/PlanArticle/PlanArticle.d.ts +6 -0
  261. package/dist/types/src/containers/PlanArticle/PlanArticle.d.ts.map +1 -0
  262. package/dist/types/src/containers/PlanArticle/index.d.ts +2 -0
  263. package/dist/types/src/containers/PlanArticle/index.d.ts.map +1 -0
  264. package/dist/types/src/containers/RoutineArticle/RoutineArticle.d.ts +6 -0
  265. package/dist/types/src/containers/RoutineArticle/RoutineArticle.d.ts.map +1 -0
  266. package/dist/types/src/containers/RoutineArticle/RoutineArticle.stories.d.ts +15 -0
  267. package/dist/types/src/containers/RoutineArticle/RoutineArticle.stories.d.ts.map +1 -0
  268. package/dist/types/src/containers/RoutineArticle/index.d.ts +2 -0
  269. package/dist/types/src/containers/RoutineArticle/index.d.ts.map +1 -0
  270. package/dist/types/src/containers/RoutineList/RoutineList.d.ts +6 -0
  271. package/dist/types/src/containers/RoutineList/RoutineList.d.ts.map +1 -0
  272. package/dist/types/src/containers/{PromptList/PromptList.stories.d.ts → RoutineList/RoutineList.stories.d.ts} +1 -1
  273. package/dist/types/src/containers/RoutineList/RoutineList.stories.d.ts.map +1 -0
  274. package/dist/types/src/containers/RoutineList/index.d.ts +2 -0
  275. package/dist/types/src/containers/RoutineList/index.d.ts.map +1 -0
  276. package/dist/types/src/containers/TracePanel/TracePanel.d.ts +3 -2
  277. package/dist/types/src/containers/TracePanel/TracePanel.d.ts.map +1 -1
  278. package/dist/types/src/containers/TracePanel/TracePanel.stories.d.ts +3 -4
  279. package/dist/types/src/containers/TracePanel/TracePanel.stories.d.ts.map +1 -1
  280. package/dist/types/src/containers/TracePanel/dxn-extractor.d.ts +5 -5
  281. package/dist/types/src/containers/TracePanel/dxn-extractor.d.ts.map +1 -1
  282. package/dist/types/src/containers/TracePanel/index.d.ts.map +1 -1
  283. package/dist/types/src/containers/TracePanel/testing/index.d.ts +3 -0
  284. package/dist/types/src/containers/TracePanel/testing/index.d.ts.map +1 -0
  285. package/dist/types/src/containers/TracePanel/testing/simulated-agent.d.ts +14 -0
  286. package/dist/types/src/containers/TracePanel/testing/simulated-agent.d.ts.map +1 -0
  287. package/dist/types/src/containers/TracePanel/testing/snapshot-playback.d.ts +12 -0
  288. package/dist/types/src/containers/TracePanel/testing/snapshot-playback.d.ts.map +1 -0
  289. package/dist/types/src/containers/TriggerStatus/TriggerStatus.d.ts.map +1 -1
  290. package/dist/types/src/containers/index.d.ts +6 -5
  291. package/dist/types/src/containers/index.d.ts.map +1 -1
  292. package/dist/types/src/execution-graph/execution-graph.d.ts +108 -0
  293. package/dist/types/src/execution-graph/execution-graph.d.ts.map +1 -0
  294. package/dist/types/src/execution-graph/execution-graph.test.d.ts +2 -0
  295. package/dist/types/src/execution-graph/execution-graph.test.d.ts.map +1 -0
  296. package/dist/types/src/execution-graph/index.d.ts +3 -0
  297. package/dist/types/src/execution-graph/index.d.ts.map +1 -0
  298. package/dist/types/src/execution-graph/remote-snapshot.test.d.ts +2 -0
  299. package/dist/types/src/execution-graph/remote-snapshot.test.d.ts.map +1 -0
  300. package/dist/types/src/execution-graph/span-tree.d.ts +76 -0
  301. package/dist/types/src/execution-graph/span-tree.d.ts.map +1 -0
  302. package/dist/types/src/execution-graph/span-tree.test.d.ts +2 -0
  303. package/dist/types/src/execution-graph/span-tree.test.d.ts.map +1 -0
  304. package/dist/types/src/execution-graph/testing/collect-trace-events.d.ts +40 -0
  305. package/dist/types/src/execution-graph/testing/collect-trace-events.d.ts.map +1 -0
  306. package/dist/types/src/execution-graph/testing/index.d.ts +2 -0
  307. package/dist/types/src/execution-graph/testing/index.d.ts.map +1 -0
  308. package/dist/types/src/extensions/prompt-extension.d.ts.map +1 -1
  309. package/dist/types/src/feed-logger.d.ts +13 -0
  310. package/dist/types/src/feed-logger.d.ts.map +1 -0
  311. package/dist/types/src/hooks/index.d.ts +2 -0
  312. package/dist/types/src/hooks/index.d.ts.map +1 -1
  313. package/dist/types/src/hooks/useBlueprintRegistry.d.ts +56 -15
  314. package/dist/types/src/hooks/useBlueprintRegistry.d.ts.map +1 -1
  315. package/dist/types/src/hooks/useChatKeymap.d.ts +12 -0
  316. package/dist/types/src/hooks/useChatKeymap.d.ts.map +1 -0
  317. package/dist/types/src/hooks/useChatProcessor.d.ts +5 -5
  318. package/dist/types/src/hooks/useChatProcessor.d.ts.map +1 -1
  319. package/dist/types/src/hooks/useChatServices.d.ts +7 -3
  320. package/dist/types/src/hooks/useChatServices.d.ts.map +1 -1
  321. package/dist/types/src/hooks/useChatToolbarActions.d.ts.map +1 -1
  322. package/dist/types/src/hooks/useContextBinder.d.ts +2 -2
  323. package/dist/types/src/hooks/useContextBinder.d.ts.map +1 -1
  324. package/dist/types/src/hooks/useContextObjects.d.ts +5 -4
  325. package/dist/types/src/hooks/useContextObjects.d.ts.map +1 -1
  326. package/dist/types/src/hooks/useDebug.d.ts +10 -0
  327. package/dist/types/src/hooks/useDebug.d.ts.map +1 -0
  328. package/dist/types/src/hooks/useFilteredTypes.d.ts +1 -1
  329. package/dist/types/src/hooks/useFilteredTypes.d.ts.map +1 -1
  330. package/dist/types/src/hooks/useFlush.d.ts +1 -1
  331. package/dist/types/src/hooks/useFlush.d.ts.map +1 -1
  332. package/dist/types/src/hooks/usePresets.d.ts.map +1 -1
  333. package/dist/types/src/hooks/useReferencesProvider.d.ts.map +1 -1
  334. package/dist/types/src/index.d.ts +0 -4
  335. package/dist/types/src/index.d.ts.map +1 -1
  336. package/dist/types/src/meta.d.ts +3 -2
  337. package/dist/types/src/meta.d.ts.map +1 -1
  338. package/dist/types/src/operations/create-chat.d.ts +3 -3
  339. package/dist/types/src/operations/create-chat.d.ts.map +1 -1
  340. package/dist/types/src/operations/ensure-companion-chat.d.ts +3 -3
  341. package/dist/types/src/operations/ensure-companion-chat.d.ts.map +1 -1
  342. package/dist/types/src/operations/index.d.ts +1 -2
  343. package/dist/types/src/operations/index.d.ts.map +1 -1
  344. package/dist/types/src/operations/on-create-space.d.ts +3 -3
  345. package/dist/types/src/operations/on-create-space.d.ts.map +1 -1
  346. package/dist/types/src/operations/prompt.node.test.d.ts +2 -0
  347. package/dist/types/src/operations/prompt.node.test.d.ts.map +1 -0
  348. package/dist/types/src/operations/resolve-navigation-targets.d.ts +4 -2
  349. package/dist/types/src/operations/resolve-navigation-targets.d.ts.map +1 -1
  350. package/dist/types/src/operations/run-prompt-in-new-chat.d.ts +3 -3
  351. package/dist/types/src/operations/run-prompt-in-new-chat.d.ts.map +1 -1
  352. package/dist/types/src/operations/set-current-chat.d.ts +3 -3
  353. package/dist/types/src/operations/set-current-chat.d.ts.map +1 -1
  354. package/dist/types/src/operations/toggle-trace-panel-debug.d.ts +5 -0
  355. package/dist/types/src/operations/toggle-trace-panel-debug.d.ts.map +1 -0
  356. package/dist/types/src/operations/update-chat-name.d.ts +3 -3
  357. package/dist/types/src/operations/update-chat-name.d.ts.map +1 -1
  358. package/dist/types/src/plugin.d.ts +4 -0
  359. package/dist/types/src/plugin.d.ts.map +1 -0
  360. package/dist/types/src/processor/processor.d.ts +263 -20
  361. package/dist/types/src/processor/processor.d.ts.map +1 -1
  362. package/dist/types/src/processor/processor.node.test.d.ts +2 -0
  363. package/dist/types/src/processor/processor.node.test.d.ts.map +1 -0
  364. package/dist/types/src/testing/index.d.ts +2 -0
  365. package/dist/types/src/testing/index.d.ts.map +1 -1
  366. package/dist/types/src/testing/snapshot.d.ts +21 -0
  367. package/dist/types/src/testing/snapshot.d.ts.map +1 -0
  368. package/dist/types/src/testing/test-generator.d.ts +2 -3
  369. package/dist/types/src/testing/test-generator.d.ts.map +1 -1
  370. package/dist/types/src/testing/test-sequence.d.ts +10 -3
  371. package/dist/types/src/testing/test-sequence.d.ts.map +1 -1
  372. package/dist/types/src/testing/test-services.d.ts.map +1 -1
  373. package/dist/types/src/testing/test-trace.d.ts +5 -0
  374. package/dist/types/src/testing/test-trace.d.ts.map +1 -0
  375. package/dist/types/src/testing/trace-timeline.node.test.d.ts +2 -0
  376. package/dist/types/src/testing/trace-timeline.node.test.d.ts.map +1 -0
  377. package/dist/types/src/testing.d.ts +2 -0
  378. package/dist/types/src/testing.d.ts.map +1 -0
  379. package/dist/types/src/translations.d.ts.map +1 -1
  380. package/dist/types/src/types/Assistant.d.ts +25 -8
  381. package/dist/types/src/types/Assistant.d.ts.map +1 -1
  382. package/dist/types/src/types/AssistantCapabilities.d.ts +30 -0
  383. package/dist/types/src/types/AssistantCapabilities.d.ts.map +1 -0
  384. package/dist/types/src/types/AssistantEvents.d.ts +3 -0
  385. package/dist/types/src/types/AssistantEvents.d.ts.map +1 -0
  386. package/dist/types/src/{operations/definitions.d.ts → types/AssistantOperation.d.ts} +61 -59
  387. package/dist/types/src/types/AssistantOperation.d.ts.map +1 -0
  388. package/dist/types/src/types/Settings.d.ts +21 -5
  389. package/dist/types/src/types/Settings.d.ts.map +1 -1
  390. package/dist/types/src/types/index.d.ts +7 -3
  391. package/dist/types/src/types/index.d.ts.map +1 -1
  392. package/dist/types/src/types/service.d.ts +2 -3
  393. package/dist/types/src/types/service.d.ts.map +1 -1
  394. package/dist/types/src/util/suggestions.d.ts +9 -0
  395. package/dist/types/src/util/suggestions.d.ts.map +1 -0
  396. package/dist/types/src/util/suggestions.test.d.ts +2 -0
  397. package/dist/types/src/util/suggestions.test.d.ts.map +1 -0
  398. package/dist/types/tsconfig.tsbuildinfo +1 -1
  399. package/package.json +168 -128
  400. package/src/AssistantPlugin.conversations.json +1 -0
  401. package/src/AssistantPlugin.node.ts +77 -0
  402. package/src/AssistantPlugin.test.ts +152 -0
  403. package/src/AssistantPlugin.ts +147 -0
  404. package/src/AssistantPlugin.workerd.ts +41 -0
  405. package/src/blueprints/assistant/{blueprint.test.ts → blueprint.node.test.ts} +5 -5
  406. package/src/blueprints/assistant/blueprint.ts +4 -4
  407. package/src/capabilities/ai-context.ts +85 -0
  408. package/src/capabilities/ai-service.ts +36 -9
  409. package/src/capabilities/app-graph-builder.ts +55 -20
  410. package/src/capabilities/blueprint-definition.ts +2 -4
  411. package/src/capabilities/companion-chat-provisioner.ts +4 -5
  412. package/src/capabilities/create-object.ts +98 -0
  413. package/src/capabilities/edge-model-resolver.ts +47 -11
  414. package/src/capabilities/index.ts +10 -2
  415. package/src/capabilities/markdown.ts +1 -1
  416. package/src/capabilities/migrations.ts +4 -11
  417. package/src/capabilities/operation-handler.ts +1 -1
  418. package/src/capabilities/react-surface.tsx +33 -20
  419. package/src/components/AgentProperties/AgentProperties.stories.tsx +74 -0
  420. package/src/components/AgentProperties/AgentProperties.tsx +104 -0
  421. package/src/components/AgentProperties/index.ts +5 -0
  422. package/src/components/AssistantSettings/AssistantSettings.stories.tsx +3 -2
  423. package/src/components/AssistantSettings/AssistantSettings.tsx +22 -111
  424. package/src/components/Chat/Chat.tsx +85 -259
  425. package/src/components/Chat/context.ts +39 -0
  426. package/src/components/ChatPrompt/ChatActions.tsx +10 -10
  427. package/src/components/ChatPrompt/ChatMcpErrors.tsx +50 -0
  428. package/src/components/ChatPrompt/ChatOptions.stories.tsx +32 -18
  429. package/src/components/ChatPrompt/ChatOptions.tsx +103 -82
  430. package/src/components/ChatPrompt/ChatPrompt.tsx +182 -0
  431. package/src/components/ChatPrompt/ChatReferences.tsx +9 -13
  432. package/src/components/ChatPrompt/ChatStatus.tsx +123 -0
  433. package/src/components/ChatPrompt/ChatStatusIndicator.tsx +1 -1
  434. package/src/components/ChatPrompt/index.ts +3 -0
  435. package/src/components/ChatThread/Anchor.stories.tsx +7 -7
  436. package/src/components/ChatThread/ChatThread.stories.tsx +27 -31
  437. package/src/components/ChatThread/ChatThread.tsx +43 -21
  438. package/src/components/ChatThread/DEBUG.md +41 -0
  439. package/src/components/ChatThread/Link.tsx +5 -5
  440. package/src/components/ChatThread/MarkdownStream.stories.tsx +5 -4
  441. package/src/components/ChatThread/registry.tsx +62 -19
  442. package/src/components/ChatThread/sync.test.ts +84 -18
  443. package/src/components/ChatThread/sync.ts +3 -3
  444. package/src/components/ChatThread/widgets/ReasoningWidget.ts +13 -7
  445. package/src/components/ChatThread/widgets/ReferenceWidget.ts +3 -1
  446. package/src/components/ChatThread/widgets/SelectWidget.ts +4 -2
  447. package/src/components/ChatThread/widgets/StatsWidget.ts +3 -1
  448. package/src/components/ChatThread/widgets/StatusWidget.ts +6 -84
  449. package/src/components/ChatThread/widgets/SuggestionWidget.ts +2 -2
  450. package/src/components/ChatThread/widgets/SummaryWidget.tsx +3 -4
  451. package/src/components/ChatThread/widgets/ToolWidget.stories.tsx +2 -1
  452. package/src/components/ChatThread/widgets/ToolWidget.tsx +19 -4
  453. package/src/components/ChatThread/widgets/defaults.ts +8 -0
  454. package/src/components/ChatThread/widgets/index.ts +1 -2
  455. package/src/components/ProcessTree/ProcessTree.stories.tsx +13 -39
  456. package/src/components/ProcessTree/ProcessTree.tsx +101 -67
  457. package/src/components/RoutineProperties/RoutineProperties.stories.tsx +59 -0
  458. package/src/components/RoutineProperties/RoutineProperties.tsx +23 -0
  459. package/src/components/RoutineProperties/index.ts +5 -0
  460. package/src/components/TaskList/TaskList.stories.tsx +44 -0
  461. package/src/components/TaskList/TaskList.tsx +45 -0
  462. package/src/{cli → components/TaskList}/index.ts +1 -1
  463. package/src/components/TemplateEditor/TemplateEditor.stories.tsx +5 -4
  464. package/src/components/TemplateEditor/TemplateEditor.tsx +11 -9
  465. package/src/components/TemplateEditor/TemplateForm.stories.tsx +6 -9
  466. package/src/components/TemplateEditor/TemplateForm.tsx +52 -73
  467. package/src/components/ToolBlock/ToolBlock.tsx +1 -1
  468. package/src/components/Toolbox/Toolbox.stories.tsx +6 -5
  469. package/src/components/Toolbox/Toolbox.tsx +6 -5
  470. package/src/components/index.ts +3 -0
  471. package/src/containers/AgentArticle/AgentArticle.stories.tsx +19 -15
  472. package/src/containers/AgentArticle/AgentArticle.tsx +37 -48
  473. package/src/containers/AgentProperties/AgentProperties.tsx +19 -103
  474. package/src/containers/BlueprintArticle/BlueprintArticle.tsx +2 -2
  475. package/src/containers/ChatArticle/ChatArticle.stories.tsx +76 -0
  476. package/src/containers/{ChatContainer/ChatContainer.tsx → ChatArticle/ChatArticle.tsx} +30 -17
  477. package/src/containers/ChatArticle/index.ts +5 -0
  478. package/src/containers/ChatCompanion/ChatCompanion.tsx +39 -60
  479. package/src/containers/ChatDialog/ChatDialog.tsx +6 -11
  480. package/src/containers/PlanArticle/PlanArticle.tsx +33 -0
  481. package/src/containers/PlanArticle/index.ts +5 -0
  482. package/src/containers/RoutineArticle/RoutineArticle.stories.tsx +75 -0
  483. package/src/containers/RoutineArticle/RoutineArticle.tsx +109 -0
  484. package/src/containers/RoutineArticle/index.ts +5 -0
  485. package/src/containers/{PromptList/PromptList.stories.tsx → RoutineList/RoutineList.stories.tsx} +13 -12
  486. package/src/containers/{PromptList/PromptList.tsx → RoutineList/RoutineList.tsx} +9 -8
  487. package/src/containers/RoutineList/index.ts +5 -0
  488. package/src/containers/TracePanel/TracePanel.stories.tsx +251 -204
  489. package/src/containers/TracePanel/TracePanel.tsx +172 -72
  490. package/src/containers/TracePanel/dxn-extractor.test.ts +7 -7
  491. package/src/containers/TracePanel/dxn-extractor.ts +25 -35
  492. package/src/containers/TracePanel/testing/index.ts +6 -0
  493. package/src/containers/TracePanel/testing/simulated-agent.ts +114 -0
  494. package/src/containers/TracePanel/testing/snapshot-playback.ts +45 -0
  495. package/src/containers/TriggerStatus/TriggerStatus.tsx +2 -1
  496. package/src/containers/index.ts +6 -5
  497. package/src/execution-graph/SPEC.md +678 -0
  498. package/src/execution-graph/execution-graph.test.ts +799 -0
  499. package/src/execution-graph/execution-graph.ts +714 -0
  500. package/src/execution-graph/index.ts +24 -0
  501. package/src/execution-graph/remote-snapshot.test.ts +116 -0
  502. package/src/execution-graph/span-tree.test.ts +249 -0
  503. package/src/execution-graph/span-tree.ts +259 -0
  504. package/src/execution-graph/testing/collect-trace-events.ts +74 -0
  505. package/src/execution-graph/testing/index.ts +5 -0
  506. package/src/{queue-logger.ts → feed-logger.ts} +39 -25
  507. package/src/hooks/index.ts +2 -0
  508. package/src/hooks/useBlueprintRegistry.ts +62 -46
  509. package/src/hooks/useChatKeymap.ts +52 -0
  510. package/src/hooks/useChatProcessor.ts +30 -14
  511. package/src/hooks/useChatServices.ts +8 -6
  512. package/src/hooks/useChatToolbarActions.ts +87 -89
  513. package/src/hooks/useContextBinder.ts +4 -4
  514. package/src/hooks/useContextObjects.ts +6 -5
  515. package/src/hooks/useDebug.ts +38 -0
  516. package/src/hooks/useFilteredTypes.ts +17 -16
  517. package/src/hooks/useReferencesProvider.ts +7 -15
  518. package/src/index.ts +0 -5
  519. package/src/meta.ts +27 -8
  520. package/src/operations/create-chat.ts +14 -37
  521. package/src/operations/ensure-companion-chat.ts +49 -47
  522. package/src/operations/index.ts +2 -3
  523. package/src/operations/on-create-space.ts +4 -4
  524. package/src/operations/{prompt.test.ts → prompt.node.test.ts} +24 -23
  525. package/src/operations/resolve-navigation-targets.ts +8 -3
  526. package/src/operations/run-prompt-in-new-chat.ts +86 -86
  527. package/src/operations/set-current-chat.ts +6 -7
  528. package/src/operations/toggle-trace-panel-debug.ts +27 -0
  529. package/src/operations/update-chat-name.ts +4 -4
  530. package/src/plugin.ts +11 -0
  531. package/src/processor/{processor.test.ts → processor.node.test.ts} +6 -6
  532. package/src/processor/processor.ts +112 -33
  533. package/src/testing/data/trace-timeline-multiple.dx.json +1 -0
  534. package/src/testing/data/trace-timeline-remote.dx.json +1 -0
  535. package/src/testing/data/trace-timeline.dx.json +3737 -1200
  536. package/src/testing/index.ts +2 -0
  537. package/src/testing/snapshot.ts +35 -0
  538. package/src/testing/test-generator.test.ts +42 -52
  539. package/src/testing/test-generator.ts +177 -192
  540. package/src/testing/test-sequence.ts +3 -3
  541. package/src/testing/test-services.ts +1 -1
  542. package/src/testing/test-trace.ts +20 -0
  543. package/src/testing/trace-timeline.node.conversations.json +1 -0
  544. package/src/testing/{trace-timeline.test.ts → trace-timeline.node.test.ts} +44 -49
  545. package/src/testing.ts +9 -0
  546. package/src/translations.ts +34 -37
  547. package/src/types/Assistant.ts +13 -1
  548. package/src/types/AssistantCapabilities.ts +35 -0
  549. package/src/types/AssistantEvents.ts +11 -0
  550. package/src/{operations/definitions.ts → types/AssistantOperation.ts} +57 -20
  551. package/src/types/Settings.ts +68 -7
  552. package/src/types/index.ts +11 -3
  553. package/src/types/service.ts +5 -10
  554. package/src/util/suggestions.test.ts +52 -0
  555. package/src/util/suggestions.ts +42 -0
  556. package/src/vite-env.d.ts +5 -0
  557. package/dist/lib/browser/AssistantSettings-7QMO3LGF.mjs +0 -97
  558. package/dist/lib/browser/AssistantSettings-7QMO3LGF.mjs.map +0 -7
  559. package/dist/lib/browser/chunk-ATHYBVGN.mjs +0 -176
  560. package/dist/lib/browser/chunk-ATHYBVGN.mjs.map +0 -7
  561. package/dist/lib/browser/chunk-EZRS3J25.mjs.map +0 -7
  562. package/dist/lib/browser/chunk-LMVTXH54.mjs +0 -154
  563. package/dist/lib/browser/chunk-LMVTXH54.mjs.map +0 -7
  564. package/dist/lib/browser/cli/index.mjs +0 -74
  565. package/dist/lib/browser/cli/index.mjs.map +0 -7
  566. package/dist/lib/browser/create-chat-LBZHGVSN.mjs +0 -82
  567. package/dist/lib/browser/create-chat-LBZHGVSN.mjs.map +0 -7
  568. package/dist/lib/browser/ensure-companion-chat-ZEZA34MZ.mjs.map +0 -7
  569. package/dist/lib/browser/index.mjs +0 -3446
  570. package/dist/lib/browser/index.mjs.map +0 -7
  571. package/dist/lib/browser/meta.json +0 -1
  572. package/dist/lib/browser/on-create-space-54RNX5JI.mjs.map +0 -7
  573. package/dist/lib/browser/operations/index.mjs +0 -13
  574. package/dist/lib/browser/operations/index.mjs.map +0 -7
  575. package/dist/lib/browser/resolve-navigation-targets-NZOD66NY.mjs.map +0 -7
  576. package/dist/lib/browser/run-prompt-in-new-chat-THLK5YQC.mjs.map +0 -7
  577. package/dist/lib/browser/set-current-chat-LRS3VFSH.mjs.map +0 -7
  578. package/dist/lib/browser/types/index.mjs +0 -20
  579. package/dist/lib/browser/update-chat-name-3Y36KFAS.mjs.map +0 -7
  580. package/dist/lib/node-esm/AssistantSettings-UVUTKO7E.mjs +0 -98
  581. package/dist/lib/node-esm/AssistantSettings-UVUTKO7E.mjs.map +0 -7
  582. package/dist/lib/node-esm/blueprints/index.mjs +0 -9
  583. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +0 -11
  584. package/dist/lib/node-esm/chunk-NZIKC7AN.mjs +0 -32
  585. package/dist/lib/node-esm/chunk-NZIKC7AN.mjs.map +0 -7
  586. package/dist/lib/node-esm/chunk-PXAJSTGZ.mjs +0 -177
  587. package/dist/lib/node-esm/chunk-PXAJSTGZ.mjs.map +0 -7
  588. package/dist/lib/node-esm/chunk-W3JZ2F4T.mjs +0 -155
  589. package/dist/lib/node-esm/chunk-W3JZ2F4T.mjs.map +0 -7
  590. package/dist/lib/node-esm/cli/index.mjs +0 -75
  591. package/dist/lib/node-esm/cli/index.mjs.map +0 -7
  592. package/dist/lib/node-esm/create-chat-3BEG4R6J.mjs +0 -83
  593. package/dist/lib/node-esm/create-chat-3BEG4R6J.mjs.map +0 -7
  594. package/dist/lib/node-esm/ensure-companion-chat-6K2WEWFP.mjs +0 -66
  595. package/dist/lib/node-esm/ensure-companion-chat-6K2WEWFP.mjs.map +0 -7
  596. package/dist/lib/node-esm/index.mjs +0 -3447
  597. package/dist/lib/node-esm/index.mjs.map +0 -7
  598. package/dist/lib/node-esm/meta.json +0 -1
  599. package/dist/lib/node-esm/on-create-space-YRPZ6HZY.mjs +0 -23
  600. package/dist/lib/node-esm/on-create-space-YRPZ6HZY.mjs.map +0 -7
  601. package/dist/lib/node-esm/operations/index.mjs +0 -14
  602. package/dist/lib/node-esm/operations/index.mjs.map +0 -7
  603. package/dist/lib/node-esm/resolve-navigation-targets-3PPK7XLH.mjs +0 -23
  604. package/dist/lib/node-esm/resolve-navigation-targets-3PPK7XLH.mjs.map +0 -7
  605. package/dist/lib/node-esm/run-prompt-in-new-chat-OUYKCMQ7.mjs +0 -137
  606. package/dist/lib/node-esm/run-prompt-in-new-chat-OUYKCMQ7.mjs.map +0 -7
  607. package/dist/lib/node-esm/set-current-chat-SMXZJD3F.mjs +0 -55
  608. package/dist/lib/node-esm/set-current-chat-SMXZJD3F.mjs.map +0 -7
  609. package/dist/lib/node-esm/types/index.mjs +0 -21
  610. package/dist/lib/node-esm/update-chat-name-HM2P4NSI.mjs +0 -72
  611. package/dist/lib/node-esm/update-chat-name-HM2P4NSI.mjs.map +0 -7
  612. package/dist/types/src/blueprints/assistant/blueprint.test.d.ts +0 -2
  613. package/dist/types/src/blueprints/assistant/blueprint.test.d.ts.map +0 -1
  614. package/dist/types/src/cli/index.d.ts +0 -2
  615. package/dist/types/src/cli/index.d.ts.map +0 -1
  616. package/dist/types/src/cli/plugin.d.ts +0 -10
  617. package/dist/types/src/cli/plugin.d.ts.map +0 -1
  618. package/dist/types/src/components/ChatProgress/ChatProgress.d.ts +0 -10
  619. package/dist/types/src/components/ChatProgress/ChatProgress.d.ts.map +0 -1
  620. package/dist/types/src/components/ChatProgress/index.d.ts +0 -2
  621. package/dist/types/src/components/ChatProgress/index.d.ts.map +0 -1
  622. package/dist/types/src/components/ChatThread/widgets/PromptWidget.d.ts +0 -15
  623. package/dist/types/src/components/ChatThread/widgets/PromptWidget.d.ts.map +0 -1
  624. package/dist/types/src/containers/AgentProperties/AgentProperties.stories.d.ts.map +0 -1
  625. package/dist/types/src/containers/ChatContainer/ChatContainer.d.ts.map +0 -1
  626. package/dist/types/src/containers/ChatContainer/index.d.ts +0 -2
  627. package/dist/types/src/containers/ChatContainer/index.d.ts.map +0 -1
  628. package/dist/types/src/containers/PromptArticle/PromptArticle.d.ts +0 -6
  629. package/dist/types/src/containers/PromptArticle/PromptArticle.d.ts.map +0 -1
  630. package/dist/types/src/containers/PromptArticle/index.d.ts +0 -2
  631. package/dist/types/src/containers/PromptArticle/index.d.ts.map +0 -1
  632. package/dist/types/src/containers/PromptList/PromptList.d.ts +0 -6
  633. package/dist/types/src/containers/PromptList/PromptList.d.ts.map +0 -1
  634. package/dist/types/src/containers/PromptList/PromptList.stories.d.ts.map +0 -1
  635. package/dist/types/src/containers/PromptList/index.d.ts +0 -2
  636. package/dist/types/src/containers/PromptList/index.d.ts.map +0 -1
  637. package/dist/types/src/containers/TracePanel/execution-graph.d.ts +0 -17
  638. package/dist/types/src/containers/TracePanel/execution-graph.d.ts.map +0 -1
  639. package/dist/types/src/operations/definitions.d.ts.map +0 -1
  640. package/dist/types/src/operations/prompt.test.d.ts +0 -2
  641. package/dist/types/src/operations/prompt.test.d.ts.map +0 -1
  642. package/dist/types/src/processor/processor.test.d.ts +0 -2
  643. package/dist/types/src/processor/processor.test.d.ts.map +0 -1
  644. package/dist/types/src/queue-logger.d.ts +0 -11
  645. package/dist/types/src/queue-logger.d.ts.map +0 -1
  646. package/dist/types/src/testing/trace-timeline.test.d.ts +0 -2
  647. package/dist/types/src/testing/trace-timeline.test.d.ts.map +0 -1
  648. package/dist/types/src/types/capabilities.d.ts +0 -32
  649. package/dist/types/src/types/capabilities.d.ts.map +0 -1
  650. package/dist/types/src/types/defs.d.ts +0 -2
  651. package/dist/types/src/types/defs.d.ts.map +0 -1
  652. package/dist/types/src/types/events.d.ts +0 -5
  653. package/dist/types/src/types/events.d.ts.map +0 -1
  654. package/src/AssistantPlugin.tsx +0 -238
  655. package/src/cli/plugin.ts +0 -84
  656. package/src/components/ChatProgress/ChatProgress.tsx +0 -56
  657. package/src/components/ChatProgress/index.ts +0 -5
  658. package/src/components/ChatThread/widgets/PromptWidget.ts +0 -30
  659. package/src/containers/AgentProperties/AgentProperties.stories.tsx +0 -100
  660. package/src/containers/ChatContainer/index.ts +0 -5
  661. package/src/containers/PromptArticle/PromptArticle.tsx +0 -59
  662. package/src/containers/PromptArticle/index.ts +0 -5
  663. package/src/containers/PromptList/index.ts +0 -5
  664. package/src/containers/TracePanel/execution-graph.ts +0 -452
  665. package/src/testing/trace-timeline.conversations.json +0 -1
  666. package/src/types/capabilities.ts +0 -35
  667. package/src/types/defs.ts +0 -5
  668. package/src/types/events.ts +0 -11
  669. /package/dist/lib/{browser/blueprints/index.mjs.map → neutral/AssistantPlugin.mjs.map} +0 -0
  670. /package/dist/lib/{browser/chunk-J5LGTIGS.mjs.map → neutral/ChatArticle-PWD4OEFZ.mjs.map} +0 -0
  671. /package/dist/lib/{browser/types → neutral/blueprints}/index.mjs.map +0 -0
  672. /package/dist/lib/{browser → neutral}/chunk-J5LGTIGS.mjs +0 -0
  673. /package/dist/lib/{node-esm/blueprints/index.mjs.map → neutral/chunk-J5LGTIGS.mjs.map} +0 -0
  674. /package/dist/lib/{node-esm/types → neutral}/index.mjs.map +0 -0
  675. /package/dist/lib/{node-esm/chunk-HSLMI22Q.mjs.map → neutral/meta.mjs.map} +0 -0
@@ -0,0 +1,93 @@
1
+ import "./chunk-J5LGTIGS.mjs";
2
+
3
+ // src/containers/TriggerStatus/TriggerStatus.tsx
4
+ import React, { useMemo } from "react";
5
+ import { useTriggerRuntimeControls } from "@dxos/plugin-automation/hooks";
6
+ import { StatusBar } from "@dxos/plugin-status-bar/components";
7
+ import { useObject } from "@dxos/react-client/echo";
8
+ import { IconButton, Popover, useTranslation } from "@dxos/react-ui";
9
+ import { meta } from "#meta";
10
+ var getIcon = (state) => {
11
+ switch (state) {
12
+ case "disabled":
13
+ return "ph--lightning-slash--regular";
14
+ case "idle":
15
+ return "ph--lightning--regular";
16
+ case "edge":
17
+ return "ph--lightning--regular";
18
+ case "running":
19
+ return "ph--lightning--fill";
20
+ case "error":
21
+ return "ph--warning--regular";
22
+ }
23
+ };
24
+ var getIconClassNames = (state) => {
25
+ switch (state) {
26
+ case "running":
27
+ return "animate-pulse text-accent-text";
28
+ case "error":
29
+ return "text-error-text";
30
+ default:
31
+ return void 0;
32
+ }
33
+ };
34
+ var SpaceStatus = ({ space }) => {
35
+ const { t } = useTranslation(meta.id);
36
+ const { state } = useTriggerRuntimeControls(space.db);
37
+ const isEnabled = state?.enabled ?? false;
38
+ const [properties] = useObject(space.properties);
39
+ const computeEnvironment = properties.computeEnvironment ?? "local";
40
+ const triggerState = useMemo(() => {
41
+ if (computeEnvironment === "edge") {
42
+ return "edge";
43
+ }
44
+ if (!isEnabled) {
45
+ return "disabled";
46
+ }
47
+ const hasPending = state?.invocations.some((invocation) => invocation.result === null);
48
+ if (hasPending) {
49
+ return "running";
50
+ }
51
+ const lastInvocation = state?.invocations.at(-1);
52
+ if (lastInvocation?.result?._tag === "Failure") {
53
+ return "error";
54
+ }
55
+ return "idle";
56
+ }, [
57
+ computeEnvironment,
58
+ isEnabled,
59
+ state?.invocations
60
+ ]);
61
+ return /* @__PURE__ */ React.createElement(Popover.Root, null, /* @__PURE__ */ React.createElement(Popover.Trigger, {
62
+ asChild: true
63
+ }, /* @__PURE__ */ React.createElement(StatusBar.Item, null, /* @__PURE__ */ React.createElement(IconButton, {
64
+ variant: "ghost",
65
+ icon: getIcon(triggerState),
66
+ iconOnly: true,
67
+ label: t(`trigger-status-${triggerState}.label`),
68
+ classNames: getIconClassNames(triggerState)
69
+ }))), /* @__PURE__ */ React.createElement(Popover.Portal, null, /* @__PURE__ */ React.createElement(Popover.Content, {
70
+ side: "left"
71
+ }, /* @__PURE__ */ React.createElement(TriggerStatusPopover, {
72
+ state: triggerState,
73
+ currentFunctionName: state?.invocations.at(-1)?.function?.meta.name ?? state?.invocations.at(-1)?.function?.meta.key,
74
+ lastInvocation: state?.invocations.at(-1)
75
+ }), /* @__PURE__ */ React.createElement(Popover.Arrow, null))));
76
+ };
77
+ var TriggerStatusPopover = ({ state, currentFunctionName, lastInvocation }) => {
78
+ const { t } = useTranslation(meta.id);
79
+ return /* @__PURE__ */ React.createElement("div", {
80
+ className: "flex flex-col gap-2 p-2 w-[240px]"
81
+ }, /* @__PURE__ */ React.createElement("div", {
82
+ className: "flex flex-col gap-1"
83
+ }, /* @__PURE__ */ React.createElement("div", {
84
+ className: "text-sm"
85
+ }, t(`trigger-status-${state}.label`)), currentFunctionName && state === "running" && /* @__PURE__ */ React.createElement("div", {
86
+ className: "text-xs text-description"
87
+ }, currentFunctionName)));
88
+ };
89
+ export {
90
+ SpaceStatus,
91
+ SpaceStatus as default
92
+ };
93
+ //# sourceMappingURL=TriggerStatus-X7Y5JFZJ.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/containers/TriggerStatus/TriggerStatus.tsx"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React, { useMemo } from 'react';\n\nimport { AppSurface } from '@dxos/app-toolkit/ui';\nimport { type InvocationsState } from '@dxos/functions-runtime';\nimport { useTriggerRuntimeControls } from '@dxos/plugin-automation/hooks';\nimport { StatusBar } from '@dxos/plugin-status-bar/components';\nimport { useObject } from '@dxos/react-client/echo';\nimport { IconButton, Popover, useTranslation } from '@dxos/react-ui';\n\nimport { meta } from '#meta';\n\ntype TriggerStatusState = 'disabled' | 'idle' | 'running' | 'edge' | 'error';\n\nconst getIcon = (state: TriggerStatusState): string => {\n switch (state) {\n case 'disabled':\n return 'ph--lightning-slash--regular';\n case 'idle':\n return 'ph--lightning--regular';\n case 'edge':\n return 'ph--lightning--regular';\n case 'running':\n return 'ph--lightning--fill';\n case 'error':\n return 'ph--warning--regular';\n }\n};\n\nconst getIconClassNames = (state: TriggerStatusState): string | undefined => {\n switch (state) {\n case 'running':\n return 'animate-pulse text-accent-text';\n case 'error':\n return 'text-error-text';\n default:\n return undefined;\n }\n};\n\nexport type SpaceStatusProps = AppSurface.SpaceArticleProps;\n\nexport const SpaceStatus = ({ space }: SpaceStatusProps) => {\n const { t } = useTranslation(meta.id);\n const { state } = useTriggerRuntimeControls(space.db);\n const isEnabled = state?.enabled ?? false;\n const [properties] = useObject(space.properties);\n const computeEnvironment = properties.computeEnvironment ?? 'local';\n\n // Determine the current trigger status state.\n const triggerState: TriggerStatusState = useMemo(() => {\n if (computeEnvironment === 'edge') {\n return 'edge';\n }\n\n if (!isEnabled) {\n return 'disabled';\n }\n\n // Check if there's any pending invocation.\n const hasPending = state?.invocations.some((invocation) => invocation.result === null);\n if (hasPending) {\n return 'running';\n }\n\n // Check if the last invocation failed.\n const lastInvocation = state?.invocations.at(-1);\n if (lastInvocation?.result?._tag === 'Failure') {\n return 'error';\n }\n\n return 'idle';\n }, [computeEnvironment, isEnabled, state?.invocations]);\n\n return (\n <Popover.Root>\n <Popover.Trigger asChild>\n <StatusBar.Item>\n <IconButton\n variant='ghost'\n icon={getIcon(triggerState)}\n iconOnly\n label={t(`trigger-status-${triggerState}.label`)}\n classNames={getIconClassNames(triggerState)}\n />\n </StatusBar.Item>\n </Popover.Trigger>\n <Popover.Portal>\n <Popover.Content side='left'>\n <TriggerStatusPopover\n state={triggerState}\n currentFunctionName={\n state?.invocations.at(-1)?.function?.meta.name ?? state?.invocations.at(-1)?.function?.meta.key\n }\n lastInvocation={state?.invocations.at(-1)}\n />\n <Popover.Arrow />\n </Popover.Content>\n </Popover.Portal>\n </Popover.Root>\n );\n};\n\ntype TriggerStatusPopoverProps = {\n state: TriggerStatusState;\n currentFunctionName?: string;\n lastInvocation?: InvocationsState;\n};\n\nconst TriggerStatusPopover = ({\n state,\n currentFunctionName,\n lastInvocation, // TODO(burdon): Show.\n}: TriggerStatusPopoverProps) => {\n const { t } = useTranslation(meta.id);\n\n return (\n <div className='flex flex-col gap-2 p-2 w-[240px]'>\n <div className='flex flex-col gap-1'>\n <div className='text-sm'>{t(`trigger-status-${state}.label`)}</div>\n {currentFunctionName && state === 'running' && (\n <div className='text-xs text-description'>{currentFunctionName}</div>\n )}\n </div>\n </div>\n );\n};\n"],
5
+ "mappings": ";;;AAIA,OAAOA,SAASC,eAAe;AAI/B,SAASC,iCAAiC;AAC1C,SAASC,iBAAiB;AAC1B,SAASC,iBAAiB;AAC1B,SAASC,YAAYC,SAASC,sBAAsB;AAEpD,SAASC,YAAY;AAIrB,IAAMC,UAAU,CAACC,UAAAA;AACf,UAAQA,OAAAA;IACN,KAAK;AACH,aAAO;IACT,KAAK;AACH,aAAO;IACT,KAAK;AACH,aAAO;IACT,KAAK;AACH,aAAO;IACT,KAAK;AACH,aAAO;EACX;AACF;AAEA,IAAMC,oBAAoB,CAACD,UAAAA;AACzB,UAAQA,OAAAA;IACN,KAAK;AACH,aAAO;IACT,KAAK;AACH,aAAO;IACT;AACE,aAAOE;EACX;AACF;AAIO,IAAMC,cAAc,CAAC,EAAEC,MAAK,MAAoB;AACrD,QAAM,EAAEC,EAAC,IAAKR,eAAeC,KAAKQ,EAAE;AACpC,QAAM,EAAEN,MAAK,IAAKR,0BAA0BY,MAAMG,EAAE;AACpD,QAAMC,YAAYR,OAAOS,WAAW;AACpC,QAAM,CAACC,UAAAA,IAAchB,UAAUU,MAAMM,UAAU;AAC/C,QAAMC,qBAAqBD,WAAWC,sBAAsB;AAG5D,QAAMC,eAAmCrB,QAAQ,MAAA;AAC/C,QAAIoB,uBAAuB,QAAQ;AACjC,aAAO;IACT;AAEA,QAAI,CAACH,WAAW;AACd,aAAO;IACT;AAGA,UAAMK,aAAab,OAAOc,YAAYC,KAAK,CAACC,eAAeA,WAAWC,WAAW,IAAA;AACjF,QAAIJ,YAAY;AACd,aAAO;IACT;AAGA,UAAMK,iBAAiBlB,OAAOc,YAAYK,GAAG,EAAC;AAC9C,QAAID,gBAAgBD,QAAQG,SAAS,WAAW;AAC9C,aAAO;IACT;AAEA,WAAO;EACT,GAAG;IAACT;IAAoBH;IAAWR,OAAOc;GAAY;AAEtD,SACE,sBAAA,cAAClB,QAAQyB,MAAI,MACX,sBAAA,cAACzB,QAAQ0B,SAAO;IAACC,SAAAA;KACf,sBAAA,cAAC9B,UAAU+B,MAAI,MACb,sBAAA,cAAC7B,YAAAA;IACC8B,SAAQ;IACRC,MAAM3B,QAAQa,YAAAA;IACde,UAAAA;IACAC,OAAOvB,EAAE,kBAAkBO,YAAAA,QAAoB;IAC/CiB,YAAY5B,kBAAkBW,YAAAA;QAIpC,sBAAA,cAAChB,QAAQkC,QAAM,MACb,sBAAA,cAAClC,QAAQmC,SAAO;IAACC,MAAK;KACpB,sBAAA,cAACC,sBAAAA;IACCjC,OAAOY;IACPsB,qBACElC,OAAOc,YAAYK,GAAG,EAAC,GAAIgB,UAAUrC,KAAKsC,QAAQpC,OAAOc,YAAYK,GAAG,EAAC,GAAIgB,UAAUrC,KAAKuC;IAE9FnB,gBAAgBlB,OAAOc,YAAYK,GAAG,EAAC;MAEzC,sBAAA,cAACvB,QAAQ0C,OAAK,IAAA,CAAA,CAAA,CAAA;AAKxB;AAQA,IAAML,uBAAuB,CAAC,EAC5BjC,OACAkC,qBACAhB,eAAc,MACY;AAC1B,QAAM,EAAEb,EAAC,IAAKR,eAAeC,KAAKQ,EAAE;AAEpC,SACE,sBAAA,cAACiC,OAAAA;IAAIC,WAAU;KACb,sBAAA,cAACD,OAAAA;IAAIC,WAAU;KACb,sBAAA,cAACD,OAAAA;IAAIC,WAAU;KAAWnC,EAAE,kBAAkBL,KAAAA,QAAa,CAAA,GAC1DkC,uBAAuBlC,UAAU,aAChC,sBAAA,cAACuC,OAAAA;IAAIC,WAAU;KAA4BN,mBAAAA,CAAAA,CAAAA;AAKrD;",
6
+ "names": ["React", "useMemo", "useTriggerRuntimeControls", "StatusBar", "useObject", "IconButton", "Popover", "useTranslation", "meta", "getIcon", "state", "getIconClassNames", "undefined", "SpaceStatus", "space", "t", "id", "db", "isEnabled", "enabled", "properties", "computeEnvironment", "triggerState", "hasPending", "invocations", "some", "invocation", "result", "lastInvocation", "at", "_tag", "Root", "Trigger", "asChild", "Item", "variant", "icon", "iconOnly", "label", "classNames", "Portal", "Content", "side", "TriggerStatusPopover", "currentFunctionName", "function", "name", "key", "Arrow", "div", "className"]
7
+ }
@@ -0,0 +1,42 @@
1
+ import "./chunk-J5LGTIGS.mjs";
2
+
3
+ // src/capabilities/ai-context.ts
4
+ import * as Effect from "effect/Effect";
5
+ import * as Layer from "effect/Layer";
6
+ import { Capabilities, Capability } from "@dxos/app-framework";
7
+ import { AiContext } from "@dxos/assistant";
8
+ import { LayerSpec, ServiceNotAvailableError } from "@dxos/compute";
9
+ import { Database, EID, Feed } from "@dxos/echo";
10
+ import { acquireReleaseResource } from "@dxos/effect";
11
+ var AiContextSpec = LayerSpec.make({
12
+ affinity: "process",
13
+ requires: [
14
+ Database.Service,
15
+ Feed.FeedService
16
+ ],
17
+ provides: [
18
+ AiContext.Service
19
+ ]
20
+ }, (context) => Layer.scoped(AiContext.Service, Effect.gen(function* () {
21
+ if (!context.conversation) {
22
+ return yield* Effect.die(new ServiceNotAvailableError(AiContext.Service.key, {
23
+ message: `Service not available: ${AiContext.Service.key} \u2014 process spawn is missing 'conversation' in environment (set via Operation.withInvocationOptions or ProcessManager.spawn environment)`
24
+ }));
25
+ }
26
+ const feed = yield* Database.resolve(EID.parse(context.conversation), Feed.Feed).pipe(Effect.orDie);
27
+ const runtime2 = yield* Effect.runtime();
28
+ const binder = yield* acquireReleaseResource(() => new AiContext.Binder({
29
+ feed,
30
+ runtime: runtime2
31
+ }));
32
+ return {
33
+ binder
34
+ };
35
+ })));
36
+ var ai_context_default = Capability.makeModule(() => Effect.succeed([
37
+ Capability.contributes(Capabilities.LayerSpec, AiContextSpec)
38
+ ]));
39
+ export {
40
+ ai_context_default as default
41
+ };
42
+ //# sourceMappingURL=ai-context-IABBIEHG.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/ai-context.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2026 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport * as Layer from 'effect/Layer';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { AiContext } from '@dxos/assistant';\nimport { LayerSpec, ServiceNotAvailableError } from '@dxos/compute';\nimport { Database, EID, Feed } from '@dxos/echo';\nimport { acquireReleaseResource } from '@dxos/effect';\n\n//\n// Capability Module\n//\n// Contributes a process-affinity `LayerSpec` that materialises\n// {@link AiContext.Service} from the resolution context's `conversation` DXN.\n//\n// Previously, `AiContext.Service` was provided only inline by the assistant\n// plugin processor and by `AiSession.createRequest`. That works while the\n// formatting code runs inside the calling fiber, but breaks the moment any\n// nested call crosses a process boundary via `Operation.invoke` — the spawned\n// process gets its own `ServiceResolver`/`LayerStack` and there is no\n// production provider for `AiContext.Service` to back it.\n//\n// The dispatcher path (trigger → AgentWorker → AiSession.createRequest →\n// formatSystemPrompt → Template.processTemplate → Operation.invoke(GetContext))\n// hits exactly this gap: `GetContext` declares `services: [AiContext.Service,\n// Database.Service]`, the child spawn inherits `space` + `conversation` from\n// the parent's environment (see TriggerDispatcher + Operation.invoke), but\n// then `LayerStack` has nothing to satisfy `AiContext.Service` with.\n//\n// This spec mirrors the test-layer factory in\n// `@dxos/functions-runtime/testing` so the production resolver behaves the\n// same way: load the conversation feed via `Database.Service`, hand it to an\n// `AiContext.Binder`, and scope the binder to the process slice's lifetime.\n//\n\n/**\n * Process-affinity LayerSpec for {@link AiContext.Service}.\n *\n * The factory runs once per process slice (keyed on space + conversation +\n * process id). If `context.conversation` is absent the slice fails with a\n * `ServiceNotAvailable` defect — there is no useful binder to build without\n * a conversation feed, and a precise error at slice init beats a silent\n * binder that throws on first use.\n */\nconst AiContextSpec = LayerSpec.make(\n {\n affinity: 'process',\n requires: [Database.Service, Feed.FeedService],\n provides: [AiContext.Service],\n },\n (context) =>\n Layer.scoped(\n AiContext.Service,\n Effect.gen(function* () {\n // The spec is registered unconditionally so the LayerStack knows how\n // to satisfy `AiContext.Service` in principle. Surface a precise\n // failure when the conversation context is missing — this happens\n // when an operation that requires `AiContext.Service` is invoked\n // without going through `Operation.withInvocationOptions({\n // conversation })` (or equivalent spawn `environment`). Raised as a\n // defect because the spec's factory must produce\n // `Layer<..., never, ...>`; the trigger dispatcher's `causeToError`\n // path still surfaces the original message in logs.\n if (!context.conversation) {\n return yield* Effect.die(\n new ServiceNotAvailableError(AiContext.Service.key, {\n message: `Service not available: ${AiContext.Service.key} — process spawn is missing 'conversation' in environment (set via Operation.withInvocationOptions or ProcessManager.spawn environment)`,\n }),\n );\n }\n const feed = yield* Database.resolve(EID.parse(context.conversation), Feed.Feed).pipe(Effect.orDie);\n const runtime = yield* Effect.runtime<Feed.FeedService>();\n const binder = yield* acquireReleaseResource(() => new AiContext.Binder({ feed, runtime }));\n return { binder };\n }),\n ),\n);\n\nexport default Capability.makeModule(() =>\n Effect.succeed([Capability.contributes(Capabilities.LayerSpec, AiContextSpec)]),\n);\n"],
5
+ "mappings": ";;;AAIA,YAAYA,YAAY;AACxB,YAAYC,WAAW;AAEvB,SAASC,cAAcC,kBAAkB;AACzC,SAASC,iBAAiB;AAC1B,SAASC,WAAWC,gCAAgC;AACpD,SAASC,UAAUC,KAAKC,YAAY;AACpC,SAASC,8BAA8B;AAqCvC,IAAMC,gBAAgBN,UAAUO,KAC9B;EACEC,UAAU;EACVC,UAAU;IAACP,SAASQ;IAASN,KAAKO;;EAClCC,UAAU;IAACb,UAAUW;;AACvB,GACA,CAACG,YACOC,aACJf,UAAUW,SACHK,WAAI,aAAA;AAUT,MAAI,CAACF,QAAQG,cAAc;AACzB,WAAO,OAAcC,WACnB,IAAIhB,yBAAyBF,UAAUW,QAAQQ,KAAK;MAClDC,SAAS,0BAA0BpB,UAAUW,QAAQQ,GAAG;IAC1D,CAAA,CAAA;EAEJ;AACA,QAAME,OAAO,OAAOlB,SAASmB,QAAQlB,IAAImB,MAAMT,QAAQG,YAAY,GAAGZ,KAAKA,IAAI,EAAEmB,KAAYC,YAAK;AAClG,QAAMC,WAAU,OAAcA,eAAO;AACrC,QAAMC,SAAS,OAAOrB,uBAAuB,MAAM,IAAIN,UAAU4B,OAAO;IAAEP;IAAMK,SAAAA;EAAQ,CAAA,CAAA;AACxF,SAAO;IAAEC;EAAO;AAClB,CAAA,CAAA,CAAA;AAIN,IAAA,qBAAe5B,WAAW8B,WAAW,MAC5BC,eAAQ;EAAC/B,WAAWgC,YAAYjC,aAAaG,WAAWM,aAAAA;CAAe,CAAA;",
6
+ "names": ["Effect", "Layer", "Capabilities", "Capability", "AiContext", "LayerSpec", "ServiceNotAvailableError", "Database", "EID", "Feed", "acquireReleaseResource", "AiContextSpec", "make", "affinity", "requires", "Service", "FeedService", "provides", "context", "scoped", "gen", "conversation", "die", "key", "message", "feed", "resolve", "parse", "pipe", "orDie", "runtime", "binder", "Binder", "makeModule", "succeed", "contributes"]
7
+ }
@@ -0,0 +1,42 @@
1
+ import "./chunk-J5LGTIGS.mjs";
2
+
3
+ // src/capabilities/ai-service.ts
4
+ import * as Context from "effect/Context";
5
+ import * as Effect from "effect/Effect";
6
+ import * as Layer from "effect/Layer";
7
+ import { AiModelResolver, AiService } from "@dxos/ai";
8
+ import { Capabilities, Capability } from "@dxos/app-framework";
9
+ import { AppCapabilities } from "@dxos/app-toolkit";
10
+ import { LayerSpec } from "@dxos/compute";
11
+ var ai_service_default = Capability.makeModule(Effect.fnUntraced(function* (options) {
12
+ const resolvers = yield* Capability.getAll(AppCapabilities.AiModelResolver);
13
+ const combinedLayer = resolvers.reduce((acc, resolver) => resolver.pipe(Layer.provide(acc)), AiModelResolver.AiModelResolver.fromModelMap({
14
+ name: "Fallback"
15
+ }, Effect.succeed({})));
16
+ let aiServiceLayer = AiModelResolver.AiModelResolver.buildAiService.pipe(Layer.provide(combinedLayer));
17
+ const aiServiceMiddleware = options?.aiServiceMiddleware;
18
+ if (aiServiceMiddleware) {
19
+ aiServiceLayer = aiServiceLayer.pipe(Layer.map((context) => {
20
+ const aiService = Context.get(context, AiService.AiService);
21
+ return Context.make(AiService.AiService, aiServiceMiddleware(aiService));
22
+ }));
23
+ }
24
+ const aiServiceSpec = LayerSpec.make({
25
+ affinity: "application",
26
+ requires: [],
27
+ provides: [
28
+ AiService.AiService
29
+ ]
30
+ }, () => aiServiceLayer);
31
+ return [
32
+ // Deprecated: `AppCapabilities.AiServiceLayer` is retained for non-process-manager
33
+ // call sites (e.g. legacy CLI paths). New consumers should resolve `AiService.AiService`
34
+ // through the process manager runtime via the `LayerSpec` contribution below.
35
+ Capability.contributes(AppCapabilities.AiServiceLayer, aiServiceLayer),
36
+ Capability.contributes(Capabilities.LayerSpec, aiServiceSpec)
37
+ ];
38
+ }));
39
+ export {
40
+ ai_service_default as default
41
+ };
42
+ //# sourceMappingURL=ai-service-3SH2UQIR.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/ai-service.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport * as Context from 'effect/Context';\nimport * as Effect from 'effect/Effect';\nimport * as Layer from 'effect/Layer';\n\nimport { AiModelResolver, AiService } from '@dxos/ai';\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { AppCapabilities } from '@dxos/app-toolkit';\nimport { LayerSpec } from '@dxos/compute';\n\nimport type { AssistantPluginOptions } from '#types';\n\nexport default Capability.makeModule<AssistantPluginOptions | void, Capability.Any[]>(\n Effect.fnUntraced(function* (options) {\n const resolvers = yield* Capability.getAll(AppCapabilities.AiModelResolver);\n\n // TODO(dmaretskyi): Extract function to reduce them.\n const combinedLayer = resolvers.reduce(\n (acc, resolver) => resolver.pipe(Layer.provide(acc)),\n AiModelResolver.AiModelResolver.fromModelMap({ name: 'Fallback' }, Effect.succeed({})), // Empty resolver as fallback.\n );\n\n let aiServiceLayer: Layer.Layer<AiService.AiService> = AiModelResolver.AiModelResolver.buildAiService.pipe(\n Layer.provide(combinedLayer),\n );\n\n const aiServiceMiddleware = options?.aiServiceMiddleware;\n if (aiServiceMiddleware) {\n aiServiceLayer = aiServiceLayer.pipe(\n Layer.map((context) => {\n const aiService = Context.get(context, AiService.AiService);\n return Context.make(AiService.AiService, aiServiceMiddleware(aiService));\n }),\n );\n }\n\n const aiServiceSpec = LayerSpec.make(\n {\n affinity: 'application',\n requires: [],\n provides: [AiService.AiService],\n },\n () => aiServiceLayer,\n );\n\n return [\n // Deprecated: `AppCapabilities.AiServiceLayer` is retained for non-process-manager\n // call sites (e.g. legacy CLI paths). New consumers should resolve `AiService.AiService`\n // through the process manager runtime via the `LayerSpec` contribution below.\n Capability.contributes(AppCapabilities.AiServiceLayer, aiServiceLayer),\n Capability.contributes(Capabilities.LayerSpec, aiServiceSpec),\n ];\n }),\n);\n"],
5
+ "mappings": ";;;AAIA,YAAYA,aAAa;AACzB,YAAYC,YAAY;AACxB,YAAYC,WAAW;AAEvB,SAASC,iBAAiBC,iBAAiB;AAC3C,SAASC,cAAcC,kBAAkB;AACzC,SAASC,uBAAuB;AAChC,SAASC,iBAAiB;AAI1B,IAAA,qBAAeF,WAAWG,WACjBC,kBAAW,WAAWC,SAAO;AAClC,QAAMC,YAAY,OAAON,WAAWO,OAAON,gBAAgBJ,eAAe;AAG1E,QAAMW,gBAAgBF,UAAUG,OAC9B,CAACC,KAAKC,aAAaA,SAASC,KAAWC,cAAQH,GAAAA,CAAAA,GAC/Cb,gBAAgBA,gBAAgBiB,aAAa;IAAEC,MAAM;EAAW,GAAUC,eAAQ,CAAC,CAAA,CAAA,CAAA;AAGrF,MAAIC,iBAAmDpB,gBAAgBA,gBAAgBqB,eAAeN,KAC9FC,cAAQL,aAAAA,CAAAA;AAGhB,QAAMW,sBAAsBd,SAASc;AACrC,MAAIA,qBAAqB;AACvBF,qBAAiBA,eAAeL,KACxBQ,UAAI,CAACC,YAAAA;AACT,YAAMC,YAAoBC,YAAIF,SAASvB,UAAUA,SAAS;AAC1D,aAAe0B,aAAK1B,UAAUA,WAAWqB,oBAAoBG,SAAAA,CAAAA;IAC/D,CAAA,CAAA;EAEJ;AAEA,QAAMG,gBAAgBvB,UAAUsB,KAC9B;IACEE,UAAU;IACVC,UAAU,CAAA;IACVC,UAAU;MAAC9B,UAAUA;;EACvB,GACA,MAAMmB,cAAAA;AAGR,SAAO;;;;IAILjB,WAAW6B,YAAY5B,gBAAgB6B,gBAAgBb,cAAAA;IACvDjB,WAAW6B,YAAY9B,aAAaG,WAAWuB,aAAAA;;AAEnD,CAAA,CAAA;",
6
+ "names": ["Context", "Effect", "Layer", "AiModelResolver", "AiService", "Capabilities", "Capability", "AppCapabilities", "LayerSpec", "makeModule", "fnUntraced", "options", "resolvers", "getAll", "combinedLayer", "reduce", "acc", "resolver", "pipe", "provide", "fromModelMap", "name", "succeed", "aiServiceLayer", "buildAiService", "aiServiceMiddleware", "map", "context", "aiService", "get", "make", "aiServiceSpec", "affinity", "requires", "provides", "contributes", "AiServiceLayer"]
7
+ }
@@ -0,0 +1,199 @@
1
+ import "./chunk-J5LGTIGS.mjs";
2
+
3
+ // src/capabilities/app-graph-builder.ts
4
+ import * as Effect from "effect/Effect";
5
+ import { pipe } from "effect/Function";
6
+ import * as Option from "effect/Option";
7
+ import { Capability } from "@dxos/app-framework";
8
+ import { AppCapabilities, AppNode, getActiveSpace, getPersonalSpace } from "@dxos/app-toolkit";
9
+ import { AgentPrompt, Chat } from "@dxos/assistant-toolkit";
10
+ import { Blueprint, Operation, Routine } from "@dxos/compute";
11
+ import { Sequence } from "@dxos/conductor";
12
+ import { DXN, Database, Filter, Obj } from "@dxos/echo";
13
+ import { AtomObj } from "@dxos/echo-atom";
14
+ import { invariant } from "@dxos/invariant";
15
+ import { ClientCapabilities } from "@dxos/plugin-client";
16
+ import { GraphBuilder, Node, NodeMatcher } from "@dxos/plugin-graph";
17
+ import { linkedSegment } from "@dxos/react-ui-attention";
18
+ import { ASSISTANT_COMPANION_VARIANT, meta } from "#meta";
19
+ import { AssistantCapabilities, AssistantOperation } from "#types";
20
+ var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-assistant/src/capabilities/app-graph-builder.ts";
21
+ var computeOperationsToImport = [
22
+ AgentPrompt
23
+ ];
24
+ var whenNonChatObject = NodeMatcher.whenAll(NodeMatcher.whenEchoObject, NodeMatcher.whenNot(NodeMatcher.whenEchoTypeMatches(Chat.Chat)));
25
+ var app_graph_builder_default = Capability.makeModule(Effect.fnUntraced(function* () {
26
+ const capabilities = yield* Capability.Service;
27
+ const extensions = yield* Effect.all([
28
+ GraphBuilder.createTypeExtension({
29
+ id: "root",
30
+ type: Chat.Chat,
31
+ actions: (chat) => {
32
+ return Effect.succeed([
33
+ Node.makeAction({
34
+ id: AssistantOperation.UpdateChatName.meta.key,
35
+ data: () => Effect.gen(function* () {
36
+ const db = Obj.getDatabase(chat);
37
+ invariant(db, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 37, S: this, A: ["db", ""] });
38
+ yield* Operation.invoke(AssistantOperation.UpdateChatName, {
39
+ chat
40
+ }, {
41
+ spaceId: db.spaceId
42
+ });
43
+ }),
44
+ properties: {
45
+ label: [
46
+ "chat-update-name.label",
47
+ {
48
+ ns: meta.id
49
+ }
50
+ ],
51
+ icon: "ph--magic-wand--regular",
52
+ disposition: "list-item"
53
+ }
54
+ })
55
+ ]);
56
+ }
57
+ }),
58
+ GraphBuilder.createExtension({
59
+ id: "assistant",
60
+ match: NodeMatcher.whenRoot,
61
+ actions: () => Effect.succeed([
62
+ Node.makeAction({
63
+ id: "importComputeOperations",
64
+ data: Effect.fnUntraced(function* () {
65
+ const capabilities2 = yield* Capability.Service;
66
+ const client = yield* Capability.get(ClientCapabilities.Client);
67
+ const space = getActiveSpace(client, capabilities2) ?? getPersonalSpace(client);
68
+ if (!space) {
69
+ return;
70
+ }
71
+ for (const definition of computeOperationsToImport) {
72
+ const key = definition.meta.key;
73
+ if (!key) {
74
+ continue;
75
+ }
76
+ const existing = yield* Effect.promise(() => space.db.query(Filter.and(Filter.type(Operation.PersistentOperation), Filter.key(key))).run());
77
+ if (existing.length === 0) {
78
+ space.db.add(Operation.serialize(definition));
79
+ }
80
+ }
81
+ yield* Database.flush();
82
+ }),
83
+ properties: {
84
+ label: [
85
+ "import-compute-operations.label",
86
+ {
87
+ ns: meta.id
88
+ }
89
+ ],
90
+ icon: "ph--download-simple--regular"
91
+ }
92
+ }),
93
+ Node.makeAction({
94
+ id: AssistantOperation.ToggleTracePanelDebug.meta.key,
95
+ data: () => Operation.invoke(AssistantOperation.ToggleTracePanelDebug, {}),
96
+ properties: {
97
+ label: [
98
+ "toggle-trace-panel-debug.label",
99
+ {
100
+ ns: meta.id
101
+ }
102
+ ],
103
+ icon: "ph--brackets-curly--regular"
104
+ }
105
+ }),
106
+ Node.makeAction({
107
+ id: "resetBlueprints",
108
+ data: Effect.fnUntraced(function* () {
109
+ const capabilities2 = yield* Capability.Service;
110
+ const client = yield* Capability.get(ClientCapabilities.Client);
111
+ const space = getActiveSpace(client, capabilities2) ?? getPersonalSpace(client);
112
+ if (!space) {
113
+ return;
114
+ }
115
+ const blueprints = yield* Effect.promise(() => space.db.query(Filter.type(Blueprint.Blueprint)).run());
116
+ for (const blueprint of blueprints) {
117
+ space.db.remove(blueprint);
118
+ }
119
+ yield* Database.flush();
120
+ }),
121
+ properties: {
122
+ label: [
123
+ "reset-blueprints.label",
124
+ {
125
+ ns: meta.id
126
+ }
127
+ ],
128
+ icon: "ph--arrow-clockwise--regular"
129
+ }
130
+ })
131
+ ])
132
+ }),
133
+ // Don't show assistant companion when a chat is already the primary object.
134
+ GraphBuilder.createExtension({
135
+ id: "companionChat",
136
+ match: whenNonChatObject,
137
+ connector: (object, get) => Effect.gen(function* () {
138
+ const state = get(yield* Capability.get(AssistantCapabilities.State));
139
+ const cache = get(yield* Capability.get(AssistantCapabilities.CompanionChatCache));
140
+ const objectUri = Obj.getURI(object);
141
+ const chat = pipe(Option.fromNullable(state.currentChat[objectUri]), Option.flatMap((dxnStr) => Option.fromNullable(DXN.tryMake(dxnStr))), Option.flatMap((dxn) => Option.fromNullable(Obj.getDatabase(object)?.makeRef(dxn))), Option.map((ref) => get(AtomObj.make(ref))), Option.filter(Obj.isObject), Option.orElse(() => pipe(Option.fromNullable(cache[objectUri]), Option.filter(Obj.isObject))), Option.getOrNull);
142
+ return [
143
+ AppNode.makeCompanion({
144
+ id: linkedSegment(ASSISTANT_COMPANION_VARIANT),
145
+ label: [
146
+ "assistant-chat.label",
147
+ {
148
+ ns: meta.id
149
+ }
150
+ ],
151
+ icon: "ph--sparkle--regular",
152
+ data: chat,
153
+ position: "first"
154
+ })
155
+ ];
156
+ })
157
+ }),
158
+ GraphBuilder.createExtension({
159
+ id: "invocations",
160
+ match: NodeMatcher.whenAny(NodeMatcher.whenEchoTypeMatches(Sequence.Sequence), NodeMatcher.whenEchoTypeMatches(Routine.Routine)),
161
+ connector: () => Effect.succeed([
162
+ AppNode.makeCompanion({
163
+ id: "invocations",
164
+ label: [
165
+ "invocations.label",
166
+ {
167
+ ns: meta.id
168
+ }
169
+ ],
170
+ icon: "ph--clock-countdown--regular",
171
+ data: "invocations"
172
+ })
173
+ ])
174
+ }),
175
+ GraphBuilder.createExtension({
176
+ id: "trace",
177
+ match: NodeMatcher.whenRoot,
178
+ connector: () => Effect.succeed([
179
+ AppNode.makeDeckCompanion({
180
+ id: linkedSegment("trace"),
181
+ label: [
182
+ "trace.label",
183
+ {
184
+ ns: meta.id
185
+ }
186
+ ],
187
+ icon: "ph--line-segments--regular",
188
+ data: "trace",
189
+ position: "last"
190
+ })
191
+ ])
192
+ })
193
+ ]);
194
+ return Capability.contributes(AppCapabilities.AppGraphBuilder, extensions);
195
+ }));
196
+ export {
197
+ app_graph_builder_default as default
198
+ };
199
+ //# sourceMappingURL=app-graph-builder-RJW5O57E.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/app-graph-builder.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport { pipe } from 'effect/Function';\nimport * as Option from 'effect/Option';\n\nimport { Capability } from '@dxos/app-framework';\nimport { AppCapabilities, AppNode, getActiveSpace, getPersonalSpace } from '@dxos/app-toolkit';\nimport { AgentPrompt, Chat } from '@dxos/assistant-toolkit';\nimport { Blueprint, Operation, Routine } from '@dxos/compute';\nimport { Sequence } from '@dxos/conductor';\nimport { DXN, Database, Filter, Obj, type Ref } from '@dxos/echo';\nimport { AtomObj } from '@dxos/echo-atom';\nimport { invariant } from '@dxos/invariant';\nimport { ClientCapabilities } from '@dxos/plugin-client';\nimport { GraphBuilder, Node, NodeMatcher } from '@dxos/plugin-graph';\nimport { linkedSegment } from '@dxos/react-ui-attention';\n\nimport { ASSISTANT_COMPANION_VARIANT, meta } from '#meta';\nimport { AssistantCapabilities, AssistantOperation } from '#types';\n\n/** Operation definitions to seed as `PersistentOperation` records for automation / triggers. */\nconst computeOperationsToImport = [AgentPrompt] as const;\n\n/** Match ECHO objects that are NOT chats. */\nconst whenNonChatObject = NodeMatcher.whenAll(\n NodeMatcher.whenEchoObject,\n NodeMatcher.whenNot(NodeMatcher.whenEchoTypeMatches(Chat.Chat)),\n);\n\nexport default Capability.makeModule(\n Effect.fnUntraced(function* () {\n const capabilities = yield* Capability.Service;\n\n const extensions = yield* Effect.all([\n GraphBuilder.createTypeExtension({\n id: 'root',\n type: Chat.Chat,\n actions: (chat) => {\n return Effect.succeed([\n Node.makeAction({\n id: AssistantOperation.UpdateChatName.meta.key,\n data: () =>\n Effect.gen(function* () {\n // TODO(dmaretskyi): This goes away when composer will have unified operation invocations.\n const db = Obj.getDatabase(chat);\n invariant(db);\n yield* Operation.invoke(AssistantOperation.UpdateChatName, { chat }, { spaceId: db.spaceId });\n }),\n properties: {\n label: ['chat-update-name.label', { ns: meta.id }],\n icon: 'ph--magic-wand--regular',\n disposition: 'list-item',\n },\n }),\n ]);\n },\n }),\n\n GraphBuilder.createExtension({\n id: 'assistant',\n match: NodeMatcher.whenRoot,\n actions: () =>\n Effect.succeed([\n Node.makeAction({\n id: 'importComputeOperations',\n data: Effect.fnUntraced(function* () {\n const capabilities = yield* Capability.Service;\n const client = yield* Capability.get(ClientCapabilities.Client);\n const space = getActiveSpace(client, capabilities) ?? getPersonalSpace(client);\n if (!space) {\n return;\n }\n for (const definition of computeOperationsToImport) {\n const key = definition.meta.key;\n if (!key) {\n continue;\n }\n const existing = yield* Effect.promise(\n (): Promise<Operation.PersistentOperation[]> =>\n space.db.query(Filter.and(Filter.type(Operation.PersistentOperation), Filter.key(key))).run(),\n );\n if (existing.length === 0) {\n space.db.add(Operation.serialize(definition));\n }\n }\n yield* Database.flush();\n }),\n properties: {\n label: ['import-compute-operations.label', { ns: meta.id }],\n icon: 'ph--download-simple--regular',\n },\n }),\n Node.makeAction({\n id: AssistantOperation.ToggleTracePanelDebug.meta.key,\n data: () => Operation.invoke(AssistantOperation.ToggleTracePanelDebug, {}),\n properties: {\n label: ['toggle-trace-panel-debug.label', { ns: meta.id }],\n icon: 'ph--brackets-curly--regular',\n },\n }),\n Node.makeAction({\n id: 'resetBlueprints',\n data: Effect.fnUntraced(function* () {\n const capabilities = yield* Capability.Service;\n const client = yield* Capability.get(ClientCapabilities.Client);\n const space = getActiveSpace(client, capabilities) ?? getPersonalSpace(client);\n if (!space) {\n return;\n }\n const blueprints = yield* Effect.promise(\n (): Promise<Blueprint.Blueprint[]> => space.db.query(Filter.type(Blueprint.Blueprint)).run(),\n );\n for (const blueprint of blueprints) {\n space.db.remove(blueprint);\n }\n yield* Database.flush();\n }),\n properties: {\n label: ['reset-blueprints.label', { ns: meta.id }],\n icon: 'ph--arrow-clockwise--regular',\n },\n }),\n ]),\n }),\n\n // Don't show assistant companion when a chat is already the primary object.\n GraphBuilder.createExtension({\n id: 'companionChat',\n match: whenNonChatObject,\n connector: (object, get) =>\n Effect.gen(function* () {\n const state = get(yield* Capability.get(AssistantCapabilities.State));\n const cache = get(yield* Capability.get(AssistantCapabilities.CompanionChatCache));\n const objectUri = Obj.getURI(object);\n\n // Resolve chat from persisted state or transient cache.\n const chat = pipe(\n Option.fromNullable(state.currentChat[objectUri]),\n Option.flatMap((dxnStr) => Option.fromNullable(DXN.tryMake(dxnStr))),\n Option.flatMap((dxn) => Option.fromNullable(Obj.getDatabase(object)?.makeRef(dxn))),\n Option.map((ref) => get(AtomObj.make(ref as Ref.Ref<Obj.Unknown>))),\n Option.filter(Obj.isObject),\n Option.orElse(() => pipe(Option.fromNullable(cache[objectUri]), Option.filter(Obj.isObject))),\n Option.getOrNull,\n );\n\n return [\n AppNode.makeCompanion({\n id: linkedSegment(ASSISTANT_COMPANION_VARIANT),\n label: ['assistant-chat.label', { ns: meta.id }],\n icon: 'ph--sparkle--regular',\n data: chat,\n position: 'first',\n }),\n ];\n }),\n }),\n\n GraphBuilder.createExtension({\n id: 'invocations',\n match: NodeMatcher.whenAny(\n NodeMatcher.whenEchoTypeMatches(Sequence.Sequence),\n NodeMatcher.whenEchoTypeMatches(Routine.Routine),\n ),\n connector: () =>\n Effect.succeed([\n AppNode.makeCompanion({\n id: 'invocations',\n label: ['invocations.label', { ns: meta.id }],\n icon: 'ph--clock-countdown--regular',\n data: 'invocations',\n }),\n ]),\n }),\n\n GraphBuilder.createExtension({\n id: 'trace',\n match: NodeMatcher.whenRoot,\n connector: () =>\n Effect.succeed([\n AppNode.makeDeckCompanion({\n id: linkedSegment('trace'),\n label: ['trace.label', { ns: meta.id }],\n icon: 'ph--line-segments--regular',\n data: 'trace' as const,\n position: 'last',\n }),\n ]),\n }),\n ]);\n\n return Capability.contributes(AppCapabilities.AppGraphBuilder, extensions);\n }),\n);\n"],
5
+ "mappings": ";;;AAIA,YAAYA,YAAY;AACxB,SAASC,YAAY;AACrB,YAAYC,YAAY;AAExB,SAASC,kBAAkB;AAC3B,SAASC,iBAAiBC,SAASC,gBAAgBC,wBAAwB;AAC3E,SAASC,aAAaC,YAAY;AAClC,SAASC,WAAWC,WAAWC,eAAe;AAC9C,SAASC,gBAAgB;AACzB,SAASC,KAAKC,UAAUC,QAAQC,WAAqB;AACrD,SAASC,eAAe;AACxB,SAASC,iBAAiB;AAC1B,SAASC,0BAA0B;AACnC,SAASC,cAAcC,MAAMC,mBAAmB;AAChD,SAASC,qBAAqB;AAE9B,SAASC,6BAA6BC,YAAY;AAClD,SAASC,uBAAuBC,0BAA0B;AAE1D,IAAA,eAAA;AAC+C,IAAA,4BAAA;EAE/C;AAMA;AAE2CC,IAAO,oBAAA,YAAA,QAAA,YAAA,gBAAA,YAAA,QAAA,YAAA,oBAAA,KAAA,IAAA,CAAA,CAAA;IAE9C,4BAAMC,WAAa,WAAkB,kBAAA,aAAA;QACnCT,eAAaU,OAAAA,WAAoB;qBAC3B,OAAA,WAAA;iBACEtB,oBAAS;MACfuB,IAAAA;YACE,KAAOhC;eACLsB,CAAAA,SAAKW;eACCL,eAAAA;eACJM,WACElC;mCACE,eAAA,KAAA;wBACMmC,WAAKlB,aAAImB;AAEf,oBAAA,KAAOzB,IAAAA,YAAiBiB,IAAAA;wBAAqCS,IAAAA,QAAAA,EAAAA,YAAAA,YAAAA,GAAAA,cAAAA,GAAAA,IAAAA,GAAAA,MAAAA,GAAAA,CAAAA,MAAAA,EAAAA,EAAAA,CAAAA;AAAK,qBAAG,UAAA,OAAA,mBAAA,gBAAA;gBAAEC;cAAoB,GAAA;gBAC7F,SAAA,GAAA;cACFC,CAAAA;YACEC,CAAAA;wBAAQ;qBAA0B;;gBAAc;kBAAE,IAAA,KAAA;gBAClDC;cACAC;cACF,MAAA;cACF,aAAA;YACD;UACH,CAAA;QACF,CAAA;MAEArB;;iBAESE,gBAAYoB;MACnBX,IAAAA;yBAESC;qBACC,eAAA;aACJC,WAAMlC;cACJ;gBACM4C,kBAAS,aAAOzC;AACtB,kBAAM0C,gBAAQvC,OAAAA,WAAuBwC;AACrC,kBAAKD,SAAO,OAAA,WAAA,IAAA,mBAAA,MAAA;kBACV,QAAA,eAAA,QAAAC,aAAA,KAAA,iBAAA,MAAA;AACF,gBAAA,CAAA,OAAA;AACA;;uBAEOC,cAAK,2BAAA;oBACR,MAAA,WAAA,KAAA;AACF,kBAAA,CAAA,KAAA;AACA;cAIA;oBACEF,WAAalC,OAAUqC,eAAUC,MAAAA,MAAAA,GAAAA,MAAAA,OAAAA,IAAAA,OAAAA,KAAAA,UAAAA,mBAAAA,GAAAA,OAAAA,IAAAA,GAAAA,CAAAA,CAAAA,EAAAA,IAAAA,CAAAA;AACnC,kBAAA,SAAA,WAAA,GAAA;AACF,sBAAA,GAAA,IAAA,UAAA,UAAA,UAAA,CAAA;cACA;YACF;AACAV,mBAAAA,SAAY,MAAA;;sBACF;mBAAmC;;cAAc;gBAAE,IAAA,KAAA;cAC3DE;YACF;YACF,MAAA;UACAnB;;aAEEY,WAAYvB;UACZ4B,IAAAA,mBAAY,sBAAA,KAAA;gBACVC,MAAAA,UAAO,OAAA,mBAAA,uBAAA,CAAA,CAAA;sBAAC;mBAAkC;;cAAc;gBAAE,IAAA,KAAA;cAC1DC;YACF;YACF,MAAA;UACAnB;;aAEEY,WAAMlC;cACJ;gBACM4C,kBAAS,aAAOzC;AACtB,kBAAM0C,gBAAQvC,OAAAA,WAAuBwC;AACrC,kBAAKD,SAAO,OAAA,WAAA,IAAA,mBAAA,MAAA;kBACV,QAAA,eAAA,QAAAC,aAAA,KAAA,iBAAA,MAAA;AACF,gBAAA,CAAA,OAAA;AACA;YAGA;kBACED,aAAe,OAACK,eAAAA,MAAAA,MAAAA,GAAAA,MAAAA,OAAAA,KAAAA,UAAAA,SAAAA,CAAAA,EAAAA,IAAAA,CAAAA;AAClB,uBAAA,aAAA,YAAA;AACA,oBAAOnC,GAAAA,OAASoC,SAAK;YACvB;AACAZ,mBAAAA,SAAY,MAAA;;sBACF;mBAA0B;;cAAc;gBAAE,IAAA,KAAA;cAClDE;YACF;YACF,MAAA;UACD;QACL,CAAA;MAEA,CAAA;IACApB,CAAAA;;iBAES+B,gBAAAA;MACPC,IAAAA;;iBAGI,CAAA,QAAMC,QAAY,WAAOnD,aAAewB;AACxC,cAAM4B,QAAAA,IAAYtC,OAAIuC,WAAOC,IAAAA,sBAAAA,KAAAA,CAAAA;AAE7B,cAAA,QAAA,IAAA,OAAA,WAAA,IAAA,sBAAwD,kBAAA,CAAA;AACxD,cAAMpB,YACJnC,IAAAA,OAAOwD,MAAAA;cAUPrD,OAAQsD,KAAa,oBAAC,MAAA,YAAA,SAAA,CAAA,GAAA,eAAA,CAAA,WAAA,oBAAA,IAAA,QAAA,MAAA,CAAA,CAAA,GAAA,eAAA,CAAA,QAAA,oBAAA,IAAA,YAAA,MAAA,GAAA,QAAA,GAAA,CAAA,CAAA,GAAA,WAAA,CAAA,QAAA,IAAA,QAAA,KAAA,GAAA,CAAA,CAAA,GAAA,cAAA,IAAA,QAAA,GAAA,cAAA,MAAA,KAAA,oBAAA,MAAA,SAAA,CAAA,GAAA,cAAA,IAAA,QAAA,CAAA,CAAA,GAAA,gBAAA;;kBAEpBnB,cAAO;gBAAC,cAAA,2BAAA;mBAAwB;;cAAc;gBAAE,IAAA,KAAA;cAChDC;YACAP;YACA0B,MAAAA;YACF,MAAA;YACD,UAAA;UACH,CAAA;QACJ;MAEAvC,CAAAA;;iBAESE,gBAAYsC;MAInBR,IAAAA;yBAEYM,QAAAA,YAAc,oBAAA,SAAA,QAAA,GAAA,YAAA,oBAAA,QAAA,OAAA,CAAA;uBAChB,eAAA;gBACJnB,cAAO;cAAC;iBAAqB;;YAAc;cAAE,IAAA,KAAA;YAC7CC;UACAP;UACF,MAAA;UACD,MAAA;QACL,CAAA;MAEAb,CAAAA;;iBAESE,gBAAYoB;MACnBU,IAAAA;yBAEYS;uBACFtC,eAAc;gBAClBgB,kBAAO;cAAC,cAAA,OAAA;iBAAe;;YAAc;cAAE,IAAA,KAAA;YACvCC;UACAP;UACA0B,MAAAA;UACF,MAAA;UACD,UAAA;QACL,CAAA;MACD,CAAA;IAED,CAAA;EAEF,CAAA;;;",
6
+ "names": ["Effect", "pipe", "Option", "Capability", "AppCapabilities", "AppNode", "getActiveSpace", "getPersonalSpace", "AgentPrompt", "Chat", "Blueprint", "Operation", "Routine", "Sequence", "DXN", "Database", "Filter", "Obj", "AtomObj", "invariant", "ClientCapabilities", "GraphBuilder", "Node", "NodeMatcher", "linkedSegment", "ASSISTANT_COMPANION_VARIANT", "meta", "AssistantCapabilities", "AssistantOperation", "Service", "extensions", "createTypeExtension", "actions", "makeAction", "data", "db", "getDatabase", "chat", "spaceId", "properties", "label", "icon", "disposition", "whenRoot", "client", "space", "capabilities", "key", "serialize", "definition", "blueprint", "flush", "whenNonChatObject", "connector", "cache", "objectUri", "getURI", "object", "fromNullable", "makeCompanion", "position", "whenAny", "makeDeckCompanion"]
7
+ }
@@ -0,0 +1,32 @@
1
+ import "./chunk-J5LGTIGS.mjs";
2
+
3
+ // src/capabilities/blueprint-definition.ts
4
+ import * as Effect from "effect/Effect";
5
+ import { Capabilities, Capability } from "@dxos/app-framework";
6
+ import { AppCapabilities } from "@dxos/app-toolkit";
7
+ import { AgentBlueprint, AgentBlueprintHandlers, AgentHandlers, AgentWizardBlueprint, AgentWizardHandlers, BlueprintManagerBlueprint, BlueprintManagerHandlers, BrowserBlueprint, DatabaseBlueprint, DatabaseHandlers, DiscordBlueprint, LinearBlueprint, PlanningBlueprint, WebSearchBlueprint, MemoryBlueprint, AutomationBlueprint } from "@dxos/assistant-toolkit";
8
+ import { AssistantBlueprint } from "#blueprints";
9
+ var blueprintDefinition = Capability.makeModule(() => Effect.succeed([
10
+ Capability.contributes(AppCapabilities.BlueprintDefinition, AssistantBlueprint),
11
+ Capability.contributes(AppCapabilities.BlueprintDefinition, BrowserBlueprint),
12
+ Capability.contributes(AppCapabilities.BlueprintDefinition, DatabaseBlueprint),
13
+ Capability.contributes(AppCapabilities.BlueprintDefinition, WebSearchBlueprint),
14
+ Capability.contributes(AppCapabilities.BlueprintDefinition, DiscordBlueprint),
15
+ Capability.contributes(AppCapabilities.BlueprintDefinition, LinearBlueprint),
16
+ Capability.contributes(AppCapabilities.BlueprintDefinition, AgentBlueprint),
17
+ Capability.contributes(AppCapabilities.BlueprintDefinition, PlanningBlueprint),
18
+ Capability.contributes(AppCapabilities.BlueprintDefinition, MemoryBlueprint),
19
+ Capability.contributes(AppCapabilities.BlueprintDefinition, AutomationBlueprint),
20
+ Capability.contributes(AppCapabilities.BlueprintDefinition, BlueprintManagerBlueprint),
21
+ Capability.contributes(AppCapabilities.BlueprintDefinition, AgentWizardBlueprint),
22
+ Capability.contributes(Capabilities.OperationHandler, AgentHandlers),
23
+ Capability.contributes(Capabilities.OperationHandler, AgentBlueprintHandlers),
24
+ Capability.contributes(Capabilities.OperationHandler, BlueprintManagerHandlers),
25
+ Capability.contributes(Capabilities.OperationHandler, DatabaseHandlers),
26
+ Capability.contributes(Capabilities.OperationHandler, AgentWizardHandlers)
27
+ ]));
28
+ var blueprint_definition_default = blueprintDefinition;
29
+ export {
30
+ blueprint_definition_default as default
31
+ };
32
+ //# sourceMappingURL=blueprint-definition-VXJYQ5AE.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/blueprint-definition.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 { AppCapabilities } from '@dxos/app-toolkit';\nimport {\n AgentBlueprint,\n AgentBlueprintHandlers,\n AgentHandlers,\n AgentWizardBlueprint,\n AgentWizardHandlers,\n BlueprintManagerBlueprint,\n BlueprintManagerHandlers,\n BrowserBlueprint,\n DatabaseBlueprint,\n DatabaseHandlers,\n DiscordBlueprint,\n LinearBlueprint,\n PlanningBlueprint,\n WebSearchBlueprint,\n MemoryBlueprint,\n AutomationBlueprint,\n} from '@dxos/assistant-toolkit';\n// eslint-disable-next-line unused-imports/no-unused-imports\nimport type { Blueprint } from '@dxos/compute';\n\nimport { AssistantBlueprint } from '#blueprints';\n\n// TODO(dmaretskyi): Force this type for all Capability.makeModule calls.\nconst blueprintDefinition: () => Effect.Effect<Capability.Capability<unknown>[]> = Capability.makeModule(() =>\n Effect.succeed([\n Capability.contributes(AppCapabilities.BlueprintDefinition, AssistantBlueprint),\n Capability.contributes(AppCapabilities.BlueprintDefinition, BrowserBlueprint),\n Capability.contributes(AppCapabilities.BlueprintDefinition, DatabaseBlueprint),\n Capability.contributes(AppCapabilities.BlueprintDefinition, WebSearchBlueprint),\n Capability.contributes(AppCapabilities.BlueprintDefinition, DiscordBlueprint),\n Capability.contributes(AppCapabilities.BlueprintDefinition, LinearBlueprint),\n Capability.contributes(AppCapabilities.BlueprintDefinition, AgentBlueprint),\n Capability.contributes(AppCapabilities.BlueprintDefinition, PlanningBlueprint),\n Capability.contributes(AppCapabilities.BlueprintDefinition, MemoryBlueprint),\n Capability.contributes(AppCapabilities.BlueprintDefinition, AutomationBlueprint),\n Capability.contributes(AppCapabilities.BlueprintDefinition, BlueprintManagerBlueprint),\n Capability.contributes(AppCapabilities.BlueprintDefinition, AgentWizardBlueprint),\n\n Capability.contributes(Capabilities.OperationHandler, AgentHandlers),\n Capability.contributes(Capabilities.OperationHandler, AgentBlueprintHandlers),\n Capability.contributes(Capabilities.OperationHandler, BlueprintManagerHandlers),\n Capability.contributes(Capabilities.OperationHandler, DatabaseHandlers),\n Capability.contributes(Capabilities.OperationHandler, AgentWizardHandlers),\n ]),\n);\n\nexport default blueprintDefinition;\n"],
5
+ "mappings": ";;;AAIA,YAAYA,YAAY;AAExB,SAASC,cAAcC,kBAAkB;AACzC,SAASC,uBAAuB;AAChC,SACEC,gBACAC,wBACAC,eACAC,sBACAC,qBACAC,2BACAC,0BACAC,kBACAC,mBACAC,kBACAC,kBACAC,iBACAC,mBACAC,oBACAC,iBACAC,2BACK;AAIP,SAASC,0BAA0B;AAGnC,IAAMC,sBAA6EnB,WAAWoB,WAAW,MAChGC,eAAQ;EACbrB,WAAWsB,YAAYrB,gBAAgBsB,qBAAqBL,kBAAAA;EAC5DlB,WAAWsB,YAAYrB,gBAAgBsB,qBAAqBd,gBAAAA;EAC5DT,WAAWsB,YAAYrB,gBAAgBsB,qBAAqBb,iBAAAA;EAC5DV,WAAWsB,YAAYrB,gBAAgBsB,qBAAqBR,kBAAAA;EAC5Df,WAAWsB,YAAYrB,gBAAgBsB,qBAAqBX,gBAAAA;EAC5DZ,WAAWsB,YAAYrB,gBAAgBsB,qBAAqBV,eAAAA;EAC5Db,WAAWsB,YAAYrB,gBAAgBsB,qBAAqBrB,cAAAA;EAC5DF,WAAWsB,YAAYrB,gBAAgBsB,qBAAqBT,iBAAAA;EAC5Dd,WAAWsB,YAAYrB,gBAAgBsB,qBAAqBP,eAAAA;EAC5DhB,WAAWsB,YAAYrB,gBAAgBsB,qBAAqBN,mBAAAA;EAC5DjB,WAAWsB,YAAYrB,gBAAgBsB,qBAAqBhB,yBAAAA;EAC5DP,WAAWsB,YAAYrB,gBAAgBsB,qBAAqBlB,oBAAAA;EAE5DL,WAAWsB,YAAYvB,aAAayB,kBAAkBpB,aAAAA;EACtDJ,WAAWsB,YAAYvB,aAAayB,kBAAkBrB,sBAAAA;EACtDH,WAAWsB,YAAYvB,aAAayB,kBAAkBhB,wBAAAA;EACtDR,WAAWsB,YAAYvB,aAAayB,kBAAkBb,gBAAAA;EACtDX,WAAWsB,YAAYvB,aAAayB,kBAAkBlB,mBAAAA;CACvD,CAAA;AAGH,IAAA,+BAAea;",
6
+ "names": ["Effect", "Capabilities", "Capability", "AppCapabilities", "AgentBlueprint", "AgentBlueprintHandlers", "AgentHandlers", "AgentWizardBlueprint", "AgentWizardHandlers", "BlueprintManagerBlueprint", "BlueprintManagerHandlers", "BrowserBlueprint", "DatabaseBlueprint", "DatabaseHandlers", "DiscordBlueprint", "LinearBlueprint", "PlanningBlueprint", "WebSearchBlueprint", "MemoryBlueprint", "AutomationBlueprint", "AssistantBlueprint", "blueprintDefinition", "makeModule", "succeed", "contributes", "BlueprintDefinition", "OperationHandler"]
7
+ }
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  blueprint_default
3
- } from "../chunk-EZRS3J25.mjs";
3
+ } from "../chunk-5H6UJHLF.mjs";
4
4
  import "../chunk-J5LGTIGS.mjs";
5
5
  export {
6
6
  blueprint_default as AssistantBlueprint
@@ -0,0 +1,37 @@
1
+ import "../chunk-J5LGTIGS.mjs";
2
+
3
+ // src/capabilities/index.ts
4
+ import { Capability } from "@dxos/app-framework";
5
+ var AiContext = Capability.lazy("AiContext", () => import("../ai-context-IABBIEHG.mjs"));
6
+ var AiService = Capability.lazy("AiService", () => import("../ai-service-3SH2UQIR.mjs"));
7
+ var AppGraphBuilder = Capability.lazy("AppGraphBuilder", () => import("../app-graph-builder-RJW5O57E.mjs"));
8
+ var BlueprintDefinition = Capability.lazy("BlueprintDefinition", () => import("../blueprint-definition-VXJYQ5AE.mjs"));
9
+ var CompanionChatProvisioner = Capability.lazy("CompanionChatProvisioner", () => import("../companion-chat-provisioner-7RTSXL6M.mjs"));
10
+ var CreateObject = Capability.lazy("CreateObject", () => import("../create-object-XPVVVEKF.mjs"));
11
+ var EdgeModelResolver = Capability.lazy("EdgeModelResolver", () => import("../edge-model-resolver-7SMCGDRL.mjs"));
12
+ var LocalModelResolver = Capability.lazy("LocalModelResolver", () => import("../local-model-resolver-I2BENFFS.mjs"));
13
+ var MarkdownExtension = Capability.lazy("MarkdownExtension", () => import("../markdown-KTBFOMFM.mjs"));
14
+ var Migrations = Capability.lazy("AssistantMigrations", () => import("../migrations-7DEMVBOG.mjs"));
15
+ var OperationHandler = Capability.lazy("OperationHandler", () => import("../operation-handler-SF36MOB5.mjs"));
16
+ var ReactSurface = Capability.lazy("ReactSurface", () => import("../react-surface-XRTBW5OJ.mjs"));
17
+ var Settings = Capability.lazy("Settings", () => import("../settings-W4BLWQ53.mjs"));
18
+ var AssistantState = Capability.lazy("AssistantState", () => import("../state-H3G7QCU6.mjs"));
19
+ var Toolkit = Capability.lazy("Toolkit", () => import("../toolkit-GVWXPDLJ.mjs"));
20
+ export {
21
+ AiContext,
22
+ AiService,
23
+ AppGraphBuilder,
24
+ AssistantState,
25
+ BlueprintDefinition,
26
+ CompanionChatProvisioner,
27
+ CreateObject,
28
+ EdgeModelResolver,
29
+ LocalModelResolver,
30
+ MarkdownExtension,
31
+ Migrations,
32
+ OperationHandler,
33
+ ReactSurface,
34
+ Settings,
35
+ Toolkit
36
+ };
37
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/capabilities/index.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capability } from '@dxos/app-framework';\n// eslint-disable-next-line unused-imports/no-unused-imports\nimport type { Blueprint, OperationHandlerSet } from '@dxos/compute';\n\nimport type { AssistantPluginOptions } from '#types';\n\nexport const AiContext = Capability.lazy<void, Capability.Any[]>('AiContext', () => import('./ai-context'));\nexport const AiService = Capability.lazy<AssistantPluginOptions | void, Capability.Any[]>(\n 'AiService',\n () => import('./ai-service'),\n);\nexport const AppGraphBuilder = Capability.lazy('AppGraphBuilder', () => import('./app-graph-builder'));\nexport const BlueprintDefinition = Capability.lazy('BlueprintDefinition', () => import('./blueprint-definition'));\nexport const CompanionChatProvisioner = Capability.lazy(\n 'CompanionChatProvisioner',\n () => import('./companion-chat-provisioner'),\n);\nexport const CreateObject = Capability.lazy('CreateObject', () => import('./create-object'));\nexport const EdgeModelResolver = Capability.lazy('EdgeModelResolver', () => import('./edge-model-resolver'));\nexport const LocalModelResolver = Capability.lazy('LocalModelResolver', () => import('./local-model-resolver'));\nexport const MarkdownExtension = Capability.lazy('MarkdownExtension', () => import('./markdown'));\nexport const Migrations = Capability.lazy('AssistantMigrations', () => import('./migrations'));\nexport const OperationHandler = Capability.lazy<OperationHandlerSet.OperationHandlerSet>(\n 'OperationHandler',\n () => import('./operation-handler'),\n);\nexport const ReactSurface = Capability.lazy('ReactSurface', () => import('./react-surface'));\nexport const Settings = Capability.lazy('Settings', () => import('./settings'));\nexport const AssistantState = Capability.lazy('AssistantState', () => import('./state'));\nexport const Toolkit = Capability.lazy('Toolkit', () => import('./toolkit'));\n"],
5
+ "mappings": ";;;AAIA,SAASA,kBAAkB;AAMpB,IAAMC,YAAYD,WAAWE,KAA6B,aAAa,MAAM,OAAO,4BAAA,CAAA;AACpF,IAAMC,YAAYH,WAAWE,KAClC,aACA,MAAM,OAAO,4BAAA,CAAA;AAER,IAAME,kBAAkBJ,WAAWE,KAAK,mBAAmB,MAAM,OAAO,mCAAA,CAAA;AACxE,IAAMG,sBAAsBL,WAAWE,KAAK,uBAAuB,MAAM,OAAO,sCAAA,CAAA;AAChF,IAAMI,2BAA2BN,WAAWE,KACjD,4BACA,MAAM,OAAO,4CAAA,CAAA;AAER,IAAMK,eAAeP,WAAWE,KAAK,gBAAgB,MAAM,OAAO,+BAAA,CAAA;AAClE,IAAMM,oBAAoBR,WAAWE,KAAK,qBAAqB,MAAM,OAAO,qCAAA,CAAA;AAC5E,IAAMO,qBAAqBT,WAAWE,KAAK,sBAAsB,MAAM,OAAO,sCAAA,CAAA;AAC9E,IAAMQ,oBAAoBV,WAAWE,KAAK,qBAAqB,MAAM,OAAO,0BAAA,CAAA;AAC5E,IAAMS,aAAaX,WAAWE,KAAK,uBAAuB,MAAM,OAAO,4BAAA,CAAA;AACvE,IAAMU,mBAAmBZ,WAAWE,KACzC,oBACA,MAAM,OAAO,mCAAA,CAAA;AAER,IAAMW,eAAeb,WAAWE,KAAK,gBAAgB,MAAM,OAAO,+BAAA,CAAA;AAClE,IAAMY,WAAWd,WAAWE,KAAK,YAAY,MAAM,OAAO,0BAAA,CAAA;AAC1D,IAAMa,iBAAiBf,WAAWE,KAAK,kBAAkB,MAAM,OAAO,uBAAA,CAAA;AACtE,IAAMc,UAAUhB,WAAWE,KAAK,WAAW,MAAM,OAAO,yBAAA,CAAA;",
6
+ "names": ["Capability", "AiContext", "lazy", "AiService", "AppGraphBuilder", "BlueprintDefinition", "CompanionChatProvisioner", "CreateObject", "EdgeModelResolver", "LocalModelResolver", "MarkdownExtension", "Migrations", "OperationHandler", "ReactSurface", "Settings", "AssistantState", "Toolkit"]
7
+ }
@@ -0,0 +1,8 @@
1
+ // src/operations/index.ts
2
+ import { OperationHandlerSet } from "@dxos/compute";
3
+ var AssistantOperationHandlerSet = OperationHandlerSet.lazy(() => import("./create-chat-67GZNG3T.mjs"), () => import("./ensure-companion-chat-AMOF3C66.mjs"), () => import("./on-create-space-Q2R7OSP6.mjs"), () => import("./resolve-navigation-targets-ZHIMMH7L.mjs"), () => import("./run-prompt-in-new-chat-NRDYPCJK.mjs"), () => import("./set-current-chat-VWBPSIMZ.mjs"), () => import("./toggle-trace-panel-debug-JGTB6KVJ.mjs"), () => import("./update-chat-name-ENXRUMDJ.mjs"));
4
+
5
+ export {
6
+ AssistantOperationHandlerSet
7
+ };
8
+ //# sourceMappingURL=chunk-47OH7ZF6.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/operations/index.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { OperationHandlerSet } from '@dxos/compute';\n\nexport const AssistantOperationHandlerSet = OperationHandlerSet.lazy(\n () => import('./create-chat'),\n () => import('./ensure-companion-chat'),\n () => import('./on-create-space'),\n () => import('./resolve-navigation-targets'),\n () => import('./run-prompt-in-new-chat'),\n () => import('./set-current-chat'),\n () => import('./toggle-trace-panel-debug'),\n () => import('./update-chat-name'),\n);\n"],
5
+ "mappings": ";AAIA,SAASA,2BAA2B;AAE7B,IAAMC,+BAA+BD,oBAAoBE,KAC9D,MAAM,OAAO,4BAAA,GACb,MAAM,OAAO,sCAAA,GACb,MAAM,OAAO,gCAAA,GACb,MAAM,OAAO,2CAAA,GACb,MAAM,OAAO,uCAAA,GACb,MAAM,OAAO,iCAAA,GACb,MAAM,OAAO,yCAAA,GACb,MAAM,OAAO,iCAAA,CAAA;",
6
+ "names": ["OperationHandlerSet", "AssistantOperationHandlerSet", "lazy"]
7
+ }
@@ -1,8 +1,8 @@
1
1
  // src/blueprints/assistant/blueprint.ts
2
2
  import { LayoutOperation } from "@dxos/app-toolkit";
3
3
  import { templates } from "@dxos/assistant";
4
- import { Blueprint } from "@dxos/blueprints";
5
- import { AssistantOperation } from "#operations";
4
+ import { Blueprint } from "@dxos/compute";
5
+ import { AssistantOperation } from "#types";
6
6
  var BLUEPRINT_KEY = "org.dxos.blueprint.assistant";
7
7
  var make = () => Blueprint.make({
8
8
  key: BLUEPRINT_KEY,
@@ -27,4 +27,4 @@ var blueprint_default = blueprint;
27
27
  export {
28
28
  blueprint_default
29
29
  };
30
- //# sourceMappingURL=chunk-EZRS3J25.mjs.map
30
+ //# sourceMappingURL=chunk-5H6UJHLF.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/blueprints/assistant/blueprint.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { LayoutOperation } from '@dxos/app-toolkit';\nimport { templates } from '@dxos/assistant';\nimport { Blueprint } from '@dxos/compute';\n\nimport { AssistantOperation } from '#types';\n\nconst BLUEPRINT_KEY = 'org.dxos.blueprint.assistant';\n\nconst make = () =>\n Blueprint.make({\n key: BLUEPRINT_KEY,\n name: 'Assistant',\n tools: Blueprint.toolDefinitions({\n // TODO(wittjosiah): LayoutOperation.Open requires Capability.Service which is only available\n // via the compute-runtime layer (plugin-automation). Once Capability.Service is propagated\n // through LocalFunctionExecutionService, this will work without the compute-runtime dependency.\n operations: [LayoutOperation.Open, AssistantOperation.ResolveNavigationTargets],\n }),\n instructions: templates.system,\n });\n\nconst blueprint: Blueprint.Definition = {\n key: BLUEPRINT_KEY,\n make,\n};\n\nexport default blueprint;\n"],
5
+ "mappings": ";AAIA,SAASA,uBAAuB;AAChC,SAASC,iBAAiB;AAC1B,SAASC,iBAAiB;AAE1B,SAASC,0BAA0B;AAEnC,IAAMC,gBAAgB;AAEtB,IAAMC,OAAO,MACXH,UAAUG,KAAK;EACbC,KAAKF;EACLG,MAAM;EACNC,OAAON,UAAUO,gBAAgB;;;;IAI/BC,YAAY;MAACV,gBAAgBW;MAAMR,mBAAmBS;;EACxD,CAAA;EACAC,cAAcZ,UAAUa;AAC1B,CAAA;AAEF,IAAMC,YAAkC;EACtCT,KAAKF;EACLC;AACF;AAEA,IAAA,oBAAeU;",
6
+ "names": ["LayoutOperation", "templates", "Blueprint", "AssistantOperation", "BLUEPRINT_KEY", "make", "key", "name", "tools", "toolDefinitions", "operations", "Open", "ResolveNavigationTargets", "instructions", "system", "blueprint"]
7
+ }