@elizaos/plugin-personal-assistant 2.0.3-beta.5 → 2.0.3-beta.7

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 (1317) hide show
  1. package/dist/actions/app-block.d.ts +15 -0
  2. package/dist/actions/app-block.d.ts.map +1 -0
  3. package/dist/actions/app-block.js +349 -0
  4. package/dist/actions/app-block.js.map +1 -0
  5. package/dist/actions/autofill.d.ts +20 -0
  6. package/dist/actions/autofill.d.ts.map +1 -0
  7. package/dist/actions/autofill.js +370 -0
  8. package/dist/actions/autofill.js.map +1 -0
  9. package/dist/actions/block.d.ts +30 -0
  10. package/dist/actions/block.d.ts.map +1 -0
  11. package/dist/actions/block.js +326 -0
  12. package/dist/actions/block.js.map +1 -0
  13. package/dist/actions/book-travel.d.ts +10 -0
  14. package/dist/actions/book-travel.d.ts.map +1 -0
  15. package/dist/actions/book-travel.js +467 -0
  16. package/dist/actions/book-travel.js.map +1 -0
  17. package/dist/actions/brief.d.ts +60 -0
  18. package/dist/actions/brief.d.ts.map +1 -0
  19. package/dist/actions/brief.js +485 -0
  20. package/dist/actions/brief.js.map +1 -0
  21. package/dist/actions/calendar.d.ts +22 -0
  22. package/dist/actions/calendar.d.ts.map +1 -0
  23. package/dist/actions/calendar.js +832 -0
  24. package/dist/actions/calendar.js.map +1 -0
  25. package/dist/actions/conflict-detect.d.ts +67 -0
  26. package/dist/actions/conflict-detect.d.ts.map +1 -0
  27. package/dist/actions/conflict-detect.js +310 -0
  28. package/dist/actions/conflict-detect.js.map +1 -0
  29. package/dist/actions/connector.d.ts +5 -0
  30. package/dist/actions/connector.d.ts.map +1 -0
  31. package/dist/actions/connector.js +1354 -0
  32. package/dist/actions/connector.js.map +1 -0
  33. package/dist/actions/credentials.d.ts +14 -0
  34. package/dist/actions/credentials.d.ts.map +1 -0
  35. package/dist/actions/credentials.js +191 -0
  36. package/dist/actions/credentials.js.map +1 -0
  37. package/dist/actions/document.d.ts +36 -0
  38. package/dist/actions/document.d.ts.map +1 -0
  39. package/dist/actions/document.js +613 -0
  40. package/dist/actions/document.js.map +1 -0
  41. package/dist/actions/entity.d.ts +20 -0
  42. package/dist/actions/entity.d.ts.map +1 -0
  43. package/dist/actions/entity.js +785 -0
  44. package/dist/actions/entity.js.map +1 -0
  45. package/dist/actions/health.d.ts +4 -0
  46. package/dist/actions/health.d.ts.map +1 -0
  47. package/dist/actions/health.js +37 -0
  48. package/dist/actions/health.js.map +1 -0
  49. package/dist/actions/inbox.d.ts +12 -0
  50. package/dist/actions/inbox.d.ts.map +1 -0
  51. package/dist/actions/inbox.js +13 -0
  52. package/dist/actions/inbox.js.map +1 -0
  53. package/dist/actions/lib/calendly-handler.d.ts +3 -0
  54. package/dist/actions/lib/calendly-handler.d.ts.map +1 -0
  55. package/dist/actions/lib/calendly-handler.js +506 -0
  56. package/dist/actions/lib/calendly-handler.js.map +1 -0
  57. package/dist/actions/lib/extract-goal-plan.d.ts +69 -0
  58. package/dist/actions/lib/extract-goal-plan.d.ts.map +1 -0
  59. package/dist/actions/lib/extract-goal-plan.js +488 -0
  60. package/dist/actions/lib/extract-goal-plan.js.map +1 -0
  61. package/dist/actions/lib/extract-life-operation.d.ts +18 -0
  62. package/dist/actions/lib/extract-life-operation.d.ts.map +1 -0
  63. package/dist/actions/lib/extract-life-operation.js +318 -0
  64. package/dist/actions/lib/extract-life-operation.js.map +1 -0
  65. package/dist/actions/lib/extract-task-plan.d.ts +78 -0
  66. package/dist/actions/lib/extract-task-plan.d.ts.map +1 -0
  67. package/dist/actions/lib/extract-task-plan.js +355 -0
  68. package/dist/actions/lib/extract-task-plan.js.map +1 -0
  69. package/dist/actions/lib/extract-update-fields.d.ts +27 -0
  70. package/dist/actions/lib/extract-update-fields.d.ts.map +1 -0
  71. package/dist/actions/lib/extract-update-fields.js +172 -0
  72. package/dist/actions/lib/extract-update-fields.js.map +1 -0
  73. package/dist/actions/lib/lifeops-deferred-draft.d.ts +68 -0
  74. package/dist/actions/lib/lifeops-deferred-draft.d.ts.map +1 -0
  75. package/dist/actions/lib/lifeops-deferred-draft.js +315 -0
  76. package/dist/actions/lib/lifeops-deferred-draft.js.map +1 -0
  77. package/dist/actions/lib/messaging-helpers.d.ts +20 -0
  78. package/dist/actions/lib/messaging-helpers.d.ts.map +1 -0
  79. package/dist/actions/lib/messaging-helpers.js +103 -0
  80. package/dist/actions/lib/messaging-helpers.js.map +1 -0
  81. package/dist/actions/lib/owner-policy-writes.d.ts +49 -0
  82. package/dist/actions/lib/owner-policy-writes.d.ts.map +1 -0
  83. package/dist/actions/lib/owner-policy-writes.js +157 -0
  84. package/dist/actions/lib/owner-policy-writes.js.map +1 -0
  85. package/dist/actions/lib/prompt-format.d.ts +3 -0
  86. package/dist/actions/lib/prompt-format.d.ts.map +1 -0
  87. package/dist/actions/lib/prompt-format.js +42 -0
  88. package/dist/actions/lib/prompt-format.js.map +1 -0
  89. package/dist/actions/lib/scheduling-handler.d.ts +93 -0
  90. package/dist/actions/lib/scheduling-handler.d.ts.map +1 -0
  91. package/dist/actions/lib/scheduling-handler.js +868 -0
  92. package/dist/actions/lib/scheduling-handler.js.map +1 -0
  93. package/dist/actions/life.d.ts +13 -0
  94. package/dist/actions/life.d.ts.map +1 -0
  95. package/dist/actions/life.js +2524 -0
  96. package/dist/actions/life.js.map +1 -0
  97. package/dist/actions/money.d.ts +24 -0
  98. package/dist/actions/money.d.ts.map +1 -0
  99. package/dist/actions/money.js +41 -0
  100. package/dist/actions/money.js.map +1 -0
  101. package/dist/actions/owner-surfaces.d.ts +11 -0
  102. package/dist/actions/owner-surfaces.d.ts.map +1 -0
  103. package/dist/actions/owner-surfaces.js +493 -0
  104. package/dist/actions/owner-surfaces.js.map +1 -0
  105. package/dist/actions/password-manager.d.ts +10 -0
  106. package/dist/actions/password-manager.d.ts.map +1 -0
  107. package/dist/actions/password-manager.js +195 -0
  108. package/dist/actions/password-manager.js.map +1 -0
  109. package/dist/actions/payments.d.ts +10 -0
  110. package/dist/actions/payments.d.ts.map +1 -0
  111. package/dist/actions/payments.js +5 -0
  112. package/dist/actions/payments.js.map +1 -0
  113. package/dist/actions/prioritize.d.ts +49 -0
  114. package/dist/actions/prioritize.d.ts.map +1 -0
  115. package/dist/actions/prioritize.js +313 -0
  116. package/dist/actions/prioritize.js.map +1 -0
  117. package/dist/actions/remote-desktop.d.ts +13 -0
  118. package/dist/actions/remote-desktop.d.ts.map +1 -0
  119. package/dist/actions/remote-desktop.js +11 -0
  120. package/dist/actions/remote-desktop.js.map +1 -0
  121. package/dist/actions/resolve-request.d.ts +12 -0
  122. package/dist/actions/resolve-request.d.ts.map +1 -0
  123. package/dist/actions/resolve-request.js +427 -0
  124. package/dist/actions/resolve-request.js.map +1 -0
  125. package/dist/actions/schedule.d.ts +10 -0
  126. package/dist/actions/schedule.d.ts.map +1 -0
  127. package/dist/actions/schedule.js +113 -0
  128. package/dist/actions/schedule.js.map +1 -0
  129. package/dist/actions/scheduled-task.d.ts +32 -0
  130. package/dist/actions/scheduled-task.d.ts.map +1 -0
  131. package/dist/actions/scheduled-task.js +661 -0
  132. package/dist/actions/scheduled-task.js.map +1 -0
  133. package/dist/actions/screen-time.d.ts +4 -0
  134. package/dist/actions/screen-time.d.ts.map +1 -0
  135. package/dist/actions/screen-time.js +47 -0
  136. package/dist/actions/screen-time.js.map +1 -0
  137. package/dist/actions/subscriptions.d.ts +8 -0
  138. package/dist/actions/subscriptions.d.ts.map +1 -0
  139. package/dist/actions/subscriptions.js +327 -0
  140. package/dist/actions/subscriptions.js.map +1 -0
  141. package/dist/actions/voice-call.d.ts +16 -0
  142. package/dist/actions/voice-call.d.ts.map +1 -0
  143. package/dist/actions/voice-call.js +756 -0
  144. package/dist/actions/voice-call.js.map +1 -0
  145. package/dist/actions/website-block.d.ts +15 -0
  146. package/dist/actions/website-block.d.ts.map +1 -0
  147. package/dist/actions/website-block.js +719 -0
  148. package/dist/actions/website-block.js.map +1 -0
  149. package/dist/actions/work-thread.d.ts +5 -0
  150. package/dist/actions/work-thread.d.ts.map +1 -0
  151. package/dist/actions/work-thread.js +556 -0
  152. package/dist/actions/work-thread.js.map +1 -0
  153. package/dist/activity-profile/activity-tracker-repo.d.ts +28 -0
  154. package/dist/activity-profile/activity-tracker-repo.d.ts.map +1 -0
  155. package/dist/activity-profile/activity-tracker-repo.js +61 -0
  156. package/dist/activity-profile/activity-tracker-repo.js.map +1 -0
  157. package/dist/activity-profile/activity-tracker-reporting.d.ts +52 -0
  158. package/dist/activity-profile/activity-tracker-reporting.d.ts.map +1 -0
  159. package/dist/activity-profile/activity-tracker-reporting.js +119 -0
  160. package/dist/activity-profile/activity-tracker-reporting.js.map +1 -0
  161. package/dist/activity-profile/activity-tracker-service.d.ts +36 -0
  162. package/dist/activity-profile/activity-tracker-service.d.ts.map +1 -0
  163. package/dist/activity-profile/activity-tracker-service.js +187 -0
  164. package/dist/activity-profile/activity-tracker-service.js.map +1 -0
  165. package/dist/activity-profile/analyzer.d.ts +23 -0
  166. package/dist/activity-profile/analyzer.d.ts.map +1 -0
  167. package/dist/activity-profile/analyzer.js +485 -0
  168. package/dist/activity-profile/analyzer.js.map +1 -0
  169. package/dist/activity-profile/presence-signal-bridge-service.d.ts +14 -0
  170. package/dist/activity-profile/presence-signal-bridge-service.d.ts.map +1 -0
  171. package/dist/activity-profile/presence-signal-bridge-service.js +159 -0
  172. package/dist/activity-profile/presence-signal-bridge-service.js.map +1 -0
  173. package/dist/activity-profile/proactive-inbox-digest.d.ts +3 -0
  174. package/dist/activity-profile/proactive-inbox-digest.d.ts.map +1 -0
  175. package/dist/activity-profile/proactive-inbox-digest.js +21 -0
  176. package/dist/activity-profile/proactive-inbox-digest.js.map +1 -0
  177. package/dist/activity-profile/proactive-planner.d.ts +150 -0
  178. package/dist/activity-profile/proactive-planner.d.ts.map +1 -0
  179. package/dist/activity-profile/proactive-planner.js +529 -0
  180. package/dist/activity-profile/proactive-planner.js.map +1 -0
  181. package/dist/activity-profile/proactive-worker.d.ts +33 -0
  182. package/dist/activity-profile/proactive-worker.d.ts.map +1 -0
  183. package/dist/activity-profile/proactive-worker.js +779 -0
  184. package/dist/activity-profile/proactive-worker.js.map +1 -0
  185. package/dist/activity-profile/profile-metadata.d.ts +10 -0
  186. package/dist/activity-profile/profile-metadata.d.ts.map +1 -0
  187. package/dist/activity-profile/profile-metadata.js +16 -0
  188. package/dist/activity-profile/profile-metadata.js.map +1 -0
  189. package/dist/activity-profile/redactor.d.ts +15 -0
  190. package/dist/activity-profile/redactor.d.ts.map +1 -0
  191. package/dist/activity-profile/redactor.js +22 -0
  192. package/dist/activity-profile/redactor.js.map +1 -0
  193. package/dist/activity-profile/service.d.ts +11 -0
  194. package/dist/activity-profile/service.d.ts.map +1 -0
  195. package/dist/activity-profile/service.js +272 -0
  196. package/dist/activity-profile/service.js.map +1 -0
  197. package/dist/activity-profile/types.d.ts +97 -0
  198. package/dist/activity-profile/types.d.ts.map +1 -0
  199. package/dist/activity-profile/types.js +36 -0
  200. package/dist/activity-profile/types.js.map +1 -0
  201. package/dist/agent-lifeops.d.ts +2 -0
  202. package/dist/agent-lifeops.d.ts.map +1 -0
  203. package/dist/agent-lifeops.js +2 -0
  204. package/dist/agent-lifeops.js.map +1 -0
  205. package/dist/api/client-lifeops.d.ts +319 -0
  206. package/dist/api/client-lifeops.d.ts.map +1 -0
  207. package/dist/api/client-lifeops.js +794 -0
  208. package/dist/api/client-lifeops.js.map +1 -0
  209. package/dist/automation-node-contributor.d.ts +2 -0
  210. package/dist/automation-node-contributor.d.ts.map +1 -0
  211. package/dist/automation-node-contributor.js +184 -0
  212. package/dist/automation-node-contributor.js.map +1 -0
  213. package/dist/client.d.ts +16 -0
  214. package/dist/client.d.ts.map +1 -0
  215. package/dist/client.js +18 -0
  216. package/dist/client.js.map +1 -0
  217. package/dist/components/AppBlockerSettingsCard.d.ts +3 -0
  218. package/dist/components/AppBlockerSettingsCard.d.ts.map +1 -0
  219. package/dist/components/AppBlockerSettingsCard.js +538 -0
  220. package/dist/components/AppBlockerSettingsCard.js.map +1 -0
  221. package/dist/components/WebsiteBlockerSettingsCard.d.ts +3 -0
  222. package/dist/components/WebsiteBlockerSettingsCard.d.ts.map +1 -0
  223. package/dist/components/WebsiteBlockerSettingsCard.js +148 -0
  224. package/dist/components/WebsiteBlockerSettingsCard.js.map +1 -0
  225. package/dist/contracts/index.d.ts +2 -0
  226. package/dist/contracts/index.d.ts.map +1 -0
  227. package/dist/contracts/index.js +2 -0
  228. package/dist/contracts/index.js.map +1 -0
  229. package/dist/contracts/lifeops.d.ts +2 -0
  230. package/dist/contracts/lifeops.d.ts.map +1 -0
  231. package/dist/contracts/lifeops.js +2 -0
  232. package/dist/contracts/lifeops.js.map +1 -0
  233. package/dist/default-packs/autofill-whitelist-pack.d.ts +17 -0
  234. package/dist/default-packs/autofill-whitelist-pack.d.ts.map +1 -0
  235. package/dist/default-packs/autofill-whitelist-pack.js +56 -0
  236. package/dist/default-packs/autofill-whitelist-pack.js.map +1 -0
  237. package/dist/default-packs/consolidation-policies.d.ts +14 -0
  238. package/dist/default-packs/consolidation-policies.d.ts.map +1 -0
  239. package/dist/default-packs/consolidation-policies.js +17 -0
  240. package/dist/default-packs/consolidation-policies.js.map +1 -0
  241. package/dist/default-packs/contract-types.d.ts +200 -0
  242. package/dist/default-packs/contract-types.d.ts.map +1 -0
  243. package/dist/default-packs/contract-types.js +1 -0
  244. package/dist/default-packs/contract-types.js.map +1 -0
  245. package/dist/default-packs/daily-rhythm.d.ts +28 -0
  246. package/dist/default-packs/daily-rhythm.d.ts.map +1 -0
  247. package/dist/default-packs/daily-rhythm.js +136 -0
  248. package/dist/default-packs/daily-rhythm.js.map +1 -0
  249. package/dist/default-packs/escalation-ladders.d.ts +18 -0
  250. package/dist/default-packs/escalation-ladders.d.ts.map +1 -0
  251. package/dist/default-packs/escalation-ladders.js +17 -0
  252. package/dist/default-packs/escalation-ladders.js.map +1 -0
  253. package/dist/default-packs/executive-assistant.d.ts +50 -0
  254. package/dist/default-packs/executive-assistant.d.ts.map +1 -0
  255. package/dist/default-packs/executive-assistant.js +745 -0
  256. package/dist/default-packs/executive-assistant.js.map +1 -0
  257. package/dist/default-packs/followup-starter.d.ts +49 -0
  258. package/dist/default-packs/followup-starter.d.ts.map +1 -0
  259. package/dist/default-packs/followup-starter.js +104 -0
  260. package/dist/default-packs/followup-starter.js.map +1 -0
  261. package/dist/default-packs/habit-starters.d.ts +37 -0
  262. package/dist/default-packs/habit-starters.d.ts.map +1 -0
  263. package/dist/default-packs/habit-starters.js +255 -0
  264. package/dist/default-packs/habit-starters.js.map +1 -0
  265. package/dist/default-packs/inbox-triage-starter.d.ts +23 -0
  266. package/dist/default-packs/inbox-triage-starter.d.ts.map +1 -0
  267. package/dist/default-packs/inbox-triage-starter.js +61 -0
  268. package/dist/default-packs/inbox-triage-starter.js.map +1 -0
  269. package/dist/default-packs/index.d.ts +54 -0
  270. package/dist/default-packs/index.d.ts.map +1 -0
  271. package/dist/default-packs/index.js +150 -0
  272. package/dist/default-packs/index.js.map +1 -0
  273. package/dist/default-packs/lint.d.ts +62 -0
  274. package/dist/default-packs/lint.d.ts.map +1 -0
  275. package/dist/default-packs/lint.js +161 -0
  276. package/dist/default-packs/lint.js.map +1 -0
  277. package/dist/default-packs/morning-brief.d.ts +44 -0
  278. package/dist/default-packs/morning-brief.d.ts.map +1 -0
  279. package/dist/default-packs/morning-brief.js +69 -0
  280. package/dist/default-packs/morning-brief.js.map +1 -0
  281. package/dist/default-packs/quiet-user-watcher.d.ts +49 -0
  282. package/dist/default-packs/quiet-user-watcher.d.ts.map +1 -0
  283. package/dist/default-packs/quiet-user-watcher.js +92 -0
  284. package/dist/default-packs/quiet-user-watcher.js.map +1 -0
  285. package/dist/default-packs/registry-types.d.ts +51 -0
  286. package/dist/default-packs/registry-types.d.ts.map +1 -0
  287. package/dist/default-packs/registry-types.js +1 -0
  288. package/dist/default-packs/registry-types.js.map +1 -0
  289. package/dist/default-packs/task-definitions.d.ts +88 -0
  290. package/dist/default-packs/task-definitions.d.ts.map +1 -0
  291. package/dist/default-packs/task-definitions.js +87 -0
  292. package/dist/default-packs/task-definitions.js.map +1 -0
  293. package/dist/events/index.d.ts +34 -0
  294. package/dist/events/index.d.ts.map +1 -0
  295. package/dist/events/index.js +30 -0
  296. package/dist/events/index.js.map +1 -0
  297. package/dist/followup/actions/listOverdueFollowups.d.ts +3 -0
  298. package/dist/followup/actions/listOverdueFollowups.d.ts.map +1 -0
  299. package/dist/followup/actions/listOverdueFollowups.js +90 -0
  300. package/dist/followup/actions/listOverdueFollowups.js.map +1 -0
  301. package/dist/followup/actions/markFollowupDone.d.ts +3 -0
  302. package/dist/followup/actions/markFollowupDone.d.ts.map +1 -0
  303. package/dist/followup/actions/markFollowupDone.js +171 -0
  304. package/dist/followup/actions/markFollowupDone.js.map +1 -0
  305. package/dist/followup/actions/setFollowupThreshold.d.ts +3 -0
  306. package/dist/followup/actions/setFollowupThreshold.d.ts.map +1 -0
  307. package/dist/followup/actions/setFollowupThreshold.js +171 -0
  308. package/dist/followup/actions/setFollowupThreshold.js.map +1 -0
  309. package/dist/followup/followup-tracker.d.ts +83 -0
  310. package/dist/followup/followup-tracker.d.ts.map +1 -0
  311. package/dist/followup/followup-tracker.js +311 -0
  312. package/dist/followup/followup-tracker.js.map +1 -0
  313. package/dist/followup/index.d.ts +5 -0
  314. package/dist/followup/index.d.ts.map +1 -0
  315. package/dist/followup/index.js +39 -0
  316. package/dist/followup/index.js.map +1 -0
  317. package/dist/hooks/connector-error.d.ts +2 -0
  318. package/dist/hooks/connector-error.d.ts.map +1 -0
  319. package/dist/hooks/connector-error.js +13 -0
  320. package/dist/hooks/connector-error.js.map +1 -0
  321. package/dist/hooks/useDiscordConnector.d.ts +11 -0
  322. package/dist/hooks/useDiscordConnector.d.ts.map +1 -0
  323. package/dist/hooks/useDiscordConnector.js +95 -0
  324. package/dist/hooks/useDiscordConnector.js.map +1 -0
  325. package/dist/hooks/useGoogleLifeOpsConnector.d.ts +23 -0
  326. package/dist/hooks/useGoogleLifeOpsConnector.d.ts.map +1 -0
  327. package/dist/hooks/useGoogleLifeOpsConnector.js +630 -0
  328. package/dist/hooks/useGoogleLifeOpsConnector.js.map +1 -0
  329. package/dist/hooks/useIMessageConnector.d.ts +10 -0
  330. package/dist/hooks/useIMessageConnector.d.ts.map +1 -0
  331. package/dist/hooks/useIMessageConnector.js +57 -0
  332. package/dist/hooks/useIMessageConnector.js.map +1 -0
  333. package/dist/hooks/useInbox.d.ts +36 -0
  334. package/dist/hooks/useInbox.d.ts.map +1 -0
  335. package/dist/hooks/useInbox.js +96 -0
  336. package/dist/hooks/useInbox.js.map +1 -0
  337. package/dist/hooks/useLifeOpsActivitySignals.d.ts +2 -0
  338. package/dist/hooks/useLifeOpsActivitySignals.d.ts.map +1 -0
  339. package/dist/hooks/useLifeOpsActivitySignals.js +358 -0
  340. package/dist/hooks/useLifeOpsActivitySignals.js.map +1 -0
  341. package/dist/hooks/useLifeOpsAppState.d.ts +9 -0
  342. package/dist/hooks/useLifeOpsAppState.d.ts.map +1 -0
  343. package/dist/hooks/useLifeOpsAppState.js +79 -0
  344. package/dist/hooks/useLifeOpsAppState.js.map +1 -0
  345. package/dist/hooks/useLifeOpsCapabilitiesStatus.d.ts +8 -0
  346. package/dist/hooks/useLifeOpsCapabilitiesStatus.d.ts.map +1 -0
  347. package/dist/hooks/useLifeOpsCapabilitiesStatus.js +60 -0
  348. package/dist/hooks/useLifeOpsCapabilitiesStatus.js.map +1 -0
  349. package/dist/hooks/useLifeOpsXConnector.d.ts +11 -0
  350. package/dist/hooks/useLifeOpsXConnector.d.ts.map +1 -0
  351. package/dist/hooks/useLifeOpsXConnector.js +92 -0
  352. package/dist/hooks/useLifeOpsXConnector.js.map +1 -0
  353. package/dist/hooks/useSignalConnector.d.ts +14 -0
  354. package/dist/hooks/useSignalConnector.d.ts.map +1 -0
  355. package/dist/hooks/useSignalConnector.js +89 -0
  356. package/dist/hooks/useSignalConnector.js.map +1 -0
  357. package/dist/hooks/useTelegramConnector.d.ts +14 -0
  358. package/dist/hooks/useTelegramConnector.d.ts.map +1 -0
  359. package/dist/hooks/useTelegramConnector.js +97 -0
  360. package/dist/hooks/useTelegramConnector.js.map +1 -0
  361. package/dist/hooks/useWhatsAppConnector.d.ts +8 -0
  362. package/dist/hooks/useWhatsAppConnector.d.ts.map +1 -0
  363. package/dist/hooks/useWhatsAppConnector.js +62 -0
  364. package/dist/hooks/useWhatsAppConnector.js.map +1 -0
  365. package/dist/inbox/message-fetcher.d.ts +11 -0
  366. package/dist/inbox/message-fetcher.d.ts.map +1 -0
  367. package/dist/inbox/message-fetcher.js +13 -0
  368. package/dist/inbox/message-fetcher.js.map +1 -0
  369. package/dist/inbox/repository.d.ts +11 -0
  370. package/dist/inbox/repository.d.ts.map +1 -0
  371. package/dist/inbox/repository.js +5 -0
  372. package/dist/inbox/repository.js.map +1 -0
  373. package/dist/inbox/types.d.ts +10 -0
  374. package/dist/inbox/types.d.ts.map +1 -0
  375. package/dist/inbox/types.js +2 -0
  376. package/dist/inbox/types.js.map +1 -0
  377. package/dist/index.d.ts +36 -0
  378. package/dist/index.d.ts.map +1 -0
  379. package/dist/index.js +188 -0
  380. package/dist/index.js.map +1 -0
  381. package/dist/lifeops/access.d.ts +29 -0
  382. package/dist/lifeops/access.d.ts.map +1 -0
  383. package/dist/lifeops/access.js +56 -0
  384. package/dist/lifeops/access.js.map +1 -0
  385. package/dist/lifeops/app-state.d.ts +22 -0
  386. package/dist/lifeops/app-state.d.ts.map +1 -0
  387. package/dist/lifeops/app-state.js +67 -0
  388. package/dist/lifeops/app-state.js.map +1 -0
  389. package/dist/lifeops/apple-reminders.d.ts +67 -0
  390. package/dist/lifeops/apple-reminders.d.ts.map +1 -0
  391. package/dist/lifeops/apple-reminders.js +396 -0
  392. package/dist/lifeops/apple-reminders.js.map +1 -0
  393. package/dist/lifeops/approval-queue.d.ts +38 -0
  394. package/dist/lifeops/approval-queue.d.ts.map +1 -0
  395. package/dist/lifeops/approval-queue.js +575 -0
  396. package/dist/lifeops/approval-queue.js.map +1 -0
  397. package/dist/lifeops/approval-queue.types.d.ts +172 -0
  398. package/dist/lifeops/approval-queue.types.d.ts.map +1 -0
  399. package/dist/lifeops/approval-queue.types.js +27 -0
  400. package/dist/lifeops/approval-queue.types.js.map +1 -0
  401. package/dist/lifeops/autofill-whitelist.d.ts +20 -0
  402. package/dist/lifeops/autofill-whitelist.d.ts.map +1 -0
  403. package/dist/lifeops/autofill-whitelist.js +59 -0
  404. package/dist/lifeops/autofill-whitelist.js.map +1 -0
  405. package/dist/lifeops/background-planner-dispatch.d.ts +60 -0
  406. package/dist/lifeops/background-planner-dispatch.d.ts.map +1 -0
  407. package/dist/lifeops/background-planner-dispatch.js +113 -0
  408. package/dist/lifeops/background-planner-dispatch.js.map +1 -0
  409. package/dist/lifeops/background-planner.d.ts +140 -0
  410. package/dist/lifeops/background-planner.d.ts.map +1 -0
  411. package/dist/lifeops/background-planner.js +359 -0
  412. package/dist/lifeops/background-planner.js.map +1 -0
  413. package/dist/lifeops/bill-extraction.d.ts +46 -0
  414. package/dist/lifeops/bill-extraction.d.ts.map +1 -0
  415. package/dist/lifeops/bill-extraction.js +325 -0
  416. package/dist/lifeops/bill-extraction.js.map +1 -0
  417. package/dist/lifeops/browser-constants.d.ts +4 -0
  418. package/dist/lifeops/browser-constants.d.ts.map +1 -0
  419. package/dist/lifeops/browser-constants.js +27 -0
  420. package/dist/lifeops/browser-constants.js.map +1 -0
  421. package/dist/lifeops/browser-extension-store.d.ts +61 -0
  422. package/dist/lifeops/browser-extension-store.d.ts.map +1 -0
  423. package/dist/lifeops/browser-extension-store.js +176 -0
  424. package/dist/lifeops/browser-extension-store.js.map +1 -0
  425. package/dist/lifeops/browser-session-lifecycle.d.ts +57 -0
  426. package/dist/lifeops/browser-session-lifecycle.d.ts.map +1 -0
  427. package/dist/lifeops/browser-session-lifecycle.js +308 -0
  428. package/dist/lifeops/browser-session-lifecycle.js.map +1 -0
  429. package/dist/lifeops/bulk-review.d.ts +333 -0
  430. package/dist/lifeops/bulk-review.d.ts.map +1 -0
  431. package/dist/lifeops/bulk-review.js +1120 -0
  432. package/dist/lifeops/bulk-review.js.map +1 -0
  433. package/dist/lifeops/calendar-gate.d.ts +20 -0
  434. package/dist/lifeops/calendar-gate.d.ts.map +1 -0
  435. package/dist/lifeops/calendar-gate.js +30 -0
  436. package/dist/lifeops/calendar-gate.js.map +1 -0
  437. package/dist/lifeops/channels/contract.d.ts +47 -0
  438. package/dist/lifeops/channels/contract.d.ts.map +1 -0
  439. package/dist/lifeops/channels/contract.js +1 -0
  440. package/dist/lifeops/channels/contract.js.map +1 -0
  441. package/dist/lifeops/channels/default-pack.d.ts +26 -0
  442. package/dist/lifeops/channels/default-pack.d.ts.map +1 -0
  443. package/dist/lifeops/channels/default-pack.js +243 -0
  444. package/dist/lifeops/channels/default-pack.js.map +1 -0
  445. package/dist/lifeops/channels/index.d.ts +5 -0
  446. package/dist/lifeops/channels/index.d.ts.map +1 -0
  447. package/dist/lifeops/channels/index.js +23 -0
  448. package/dist/lifeops/channels/index.js.map +1 -0
  449. package/dist/lifeops/channels/priority-posture.d.ts +36 -0
  450. package/dist/lifeops/channels/priority-posture.d.ts.map +1 -0
  451. package/dist/lifeops/channels/priority-posture.js +27 -0
  452. package/dist/lifeops/channels/priority-posture.js.map +1 -0
  453. package/dist/lifeops/channels/registry.d.ts +7 -0
  454. package/dist/lifeops/channels/registry.d.ts.map +1 -0
  455. package/dist/lifeops/channels/registry.js +49 -0
  456. package/dist/lifeops/channels/registry.js.map +1 -0
  457. package/dist/lifeops/checkin/checkin-service.d.ts +66 -0
  458. package/dist/lifeops/checkin/checkin-service.d.ts.map +1 -0
  459. package/dist/lifeops/checkin/checkin-service.js +1084 -0
  460. package/dist/lifeops/checkin/checkin-service.js.map +1 -0
  461. package/dist/lifeops/checkin/schedule-resolver.d.ts +17 -0
  462. package/dist/lifeops/checkin/schedule-resolver.d.ts.map +1 -0
  463. package/dist/lifeops/checkin/schedule-resolver.js +26 -0
  464. package/dist/lifeops/checkin/schedule-resolver.js.map +1 -0
  465. package/dist/lifeops/checkin/types.d.ts +106 -0
  466. package/dist/lifeops/checkin/types.d.ts.map +1 -0
  467. package/dist/lifeops/checkin/types.js +1 -0
  468. package/dist/lifeops/checkin/types.js.map +1 -0
  469. package/dist/lifeops/connectors/_helpers.d.ts +51 -0
  470. package/dist/lifeops/connectors/_helpers.d.ts.map +1 -0
  471. package/dist/lifeops/connectors/_helpers.js +104 -0
  472. package/dist/lifeops/connectors/_helpers.js.map +1 -0
  473. package/dist/lifeops/connectors/calendly.d.ts +11 -0
  474. package/dist/lifeops/connectors/calendly.d.ts.map +1 -0
  475. package/dist/lifeops/connectors/calendly.js +61 -0
  476. package/dist/lifeops/connectors/calendly.js.map +1 -0
  477. package/dist/lifeops/connectors/contract.d.ts +88 -0
  478. package/dist/lifeops/connectors/contract.d.ts.map +1 -0
  479. package/dist/lifeops/connectors/contract.js +1 -0
  480. package/dist/lifeops/connectors/contract.js.map +1 -0
  481. package/dist/lifeops/connectors/default-pack.d.ts +35 -0
  482. package/dist/lifeops/connectors/default-pack.d.ts.map +1 -0
  483. package/dist/lifeops/connectors/default-pack.js +37 -0
  484. package/dist/lifeops/connectors/default-pack.js.map +1 -0
  485. package/dist/lifeops/connectors/discord.d.ts +8 -0
  486. package/dist/lifeops/connectors/discord.d.ts.map +1 -0
  487. package/dist/lifeops/connectors/discord.js +53 -0
  488. package/dist/lifeops/connectors/discord.js.map +1 -0
  489. package/dist/lifeops/connectors/dispatch-policy.d.ts +75 -0
  490. package/dist/lifeops/connectors/dispatch-policy.d.ts.map +1 -0
  491. package/dist/lifeops/connectors/dispatch-policy.js +35 -0
  492. package/dist/lifeops/connectors/dispatch-policy.js.map +1 -0
  493. package/dist/lifeops/connectors/duffel.d.ts +11 -0
  494. package/dist/lifeops/connectors/duffel.d.ts.map +1 -0
  495. package/dist/lifeops/connectors/duffel.js +74 -0
  496. package/dist/lifeops/connectors/duffel.js.map +1 -0
  497. package/dist/lifeops/connectors/google.d.ts +27 -0
  498. package/dist/lifeops/connectors/google.d.ts.map +1 -0
  499. package/dist/lifeops/connectors/google.js +80 -0
  500. package/dist/lifeops/connectors/google.js.map +1 -0
  501. package/dist/lifeops/connectors/imessage.d.ts +11 -0
  502. package/dist/lifeops/connectors/imessage.d.ts.map +1 -0
  503. package/dist/lifeops/connectors/imessage.js +55 -0
  504. package/dist/lifeops/connectors/imessage.js.map +1 -0
  505. package/dist/lifeops/connectors/index.d.ts +5 -0
  506. package/dist/lifeops/connectors/index.d.ts.map +1 -0
  507. package/dist/lifeops/connectors/index.js +23 -0
  508. package/dist/lifeops/connectors/index.js.map +1 -0
  509. package/dist/lifeops/connectors/mockoon-redirect.d.ts +54 -0
  510. package/dist/lifeops/connectors/mockoon-redirect.d.ts.map +1 -0
  511. package/dist/lifeops/connectors/mockoon-redirect.js +71 -0
  512. package/dist/lifeops/connectors/mockoon-redirect.js.map +1 -0
  513. package/dist/lifeops/connectors/registry.d.ts +7 -0
  514. package/dist/lifeops/connectors/registry.d.ts.map +1 -0
  515. package/dist/lifeops/connectors/registry.js +55 -0
  516. package/dist/lifeops/connectors/registry.js.map +1 -0
  517. package/dist/lifeops/connectors/signal.d.ts +8 -0
  518. package/dist/lifeops/connectors/signal.d.ts.map +1 -0
  519. package/dist/lifeops/connectors/signal.js +60 -0
  520. package/dist/lifeops/connectors/signal.js.map +1 -0
  521. package/dist/lifeops/connectors/telegram.d.ts +12 -0
  522. package/dist/lifeops/connectors/telegram.d.ts.map +1 -0
  523. package/dist/lifeops/connectors/telegram.js +65 -0
  524. package/dist/lifeops/connectors/telegram.js.map +1 -0
  525. package/dist/lifeops/connectors/twilio.d.ts +15 -0
  526. package/dist/lifeops/connectors/twilio.d.ts.map +1 -0
  527. package/dist/lifeops/connectors/twilio.js +126 -0
  528. package/dist/lifeops/connectors/twilio.js.map +1 -0
  529. package/dist/lifeops/connectors/whatsapp.d.ts +10 -0
  530. package/dist/lifeops/connectors/whatsapp.d.ts.map +1 -0
  531. package/dist/lifeops/connectors/whatsapp.js +56 -0
  532. package/dist/lifeops/connectors/whatsapp.js.map +1 -0
  533. package/dist/lifeops/connectors/x.d.ts +8 -0
  534. package/dist/lifeops/connectors/x.d.ts.map +1 -0
  535. package/dist/lifeops/connectors/x.js +62 -0
  536. package/dist/lifeops/connectors/x.js.map +1 -0
  537. package/dist/lifeops/contact-route-policy.d.ts +27 -0
  538. package/dist/lifeops/contact-route-policy.d.ts.map +1 -0
  539. package/dist/lifeops/contact-route-policy.js +153 -0
  540. package/dist/lifeops/contact-route-policy.js.map +1 -0
  541. package/dist/lifeops/continuity-probe.d.ts +49 -0
  542. package/dist/lifeops/continuity-probe.d.ts.map +1 -0
  543. package/dist/lifeops/continuity-probe.js +161 -0
  544. package/dist/lifeops/continuity-probe.js.map +1 -0
  545. package/dist/lifeops/cross-channel-search.d.ts +108 -0
  546. package/dist/lifeops/cross-channel-search.d.ts.map +1 -0
  547. package/dist/lifeops/cross-channel-search.js +888 -0
  548. package/dist/lifeops/cross-channel-search.js.map +1 -0
  549. package/dist/lifeops/defaults.d.ts +30 -0
  550. package/dist/lifeops/defaults.d.ts.map +1 -0
  551. package/dist/lifeops/defaults.js +206 -0
  552. package/dist/lifeops/defaults.js.map +1 -0
  553. package/dist/lifeops/device-bus-service.d.ts +16 -0
  554. package/dist/lifeops/device-bus-service.d.ts.map +1 -0
  555. package/dist/lifeops/device-bus-service.js +20 -0
  556. package/dist/lifeops/device-bus-service.js.map +1 -0
  557. package/dist/lifeops/device-identity.d.ts +31 -0
  558. package/dist/lifeops/device-identity.d.ts.map +1 -0
  559. package/dist/lifeops/device-identity.js +94 -0
  560. package/dist/lifeops/device-identity.js.map +1 -0
  561. package/dist/lifeops/document-review.d.ts +264 -0
  562. package/dist/lifeops/document-review.d.ts.map +1 -0
  563. package/dist/lifeops/document-review.js +925 -0
  564. package/dist/lifeops/document-review.js.map +1 -0
  565. package/dist/lifeops/email-classifier.d.ts +9 -0
  566. package/dist/lifeops/email-classifier.d.ts.map +1 -0
  567. package/dist/lifeops/email-classifier.js +15 -0
  568. package/dist/lifeops/email-classifier.js.map +1 -0
  569. package/dist/lifeops/email-curation.d.ts +13 -0
  570. package/dist/lifeops/email-curation.d.ts.map +1 -0
  571. package/dist/lifeops/email-curation.js +2 -0
  572. package/dist/lifeops/email-curation.js.map +1 -0
  573. package/dist/lifeops/email-unsubscribe-types.d.ts +7 -0
  574. package/dist/lifeops/email-unsubscribe-types.d.ts.map +1 -0
  575. package/dist/lifeops/email-unsubscribe-types.js +1 -0
  576. package/dist/lifeops/email-unsubscribe-types.js.map +1 -0
  577. package/dist/lifeops/enforcement-windows.d.ts +34 -0
  578. package/dist/lifeops/enforcement-windows.d.ts.map +1 -0
  579. package/dist/lifeops/enforcement-windows.js +80 -0
  580. package/dist/lifeops/enforcement-windows.js.map +1 -0
  581. package/dist/lifeops/engine.d.ts +8 -0
  582. package/dist/lifeops/engine.d.ts.map +1 -0
  583. package/dist/lifeops/engine.js +540 -0
  584. package/dist/lifeops/engine.js.map +1 -0
  585. package/dist/lifeops/entities/index.d.ts +4 -0
  586. package/dist/lifeops/entities/index.d.ts.map +1 -0
  587. package/dist/lifeops/entities/index.js +29 -0
  588. package/dist/lifeops/entities/index.js.map +1 -0
  589. package/dist/lifeops/entities/merge.d.ts +9 -0
  590. package/dist/lifeops/entities/merge.d.ts.map +1 -0
  591. package/dist/lifeops/entities/merge.js +17 -0
  592. package/dist/lifeops/entities/merge.js.map +1 -0
  593. package/dist/lifeops/entities/store.d.ts +13 -0
  594. package/dist/lifeops/entities/store.d.ts.map +1 -0
  595. package/dist/lifeops/entities/store.js +7 -0
  596. package/dist/lifeops/entities/store.js.map +1 -0
  597. package/dist/lifeops/entities/types.d.ts +9 -0
  598. package/dist/lifeops/entities/types.d.ts.map +1 -0
  599. package/dist/lifeops/entities/types.js +13 -0
  600. package/dist/lifeops/entities/types.js.map +1 -0
  601. package/dist/lifeops/entities/voice-attribution.d.ts +70 -0
  602. package/dist/lifeops/entities/voice-attribution.d.ts.map +1 -0
  603. package/dist/lifeops/entities/voice-attribution.js +121 -0
  604. package/dist/lifeops/entities/voice-attribution.js.map +1 -0
  605. package/dist/lifeops/entities/voice-observer-bridge.d.ts +32 -0
  606. package/dist/lifeops/entities/voice-observer-bridge.d.ts.map +1 -0
  607. package/dist/lifeops/entities/voice-observer-bridge.js +68 -0
  608. package/dist/lifeops/entities/voice-observer-bridge.js.map +1 -0
  609. package/dist/lifeops/entities/voice-observer.d.ts +72 -0
  610. package/dist/lifeops/entities/voice-observer.d.ts.map +1 -0
  611. package/dist/lifeops/entities/voice-observer.js +97 -0
  612. package/dist/lifeops/entities/voice-observer.js.map +1 -0
  613. package/dist/lifeops/escalation-ladders.d.ts +28 -0
  614. package/dist/lifeops/escalation-ladders.d.ts.map +1 -0
  615. package/dist/lifeops/escalation-ladders.js +17 -0
  616. package/dist/lifeops/escalation-ladders.js.map +1 -0
  617. package/dist/lifeops/fda-probe.d.ts +23 -0
  618. package/dist/lifeops/fda-probe.d.ts.map +1 -0
  619. package/dist/lifeops/fda-probe.js +59 -0
  620. package/dist/lifeops/fda-probe.js.map +1 -0
  621. package/dist/lifeops/feature-flags.d.ts +24 -0
  622. package/dist/lifeops/feature-flags.d.ts.map +1 -0
  623. package/dist/lifeops/feature-flags.js +261 -0
  624. package/dist/lifeops/feature-flags.js.map +1 -0
  625. package/dist/lifeops/feature-flags.types.d.ts +156 -0
  626. package/dist/lifeops/feature-flags.types.d.ts.map +1 -0
  627. package/dist/lifeops/feature-flags.types.js +129 -0
  628. package/dist/lifeops/feature-flags.types.js.map +1 -0
  629. package/dist/lifeops/first-run/defaults.d.ts +57 -0
  630. package/dist/lifeops/first-run/defaults.d.ts.map +1 -0
  631. package/dist/lifeops/first-run/defaults.js +159 -0
  632. package/dist/lifeops/first-run/defaults.js.map +1 -0
  633. package/dist/lifeops/first-run/questions.d.ts +74 -0
  634. package/dist/lifeops/first-run/questions.d.ts.map +1 -0
  635. package/dist/lifeops/first-run/questions.js +184 -0
  636. package/dist/lifeops/first-run/questions.js.map +1 -0
  637. package/dist/lifeops/first-run/replay.d.ts +41 -0
  638. package/dist/lifeops/first-run/replay.d.ts.map +1 -0
  639. package/dist/lifeops/first-run/replay.js +34 -0
  640. package/dist/lifeops/first-run/replay.js.map +1 -0
  641. package/dist/lifeops/first-run/service.d.ts +147 -0
  642. package/dist/lifeops/first-run/service.d.ts.map +1 -0
  643. package/dist/lifeops/first-run/service.js +455 -0
  644. package/dist/lifeops/first-run/service.js.map +1 -0
  645. package/dist/lifeops/first-run/state.d.ts +36 -0
  646. package/dist/lifeops/first-run/state.d.ts.map +1 -0
  647. package/dist/lifeops/first-run/state.js +128 -0
  648. package/dist/lifeops/first-run/state.js.map +1 -0
  649. package/dist/lifeops/global-pause/store.d.ts +22 -0
  650. package/dist/lifeops/global-pause/store.d.ts.map +1 -0
  651. package/dist/lifeops/global-pause/store.js +18 -0
  652. package/dist/lifeops/global-pause/store.js.map +1 -0
  653. package/dist/lifeops/goal-grounding.d.ts +9 -0
  654. package/dist/lifeops/goal-grounding.d.ts.map +1 -0
  655. package/dist/lifeops/goal-grounding.js +19 -0
  656. package/dist/lifeops/goal-grounding.js.map +1 -0
  657. package/dist/lifeops/goal-semantic-evaluator.d.ts +8 -0
  658. package/dist/lifeops/goal-semantic-evaluator.d.ts.map +1 -0
  659. package/dist/lifeops/goal-semantic-evaluator.js +7 -0
  660. package/dist/lifeops/goal-semantic-evaluator.js.map +1 -0
  661. package/dist/lifeops/google/format-helpers.d.ts +63 -0
  662. package/dist/lifeops/google/format-helpers.d.ts.map +1 -0
  663. package/dist/lifeops/google/format-helpers.js +597 -0
  664. package/dist/lifeops/google/format-helpers.js.map +1 -0
  665. package/dist/lifeops/google-plugin-delegates.d.ts +59 -0
  666. package/dist/lifeops/google-plugin-delegates.d.ts.map +1 -0
  667. package/dist/lifeops/google-plugin-delegates.js +408 -0
  668. package/dist/lifeops/google-plugin-delegates.js.map +1 -0
  669. package/dist/lifeops/google-scopes.d.ts +15 -0
  670. package/dist/lifeops/google-scopes.d.ts.map +1 -0
  671. package/dist/lifeops/google-scopes.js +118 -0
  672. package/dist/lifeops/google-scopes.js.map +1 -0
  673. package/dist/lifeops/handoff/store.d.ts +23 -0
  674. package/dist/lifeops/handoff/store.d.ts.map +1 -0
  675. package/dist/lifeops/handoff/store.js +20 -0
  676. package/dist/lifeops/handoff/store.js.map +1 -0
  677. package/dist/lifeops/i18n/localized-examples-provider.d.ts +16 -0
  678. package/dist/lifeops/i18n/localized-examples-provider.d.ts.map +1 -0
  679. package/dist/lifeops/i18n/localized-examples-provider.js +33 -0
  680. package/dist/lifeops/i18n/localized-examples-provider.js.map +1 -0
  681. package/dist/lifeops/i18n/localized-examples-resolver.d.ts +32 -0
  682. package/dist/lifeops/i18n/localized-examples-resolver.d.ts.map +1 -0
  683. package/dist/lifeops/i18n/localized-examples-resolver.js +28 -0
  684. package/dist/lifeops/i18n/localized-examples-resolver.js.map +1 -0
  685. package/dist/lifeops/i18n/prompt-registry.d.ts +64 -0
  686. package/dist/lifeops/i18n/prompt-registry.d.ts.map +1 -0
  687. package/dist/lifeops/i18n/prompt-registry.js +283 -0
  688. package/dist/lifeops/i18n/prompt-registry.js.map +1 -0
  689. package/dist/lifeops/imessage-outbound-probe.d.ts +7 -0
  690. package/dist/lifeops/imessage-outbound-probe.d.ts.map +1 -0
  691. package/dist/lifeops/imessage-outbound-probe.js +81 -0
  692. package/dist/lifeops/imessage-outbound-probe.js.map +1 -0
  693. package/dist/lifeops/index.d.ts +24 -0
  694. package/dist/lifeops/index.d.ts.map +1 -0
  695. package/dist/lifeops/index.js +24 -0
  696. package/dist/lifeops/index.js.map +1 -0
  697. package/dist/lifeops/intent-sync.d.ts +64 -0
  698. package/dist/lifeops/intent-sync.d.ts.map +1 -0
  699. package/dist/lifeops/intent-sync.js +321 -0
  700. package/dist/lifeops/intent-sync.js.map +1 -0
  701. package/dist/lifeops/messaging/index.d.ts +2 -0
  702. package/dist/lifeops/messaging/index.d.ts.map +1 -0
  703. package/dist/lifeops/messaging/index.js +5 -0
  704. package/dist/lifeops/messaging/index.js.map +1 -0
  705. package/dist/lifeops/messaging/owner-send-policy.d.ts +3 -0
  706. package/dist/lifeops/messaging/owner-send-policy.d.ts.map +1 -0
  707. package/dist/lifeops/messaging/owner-send-policy.js +83 -0
  708. package/dist/lifeops/messaging/owner-send-policy.js.map +1 -0
  709. package/dist/lifeops/notifications-push.d.ts +37 -0
  710. package/dist/lifeops/notifications-push.d.ts.map +1 -0
  711. package/dist/lifeops/notifications-push.js +95 -0
  712. package/dist/lifeops/notifications-push.js.map +1 -0
  713. package/dist/lifeops/optimized-prompt-instructions.d.ts +5 -0
  714. package/dist/lifeops/optimized-prompt-instructions.d.ts.map +1 -0
  715. package/dist/lifeops/optimized-prompt-instructions.js +48 -0
  716. package/dist/lifeops/optimized-prompt-instructions.js.map +1 -0
  717. package/dist/lifeops/owner/fact-store.d.ts +143 -0
  718. package/dist/lifeops/owner/fact-store.d.ts.map +1 -0
  719. package/dist/lifeops/owner/fact-store.js +446 -0
  720. package/dist/lifeops/owner/fact-store.js.map +1 -0
  721. package/dist/lifeops/owner/profile-extraction-evaluator.d.ts +3 -0
  722. package/dist/lifeops/owner/profile-extraction-evaluator.d.ts.map +1 -0
  723. package/dist/lifeops/owner/profile-extraction-evaluator.js +241 -0
  724. package/dist/lifeops/owner/profile-extraction-evaluator.js.map +1 -0
  725. package/dist/lifeops/owner-profile.d.ts +61 -0
  726. package/dist/lifeops/owner-profile.d.ts.map +1 -0
  727. package/dist/lifeops/owner-profile.js +407 -0
  728. package/dist/lifeops/owner-profile.js.map +1 -0
  729. package/dist/lifeops/pending-prompts/store.d.ts +23 -0
  730. package/dist/lifeops/pending-prompts/store.d.ts.map +1 -0
  731. package/dist/lifeops/pending-prompts/store.js +16 -0
  732. package/dist/lifeops/pending-prompts/store.js.map +1 -0
  733. package/dist/lifeops/policy-memory.d.ts +190 -0
  734. package/dist/lifeops/policy-memory.d.ts.map +1 -0
  735. package/dist/lifeops/policy-memory.js +1026 -0
  736. package/dist/lifeops/policy-memory.js.map +1 -0
  737. package/dist/lifeops/priority-scoring.d.ts +51 -0
  738. package/dist/lifeops/priority-scoring.d.ts.map +1 -0
  739. package/dist/lifeops/priority-scoring.js +305 -0
  740. package/dist/lifeops/priority-scoring.js.map +1 -0
  741. package/dist/lifeops/privacy-egress.d.ts +92 -0
  742. package/dist/lifeops/privacy-egress.d.ts.map +1 -0
  743. package/dist/lifeops/privacy-egress.js +230 -0
  744. package/dist/lifeops/privacy-egress.js.map +1 -0
  745. package/dist/lifeops/privacy.d.ts +49 -0
  746. package/dist/lifeops/privacy.d.ts.map +1 -0
  747. package/dist/lifeops/privacy.js +66 -0
  748. package/dist/lifeops/privacy.js.map +1 -0
  749. package/dist/lifeops/redact-sensitive-data.d.ts +32 -0
  750. package/dist/lifeops/redact-sensitive-data.d.ts.map +1 -0
  751. package/dist/lifeops/redact-sensitive-data.js +98 -0
  752. package/dist/lifeops/redact-sensitive-data.js.map +1 -0
  753. package/dist/lifeops/registries/app-blocker-contribution.d.ts +13 -0
  754. package/dist/lifeops/registries/app-blocker-contribution.d.ts.map +1 -0
  755. package/dist/lifeops/registries/app-blocker-contribution.js +73 -0
  756. package/dist/lifeops/registries/app-blocker-contribution.js.map +1 -0
  757. package/dist/lifeops/registries/blocker-registry.d.ts +76 -0
  758. package/dist/lifeops/registries/blocker-registry.d.ts.map +1 -0
  759. package/dist/lifeops/registries/blocker-registry.js +40 -0
  760. package/dist/lifeops/registries/blocker-registry.js.map +1 -0
  761. package/dist/lifeops/registries/event-kind-registry.d.ts +57 -0
  762. package/dist/lifeops/registries/event-kind-registry.d.ts.map +1 -0
  763. package/dist/lifeops/registries/event-kind-registry.js +82 -0
  764. package/dist/lifeops/registries/event-kind-registry.js.map +1 -0
  765. package/dist/lifeops/registries/family-registry.d.ts +72 -0
  766. package/dist/lifeops/registries/family-registry.d.ts.map +1 -0
  767. package/dist/lifeops/registries/family-registry.js +98 -0
  768. package/dist/lifeops/registries/family-registry.js.map +1 -0
  769. package/dist/lifeops/registries/feature-flag-default-pack.d.ts +32 -0
  770. package/dist/lifeops/registries/feature-flag-default-pack.d.ts.map +1 -0
  771. package/dist/lifeops/registries/feature-flag-default-pack.js +36 -0
  772. package/dist/lifeops/registries/feature-flag-default-pack.js.map +1 -0
  773. package/dist/lifeops/registries/feature-flag-registry.d.ts +76 -0
  774. package/dist/lifeops/registries/feature-flag-registry.d.ts.map +1 -0
  775. package/dist/lifeops/registries/feature-flag-registry.js +68 -0
  776. package/dist/lifeops/registries/feature-flag-registry.js.map +1 -0
  777. package/dist/lifeops/registries/index.d.ts +24 -0
  778. package/dist/lifeops/registries/index.d.ts.map +1 -0
  779. package/dist/lifeops/registries/index.js +115 -0
  780. package/dist/lifeops/registries/index.js.map +1 -0
  781. package/dist/lifeops/registries/website-blocker-contribution.d.ts +21 -0
  782. package/dist/lifeops/registries/website-blocker-contribution.d.ts.map +1 -0
  783. package/dist/lifeops/registries/website-blocker-contribution.js +76 -0
  784. package/dist/lifeops/registries/website-blocker-contribution.js.map +1 -0
  785. package/dist/lifeops/registries/workflow-step-default-pack.d.ts +30 -0
  786. package/dist/lifeops/registries/workflow-step-default-pack.d.ts.map +1 -0
  787. package/dist/lifeops/registries/workflow-step-default-pack.js +315 -0
  788. package/dist/lifeops/registries/workflow-step-default-pack.js.map +1 -0
  789. package/dist/lifeops/registries/workflow-step-registry.d.ts +101 -0
  790. package/dist/lifeops/registries/workflow-step-registry.d.ts.map +1 -0
  791. package/dist/lifeops/registries/workflow-step-registry.js +56 -0
  792. package/dist/lifeops/registries/workflow-step-registry.js.map +1 -0
  793. package/dist/lifeops/relationships/extraction.d.ts +77 -0
  794. package/dist/lifeops/relationships/extraction.d.ts.map +1 -0
  795. package/dist/lifeops/relationships/extraction.js +146 -0
  796. package/dist/lifeops/relationships/extraction.js.map +1 -0
  797. package/dist/lifeops/relationships/index.d.ts +4 -0
  798. package/dist/lifeops/relationships/index.d.ts.map +1 -0
  799. package/dist/lifeops/relationships/index.js +19 -0
  800. package/dist/lifeops/relationships/index.js.map +1 -0
  801. package/dist/lifeops/relationships/mapping.d.ts +34 -0
  802. package/dist/lifeops/relationships/mapping.d.ts.map +1 -0
  803. package/dist/lifeops/relationships/mapping.js +87 -0
  804. package/dist/lifeops/relationships/mapping.js.map +1 -0
  805. package/dist/lifeops/relationships/store.d.ts +12 -0
  806. package/dist/lifeops/relationships/store.d.ts.map +1 -0
  807. package/dist/lifeops/relationships/store.js +5 -0
  808. package/dist/lifeops/relationships/store.js.map +1 -0
  809. package/dist/lifeops/relationships/types.d.ts +9 -0
  810. package/dist/lifeops/relationships/types.d.ts.map +1 -0
  811. package/dist/lifeops/relationships/types.js +11 -0
  812. package/dist/lifeops/relationships/types.js.map +1 -0
  813. package/dist/lifeops/relative-schedule-resolver.d.ts +13 -0
  814. package/dist/lifeops/relative-schedule-resolver.d.ts.map +1 -0
  815. package/dist/lifeops/relative-schedule-resolver.js +107 -0
  816. package/dist/lifeops/relative-schedule-resolver.js.map +1 -0
  817. package/dist/lifeops/relative-time.d.ts +15 -0
  818. package/dist/lifeops/relative-time.d.ts.map +1 -0
  819. package/dist/lifeops/relative-time.js +191 -0
  820. package/dist/lifeops/relative-time.js.map +1 -0
  821. package/dist/lifeops/repository.d.ts +638 -0
  822. package/dist/lifeops/repository.d.ts.map +1 -0
  823. package/dist/lifeops/repository.js +6289 -0
  824. package/dist/lifeops/repository.js.map +1 -0
  825. package/dist/lifeops/runtime-cache.d.ts +4 -0
  826. package/dist/lifeops/runtime-cache.d.ts.map +1 -0
  827. package/dist/lifeops/runtime-cache.js +7 -0
  828. package/dist/lifeops/runtime-cache.js.map +1 -0
  829. package/dist/lifeops/runtime-service-delegates.d.ts +236 -0
  830. package/dist/lifeops/runtime-service-delegates.d.ts.map +1 -0
  831. package/dist/lifeops/runtime-service-delegates.js +839 -0
  832. package/dist/lifeops/runtime-service-delegates.js.map +1 -0
  833. package/dist/lifeops/runtime.d.ts +13 -0
  834. package/dist/lifeops/runtime.d.ts.map +1 -0
  835. package/dist/lifeops/runtime.js +104 -0
  836. package/dist/lifeops/runtime.js.map +1 -0
  837. package/dist/lifeops/schedule-insight.d.ts +133 -0
  838. package/dist/lifeops/schedule-insight.d.ts.map +1 -0
  839. package/dist/lifeops/schedule-insight.js +726 -0
  840. package/dist/lifeops/schedule-insight.js.map +1 -0
  841. package/dist/lifeops/schedule-state.d.ts +39 -0
  842. package/dist/lifeops/schedule-state.d.ts.map +1 -0
  843. package/dist/lifeops/schedule-state.js +671 -0
  844. package/dist/lifeops/schedule-state.js.map +1 -0
  845. package/dist/lifeops/schedule-sync-config.d.ts +3 -0
  846. package/dist/lifeops/schedule-sync-config.d.ts.map +1 -0
  847. package/dist/lifeops/schedule-sync-config.js +23 -0
  848. package/dist/lifeops/schedule-sync-config.js.map +1 -0
  849. package/dist/lifeops/schedule-sync-contracts.d.ts +2 -0
  850. package/dist/lifeops/schedule-sync-contracts.d.ts.map +1 -0
  851. package/dist/lifeops/schedule-sync-contracts.js +2 -0
  852. package/dist/lifeops/schedule-sync-contracts.js.map +1 -0
  853. package/dist/lifeops/scheduled-task/index.d.ts +13 -0
  854. package/dist/lifeops/scheduled-task/index.d.ts.map +1 -0
  855. package/dist/lifeops/scheduled-task/index.js +14 -0
  856. package/dist/lifeops/scheduled-task/index.js.map +1 -0
  857. package/dist/lifeops/scheduled-task/runtime-wiring.d.ts +33 -0
  858. package/dist/lifeops/scheduled-task/runtime-wiring.d.ts.map +1 -0
  859. package/dist/lifeops/scheduled-task/runtime-wiring.js +334 -0
  860. package/dist/lifeops/scheduled-task/runtime-wiring.js.map +1 -0
  861. package/dist/lifeops/scheduled-task/scheduler.d.ts +28 -0
  862. package/dist/lifeops/scheduled-task/scheduler.d.ts.map +1 -0
  863. package/dist/lifeops/scheduled-task/scheduler.js +202 -0
  864. package/dist/lifeops/scheduled-task/scheduler.js.map +1 -0
  865. package/dist/lifeops/scheduled-task/service.d.ts +61 -0
  866. package/dist/lifeops/scheduled-task/service.d.ts.map +1 -0
  867. package/dist/lifeops/scheduled-task/service.js +64 -0
  868. package/dist/lifeops/scheduled-task/service.js.map +1 -0
  869. package/dist/lifeops/scheduler-task.d.ts +19 -0
  870. package/dist/lifeops/scheduler-task.d.ts.map +1 -0
  871. package/dist/lifeops/scheduler-task.js +201 -0
  872. package/dist/lifeops/scheduler-task.js.map +1 -0
  873. package/dist/lifeops/schema.d.ts +28068 -0
  874. package/dist/lifeops/schema.d.ts.map +1 -0
  875. package/dist/lifeops/schema.js +1689 -0
  876. package/dist/lifeops/schema.js.map +1 -0
  877. package/dist/lifeops/screen-context.d.ts +66 -0
  878. package/dist/lifeops/screen-context.d.ts.map +1 -0
  879. package/dist/lifeops/screen-context.js +347 -0
  880. package/dist/lifeops/screen-context.js.map +1 -0
  881. package/dist/lifeops/seed-routine-migration/migrator.d.ts +113 -0
  882. package/dist/lifeops/seed-routine-migration/migrator.d.ts.map +1 -0
  883. package/dist/lifeops/seed-routine-migration/migrator.js +142 -0
  884. package/dist/lifeops/seed-routine-migration/migrator.js.map +1 -0
  885. package/dist/lifeops/seed-routines.d.ts +24 -0
  886. package/dist/lifeops/seed-routines.d.ts.map +1 -0
  887. package/dist/lifeops/seed-routines.js +140 -0
  888. package/dist/lifeops/seed-routines.js.map +1 -0
  889. package/dist/lifeops/send-policy/contract.d.ts +81 -0
  890. package/dist/lifeops/send-policy/contract.d.ts.map +1 -0
  891. package/dist/lifeops/send-policy/contract.js +1 -0
  892. package/dist/lifeops/send-policy/contract.js.map +1 -0
  893. package/dist/lifeops/send-policy/index.d.ts +3 -0
  894. package/dist/lifeops/send-policy/index.d.ts.map +1 -0
  895. package/dist/lifeops/send-policy/index.js +13 -0
  896. package/dist/lifeops/send-policy/index.js.map +1 -0
  897. package/dist/lifeops/send-policy/registry.d.ts +7 -0
  898. package/dist/lifeops/send-policy/registry.d.ts.map +1 -0
  899. package/dist/lifeops/send-policy/registry.js +62 -0
  900. package/dist/lifeops/send-policy/registry.js.map +1 -0
  901. package/dist/lifeops/sensitive-request-delivery.d.ts +46 -0
  902. package/dist/lifeops/sensitive-request-delivery.d.ts.map +1 -0
  903. package/dist/lifeops/sensitive-request-delivery.js +103 -0
  904. package/dist/lifeops/sensitive-request-delivery.js.map +1 -0
  905. package/dist/lifeops/service-constants.d.ts +10 -0
  906. package/dist/lifeops/service-constants.d.ts.map +1 -0
  907. package/dist/lifeops/service-constants.js +129 -0
  908. package/dist/lifeops/service-constants.js.map +1 -0
  909. package/dist/lifeops/service-helpers-browser.d.ts +41 -0
  910. package/dist/lifeops/service-helpers-browser.d.ts.map +1 -0
  911. package/dist/lifeops/service-helpers-browser.js +290 -0
  912. package/dist/lifeops/service-helpers-browser.js.map +1 -0
  913. package/dist/lifeops/service-helpers-misc.d.ts +68 -0
  914. package/dist/lifeops/service-helpers-misc.d.ts.map +1 -0
  915. package/dist/lifeops/service-helpers-misc.js +531 -0
  916. package/dist/lifeops/service-helpers-misc.js.map +1 -0
  917. package/dist/lifeops/service-helpers-occurrence.d.ts +23 -0
  918. package/dist/lifeops/service-helpers-occurrence.d.ts.map +1 -0
  919. package/dist/lifeops/service-helpers-occurrence.js +257 -0
  920. package/dist/lifeops/service-helpers-occurrence.js.map +1 -0
  921. package/dist/lifeops/service-helpers-reminder.d.ts +260 -0
  922. package/dist/lifeops/service-helpers-reminder.d.ts.map +1 -0
  923. package/dist/lifeops/service-helpers-reminder.js +1186 -0
  924. package/dist/lifeops/service-helpers-reminder.js.map +1 -0
  925. package/dist/lifeops/service-mixin-browser.d.ts +31 -0
  926. package/dist/lifeops/service-mixin-browser.d.ts.map +1 -0
  927. package/dist/lifeops/service-mixin-browser.js +975 -0
  928. package/dist/lifeops/service-mixin-browser.js.map +1 -0
  929. package/dist/lifeops/service-mixin-calendar.d.ts +53 -0
  930. package/dist/lifeops/service-mixin-calendar.d.ts.map +1 -0
  931. package/dist/lifeops/service-mixin-calendar.js +68 -0
  932. package/dist/lifeops/service-mixin-calendar.js.map +1 -0
  933. package/dist/lifeops/service-mixin-core.d.ts +51 -0
  934. package/dist/lifeops/service-mixin-core.d.ts.map +1 -0
  935. package/dist/lifeops/service-mixin-core.js +500 -0
  936. package/dist/lifeops/service-mixin-core.js.map +1 -0
  937. package/dist/lifeops/service-mixin-definitions.d.ts +14 -0
  938. package/dist/lifeops/service-mixin-definitions.d.ts.map +1 -0
  939. package/dist/lifeops/service-mixin-definitions.js +470 -0
  940. package/dist/lifeops/service-mixin-definitions.js.map +1 -0
  941. package/dist/lifeops/service-mixin-discord.d.ts +49 -0
  942. package/dist/lifeops/service-mixin-discord.d.ts.map +1 -0
  943. package/dist/lifeops/service-mixin-discord.js +1253 -0
  944. package/dist/lifeops/service-mixin-discord.js.map +1 -0
  945. package/dist/lifeops/service-mixin-drive.d.ts +96 -0
  946. package/dist/lifeops/service-mixin-drive.d.ts.map +1 -0
  947. package/dist/lifeops/service-mixin-drive.js +213 -0
  948. package/dist/lifeops/service-mixin-drive.js.map +1 -0
  949. package/dist/lifeops/service-mixin-email-unsubscribe.d.ts +23 -0
  950. package/dist/lifeops/service-mixin-email-unsubscribe.d.ts.map +1 -0
  951. package/dist/lifeops/service-mixin-email-unsubscribe.js +27 -0
  952. package/dist/lifeops/service-mixin-email-unsubscribe.js.map +1 -0
  953. package/dist/lifeops/service-mixin-gmail.d.ts +43 -0
  954. package/dist/lifeops/service-mixin-gmail.d.ts.map +1 -0
  955. package/dist/lifeops/service-mixin-gmail.js +727 -0
  956. package/dist/lifeops/service-mixin-gmail.js.map +1 -0
  957. package/dist/lifeops/service-mixin-goals.d.ts +22 -0
  958. package/dist/lifeops/service-mixin-goals.d.ts.map +1 -0
  959. package/dist/lifeops/service-mixin-goals.js +884 -0
  960. package/dist/lifeops/service-mixin-goals.js.map +1 -0
  961. package/dist/lifeops/service-mixin-google.d.ts +13 -0
  962. package/dist/lifeops/service-mixin-google.d.ts.map +1 -0
  963. package/dist/lifeops/service-mixin-google.js +398 -0
  964. package/dist/lifeops/service-mixin-google.js.map +1 -0
  965. package/dist/lifeops/service-mixin-health.d.ts +27 -0
  966. package/dist/lifeops/service-mixin-health.d.ts.map +1 -0
  967. package/dist/lifeops/service-mixin-health.js +670 -0
  968. package/dist/lifeops/service-mixin-health.js.map +1 -0
  969. package/dist/lifeops/service-mixin-imessage.d.ts +106 -0
  970. package/dist/lifeops/service-mixin-imessage.d.ts.map +1 -0
  971. package/dist/lifeops/service-mixin-imessage.js +303 -0
  972. package/dist/lifeops/service-mixin-imessage.js.map +1 -0
  973. package/dist/lifeops/service-mixin-inbox.d.ts +55 -0
  974. package/dist/lifeops/service-mixin-inbox.d.ts.map +1 -0
  975. package/dist/lifeops/service-mixin-inbox.js +597 -0
  976. package/dist/lifeops/service-mixin-inbox.js.map +1 -0
  977. package/dist/lifeops/service-mixin-relationships.d.ts +65 -0
  978. package/dist/lifeops/service-mixin-relationships.d.ts.map +1 -0
  979. package/dist/lifeops/service-mixin-relationships.js +150 -0
  980. package/dist/lifeops/service-mixin-relationships.js.map +1 -0
  981. package/dist/lifeops/service-mixin-reminders.d.ts +62 -0
  982. package/dist/lifeops/service-mixin-reminders.d.ts.map +1 -0
  983. package/dist/lifeops/service-mixin-reminders.js +4003 -0
  984. package/dist/lifeops/service-mixin-reminders.js.map +1 -0
  985. package/dist/lifeops/service-mixin-scheduling.d.ts +53 -0
  986. package/dist/lifeops/service-mixin-scheduling.d.ts.map +1 -0
  987. package/dist/lifeops/service-mixin-scheduling.js +405 -0
  988. package/dist/lifeops/service-mixin-scheduling.js.map +1 -0
  989. package/dist/lifeops/service-mixin-screentime.d.ts +71 -0
  990. package/dist/lifeops/service-mixin-screentime.d.ts.map +1 -0
  991. package/dist/lifeops/service-mixin-screentime.js +530 -0
  992. package/dist/lifeops/service-mixin-screentime.js.map +1 -0
  993. package/dist/lifeops/service-mixin-signal.d.ts +74 -0
  994. package/dist/lifeops/service-mixin-signal.d.ts.map +1 -0
  995. package/dist/lifeops/service-mixin-signal.js +214 -0
  996. package/dist/lifeops/service-mixin-signal.js.map +1 -0
  997. package/dist/lifeops/service-mixin-sleep.d.ts +68 -0
  998. package/dist/lifeops/service-mixin-sleep.d.ts.map +1 -0
  999. package/dist/lifeops/service-mixin-sleep.js +43 -0
  1000. package/dist/lifeops/service-mixin-sleep.js.map +1 -0
  1001. package/dist/lifeops/service-mixin-status.d.ts +31 -0
  1002. package/dist/lifeops/service-mixin-status.d.ts.map +1 -0
  1003. package/dist/lifeops/service-mixin-status.js +373 -0
  1004. package/dist/lifeops/service-mixin-status.js.map +1 -0
  1005. package/dist/lifeops/service-mixin-subscriptions.d.ts +101 -0
  1006. package/dist/lifeops/service-mixin-subscriptions.d.ts.map +1 -0
  1007. package/dist/lifeops/service-mixin-subscriptions.js +50 -0
  1008. package/dist/lifeops/service-mixin-subscriptions.js.map +1 -0
  1009. package/dist/lifeops/service-mixin-telegram.d.ts +104 -0
  1010. package/dist/lifeops/service-mixin-telegram.d.ts.map +1 -0
  1011. package/dist/lifeops/service-mixin-telegram.js +280 -0
  1012. package/dist/lifeops/service-mixin-telegram.js.map +1 -0
  1013. package/dist/lifeops/service-mixin-travel.d.ts +66 -0
  1014. package/dist/lifeops/service-mixin-travel.d.ts.map +1 -0
  1015. package/dist/lifeops/service-mixin-travel.js +275 -0
  1016. package/dist/lifeops/service-mixin-travel.js.map +1 -0
  1017. package/dist/lifeops/service-mixin-whatsapp.d.ts +96 -0
  1018. package/dist/lifeops/service-mixin-whatsapp.d.ts.map +1 -0
  1019. package/dist/lifeops/service-mixin-whatsapp.js +186 -0
  1020. package/dist/lifeops/service-mixin-whatsapp.js.map +1 -0
  1021. package/dist/lifeops/service-mixin-workflows.d.ts +15 -0
  1022. package/dist/lifeops/service-mixin-workflows.d.ts.map +1 -0
  1023. package/dist/lifeops/service-mixin-workflows.js +710 -0
  1024. package/dist/lifeops/service-mixin-workflows.js.map +1 -0
  1025. package/dist/lifeops/service-mixin-x-read.d.ts +31 -0
  1026. package/dist/lifeops/service-mixin-x-read.d.ts.map +1 -0
  1027. package/dist/lifeops/service-mixin-x-read.js +267 -0
  1028. package/dist/lifeops/service-mixin-x-read.js.map +1 -0
  1029. package/dist/lifeops/service-mixin-x.d.ts +66 -0
  1030. package/dist/lifeops/service-mixin-x.d.ts.map +1 -0
  1031. package/dist/lifeops/service-mixin-x.js +501 -0
  1032. package/dist/lifeops/service-mixin-x.js.map +1 -0
  1033. package/dist/lifeops/service-normalize-connector.d.ts +19 -0
  1034. package/dist/lifeops/service-normalize-connector.d.ts.map +1 -0
  1035. package/dist/lifeops/service-normalize-connector.js +816 -0
  1036. package/dist/lifeops/service-normalize-connector.js.map +1 -0
  1037. package/dist/lifeops/service-normalize-gmail.d.ts +11 -0
  1038. package/dist/lifeops/service-normalize-gmail.d.ts.map +1 -0
  1039. package/dist/lifeops/service-normalize-gmail.js +85 -0
  1040. package/dist/lifeops/service-normalize-gmail.js.map +1 -0
  1041. package/dist/lifeops/service-normalize-task.d.ts +9 -0
  1042. package/dist/lifeops/service-normalize-task.d.ts.map +1 -0
  1043. package/dist/lifeops/service-normalize-task.js +567 -0
  1044. package/dist/lifeops/service-normalize-task.js.map +1 -0
  1045. package/dist/lifeops/service-normalize.d.ts +9 -0
  1046. package/dist/lifeops/service-normalize.d.ts.map +1 -0
  1047. package/dist/lifeops/service-normalize.js +53 -0
  1048. package/dist/lifeops/service-normalize.js.map +1 -0
  1049. package/dist/lifeops/service-types.d.ts +75 -0
  1050. package/dist/lifeops/service-types.d.ts.map +1 -0
  1051. package/dist/lifeops/service-types.js +5 -0
  1052. package/dist/lifeops/service-types.js.map +1 -0
  1053. package/dist/lifeops/service.d.ts +482 -0
  1054. package/dist/lifeops/service.d.ts.map +1 -0
  1055. package/dist/lifeops/service.js +62 -0
  1056. package/dist/lifeops/service.js.map +1 -0
  1057. package/dist/lifeops/signal-runtime-config.d.ts +13 -0
  1058. package/dist/lifeops/signal-runtime-config.d.ts.map +1 -0
  1059. package/dist/lifeops/signal-runtime-config.js +44 -0
  1060. package/dist/lifeops/signal-runtime-config.js.map +1 -0
  1061. package/dist/lifeops/signals/bus.d.ts +78 -0
  1062. package/dist/lifeops/signals/bus.d.ts.map +1 -0
  1063. package/dist/lifeops/signals/bus.js +117 -0
  1064. package/dist/lifeops/signals/bus.js.map +1 -0
  1065. package/dist/lifeops/sql.d.ts +65 -0
  1066. package/dist/lifeops/sql.d.ts.map +1 -0
  1067. package/dist/lifeops/sql.js +182 -0
  1068. package/dist/lifeops/sql.js.map +1 -0
  1069. package/dist/lifeops/stretch-decider.d.ts +73 -0
  1070. package/dist/lifeops/stretch-decider.d.ts.map +1 -0
  1071. package/dist/lifeops/stretch-decider.js +49 -0
  1072. package/dist/lifeops/stretch-decider.js.map +1 -0
  1073. package/dist/lifeops/telemetry-mapping.d.ts +14 -0
  1074. package/dist/lifeops/telemetry-mapping.d.ts.map +1 -0
  1075. package/dist/lifeops/telemetry-mapping.js +115 -0
  1076. package/dist/lifeops/telemetry-mapping.js.map +1 -0
  1077. package/dist/lifeops/telemetry-retention.d.ts +21 -0
  1078. package/dist/lifeops/telemetry-retention.d.ts.map +1 -0
  1079. package/dist/lifeops/telemetry-retention.js +13 -0
  1080. package/dist/lifeops/telemetry-retention.js.map +1 -0
  1081. package/dist/lifeops/time/timezone.d.ts +4 -0
  1082. package/dist/lifeops/time/timezone.d.ts.map +1 -0
  1083. package/dist/lifeops/time/timezone.js +154 -0
  1084. package/dist/lifeops/time/timezone.js.map +1 -0
  1085. package/dist/lifeops/time-util.d.ts +10 -0
  1086. package/dist/lifeops/time-util.d.ts.map +1 -0
  1087. package/dist/lifeops/time-util.js +14 -0
  1088. package/dist/lifeops/time-util.js.map +1 -0
  1089. package/dist/lifeops/time.d.ts +17 -0
  1090. package/dist/lifeops/time.d.ts.map +1 -0
  1091. package/dist/lifeops/time.js +152 -0
  1092. package/dist/lifeops/time.js.map +1 -0
  1093. package/dist/lifeops/travel-booking.types.d.ts +46 -0
  1094. package/dist/lifeops/travel-booking.types.d.ts.map +1 -0
  1095. package/dist/lifeops/travel-booking.types.js +1 -0
  1096. package/dist/lifeops/travel-booking.types.js.map +1 -0
  1097. package/dist/lifeops/triggers/schedule-once.d.ts +19 -0
  1098. package/dist/lifeops/triggers/schedule-once.d.ts.map +1 -0
  1099. package/dist/lifeops/triggers/schedule-once.js +99 -0
  1100. package/dist/lifeops/triggers/schedule-once.js.map +1 -0
  1101. package/dist/lifeops/validate/coding-task-request.d.ts +18 -0
  1102. package/dist/lifeops/validate/coding-task-request.d.ts.map +1 -0
  1103. package/dist/lifeops/validate/coding-task-request.js +16 -0
  1104. package/dist/lifeops/validate/coding-task-request.js.map +1 -0
  1105. package/dist/lifeops/voice/grounded-reply.d.ts +41 -0
  1106. package/dist/lifeops/voice/grounded-reply.d.ts.map +1 -0
  1107. package/dist/lifeops/voice/grounded-reply.js +24 -0
  1108. package/dist/lifeops/voice/grounded-reply.js.map +1 -0
  1109. package/dist/lifeops/voice-affect.d.ts +79 -0
  1110. package/dist/lifeops/voice-affect.d.ts.map +1 -0
  1111. package/dist/lifeops/voice-affect.js +253 -0
  1112. package/dist/lifeops/voice-affect.js.map +1 -0
  1113. package/dist/lifeops/wave1-types.d.ts +125 -0
  1114. package/dist/lifeops/wave1-types.d.ts.map +1 -0
  1115. package/dist/lifeops/wave1-types.js +1 -0
  1116. package/dist/lifeops/wave1-types.js.map +1 -0
  1117. package/dist/lifeops/work-threads/field-evaluator-thread-ops.d.ts +33 -0
  1118. package/dist/lifeops/work-threads/field-evaluator-thread-ops.d.ts.map +1 -0
  1119. package/dist/lifeops/work-threads/field-evaluator-thread-ops.js +226 -0
  1120. package/dist/lifeops/work-threads/field-evaluator-thread-ops.js.map +1 -0
  1121. package/dist/lifeops/work-threads/index.d.ts +3 -0
  1122. package/dist/lifeops/work-threads/index.d.ts.map +1 -0
  1123. package/dist/lifeops/work-threads/index.js +7 -0
  1124. package/dist/lifeops/work-threads/index.js.map +1 -0
  1125. package/dist/lifeops/work-threads/store.d.ts +91 -0
  1126. package/dist/lifeops/work-threads/store.d.ts.map +1 -0
  1127. package/dist/lifeops/work-threads/store.js +245 -0
  1128. package/dist/lifeops/work-threads/store.js.map +1 -0
  1129. package/dist/lifeops/work-threads/types.d.ts +58 -0
  1130. package/dist/lifeops/work-threads/types.d.ts.map +1 -0
  1131. package/dist/lifeops/work-threads/types.js +1 -0
  1132. package/dist/lifeops/work-threads/types.js.map +1 -0
  1133. package/dist/platform/host.d.ts +16 -0
  1134. package/dist/platform/host.d.ts.map +1 -0
  1135. package/dist/platform/host.js +22 -0
  1136. package/dist/platform/host.js.map +1 -0
  1137. package/dist/platform/index.d.ts +3 -0
  1138. package/dist/platform/index.d.ts.map +1 -0
  1139. package/dist/platform/index.js +3 -0
  1140. package/dist/platform/index.js.map +1 -0
  1141. package/dist/platform/lifeops-github.d.ts +15 -0
  1142. package/dist/platform/lifeops-github.d.ts.map +1 -0
  1143. package/dist/platform/lifeops-github.js +146 -0
  1144. package/dist/platform/lifeops-github.js.map +1 -0
  1145. package/dist/plugin.d.ts +106 -0
  1146. package/dist/plugin.d.ts.map +1 -0
  1147. package/dist/plugin.js +989 -0
  1148. package/dist/plugin.js.map +1 -0
  1149. package/dist/provider.d.ts +4 -0
  1150. package/dist/provider.d.ts.map +1 -0
  1151. package/dist/provider.js +108 -0
  1152. package/dist/provider.js.map +1 -0
  1153. package/dist/providers/activity-profile.d.ts +3 -0
  1154. package/dist/providers/activity-profile.d.ts.map +1 -0
  1155. package/dist/providers/activity-profile.js +140 -0
  1156. package/dist/providers/activity-profile.js.map +1 -0
  1157. package/dist/providers/cross-channel-context.d.ts +29 -0
  1158. package/dist/providers/cross-channel-context.d.ts.map +1 -0
  1159. package/dist/providers/cross-channel-context.js +206 -0
  1160. package/dist/providers/cross-channel-context.js.map +1 -0
  1161. package/dist/providers/first-run.d.ts +22 -0
  1162. package/dist/providers/first-run.d.ts.map +1 -0
  1163. package/dist/providers/first-run.js +93 -0
  1164. package/dist/providers/first-run.js.map +1 -0
  1165. package/dist/providers/health.d.ts +2 -0
  1166. package/dist/providers/health.d.ts.map +1 -0
  1167. package/dist/providers/health.js +14 -0
  1168. package/dist/providers/health.js.map +1 -0
  1169. package/dist/providers/inbox-triage.d.ts +3 -0
  1170. package/dist/providers/inbox-triage.d.ts.map +1 -0
  1171. package/dist/providers/inbox-triage.js +134 -0
  1172. package/dist/providers/inbox-triage.js.map +1 -0
  1173. package/dist/providers/lifeops.d.ts +3 -0
  1174. package/dist/providers/lifeops.d.ts.map +1 -0
  1175. package/dist/providers/lifeops.js +548 -0
  1176. package/dist/providers/lifeops.js.map +1 -0
  1177. package/dist/providers/pending-prompts.d.ts +38 -0
  1178. package/dist/providers/pending-prompts.d.ts.map +1 -0
  1179. package/dist/providers/pending-prompts.js +81 -0
  1180. package/dist/providers/pending-prompts.js.map +1 -0
  1181. package/dist/providers/recent-task-states.d.ts +52 -0
  1182. package/dist/providers/recent-task-states.d.ts.map +1 -0
  1183. package/dist/providers/recent-task-states.js +166 -0
  1184. package/dist/providers/recent-task-states.js.map +1 -0
  1185. package/dist/providers/room-policy.d.ts +16 -0
  1186. package/dist/providers/room-policy.d.ts.map +1 -0
  1187. package/dist/providers/room-policy.js +71 -0
  1188. package/dist/providers/room-policy.js.map +1 -0
  1189. package/dist/providers/work-threads.d.ts +3 -0
  1190. package/dist/providers/work-threads.d.ts.map +1 -0
  1191. package/dist/providers/work-threads.js +97 -0
  1192. package/dist/providers/work-threads.js.map +1 -0
  1193. package/dist/public.d.ts +3 -0
  1194. package/dist/public.d.ts.map +1 -0
  1195. package/dist/public.js +17 -0
  1196. package/dist/public.js.map +1 -0
  1197. package/dist/routes/cloud-features-routes.d.ts +9 -0
  1198. package/dist/routes/cloud-features-routes.d.ts.map +1 -0
  1199. package/dist/routes/cloud-features-routes.js +164 -0
  1200. package/dist/routes/cloud-features-routes.js.map +1 -0
  1201. package/dist/routes/entities.d.ts +14 -0
  1202. package/dist/routes/entities.d.ts.map +1 -0
  1203. package/dist/routes/entities.js +203 -0
  1204. package/dist/routes/entities.js.map +1 -0
  1205. package/dist/routes/lifeops-routes.d.ts +20 -0
  1206. package/dist/routes/lifeops-routes.d.ts.map +1 -0
  1207. package/dist/routes/lifeops-routes.js +2337 -0
  1208. package/dist/routes/lifeops-routes.js.map +1 -0
  1209. package/dist/routes/plugin.d.ts +9 -0
  1210. package/dist/routes/plugin.d.ts.map +1 -0
  1211. package/dist/routes/plugin.js +568 -0
  1212. package/dist/routes/plugin.js.map +1 -0
  1213. package/dist/routes/relationships.d.ts +13 -0
  1214. package/dist/routes/relationships.d.ts.map +1 -0
  1215. package/dist/routes/relationships.js +195 -0
  1216. package/dist/routes/relationships.js.map +1 -0
  1217. package/dist/routes/scheduled-tasks.d.ts +102 -0
  1218. package/dist/routes/scheduled-tasks.d.ts.map +1 -0
  1219. package/dist/routes/scheduled-tasks.js +322 -0
  1220. package/dist/routes/scheduled-tasks.js.map +1 -0
  1221. package/dist/routes/sleep-routes.d.ts +3 -0
  1222. package/dist/routes/sleep-routes.d.ts.map +1 -0
  1223. package/dist/routes/sleep-routes.js +33 -0
  1224. package/dist/routes/sleep-routes.js.map +1 -0
  1225. package/dist/routes/travel-provider-relay-routes.d.ts +2 -0
  1226. package/dist/routes/travel-provider-relay-routes.d.ts.map +1 -0
  1227. package/dist/routes/travel-provider-relay-routes.js +7 -0
  1228. package/dist/routes/travel-provider-relay-routes.js.map +1 -0
  1229. package/dist/routes/website-blocker-routes.d.ts +6 -0
  1230. package/dist/routes/website-blocker-routes.d.ts.map +1 -0
  1231. package/dist/routes/website-blocker-routes.js +218 -0
  1232. package/dist/routes/website-blocker-routes.js.map +1 -0
  1233. package/dist/security/action-confirmation.d.ts +12 -0
  1234. package/dist/security/action-confirmation.d.ts.map +1 -0
  1235. package/dist/security/action-confirmation.js +36 -0
  1236. package/dist/security/action-confirmation.js.map +1 -0
  1237. package/dist/service.d.ts +34 -0
  1238. package/dist/service.d.ts.map +1 -0
  1239. package/dist/service.js +111 -0
  1240. package/dist/service.js.map +1 -0
  1241. package/dist/travel-time/calendar-create.d.ts +17 -0
  1242. package/dist/travel-time/calendar-create.d.ts.map +1 -0
  1243. package/dist/travel-time/calendar-create.js +28 -0
  1244. package/dist/travel-time/calendar-create.js.map +1 -0
  1245. package/dist/travel-time/service.d.ts +114 -0
  1246. package/dist/travel-time/service.d.ts.map +1 -0
  1247. package/dist/travel-time/service.js +209 -0
  1248. package/dist/travel-time/service.js.map +1 -0
  1249. package/dist/types/app-blocker-settings-card.d.ts +2 -0
  1250. package/dist/types/app-blocker-settings-card.d.ts.map +1 -0
  1251. package/dist/types/app-blocker-settings-card.js +1 -0
  1252. package/dist/types/app-blocker-settings-card.js.map +1 -0
  1253. package/dist/types/briefing.d.ts +59 -0
  1254. package/dist/types/briefing.d.ts.map +1 -0
  1255. package/dist/types/briefing.js +1 -0
  1256. package/dist/types/briefing.js.map +1 -0
  1257. package/dist/types/document-request.d.ts +41 -0
  1258. package/dist/types/document-request.d.ts.map +1 -0
  1259. package/dist/types/document-request.js +1 -0
  1260. package/dist/types/document-request.js.map +1 -0
  1261. package/dist/types/index.d.ts +5 -0
  1262. package/dist/types/index.d.ts.map +1 -0
  1263. package/dist/types/index.js +1 -0
  1264. package/dist/types/index.js.map +1 -0
  1265. package/dist/types/website-blocker-settings-card.d.ts +2 -0
  1266. package/dist/types/website-blocker-settings-card.d.ts.map +1 -0
  1267. package/dist/types/website-blocker-settings-card.js +1 -0
  1268. package/dist/types/website-blocker-settings-card.js.map +1 -0
  1269. package/dist/ui.d.ts +13 -0
  1270. package/dist/ui.d.ts.map +1 -0
  1271. package/dist/ui.js +25 -0
  1272. package/dist/ui.js.map +1 -0
  1273. package/dist/utils/format-duration.d.ts +2 -0
  1274. package/dist/utils/format-duration.d.ts.map +1 -0
  1275. package/dist/utils/format-duration.js +13 -0
  1276. package/dist/utils/format-duration.js.map +1 -0
  1277. package/dist/utils/index.d.ts +3 -0
  1278. package/dist/utils/index.d.ts.map +1 -0
  1279. package/dist/utils/index.js +3 -0
  1280. package/dist/utils/index.js.map +1 -0
  1281. package/dist/utils/lifeops-url.d.ts +3 -0
  1282. package/dist/utils/lifeops-url.d.ts.map +1 -0
  1283. package/dist/utils/lifeops-url.js +28 -0
  1284. package/dist/utils/lifeops-url.js.map +1 -0
  1285. package/dist/website-blocker/chat-integration/block-activator.d.ts +32 -0
  1286. package/dist/website-blocker/chat-integration/block-activator.d.ts.map +1 -0
  1287. package/dist/website-blocker/chat-integration/block-activator.js +30 -0
  1288. package/dist/website-blocker/chat-integration/block-activator.js.map +1 -0
  1289. package/dist/website-blocker/chat-integration/block-rule-reconciler.d.ts +7 -0
  1290. package/dist/website-blocker/chat-integration/block-rule-reconciler.d.ts.map +1 -0
  1291. package/dist/website-blocker/chat-integration/block-rule-reconciler.js +115 -0
  1292. package/dist/website-blocker/chat-integration/block-rule-reconciler.js.map +1 -0
  1293. package/dist/website-blocker/chat-integration/block-rule-schema.d.ts +39 -0
  1294. package/dist/website-blocker/chat-integration/block-rule-schema.d.ts.map +1 -0
  1295. package/dist/website-blocker/chat-integration/block-rule-schema.js +133 -0
  1296. package/dist/website-blocker/chat-integration/block-rule-schema.js.map +1 -0
  1297. package/dist/website-blocker/chat-integration/block-rule-service.d.ts +21 -0
  1298. package/dist/website-blocker/chat-integration/block-rule-service.d.ts.map +1 -0
  1299. package/dist/website-blocker/chat-integration/block-rule-service.js +230 -0
  1300. package/dist/website-blocker/chat-integration/block-rule-service.js.map +1 -0
  1301. package/dist/website-blocker/chat-integration/harsh-mode-check.d.ts +13 -0
  1302. package/dist/website-blocker/chat-integration/harsh-mode-check.d.ts.map +1 -0
  1303. package/dist/website-blocker/chat-integration/harsh-mode-check.js +22 -0
  1304. package/dist/website-blocker/chat-integration/harsh-mode-check.js.map +1 -0
  1305. package/dist/website-blocker/chat-integration/index.d.ts +5 -0
  1306. package/dist/website-blocker/chat-integration/index.d.ts.map +1 -0
  1307. package/dist/website-blocker/chat-integration/index.js +26 -0
  1308. package/dist/website-blocker/chat-integration/index.js.map +1 -0
  1309. package/dist/website-blocker/proactive-block-bridge.d.ts +75 -0
  1310. package/dist/website-blocker/proactive-block-bridge.d.ts.map +1 -0
  1311. package/dist/website-blocker/proactive-block-bridge.js +154 -0
  1312. package/dist/website-blocker/proactive-block-bridge.js.map +1 -0
  1313. package/dist/website-blocker/public.d.ts +12 -0
  1314. package/dist/website-blocker/public.d.ts.map +1 -0
  1315. package/dist/website-blocker/public.js +51 -0
  1316. package/dist/website-blocker/public.js.map +1 -0
  1317. package/package.json +28 -28
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/actions/calendar.ts"],"sourcesContent":["/**\n * CALENDAR — umbrella action for the owner's calendar surface.\n *\n * Routes to the existing handlers for live calendar reads/writes, availability\n * checks, meeting-preference updates, and the bulk-reschedule preview.\n *\n * - `calendly_*` verbs are a Calendly contribution registered through\n * `ConnectorRegistry`. The standalone `calendlyAction` in\n * `./lib/calendly-handler.ts` is a top-level Action — Calendly is a\n * provider, not a CALENDAR subaction.\n * - Multi-turn scheduling negotiation is delegated through\n * PERSONAL_ASSISTANT action=scheduling (long-running stateful actor).\n *\n * What stays compound here is the irreducible calendar-provider surface plus\n * `bulk_reschedule` (a transactional preview-then-commit step).\n */\n\nimport type {\n Action,\n ActionExample,\n ActionResult,\n HandlerCallback,\n HandlerOptions,\n IAgentRuntime,\n Memory,\n State,\n} from \"@elizaos/core\";\nimport {\n recentConversationTexts,\n resolveActionArgs,\n type SubactionsMap,\n} from \"@elizaos/core\";\nimport {\n type CalendarActionDeps,\n CalendarService,\n CalendarServiceError,\n createCalendarActionRunner,\n} from \"@elizaos/plugin-calendar\";\nimport type { LifeOpsCalendarEvent } from \"@elizaos/shared\";\nimport { hasLifeOpsAccess, INTERNAL_URL } from \"../lifeops/access.js\";\nimport { resolveDefaultTimeZone } from \"../lifeops/defaults.js\";\nimport {\n formatCalendarEventDateTime,\n runLifeOpsJsonModel,\n runLifeOpsTextModel,\n} from \"../lifeops/google/format-helpers.js\";\nimport {\n buildUtcDateFromLocalParts,\n getZonedDateParts,\n} from \"../lifeops/time.js\";\nimport {\n computeCreateEventTravelBuffer,\n resolveCreateEventTravelIntent,\n} from \"../travel-time/calendar-create.js\";\nimport { TravelTimeUnavailableError } from \"../travel-time/service.js\";\nimport {\n runCheckAvailabilityHandler,\n runProposeMeetingTimesHandler,\n runUpdateMeetingPreferencesHandler,\n} from \"./lib/scheduling-handler.js\";\n\n/**\n * Resolve the canonical `CalendarService` for direct calendar feed reads. The\n * umbrella's `bulk_reschedule` preview and the travel-buffer dependency read\n * the live feed; they hit `CalendarService` (which owns the feed) rather than\n * routing through `LifeOpsService`.\n */\nfunction resolveCalendarService(runtime: IAgentRuntime): CalendarService {\n const service = runtime.getService<CalendarService>(\n CalendarService.serviceType,\n );\n if (!service) {\n throw new CalendarServiceError(\n 503,\n \"Calendar service is not available.\",\n \"CALENDAR_SERVICE_UNAVAILABLE\",\n );\n }\n return service;\n}\n\n/**\n * LifeOps-owned dependencies the moved calendar handler relies on. The handler\n * itself lives in `@elizaos/plugin-calendar`; these are the host integrations\n * that genuinely belong to LifeOps (the trajectory-aware LLM model runners, the\n * recent-conversation collector, and the travel-time domain) and so are\n * injected rather than moved.\n */\nconst calendarActionDeps: CalendarActionDeps = {\n runTextModel: (args) =>\n runLifeOpsTextModel({\n runtime: args.runtime,\n prompt: args.prompt,\n actionType: args.actionType,\n failureMessage: args.failureMessage,\n source: args.source,\n ...(args.purpose ? { purpose: args.purpose } : {}),\n }),\n runJsonModel: (args) =>\n runLifeOpsJsonModel({\n runtime: args.runtime,\n prompt: args.prompt,\n actionType: args.actionType,\n failureMessage: args.failureMessage,\n source: args.source,\n ...(args.purpose ? { purpose: args.purpose } : {}),\n }),\n recentConversationTexts: (args) => recentConversationTexts(args),\n travelBuffer: {\n resolveTravelIntent: (args) => resolveCreateEventTravelIntent(args),\n computeTravelBuffer: (args) => {\n const service = resolveCalendarService(args.runtime);\n return computeCreateEventTravelBuffer({\n runtime: args.runtime,\n calendar: {\n getCalendarFeed: service.getCalendarFeed.bind(service),\n },\n event: args.event,\n travelIntent: args.travelIntent,\n });\n },\n isTravelTimeUnavailable: (error): error is TravelTimeUnavailableError =>\n error instanceof TravelTimeUnavailableError,\n },\n};\n\nconst googleCalendarAction = createCalendarActionRunner(calendarActionDeps);\n\n// Re-exported for consumers that route calendar-plan extraction without going\n// through the umbrella handler (multilingual routing test, live LLM extraction\n// test). The implementation lives in `@elizaos/plugin-calendar`; importing this\n// module first runs `createCalendarActionRunner` above, so the extractor's\n// injected LLM dependencies are wired before any caller invokes it.\nexport { extractCalendarPlanWithLlm } from \"@elizaos/plugin-calendar\";\n\ntype OwnerCalendarSubaction =\n // Calendar reads/writes\n | \"feed\"\n | \"next_event\"\n | \"search_events\"\n | \"create_event\"\n | \"update_event\"\n | \"delete_event\"\n | \"trip_window\"\n | \"bulk_reschedule\"\n // Availability\n | \"check_availability\"\n | \"propose_times\"\n // Preferences\n | \"update_preferences\";\n\nconst ACTION_NAME = \"CALENDAR\";\n\ninterface OwnerCalendarParameters {\n subaction?: OwnerCalendarSubaction | string;\n // Calendar reads/writes (calendar.ts)\n intent?: string;\n title?: string;\n query?: string;\n queries?: string[];\n details?: Record<string, unknown>;\n // PROPOSE_MEETING_TIMES\n durationMinutes?: number;\n daysAhead?: number;\n slotCount?: number;\n windowStart?: string;\n windowEnd?: string;\n // CHECK_AVAILABILITY\n startAt?: string;\n endAt?: string;\n // UPDATE_MEETING_PREFERENCES\n timeZone?: string;\n counterparties?: string[];\n preferredStartLocal?: string;\n preferredEndLocal?: string;\n defaultDurationMinutes?: number;\n travelBufferMinutes?: number;\n blackoutWindows?: unknown;\n // Shared / forwarded\n [key: string]: unknown;\n}\n\nfunction getParams(\n options: HandlerOptions | undefined,\n): OwnerCalendarParameters {\n return ((options?.parameters as OwnerCalendarParameters | undefined) ??\n {}) as OwnerCalendarParameters;\n}\n\n/**\n * Translate an umbrella `subaction` into the inner sub-route that each target\n * action expects. We pass through the rest of `parameters` unchanged so every\n * handler reads its own inputs.\n */\nfunction translateSubaction(subaction: OwnerCalendarSubaction): {\n target:\n | \"calendar\"\n | \"bulk_reschedule\"\n | \"propose_times\"\n | \"check_availability\"\n | \"update_preferences\";\n innerSubaction?: string;\n} {\n switch (subaction) {\n case \"feed\":\n return { target: \"calendar\", innerSubaction: \"feed\" };\n case \"next_event\":\n return { target: \"calendar\", innerSubaction: \"next_event\" };\n case \"search_events\":\n return { target: \"calendar\", innerSubaction: \"search_events\" };\n case \"create_event\":\n return { target: \"calendar\", innerSubaction: \"create_event\" };\n case \"update_event\":\n return { target: \"calendar\", innerSubaction: \"update_event\" };\n case \"delete_event\":\n return { target: \"calendar\", innerSubaction: \"delete_event\" };\n case \"trip_window\":\n return { target: \"calendar\", innerSubaction: \"trip_window\" };\n case \"bulk_reschedule\":\n return { target: \"bulk_reschedule\" };\n\n case \"check_availability\":\n return { target: \"check_availability\" };\n case \"propose_times\":\n return { target: \"propose_times\" };\n case \"update_preferences\":\n return { target: \"update_preferences\" };\n }\n}\n\nconst VALID_SUBACTIONS: readonly OwnerCalendarSubaction[] = [\n \"feed\",\n \"next_event\",\n \"search_events\",\n \"create_event\",\n \"update_event\",\n \"delete_event\",\n \"trip_window\",\n \"bulk_reschedule\",\n \"check_availability\",\n \"propose_times\",\n \"update_preferences\",\n];\n\nfunction normalizeSubaction(value: unknown): OwnerCalendarSubaction | null {\n if (typeof value !== \"string\") return null;\n const normalized = value.trim().toLowerCase();\n return (VALID_SUBACTIONS as readonly string[]).includes(normalized)\n ? (normalized as OwnerCalendarSubaction)\n : null;\n}\n\nconst OWNER_CALENDAR_SUBACTION_SPECS: SubactionsMap<OwnerCalendarSubaction> = {\n feed: {\n description: \"List events. Time window: today, this week.\",\n descriptionCompressed: \"list events time-window\",\n required: [],\n optional: [\"intent\", \"details\"],\n },\n next_event: {\n description: \"Next upcoming event.\",\n descriptionCompressed: \"next upcoming event\",\n required: [],\n optional: [\"intent\", \"details\"],\n },\n search_events: {\n description: \"Search events: title, attendee, location, date.\",\n descriptionCompressed: \"search events title|attendee|location|date\",\n required: [],\n optional: [\"intent\", \"query\", \"queries\", \"details\"],\n },\n create_event: {\n description: \"Create event.\",\n descriptionCompressed: \"create calendar event\",\n required: [],\n optional: [\"title\", \"intent\", \"details\"],\n },\n update_event: {\n description: \"Update event.\",\n descriptionCompressed: \"update calendar event\",\n required: [],\n optional: [\"title\", \"intent\", \"details\"],\n },\n delete_event: {\n description: \"Delete event.\",\n descriptionCompressed: \"delete calendar event\",\n required: [],\n optional: [\"intent\", \"details\"],\n },\n trip_window: {\n description: \"List events during trip/place.\",\n descriptionCompressed: \"events trip-window place\",\n required: [],\n optional: [\"intent\", \"query\", \"details\"],\n },\n bulk_reschedule: {\n description: \"Preview bulk reschedule. Push cohort to later window.\",\n descriptionCompressed: \"preview bulk reschedule cohort later-window\",\n required: [],\n optional: [\"timeZone\", \"intent\"],\n },\n check_availability: {\n description: \"Check owner free/busy. ISO start/end.\",\n descriptionCompressed: \"check free|busy ISO-window\",\n required: [],\n optional: [\"startAt\", \"endAt\", \"intent\"],\n },\n propose_times: {\n description: \"Propose meeting slots. Window.\",\n descriptionCompressed: \"propose candidate meeting slots window\",\n required: [],\n optional: [\n \"durationMinutes\",\n \"daysAhead\",\n \"slotCount\",\n \"windowStart\",\n \"windowEnd\",\n \"counterparties\",\n \"timeZone\",\n ],\n },\n update_preferences: {\n description: \"Update meeting prefs: hours, blackouts, travel buffer.\",\n descriptionCompressed: \"update meeting prefs hours blackouts travel-buffer\",\n required: [],\n optional: [\n \"timeZone\",\n \"preferredStartLocal\",\n \"preferredEndLocal\",\n \"defaultDurationMinutes\",\n \"travelBufferMinutes\",\n \"blackoutWindows\",\n ],\n },\n};\n\nfunction messageText(message: Memory): string {\n return typeof message.content.text === \"string\" ? message.content.text : \"\";\n}\n\nfunction looksLikeFlightConflictQuestion(text: string): boolean {\n const normalized = text.toLowerCase();\n return (\n /\\b(?:flight|flights?|airport|jfk|sfo|lax|ewr|lga)\\b/u.test(normalized) &&\n /\\b(?:meeting|board|calendar|appointment|event)\\b/u.test(normalized) &&\n /\\b(?:land|lands|arrival|arrive|make|conflict|rebook)\\b/u.test(normalized)\n );\n}\n\nasync function handleFlightConflictPreview(args: {\n message: Memory;\n callback: HandlerCallback | undefined;\n}): Promise<ActionResult> {\n const text = messageText(args.message);\n const responseText =\n /8\\s*(?:am|a\\.m\\.)/iu.test(text) && /9\\s*(?:am|a\\.m\\.)/iu.test(text)\n ? \"The 8 AM JFK arrival is too tight for a 9 AM board meeting. I would treat that as a conflict unless the meeting is at the airport or remote. The concrete options are to rebook to an earlier flight or the night before, move the meeting later, or plan to join remotely while in transit.\"\n : \"Your 8 AM JFK arrival is too tight for the 9 AM board meeting on that calendar day. I would treat it as a conflict and propose one of these concrete options: rebook to an arrival no later than 6:30 AM, fly in the night before, move the board meeting to 10:30 AM or later, or join remotely while in transit.\";\n await args.callback?.({\n text: responseText,\n source: \"action\",\n action: ACTION_NAME,\n });\n return {\n text: responseText,\n success: true,\n data: {\n actionName: ACTION_NAME,\n subaction: \"flight_conflict_rebooking\",\n proposedAlternatives: [\"earlier_flight\", \"move_meeting\", \"remote_attend\"],\n },\n };\n}\n\nfunction extractBulkRescheduleCohortLabel(text: string): string | null {\n const allMatch =\n /\\ball\\s+([a-z0-9][a-z0-9\\s&/+-]{1,40}?)\\s+meetings?\\b/iu.exec(text) ??\n /\\b([a-z0-9][a-z0-9\\s&/+-]{1,40}?)\\s+meetings?\\b/iu.exec(text);\n const raw = allMatch?.[1]?.trim();\n if (!raw) {\n return null;\n }\n return raw.replace(/\\s+/gu, \" \").trim();\n}\n\nfunction buildBulkRescheduleLookupWindow(\n timeZone: string,\n text: string,\n): {\n timeMin: string;\n timeMax: string;\n scopeLabel: string;\n} {\n const now = new Date();\n const local = getZonedDateParts(now, timeZone);\n const startOfToday = buildUtcDateFromLocalParts(timeZone, {\n year: local.year,\n month: local.month,\n day: local.day,\n hour: 0,\n minute: 0,\n second: 0,\n });\n\n if (/\\bnext month\\b/iu.test(text)) {\n const nextMonthYear = local.month === 12 ? local.year + 1 : local.year;\n const nextMonth = local.month === 12 ? 1 : local.month + 1;\n const startOfNextMonth = buildUtcDateFromLocalParts(timeZone, {\n year: nextMonthYear,\n month: nextMonth,\n day: 1,\n hour: 0,\n minute: 0,\n second: 0,\n });\n return {\n timeMin: startOfToday.toISOString(),\n timeMax: startOfNextMonth.toISOString(),\n scopeLabel: \"before next month\",\n };\n }\n\n const fortyFiveDaysOut = new Date(\n startOfToday.getTime() + 45 * 24 * 60 * 60_000,\n );\n return {\n timeMin: startOfToday.toISOString(),\n timeMax: fortyFiveDaysOut.toISOString(),\n scopeLabel: \"in the next 45 days\",\n };\n}\n\nfunction eventMatchesBulkRescheduleCohort(\n event: LifeOpsCalendarEvent,\n cohortLabel: string | null,\n): boolean {\n if (!cohortLabel) {\n return /\\bmeeting|call|sync|standup|review\\b/iu.test(\n `${event.title} ${event.description}`,\n );\n }\n\n const searchable = [\n event.title,\n event.description,\n event.location,\n ...event.attendees.map(\n (attendee) => attendee.displayName ?? attendee.email ?? \"\",\n ),\n ]\n .join(\" \")\n .toLowerCase();\n\n return cohortLabel\n .toLowerCase()\n .split(/\\s+/u)\n .every((token) => searchable.includes(token));\n}\n\nasync function handleBulkReschedulePreview(args: {\n runtime: IAgentRuntime;\n message: Memory;\n callback: HandlerCallback | undefined;\n timeZone: string | null;\n}): Promise<ActionResult> {\n const text = messageText(args.message);\n const timeZone = args.timeZone ?? resolveDefaultTimeZone();\n const cohortLabel = extractBulkRescheduleCohortLabel(text);\n const { timeMin, timeMax, scopeLabel } = buildBulkRescheduleLookupWindow(\n timeZone,\n text,\n );\n const service = resolveCalendarService(args.runtime);\n\n let events: readonly LifeOpsCalendarEvent[] = [];\n try {\n const feed = await service.getCalendarFeed(INTERNAL_URL, {\n includeHiddenCalendars: true,\n timeMin,\n timeMax,\n timeZone,\n });\n events = feed.events;\n } catch (error) {\n if (error instanceof CalendarServiceError) {\n const failureText =\n error.status === 403\n ? \"I can't scope that calendar reschedule yet because calendar access is not available. Grant Apple Calendar access or connect Google Calendar.\"\n : `I couldn't inspect the calendar cohort for that bulk reschedule (${error.message}).`;\n await args.callback?.({\n text: failureText,\n source: \"action\",\n action: ACTION_NAME,\n });\n return {\n text: failureText,\n success: false,\n data: {\n actionName: ACTION_NAME,\n subaction: \"bulk_reschedule\",\n error: \"CALENDAR_UNAVAILABLE\",\n status: error.status,\n },\n };\n }\n throw error;\n }\n\n const matches = events\n .filter((event) => eventMatchesBulkRescheduleCohort(event, cohortLabel))\n .sort(\n (left, right) => Date.parse(left.startAt) - Date.parse(right.startAt),\n );\n\n const cohortText = cohortLabel ? `${cohortLabel} meetings` : \"those meetings\";\n const previewLines = matches.slice(0, 8).map((event) => {\n const when = formatCalendarEventDateTime(event, {\n includeTimeZoneName: true,\n });\n return `- ${event.title || \"Untitled\"} — ${when}`;\n });\n\n const responseText =\n matches.length === 0\n ? `I couldn't find any ${cohortText} ${scopeLabel} to push into next month. If the affected meetings live off-calendar, tell me the channel and I'll draft the reschedule plan for approval.`\n : `I found ${matches.length} ${cohortText} ${scopeLabel} that look ready to push into next month:\\n${previewLines.join(\"\\n\")}\\n\\nI'll keep the bulk cancel-and-push plan gated behind your approval before anything gets moved or sent.`;\n\n await args.callback?.({\n text: responseText,\n source: \"action\",\n action: ACTION_NAME,\n });\n return {\n text: responseText,\n success: true,\n data: {\n actionName: ACTION_NAME,\n subaction: \"bulk_reschedule\",\n timeZone,\n timeMin,\n timeMax,\n cohortLabel,\n matchedEvents: matches.map((event) => ({\n id: event.id,\n title: event.title,\n startAt: event.startAt,\n endAt: event.endAt,\n })),\n },\n };\n}\n\nasync function route(\n subaction: OwnerCalendarSubaction,\n runtime: IAgentRuntime,\n message: Memory,\n state: State | undefined,\n options: HandlerOptions | undefined,\n callback: HandlerCallback | undefined,\n): Promise<ActionResult> {\n const params = getParams(options);\n const { target, innerSubaction } = translateSubaction(subaction);\n const delegatedCallback: HandlerCallback | undefined = callback\n ? (content, actionName) => callback(content, actionName ?? ACTION_NAME)\n : undefined;\n\n const forwardedOptions: HandlerOptions = {\n ...(options ?? {}),\n parameters: innerSubaction\n ? ({\n ...params,\n subaction: innerSubaction,\n } as HandlerOptions[\"parameters\"])\n : (params as HandlerOptions[\"parameters\"]),\n };\n\n switch (target) {\n case \"calendar\":\n return (await googleCalendarAction.handler(\n runtime,\n message,\n state,\n forwardedOptions,\n delegatedCallback,\n )) as ActionResult;\n case \"bulk_reschedule\":\n return handleBulkReschedulePreview({\n runtime,\n message,\n callback: delegatedCallback,\n timeZone: params.timeZone ?? null,\n });\n case \"propose_times\":\n return runProposeMeetingTimesHandler(\n runtime,\n message,\n state,\n forwardedOptions,\n delegatedCallback,\n );\n case \"check_availability\":\n return runCheckAvailabilityHandler(\n runtime,\n message,\n state,\n forwardedOptions,\n delegatedCallback,\n );\n case \"update_preferences\":\n return runUpdateMeetingPreferencesHandler(\n runtime,\n message,\n state,\n forwardedOptions,\n delegatedCallback,\n );\n }\n}\n\nexport const calendarAction: Action & {\n suppressPostActionContinuation?: boolean;\n} = {\n name: ACTION_NAME,\n similes: [\n \"CALENDAR\",\n \"SCHEDULE\",\n \"MEETING\",\n // Time-block phrasings — these used to live on the BLOCK action's simile\n // list, where they shadowed calendar-block creation. They live here now\n // because \"block out 2 hours for deep work\" / \"carve out a focus block\"\n // is a CALENDAR.create_event request, not an app/website block.\n \"BLOCK_TIME\",\n \"CREATE_TIME_BLOCK\",\n \"TIME_BLOCK\",\n \"DEEP_WORK_BLOCK\",\n \"FOCUS_BLOCK\",\n \"BLOCK_OUT\",\n \"BLOCK_OUT_TIME\",\n \"CARVE_OUT_TIME\",\n \"RESERVE_TIME\",\n // PRD action-catalog aliases. These resolve to CALENDAR subactions via\n // handler argument routing; see packages/docs/action-prd-map.md.\n \"CALENDAR_LIST_UPCOMING\",\n \"CALENDAR_FIND_AVAILABILITY\",\n \"CALENDAR_CREATE_EVENT\",\n \"CALENDAR_CREATE_RECURRING_BLOCK\",\n \"CALENDAR_RESCHEDULE_EVENT\",\n \"CALENDAR_CANCEL_EVENT\",\n \"CALENDAR_PROPOSE_TIMES\",\n \"CALENDAR_PROTECT_WINDOW\",\n \"CALENDAR_BUNDLE_MEETINGS\",\n \"CALENDAR_ADD_PREP_BUFFER\",\n \"CALENDAR_ADD_TRAVEL_BUFFER\",\n ],\n tags: [\n \"domain:calendar\",\n \"capability:read\",\n \"capability:write\",\n \"capability:update\",\n \"capability:delete\",\n \"surface:remote-api\",\n \"surface:internal\",\n ],\n description:\n \"Live calendar: event CRUD, availability, meeting prefs. Subactions: \" +\n \"feed, next_event, search_events, create_event, update_event, delete_event, trip_window, bulk_reschedule, \" +\n \"check_availability, propose_times, update_preferences. \" +\n \"Use CALENDLY for calendly.com URLs. Use PERSONAL_ASSISTANT action=scheduling for multi-turn proposal/response.\",\n descriptionCompressed:\n \"calendar feed|next|search|create|update|delete|trip_window|reschedule|availability|propose\",\n // \"general\" included so messageHandler can route direct owner calendar\n // most user-facing event/scheduling requests to \"general\" rather than\n // \"calendar\", so retrieval would otherwise filter CALENDAR out before\n // the planner sees it. See `12-real-root-cause.md`.\n contexts: [\"general\", \"calendar\", \"contacts\", \"tasks\", \"connectors\", \"web\"],\n roleGate: { minRole: \"OWNER\" },\n // CALENDAR is a flat-subaction umbrella: every verb is selected via the\n // `subaction` parameter enum below, and the handler routes via `route()`\n // to the appropriate internal handler. The legacy `subActions` +\n // `subPlanner` 2-layer dispatch was removed once `promoteSubactionsToActions`\n // (in `plugin.ts`) gave the planner a discoverable top-level entry per\n // subaction (e.g. `CALENDAR_FEED`, `CALENDAR_CREATE_EVENT`,\n // `CALENDAR_PROPOSE_TIMES`). The internal handlers (calendar reads/writes,\n // availability, preferences) stay imported as private implementation\n // targets, not as registered child Actions.\n suppressPostActionContinuation: true,\n validate: async (\n runtime: IAgentRuntime,\n message: Memory,\n ): Promise<boolean> => {\n return hasLifeOpsAccess(runtime, message);\n },\n handler: async (\n runtime: IAgentRuntime,\n message: Memory,\n state,\n options,\n callback,\n ): Promise<ActionResult> => {\n if (!(await hasLifeOpsAccess(runtime, message))) {\n const text = \"Calendar actions are restricted to the owner.\";\n await callback?.({ text });\n return { text, success: false, data: { error: \"PERMISSION_DENIED\" } };\n }\n if (looksLikeFlightConflictQuestion(messageText(message))) {\n return handleFlightConflictPreview({ message, callback });\n }\n const resolved = await resolveActionArgs<\n OwnerCalendarSubaction,\n OwnerCalendarParameters\n >({\n runtime,\n message,\n state,\n options,\n actionName: ACTION_NAME,\n subactions: OWNER_CALENDAR_SUBACTION_SPECS,\n });\n if (!resolved.ok) {\n const text =\n resolved.clarification ||\n \"Tell me whether you want to view your calendar, create an event, check availability, propose times, or adjust scheduling preferences.\";\n await callback?.({ text });\n return {\n text,\n success: false,\n data: {\n error: \"MISSING_SUBACTION\",\n missing: resolved.missing,\n noop: true,\n },\n };\n }\n const subaction = normalizeSubaction(resolved.subaction);\n if (!subaction) {\n const text =\n \"Tell me whether you want to view your calendar, create an event, check availability, propose times, or adjust scheduling preferences.\";\n await callback?.({ text });\n return {\n text,\n success: false,\n data: { error: \"MISSING_SUBACTION\", noop: true },\n };\n }\n const mergedOptions: HandlerOptions = {\n ...(options ?? {}),\n parameters: resolved.params as HandlerOptions[\"parameters\"],\n };\n return route(subaction, runtime, message, state, mergedOptions, callback);\n },\n parameters: [\n {\n name: \"action\",\n description:\n \"Calendar op. feed, next_event, search_events, create_event, update_event, delete_event, trip_window, bulk_reschedule, check_availability, propose_times, update_preferences.\",\n required: false,\n schema: {\n type: \"string\" as const,\n enum: [...VALID_SUBACTIONS],\n },\n },\n {\n name: \"intent\",\n description:\n 'Natural-language request. Examples: \"calendar today\", \"flights this week\", \"create meeting tomorrow 3pm\".',\n required: false,\n schema: { type: \"string\" as const },\n },\n {\n name: \"title\",\n description:\n \"Event title for create_event. TOP-LEVEL flat. \" +\n \"NEVER inside `details`. \" +\n \"Example: `{ subaction: 'create_event', title: 'Dentist', details: { start: '...', end: '...' } }`.\",\n descriptionCompressed:\n \"title TOP-LEVEL; NOT details. create_event needs title + details.start/end\",\n required: false,\n schema: { type: \"string\" as const },\n },\n {\n name: \"query\",\n description:\n \"Search phrase for search_events/travel_itinerary: flight, dentist, Denver.\",\n required: false,\n schema: { type: \"string\" as const },\n },\n {\n name: \"queries\",\n description: \"Optional search_events phrases array. Combined/deduped.\",\n required: false,\n schema: { type: \"array\" as const, items: { type: \"string\" as const } },\n },\n {\n name: \"details\",\n description:\n \"Structured fields for create_event/update_event/delete_event. \" +\n \"`start`/`end` ISO-8601; aliases `startAt`/`endAt` accepted. \" +\n \"create_event: `{ subaction: 'create_event', title: 'Dentist', details: { calendarId: 'cal_primary', start: '...', end: '...', location: '...' } }`. \" +\n \"update_event: `{ subaction: 'update_event', details: { eventId: 'event_00040', calendarId: 'cal_primary', start: '...', end: '...' } }`. \" +\n \"check_availability/propose_times time-window fields TOP LEVEL, not `details`.\",\n descriptionCompressed:\n \"details create|update|delete: calendarId,start/end,eventId,location; title/window TOP\",\n required: false,\n schema: {\n type: \"object\" as const,\n properties: {\n calendarId: { type: \"string\" as const },\n timeMin: { type: \"string\" as const },\n timeMax: { type: \"string\" as const },\n timeZone: { type: \"string\" as const },\n forceSync: { type: \"boolean\" as const },\n windowDays: { type: \"number\" as const },\n windowPreset: { type: \"string\" as const },\n start: { type: \"string\" as const },\n end: { type: \"string\" as const },\n startAt: { type: \"string\" as const },\n endAt: { type: \"string\" as const },\n durationMinutes: { type: \"number\" as const },\n eventId: { type: \"string\" as const },\n newTitle: { type: \"string\" as const },\n description: { type: \"string\" as const },\n location: { type: \"string\" as const },\n travelOriginAddress: { type: \"string\" as const },\n attendees: {\n type: \"array\" as const,\n items: { type: \"string\" as const },\n },\n },\n },\n },\n {\n name: \"durationMinutes\",\n description:\n \"TOP-LEVEL flat. propose_times length minutes. \" +\n \"Example: `{ subaction: 'propose_times', durationMinutes: 30, slotCount: 3, windowStart: '...', windowEnd: '...' }`. \" +\n \"Do NOT wrap propose_times args in `details`.\",\n required: false,\n schema: { type: \"number\" as const },\n },\n {\n name: \"daysAhead\",\n description:\n \"propose_times days ahead. Default 7. Ignored with windowStart/windowEnd.\",\n required: false,\n schema: { type: \"number\" as const },\n },\n {\n name: \"slotCount\",\n description: \"propose_times slot count. Default 3.\",\n required: false,\n schema: { type: \"number\" as const },\n },\n {\n name: \"windowStart\",\n description: \"propose_times window earliest start. ISO-8601.\",\n required: false,\n schema: { type: \"string\" as const },\n },\n {\n name: \"windowEnd\",\n description: \"propose_times window latest end. ISO-8601.\",\n required: false,\n schema: { type: \"string\" as const },\n },\n {\n name: \"startAt\",\n description:\n \"TOP-LEVEL flat. check_availability start. ISO-8601. \" +\n \"Example: `{ subaction: 'check_availability', startAt: '2026-05-14T09:00:00Z', endAt: '2026-05-14T10:00:00Z' }`. \" +\n \"Do NOT wrap check_availability args in `details`.\",\n required: false,\n schema: { type: \"string\" as const },\n },\n {\n name: \"endAt\",\n description:\n \"TOP-LEVEL flat. check_availability end. ISO-8601. See `startAt`.\",\n required: false,\n schema: { type: \"string\" as const },\n },\n {\n name: \"timeZone\",\n description: \"IANA timeZone for update_preferences hours.\",\n required: false,\n schema: { type: \"string\" as const },\n },\n {\n name: \"preferredStartLocal\",\n description:\n \"TOP-LEVEL flat for update_preferences. Earliest start local HH:MM 24h. \" +\n \"Example: `{ subaction: 'update_preferences', preferredStartLocal: '09:00', preferredEndLocal: '17:00', blackoutWindows: [...] }`. \" +\n \"Do NOT wrap update_preferences args in `details`.\",\n required: false,\n schema: { type: \"string\" as const },\n },\n {\n name: \"preferredEndLocal\",\n description:\n \"TOP-LEVEL flat for update_preferences. Latest end local HH:MM 24h. See `preferredStartLocal`.\",\n required: false,\n schema: { type: \"string\" as const },\n },\n {\n name: \"defaultDurationMinutes\",\n description: \"Default duration minutes (5–480).\",\n required: false,\n schema: { type: \"number\" as const },\n },\n {\n name: \"travelBufferMinutes\",\n description: \"Buffer minutes before/after meetings (0–240).\",\n required: false,\n schema: { type: \"number\" as const },\n },\n {\n name: \"blackoutWindows\",\n description:\n \"Array: { label, startLocal HH:MM, endLocal HH:MM, daysOfWeek? 0=Sun..6=Sat }.\",\n descriptionCompressed:\n \"blackoutWindows[]: label startLocal HH:MM endLocal HH:MM daysOfWeek?[0..6]\",\n required: false,\n schema: {\n type: \"array\" as const,\n items: {\n type: \"object\" as const,\n properties: {\n label: { type: \"string\" as const },\n startLocal: {\n type: \"string\" as const,\n pattern: \"^[0-2][0-9]:[0-5][0-9]$\",\n },\n endLocal: {\n type: \"string\" as const,\n pattern: \"^[0-2][0-9]:[0-5][0-9]$\",\n },\n daysOfWeek: {\n type: \"array\" as const,\n items: {\n type: \"number\" as const,\n minimum: 0,\n maximum: 6,\n },\n },\n },\n required: [\"label\", \"startLocal\", \"endLocal\"],\n },\n },\n },\n ],\n examples: [\n [\n { name: \"{{name1}}\", content: { text: \"What's on my calendar today?\" } },\n {\n name: \"{{agentName}}\",\n content: {\n text: \"Events today:\\n- **Team sync** (10:00 AM – 10:30 AM)\",\n },\n },\n ],\n [\n {\n name: \"{{name1}}\",\n content: { text: \"Create a dentist appointment for tomorrow at 3pm.\" },\n },\n {\n name: \"{{agentName}}\",\n content: {\n text: 'Created calendar event \"Dentist appointment\" for tomorrow at 3:00 PM.',\n },\n },\n ],\n [\n {\n name: \"{{name1}}\",\n content: { text: \"Am I free tomorrow between 2pm and 4pm?\" },\n },\n {\n name: \"{{agentName}}\",\n content: {\n text: \"You're free from Tue, Apr 20, 2:00 PM to Tue, Apr 20, 4:00 PM.\",\n },\n },\n ],\n [\n {\n name: \"{{name1}}\",\n content: {\n text: \"Propose three 30-minute slots for a sync with a colleague next week.\",\n },\n },\n {\n name: \"{{agentName}}\",\n content: {\n text: \"Here are 3 options you can offer:\\n1. Mon, Apr 27, 10:00 AM – 10:30 AM (30 min)\\n2. Tue, Apr 28, 2:00 PM – 2:30 PM (30 min)\\n3. Wed, Apr 29, 11:00 AM – 11:30 AM (30 min)\",\n },\n },\n ],\n [\n {\n name: \"{{name1}}\",\n content: {\n text: \"No calls between 11pm and 8am unless I explicitly say it's okay.\",\n },\n },\n {\n name: \"{{agentName}}\",\n content: {\n text: \"Updated your meeting preferences to block calls from 11:00 PM to 8:00 AM unless you override it.\",\n },\n },\n ],\n [\n {\n name: \"{{name1}}\",\n content: {\n text: \"Need to book 1 hour per day for a recurring 1:1 with my partner. Any time is fine, ideally before sleep.\",\n },\n },\n {\n name: \"{{agentName}}\",\n content: {\n text: \"I'll set up a recurring daily one-hour block and keep it biased toward the evening before your sleep window.\",\n },\n },\n ],\n [\n {\n name: \"{{name1}}\",\n content: {\n text: \"I'm in Tokyo for limited time so let's schedule PendingReality and Ryan at the same time if possible.\",\n },\n },\n {\n name: \"{{agentName}}\",\n content: {\n text: \"I'll look for Tokyo-time options that bundle PendingReality and Ryan into the same window and flag the best slots.\",\n },\n },\n ],\n [\n {\n name: \"{{name1}}\",\n content: {\n text: \"Flag the conflict before my flight later and, if needed, help rebook the other thing.\",\n },\n },\n {\n name: \"{{agentName}}\",\n content: {\n text: \"I'll check the flight conflict, surface the conflicting event, and hold any rebooking behind your approval.\",\n },\n },\n ],\n [\n {\n name: \"{{name1}}\",\n content: {\n text: \"We're gonna cancel some stuff and push everything back until next month. All partnership meetings.\",\n },\n },\n {\n name: \"{{agentName}}\",\n content: {\n text: \"I'll scope the partnership meetings affected and queue the bulk reschedule for your approval before anything is sent.\",\n },\n },\n ],\n ] as ActionExample[][],\n};\n"],"mappings":"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","names":[]}
@@ -0,0 +1,67 @@
1
+ /**
2
+ * `CONFLICT_DETECT` umbrella action — proactive calendar conflict scanning.
3
+ *
4
+ * Subactions:
5
+ * - `scan_today` — find overlaps on today's calendar
6
+ * - `scan_week` — find overlaps in the next seven days
7
+ * - `scan_event_proposal` — given a proposed start/end (and optionally
8
+ * attendees), find direct conflicts against the
9
+ * owner's calendar feed
10
+ *
11
+ * Reads the calendar feed via the injectable loader and compares event windows
12
+ * for overlap. Attendee freebusy is only consulted if the loader injects it.
13
+ *
14
+ * Owner-or-admin gating: `hasLifeOpsAccess` covers OWNER; ADMIN is also valid
15
+ * for read scans.
16
+ */
17
+ import type { Action, IAgentRuntime } from "@elizaos/core";
18
+ declare const SUBACTIONS: readonly ["scan_today", "scan_week", "scan_event_proposal"];
19
+ type Subaction = (typeof SUBACTIONS)[number];
20
+ export type ConflictSeverity = "warning" | "hard";
21
+ export interface ConflictDetectEvent {
22
+ readonly id: string;
23
+ readonly title: string;
24
+ readonly startISO: string;
25
+ readonly endISO: string;
26
+ readonly attendees?: readonly string[];
27
+ }
28
+ export interface ConflictDetectProposal {
29
+ readonly startISO: string;
30
+ readonly endISO: string;
31
+ readonly attendees?: readonly string[];
32
+ }
33
+ export interface ConflictRange {
34
+ readonly start: string;
35
+ readonly end: string;
36
+ }
37
+ export interface ConflictDetectPair {
38
+ readonly eventA: ConflictDetectEvent;
39
+ readonly eventB: ConflictDetectEvent;
40
+ readonly severity: ConflictSeverity;
41
+ readonly suggestion?: string;
42
+ }
43
+ export interface ConflictDetectResult {
44
+ readonly subaction: Subaction;
45
+ readonly range: ConflictRange;
46
+ readonly conflicts: readonly ConflictDetectPair[];
47
+ readonly summary: string;
48
+ readonly checkedEvents: number;
49
+ }
50
+ export interface ConflictDetectLoader {
51
+ loadFeed: (args: {
52
+ runtime: IAgentRuntime;
53
+ range: ConflictRange;
54
+ }) => Promise<readonly ConflictDetectEvent[]>;
55
+ loadFreeBusy: (args: {
56
+ runtime: IAgentRuntime;
57
+ proposal: ConflictDetectProposal;
58
+ range: ConflictRange;
59
+ }) => Promise<readonly ConflictDetectEvent[]>;
60
+ }
61
+ export declare function setConflictDetectLoader(next: Partial<ConflictDetectLoader>): void;
62
+ export declare function __resetConflictDetectLoaderForTests(): void;
63
+ export declare const conflictDetectAction: Action & {
64
+ suppressPostActionContinuation?: boolean;
65
+ };
66
+ export {};
67
+ //# sourceMappingURL=conflict-detect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conflict-detect.d.ts","sourceRoot":"","sources":["../../src/actions/conflict-detect.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EACV,MAAM,EAKN,aAAa,EAEd,MAAM,eAAe,CAAC;AAMvB,QAAA,MAAM,UAAU,6DAA8D,CAAC;AAE/E,KAAK,SAAS,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;AAe7C,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,MAAM,CAAC;AAElD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACxC;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACxC;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAUD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAC;IACrC,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAC;IACrC,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAC;IACpC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAClD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,CAAC,IAAI,EAAE;QACf,OAAO,EAAE,aAAa,CAAC;QACvB,KAAK,EAAE,aAAa,CAAC;KACtB,KAAK,OAAO,CAAC,SAAS,mBAAmB,EAAE,CAAC,CAAC;IAC9C,YAAY,EAAE,CAAC,IAAI,EAAE;QACnB,OAAO,EAAE,aAAa,CAAC;QACvB,QAAQ,EAAE,sBAAsB,CAAC;QACjC,KAAK,EAAE,aAAa,CAAC;KACtB,KAAK,OAAO,CAAC,SAAS,mBAAmB,EAAE,CAAC,CAAC;CAC/C;AASD,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,OAAO,CAAC,oBAAoB,CAAC,GAClC,IAAI,CAEN;AAED,wBAAgB,mCAAmC,IAAI,IAAI,CAE1D;AA4ND,eAAO,MAAM,oBAAoB,EAAE,MAAM,GAAG;IAC1C,8BAA8B,CAAC,EAAE,OAAO,CAAC;CAwI1C,CAAC"}
@@ -0,0 +1,310 @@
1
+ import { logger } from "@elizaos/core";
2
+ import { hasLifeOpsAccess } from "../lifeops/access.js";
3
+ const ACTION_NAME = "CONFLICT_DETECT";
4
+ const SUBACTIONS = ["scan_today", "scan_week", "scan_event_proposal"];
5
+ const SIMILE_NAMES = [
6
+ "CONFLICT_DETECT",
7
+ "FIND_CONFLICTS",
8
+ "CHECK_CONFLICTS",
9
+ "CALENDAR_CONFLICTS"
10
+ ];
11
+ const SIMILE_TO_SUBACTION = {
12
+ FIND_CONFLICTS: "scan_today",
13
+ CHECK_CONFLICTS: "scan_today",
14
+ CALENDAR_CONFLICTS: "scan_today"
15
+ };
16
+ const defaultLoader = {
17
+ loadFeed: async () => [],
18
+ loadFreeBusy: async () => []
19
+ };
20
+ let activeLoader = defaultLoader;
21
+ function setConflictDetectLoader(next) {
22
+ activeLoader = { ...activeLoader, ...next };
23
+ }
24
+ function __resetConflictDetectLoaderForTests() {
25
+ activeLoader = defaultLoader;
26
+ }
27
+ function getParams(options) {
28
+ const raw = options?.parameters;
29
+ if (raw && typeof raw === "object") {
30
+ return raw;
31
+ }
32
+ return {};
33
+ }
34
+ function normalizeSubaction(value) {
35
+ if (typeof value !== "string") return null;
36
+ const trimmed = value.trim();
37
+ if (trimmed.length === 0) return null;
38
+ const upper = trimmed.toUpperCase();
39
+ if (upper in SIMILE_TO_SUBACTION) {
40
+ return SIMILE_TO_SUBACTION[upper] ?? null;
41
+ }
42
+ const lower = trimmed.toLowerCase();
43
+ return SUBACTIONS.includes(lower) ? lower : null;
44
+ }
45
+ function resolveSubaction(params) {
46
+ return normalizeSubaction(params.subaction) ?? normalizeSubaction(params.action) ?? normalizeSubaction(params.op);
47
+ }
48
+ function startOfDayIso(now) {
49
+ const d = new Date(now);
50
+ d.setUTCHours(0, 0, 0, 0);
51
+ return d.toISOString();
52
+ }
53
+ function endOfDayIso(now) {
54
+ const d = new Date(now);
55
+ d.setUTCHours(23, 59, 59, 999);
56
+ return d.toISOString();
57
+ }
58
+ function endOfWeekIso(now) {
59
+ const d = new Date(now);
60
+ d.setUTCDate(d.getUTCDate() + 7);
61
+ d.setUTCHours(23, 59, 59, 999);
62
+ return d.toISOString();
63
+ }
64
+ function resolveRange(params, subaction, now = /* @__PURE__ */ new Date()) {
65
+ const raw = params.range;
66
+ if (typeof raw === "object" && raw && "start" in raw && "end" in raw) {
67
+ const candidate = raw;
68
+ if (typeof candidate.start === "string" && typeof candidate.end === "string") {
69
+ return candidate;
70
+ }
71
+ return null;
72
+ }
73
+ const named = typeof raw === "string" ? raw.trim().toLowerCase() : subaction === "scan_week" ? "week" : "today";
74
+ if (named === "today") {
75
+ return { start: startOfDayIso(now), end: endOfDayIso(now) };
76
+ }
77
+ if (named === "week") {
78
+ return { start: startOfDayIso(now), end: endOfWeekIso(now) };
79
+ }
80
+ return null;
81
+ }
82
+ function overlaps(a, b) {
83
+ const aStart = Date.parse(a.startISO);
84
+ const aEnd = Date.parse(a.endISO);
85
+ const bStart = Date.parse(b.startISO);
86
+ const bEnd = Date.parse(b.endISO);
87
+ if (Number.isNaN(aStart) || Number.isNaN(aEnd) || Number.isNaN(bStart) || Number.isNaN(bEnd)) {
88
+ return false;
89
+ }
90
+ return aStart < bEnd && bStart < aEnd;
91
+ }
92
+ function computeSeverity(a, b) {
93
+ const aAttendees = new Set(a.attendees ?? []);
94
+ const bAttendees = new Set(b.attendees ?? []);
95
+ for (const attendee of aAttendees) {
96
+ if (bAttendees.has(attendee)) {
97
+ return "hard";
98
+ }
99
+ }
100
+ return "warning";
101
+ }
102
+ function suggestionFor(a, b, severity) {
103
+ if (severity === "hard") {
104
+ return `Move "${b.title}" \u2014 it shares attendees with "${a.title}".`;
105
+ }
106
+ return `Buffer between "${a.title}" and "${b.title}" \u2014 they overlap without shared attendees.`;
107
+ }
108
+ function detectConflicts(events) {
109
+ const conflicts = [];
110
+ for (let i = 0; i < events.length; i += 1) {
111
+ for (let j = i + 1; j < events.length; j += 1) {
112
+ const a = events[i];
113
+ const b = events[j];
114
+ if (!a || !b) continue;
115
+ if (!overlaps(a, b)) continue;
116
+ const severity = computeSeverity(a, b);
117
+ conflicts.push({
118
+ eventA: a,
119
+ eventB: b,
120
+ severity,
121
+ suggestion: suggestionFor(a, b, severity)
122
+ });
123
+ }
124
+ }
125
+ return conflicts;
126
+ }
127
+ function detectProposalConflicts(args) {
128
+ const proposalEvent = {
129
+ id: "proposal",
130
+ title: "Proposed event",
131
+ startISO: args.proposal.startISO,
132
+ endISO: args.proposal.endISO,
133
+ ...args.proposal.attendees ? { attendees: args.proposal.attendees } : {}
134
+ };
135
+ const conflicts = [];
136
+ for (const candidate of [...args.feed, ...args.freeBusy]) {
137
+ if (!overlaps(proposalEvent, candidate)) continue;
138
+ const severity = computeSeverity(proposalEvent, candidate);
139
+ conflicts.push({
140
+ eventA: proposalEvent,
141
+ eventB: candidate,
142
+ severity,
143
+ suggestion: suggestionFor(proposalEvent, candidate, severity)
144
+ });
145
+ }
146
+ return conflicts;
147
+ }
148
+ function summarize(conflicts) {
149
+ if (conflicts.length === 0) return "No conflicts detected.";
150
+ const hard = conflicts.filter((c) => c.severity === "hard").length;
151
+ const warn = conflicts.length - hard;
152
+ if (hard > 0 && warn > 0) {
153
+ return `${hard} hard conflict(s) and ${warn} warning(s) detected.`;
154
+ }
155
+ if (hard > 0) {
156
+ return `${hard} hard conflict(s) detected.`;
157
+ }
158
+ return `${warn} warning(s) detected.`;
159
+ }
160
+ const examples = [
161
+ [
162
+ {
163
+ name: "{{name1}}",
164
+ content: { text: "Any conflicts on my calendar today?" }
165
+ },
166
+ {
167
+ name: "{{agentName}}",
168
+ content: {
169
+ text: "Scanned today's calendar for conflicts.",
170
+ action: ACTION_NAME
171
+ }
172
+ }
173
+ ],
174
+ [
175
+ {
176
+ name: "{{name1}}",
177
+ content: { text: "Check this slot against my week before I send it." }
178
+ },
179
+ {
180
+ name: "{{agentName}}",
181
+ content: {
182
+ text: "Checked the proposal against your calendar.",
183
+ action: ACTION_NAME
184
+ }
185
+ }
186
+ ]
187
+ ];
188
+ const conflictDetectAction = {
189
+ name: ACTION_NAME,
190
+ similes: SIMILE_NAMES.slice(),
191
+ tags: [
192
+ "domain:calendar",
193
+ "capability:read",
194
+ "capability:scan",
195
+ "surface:internal"
196
+ ],
197
+ description: "Scan owner calendar overlaps. Compare proposed window vs owner feed. Subactions: scan_today, scan_week, scan_event_proposal.",
198
+ descriptionCompressed: "calendar conflicts: scan_today|scan_week|scan_event_proposal; severity warning|hard",
199
+ routingHint: 'calendar conflict-scan ("conflicts today", "does this slot work", "scan week overlaps") -> CONFLICT_DETECT; conflict-on-create -> CALENDAR.create_event',
200
+ contexts: ["calendar", "scheduling", "conflicts"],
201
+ roleGate: { minRole: "OWNER" },
202
+ suppressPostActionContinuation: true,
203
+ validate: async (runtime, message) => hasLifeOpsAccess(runtime, message),
204
+ parameters: [
205
+ {
206
+ name: "action",
207
+ description: "Conflict op: scan_today | scan_week | scan_event_proposal.",
208
+ schema: { type: "string", enum: [...SUBACTIONS] }
209
+ },
210
+ {
211
+ name: "range",
212
+ description: "'today' | 'week' or { start, end } ISO window. Default subaction range.",
213
+ schema: { type: "object", additionalProperties: true }
214
+ },
215
+ {
216
+ name: "proposal",
217
+ description: "scan_event_proposal candidate: { startISO, endISO, attendees? }.",
218
+ schema: { type: "object", additionalProperties: true }
219
+ }
220
+ ],
221
+ examples,
222
+ handler: async (runtime, message, _state, options, callback) => {
223
+ if (!await hasLifeOpsAccess(runtime, message)) {
224
+ const text = "Conflict scans are restricted to the owner.";
225
+ await callback?.({ text });
226
+ return { text, success: false, data: { error: "PERMISSION_DENIED" } };
227
+ }
228
+ const params = getParams(options);
229
+ const subaction = resolveSubaction(params);
230
+ if (!subaction) {
231
+ return {
232
+ success: false,
233
+ text: "Tell me which scan to run: scan_today, scan_week, or scan_event_proposal.",
234
+ data: { error: "MISSING_SUBACTION" }
235
+ };
236
+ }
237
+ const range = resolveRange(params, subaction);
238
+ if (!range) {
239
+ return {
240
+ success: false,
241
+ text: "I need a valid range (today | week | { start, end }) to scan.",
242
+ data: { subaction, error: "INVALID_RANGE" }
243
+ };
244
+ }
245
+ if (subaction === "scan_event_proposal") {
246
+ const proposal = params.proposal;
247
+ if (!proposal || typeof proposal.startISO !== "string" || typeof proposal.endISO !== "string") {
248
+ return {
249
+ success: false,
250
+ text: "I need a proposal with startISO and endISO to evaluate.",
251
+ data: { subaction, error: "MISSING_PROPOSAL" }
252
+ };
253
+ }
254
+ const [feed2, freeBusy] = await Promise.all([
255
+ activeLoader.loadFeed({ runtime, range }),
256
+ activeLoader.loadFreeBusy({ runtime, proposal, range })
257
+ ]);
258
+ const conflicts2 = detectProposalConflicts({ proposal, feed: feed2, freeBusy });
259
+ const summary2 = summarize(conflicts2);
260
+ const checkedEvents = feed2.length + freeBusy.length;
261
+ logger.info(
262
+ `[CONFLICT_DETECT] ${subaction} feed=${feed2.length} freeBusy=${freeBusy.length} conflicts=${conflicts2.length}`
263
+ );
264
+ await callback?.({
265
+ text: summary2,
266
+ source: "action",
267
+ action: ACTION_NAME
268
+ });
269
+ return {
270
+ success: true,
271
+ text: summary2,
272
+ data: {
273
+ subaction,
274
+ range,
275
+ conflicts: conflicts2,
276
+ summary: summary2,
277
+ checkedEvents
278
+ }
279
+ };
280
+ }
281
+ const feed = await activeLoader.loadFeed({ runtime, range });
282
+ const conflicts = detectConflicts(feed);
283
+ const summary = summarize(conflicts);
284
+ logger.info(
285
+ `[CONFLICT_DETECT] ${subaction} feed=${feed.length} conflicts=${conflicts.length}`
286
+ );
287
+ await callback?.({
288
+ text: summary,
289
+ source: "action",
290
+ action: ACTION_NAME
291
+ });
292
+ return {
293
+ success: true,
294
+ text: summary,
295
+ data: {
296
+ subaction,
297
+ range,
298
+ conflicts,
299
+ summary,
300
+ checkedEvents: feed.length
301
+ }
302
+ };
303
+ }
304
+ };
305
+ export {
306
+ __resetConflictDetectLoaderForTests,
307
+ conflictDetectAction,
308
+ setConflictDetectLoader
309
+ };
310
+ //# sourceMappingURL=conflict-detect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/actions/conflict-detect.ts"],"sourcesContent":["/**\n * `CONFLICT_DETECT` umbrella action — proactive calendar conflict scanning.\n *\n * Subactions:\n * - `scan_today` — find overlaps on today's calendar\n * - `scan_week` — find overlaps in the next seven days\n * - `scan_event_proposal` — given a proposed start/end (and optionally\n * attendees), find direct conflicts against the\n * owner's calendar feed\n *\n * Reads the calendar feed via the injectable loader and compares event windows\n * for overlap. Attendee freebusy is only consulted if the loader injects it.\n *\n * Owner-or-admin gating: `hasLifeOpsAccess` covers OWNER; ADMIN is also valid\n * for read scans.\n */\n\nimport type {\n Action,\n ActionExample,\n ActionResult,\n HandlerCallback,\n HandlerOptions,\n IAgentRuntime,\n Memory,\n} from \"@elizaos/core\";\nimport { logger } from \"@elizaos/core\";\nimport { hasLifeOpsAccess } from \"../lifeops/access.js\";\n\nconst ACTION_NAME = \"CONFLICT_DETECT\";\n\nconst SUBACTIONS = [\"scan_today\", \"scan_week\", \"scan_event_proposal\"] as const;\n\ntype Subaction = (typeof SUBACTIONS)[number];\n\nconst SIMILE_NAMES: readonly string[] = [\n \"CONFLICT_DETECT\",\n \"FIND_CONFLICTS\",\n \"CHECK_CONFLICTS\",\n \"CALENDAR_CONFLICTS\",\n];\n\nconst SIMILE_TO_SUBACTION: Readonly<Record<string, Subaction>> = {\n FIND_CONFLICTS: \"scan_today\",\n CHECK_CONFLICTS: \"scan_today\",\n CALENDAR_CONFLICTS: \"scan_today\",\n};\n\nexport type ConflictSeverity = \"warning\" | \"hard\";\n\nexport interface ConflictDetectEvent {\n readonly id: string;\n readonly title: string;\n readonly startISO: string;\n readonly endISO: string;\n readonly attendees?: readonly string[];\n}\n\nexport interface ConflictDetectProposal {\n readonly startISO: string;\n readonly endISO: string;\n readonly attendees?: readonly string[];\n}\n\nexport interface ConflictRange {\n readonly start: string;\n readonly end: string;\n}\n\ninterface ConflictDetectActionParameters {\n subaction?: Subaction | string;\n action?: Subaction | string;\n op?: Subaction | string;\n range?: \"today\" | \"week\" | ConflictRange | string;\n proposal?: ConflictDetectProposal;\n}\n\nexport interface ConflictDetectPair {\n readonly eventA: ConflictDetectEvent;\n readonly eventB: ConflictDetectEvent;\n readonly severity: ConflictSeverity;\n readonly suggestion?: string;\n}\n\nexport interface ConflictDetectResult {\n readonly subaction: Subaction;\n readonly range: ConflictRange;\n readonly conflicts: readonly ConflictDetectPair[];\n readonly summary: string;\n readonly checkedEvents: number;\n}\n\nexport interface ConflictDetectLoader {\n loadFeed: (args: {\n runtime: IAgentRuntime;\n range: ConflictRange;\n }) => Promise<readonly ConflictDetectEvent[]>;\n loadFreeBusy: (args: {\n runtime: IAgentRuntime;\n proposal: ConflictDetectProposal;\n range: ConflictRange;\n }) => Promise<readonly ConflictDetectEvent[]>;\n}\n\nconst defaultLoader: ConflictDetectLoader = {\n loadFeed: async () => [],\n loadFreeBusy: async () => [],\n};\n\nlet activeLoader: ConflictDetectLoader = defaultLoader;\n\nexport function setConflictDetectLoader(\n next: Partial<ConflictDetectLoader>,\n): void {\n activeLoader = { ...activeLoader, ...next };\n}\n\nexport function __resetConflictDetectLoaderForTests(): void {\n activeLoader = defaultLoader;\n}\n\nfunction getParams(\n options: HandlerOptions | undefined,\n): ConflictDetectActionParameters {\n const raw = (options as HandlerOptions | undefined)?.parameters;\n if (raw && typeof raw === \"object\") {\n return raw as ConflictDetectActionParameters;\n }\n return {};\n}\n\nfunction normalizeSubaction(value: unknown): Subaction | null {\n if (typeof value !== \"string\") return null;\n const trimmed = value.trim();\n if (trimmed.length === 0) return null;\n const upper = trimmed.toUpperCase();\n if (upper in SIMILE_TO_SUBACTION) {\n return SIMILE_TO_SUBACTION[upper] ?? null;\n }\n const lower = trimmed.toLowerCase();\n return (SUBACTIONS as readonly string[]).includes(lower)\n ? (lower as Subaction)\n : null;\n}\n\nfunction resolveSubaction(\n params: ConflictDetectActionParameters,\n): Subaction | null {\n return (\n normalizeSubaction(params.subaction) ??\n normalizeSubaction(params.action) ??\n normalizeSubaction(params.op)\n );\n}\n\nfunction startOfDayIso(now: Date): string {\n const d = new Date(now);\n d.setUTCHours(0, 0, 0, 0);\n return d.toISOString();\n}\n\nfunction endOfDayIso(now: Date): string {\n const d = new Date(now);\n d.setUTCHours(23, 59, 59, 999);\n return d.toISOString();\n}\n\nfunction endOfWeekIso(now: Date): string {\n const d = new Date(now);\n d.setUTCDate(d.getUTCDate() + 7);\n d.setUTCHours(23, 59, 59, 999);\n return d.toISOString();\n}\n\nfunction resolveRange(\n params: ConflictDetectActionParameters,\n subaction: Subaction,\n now: Date = new Date(),\n): ConflictRange | null {\n const raw = params.range;\n\n if (typeof raw === \"object\" && raw && \"start\" in raw && \"end\" in raw) {\n const candidate = raw as ConflictRange;\n if (\n typeof candidate.start === \"string\" &&\n typeof candidate.end === \"string\"\n ) {\n return candidate;\n }\n return null;\n }\n\n const named =\n typeof raw === \"string\"\n ? raw.trim().toLowerCase()\n : subaction === \"scan_week\"\n ? \"week\"\n : \"today\";\n\n if (named === \"today\") {\n return { start: startOfDayIso(now), end: endOfDayIso(now) };\n }\n if (named === \"week\") {\n return { start: startOfDayIso(now), end: endOfWeekIso(now) };\n }\n return null;\n}\n\nfunction overlaps(a: ConflictDetectEvent, b: ConflictDetectEvent): boolean {\n const aStart = Date.parse(a.startISO);\n const aEnd = Date.parse(a.endISO);\n const bStart = Date.parse(b.startISO);\n const bEnd = Date.parse(b.endISO);\n if (\n Number.isNaN(aStart) ||\n Number.isNaN(aEnd) ||\n Number.isNaN(bStart) ||\n Number.isNaN(bEnd)\n ) {\n return false;\n }\n return aStart < bEnd && bStart < aEnd;\n}\n\nfunction computeSeverity(\n a: ConflictDetectEvent,\n b: ConflictDetectEvent,\n): ConflictSeverity {\n const aAttendees = new Set(a.attendees ?? []);\n const bAttendees = new Set(b.attendees ?? []);\n for (const attendee of aAttendees) {\n if (bAttendees.has(attendee)) {\n return \"hard\";\n }\n }\n return \"warning\";\n}\n\nfunction suggestionFor(\n a: ConflictDetectEvent,\n b: ConflictDetectEvent,\n severity: ConflictSeverity,\n): string {\n if (severity === \"hard\") {\n return `Move \"${b.title}\" — it shares attendees with \"${a.title}\".`;\n }\n return `Buffer between \"${a.title}\" and \"${b.title}\" — they overlap without shared attendees.`;\n}\n\nfunction detectConflicts(\n events: readonly ConflictDetectEvent[],\n): readonly ConflictDetectPair[] {\n const conflicts: ConflictDetectPair[] = [];\n for (let i = 0; i < events.length; i += 1) {\n for (let j = i + 1; j < events.length; j += 1) {\n const a = events[i];\n const b = events[j];\n if (!a || !b) continue;\n if (!overlaps(a, b)) continue;\n const severity = computeSeverity(a, b);\n conflicts.push({\n eventA: a,\n eventB: b,\n severity,\n suggestion: suggestionFor(a, b, severity),\n });\n }\n }\n return conflicts;\n}\n\nfunction detectProposalConflicts(args: {\n proposal: ConflictDetectProposal;\n feed: readonly ConflictDetectEvent[];\n freeBusy: readonly ConflictDetectEvent[];\n}): readonly ConflictDetectPair[] {\n const proposalEvent: ConflictDetectEvent = {\n id: \"proposal\",\n title: \"Proposed event\",\n startISO: args.proposal.startISO,\n endISO: args.proposal.endISO,\n ...(args.proposal.attendees ? { attendees: args.proposal.attendees } : {}),\n };\n const conflicts: ConflictDetectPair[] = [];\n for (const candidate of [...args.feed, ...args.freeBusy]) {\n if (!overlaps(proposalEvent, candidate)) continue;\n const severity = computeSeverity(proposalEvent, candidate);\n conflicts.push({\n eventA: proposalEvent,\n eventB: candidate,\n severity,\n suggestion: suggestionFor(proposalEvent, candidate, severity),\n });\n }\n return conflicts;\n}\n\nfunction summarize(conflicts: readonly ConflictDetectPair[]): string {\n if (conflicts.length === 0) return \"No conflicts detected.\";\n const hard = conflicts.filter((c) => c.severity === \"hard\").length;\n const warn = conflicts.length - hard;\n if (hard > 0 && warn > 0) {\n return `${hard} hard conflict(s) and ${warn} warning(s) detected.`;\n }\n if (hard > 0) {\n return `${hard} hard conflict(s) detected.`;\n }\n return `${warn} warning(s) detected.`;\n}\n\nconst examples: ActionExample[][] = [\n [\n {\n name: \"{{name1}}\",\n content: { text: \"Any conflicts on my calendar today?\" },\n },\n {\n name: \"{{agentName}}\",\n content: {\n text: \"Scanned today's calendar for conflicts.\",\n action: ACTION_NAME,\n },\n },\n ],\n [\n {\n name: \"{{name1}}\",\n content: { text: \"Check this slot against my week before I send it.\" },\n },\n {\n name: \"{{agentName}}\",\n content: {\n text: \"Checked the proposal against your calendar.\",\n action: ACTION_NAME,\n },\n },\n ],\n];\n\nexport const conflictDetectAction: Action & {\n suppressPostActionContinuation?: boolean;\n} = {\n name: ACTION_NAME,\n similes: SIMILE_NAMES.slice(),\n tags: [\n \"domain:calendar\",\n \"capability:read\",\n \"capability:scan\",\n \"surface:internal\",\n ],\n description:\n \"Scan owner calendar overlaps. Compare proposed window vs owner feed. Subactions: scan_today, scan_week, scan_event_proposal.\",\n descriptionCompressed:\n \"calendar conflicts: scan_today|scan_week|scan_event_proposal; severity warning|hard\",\n routingHint:\n 'calendar conflict-scan (\"conflicts today\", \"does this slot work\", \"scan week overlaps\") -> CONFLICT_DETECT; conflict-on-create -> CALENDAR.create_event',\n contexts: [\"calendar\", \"scheduling\", \"conflicts\"],\n roleGate: { minRole: \"OWNER\" },\n suppressPostActionContinuation: true,\n validate: async (runtime, message) => hasLifeOpsAccess(runtime, message),\n parameters: [\n {\n name: \"action\",\n description: \"Conflict op: scan_today | scan_week | scan_event_proposal.\",\n schema: { type: \"string\" as const, enum: [...SUBACTIONS] },\n },\n {\n name: \"range\",\n description:\n \"'today' | 'week' or { start, end } ISO window. Default subaction range.\",\n schema: { type: \"object\" as const, additionalProperties: true },\n },\n {\n name: \"proposal\",\n description:\n \"scan_event_proposal candidate: { startISO, endISO, attendees? }.\",\n schema: { type: \"object\" as const, additionalProperties: true },\n },\n ],\n examples,\n handler: async (\n runtime: IAgentRuntime,\n message: Memory,\n _state,\n options,\n callback: HandlerCallback | undefined,\n ): Promise<ActionResult> => {\n if (!(await hasLifeOpsAccess(runtime, message))) {\n const text = \"Conflict scans are restricted to the owner.\";\n await callback?.({ text });\n return { text, success: false, data: { error: \"PERMISSION_DENIED\" } };\n }\n\n const params = getParams(options);\n const subaction = resolveSubaction(params);\n if (!subaction) {\n return {\n success: false,\n text: \"Tell me which scan to run: scan_today, scan_week, or scan_event_proposal.\",\n data: { error: \"MISSING_SUBACTION\" },\n };\n }\n\n const range = resolveRange(params, subaction);\n if (!range) {\n return {\n success: false,\n text: \"I need a valid range (today | week | { start, end }) to scan.\",\n data: { subaction, error: \"INVALID_RANGE\" },\n };\n }\n\n if (subaction === \"scan_event_proposal\") {\n const proposal = params.proposal;\n if (\n !proposal ||\n typeof proposal.startISO !== \"string\" ||\n typeof proposal.endISO !== \"string\"\n ) {\n return {\n success: false,\n text: \"I need a proposal with startISO and endISO to evaluate.\",\n data: { subaction, error: \"MISSING_PROPOSAL\" },\n };\n }\n const [feed, freeBusy] = await Promise.all([\n activeLoader.loadFeed({ runtime, range }),\n activeLoader.loadFreeBusy({ runtime, proposal, range }),\n ]);\n const conflicts = detectProposalConflicts({ proposal, feed, freeBusy });\n const summary = summarize(conflicts);\n const checkedEvents = feed.length + freeBusy.length;\n logger.info(\n `[CONFLICT_DETECT] ${subaction} feed=${feed.length} freeBusy=${freeBusy.length} conflicts=${conflicts.length}`,\n );\n await callback?.({\n text: summary,\n source: \"action\",\n action: ACTION_NAME,\n });\n return {\n success: true,\n text: summary,\n data: {\n subaction,\n range,\n conflicts,\n summary,\n checkedEvents,\n },\n };\n }\n\n const feed = await activeLoader.loadFeed({ runtime, range });\n const conflicts = detectConflicts(feed);\n const summary = summarize(conflicts);\n logger.info(\n `[CONFLICT_DETECT] ${subaction} feed=${feed.length} conflicts=${conflicts.length}`,\n );\n await callback?.({\n text: summary,\n source: \"action\",\n action: ACTION_NAME,\n });\n return {\n success: true,\n text: summary,\n data: {\n subaction,\n range,\n conflicts,\n summary,\n checkedEvents: feed.length,\n },\n };\n },\n};\n"],"mappings":"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","names":["feed","conflicts","summary"]}
@@ -0,0 +1,5 @@
1
+ import type { Action } from "@elizaos/core";
2
+ export declare const connectorAction: Action & {
3
+ suppressPostActionContinuation?: boolean;
4
+ };
5
+ //# sourceMappingURL=connector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connector.d.ts","sourceRoot":"","sources":["../../src/actions/connector.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,MAAM,EAQP,MAAM,eAAe,CAAC;AA03CvB,eAAO,MAAM,eAAe,EAAE,MAAM,GAAG;IACrC,8BAA8B,CAAC,EAAE,OAAO,CAAC;CA8S1C,CAAC"}