@elizaos/ui 2.0.0-alpha.192 → 2.0.0-alpha.196

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 (273) hide show
  1. package/apps/app-companion/src/components/companion/companion-app.js +2 -2
  2. package/apps/app-lifeops/src/action.d.ts.map +1 -1
  3. package/apps/app-lifeops/src/action.js +21 -2
  4. package/apps/app-lifeops/src/actions/app-blocker.d.ts +3 -1
  5. package/apps/app-lifeops/src/actions/app-blocker.d.ts.map +1 -1
  6. package/apps/app-lifeops/src/actions/app-blocker.js +2 -0
  7. package/apps/app-lifeops/src/actions/calendar.d.ts.map +1 -1
  8. package/apps/app-lifeops/src/actions/calendar.js +140 -7
  9. package/apps/app-lifeops/src/actions/computer-use.d.ts.map +1 -1
  10. package/apps/app-lifeops/src/actions/computer-use.js +248 -17
  11. package/apps/app-lifeops/src/actions/cross-channel-send.d.ts +3 -1
  12. package/apps/app-lifeops/src/actions/cross-channel-send.d.ts.map +1 -1
  13. package/apps/app-lifeops/src/actions/cross-channel-send.js +1 -0
  14. package/apps/app-lifeops/src/actions/dossier.d.ts.map +1 -1
  15. package/apps/app-lifeops/src/actions/dossier.js +51 -34
  16. package/apps/app-lifeops/src/actions/gmail.d.ts.map +1 -1
  17. package/apps/app-lifeops/src/actions/gmail.js +5 -0
  18. package/apps/app-lifeops/src/actions/inbox.d.ts.map +1 -1
  19. package/apps/app-lifeops/src/actions/inbox.js +8 -1
  20. package/apps/app-lifeops/src/actions/life.d.ts.map +1 -1
  21. package/apps/app-lifeops/src/actions/life.extractor.d.ts.map +1 -1
  22. package/apps/app-lifeops/src/actions/life.extractor.js +103 -4
  23. package/apps/app-lifeops/src/actions/life.js +8 -0
  24. package/apps/app-lifeops/src/actions/non-actionable-request.d.ts +6 -0
  25. package/apps/app-lifeops/src/actions/non-actionable-request.d.ts.map +1 -0
  26. package/apps/app-lifeops/src/actions/non-actionable-request.js +33 -0
  27. package/apps/app-lifeops/src/actions/password-manager.d.ts.map +1 -1
  28. package/apps/app-lifeops/src/actions/password-manager.js +11 -2
  29. package/apps/app-lifeops/src/actions/relationships.d.ts +3 -1
  30. package/apps/app-lifeops/src/actions/relationships.d.ts.map +1 -1
  31. package/apps/app-lifeops/src/actions/relationships.js +167 -11
  32. package/apps/app-lifeops/src/actions/remote-desktop.js +1 -1
  33. package/apps/app-lifeops/src/actions/screen-time.d.ts.map +1 -1
  34. package/apps/app-lifeops/src/actions/screen-time.js +8 -2
  35. package/apps/app-lifeops/src/actions/start-remote-session.js +1 -1
  36. package/apps/app-lifeops/src/actions/subscriptions.d.ts +5 -0
  37. package/apps/app-lifeops/src/actions/subscriptions.d.ts.map +1 -0
  38. package/apps/app-lifeops/src/actions/subscriptions.js +251 -0
  39. package/apps/app-lifeops/src/actions/twilio-call.d.ts.map +1 -1
  40. package/apps/app-lifeops/src/actions/twilio-call.js +48 -3
  41. package/apps/app-lifeops/src/actions/update-owner-profile.d.ts.map +1 -1
  42. package/apps/app-lifeops/src/actions/update-owner-profile.js +2 -1
  43. package/apps/app-lifeops/src/actions/website-blocker.d.ts +6 -2
  44. package/apps/app-lifeops/src/actions/website-blocker.d.ts.map +1 -1
  45. package/apps/app-lifeops/src/actions/website-blocker.js +38 -0
  46. package/apps/app-lifeops/src/actions/x-read.d.ts.map +1 -1
  47. package/apps/app-lifeops/src/actions/x-read.js +27 -3
  48. package/apps/app-lifeops/src/dossier/action.d.ts.map +1 -1
  49. package/apps/app-lifeops/src/dossier/action.js +8 -7
  50. package/apps/app-lifeops/src/followup/actions/listOverdueFollowups.d.ts.map +1 -1
  51. package/apps/app-lifeops/src/followup/actions/listOverdueFollowups.js +1 -0
  52. package/apps/app-lifeops/src/followup/actions/markFollowupDone.d.ts.map +1 -1
  53. package/apps/app-lifeops/src/followup/actions/markFollowupDone.js +2 -1
  54. package/apps/app-lifeops/src/followup/actions/setFollowupThreshold.d.ts.map +1 -1
  55. package/apps/app-lifeops/src/followup/actions/setFollowupThreshold.js +2 -1
  56. package/apps/app-lifeops/src/lifeops/calendly-client.d.ts.map +1 -1
  57. package/apps/app-lifeops/src/lifeops/calendly-client.js +4 -2
  58. package/apps/app-lifeops/src/lifeops/discord-browser-scraper.d.ts.map +1 -1
  59. package/apps/app-lifeops/src/lifeops/discord-browser-scraper.js +6 -5
  60. package/apps/app-lifeops/src/lifeops/password-manager-bridge.d.ts +1 -1
  61. package/apps/app-lifeops/src/lifeops/password-manager-bridge.d.ts.map +1 -1
  62. package/apps/app-lifeops/src/lifeops/password-manager-bridge.js +84 -6
  63. package/apps/app-lifeops/src/lifeops/remote-desktop.d.ts.map +1 -1
  64. package/apps/app-lifeops/src/lifeops/remote-desktop.js +30 -0
  65. package/apps/app-lifeops/src/lifeops/repository.d.ts +15 -0
  66. package/apps/app-lifeops/src/lifeops/repository.d.ts.map +1 -1
  67. package/apps/app-lifeops/src/lifeops/repository.js +330 -1
  68. package/apps/app-lifeops/src/lifeops/service-mixin-discord.js +222 -42
  69. package/apps/app-lifeops/src/lifeops/service-mixin-subscriptions.d.ts +2 -0
  70. package/apps/app-lifeops/src/lifeops/service-mixin-subscriptions.d.ts.map +1 -0
  71. package/apps/app-lifeops/src/lifeops/service-mixin-subscriptions.js +763 -0
  72. package/apps/app-lifeops/src/lifeops/service.d.ts +64 -1
  73. package/apps/app-lifeops/src/lifeops/service.d.ts.map +1 -1
  74. package/apps/app-lifeops/src/lifeops/service.js +2 -1
  75. package/apps/app-lifeops/src/lifeops/subscriptions-playbooks.d.ts +54 -0
  76. package/apps/app-lifeops/src/lifeops/subscriptions-playbooks.d.ts.map +1 -0
  77. package/apps/app-lifeops/src/lifeops/subscriptions-playbooks.js +213 -0
  78. package/apps/app-lifeops/src/lifeops/subscriptions-types.d.ts +80 -0
  79. package/apps/app-lifeops/src/lifeops/subscriptions-types.d.ts.map +1 -0
  80. package/apps/app-lifeops/src/lifeops/twilio.d.ts.map +1 -1
  81. package/apps/app-lifeops/src/lifeops/twilio.js +4 -2
  82. package/apps/app-lifeops/src/lifeops/whatsapp-client.d.ts.map +1 -1
  83. package/apps/app-lifeops/src/lifeops/whatsapp-client.js +4 -2
  84. package/apps/app-lifeops/src/lifeops/x-poster.d.ts.map +1 -1
  85. package/apps/app-lifeops/src/lifeops/x-poster.js +12 -6
  86. package/apps/app-lifeops/src/lifeops/x-reader.d.ts.map +1 -1
  87. package/apps/app-lifeops/src/lifeops/x-reader.js +7 -5
  88. package/apps/app-lifeops/src/plugin.d.ts.map +1 -1
  89. package/apps/app-lifeops/src/plugin.js +31 -24
  90. package/apps/app-lifeops/src/provider.d.ts.map +1 -1
  91. package/apps/app-lifeops/src/provider.js +4 -4
  92. package/apps/app-lifeops/src/providers/inbox-triage.js +2 -2
  93. package/apps/app-lifeops/src/providers/lifeops.d.ts.map +1 -1
  94. package/apps/app-lifeops/src/providers/lifeops.js +19 -10
  95. package/apps/app-lifeops/src/providers/website-blocker.js +1 -1
  96. package/apps/app-lifeops/src/public.d.ts +4 -0
  97. package/apps/app-lifeops/src/public.d.ts.map +1 -0
  98. package/apps/app-lifeops/src/public.js +3 -0
  99. package/apps/app-lifeops/src/routes/plugin.d.ts +18 -0
  100. package/apps/app-lifeops/src/routes/plugin.d.ts.map +1 -0
  101. package/apps/app-lifeops/src/routes/plugin.js +270 -0
  102. package/apps/app-lifeops/src/website-blocker/chat-integration/actions/blockUntilTaskComplete.d.ts.map +1 -1
  103. package/apps/app-lifeops/src/website-blocker/chat-integration/actions/blockUntilTaskComplete.js +18 -2
  104. package/package.json +1 -1
  105. package/packages/agent/src/actions/browser-session.d.ts +3 -0
  106. package/packages/agent/src/actions/browser-session.d.ts.map +1 -0
  107. package/packages/agent/src/actions/browser-session.js +207 -0
  108. package/packages/agent/src/actions/context-signal.d.ts +1 -1
  109. package/packages/agent/src/actions/context-signal.d.ts.map +1 -1
  110. package/packages/agent/src/actions/context-signal.js +1 -1
  111. package/packages/agent/src/actions/extract-page.d.ts +3 -0
  112. package/packages/agent/src/actions/extract-page.d.ts.map +1 -0
  113. package/packages/agent/src/actions/extract-page.js +124 -0
  114. package/packages/agent/src/actions/grounded-action-reply.js +1 -1
  115. package/packages/agent/src/actions/recent-conversation-texts.d.ts +9 -0
  116. package/packages/agent/src/actions/recent-conversation-texts.d.ts.map +1 -0
  117. package/packages/agent/src/actions/recent-conversation-texts.js +81 -0
  118. package/packages/agent/src/actions/set-user-name.js +1 -1
  119. package/packages/agent/src/actions/web-search.d.ts +4 -10
  120. package/packages/agent/src/actions/web-search.d.ts.map +1 -1
  121. package/packages/agent/src/actions/web-search.js +89 -19
  122. package/packages/agent/src/api/binance-skill-helpers.d.ts.map +1 -1
  123. package/packages/agent/src/api/binance-skill-helpers.js +1 -1
  124. package/packages/agent/src/api/chat-augmentation.d.ts +1 -20
  125. package/packages/agent/src/api/chat-augmentation.d.ts.map +1 -1
  126. package/packages/agent/src/api/chat-augmentation.js +2 -110
  127. package/packages/agent/src/api/conversation-metadata.d.ts +9 -0
  128. package/packages/agent/src/api/conversation-metadata.d.ts.map +1 -0
  129. package/packages/agent/src/api/conversation-metadata.js +98 -0
  130. package/packages/agent/src/api/conversation-routes.d.ts.map +1 -1
  131. package/packages/agent/src/api/conversation-routes.js +40 -9
  132. package/packages/agent/src/api/permissions-routes.js +1 -1
  133. package/packages/agent/src/api/server-helpers-auth.js +1 -1
  134. package/packages/agent/src/api/server-helpers.d.ts +2 -1
  135. package/packages/agent/src/api/server-helpers.d.ts.map +1 -1
  136. package/packages/agent/src/api/server-helpers.js +2 -110
  137. package/packages/agent/src/api/server-types.d.ts +14 -0
  138. package/packages/agent/src/api/server-types.d.ts.map +1 -1
  139. package/packages/agent/src/api/server.d.ts.map +1 -1
  140. package/packages/agent/src/api/server.js +3 -13
  141. package/packages/agent/src/api/workbench-routes.d.ts.map +1 -1
  142. package/packages/agent/src/api/workbench-routes.js +0 -14
  143. package/packages/agent/src/auth/credentials.d.ts.map +1 -1
  144. package/packages/agent/src/auth/credentials.js +8 -0
  145. package/packages/agent/src/providers/automation-terminal-bridge.d.ts +3 -0
  146. package/packages/agent/src/providers/automation-terminal-bridge.d.ts.map +1 -0
  147. package/packages/agent/src/providers/automation-terminal-bridge.js +71 -0
  148. package/packages/agent/src/providers/recent-conversations.d.ts.map +1 -1
  149. package/packages/agent/src/providers/recent-conversations.js +5 -0
  150. package/packages/agent/src/providers/relevant-conversations.d.ts.map +1 -1
  151. package/packages/agent/src/providers/relevant-conversations.js +5 -0
  152. package/packages/agent/src/providers/user-name.d.ts.map +1 -1
  153. package/packages/agent/src/providers/user-name.js +1 -1
  154. package/packages/agent/src/runtime/eliza-plugin.d.ts.map +1 -1
  155. package/packages/agent/src/runtime/eliza-plugin.js +6 -0
  156. package/packages/agent/src/runtime/plugin-resolver.d.ts.map +1 -1
  157. package/packages/agent/src/runtime/plugin-resolver.js +115 -0
  158. package/packages/agent/src/services/browser-workspace-types.d.ts +5 -1
  159. package/packages/agent/src/services/browser-workspace-types.d.ts.map +1 -1
  160. package/packages/agent/src/services/browser-workspace.d.ts.map +1 -1
  161. package/packages/agent/src/services/browser-workspace.js +178 -7
  162. package/packages/agent/src/services/escalation.d.ts +0 -11
  163. package/packages/agent/src/services/escalation.d.ts.map +1 -1
  164. package/packages/agent/src/services/escalation.js +19 -58
  165. package/packages/agent/src/services/hosted-tools.d.ts +70 -0
  166. package/packages/agent/src/services/hosted-tools.d.ts.map +1 -0
  167. package/packages/agent/src/services/hosted-tools.js +87 -0
  168. package/packages/agent/src/services/owner-name.d.ts +4 -0
  169. package/packages/agent/src/services/owner-name.d.ts.map +1 -0
  170. package/packages/agent/src/services/owner-name.js +46 -0
  171. package/packages/agent/src/services/registry-client-queries.d.ts +1 -1
  172. package/packages/agent/src/services/registry-client-queries.js +1 -1
  173. package/packages/agent/src/services/registry-client-types.d.ts +1 -1
  174. package/packages/app-core/src/api/client-automations.d.ts +8 -0
  175. package/packages/app-core/src/api/client-automations.d.ts.map +1 -0
  176. package/packages/app-core/src/api/client-automations.js +7 -0
  177. package/packages/app-core/src/api/client-browser-workspace.d.ts +3 -0
  178. package/packages/app-core/src/api/client-browser-workspace.d.ts.map +1 -1
  179. package/packages/app-core/src/api/client-browser-workspace.js +3 -0
  180. package/packages/app-core/src/api/client-chat.d.ts +8 -2
  181. package/packages/app-core/src/api/client-chat.d.ts.map +1 -1
  182. package/packages/app-core/src/api/client-chat.js +14 -1
  183. package/packages/app-core/src/api/client-types-chat.d.ts +4 -0
  184. package/packages/app-core/src/api/client-types-chat.d.ts.map +1 -1
  185. package/packages/app-core/src/api/client-types-config.d.ts +67 -2
  186. package/packages/app-core/src/api/client-types-config.d.ts.map +1 -1
  187. package/packages/app-core/src/api/client.d.ts +1 -0
  188. package/packages/app-core/src/api/client.d.ts.map +1 -1
  189. package/packages/app-core/src/api/client.js +1 -0
  190. package/packages/app-core/src/components/apps/helpers.d.ts +1 -1
  191. package/packages/app-core/src/components/apps/helpers.d.ts.map +1 -1
  192. package/packages/app-core/src/components/apps/helpers.js +5 -9
  193. package/packages/app-core/src/components/apps/internal-tool-apps.d.ts.map +1 -1
  194. package/packages/app-core/src/components/apps/internal-tool-apps.js +10 -1
  195. package/packages/app-core/src/components/conversations/conversation-sidebar-model.d.ts.map +1 -1
  196. package/packages/app-core/src/components/conversations/conversation-sidebar-model.js +6 -0
  197. package/packages/app-core/src/components/pages/AutomationRoomChatPane.d.ts +16 -0
  198. package/packages/app-core/src/components/pages/AutomationRoomChatPane.d.ts.map +1 -0
  199. package/packages/app-core/src/components/pages/AutomationRoomChatPane.js +202 -0
  200. package/packages/app-core/src/components/pages/AutomationsView.d.ts +1 -4
  201. package/packages/app-core/src/components/pages/AutomationsView.d.ts.map +1 -1
  202. package/packages/app-core/src/components/pages/AutomationsView.js +565 -265
  203. package/packages/app-core/src/components/pages/BrowserWorkspaceView.d.ts.map +1 -1
  204. package/packages/app-core/src/components/pages/BrowserWorkspaceView.js +118 -24
  205. package/packages/app-core/src/components/pages/automation-conversations.d.ts +15 -0
  206. package/packages/app-core/src/components/pages/automation-conversations.d.ts.map +1 -0
  207. package/packages/app-core/src/components/pages/automation-conversations.js +190 -0
  208. package/packages/app-core/src/components/pages/plugin-list-utils.js +4 -4
  209. package/packages/app-core/src/config/boot-config-store.d.ts +1 -1
  210. package/packages/app-core/src/config/boot-config-store.d.ts.map +1 -1
  211. package/packages/app-core/src/state/useOnboardingCallbacks.d.ts +14 -0
  212. package/packages/app-core/src/state/useOnboardingCallbacks.d.ts.map +1 -1
  213. package/packages/app-core/src/state/useOnboardingCallbacks.js +1 -1
  214. package/packages/app-core/src/state/usePluginsSkillsState.d.ts +2 -2
  215. package/packages/app-core/src/utils/desktop-workspace.d.ts +2 -2
  216. package/packages/app-core/src/utils/desktop-workspace.d.ts.map +1 -1
  217. package/packages/app-core/src/utils/desktop-workspace.js +7 -2
  218. package/packages/shared/src/contracts/lifeops.d.ts +26 -0
  219. package/packages/shared/src/contracts/lifeops.d.ts.map +1 -1
  220. package/packages/shared/src/contracts/lifeops.js +28 -0
  221. package/packages/typescript/src/actions.d.ts.map +1 -1
  222. package/packages/typescript/src/actions.js +12 -0
  223. package/packages/typescript/src/features/advanced-capabilities/actions/scheduleFollowUp.d.ts.map +1 -1
  224. package/packages/typescript/src/features/advanced-capabilities/actions/scheduleFollowUp.js +8 -2
  225. package/packages/typescript/src/features/advanced-capabilities/providers/settings.d.ts.map +1 -1
  226. package/packages/typescript/src/features/advanced-capabilities/providers/settings.js +11 -3
  227. package/packages/typescript/src/features/basic-capabilities/providers/actions.d.ts.map +1 -1
  228. package/packages/typescript/src/features/basic-capabilities/providers/actions.js +23 -1
  229. package/packages/typescript/src/features/basic-capabilities/providers/non-actionable-chatter.d.ts +5 -0
  230. package/packages/typescript/src/features/basic-capabilities/providers/non-actionable-chatter.d.ts.map +1 -0
  231. package/packages/typescript/src/features/basic-capabilities/providers/non-actionable-chatter.js +22 -0
  232. package/packages/typescript/src/features/basic-capabilities/providers/providers.d.ts.map +1 -1
  233. package/packages/typescript/src/features/basic-capabilities/providers/providers.js +10 -5
  234. package/packages/typescript/src/features/knowledge/documents-provider.d.ts.map +1 -1
  235. package/packages/typescript/src/features/knowledge/documents-provider.js +1 -0
  236. package/packages/typescript/src/features/shared/schedule-follow-up-response.d.ts +10 -0
  237. package/packages/typescript/src/features/shared/schedule-follow-up-response.d.ts.map +1 -0
  238. package/packages/typescript/src/features/shared/schedule-follow-up-response.js +49 -0
  239. package/packages/typescript/src/features/trajectories/TrajectoriesService.d.ts +1 -0
  240. package/packages/typescript/src/features/trajectories/TrajectoriesService.d.ts.map +1 -1
  241. package/packages/typescript/src/features/trajectories/TrajectoriesService.js +21 -2
  242. package/packages/typescript/src/features/trust/providers/settings.d.ts.map +1 -1
  243. package/packages/typescript/src/features/trust/providers/settings.js +11 -1
  244. package/packages/typescript/src/prompts.d.ts +4 -4
  245. package/packages/typescript/src/prompts.d.ts.map +1 -1
  246. package/packages/typescript/src/prompts.js +10 -2
  247. package/packages/typescript/src/services/message.d.ts +1 -0
  248. package/packages/typescript/src/services/message.d.ts.map +1 -1
  249. package/packages/typescript/src/services/message.js +483 -18
  250. package/packages/typescript/src/types/components.d.ts +6 -0
  251. package/packages/typescript/src/types/components.d.ts.map +1 -1
  252. package/packages/typescript/src/utils/context-routing.d.ts.map +1 -1
  253. package/packages/typescript/src/utils/context-routing.js +5 -1
  254. package/packages/typescript/src/utils/toon.d.ts.map +1 -1
  255. package/packages/typescript/src/utils/toon.js +23 -2
  256. package/packages/typescript/src/utils.d.ts +1 -0
  257. package/packages/typescript/src/utils.d.ts.map +1 -1
  258. package/packages/typescript/src/utils.js +1 -0
  259. package/apps/app-lifeops/src/types/app-blocker-settings-card.d.ts +0 -2
  260. package/apps/app-lifeops/src/types/app-blocker-settings-card.d.ts.map +0 -1
  261. package/apps/app-lifeops/src/types/index.d.ts +0 -3
  262. package/apps/app-lifeops/src/types/index.d.ts.map +0 -1
  263. package/apps/app-lifeops/src/types/index.js +0 -1
  264. package/apps/app-lifeops/src/types/website-blocker-settings-card.d.ts +0 -2
  265. package/apps/app-lifeops/src/types/website-blocker-settings-card.d.ts.map +0 -1
  266. package/apps/app-lifeops/src/types/website-blocker-settings-card.js +0 -1
  267. package/packages/agent/src/contracts/lifeops.d.ts +0 -2
  268. package/packages/agent/src/contracts/lifeops.d.ts.map +0 -1
  269. package/packages/agent/src/contracts/lifeops.js +0 -1
  270. package/packages/app-core/src/components/pages/N8nWorkflowsPanel.d.ts +0 -18
  271. package/packages/app-core/src/components/pages/N8nWorkflowsPanel.d.ts.map +0 -1
  272. package/packages/app-core/src/components/pages/N8nWorkflowsPanel.js +0 -542
  273. /package/apps/app-lifeops/src/{types/app-blocker-settings-card.js → lifeops/subscriptions-types.js} +0 -0
@@ -52,6 +52,115 @@ function redactUserSegments(filepath) {
52
52
  function sanitizePluginCacheSegment(value) {
53
53
  return value.replace(/[^a-zA-Z0-9._-]+/g, "_");
54
54
  }
55
+ function packageNodeModulesEntryPath(nodeModulesDir, packageName) {
56
+ return path.join(nodeModulesDir, ...packageName.split("/"));
57
+ }
58
+ async function pathEntryExists(targetPath) {
59
+ try {
60
+ await fs.lstat(targetPath);
61
+ return true;
62
+ }
63
+ catch (error) {
64
+ if (error.code === "ENOENT") {
65
+ return false;
66
+ }
67
+ throw error;
68
+ }
69
+ }
70
+ async function readPluginPackageManifest(packageRoot) {
71
+ try {
72
+ return JSON.parse(await fs.readFile(path.join(packageRoot, "package.json"), "utf8"));
73
+ }
74
+ catch (error) {
75
+ if (error.code === "ENOENT") {
76
+ return null;
77
+ }
78
+ throw error;
79
+ }
80
+ }
81
+ function collectDeclaredPluginDependencies(manifest) {
82
+ const collected = new Map();
83
+ for (const name of Object.keys(manifest.dependencies ?? {})) {
84
+ collected.set(name, { name, optional: false });
85
+ }
86
+ for (const name of Object.keys(manifest.optionalDependencies ?? {})) {
87
+ if (!collected.has(name)) {
88
+ collected.set(name, { name, optional: true });
89
+ }
90
+ }
91
+ for (const name of Object.keys(manifest.peerDependencies ?? {})) {
92
+ if (collected.has(name)) {
93
+ continue;
94
+ }
95
+ const optional = manifest.peerDependenciesMeta?.[name]?.optional === true;
96
+ collected.set(name, { name, optional });
97
+ }
98
+ return [...collected.values()].sort((left, right) => left.name.localeCompare(right.name));
99
+ }
100
+ async function stageDependencyIntoNodeModules(params) {
101
+ const sourcePath = packageNodeModulesEntryPath(params.sourceNodeModulesDir, params.dependencyName);
102
+ if (!(await pathEntryExists(sourcePath))) {
103
+ return false;
104
+ }
105
+ const targetPath = packageNodeModulesEntryPath(params.targetNodeModulesDir, params.dependencyName);
106
+ if (await pathEntryExists(targetPath)) {
107
+ return true;
108
+ }
109
+ await fs.mkdir(path.dirname(targetPath), { recursive: true });
110
+ const stat = await fs.lstat(sourcePath);
111
+ if (stat.isSymbolicLink()) {
112
+ await fs.symlink(await fs.realpath(sourcePath), targetPath);
113
+ return true;
114
+ }
115
+ if (!stat.isDirectory()) {
116
+ return false;
117
+ }
118
+ await fs.cp(sourcePath, targetPath, {
119
+ recursive: true,
120
+ force: true,
121
+ dereference: true,
122
+ });
123
+ return true;
124
+ }
125
+ async function ensureStagedPackageDependencies(params) {
126
+ const stagedNodeModulesPath = path.join(params.stagedPackageRoot, "node_modules");
127
+ if (!(await pathEntryExists(stagedNodeModulesPath))) {
128
+ return;
129
+ }
130
+ const manifest = await readPluginPackageManifest(params.packageRoot);
131
+ if (!manifest) {
132
+ return;
133
+ }
134
+ const dependencies = collectDeclaredPluginDependencies(manifest);
135
+ if (dependencies.length === 0) {
136
+ return;
137
+ }
138
+ const sourceNodeModulesDirs = uniquePaths([
139
+ path.join(params.packageRoot, "node_modules"),
140
+ path.join(params.installRoot, "node_modules"),
141
+ ...(await findAncestorNodeModulesDirs(params.packageRoot)),
142
+ ]);
143
+ for (const dependency of dependencies) {
144
+ const stagedDependencyPath = packageNodeModulesEntryPath(stagedNodeModulesPath, dependency.name);
145
+ if (await pathEntryExists(stagedDependencyPath)) {
146
+ continue;
147
+ }
148
+ let staged = false;
149
+ for (const sourceNodeModulesDir of sourceNodeModulesDirs) {
150
+ staged = await stageDependencyIntoNodeModules({
151
+ dependencyName: dependency.name,
152
+ sourceNodeModulesDir,
153
+ targetNodeModulesDir: stagedNodeModulesPath,
154
+ });
155
+ if (staged) {
156
+ break;
157
+ }
158
+ }
159
+ if (!staged && !dependency.optional) {
160
+ logger.warn(`[eliza] Staged plugin ${params.packageName} is missing declared dependency ${dependency.name}`);
161
+ }
162
+ }
163
+ }
55
164
  // ---------------------------------------------------------------------------
56
165
  // Workspace plugin overrides
57
166
  // ---------------------------------------------------------------------------
@@ -478,6 +587,12 @@ async function stagePluginImportRoot(params) {
478
587
  packageRoot: params.packageRoot,
479
588
  stagedPackageRoot,
480
589
  });
590
+ await ensureStagedPackageDependencies({
591
+ installRoot: params.installRoot,
592
+ packageName: params.packageName,
593
+ packageRoot: params.packageRoot,
594
+ stagedPackageRoot,
595
+ });
481
596
  return stagedPackageRoot;
482
597
  }
483
598
  /**
@@ -1,5 +1,5 @@
1
1
  import type { JSDOM } from "jsdom";
2
- export type BrowserWorkspaceMode = "desktop" | "web";
2
+ export type BrowserWorkspaceMode = "cloud" | "desktop" | "web";
3
3
  export type BrowserWorkspaceOperation = "list" | "open" | "navigate" | "show" | "hide" | "close" | "eval" | "screenshot";
4
4
  export type BrowserWorkspaceSubaction = BrowserWorkspaceOperation | "back" | "batch" | "check" | "clipboard" | "click" | "fill" | "find" | "focus" | "forward" | "frame" | "get" | "hover" | "inspect" | "keydown" | "keyup" | "keyboardinserttext" | "keyboardtype" | "console" | "cookies" | "diff" | "dialog" | "press" | "drag" | "errors" | "highlight" | "mouse" | "network" | "pdf" | "profiler" | "reload" | "scroll" | "scrollinto" | "select" | "set" | "snapshot" | "state" | "storage" | "tab" | "trace" | "type" | "dblclick" | "upload" | "uncheck" | "wait" | "window";
5
5
  export type BrowserWorkspaceGetMode = "attr" | "box" | "checked" | "count" | "enabled" | "html" | "styles" | "text" | "title" | "url" | "value" | "visible";
@@ -33,6 +33,10 @@ export interface BrowserWorkspaceTab {
33
33
  createdAt: string;
34
34
  updatedAt: string;
35
35
  lastFocusedAt: string | null;
36
+ liveViewUrl?: string | null;
37
+ interactiveLiveViewUrl?: string | null;
38
+ status?: string | null;
39
+ provider?: string | null;
36
40
  }
37
41
  export interface BrowserWorkspaceSnapshot {
38
42
  mode: BrowserWorkspaceMode;
@@ -1 +1 @@
1
- {"version":3,"file":"browser-workspace-types.d.ts","sourceRoot":"","sources":["../../../../../../agent/src/services/browser-workspace-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browser-workspace-types.d.ts","sourceRoot":"","sources":["../../../../../../agent/src/services/browser-workspace-types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"browser-workspace.d.ts","sourceRoot":"","sources":["../../../../../../agent/src/services/browser-workspace.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAMH,YAAY,EACV,4BAA4B,EAC5B,+BAA+B,EAC/B,uBAAuB,EACvB,6BAA6B,EAC7B,6BAA6B,EAC7B,4BAA4B,EAC5B,4BAA4B,EAC5B,0BAA0B,EAC1B,iCAAiC,EACjC,0BAA0B,EAC1B,sBAAsB,EACtB,2BAA2B,EAC3B,uBAAuB,EACvB,oBAAoB,EACpB,2BAA2B,EAC3B,2BAA2B,EAC3B,6BAA6B,EAC7B,yBAAyB,EACzB,8BAA8B,EAC9B,+BAA+B,EAC/B,yBAAyB,EACzB,wBAAwB,EACxB,2BAA2B,EAC3B,6BAA6B,EAC7B,2BAA2B,EAC3B,yBAAyB,EACzB,mBAAmB,EACnB,yBAAyB,EACzB,2BAA2B,EAC3B,yBAAyB,EACzB,4BAA4B,EAC5B,kCAAkC,EAClC,kCAAkC,EAClC,8BAA8B,GAC/B,MAAM,8BAA8B,CAAC;AAEtC,OAAO,KAAK,EACV,uBAAuB,EACvB,6BAA6B,EAC7B,oBAAoB,EACpB,wBAAwB,EACxB,mBAAmB,EACnB,kCAAkC,EAClC,kCAAkC,EAClC,8BAA8B,EAE/B,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EAAE,oCAAoC,EAAE,MAAM,8BAA8B,CAAC;AAGpF,OAAO,EAML,qCAAqC,EAGrC,kCAAkC,EAGlC,mCAAmC,EAIpC,MAAM,gCAAgC,CAAC;AAaxC,OAAO,EACL,qCAAqC,EACrC,kCAAkC,EAClC,mCAAmC,GACpC,CAAC;AAgDF,wBAAgB,uBAAuB,CACrC,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,oBAAoB,CAEtB;AAED,wBAAsB,2BAA2B,CAC/C,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,OAAO,CAAC,wBAAwB,CAAC,CAKnC;AAED,wBAAsB,wBAAwB,CAC5C,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAkBhC;AAED,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,8BAA8B,EACvC,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,OAAO,CAAC,mBAAmB,CAAC,CAkD9B;AAED,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,kCAAkC,EAC3C,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,OAAO,CAAC,mBAAmB,CAAC,CAgD9B;AAED,wBAAsB,uBAAuB,CAC3C,EAAE,EAAE,MAAM,EACV,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,OAAO,CAAC,mBAAmB,CAAC,CAuB9B;AAED,wBAAsB,uBAAuB,CAC3C,EAAE,EAAE,MAAM,EACV,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,OAAO,CAAC,mBAAmB,CAAC,CA6B9B;AAED,wBAAsB,wBAAwB,CAC5C,EAAE,EAAE,MAAM,EACV,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,OAAO,CAAC,OAAO,CAAC,CAmBlB;AAED,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,kCAAkC,EAC3C,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,OAAO,CAAC,OAAO,CAAC,CAElB;AAED,wBAAsB,2BAA2B,CAC/C,EAAE,EAAE,MAAM,EACV,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAE3B;AAMD,wBAAsB,8BAA8B,CAClD,OAAO,EAAE,uBAAuB,EAChC,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,OAAO,CAAC,6BAA6B,CAAC,CAqgBxC"}
1
+ {"version":3,"file":"browser-workspace.d.ts","sourceRoot":"","sources":["../../../../../../agent/src/services/browser-workspace.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAMH,YAAY,EACV,4BAA4B,EAC5B,+BAA+B,EAC/B,uBAAuB,EACvB,6BAA6B,EAC7B,6BAA6B,EAC7B,4BAA4B,EAC5B,4BAA4B,EAC5B,0BAA0B,EAC1B,iCAAiC,EACjC,0BAA0B,EAC1B,sBAAsB,EACtB,2BAA2B,EAC3B,uBAAuB,EACvB,oBAAoB,EACpB,2BAA2B,EAC3B,2BAA2B,EAC3B,6BAA6B,EAC7B,yBAAyB,EACzB,8BAA8B,EAC9B,+BAA+B,EAC/B,yBAAyB,EACzB,wBAAwB,EACxB,2BAA2B,EAC3B,6BAA6B,EAC7B,2BAA2B,EAC3B,yBAAyB,EACzB,mBAAmB,EACnB,yBAAyB,EACzB,2BAA2B,EAC3B,yBAAyB,EACzB,4BAA4B,EAC5B,kCAAkC,EAClC,kCAAkC,EAClC,8BAA8B,GAC/B,MAAM,8BAA8B,CAAC;AAEtC,OAAO,KAAK,EACV,uBAAuB,EACvB,6BAA6B,EAC7B,oBAAoB,EACpB,wBAAwB,EACxB,mBAAmB,EACnB,kCAAkC,EAClC,kCAAkC,EAClC,8BAA8B,EAE/B,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EAAE,oCAAoC,EAAE,MAAM,8BAA8B,CAAC;AAGpF,OAAO,EAML,qCAAqC,EAGrC,kCAAkC,EAGlC,mCAAmC,EAIpC,MAAM,gCAAgC,CAAC;AAaxC,OAAO,EACL,qCAAqC,EACrC,kCAAkC,EAClC,mCAAmC,GACpC,CAAC;AA0DF,wBAAgB,uBAAuB,CACrC,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,oBAAoB,CAQtB;AAED,wBAAsB,2BAA2B,CAC/C,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,OAAO,CAAC,wBAAwB,CAAC,CAKnC;AAED,wBAAsB,wBAAwB,CAC5C,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAwBhC;AAED,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,8BAA8B,EACvC,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,OAAO,CAAC,mBAAmB,CAAC,CA+D9B;AAED,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,kCAAkC,EAC3C,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,OAAO,CAAC,mBAAmB,CAAC,CAsD9B;AAED,wBAAsB,uBAAuB,CAC3C,EAAE,EAAE,MAAM,EACV,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,OAAO,CAAC,mBAAmB,CAAC,CA6B9B;AAED,wBAAsB,uBAAuB,CAC3C,EAAE,EAAE,MAAM,EACV,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,OAAO,CAAC,mBAAmB,CAAC,CAmC9B;AAED,wBAAsB,wBAAwB,CAC5C,EAAE,EAAE,MAAM,EACV,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,OAAO,CAAC,OAAO,CAAC,CAyBlB;AAED,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,kCAAkC,EAC3C,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,OAAO,CAAC,OAAO,CAAC,CAclB;AAED,wBAAsB,2BAA2B,CAC/C,EAAE,EAAE,MAAM,EACV,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAK3B;AAoKD,wBAAsB,8BAA8B,CAClD,OAAO,EAAE,uBAAuB,EAChC,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,OAAO,CAAC,6BAA6B,CAAC,CA6gBxC"}
@@ -36,11 +36,18 @@ import { createBrowserWorkspacePdfBuffer, createBrowserWorkspaceSnapshotRecord,
36
36
  import { clearBrowserWorkspaceElementRefs, clearBrowserWorkspaceRuntimeState, getBrowserWorkspaceRuntimeState, getBrowserWorkspaceTimestamp, resetBrowserWorkspaceRuntimeNavigationState, webWorkspaceState, withWebStateLock, } from "./browser-workspace-state.js";
37
37
  // ── Re-export web ────────────────────────────────────────────────────
38
38
  import { executeWebBrowserWorkspaceDomCommand, executeWebBrowserWorkspaceUtilityCommand, findWebBrowserWorkspaceTargetTabId, getWebBrowserWorkspaceTabIndex, getWebBrowserWorkspaceTabState, } from "./browser-workspace-web.js";
39
+ import { createHostedCloudBrowserSession, deleteHostedCloudBrowserSession, executeHostedCloudBrowserCommand, getHostedCloudBrowserSession, isHostedCloudToolingConfigured, listHostedCloudBrowserSessions, navigateHostedCloudBrowserSession, snapshotHostedCloudBrowserSession, } from "./hosted-tools.js";
39
40
  // ────────────────────────────────────────────────────────────────────
40
41
  // Public API functions
41
42
  // ────────────────────────────────────────────────────────────────────
42
43
  export function getBrowserWorkspaceMode(env = process.env) {
43
- return isBrowserWorkspaceBridgeConfigured(env) ? "desktop" : "web";
44
+ if (isBrowserWorkspaceBridgeConfigured(env)) {
45
+ return "desktop";
46
+ }
47
+ if (isHostedCloudToolingConfigured(env)) {
48
+ return "cloud";
49
+ }
50
+ return "web";
44
51
  }
45
52
  export async function getBrowserWorkspaceSnapshot(env = process.env) {
46
53
  return {
@@ -49,7 +56,11 @@ export async function getBrowserWorkspaceSnapshot(env = process.env) {
49
56
  };
50
57
  }
51
58
  export async function listBrowserWorkspaceTabs(env = process.env) {
52
- if (!isBrowserWorkspaceBridgeConfigured(env)) {
59
+ const mode = getBrowserWorkspaceMode(env);
60
+ if (mode === "cloud") {
61
+ return listHostedCloudBrowserSessions(env);
62
+ }
63
+ if (mode === "web") {
53
64
  return webWorkspaceState.tabs.map((tab) => ({
54
65
  id: tab.id,
55
66
  title: tab.title,
@@ -65,7 +76,15 @@ export async function listBrowserWorkspaceTabs(env = process.env) {
65
76
  return Array.isArray(payload.tabs) ? payload.tabs : [];
66
77
  }
67
78
  export async function openBrowserWorkspaceTab(request, env = process.env) {
68
- if (!isBrowserWorkspaceBridgeConfigured(env)) {
79
+ const mode = getBrowserWorkspaceMode(env);
80
+ if (mode === "cloud") {
81
+ return createHostedCloudBrowserSession({
82
+ show: request.show,
83
+ title: request.title,
84
+ url: request.url,
85
+ }, env);
86
+ }
87
+ if (mode === "web") {
69
88
  return withWebStateLock(() => {
70
89
  const now = getBrowserWorkspaceTimestamp();
71
90
  const url = assertBrowserWorkspaceUrl(request.url?.trim() || "about:blank");
@@ -109,7 +128,11 @@ export async function openBrowserWorkspaceTab(request, env = process.env) {
109
128
  }
110
129
  export async function navigateBrowserWorkspaceTab(request, env = process.env) {
111
130
  const nextUrl = assertBrowserWorkspaceUrl(request.url);
112
- if (!isBrowserWorkspaceBridgeConfigured(env)) {
131
+ const mode = getBrowserWorkspaceMode(env);
132
+ if (mode === "cloud") {
133
+ return navigateHostedCloudBrowserSession(request.id, nextUrl, env);
134
+ }
135
+ if (mode === "web") {
113
136
  return withWebStateLock(() => {
114
137
  const index = getWebBrowserWorkspaceTabIndex(request.id);
115
138
  if (index < 0) {
@@ -149,7 +172,11 @@ export async function navigateBrowserWorkspaceTab(request, env = process.env) {
149
172
  return payload.tab;
150
173
  }
151
174
  export async function showBrowserWorkspaceTab(id, env = process.env) {
152
- if (!isBrowserWorkspaceBridgeConfigured(env)) {
175
+ const mode = getBrowserWorkspaceMode(env);
176
+ if (mode === "cloud") {
177
+ return getHostedCloudBrowserSession(id, env);
178
+ }
179
+ if (mode === "web") {
153
180
  return withWebStateLock(() => {
154
181
  getWebBrowserWorkspaceTabState(id);
155
182
  const lastFocusedAt = getBrowserWorkspaceTimestamp();
@@ -166,7 +193,11 @@ export async function showBrowserWorkspaceTab(id, env = process.env) {
166
193
  return payload.tab;
167
194
  }
168
195
  export async function hideBrowserWorkspaceTab(id, env = process.env) {
169
- if (!isBrowserWorkspaceBridgeConfigured(env)) {
196
+ const mode = getBrowserWorkspaceMode(env);
197
+ if (mode === "cloud") {
198
+ return getHostedCloudBrowserSession(id, env);
199
+ }
200
+ if (mode === "web") {
170
201
  return withWebStateLock(() => {
171
202
  const index = getWebBrowserWorkspaceTabIndex(id);
172
203
  if (index < 0) {
@@ -190,7 +221,11 @@ export async function hideBrowserWorkspaceTab(id, env = process.env) {
190
221
  return payload.tab;
191
222
  }
192
223
  export async function closeBrowserWorkspaceTab(id, env = process.env) {
193
- if (!isBrowserWorkspaceBridgeConfigured(env)) {
224
+ const mode = getBrowserWorkspaceMode(env);
225
+ if (mode === "cloud") {
226
+ return deleteHostedCloudBrowserSession(id, env);
227
+ }
228
+ if (mode === "web") {
194
229
  return withWebStateLock(() => {
195
230
  const initialLength = webWorkspaceState.tabs.length;
196
231
  clearWebBrowserWorkspaceTabElementRefs(id);
@@ -203,16 +238,152 @@ export async function closeBrowserWorkspaceTab(id, env = process.env) {
203
238
  return payload.closed === true;
204
239
  }
205
240
  export async function evaluateBrowserWorkspaceTab(request, env = process.env) {
241
+ if (getBrowserWorkspaceMode(env) === "cloud") {
242
+ const result = await executeHostedCloudBrowserCommand(request.id, {
243
+ id: request.id,
244
+ script: request.script,
245
+ subaction: "eval",
246
+ }, env);
247
+ return result.output;
248
+ }
206
249
  return evaluateBrowserWorkspaceTabDesktop(request, env);
207
250
  }
208
251
  export async function snapshotBrowserWorkspaceTab(id, env = process.env) {
252
+ if (getBrowserWorkspaceMode(env) === "cloud") {
253
+ return snapshotHostedCloudBrowserSession(id, env);
254
+ }
209
255
  return snapshotBrowserWorkspaceTabDesktop(id, env);
210
256
  }
257
+ async function resolveHostedCloudBrowserTargetTabId(command, env) {
258
+ const explicitId = command.id?.trim();
259
+ if (explicitId) {
260
+ return explicitId;
261
+ }
262
+ const tabs = await listHostedCloudBrowserSessions(env);
263
+ const fallbackId = tabs.find((tab) => tab.visible)?.id ?? tabs[0]?.id;
264
+ if (!fallbackId) {
265
+ throw new Error("Eliza browser workspace command requires an active cloud browser session.");
266
+ }
267
+ return fallbackId;
268
+ }
269
+ async function executeHostedCloudBrowserWorkspaceCommand(command, env) {
270
+ if (command.subaction === "list") {
271
+ return {
272
+ mode: "cloud",
273
+ subaction: command.subaction,
274
+ tabs: await listHostedCloudBrowserSessions(env),
275
+ };
276
+ }
277
+ if (command.subaction === "open" || command.subaction === "window") {
278
+ return {
279
+ mode: "cloud",
280
+ subaction: command.subaction,
281
+ tab: await createHostedCloudBrowserSession({
282
+ show: command.show ?? true,
283
+ title: command.title,
284
+ url: command.url,
285
+ }, env),
286
+ };
287
+ }
288
+ if (command.subaction === "tab") {
289
+ const action = command.tabAction ?? "list";
290
+ if (action === "list") {
291
+ return {
292
+ mode: "cloud",
293
+ subaction: command.subaction,
294
+ tabs: await listHostedCloudBrowserSessions(env),
295
+ };
296
+ }
297
+ if (action === "new") {
298
+ return {
299
+ mode: "cloud",
300
+ subaction: command.subaction,
301
+ tab: await createHostedCloudBrowserSession({
302
+ show: command.show ?? true,
303
+ title: command.title,
304
+ url: command.url,
305
+ }, env),
306
+ };
307
+ }
308
+ if (action === "switch") {
309
+ const targetId = await resolveHostedCloudBrowserTargetTabId(command, env);
310
+ return {
311
+ mode: "cloud",
312
+ subaction: command.subaction,
313
+ tab: await getHostedCloudBrowserSession(targetId, env),
314
+ };
315
+ }
316
+ const targetId = await resolveHostedCloudBrowserTargetTabId(command, env);
317
+ return {
318
+ mode: "cloud",
319
+ subaction: command.subaction,
320
+ closed: await deleteHostedCloudBrowserSession(targetId, env),
321
+ };
322
+ }
323
+ if (command.subaction === "show" || command.subaction === "hide") {
324
+ const targetId = await resolveHostedCloudBrowserTargetTabId(command, env);
325
+ return {
326
+ mode: "cloud",
327
+ subaction: command.subaction,
328
+ tab: await getHostedCloudBrowserSession(targetId, env),
329
+ };
330
+ }
331
+ if (command.subaction === "close") {
332
+ const targetId = await resolveHostedCloudBrowserTargetTabId(command, env);
333
+ return {
334
+ mode: "cloud",
335
+ subaction: command.subaction,
336
+ closed: await deleteHostedCloudBrowserSession(targetId, env),
337
+ };
338
+ }
339
+ if (command.subaction === "navigate" && !command.id?.trim()) {
340
+ return {
341
+ mode: "cloud",
342
+ subaction: command.subaction,
343
+ tab: await createHostedCloudBrowserSession({
344
+ show: command.show ?? true,
345
+ title: command.title,
346
+ url: command.url,
347
+ }, env),
348
+ };
349
+ }
350
+ const targetId = await resolveHostedCloudBrowserTargetTabId(command, env);
351
+ if (command.subaction === "navigate") {
352
+ return {
353
+ mode: "cloud",
354
+ subaction: command.subaction,
355
+ tab: await navigateHostedCloudBrowserSession(targetId, command.url ?? "", env),
356
+ };
357
+ }
358
+ if (command.subaction === "screenshot" || command.subaction === "snapshot") {
359
+ return {
360
+ mode: "cloud",
361
+ subaction: command.subaction,
362
+ snapshot: await snapshotHostedCloudBrowserSession(targetId, env),
363
+ tab: await getHostedCloudBrowserSession(targetId, env),
364
+ };
365
+ }
366
+ const result = await executeHostedCloudBrowserCommand(targetId, {
367
+ ...command,
368
+ id: targetId,
369
+ }, env);
370
+ return {
371
+ mode: "cloud",
372
+ subaction: command.subaction,
373
+ snapshot: result.snapshot,
374
+ tab: result.session,
375
+ value: result.output,
376
+ };
377
+ }
211
378
  // ────────────────────────────────────────────────────────────────────
212
379
  // Main command router
213
380
  // ────────────────────────────────────────────────────────────────────
214
381
  export async function executeBrowserWorkspaceCommand(command, env = process.env) {
215
382
  command = normalizeBrowserWorkspaceCommand(command);
383
+ if (getBrowserWorkspaceMode(env) === "cloud" &&
384
+ command.subaction !== "batch") {
385
+ return executeHostedCloudBrowserWorkspaceCommand(command, env);
386
+ }
216
387
  switch (command.subaction) {
217
388
  case "batch": {
218
389
  const steps = Array.isArray(command.steps) ? command.steps : [];
@@ -28,19 +28,8 @@ export declare class EscalationService {
28
28
  static resolveEscalation(escalationId: string, runtime?: IAgentRuntime): Promise<void>;
29
29
  static getActiveEscalationSync(): EscalationState | null;
30
30
  static getActiveEscalation(runtime: IAgentRuntime): Promise<EscalationState | null>;
31
- /**
32
- * Rehydrate unresolved escalations from DB into the in-memory cache.
33
- *
34
- * Call during agent startup so that escalations created before a restart
35
- * are visible to `getActiveEscalationSync()` and can be detected by
36
- * the next `processReminders` cycle.
37
- *
38
- * Timers are intentionally NOT recreated -- the periodic reminder loop
39
- * will pick up stale unresolved escalations and advance them.
40
- */
41
31
  static rehydrateFromDb(runtime: IAgentRuntime): Promise<void>;
42
32
  static _reset(): void;
43
- /** Clear DB state for a given agent. Use in tests alongside `_reset()`. */
44
33
  static _resetDb(runtime: IAgentRuntime): Promise<void>;
45
34
  }
46
35
  //# sourceMappingURL=escalation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"escalation.d.ts","sourceRoot":"","sources":["../../../../../../agent/src/services/escalation.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAQ,MAAM,eAAe,CAAC;AAoBzD,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AA2FD;;;;;;;;;;GAUG;AACH,wBAAgB,yBAAyB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAsDtE;AAyLD,qBAAa,iBAAiB;WACf,eAAe,CAC1B,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,eAAe,CAAC;WAoEd,eAAe,CAC1B,OAAO,EAAE,aAAa,EACtB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC;WAgEH,iBAAiB,CAC5B,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,IAAI,CAAC;IAoBhB,MAAM,CAAC,uBAAuB,IAAI,eAAe,GAAG,IAAI;WAO3C,mBAAmB,CAC9B,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAalC;;;;;;;;;OASG;WACU,eAAe,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAUnE,MAAM,CAAC,MAAM,IAAI,IAAI;IAOrB,2EAA2E;WAC9D,QAAQ,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;CAQ7D"}
1
+ {"version":3,"file":"escalation.d.ts","sourceRoot":"","sources":["../../../../../../agent/src/services/escalation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAQ,MAAM,eAAe,CAAC;AAoBzD,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AA8DD;;;;;;;;;;GAUG;AACH,wBAAgB,yBAAyB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAsDtE;AAyLD,qBAAa,iBAAiB;WACf,eAAe,CAC1B,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,eAAe,CAAC;WAoEd,eAAe,CAC1B,OAAO,EAAE,aAAa,EACtB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC;WAgEH,iBAAiB,CAC5B,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,IAAI,CAAC;IAoBhB,MAAM,CAAC,uBAAuB,IAAI,eAAe,GAAG,IAAI;WAO3C,mBAAmB,CAC9B,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;WAYrB,eAAe,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAUnE,MAAM,CAAC,MAAM,IAAI,IAAI;WAOR,QAAQ,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;CAO7D"}
@@ -1,4 +1,3 @@
1
- import { LifeOpsRepository, } from "@elizaos/app-lifeops/lifeops/repository";
2
1
  import { logger } from "@elizaos/core";
3
2
  import { loadElizaConfig, saveElizaConfig } from "../config/config.js";
4
3
  import { loadOwnerContactRoutingHints, loadOwnerContactsConfig, resolveOwnerContactWithFallback, } from "../config/owner-contacts.js";
@@ -7,59 +6,34 @@ import { hasRuntimeSendHandler, logMissingSendHandlerOnce, } from "./send-handle
7
6
  const DEFAULT_CHANNELS = ["client_chat"];
8
7
  const DEFAULT_WAIT_MINUTES = 5;
9
8
  const DEFAULT_MAX_RETRIES = 3;
9
+ const ESCALATION_CACHE_KEY_PREFIX = "agent:escalation:active";
10
10
  const activeEscalations = new Map();
11
11
  const pendingTimers = new Map();
12
12
  // ---------------------------------------------------------------------------
13
- // DB persistence helpers -- write-through cache
13
+ // Persistence helpers -- owned by agent state instead of app-lifeops storage.
14
14
  // ---------------------------------------------------------------------------
15
- function stateToDbRow(agentId, state) {
16
- return {
17
- id: state.id,
18
- agentId,
19
- reason: state.reason,
20
- text: state.text,
21
- currentStep: state.currentStep,
22
- channelsSent: state.channelsSent,
23
- startedAt: new Date(state.startedAt).toISOString(),
24
- lastSentAt: new Date(state.lastSentAt).toISOString(),
25
- resolved: state.resolved,
26
- resolvedAt: state.resolvedAt
27
- ? new Date(state.resolvedAt).toISOString()
28
- : null,
29
- };
15
+ function escalationCacheKey(runtime) {
16
+ return `${ESCALATION_CACHE_KEY_PREFIX}:${runtime.agentId}`;
30
17
  }
31
- function dbRowToState(row) {
32
- return {
33
- id: row.id,
34
- reason: row.reason,
35
- text: row.text,
36
- currentStep: row.currentStep,
37
- channelsSent: row.channelsSent,
38
- startedAt: new Date(row.startedAt).getTime(),
39
- lastSentAt: new Date(row.lastSentAt).getTime(),
40
- resolved: row.resolved,
41
- resolvedAt: row.resolvedAt ? new Date(row.resolvedAt).getTime() : undefined,
42
- };
43
- }
44
- /** Best-effort persist -- never let DB failures break the escalation flow. */
45
18
  async function persistState(runtime, state) {
46
19
  try {
47
- const repo = new LifeOpsRepository(runtime);
48
- await repo.upsertEscalationState(stateToDbRow(runtime.agentId, state));
20
+ if (state.resolved) {
21
+ await runtime.deleteCache(escalationCacheKey(runtime));
22
+ return;
23
+ }
24
+ await runtime.setCache(escalationCacheKey(runtime), state);
49
25
  }
50
26
  catch (err) {
51
- logger.debug("[escalation] Failed to persist escalation state to DB", err instanceof Error ? err.message : String(err));
27
+ logger.debug("[escalation] Failed to persist escalation state to cache", err instanceof Error ? err.message : String(err));
52
28
  }
53
29
  }
54
- /** Best-effort load from DB. Returns null on any error. */
55
- async function loadActiveFromDb(runtime) {
30
+ async function loadActiveFromCache(runtime) {
56
31
  try {
57
- const repo = new LifeOpsRepository(runtime);
58
- const row = await repo.getActiveEscalationState(runtime.agentId);
59
- return row ? dbRowToState(row) : null;
32
+ const state = await runtime.getCache(escalationCacheKey(runtime));
33
+ return state ?? null;
60
34
  }
61
35
  catch (err) {
62
- logger.debug("[escalation] Failed to load escalation state from DB", err instanceof Error ? err.message : String(err));
36
+ logger.debug("[escalation] Failed to load escalation state from cache", err instanceof Error ? err.message : String(err));
63
37
  return null;
64
38
  }
65
39
  }
@@ -370,29 +344,18 @@ export class EscalationService {
370
344
  const cached = EscalationService.getActiveEscalationSync();
371
345
  if (cached)
372
346
  return cached;
373
- // Cache miss -- try DB (handles post-restart case)
374
- const persisted = await loadActiveFromDb(runtime);
347
+ const persisted = await loadActiveFromCache(runtime);
375
348
  if (persisted) {
376
349
  activeEscalations.set(persisted.id, persisted);
377
350
  return persisted;
378
351
  }
379
352
  return null;
380
353
  }
381
- /**
382
- * Rehydrate unresolved escalations from DB into the in-memory cache.
383
- *
384
- * Call during agent startup so that escalations created before a restart
385
- * are visible to `getActiveEscalationSync()` and can be detected by
386
- * the next `processReminders` cycle.
387
- *
388
- * Timers are intentionally NOT recreated -- the periodic reminder loop
389
- * will pick up stale unresolved escalations and advance them.
390
- */
391
354
  static async rehydrateFromDb(runtime) {
392
- const persisted = await loadActiveFromDb(runtime);
355
+ const persisted = await loadActiveFromCache(runtime);
393
356
  if (persisted && !activeEscalations.has(persisted.id)) {
394
357
  activeEscalations.set(persisted.id, persisted);
395
- logger.info(`[escalation] Rehydrated unresolved escalation ${persisted.id} from DB`);
358
+ logger.info(`[escalation] Rehydrated unresolved escalation ${persisted.id} from cache`);
396
359
  }
397
360
  }
398
361
  static _reset() {
@@ -402,14 +365,12 @@ export class EscalationService {
402
365
  activeEscalations.clear();
403
366
  idCounter = 0;
404
367
  }
405
- /** Clear DB state for a given agent. Use in tests alongside `_reset()`. */
406
368
  static async _resetDb(runtime) {
407
369
  try {
408
- const repo = new LifeOpsRepository(runtime);
409
- await repo.deleteAllEscalationStates(runtime.agentId);
370
+ await runtime.deleteCache(escalationCacheKey(runtime));
410
371
  }
411
372
  catch {
412
- // Best-effort -- test runtimes may not have a real DB
373
+ // Best-effort -- test runtimes may not have a real cache adapter
413
374
  }
414
375
  }
415
376
  }