@elizaos/app-core 2.0.0-alpha.353 → 2.0.0-alpha.358

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 (566) hide show
  1. package/apps/app-lifeops/src/inbox/message-fetcher.d.ts +6 -2
  2. package/apps/app-lifeops/src/inbox/message-fetcher.d.ts.map +1 -1
  3. package/apps/app-lifeops/src/inbox/message-fetcher.js +55 -1
  4. package/apps/app-lifeops/src/inbox/types.d.ts +20 -0
  5. package/apps/app-lifeops/src/inbox/types.d.ts.map +1 -1
  6. package/apps/app-lifeops/src/lifeops/payment-types.d.ts +20 -0
  7. package/apps/app-lifeops/src/lifeops/payment-types.d.ts.map +1 -1
  8. package/apps/app-lifeops/src/lifeops/paypal-managed-client.d.ts +110 -0
  9. package/apps/app-lifeops/src/lifeops/paypal-managed-client.d.ts.map +1 -0
  10. package/apps/app-lifeops/src/lifeops/paypal-managed-client.js +148 -0
  11. package/apps/app-lifeops/src/lifeops/plaid-managed-client.d.ts +86 -0
  12. package/apps/app-lifeops/src/lifeops/plaid-managed-client.d.ts.map +1 -0
  13. package/apps/app-lifeops/src/lifeops/plaid-managed-client.js +134 -0
  14. package/apps/app-lifeops/src/lifeops/service-mixin-inbox.d.ts +17 -4
  15. package/apps/app-lifeops/src/lifeops/service-mixin-inbox.d.ts.map +1 -1
  16. package/apps/app-lifeops/src/lifeops/service-mixin-inbox.js +204 -12
  17. package/apps/app-lifeops/src/lifeops/service-mixin-payments.js +465 -0
  18. package/apps/app-lifeops/src/lifeops/service-mixin-sleep.d.ts +2 -0
  19. package/apps/app-lifeops/src/lifeops/service-mixin-sleep.d.ts.map +1 -0
  20. package/apps/app-lifeops/src/lifeops/service-mixin-sleep.js +144 -0
  21. package/apps/app-lifeops/src/lifeops/service-mixin-subscriptions.js +18 -0
  22. package/apps/app-lifeops/src/lifeops/service.d.ts +188 -77
  23. package/apps/app-lifeops/src/lifeops/service.d.ts.map +1 -1
  24. package/apps/app-lifeops/src/lifeops/service.js +2 -1
  25. package/apps/app-lifeops/src/routes/lifeops-routes.d.ts.map +1 -1
  26. package/apps/app-lifeops/src/routes/lifeops-routes.js +163 -9
  27. package/apps/app-lifeops/src/routes/plugin.d.ts.map +1 -1
  28. package/apps/app-lifeops/src/routes/plugin.js +41 -8
  29. package/apps/app-lifeops/src/routes/sleep-routes.d.ts +3 -0
  30. package/apps/app-lifeops/src/routes/sleep-routes.d.ts.map +1 -0
  31. package/apps/app-lifeops/src/routes/sleep-routes.js +109 -0
  32. package/i18n/locales/en.json +354 -200
  33. package/i18n/locales/es.json +465 -200
  34. package/i18n/locales/ko.json +465 -200
  35. package/i18n/locales/pt.json +465 -200
  36. package/i18n/locales/tl.json +465 -200
  37. package/i18n/locales/vi.json +465 -200
  38. package/i18n/locales/zh-CN.json +465 -200
  39. package/package.json +7 -5
  40. package/packages/agent/src/actions/manage-tasks.d.ts +0 -1
  41. package/packages/agent/src/actions/manage-tasks.d.ts.map +1 -1
  42. package/packages/agent/src/actions/manage-tasks.js +5 -50
  43. package/packages/agent/src/api/index.d.ts +1 -0
  44. package/packages/agent/src/api/index.d.ts.map +1 -1
  45. package/packages/agent/src/api/index.js +1 -0
  46. package/packages/agent/src/api/runtime-plugin-routes.d.ts.map +1 -1
  47. package/packages/agent/src/api/runtime-plugin-routes.js +8 -2
  48. package/packages/agent/src/api/server-helpers-config.d.ts.map +1 -1
  49. package/packages/agent/src/api/server-helpers-config.js +1 -1
  50. package/packages/agent/src/api/server.d.ts.map +1 -1
  51. package/packages/agent/src/api/server.js +24 -0
  52. package/packages/agent/src/config/plugin-auto-enable.d.ts.map +1 -1
  53. package/packages/agent/src/middleware/x402/payment-config.d.ts +251 -0
  54. package/packages/agent/src/middleware/x402/payment-config.d.ts.map +1 -0
  55. package/packages/agent/src/middleware/x402/payment-config.js +568 -0
  56. package/packages/agent/src/middleware/x402/payment-wrapper.d.ts +42 -0
  57. package/packages/agent/src/middleware/x402/payment-wrapper.d.ts.map +1 -0
  58. package/packages/agent/src/middleware/x402/payment-wrapper.js +1342 -0
  59. package/packages/agent/src/middleware/x402/startup-validator.d.ts +28 -0
  60. package/packages/agent/src/middleware/x402/startup-validator.d.ts.map +1 -0
  61. package/packages/agent/src/middleware/x402/startup-validator.js +225 -0
  62. package/packages/agent/src/middleware/x402/types.d.ts +158 -0
  63. package/packages/agent/src/middleware/x402/types.d.ts.map +1 -0
  64. package/packages/agent/src/middleware/x402/types.js +5 -0
  65. package/packages/agent/src/middleware/x402/x402-facilitator-binding.d.ts +9 -0
  66. package/packages/agent/src/middleware/x402/x402-facilitator-binding.d.ts.map +1 -0
  67. package/packages/agent/src/middleware/x402/x402-facilitator-binding.js +74 -0
  68. package/packages/agent/src/middleware/x402/x402-replay-durable.d.ts +30 -0
  69. package/packages/agent/src/middleware/x402/x402-replay-durable.d.ts.map +1 -0
  70. package/packages/agent/src/middleware/x402/x402-replay-durable.js +202 -0
  71. package/packages/agent/src/middleware/x402/x402-replay-guard.d.ts +28 -0
  72. package/packages/agent/src/middleware/x402/x402-replay-guard.d.ts.map +1 -0
  73. package/packages/agent/src/middleware/x402/x402-replay-guard.js +134 -0
  74. package/packages/agent/src/middleware/x402/x402-replay-keys.d.ts +21 -0
  75. package/packages/agent/src/middleware/x402/x402-replay-keys.d.ts.map +1 -0
  76. package/packages/agent/src/middleware/x402/x402-replay-keys.js +141 -0
  77. package/packages/agent/src/middleware/x402/x402-resolve.d.ts +6 -0
  78. package/packages/agent/src/middleware/x402/x402-resolve.d.ts.map +1 -0
  79. package/packages/agent/src/middleware/x402/x402-resolve.js +31 -0
  80. package/packages/agent/src/middleware/x402/x402-standard-payment.d.ts +130 -0
  81. package/packages/agent/src/middleware/x402/x402-standard-payment.d.ts.map +1 -0
  82. package/packages/agent/src/middleware/x402/x402-standard-payment.js +387 -0
  83. package/packages/agent/src/middleware/x402/x402-types.d.ts +130 -0
  84. package/packages/agent/src/middleware/x402/x402-types.d.ts.map +1 -0
  85. package/packages/agent/src/middleware/x402/x402-types.js +189 -0
  86. package/packages/agent/src/runtime/eliza.d.ts.map +1 -1
  87. package/packages/agent/src/runtime/eliza.js +16 -5
  88. package/packages/app-core/src/api/auth/audit.d.ts +52 -0
  89. package/packages/app-core/src/api/auth/audit.d.ts.map +1 -0
  90. package/packages/app-core/src/api/auth/audit.js +126 -0
  91. package/packages/app-core/src/api/auth/bootstrap-token.d.ts +50 -0
  92. package/packages/app-core/src/api/auth/bootstrap-token.d.ts.map +1 -0
  93. package/packages/app-core/src/api/auth/bootstrap-token.js +157 -0
  94. package/packages/app-core/src/api/auth/index.d.ts +11 -0
  95. package/packages/app-core/src/api/auth/index.d.ts.map +1 -0
  96. package/packages/app-core/src/api/auth/index.js +10 -0
  97. package/packages/app-core/src/api/auth/sensitive-rate-limit.d.ts +35 -0
  98. package/packages/app-core/src/api/auth/sensitive-rate-limit.d.ts.map +1 -0
  99. package/packages/app-core/src/api/auth/sensitive-rate-limit.js +62 -0
  100. package/packages/app-core/src/api/auth-bootstrap-routes.d.ts +32 -0
  101. package/packages/app-core/src/api/auth-bootstrap-routes.d.ts.map +1 -0
  102. package/packages/app-core/src/api/auth-bootstrap-routes.js +172 -0
  103. package/packages/app-core/src/api/auth-pairing-compat-routes.d.ts.map +1 -1
  104. package/packages/app-core/src/api/auth-pairing-compat-routes.js +9 -15
  105. package/packages/app-core/src/api/auth.d.ts +51 -0
  106. package/packages/app-core/src/api/auth.d.ts.map +1 -1
  107. package/packages/app-core/src/api/auth.js +62 -0
  108. package/packages/app-core/src/api/client-types-config.d.ts +1 -1
  109. package/packages/app-core/src/api/client-types-config.d.ts.map +1 -1
  110. package/packages/app-core/src/api/server-onboarding-compat.d.ts +8 -10
  111. package/packages/app-core/src/api/server-onboarding-compat.d.ts.map +1 -1
  112. package/packages/app-core/src/api/server-onboarding-compat.js +8 -10
  113. package/packages/app-core/src/api/server.d.ts.map +1 -1
  114. package/packages/app-core/src/api/server.js +6 -0
  115. package/packages/app-core/src/components/apps/BabylonTerminal.d.ts.map +1 -1
  116. package/packages/app-core/src/components/apps/internal-tool-apps.js +2 -2
  117. package/packages/app-core/src/components/character/CharacterHubView.d.ts.map +1 -1
  118. package/packages/app-core/src/components/character/CharacterHubView.js +4 -4
  119. package/packages/app-core/src/components/character/CharacterRelationshipsSection.d.ts +3 -2
  120. package/packages/app-core/src/components/character/CharacterRelationshipsSection.d.ts.map +1 -1
  121. package/packages/app-core/src/components/character/CharacterRelationshipsSection.js +3 -3
  122. package/packages/app-core/src/components/chat/MessageContent.d.ts.map +1 -1
  123. package/packages/app-core/src/components/chat/MessageContent.js +1 -1
  124. package/packages/app-core/src/components/chat/SaveCommandModal.d.ts.map +1 -1
  125. package/packages/app-core/src/components/pages/AutomationRoomChatPane.d.ts.map +1 -1
  126. package/packages/app-core/src/components/pages/BrowserWorkspaceView.d.ts.map +1 -1
  127. package/packages/app-core/src/components/pages/BrowserWorkspaceView.js +8 -2
  128. package/packages/app-core/src/components/pages/ConfigPageView.d.ts.map +1 -1
  129. package/packages/app-core/src/components/pages/ConfigPageView.js +2 -6
  130. package/packages/app-core/src/components/pages/DatabaseView.d.ts.map +1 -1
  131. package/packages/app-core/src/components/pages/HeartbeatForm.d.ts.map +1 -1
  132. package/packages/app-core/src/components/pages/HeartbeatForm.js +1 -3
  133. package/packages/app-core/src/components/pages/N8nWorkflowsPanel.d.ts.map +1 -1
  134. package/packages/app-core/src/components/pages/N8nWorkflowsPanel.js +2 -6
  135. package/packages/app-core/src/components/pages/PageScopedChatPane.d.ts.map +1 -1
  136. package/packages/app-core/src/components/pages/PageScopedChatPane.js +2 -0
  137. package/packages/app-core/src/components/pages/SettingsView.d.ts.map +1 -1
  138. package/packages/app-core/src/components/pages/SettingsView.js +2 -51
  139. package/packages/app-core/src/components/pages/relationships/RelationshipsActivityFeed.d.ts.map +1 -1
  140. package/packages/app-core/src/components/pages/relationships/RelationshipsActivityFeed.js +1 -1
  141. package/packages/app-core/src/components/pages/relationships/RelationshipsCandidateMergesPanel.d.ts.map +1 -1
  142. package/packages/app-core/src/components/pages/relationships/RelationshipsCandidateMergesPanel.js +5 -4
  143. package/packages/app-core/src/components/pages/relationships/RelationshipsPersonPanels.d.ts.map +1 -1
  144. package/packages/app-core/src/components/pages/relationships/RelationshipsPersonPanels.js +36 -34
  145. package/packages/app-core/src/components/pages/relationships/RelationshipsSidebar.d.ts.map +1 -1
  146. package/packages/app-core/src/components/pages/relationships/RelationshipsSidebar.js +7 -12
  147. package/packages/app-core/src/components/pages/relationships/RelationshipsWorkspaceView.d.ts.map +1 -1
  148. package/packages/app-core/src/components/pages/relationships/RelationshipsWorkspaceView.js +1 -1
  149. package/packages/app-core/src/components/settings/ApiKeyConfig.d.ts.map +1 -1
  150. package/packages/app-core/src/components/settings/ProviderSwitcher.d.ts.map +1 -1
  151. package/packages/app-core/src/components/settings/SubscriptionStatus.d.ts.map +1 -1
  152. package/packages/app-core/src/components/settings/VoiceConfigView.d.ts.map +1 -1
  153. package/packages/app-core/src/components/settings/VoiceConfigView.js +1 -5
  154. package/packages/app-core/src/components/shared/confirm-delete-control.d.ts.map +1 -1
  155. package/packages/app-core/src/components/shared/confirm-delete-control.js +3 -6
  156. package/packages/app-core/src/components/shell/BugReportModal.d.ts.map +1 -1
  157. package/packages/app-core/src/components/shell/Header.d.ts.map +1 -1
  158. package/packages/app-core/src/components/shell/Header.js +42 -6
  159. package/packages/app-core/src/components/shell/ShellHeaderControls.d.ts.map +1 -1
  160. package/packages/app-core/src/i18n/locales/en.json +354 -200
  161. package/packages/app-core/src/i18n/locales/es.json +465 -200
  162. package/packages/app-core/src/i18n/locales/ko.json +465 -200
  163. package/packages/app-core/src/i18n/locales/pt.json +465 -200
  164. package/packages/app-core/src/i18n/locales/tl.json +465 -200
  165. package/packages/app-core/src/i18n/locales/vi.json +465 -200
  166. package/packages/app-core/src/i18n/locales/zh-CN.json +465 -200
  167. package/packages/app-core/src/navigation/index.js +2 -2
  168. package/packages/app-core/src/registry/schema.d.ts +2 -2
  169. package/packages/app-core/src/services/auth-store.d.ts +111 -0
  170. package/packages/app-core/src/services/auth-store.d.ts.map +1 -0
  171. package/packages/app-core/src/services/auth-store.js +199 -0
  172. package/packages/app-core/src/services/cloud-jwks-store.d.ts +62 -0
  173. package/packages/app-core/src/services/cloud-jwks-store.d.ts.map +1 -0
  174. package/packages/app-core/src/services/cloud-jwks-store.js +118 -0
  175. package/packages/plugin-browser-bridge/src/index.d.ts +18 -0
  176. package/packages/plugin-browser-bridge/src/index.d.ts.map +1 -0
  177. package/packages/plugin-browser-bridge/src/index.js +17 -0
  178. package/packages/shared/src/contracts/lifeops.d.ts +108 -0
  179. package/packages/shared/src/contracts/lifeops.d.ts.map +1 -1
  180. package/packages/shared/src/i18n/generated/validation-keyword-data.d.ts +24 -0
  181. package/packages/shared/src/i18n/generated/validation-keyword-data.d.ts.map +1 -1
  182. package/packages/shared/src/i18n/generated/validation-keyword-data.js +24 -0
  183. package/packages/typescript/src/features/advanced-capabilities/providers/facts.d.ts +3 -5
  184. package/packages/typescript/src/features/advanced-capabilities/providers/facts.d.ts.map +1 -1
  185. package/packages/typescript/src/features/advanced-capabilities/providers/facts.js +178 -70
  186. package/packages/typescript/src/i18n/generated/validation-keyword-data.d.ts +24 -0
  187. package/packages/typescript/src/i18n/generated/validation-keyword-data.d.ts.map +1 -1
  188. package/packages/typescript/src/i18n/generated/validation-keyword-data.js +24 -0
  189. package/packages/typescript/src/prompts.d.ts +2 -0
  190. package/packages/typescript/src/prompts.d.ts.map +1 -1
  191. package/packages/typescript/src/prompts.js +113 -0
  192. package/packages/typescript/src/types/memory.d.ts +78 -0
  193. package/packages/typescript/src/types/memory.d.ts.map +1 -1
  194. package/packages/typescript/src/types/payment.d.ts +23 -1
  195. package/packages/typescript/src/types/payment.d.ts.map +1 -1
  196. package/packages/typescript/src/types/plugin.d.ts +38 -0
  197. package/packages/typescript/src/types/plugin.d.ts.map +1 -1
  198. package/apps/app-companion/src/actions/emote.d.ts +0 -10
  199. package/apps/app-companion/src/actions/emote.d.ts.map +0 -1
  200. package/apps/app-companion/src/actions/emote.js +0 -80
  201. package/apps/app-companion/src/plugin.d.ts +0 -9
  202. package/apps/app-companion/src/plugin.d.ts.map +0 -1
  203. package/apps/app-companion/src/plugin.js +0 -15
  204. package/apps/app-lifeops/src/action.d.ts +0 -3
  205. package/apps/app-lifeops/src/action.d.ts.map +0 -1
  206. package/apps/app-lifeops/src/action.js +0 -351
  207. package/apps/app-lifeops/src/actions/activity-report.d.ts +0 -13
  208. package/apps/app-lifeops/src/actions/activity-report.d.ts.map +0 -1
  209. package/apps/app-lifeops/src/actions/activity-report.js +0 -313
  210. package/apps/app-lifeops/src/actions/app-blocker.d.ts +0 -7
  211. package/apps/app-lifeops/src/actions/app-blocker.d.ts.map +0 -1
  212. package/apps/app-lifeops/src/actions/app-blocker.js +0 -454
  213. package/apps/app-lifeops/src/actions/approval.d.ts +0 -21
  214. package/apps/app-lifeops/src/actions/approval.d.ts.map +0 -1
  215. package/apps/app-lifeops/src/actions/approval.js +0 -342
  216. package/apps/app-lifeops/src/actions/autofill.d.ts +0 -35
  217. package/apps/app-lifeops/src/actions/autofill.d.ts.map +0 -1
  218. package/apps/app-lifeops/src/actions/autofill.js +0 -455
  219. package/apps/app-lifeops/src/actions/book-travel-executor.d.ts +0 -9
  220. package/apps/app-lifeops/src/actions/book-travel-executor.d.ts.map +0 -1
  221. package/apps/app-lifeops/src/actions/book-travel-executor.js +0 -65
  222. package/apps/app-lifeops/src/actions/book-travel.d.ts +0 -5
  223. package/apps/app-lifeops/src/actions/book-travel.d.ts.map +0 -1
  224. package/apps/app-lifeops/src/actions/book-travel.js +0 -491
  225. package/apps/app-lifeops/src/actions/calendar.d.ts +0 -19
  226. package/apps/app-lifeops/src/actions/calendar.d.ts.map +0 -1
  227. package/apps/app-lifeops/src/actions/calendar.js +0 -3221
  228. package/apps/app-lifeops/src/actions/calendly.d.ts +0 -3
  229. package/apps/app-lifeops/src/actions/calendly.d.ts.map +0 -1
  230. package/apps/app-lifeops/src/actions/calendly.js +0 -361
  231. package/apps/app-lifeops/src/actions/chat-thread-control.d.ts +0 -3
  232. package/apps/app-lifeops/src/actions/chat-thread-control.d.ts.map +0 -1
  233. package/apps/app-lifeops/src/actions/chat-thread-control.js +0 -260
  234. package/apps/app-lifeops/src/actions/checkin.d.ts +0 -8
  235. package/apps/app-lifeops/src/actions/checkin.d.ts.map +0 -1
  236. package/apps/app-lifeops/src/actions/checkin.js +0 -230
  237. package/apps/app-lifeops/src/actions/computer-use.d.ts +0 -14
  238. package/apps/app-lifeops/src/actions/computer-use.d.ts.map +0 -1
  239. package/apps/app-lifeops/src/actions/computer-use.js +0 -408
  240. package/apps/app-lifeops/src/actions/cross-channel-send.d.ts +0 -34
  241. package/apps/app-lifeops/src/actions/cross-channel-send.d.ts.map +0 -1
  242. package/apps/app-lifeops/src/actions/cross-channel-send.js +0 -964
  243. package/apps/app-lifeops/src/actions/device-bus.d.ts +0 -19
  244. package/apps/app-lifeops/src/actions/device-bus.d.ts.map +0 -1
  245. package/apps/app-lifeops/src/actions/device-bus.js +0 -376
  246. package/apps/app-lifeops/src/actions/dossier.d.ts +0 -5
  247. package/apps/app-lifeops/src/actions/dossier.d.ts.map +0 -1
  248. package/apps/app-lifeops/src/actions/dossier.js +0 -217
  249. package/apps/app-lifeops/src/actions/email-unsubscribe.d.ts +0 -5
  250. package/apps/app-lifeops/src/actions/email-unsubscribe.d.ts.map +0 -1
  251. package/apps/app-lifeops/src/actions/email-unsubscribe.js +0 -172
  252. package/apps/app-lifeops/src/actions/gmail.d.ts +0 -41
  253. package/apps/app-lifeops/src/actions/gmail.d.ts.map +0 -1
  254. package/apps/app-lifeops/src/actions/gmail.js +0 -2277
  255. package/apps/app-lifeops/src/actions/health.d.ts +0 -9
  256. package/apps/app-lifeops/src/actions/health.d.ts.map +0 -1
  257. package/apps/app-lifeops/src/actions/health.js +0 -398
  258. package/apps/app-lifeops/src/actions/inbox.d.ts +0 -5
  259. package/apps/app-lifeops/src/actions/inbox.d.ts.map +0 -1
  260. package/apps/app-lifeops/src/actions/inbox.js +0 -1249
  261. package/apps/app-lifeops/src/actions/intent-sync.d.ts +0 -5
  262. package/apps/app-lifeops/src/actions/intent-sync.d.ts.map +0 -1
  263. package/apps/app-lifeops/src/actions/intent-sync.js +0 -320
  264. package/apps/app-lifeops/src/actions/life-goal-extractor.d.ts +0 -69
  265. package/apps/app-lifeops/src/actions/life-goal-extractor.d.ts.map +0 -1
  266. package/apps/app-lifeops/src/actions/life-goal-extractor.js +0 -420
  267. package/apps/app-lifeops/src/actions/life-param-extractor.d.ts +0 -78
  268. package/apps/app-lifeops/src/actions/life-param-extractor.d.ts.map +0 -1
  269. package/apps/app-lifeops/src/actions/life-param-extractor.js +0 -431
  270. package/apps/app-lifeops/src/actions/life-recent-context.d.ts +0 -9
  271. package/apps/app-lifeops/src/actions/life-recent-context.d.ts.map +0 -1
  272. package/apps/app-lifeops/src/actions/life-recent-context.js +0 -78
  273. package/apps/app-lifeops/src/actions/life-update-extractor.d.ts +0 -27
  274. package/apps/app-lifeops/src/actions/life-update-extractor.d.ts.map +0 -1
  275. package/apps/app-lifeops/src/actions/life-update-extractor.js +0 -195
  276. package/apps/app-lifeops/src/actions/life.d.ts +0 -5
  277. package/apps/app-lifeops/src/actions/life.d.ts.map +0 -1
  278. package/apps/app-lifeops/src/actions/life.extractor.d.ts +0 -18
  279. package/apps/app-lifeops/src/actions/life.extractor.d.ts.map +0 -1
  280. package/apps/app-lifeops/src/actions/life.extractor.js +0 -363
  281. package/apps/app-lifeops/src/actions/life.js +0 -3402
  282. package/apps/app-lifeops/src/actions/lifeops-extraction-config.d.ts +0 -16
  283. package/apps/app-lifeops/src/actions/lifeops-extraction-config.d.ts.map +0 -1
  284. package/apps/app-lifeops/src/actions/lifeops-extraction-config.js +0 -25
  285. package/apps/app-lifeops/src/actions/lifeops-google-helpers.d.ts +0 -64
  286. package/apps/app-lifeops/src/actions/lifeops-google-helpers.d.ts.map +0 -1
  287. package/apps/app-lifeops/src/actions/lifeops-google-helpers.js +0 -671
  288. package/apps/app-lifeops/src/actions/list-remote-sessions.d.ts +0 -6
  289. package/apps/app-lifeops/src/actions/list-remote-sessions.d.ts.map +0 -1
  290. package/apps/app-lifeops/src/actions/list-remote-sessions.js +0 -45
  291. package/apps/app-lifeops/src/actions/non-actionable-request.d.ts +0 -20
  292. package/apps/app-lifeops/src/actions/non-actionable-request.d.ts.map +0 -1
  293. package/apps/app-lifeops/src/actions/non-actionable-request.js +0 -58
  294. package/apps/app-lifeops/src/actions/owner-app-block.d.ts +0 -12
  295. package/apps/app-lifeops/src/actions/owner-app-block.d.ts.map +0 -1
  296. package/apps/app-lifeops/src/actions/owner-app-block.js +0 -136
  297. package/apps/app-lifeops/src/actions/owner-calendar.d.ts +0 -57
  298. package/apps/app-lifeops/src/actions/owner-calendar.d.ts.map +0 -1
  299. package/apps/app-lifeops/src/actions/owner-calendar.js +0 -924
  300. package/apps/app-lifeops/src/actions/owner-inbox.d.ts +0 -5
  301. package/apps/app-lifeops/src/actions/owner-inbox.d.ts.map +0 -1
  302. package/apps/app-lifeops/src/actions/owner-inbox.js +0 -652
  303. package/apps/app-lifeops/src/actions/owner-remote-desktop.d.ts +0 -12
  304. package/apps/app-lifeops/src/actions/owner-remote-desktop.d.ts.map +0 -1
  305. package/apps/app-lifeops/src/actions/owner-remote-desktop.js +0 -163
  306. package/apps/app-lifeops/src/actions/owner-schedule.d.ts +0 -3
  307. package/apps/app-lifeops/src/actions/owner-schedule.d.ts.map +0 -1
  308. package/apps/app-lifeops/src/actions/owner-schedule.js +0 -174
  309. package/apps/app-lifeops/src/actions/owner-screen-time.d.ts +0 -10
  310. package/apps/app-lifeops/src/actions/owner-screen-time.d.ts.map +0 -1
  311. package/apps/app-lifeops/src/actions/owner-screen-time.js +0 -209
  312. package/apps/app-lifeops/src/actions/owner-website-block.d.ts +0 -12
  313. package/apps/app-lifeops/src/actions/owner-website-block.d.ts.map +0 -1
  314. package/apps/app-lifeops/src/actions/owner-website-block.js +0 -397
  315. package/apps/app-lifeops/src/actions/password-manager.d.ts +0 -5
  316. package/apps/app-lifeops/src/actions/password-manager.d.ts.map +0 -1
  317. package/apps/app-lifeops/src/actions/password-manager.js +0 -257
  318. package/apps/app-lifeops/src/actions/payments.d.ts +0 -5
  319. package/apps/app-lifeops/src/actions/payments.d.ts.map +0 -1
  320. package/apps/app-lifeops/src/actions/payments.js +0 -236
  321. package/apps/app-lifeops/src/actions/relationships.d.ts +0 -12
  322. package/apps/app-lifeops/src/actions/relationships.d.ts.map +0 -1
  323. package/apps/app-lifeops/src/actions/relationships.js +0 -869
  324. package/apps/app-lifeops/src/actions/remote-desktop.d.ts +0 -5
  325. package/apps/app-lifeops/src/actions/remote-desktop.d.ts.map +0 -1
  326. package/apps/app-lifeops/src/actions/remote-desktop.js +0 -304
  327. package/apps/app-lifeops/src/actions/revoke-remote-session.d.ts +0 -6
  328. package/apps/app-lifeops/src/actions/revoke-remote-session.d.ts.map +0 -1
  329. package/apps/app-lifeops/src/actions/revoke-remote-session.js +0 -73
  330. package/apps/app-lifeops/src/actions/schedule-x-dm-reply.d.ts +0 -3
  331. package/apps/app-lifeops/src/actions/schedule-x-dm-reply.d.ts.map +0 -1
  332. package/apps/app-lifeops/src/actions/schedule-x-dm-reply.js +0 -134
  333. package/apps/app-lifeops/src/actions/scheduled-trigger-task.d.ts +0 -19
  334. package/apps/app-lifeops/src/actions/scheduled-trigger-task.d.ts.map +0 -1
  335. package/apps/app-lifeops/src/actions/scheduled-trigger-task.js +0 -83
  336. package/apps/app-lifeops/src/actions/scheduling.d.ts +0 -70
  337. package/apps/app-lifeops/src/actions/scheduling.d.ts.map +0 -1
  338. package/apps/app-lifeops/src/actions/scheduling.js +0 -1076
  339. package/apps/app-lifeops/src/actions/screen-time.d.ts +0 -8
  340. package/apps/app-lifeops/src/actions/screen-time.d.ts.map +0 -1
  341. package/apps/app-lifeops/src/actions/screen-time.js +0 -256
  342. package/apps/app-lifeops/src/actions/search-across-channels.d.ts +0 -13
  343. package/apps/app-lifeops/src/actions/search-across-channels.d.ts.map +0 -1
  344. package/apps/app-lifeops/src/actions/search-across-channels.js +0 -338
  345. package/apps/app-lifeops/src/actions/start-remote-session.d.ts +0 -14
  346. package/apps/app-lifeops/src/actions/start-remote-session.d.ts.map +0 -1
  347. package/apps/app-lifeops/src/actions/start-remote-session.js +0 -139
  348. package/apps/app-lifeops/src/actions/subscriptions.d.ts +0 -5
  349. package/apps/app-lifeops/src/actions/subscriptions.d.ts.map +0 -1
  350. package/apps/app-lifeops/src/actions/subscriptions.js +0 -404
  351. package/apps/app-lifeops/src/actions/timezone-normalization.d.ts +0 -4
  352. package/apps/app-lifeops/src/actions/timezone-normalization.d.ts.map +0 -1
  353. package/apps/app-lifeops/src/actions/timezone-normalization.js +0 -159
  354. package/apps/app-lifeops/src/actions/twilio-call.d.ts +0 -20
  355. package/apps/app-lifeops/src/actions/twilio-call.d.ts.map +0 -1
  356. package/apps/app-lifeops/src/actions/twilio-call.js +0 -805
  357. package/apps/app-lifeops/src/actions/update-owner-profile.d.ts +0 -5
  358. package/apps/app-lifeops/src/actions/update-owner-profile.d.ts.map +0 -1
  359. package/apps/app-lifeops/src/actions/update-owner-profile.js +0 -181
  360. package/apps/app-lifeops/src/actions/x-read.d.ts +0 -5
  361. package/apps/app-lifeops/src/actions/x-read.d.ts.map +0 -1
  362. package/apps/app-lifeops/src/actions/x-read.js +0 -561
  363. package/apps/app-lifeops/src/activity-profile/activity-tracker-service.d.ts +0 -36
  364. package/apps/app-lifeops/src/activity-profile/activity-tracker-service.d.ts.map +0 -1
  365. package/apps/app-lifeops/src/activity-profile/activity-tracker-service.js +0 -160
  366. package/apps/app-lifeops/src/activity-profile/analyzer.d.ts +0 -23
  367. package/apps/app-lifeops/src/activity-profile/analyzer.d.ts.map +0 -1
  368. package/apps/app-lifeops/src/activity-profile/analyzer.js +0 -555
  369. package/apps/app-lifeops/src/activity-profile/presence-signal-bridge-service.d.ts +0 -14
  370. package/apps/app-lifeops/src/activity-profile/presence-signal-bridge-service.d.ts.map +0 -1
  371. package/apps/app-lifeops/src/activity-profile/presence-signal-bridge-service.js +0 -133
  372. package/apps/app-lifeops/src/activity-profile/proactive-planner.d.ts +0 -71
  373. package/apps/app-lifeops/src/activity-profile/proactive-planner.d.ts.map +0 -1
  374. package/apps/app-lifeops/src/activity-profile/proactive-planner.js +0 -567
  375. package/apps/app-lifeops/src/activity-profile/proactive-worker.d.ts +0 -32
  376. package/apps/app-lifeops/src/activity-profile/proactive-worker.d.ts.map +0 -1
  377. package/apps/app-lifeops/src/activity-profile/proactive-worker.js +0 -677
  378. package/apps/app-lifeops/src/activity-profile/service.d.ts +0 -11
  379. package/apps/app-lifeops/src/activity-profile/service.d.ts.map +0 -1
  380. package/apps/app-lifeops/src/activity-profile/service.js +0 -246
  381. package/apps/app-lifeops/src/app-blocker/access.d.ts +0 -8
  382. package/apps/app-lifeops/src/app-blocker/access.d.ts.map +0 -1
  383. package/apps/app-lifeops/src/app-blocker/access.js +0 -28
  384. package/apps/app-lifeops/src/app-blocker/engine.d.ts +0 -10
  385. package/apps/app-lifeops/src/app-blocker/engine.d.ts.map +0 -1
  386. package/apps/app-lifeops/src/app-blocker/engine.js +0 -43
  387. package/apps/app-lifeops/src/followup/actions/listOverdueFollowups.d.ts +0 -3
  388. package/apps/app-lifeops/src/followup/actions/listOverdueFollowups.d.ts.map +0 -1
  389. package/apps/app-lifeops/src/followup/actions/listOverdueFollowups.js +0 -48
  390. package/apps/app-lifeops/src/followup/actions/markFollowupDone.d.ts +0 -3
  391. package/apps/app-lifeops/src/followup/actions/markFollowupDone.d.ts.map +0 -1
  392. package/apps/app-lifeops/src/followup/actions/markFollowupDone.js +0 -173
  393. package/apps/app-lifeops/src/followup/actions/setFollowupThreshold.d.ts +0 -3
  394. package/apps/app-lifeops/src/followup/actions/setFollowupThreshold.d.ts.map +0 -1
  395. package/apps/app-lifeops/src/followup/actions/setFollowupThreshold.js +0 -172
  396. package/apps/app-lifeops/src/followup/followup-tracker.d.ts +0 -82
  397. package/apps/app-lifeops/src/followup/followup-tracker.d.ts.map +0 -1
  398. package/apps/app-lifeops/src/followup/followup-tracker.js +0 -279
  399. package/apps/app-lifeops/src/followup/index.d.ts +0 -5
  400. package/apps/app-lifeops/src/followup/index.d.ts.map +0 -1
  401. package/apps/app-lifeops/src/followup/index.js +0 -4
  402. package/apps/app-lifeops/src/inbox/config.d.ts +0 -7
  403. package/apps/app-lifeops/src/inbox/config.d.ts.map +0 -1
  404. package/apps/app-lifeops/src/inbox/config.js +0 -67
  405. package/apps/app-lifeops/src/inbox/reflection.d.ts +0 -40
  406. package/apps/app-lifeops/src/inbox/reflection.d.ts.map +0 -1
  407. package/apps/app-lifeops/src/inbox/reflection.js +0 -115
  408. package/apps/app-lifeops/src/inbox/repository.d.ts +0 -52
  409. package/apps/app-lifeops/src/inbox/repository.d.ts.map +0 -1
  410. package/apps/app-lifeops/src/inbox/repository.js +0 -262
  411. package/apps/app-lifeops/src/inbox/triage-classifier.d.ts +0 -15
  412. package/apps/app-lifeops/src/inbox/triage-classifier.d.ts.map +0 -1
  413. package/apps/app-lifeops/src/inbox/triage-classifier.js +0 -179
  414. package/apps/app-lifeops/src/lifeops/approval-queue.d.ts +0 -24
  415. package/apps/app-lifeops/src/lifeops/approval-queue.d.ts.map +0 -1
  416. package/apps/app-lifeops/src/lifeops/approval-queue.js +0 -500
  417. package/apps/app-lifeops/src/lifeops/approval-queue.types.d.ts +0 -166
  418. package/apps/app-lifeops/src/lifeops/approval-queue.types.d.ts.map +0 -1
  419. package/apps/app-lifeops/src/lifeops/approval-queue.types.js +0 -22
  420. package/apps/app-lifeops/src/lifeops/autofill-whitelist.d.ts +0 -15
  421. package/apps/app-lifeops/src/lifeops/autofill-whitelist.d.ts.map +0 -1
  422. package/apps/app-lifeops/src/lifeops/autofill-whitelist.js +0 -116
  423. package/apps/app-lifeops/src/lifeops/background-planner-dispatch.d.ts +0 -60
  424. package/apps/app-lifeops/src/lifeops/background-planner-dispatch.d.ts.map +0 -1
  425. package/apps/app-lifeops/src/lifeops/background-planner-dispatch.js +0 -134
  426. package/apps/app-lifeops/src/lifeops/background-planner.d.ts +0 -141
  427. package/apps/app-lifeops/src/lifeops/background-planner.d.ts.map +0 -1
  428. package/apps/app-lifeops/src/lifeops/background-planner.js +0 -377
  429. package/apps/app-lifeops/src/lifeops/calendly-client.d.ts +0 -61
  430. package/apps/app-lifeops/src/lifeops/calendly-client.d.ts.map +0 -1
  431. package/apps/app-lifeops/src/lifeops/calendly-client.js +0 -234
  432. package/apps/app-lifeops/src/lifeops/checkin/schedule-resolver.d.ts +0 -14
  433. package/apps/app-lifeops/src/lifeops/checkin/schedule-resolver.d.ts.map +0 -1
  434. package/apps/app-lifeops/src/lifeops/checkin/schedule-resolver.js +0 -27
  435. package/apps/app-lifeops/src/lifeops/cross-channel-search.d.ts +0 -88
  436. package/apps/app-lifeops/src/lifeops/cross-channel-search.d.ts.map +0 -1
  437. package/apps/app-lifeops/src/lifeops/cross-channel-search.js +0 -443
  438. package/apps/app-lifeops/src/lifeops/intent-sync.d.ts +0 -59
  439. package/apps/app-lifeops/src/lifeops/intent-sync.d.ts.map +0 -1
  440. package/apps/app-lifeops/src/lifeops/intent-sync.js +0 -305
  441. package/apps/app-lifeops/src/lifeops/notifications-push.d.ts +0 -37
  442. package/apps/app-lifeops/src/lifeops/notifications-push.d.ts.map +0 -1
  443. package/apps/app-lifeops/src/lifeops/notifications-push.js +0 -92
  444. package/apps/app-lifeops/src/lifeops/password-manager-bridge.d.ts +0 -50
  445. package/apps/app-lifeops/src/lifeops/password-manager-bridge.d.ts.map +0 -1
  446. package/apps/app-lifeops/src/lifeops/password-manager-bridge.js +0 -448
  447. package/apps/app-lifeops/src/lifeops/remote-desktop.d.ts +0 -38
  448. package/apps/app-lifeops/src/lifeops/remote-desktop.d.ts.map +0 -1
  449. package/apps/app-lifeops/src/lifeops/remote-desktop.js +0 -372
  450. package/apps/app-lifeops/src/lifeops/runtime.d.ts +0 -11
  451. package/apps/app-lifeops/src/lifeops/runtime.d.ts.map +0 -1
  452. package/apps/app-lifeops/src/lifeops/runtime.js +0 -57
  453. package/apps/app-lifeops/src/lifeops/screen-context.d.ts +0 -52
  454. package/apps/app-lifeops/src/lifeops/screen-context.d.ts.map +0 -1
  455. package/apps/app-lifeops/src/lifeops/screen-context.js +0 -349
  456. package/apps/app-lifeops/src/plugin.d.ts +0 -30
  457. package/apps/app-lifeops/src/plugin.d.ts.map +0 -1
  458. package/apps/app-lifeops/src/plugin.js +0 -340
  459. package/apps/app-lifeops/src/provider.d.ts +0 -4
  460. package/apps/app-lifeops/src/provider.d.ts.map +0 -1
  461. package/apps/app-lifeops/src/provider.js +0 -77
  462. package/apps/app-lifeops/src/providers/activity-profile.d.ts +0 -3
  463. package/apps/app-lifeops/src/providers/activity-profile.d.ts.map +0 -1
  464. package/apps/app-lifeops/src/providers/activity-profile.js +0 -140
  465. package/apps/app-lifeops/src/providers/app-blocker.d.ts +0 -3
  466. package/apps/app-lifeops/src/providers/app-blocker.d.ts.map +0 -1
  467. package/apps/app-lifeops/src/providers/app-blocker.js +0 -86
  468. package/apps/app-lifeops/src/providers/cross-channel-context.d.ts +0 -29
  469. package/apps/app-lifeops/src/providers/cross-channel-context.d.ts.map +0 -1
  470. package/apps/app-lifeops/src/providers/cross-channel-context.js +0 -182
  471. package/apps/app-lifeops/src/providers/inbox-triage.d.ts +0 -3
  472. package/apps/app-lifeops/src/providers/inbox-triage.d.ts.map +0 -1
  473. package/apps/app-lifeops/src/providers/inbox-triage.js +0 -90
  474. package/apps/app-lifeops/src/providers/lifeops.d.ts +0 -3
  475. package/apps/app-lifeops/src/providers/lifeops.d.ts.map +0 -1
  476. package/apps/app-lifeops/src/providers/lifeops.js +0 -197
  477. package/apps/app-lifeops/src/remote/pairing-code.d.ts +0 -39
  478. package/apps/app-lifeops/src/remote/pairing-code.d.ts.map +0 -1
  479. package/apps/app-lifeops/src/remote/pairing-code.js +0 -76
  480. package/apps/app-lifeops/src/remote/remote-session-service.d.ts +0 -107
  481. package/apps/app-lifeops/src/remote/remote-session-service.d.ts.map +0 -1
  482. package/apps/app-lifeops/src/remote/remote-session-service.js +0 -253
  483. package/apps/app-lifeops/src/service.d.ts +0 -33
  484. package/apps/app-lifeops/src/service.d.ts.map +0 -1
  485. package/apps/app-lifeops/src/service.js +0 -67
  486. package/apps/app-lifeops/src/travel-time/calendar-create.d.ts +0 -17
  487. package/apps/app-lifeops/src/travel-time/calendar-create.d.ts.map +0 -1
  488. package/apps/app-lifeops/src/travel-time/calendar-create.js +0 -21
  489. package/apps/app-lifeops/src/travel-time/service.d.ts +0 -60
  490. package/apps/app-lifeops/src/travel-time/service.d.ts.map +0 -1
  491. package/apps/app-lifeops/src/travel-time/service.js +0 -142
  492. package/apps/app-lifeops/src/website-blocker/chat-integration/actions/blockUntilTaskComplete.d.ts +0 -3
  493. package/apps/app-lifeops/src/website-blocker/chat-integration/actions/blockUntilTaskComplete.d.ts.map +0 -1
  494. package/apps/app-lifeops/src/website-blocker/chat-integration/actions/blockUntilTaskComplete.js +0 -246
  495. package/apps/app-lifeops/src/website-blocker/chat-integration/actions/listActiveBlocks.d.ts +0 -3
  496. package/apps/app-lifeops/src/website-blocker/chat-integration/actions/listActiveBlocks.d.ts.map +0 -1
  497. package/apps/app-lifeops/src/website-blocker/chat-integration/actions/listActiveBlocks.js +0 -83
  498. package/apps/app-lifeops/src/website-blocker/chat-integration/actions/releaseBlock.d.ts +0 -3
  499. package/apps/app-lifeops/src/website-blocker/chat-integration/actions/releaseBlock.d.ts.map +0 -1
  500. package/apps/app-lifeops/src/website-blocker/chat-integration/actions/releaseBlock.js +0 -98
  501. package/apps/app-lifeops/src/website-blocker/chat-integration/block-rule-reconciler.d.ts +0 -7
  502. package/apps/app-lifeops/src/website-blocker/chat-integration/block-rule-reconciler.d.ts.map +0 -1
  503. package/apps/app-lifeops/src/website-blocker/chat-integration/block-rule-reconciler.js +0 -111
  504. package/apps/app-lifeops/src/website-blocker/chat-integration/block-rule-schema.d.ts +0 -39
  505. package/apps/app-lifeops/src/website-blocker/chat-integration/block-rule-schema.d.ts.map +0 -1
  506. package/apps/app-lifeops/src/website-blocker/chat-integration/block-rule-schema.js +0 -123
  507. package/apps/app-lifeops/src/website-blocker/chat-integration/block-rule-service.d.ts +0 -21
  508. package/apps/app-lifeops/src/website-blocker/chat-integration/block-rule-service.d.ts.map +0 -1
  509. package/apps/app-lifeops/src/website-blocker/chat-integration/block-rule-service.js +0 -258
  510. package/apps/app-lifeops/src/website-blocker/chat-integration/index.d.ts +0 -8
  511. package/apps/app-lifeops/src/website-blocker/chat-integration/index.d.ts.map +0 -1
  512. package/apps/app-lifeops/src/website-blocker/chat-integration/index.js +0 -6
  513. package/packages/agent/src/actions/agent-inbox.d.ts +0 -14
  514. package/packages/agent/src/actions/agent-inbox.d.ts.map +0 -1
  515. package/packages/agent/src/actions/agent-inbox.js +0 -124
  516. package/packages/agent/src/actions/eject-plugin.d.ts +0 -3
  517. package/packages/agent/src/actions/eject-plugin.d.ts.map +0 -1
  518. package/packages/agent/src/actions/eject-plugin.js +0 -80
  519. package/packages/agent/src/actions/get-self-status.d.ts +0 -13
  520. package/packages/agent/src/actions/get-self-status.d.ts.map +0 -1
  521. package/packages/agent/src/actions/get-self-status.js +0 -107
  522. package/packages/agent/src/actions/grounded-action-reply.d.ts +0 -22
  523. package/packages/agent/src/actions/grounded-action-reply.d.ts.map +0 -1
  524. package/packages/agent/src/actions/grounded-action-reply.js +0 -289
  525. package/packages/agent/src/actions/index.d.ts +0 -18
  526. package/packages/agent/src/actions/index.d.ts.map +0 -1
  527. package/packages/agent/src/actions/index.js +0 -17
  528. package/packages/agent/src/actions/install-plugin.d.ts +0 -3
  529. package/packages/agent/src/actions/install-plugin.d.ts.map +0 -1
  530. package/packages/agent/src/actions/install-plugin.js +0 -97
  531. package/packages/agent/src/actions/list-ejected.d.ts +0 -3
  532. package/packages/agent/src/actions/list-ejected.d.ts.map +0 -1
  533. package/packages/agent/src/actions/list-ejected.js +0 -79
  534. package/packages/agent/src/actions/log-level.d.ts +0 -3
  535. package/packages/agent/src/actions/log-level.d.ts.map +0 -1
  536. package/packages/agent/src/actions/log-level.js +0 -126
  537. package/packages/agent/src/actions/media.d.ts +0 -21
  538. package/packages/agent/src/actions/media.d.ts.map +0 -1
  539. package/packages/agent/src/actions/media.js +0 -504
  540. package/packages/agent/src/actions/reinject-plugin.d.ts +0 -3
  541. package/packages/agent/src/actions/reinject-plugin.d.ts.map +0 -1
  542. package/packages/agent/src/actions/reinject-plugin.js +0 -79
  543. package/packages/agent/src/actions/send-message.d.ts +0 -4
  544. package/packages/agent/src/actions/send-message.d.ts.map +0 -1
  545. package/packages/agent/src/actions/send-message.js +0 -399
  546. package/packages/agent/src/actions/stream-control.d.ts +0 -11
  547. package/packages/agent/src/actions/stream-control.d.ts.map +0 -1
  548. package/packages/agent/src/actions/stream-control.js +0 -182
  549. package/packages/agent/src/actions/sync-plugin.d.ts +0 -3
  550. package/packages/agent/src/actions/sync-plugin.d.ts.map +0 -1
  551. package/packages/agent/src/actions/sync-plugin.js +0 -76
  552. package/packages/agent/src/onboarding-presets.d.ts +0 -2
  553. package/packages/agent/src/onboarding-presets.d.ts.map +0 -1
  554. package/packages/agent/src/onboarding-presets.js +0 -1
  555. package/packages/agent/src/providers/media-provider.d.ts +0 -192
  556. package/packages/agent/src/providers/media-provider.d.ts.map +0 -1
  557. package/packages/agent/src/providers/media-provider.js +0 -1088
  558. package/packages/native-plugins/activity-tracker/src/index.d.ts +0 -69
  559. package/packages/native-plugins/activity-tracker/src/index.d.ts.map +0 -1
  560. package/packages/native-plugins/activity-tracker/src/index.js +0 -147
  561. package/packages/shared/src/awareness/index.d.ts +0 -2
  562. package/packages/shared/src/awareness/index.d.ts.map +0 -1
  563. package/packages/shared/src/awareness/index.js +0 -1
  564. package/packages/shared/src/awareness/registry.d.ts +0 -27
  565. package/packages/shared/src/awareness/registry.d.ts.map +0 -1
  566. package/packages/shared/src/awareness/registry.js +0 -161
@@ -1,9 +1,9 @@
1
1
  import type { IAgentRuntime } from "@elizaos/core";
2
- import type { LifeOpsGmailTriageFeed, LifeOpsGoogleConnectorStatus, LifeOpsXConnectorStatus, LifeOpsXDm } from "@elizaos/shared/contracts/lifeops";
2
+ import type { GetLifeOpsGmailTriageRequest, LifeOpsGmailTriageFeed, LifeOpsGoogleConnectorStatus, LifeOpsXConnectorStatus, LifeOpsXDm } from "@elizaos/shared/contracts/lifeops";
3
3
  import type { InboundMessage } from "./types.js";
4
4
  export interface GmailInboxSource {
5
5
  getGoogleConnectorStatus(requestUrl: URL): Promise<LifeOpsGoogleConnectorStatus>;
6
- getGmailTriage(requestUrl: URL): Promise<LifeOpsGmailTriageFeed>;
6
+ getGmailTriage(requestUrl: URL, request?: GetLifeOpsGmailTriageRequest): Promise<LifeOpsGmailTriageFeed>;
7
7
  }
8
8
  export interface XDmInboxSource {
9
9
  getXConnectorStatus(): Promise<LifeOpsXConnectorStatus>;
@@ -27,6 +27,8 @@ export declare function fetchChatMessages(runtime: IAgentRuntime, opts: {
27
27
  export declare function fetchGmailMessages(source: GmailInboxSource, opts: {
28
28
  sinceIso?: string;
29
29
  limit?: number;
30
+ /** Filter to a single Gmail account by Google grant id. */
31
+ grantId?: string;
30
32
  }): Promise<InboundMessage[]>;
31
33
  export declare function fetchXDmMessages(source: XDmInboxSource, opts: {
32
34
  sinceIso?: string;
@@ -39,5 +41,7 @@ export declare function fetchAllMessages(runtime: IAgentRuntime, opts: {
39
41
  includeGmail?: boolean;
40
42
  gmailSource?: GmailInboxSource;
41
43
  xDmSource?: XDmInboxSource;
44
+ /** Filter Gmail to a single account by Google grant id. */
45
+ gmailGrantId?: string;
42
46
  }): Promise<InboundMessage[]>;
43
47
  //# sourceMappingURL=message-fetcher.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"message-fetcher.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/inbox/message-fetcher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAA6B,MAAM,eAAe,CAAC;AAK9E,OAAO,KAAK,EACV,sBAAsB,EACtB,4BAA4B,EAC5B,uBAAuB,EACvB,UAAU,EACX,MAAM,mCAAmC,CAAC;AAE3C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAkBjD,MAAM,WAAW,gBAAgB;IAC/B,wBAAwB,CACtB,UAAU,EAAE,GAAG,GACd,OAAO,CAAC,4BAA4B,CAAC,CAAC;IACzC,cAAc,CAAC,UAAU,EAAE,GAAG,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;CAClE;AAED,MAAM,WAAW,cAAc;IAC7B,mBAAmB,IAAI,OAAO,CAAC,uBAAuB,CAAC,CAAC;IACxD,QAAQ,CAAC,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACjE,OAAO,CAAC,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;CAC3D;AAED,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,aAAa,EACtB,IAAI,EAAE;IACJ,8DAA8D;IAC9D,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8BAA8B;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GACA,OAAO,CAAC,cAAc,EAAE,CAAC,CAmH3B;AAED,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,gBAAgB,EACxB,IAAI,EAAE;IACJ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GACA,OAAO,CAAC,cAAc,EAAE,CAAC,CA0C3B;AAED,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE;IACJ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GACA,OAAO,CAAC,cAAc,EAAE,CAAC,CA4C3B;AAED,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,aAAa,EACtB,IAAI,EAAE;IACJ,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,SAAS,CAAC,EAAE,cAAc,CAAC;CAC5B,GACA,OAAO,CAAC,cAAc,EAAE,CAAC,CAqC3B"}
1
+ {"version":3,"file":"message-fetcher.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/inbox/message-fetcher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAA6B,MAAM,eAAe,CAAC;AAK9E,OAAO,KAAK,EACV,4BAA4B,EAC5B,sBAAsB,EACtB,4BAA4B,EAC5B,uBAAuB,EACvB,UAAU,EACX,MAAM,mCAAmC,CAAC;AAE3C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAyBjD,MAAM,WAAW,gBAAgB;IAC/B,wBAAwB,CACtB,UAAU,EAAE,GAAG,GACd,OAAO,CAAC,4BAA4B,CAAC,CAAC;IACzC,cAAc,CACZ,UAAU,EAAE,GAAG,EACf,OAAO,CAAC,EAAE,4BAA4B,GACrC,OAAO,CAAC,sBAAsB,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,cAAc;IAC7B,mBAAmB,IAAI,OAAO,CAAC,uBAAuB,CAAC,CAAC;IACxD,QAAQ,CAAC,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACjE,OAAO,CAAC,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;CAC3D;AAED,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,aAAa,EACtB,IAAI,EAAE;IACJ,8DAA8D;IAC9D,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8BAA8B;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GACA,OAAO,CAAC,cAAc,EAAE,CAAC,CAkI3B;AAED,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,gBAAgB,EACxB,IAAI,EAAE;IACJ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2DAA2D;IAC3D,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GACA,OAAO,CAAC,cAAc,EAAE,CAAC,CAqD3B;AAED,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE;IACJ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GACA,OAAO,CAAC,cAAc,EAAE,CAAC,CAgD3B;AAED,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,aAAa,EACtB,IAAI,EAAE;IACJ,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,2DAA2D;IAC3D,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,GACA,OAAO,CAAC,cAAc,EAAE,CAAC,CAsC3B"}
@@ -1,5 +1,11 @@
1
1
  import { expandConnectorSourceFilter, normalizeConnectorSource, } from "@elizaos/shared/connectors";
2
2
  import { buildDeepLink, resolveChannelName } from "./channel-deep-links.js";
3
+ /**
4
+ * Discord public channels are typically larger than DMs / threads. We use this
5
+ * threshold both to treat sufficiently-large groups as broadcast channels and
6
+ * to drive the v1 small-group filter in the Messages section.
7
+ */
8
+ const PUBLIC_CHANNEL_PARTICIPANT_THRESHOLD = 15;
3
9
  const DEFAULT_SOURCES = [
4
10
  "discord",
5
11
  "telegram",
@@ -71,6 +77,13 @@ export async function fetchChatMessages(runtime, opts) {
71
77
  arr.push(m);
72
78
  messagesByRoom.set(m.roomId, arr);
73
79
  }
80
+ // Fetch participant counts per room exactly once. Used to classify groups
81
+ // vs public channels and to filter out >15-person rooms in the inbox.
82
+ const participantCountByRoom = new Map();
83
+ await Promise.all(sourceRooms.map(async (room) => {
84
+ const ids = await runtime.getParticipantsForRoom(room.id);
85
+ participantCountByRoom.set(room.id, ids.length);
86
+ }));
74
87
  const results = [];
75
88
  for (const memory of filtered.slice(0, limit)) {
76
89
  const room = roomMap.get(memory.roomId);
@@ -81,6 +94,8 @@ export async function fetchChatMessages(runtime, opts) {
81
94
  const senderName = extractSenderName(memory) ?? "Unknown";
82
95
  const channelName = resolveChannelName(source, room?.name, senderName);
83
96
  const channelType = detectChannelType(room);
97
+ const participantCount = participantCountByRoom.get(memory.roomId);
98
+ const chatType = classifyChatType(room, channelType, participantCount);
84
99
  const world = room?.worldId ? worldMap.get(room.worldId) : undefined;
85
100
  const deepLink = await buildDeepLink(runtime, source, {
86
101
  roomId: memory.roomId,
@@ -110,6 +125,9 @@ export async function fetchChatMessages(runtime, opts) {
110
125
  timestamp: memory.createdAt ?? Date.now(),
111
126
  deepLink: deepLink ?? undefined,
112
127
  threadMessages: threadMessages.length > 0 ? threadMessages : undefined,
128
+ threadId: memory.roomId,
129
+ chatType,
130
+ participantCount,
113
131
  });
114
132
  }
115
133
  return results;
@@ -121,7 +139,11 @@ export async function fetchGmailMessages(source, opts) {
121
139
  const capabilities = status.grantedCapabilities ?? [];
122
140
  if (!capabilities.includes("google.gmail.triage"))
123
141
  return [];
124
- const triageFeed = await source.getGmailTriage(INTERNAL_URL);
142
+ // When no grantId is supplied, the service-side getGmailTriage already
143
+ // aggregates across every Google grant and tags each summary with grantId
144
+ // and accountEmail. We forward those onto the InboundMessage so the inbox
145
+ // mixin can group by account and render account chips.
146
+ const triageFeed = await source.getGmailTriage(INTERNAL_URL, opts.grantId ? { grantId: opts.grantId } : undefined);
125
147
  if (triageFeed.messages.length === 0)
126
148
  return [];
127
149
  const limit = opts.limit ?? 50;
@@ -150,6 +172,10 @@ export async function fetchGmailMessages(source, opts) {
150
172
  gmailMessageId: msg.externalId || msg.id,
151
173
  gmailIsImportant: msg.isImportant ?? false,
152
174
  gmailLikelyReplyNeeded: msg.likelyReplyNeeded ?? false,
175
+ threadId: msg.threadId,
176
+ chatType: "dm",
177
+ gmailAccountId: msg.grantId,
178
+ gmailAccountEmail: msg.accountEmail ?? undefined,
153
179
  });
154
180
  }
155
181
  return results;
@@ -179,6 +205,7 @@ export async function fetchXDmMessages(source, opts) {
179
205
  ? metadata.participantId.trim()
180
206
  : dm.senderId;
181
207
  const isGroup = participantIds.length > 2;
208
+ const xParticipantCount = participantIds.length || (isGroup ? undefined : 2);
182
209
  results.push({
183
210
  id: dm.id,
184
211
  source: "x_dm",
@@ -191,6 +218,9 @@ export async function fetchXDmMessages(source, opts) {
191
218
  text: dm.text,
192
219
  snippet: dm.text.slice(0, SNIPPET_MAX_LENGTH),
193
220
  timestamp: Number.isFinite(receivedMs) ? receivedMs : Date.now(),
221
+ threadId: dm.conversationId,
222
+ chatType: isGroup ? "group" : "dm",
223
+ participantCount: xParticipantCount,
194
224
  });
195
225
  }
196
226
  return results;
@@ -203,6 +233,7 @@ export async function fetchAllMessages(runtime, opts) {
203
233
  ? fetchGmailMessages(opts.gmailSource, {
204
234
  sinceIso: opts.sinceIso,
205
235
  limit: opts.limit,
236
+ grantId: opts.gmailGrantId,
206
237
  })
207
238
  : Promise.reject(new Error("fetchAllMessages requires gmailSource when Gmail is included"))
208
239
  : Promise.resolve([]);
@@ -284,3 +315,26 @@ function detectChannelType(room) {
284
315
  }
285
316
  return "dm";
286
317
  }
318
+ /**
319
+ * Classify a room as DM, small group, or public channel/broadcast.
320
+ * Discord text channels (`GUILD_TEXT`, `voice`, etc.) are treated as channels.
321
+ * Anything with more than {@link PUBLIC_CHANNEL_PARTICIPANT_THRESHOLD}
322
+ * participants is also treated as a channel so the inbox can hide it.
323
+ */
324
+ function classifyChatType(room, channelType, participantCount) {
325
+ const rawType = typeof room?.type === "string" ? room.type.toLowerCase() : "";
326
+ const isLikelyPublicChannel = rawType.includes("guild") ||
327
+ rawType.includes("voice") ||
328
+ rawType.includes("forum") ||
329
+ rawType.includes("public") ||
330
+ rawType.includes("broadcast");
331
+ if (channelType === "dm") {
332
+ return "dm";
333
+ }
334
+ if (isLikelyPublicChannel ||
335
+ (typeof participantCount === "number" &&
336
+ participantCount > PUBLIC_CHANNEL_PARTICIPANT_THRESHOLD)) {
337
+ return "channel";
338
+ }
339
+ return "group";
340
+ }
@@ -36,6 +36,26 @@ export interface InboundMessage {
36
36
  gmailMessageId?: string;
37
37
  gmailIsImportant?: boolean;
38
38
  gmailLikelyReplyNeeded?: boolean;
39
+ /** Stable per-conversation key. For chat: roomId. For Gmail: thread id. */
40
+ threadId?: string;
41
+ /** Identifies which Google grant the message came from when multiple Gmail accounts exist. */
42
+ gmailAccountId?: string;
43
+ /** Display label for the Gmail account (e.g., `work@example.com`). */
44
+ gmailAccountEmail?: string;
45
+ /** ISO timestamp of when the user last viewed this thread. */
46
+ lastSeenAt?: string;
47
+ /** ISO timestamp if the user has replied since this message arrived. */
48
+ repliedAt?: string;
49
+ /** 0–100 score; higher = more important. */
50
+ priorityScore?: number;
51
+ /**
52
+ * DM, small/medium group chat, or public channel/broadcast.
53
+ * Mirrors the existing `channelType` field but with broader coverage; downstream
54
+ * code will migrate from `channelType` to `chatType` over time.
55
+ */
56
+ chatType?: "dm" | "group" | "channel";
57
+ /** For groups, number of participants. */
58
+ participantCount?: number;
39
59
  }
40
60
  export interface TriageEntry {
41
61
  id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/inbox/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/inbox/types.ts"],"names":[],"mappings":"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"}
@@ -70,9 +70,22 @@ export interface LifeOpsSpendingSummary {
70
70
  transactionCount: number;
71
71
  }>;
72
72
  }
73
+ export interface LifeOpsRecurringChargePlaybookHit {
74
+ merchantNormalized: string;
75
+ playbookKey: string;
76
+ serviceName: string;
77
+ managementUrl: string;
78
+ executorPreference: "user_browser" | "agent_browser" | "desktop_native";
79
+ }
73
80
  export interface LifeOpsPaymentsDashboard {
74
81
  sources: LifeOpsPaymentSource[];
75
82
  recurring: LifeOpsRecurringCharge[];
83
+ /**
84
+ * For every recurring charge whose merchant matches a known cancellation
85
+ * playbook (Netflix, Spotify, NYT, etc.), this map carries the playbook
86
+ * descriptor. UI shows a deep-link "Cancel" button only when there is a hit.
87
+ */
88
+ recurringPlaybookHits: LifeOpsRecurringChargePlaybookHit[];
76
89
  spending: LifeOpsSpendingSummary;
77
90
  gmailSubscriptionAuditId: string | null;
78
91
  generatedAt: string;
@@ -113,4 +126,11 @@ export interface SpendingSummaryRequest {
113
126
  windowDays?: number | null;
114
127
  sourceId?: string | null;
115
128
  }
129
+ export type LifeOpsMoneyDashboard = LifeOpsPaymentsDashboard;
130
+ export type LifeOpsMoneySource = LifeOpsPaymentSource;
131
+ export type LifeOpsMoneySourceKind = LifeOpsPaymentSourceKind;
132
+ export type LifeOpsMoneySourceStatus = LifeOpsPaymentSourceStatus;
133
+ export type LifeOpsMoneyTransaction = LifeOpsPaymentTransaction;
134
+ export type LifeOpsMoneyDirection = LifeOpsPaymentDirection;
135
+ export type AddMoneySourceRequest = AddPaymentSourceRequest;
116
136
  //# sourceMappingURL=payment-types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"payment-types.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/lifeops/payment-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"payment-types.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/lifeops/payment-types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,110 @@
1
+ /**
2
+ * Milady-runtime client for Eliza Cloud's PayPal bridge endpoints.
3
+ *
4
+ * Same pattern as PlaidManagedClient: cloud holds the PAYPAL_* secrets,
5
+ * we just authenticate with the user's Eliza Cloud API key and forward
6
+ * the OAuth + Reporting API calls.
7
+ *
8
+ * The Reporting API (transaction sync) is only available to merchant-tier
9
+ * PayPal accounts. Personal accounts can authorize Login but the API
10
+ * returns 403; the cloud surfaces this as
11
+ * `{ error, fallback: "csv_export" }` so we can route the user to CSV
12
+ * import instead.
13
+ */
14
+ export declare class PaypalManagedClientError extends Error {
15
+ readonly status: number;
16
+ readonly fallback: "csv_export" | null;
17
+ constructor(status: number, message: string, fallback?: "csv_export" | null);
18
+ }
19
+ interface ResolvedCloudConfig {
20
+ configured: boolean;
21
+ apiKey: string | null;
22
+ apiBaseUrl: string;
23
+ siteUrl: string;
24
+ }
25
+ export interface PaypalAuthorizeUrlResponse {
26
+ url: string;
27
+ scope: string;
28
+ environment: "live" | "sandbox";
29
+ }
30
+ export interface PaypalCallbackResponse {
31
+ accessToken: string;
32
+ refreshToken: string | null;
33
+ expiresIn: number;
34
+ scope: string;
35
+ capability: {
36
+ hasReporting: boolean;
37
+ hasIdentity: boolean;
38
+ };
39
+ identity: {
40
+ payerId: string;
41
+ emails: string[];
42
+ name: string | null;
43
+ } | null;
44
+ }
45
+ export interface PaypalTransactionDto {
46
+ transaction_info: {
47
+ transaction_id: string;
48
+ transaction_initiation_date: string;
49
+ transaction_updated_date: string | null;
50
+ transaction_amount: {
51
+ currency_code: string;
52
+ value: string;
53
+ };
54
+ transaction_status: string;
55
+ transaction_subject: string | null;
56
+ transaction_note: string | null;
57
+ };
58
+ payer_info?: {
59
+ email_address?: string;
60
+ payer_name?: {
61
+ alternate_full_name?: string;
62
+ };
63
+ };
64
+ shipping_info?: {
65
+ name?: string;
66
+ };
67
+ cart_info?: {
68
+ item_details?: Array<{
69
+ item_name?: string;
70
+ item_amount?: {
71
+ currency_code: string;
72
+ value: string;
73
+ };
74
+ }>;
75
+ };
76
+ }
77
+ export interface PaypalTransactionsResponse {
78
+ transactions: PaypalTransactionDto[];
79
+ totalItems: number;
80
+ totalPages: number;
81
+ page: number;
82
+ }
83
+ export declare class PaypalManagedClient {
84
+ private readonly configSource;
85
+ constructor(configSource?: () => ResolvedCloudConfig);
86
+ private requireConfig;
87
+ get configured(): boolean;
88
+ buildAuthorizeUrl(args: {
89
+ state: string;
90
+ }): Promise<PaypalAuthorizeUrlResponse>;
91
+ exchangeCode(args: {
92
+ code: string;
93
+ }): Promise<PaypalCallbackResponse>;
94
+ refreshAccessToken(args: {
95
+ refreshToken: string;
96
+ }): Promise<{
97
+ accessToken: string;
98
+ refreshToken: string | null;
99
+ expiresIn: number;
100
+ scope: string;
101
+ }>;
102
+ searchTransactions(args: {
103
+ accessToken: string;
104
+ startDate: string;
105
+ endDate: string;
106
+ page?: number;
107
+ }): Promise<PaypalTransactionsResponse>;
108
+ }
109
+ export {};
110
+ //# sourceMappingURL=paypal-managed-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paypal-managed-client.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/lifeops/paypal-managed-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,148 @@
1
+ /**
2
+ * Milady-runtime client for Eliza Cloud's PayPal bridge endpoints.
3
+ *
4
+ * Same pattern as PlaidManagedClient: cloud holds the PAYPAL_* secrets,
5
+ * we just authenticate with the user's Eliza Cloud API key and forward
6
+ * the OAuth + Reporting API calls.
7
+ *
8
+ * The Reporting API (transaction sync) is only available to merchant-tier
9
+ * PayPal accounts. Personal accounts can authorize Login but the API
10
+ * returns 403; the cloud surfaces this as
11
+ * `{ error, fallback: "csv_export" }` so we can route the user to CSV
12
+ * import instead.
13
+ */
14
+ import { normalizeCloudSiteUrl, resolveCloudApiBaseUrl, } from "@elizaos/agent/cloud/base-url";
15
+ import { loadElizaConfig } from "@elizaos/agent/config/config";
16
+ const PAYPAL_REQUEST_TIMEOUT_MS = 30_000;
17
+ export class PaypalManagedClientError extends Error {
18
+ status;
19
+ fallback;
20
+ constructor(status, message, fallback = null) {
21
+ super(message);
22
+ this.status = status;
23
+ this.fallback = fallback;
24
+ this.name = "PaypalManagedClientError";
25
+ }
26
+ }
27
+ function normalizeApiKey(value) {
28
+ const trimmed = value?.trim();
29
+ if (!trimmed)
30
+ return null;
31
+ return trimmed.toUpperCase() === "[REDACTED]" ? null : trimmed;
32
+ }
33
+ function resolveCloudConfig() {
34
+ let configKey = null;
35
+ let configBase = null;
36
+ try {
37
+ const config = loadElizaConfig();
38
+ const cloud = config.cloud && typeof config.cloud === "object"
39
+ ? config.cloud
40
+ : null;
41
+ if (cloud) {
42
+ if (typeof cloud.apiKey === "string") {
43
+ configKey = normalizeApiKey(cloud.apiKey);
44
+ }
45
+ if (typeof cloud.baseUrl === "string" && cloud.baseUrl.trim().length) {
46
+ configBase = cloud.baseUrl.trim();
47
+ }
48
+ }
49
+ }
50
+ catch {
51
+ // Fall through to env.
52
+ }
53
+ const apiKey = configKey ?? normalizeApiKey(process.env.ELIZAOS_CLOUD_API_KEY);
54
+ const baseUrl = configBase ?? process.env.ELIZAOS_CLOUD_BASE_URL ?? undefined;
55
+ return {
56
+ configured: Boolean(apiKey),
57
+ apiKey,
58
+ apiBaseUrl: resolveCloudApiBaseUrl(baseUrl),
59
+ siteUrl: normalizeCloudSiteUrl(baseUrl),
60
+ };
61
+ }
62
+ async function readJson(response) {
63
+ if (!response.ok) {
64
+ let detail = `${response.status} ${response.statusText}`.trim();
65
+ let fallback = null;
66
+ const text = await response.text();
67
+ if (text.trim().length > 0) {
68
+ try {
69
+ const parsed = JSON.parse(text);
70
+ detail = parsed.message ?? parsed.error ?? text.slice(0, 240);
71
+ fallback = parsed.fallback ?? null;
72
+ }
73
+ catch {
74
+ detail = text.slice(0, 240);
75
+ }
76
+ }
77
+ throw new PaypalManagedClientError(response.status, detail, fallback);
78
+ }
79
+ return (await response.json());
80
+ }
81
+ export class PaypalManagedClient {
82
+ configSource;
83
+ constructor(configSource = resolveCloudConfig) {
84
+ this.configSource = configSource;
85
+ }
86
+ requireConfig() {
87
+ const config = this.configSource();
88
+ if (!config.apiKey) {
89
+ throw new PaypalManagedClientError(409, "Eliza Cloud is not connected.");
90
+ }
91
+ return { ...config, apiKey: config.apiKey };
92
+ }
93
+ get configured() {
94
+ return this.configSource().configured;
95
+ }
96
+ async buildAuthorizeUrl(args) {
97
+ const config = this.requireConfig();
98
+ const response = await fetch(`${config.apiBaseUrl}/v1/milady/paypal/authorize`, {
99
+ method: "POST",
100
+ headers: {
101
+ Authorization: `Bearer ${config.apiKey}`,
102
+ "Content-Type": "application/json",
103
+ },
104
+ body: JSON.stringify({ state: args.state }),
105
+ signal: AbortSignal.timeout(PAYPAL_REQUEST_TIMEOUT_MS),
106
+ });
107
+ return readJson(response);
108
+ }
109
+ async exchangeCode(args) {
110
+ const config = this.requireConfig();
111
+ const response = await fetch(`${config.apiBaseUrl}/v1/milady/paypal/callback`, {
112
+ method: "POST",
113
+ headers: {
114
+ Authorization: `Bearer ${config.apiKey}`,
115
+ "Content-Type": "application/json",
116
+ },
117
+ body: JSON.stringify({ code: args.code }),
118
+ signal: AbortSignal.timeout(PAYPAL_REQUEST_TIMEOUT_MS),
119
+ });
120
+ return readJson(response);
121
+ }
122
+ async refreshAccessToken(args) {
123
+ const config = this.requireConfig();
124
+ const response = await fetch(`${config.apiBaseUrl}/v1/milady/paypal/refresh`, {
125
+ method: "POST",
126
+ headers: {
127
+ Authorization: `Bearer ${config.apiKey}`,
128
+ "Content-Type": "application/json",
129
+ },
130
+ body: JSON.stringify({ refreshToken: args.refreshToken }),
131
+ signal: AbortSignal.timeout(PAYPAL_REQUEST_TIMEOUT_MS),
132
+ });
133
+ return readJson(response);
134
+ }
135
+ async searchTransactions(args) {
136
+ const config = this.requireConfig();
137
+ const response = await fetch(`${config.apiBaseUrl}/v1/milady/paypal/transactions`, {
138
+ method: "POST",
139
+ headers: {
140
+ Authorization: `Bearer ${config.apiKey}`,
141
+ "Content-Type": "application/json",
142
+ },
143
+ body: JSON.stringify(args),
144
+ signal: AbortSignal.timeout(PAYPAL_REQUEST_TIMEOUT_MS * 2),
145
+ });
146
+ return readJson(response);
147
+ }
148
+ }
@@ -0,0 +1,86 @@
1
+ /**
2
+ * Milady-runtime client for Eliza Cloud's Plaid bridge endpoints.
3
+ *
4
+ * Pattern matches GoogleManagedClient: read the cloud apiKey from
5
+ * loadElizaConfig() / ELIZAOS_CLOUD_API_KEY, hit the cloud at
6
+ * /api/v1/milady/plaid/*, and surface a typed PlaidManagedClientError on
7
+ * non-2xx responses so callers can show actionable messages.
8
+ *
9
+ * The cloud API holds the long-lived Plaid `access_token` for transaction
10
+ * sync. The Milady runtime never sees Plaid client secrets, only the cloud
11
+ * api key.
12
+ */
13
+ export declare class PlaidManagedClientError extends Error {
14
+ readonly status: number;
15
+ constructor(status: number, message: string);
16
+ }
17
+ interface ResolvedCloudConfig {
18
+ configured: boolean;
19
+ apiKey: string | null;
20
+ apiBaseUrl: string;
21
+ siteUrl: string;
22
+ }
23
+ export interface PlaidLinkTokenResponse {
24
+ linkToken: string;
25
+ expiration: string;
26
+ environment: "sandbox" | "development" | "production";
27
+ }
28
+ export interface PlaidExchangeResponse {
29
+ accessToken: string;
30
+ itemId: string;
31
+ institution: {
32
+ institutionId: string;
33
+ institutionName: string;
34
+ primaryAccountMask: string | null;
35
+ accounts: Array<{
36
+ accountId: string;
37
+ name: string;
38
+ mask: string | null;
39
+ type: string;
40
+ subtype: string | null;
41
+ }>;
42
+ };
43
+ }
44
+ export interface PlaidSyncResponse {
45
+ added: PlaidTransactionDto[];
46
+ modified: PlaidTransactionDto[];
47
+ removed: Array<{
48
+ transaction_id: string;
49
+ }>;
50
+ nextCursor: string;
51
+ hasMore: boolean;
52
+ }
53
+ export interface PlaidTransactionDto {
54
+ transaction_id: string;
55
+ account_id: string;
56
+ amount: number;
57
+ iso_currency_code: string | null;
58
+ unofficial_currency_code: string | null;
59
+ date: string;
60
+ authorized_date: string | null;
61
+ name: string;
62
+ merchant_name: string | null;
63
+ pending: boolean;
64
+ category: string[] | null;
65
+ personal_finance_category: {
66
+ primary: string;
67
+ detailed: string;
68
+ } | null;
69
+ }
70
+ export declare class PlaidManagedClient {
71
+ private readonly configSource;
72
+ constructor(configSource?: () => ResolvedCloudConfig);
73
+ private requireConfig;
74
+ get configured(): boolean;
75
+ createLinkToken(): Promise<PlaidLinkTokenResponse>;
76
+ exchangePublicToken(args: {
77
+ publicToken: string;
78
+ }): Promise<PlaidExchangeResponse>;
79
+ syncTransactions(args: {
80
+ accessToken: string;
81
+ cursor?: string;
82
+ count?: number;
83
+ }): Promise<PlaidSyncResponse>;
84
+ }
85
+ export {};
86
+ //# sourceMappingURL=plaid-managed-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plaid-managed-client.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/lifeops/plaid-managed-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAUH,qBAAa,uBAAwB,SAAQ,KAAK;aAE9B,MAAM,EAAE,MAAM;gBAAd,MAAM,EAAE,MAAM,EAC9B,OAAO,EAAE,MAAM;CAKlB;AAED,UAAU,mBAAmB;IAC3B,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AA0DD,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,SAAS,GAAG,aAAa,GAAG,YAAY,CAAC;CACvD;AAED,MAAM,WAAW,qBAAqB;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE;QACX,aAAa,EAAE,MAAM,CAAC;QACtB,eAAe,EAAE,MAAM,CAAC;QACxB,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;QAClC,QAAQ,EAAE,KAAK,CAAC;YACd,SAAS,EAAE,MAAM,CAAC;YAClB,IAAI,EAAE,MAAM,CAAC;YACb,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;YACpB,IAAI,EAAE,MAAM,CAAC;YACb,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;SACxB,CAAC,CAAC;KACJ,CAAC;CACH;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,mBAAmB,EAAE,CAAC;IAC7B,QAAQ,EAAE,mBAAmB,EAAE,CAAC;IAChC,OAAO,EAAE,KAAK,CAAC;QAAE,cAAc,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC3C,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,wBAAwB,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC1B,yBAAyB,EAAE;QACzB,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;KAClB,GAAG,IAAI,CAAC;CACV;AAED,qBAAa,kBAAkB;IAE3B,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAAZ,YAAY,GAAE,MAAM,mBAAwC;IAG/E,OAAO,CAAC,aAAa;IAQrB,IAAI,UAAU,IAAI,OAAO,CAExB;IAEK,eAAe,IAAI,OAAO,CAAC,sBAAsB,CAAC;IAiBlD,mBAAmB,CAAC,IAAI,EAAE;QAC9B,WAAW,EAAE,MAAM,CAAC;KACrB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAiB5B,gBAAgB,CAAC,IAAI,EAAE;QAC3B,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,iBAAiB,CAAC;CAiB/B"}