@elizaos/plugin-personal-assistant 2.0.3-beta.6 → 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.
- package/dist/actions/app-block.d.ts +15 -0
- package/dist/actions/app-block.d.ts.map +1 -0
- package/dist/actions/app-block.js +349 -0
- package/dist/actions/app-block.js.map +1 -0
- package/dist/actions/autofill.d.ts +20 -0
- package/dist/actions/autofill.d.ts.map +1 -0
- package/dist/actions/autofill.js +370 -0
- package/dist/actions/autofill.js.map +1 -0
- package/dist/actions/block.d.ts +30 -0
- package/dist/actions/block.d.ts.map +1 -0
- package/dist/actions/block.js +326 -0
- package/dist/actions/block.js.map +1 -0
- package/dist/actions/book-travel.d.ts +10 -0
- package/dist/actions/book-travel.d.ts.map +1 -0
- package/dist/actions/book-travel.js +467 -0
- package/dist/actions/book-travel.js.map +1 -0
- package/dist/actions/brief.d.ts +60 -0
- package/dist/actions/brief.d.ts.map +1 -0
- package/dist/actions/brief.js +485 -0
- package/dist/actions/brief.js.map +1 -0
- package/dist/actions/calendar.d.ts +22 -0
- package/dist/actions/calendar.d.ts.map +1 -0
- package/dist/actions/calendar.js +832 -0
- package/dist/actions/calendar.js.map +1 -0
- package/dist/actions/conflict-detect.d.ts +67 -0
- package/dist/actions/conflict-detect.d.ts.map +1 -0
- package/dist/actions/conflict-detect.js +310 -0
- package/dist/actions/conflict-detect.js.map +1 -0
- package/dist/actions/connector.d.ts +5 -0
- package/dist/actions/connector.d.ts.map +1 -0
- package/dist/actions/connector.js +1354 -0
- package/dist/actions/connector.js.map +1 -0
- package/dist/actions/credentials.d.ts +14 -0
- package/dist/actions/credentials.d.ts.map +1 -0
- package/dist/actions/credentials.js +191 -0
- package/dist/actions/credentials.js.map +1 -0
- package/dist/actions/document.d.ts +36 -0
- package/dist/actions/document.d.ts.map +1 -0
- package/dist/actions/document.js +613 -0
- package/dist/actions/document.js.map +1 -0
- package/dist/actions/entity.d.ts +20 -0
- package/dist/actions/entity.d.ts.map +1 -0
- package/dist/actions/entity.js +785 -0
- package/dist/actions/entity.js.map +1 -0
- package/dist/actions/health.d.ts +4 -0
- package/dist/actions/health.d.ts.map +1 -0
- package/dist/actions/health.js +37 -0
- package/dist/actions/health.js.map +1 -0
- package/dist/actions/inbox.d.ts +12 -0
- package/dist/actions/inbox.d.ts.map +1 -0
- package/dist/actions/inbox.js +13 -0
- package/dist/actions/inbox.js.map +1 -0
- package/dist/actions/lib/calendly-handler.d.ts +3 -0
- package/dist/actions/lib/calendly-handler.d.ts.map +1 -0
- package/dist/actions/lib/calendly-handler.js +506 -0
- package/dist/actions/lib/calendly-handler.js.map +1 -0
- package/dist/actions/lib/extract-goal-plan.d.ts +69 -0
- package/dist/actions/lib/extract-goal-plan.d.ts.map +1 -0
- package/dist/actions/lib/extract-goal-plan.js +488 -0
- package/dist/actions/lib/extract-goal-plan.js.map +1 -0
- package/dist/actions/lib/extract-life-operation.d.ts +18 -0
- package/dist/actions/lib/extract-life-operation.d.ts.map +1 -0
- package/dist/actions/lib/extract-life-operation.js +318 -0
- package/dist/actions/lib/extract-life-operation.js.map +1 -0
- package/dist/actions/lib/extract-task-plan.d.ts +78 -0
- package/dist/actions/lib/extract-task-plan.d.ts.map +1 -0
- package/dist/actions/lib/extract-task-plan.js +355 -0
- package/dist/actions/lib/extract-task-plan.js.map +1 -0
- package/dist/actions/lib/extract-update-fields.d.ts +27 -0
- package/dist/actions/lib/extract-update-fields.d.ts.map +1 -0
- package/dist/actions/lib/extract-update-fields.js +172 -0
- package/dist/actions/lib/extract-update-fields.js.map +1 -0
- package/dist/actions/lib/lifeops-deferred-draft.d.ts +68 -0
- package/dist/actions/lib/lifeops-deferred-draft.d.ts.map +1 -0
- package/dist/actions/lib/lifeops-deferred-draft.js +315 -0
- package/dist/actions/lib/lifeops-deferred-draft.js.map +1 -0
- package/dist/actions/lib/messaging-helpers.d.ts +20 -0
- package/dist/actions/lib/messaging-helpers.d.ts.map +1 -0
- package/dist/actions/lib/messaging-helpers.js +103 -0
- package/dist/actions/lib/messaging-helpers.js.map +1 -0
- package/dist/actions/lib/owner-policy-writes.d.ts +49 -0
- package/dist/actions/lib/owner-policy-writes.d.ts.map +1 -0
- package/dist/actions/lib/owner-policy-writes.js +157 -0
- package/dist/actions/lib/owner-policy-writes.js.map +1 -0
- package/dist/actions/lib/prompt-format.d.ts +3 -0
- package/dist/actions/lib/prompt-format.d.ts.map +1 -0
- package/dist/actions/lib/prompt-format.js +42 -0
- package/dist/actions/lib/prompt-format.js.map +1 -0
- package/dist/actions/lib/scheduling-handler.d.ts +93 -0
- package/dist/actions/lib/scheduling-handler.d.ts.map +1 -0
- package/dist/actions/lib/scheduling-handler.js +868 -0
- package/dist/actions/lib/scheduling-handler.js.map +1 -0
- package/dist/actions/life.d.ts +13 -0
- package/dist/actions/life.d.ts.map +1 -0
- package/dist/actions/life.js +2524 -0
- package/dist/actions/life.js.map +1 -0
- package/dist/actions/money.d.ts +24 -0
- package/dist/actions/money.d.ts.map +1 -0
- package/dist/actions/money.js +41 -0
- package/dist/actions/money.js.map +1 -0
- package/dist/actions/owner-surfaces.d.ts +11 -0
- package/dist/actions/owner-surfaces.d.ts.map +1 -0
- package/dist/actions/owner-surfaces.js +493 -0
- package/dist/actions/owner-surfaces.js.map +1 -0
- package/dist/actions/password-manager.d.ts +10 -0
- package/dist/actions/password-manager.d.ts.map +1 -0
- package/dist/actions/password-manager.js +195 -0
- package/dist/actions/password-manager.js.map +1 -0
- package/dist/actions/payments.d.ts +10 -0
- package/dist/actions/payments.d.ts.map +1 -0
- package/dist/actions/payments.js +5 -0
- package/dist/actions/payments.js.map +1 -0
- package/dist/actions/prioritize.d.ts +49 -0
- package/dist/actions/prioritize.d.ts.map +1 -0
- package/dist/actions/prioritize.js +313 -0
- package/dist/actions/prioritize.js.map +1 -0
- package/dist/actions/remote-desktop.d.ts +13 -0
- package/dist/actions/remote-desktop.d.ts.map +1 -0
- package/dist/actions/remote-desktop.js +11 -0
- package/dist/actions/remote-desktop.js.map +1 -0
- package/dist/actions/resolve-request.d.ts +12 -0
- package/dist/actions/resolve-request.d.ts.map +1 -0
- package/dist/actions/resolve-request.js +427 -0
- package/dist/actions/resolve-request.js.map +1 -0
- package/dist/actions/schedule.d.ts +10 -0
- package/dist/actions/schedule.d.ts.map +1 -0
- package/dist/actions/schedule.js +113 -0
- package/dist/actions/schedule.js.map +1 -0
- package/dist/actions/scheduled-task.d.ts +32 -0
- package/dist/actions/scheduled-task.d.ts.map +1 -0
- package/dist/actions/scheduled-task.js +661 -0
- package/dist/actions/scheduled-task.js.map +1 -0
- package/dist/actions/screen-time.d.ts +4 -0
- package/dist/actions/screen-time.d.ts.map +1 -0
- package/dist/actions/screen-time.js +47 -0
- package/dist/actions/screen-time.js.map +1 -0
- package/dist/actions/subscriptions.d.ts +8 -0
- package/dist/actions/subscriptions.d.ts.map +1 -0
- package/dist/actions/subscriptions.js +327 -0
- package/dist/actions/subscriptions.js.map +1 -0
- package/dist/actions/voice-call.d.ts +16 -0
- package/dist/actions/voice-call.d.ts.map +1 -0
- package/dist/actions/voice-call.js +756 -0
- package/dist/actions/voice-call.js.map +1 -0
- package/dist/actions/website-block.d.ts +15 -0
- package/dist/actions/website-block.d.ts.map +1 -0
- package/dist/actions/website-block.js +719 -0
- package/dist/actions/website-block.js.map +1 -0
- package/dist/actions/work-thread.d.ts +5 -0
- package/dist/actions/work-thread.d.ts.map +1 -0
- package/dist/actions/work-thread.js +556 -0
- package/dist/actions/work-thread.js.map +1 -0
- package/dist/activity-profile/activity-tracker-repo.d.ts +28 -0
- package/dist/activity-profile/activity-tracker-repo.d.ts.map +1 -0
- package/dist/activity-profile/activity-tracker-repo.js +61 -0
- package/dist/activity-profile/activity-tracker-repo.js.map +1 -0
- package/dist/activity-profile/activity-tracker-reporting.d.ts +52 -0
- package/dist/activity-profile/activity-tracker-reporting.d.ts.map +1 -0
- package/dist/activity-profile/activity-tracker-reporting.js +119 -0
- package/dist/activity-profile/activity-tracker-reporting.js.map +1 -0
- package/dist/activity-profile/activity-tracker-service.d.ts +36 -0
- package/dist/activity-profile/activity-tracker-service.d.ts.map +1 -0
- package/dist/activity-profile/activity-tracker-service.js +187 -0
- package/dist/activity-profile/activity-tracker-service.js.map +1 -0
- package/dist/activity-profile/analyzer.d.ts +23 -0
- package/dist/activity-profile/analyzer.d.ts.map +1 -0
- package/dist/activity-profile/analyzer.js +485 -0
- package/dist/activity-profile/analyzer.js.map +1 -0
- package/dist/activity-profile/presence-signal-bridge-service.d.ts +14 -0
- package/dist/activity-profile/presence-signal-bridge-service.d.ts.map +1 -0
- package/dist/activity-profile/presence-signal-bridge-service.js +159 -0
- package/dist/activity-profile/presence-signal-bridge-service.js.map +1 -0
- package/dist/activity-profile/proactive-inbox-digest.d.ts +3 -0
- package/dist/activity-profile/proactive-inbox-digest.d.ts.map +1 -0
- package/dist/activity-profile/proactive-inbox-digest.js +21 -0
- package/dist/activity-profile/proactive-inbox-digest.js.map +1 -0
- package/dist/activity-profile/proactive-planner.d.ts +150 -0
- package/dist/activity-profile/proactive-planner.d.ts.map +1 -0
- package/dist/activity-profile/proactive-planner.js +529 -0
- package/dist/activity-profile/proactive-planner.js.map +1 -0
- package/dist/activity-profile/proactive-worker.d.ts +33 -0
- package/dist/activity-profile/proactive-worker.d.ts.map +1 -0
- package/dist/activity-profile/proactive-worker.js +779 -0
- package/dist/activity-profile/proactive-worker.js.map +1 -0
- package/dist/activity-profile/profile-metadata.d.ts +10 -0
- package/dist/activity-profile/profile-metadata.d.ts.map +1 -0
- package/dist/activity-profile/profile-metadata.js +16 -0
- package/dist/activity-profile/profile-metadata.js.map +1 -0
- package/dist/activity-profile/redactor.d.ts +15 -0
- package/dist/activity-profile/redactor.d.ts.map +1 -0
- package/dist/activity-profile/redactor.js +22 -0
- package/dist/activity-profile/redactor.js.map +1 -0
- package/dist/activity-profile/service.d.ts +11 -0
- package/dist/activity-profile/service.d.ts.map +1 -0
- package/dist/activity-profile/service.js +272 -0
- package/dist/activity-profile/service.js.map +1 -0
- package/dist/activity-profile/types.d.ts +97 -0
- package/dist/activity-profile/types.d.ts.map +1 -0
- package/dist/activity-profile/types.js +36 -0
- package/dist/activity-profile/types.js.map +1 -0
- package/dist/agent-lifeops.d.ts +2 -0
- package/dist/agent-lifeops.d.ts.map +1 -0
- package/dist/agent-lifeops.js +2 -0
- package/dist/agent-lifeops.js.map +1 -0
- package/dist/api/client-lifeops.d.ts +319 -0
- package/dist/api/client-lifeops.d.ts.map +1 -0
- package/dist/api/client-lifeops.js +794 -0
- package/dist/api/client-lifeops.js.map +1 -0
- package/dist/automation-node-contributor.d.ts +2 -0
- package/dist/automation-node-contributor.d.ts.map +1 -0
- package/dist/automation-node-contributor.js +184 -0
- package/dist/automation-node-contributor.js.map +1 -0
- package/dist/client.d.ts +16 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +18 -0
- package/dist/client.js.map +1 -0
- package/dist/components/AppBlockerSettingsCard.d.ts +3 -0
- package/dist/components/AppBlockerSettingsCard.d.ts.map +1 -0
- package/dist/components/AppBlockerSettingsCard.js +538 -0
- package/dist/components/AppBlockerSettingsCard.js.map +1 -0
- package/dist/components/WebsiteBlockerSettingsCard.d.ts +3 -0
- package/dist/components/WebsiteBlockerSettingsCard.d.ts.map +1 -0
- package/dist/components/WebsiteBlockerSettingsCard.js +148 -0
- package/dist/components/WebsiteBlockerSettingsCard.js.map +1 -0
- package/dist/contracts/index.d.ts +2 -0
- package/dist/contracts/index.d.ts.map +1 -0
- package/dist/contracts/index.js +2 -0
- package/dist/contracts/index.js.map +1 -0
- package/dist/contracts/lifeops.d.ts +2 -0
- package/dist/contracts/lifeops.d.ts.map +1 -0
- package/dist/contracts/lifeops.js +2 -0
- package/dist/contracts/lifeops.js.map +1 -0
- package/dist/default-packs/autofill-whitelist-pack.d.ts +17 -0
- package/dist/default-packs/autofill-whitelist-pack.d.ts.map +1 -0
- package/dist/default-packs/autofill-whitelist-pack.js +56 -0
- package/dist/default-packs/autofill-whitelist-pack.js.map +1 -0
- package/dist/default-packs/consolidation-policies.d.ts +14 -0
- package/dist/default-packs/consolidation-policies.d.ts.map +1 -0
- package/dist/default-packs/consolidation-policies.js +17 -0
- package/dist/default-packs/consolidation-policies.js.map +1 -0
- package/dist/default-packs/contract-types.d.ts +200 -0
- package/dist/default-packs/contract-types.d.ts.map +1 -0
- package/dist/default-packs/contract-types.js +1 -0
- package/dist/default-packs/contract-types.js.map +1 -0
- package/dist/default-packs/daily-rhythm.d.ts +28 -0
- package/dist/default-packs/daily-rhythm.d.ts.map +1 -0
- package/dist/default-packs/daily-rhythm.js +136 -0
- package/dist/default-packs/daily-rhythm.js.map +1 -0
- package/dist/default-packs/escalation-ladders.d.ts +18 -0
- package/dist/default-packs/escalation-ladders.d.ts.map +1 -0
- package/dist/default-packs/escalation-ladders.js +17 -0
- package/dist/default-packs/escalation-ladders.js.map +1 -0
- package/dist/default-packs/executive-assistant.d.ts +50 -0
- package/dist/default-packs/executive-assistant.d.ts.map +1 -0
- package/dist/default-packs/executive-assistant.js +745 -0
- package/dist/default-packs/executive-assistant.js.map +1 -0
- package/dist/default-packs/followup-starter.d.ts +49 -0
- package/dist/default-packs/followup-starter.d.ts.map +1 -0
- package/dist/default-packs/followup-starter.js +104 -0
- package/dist/default-packs/followup-starter.js.map +1 -0
- package/dist/default-packs/habit-starters.d.ts +37 -0
- package/dist/default-packs/habit-starters.d.ts.map +1 -0
- package/dist/default-packs/habit-starters.js +255 -0
- package/dist/default-packs/habit-starters.js.map +1 -0
- package/dist/default-packs/inbox-triage-starter.d.ts +23 -0
- package/dist/default-packs/inbox-triage-starter.d.ts.map +1 -0
- package/dist/default-packs/inbox-triage-starter.js +61 -0
- package/dist/default-packs/inbox-triage-starter.js.map +1 -0
- package/dist/default-packs/index.d.ts +54 -0
- package/dist/default-packs/index.d.ts.map +1 -0
- package/dist/default-packs/index.js +150 -0
- package/dist/default-packs/index.js.map +1 -0
- package/dist/default-packs/lint.d.ts +62 -0
- package/dist/default-packs/lint.d.ts.map +1 -0
- package/dist/default-packs/lint.js +161 -0
- package/dist/default-packs/lint.js.map +1 -0
- package/dist/default-packs/morning-brief.d.ts +44 -0
- package/dist/default-packs/morning-brief.d.ts.map +1 -0
- package/dist/default-packs/morning-brief.js +69 -0
- package/dist/default-packs/morning-brief.js.map +1 -0
- package/dist/default-packs/quiet-user-watcher.d.ts +49 -0
- package/dist/default-packs/quiet-user-watcher.d.ts.map +1 -0
- package/dist/default-packs/quiet-user-watcher.js +92 -0
- package/dist/default-packs/quiet-user-watcher.js.map +1 -0
- package/dist/default-packs/registry-types.d.ts +51 -0
- package/dist/default-packs/registry-types.d.ts.map +1 -0
- package/dist/default-packs/registry-types.js +1 -0
- package/dist/default-packs/registry-types.js.map +1 -0
- package/dist/default-packs/task-definitions.d.ts +88 -0
- package/dist/default-packs/task-definitions.d.ts.map +1 -0
- package/dist/default-packs/task-definitions.js +87 -0
- package/dist/default-packs/task-definitions.js.map +1 -0
- package/dist/events/index.d.ts +34 -0
- package/dist/events/index.d.ts.map +1 -0
- package/dist/events/index.js +30 -0
- package/dist/events/index.js.map +1 -0
- package/dist/followup/actions/listOverdueFollowups.d.ts +3 -0
- package/dist/followup/actions/listOverdueFollowups.d.ts.map +1 -0
- package/dist/followup/actions/listOverdueFollowups.js +90 -0
- package/dist/followup/actions/listOverdueFollowups.js.map +1 -0
- package/dist/followup/actions/markFollowupDone.d.ts +3 -0
- package/dist/followup/actions/markFollowupDone.d.ts.map +1 -0
- package/dist/followup/actions/markFollowupDone.js +171 -0
- package/dist/followup/actions/markFollowupDone.js.map +1 -0
- package/dist/followup/actions/setFollowupThreshold.d.ts +3 -0
- package/dist/followup/actions/setFollowupThreshold.d.ts.map +1 -0
- package/dist/followup/actions/setFollowupThreshold.js +171 -0
- package/dist/followup/actions/setFollowupThreshold.js.map +1 -0
- package/dist/followup/followup-tracker.d.ts +83 -0
- package/dist/followup/followup-tracker.d.ts.map +1 -0
- package/dist/followup/followup-tracker.js +311 -0
- package/dist/followup/followup-tracker.js.map +1 -0
- package/dist/followup/index.d.ts +5 -0
- package/dist/followup/index.d.ts.map +1 -0
- package/dist/followup/index.js +39 -0
- package/dist/followup/index.js.map +1 -0
- package/dist/hooks/connector-error.d.ts +2 -0
- package/dist/hooks/connector-error.d.ts.map +1 -0
- package/dist/hooks/connector-error.js +13 -0
- package/dist/hooks/connector-error.js.map +1 -0
- package/dist/hooks/useDiscordConnector.d.ts +11 -0
- package/dist/hooks/useDiscordConnector.d.ts.map +1 -0
- package/dist/hooks/useDiscordConnector.js +95 -0
- package/dist/hooks/useDiscordConnector.js.map +1 -0
- package/dist/hooks/useGoogleLifeOpsConnector.d.ts +23 -0
- package/dist/hooks/useGoogleLifeOpsConnector.d.ts.map +1 -0
- package/dist/hooks/useGoogleLifeOpsConnector.js +630 -0
- package/dist/hooks/useGoogleLifeOpsConnector.js.map +1 -0
- package/dist/hooks/useIMessageConnector.d.ts +10 -0
- package/dist/hooks/useIMessageConnector.d.ts.map +1 -0
- package/dist/hooks/useIMessageConnector.js +57 -0
- package/dist/hooks/useIMessageConnector.js.map +1 -0
- package/dist/hooks/useInbox.d.ts +36 -0
- package/dist/hooks/useInbox.d.ts.map +1 -0
- package/dist/hooks/useInbox.js +96 -0
- package/dist/hooks/useInbox.js.map +1 -0
- package/dist/hooks/useLifeOpsActivitySignals.d.ts +2 -0
- package/dist/hooks/useLifeOpsActivitySignals.d.ts.map +1 -0
- package/dist/hooks/useLifeOpsActivitySignals.js +358 -0
- package/dist/hooks/useLifeOpsActivitySignals.js.map +1 -0
- package/dist/hooks/useLifeOpsAppState.d.ts +9 -0
- package/dist/hooks/useLifeOpsAppState.d.ts.map +1 -0
- package/dist/hooks/useLifeOpsAppState.js +79 -0
- package/dist/hooks/useLifeOpsAppState.js.map +1 -0
- package/dist/hooks/useLifeOpsCapabilitiesStatus.d.ts +8 -0
- package/dist/hooks/useLifeOpsCapabilitiesStatus.d.ts.map +1 -0
- package/dist/hooks/useLifeOpsCapabilitiesStatus.js +60 -0
- package/dist/hooks/useLifeOpsCapabilitiesStatus.js.map +1 -0
- package/dist/hooks/useLifeOpsXConnector.d.ts +11 -0
- package/dist/hooks/useLifeOpsXConnector.d.ts.map +1 -0
- package/dist/hooks/useLifeOpsXConnector.js +92 -0
- package/dist/hooks/useLifeOpsXConnector.js.map +1 -0
- package/dist/hooks/useSignalConnector.d.ts +14 -0
- package/dist/hooks/useSignalConnector.d.ts.map +1 -0
- package/dist/hooks/useSignalConnector.js +89 -0
- package/dist/hooks/useSignalConnector.js.map +1 -0
- package/dist/hooks/useTelegramConnector.d.ts +14 -0
- package/dist/hooks/useTelegramConnector.d.ts.map +1 -0
- package/dist/hooks/useTelegramConnector.js +97 -0
- package/dist/hooks/useTelegramConnector.js.map +1 -0
- package/dist/hooks/useWhatsAppConnector.d.ts +8 -0
- package/dist/hooks/useWhatsAppConnector.d.ts.map +1 -0
- package/dist/hooks/useWhatsAppConnector.js +62 -0
- package/dist/hooks/useWhatsAppConnector.js.map +1 -0
- package/dist/inbox/message-fetcher.d.ts +11 -0
- package/dist/inbox/message-fetcher.d.ts.map +1 -0
- package/dist/inbox/message-fetcher.js +13 -0
- package/dist/inbox/message-fetcher.js.map +1 -0
- package/dist/inbox/repository.d.ts +11 -0
- package/dist/inbox/repository.d.ts.map +1 -0
- package/dist/inbox/repository.js +5 -0
- package/dist/inbox/repository.js.map +1 -0
- package/dist/inbox/types.d.ts +10 -0
- package/dist/inbox/types.d.ts.map +1 -0
- package/dist/inbox/types.js +2 -0
- package/dist/inbox/types.js.map +1 -0
- package/dist/index.d.ts +36 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +188 -0
- package/dist/index.js.map +1 -0
- package/dist/lifeops/access.d.ts +29 -0
- package/dist/lifeops/access.d.ts.map +1 -0
- package/dist/lifeops/access.js +56 -0
- package/dist/lifeops/access.js.map +1 -0
- package/dist/lifeops/app-state.d.ts +22 -0
- package/dist/lifeops/app-state.d.ts.map +1 -0
- package/dist/lifeops/app-state.js +67 -0
- package/dist/lifeops/app-state.js.map +1 -0
- package/dist/lifeops/apple-reminders.d.ts +67 -0
- package/dist/lifeops/apple-reminders.d.ts.map +1 -0
- package/dist/lifeops/apple-reminders.js +396 -0
- package/dist/lifeops/apple-reminders.js.map +1 -0
- package/dist/lifeops/approval-queue.d.ts +38 -0
- package/dist/lifeops/approval-queue.d.ts.map +1 -0
- package/dist/lifeops/approval-queue.js +575 -0
- package/dist/lifeops/approval-queue.js.map +1 -0
- package/dist/lifeops/approval-queue.types.d.ts +172 -0
- package/dist/lifeops/approval-queue.types.d.ts.map +1 -0
- package/dist/lifeops/approval-queue.types.js +27 -0
- package/dist/lifeops/approval-queue.types.js.map +1 -0
- package/dist/lifeops/autofill-whitelist.d.ts +20 -0
- package/dist/lifeops/autofill-whitelist.d.ts.map +1 -0
- package/dist/lifeops/autofill-whitelist.js +59 -0
- package/dist/lifeops/autofill-whitelist.js.map +1 -0
- package/dist/lifeops/background-planner-dispatch.d.ts +60 -0
- package/dist/lifeops/background-planner-dispatch.d.ts.map +1 -0
- package/dist/lifeops/background-planner-dispatch.js +113 -0
- package/dist/lifeops/background-planner-dispatch.js.map +1 -0
- package/dist/lifeops/background-planner.d.ts +140 -0
- package/dist/lifeops/background-planner.d.ts.map +1 -0
- package/dist/lifeops/background-planner.js +359 -0
- package/dist/lifeops/background-planner.js.map +1 -0
- package/dist/lifeops/bill-extraction.d.ts +46 -0
- package/dist/lifeops/bill-extraction.d.ts.map +1 -0
- package/dist/lifeops/bill-extraction.js +325 -0
- package/dist/lifeops/bill-extraction.js.map +1 -0
- package/dist/lifeops/browser-constants.d.ts +4 -0
- package/dist/lifeops/browser-constants.d.ts.map +1 -0
- package/dist/lifeops/browser-constants.js +27 -0
- package/dist/lifeops/browser-constants.js.map +1 -0
- package/dist/lifeops/browser-extension-store.d.ts +61 -0
- package/dist/lifeops/browser-extension-store.d.ts.map +1 -0
- package/dist/lifeops/browser-extension-store.js +176 -0
- package/dist/lifeops/browser-extension-store.js.map +1 -0
- package/dist/lifeops/browser-session-lifecycle.d.ts +57 -0
- package/dist/lifeops/browser-session-lifecycle.d.ts.map +1 -0
- package/dist/lifeops/browser-session-lifecycle.js +308 -0
- package/dist/lifeops/browser-session-lifecycle.js.map +1 -0
- package/dist/lifeops/bulk-review.d.ts +333 -0
- package/dist/lifeops/bulk-review.d.ts.map +1 -0
- package/dist/lifeops/bulk-review.js +1120 -0
- package/dist/lifeops/bulk-review.js.map +1 -0
- package/dist/lifeops/calendar-gate.d.ts +20 -0
- package/dist/lifeops/calendar-gate.d.ts.map +1 -0
- package/dist/lifeops/calendar-gate.js +30 -0
- package/dist/lifeops/calendar-gate.js.map +1 -0
- package/dist/lifeops/channels/contract.d.ts +47 -0
- package/dist/lifeops/channels/contract.d.ts.map +1 -0
- package/dist/lifeops/channels/contract.js +1 -0
- package/dist/lifeops/channels/contract.js.map +1 -0
- package/dist/lifeops/channels/default-pack.d.ts +26 -0
- package/dist/lifeops/channels/default-pack.d.ts.map +1 -0
- package/dist/lifeops/channels/default-pack.js +243 -0
- package/dist/lifeops/channels/default-pack.js.map +1 -0
- package/dist/lifeops/channels/index.d.ts +5 -0
- package/dist/lifeops/channels/index.d.ts.map +1 -0
- package/dist/lifeops/channels/index.js +23 -0
- package/dist/lifeops/channels/index.js.map +1 -0
- package/dist/lifeops/channels/priority-posture.d.ts +36 -0
- package/dist/lifeops/channels/priority-posture.d.ts.map +1 -0
- package/dist/lifeops/channels/priority-posture.js +27 -0
- package/dist/lifeops/channels/priority-posture.js.map +1 -0
- package/dist/lifeops/channels/registry.d.ts +7 -0
- package/dist/lifeops/channels/registry.d.ts.map +1 -0
- package/dist/lifeops/channels/registry.js +49 -0
- package/dist/lifeops/channels/registry.js.map +1 -0
- package/dist/lifeops/checkin/checkin-service.d.ts +66 -0
- package/dist/lifeops/checkin/checkin-service.d.ts.map +1 -0
- package/dist/lifeops/checkin/checkin-service.js +1084 -0
- package/dist/lifeops/checkin/checkin-service.js.map +1 -0
- package/dist/lifeops/checkin/schedule-resolver.d.ts +17 -0
- package/dist/lifeops/checkin/schedule-resolver.d.ts.map +1 -0
- package/dist/lifeops/checkin/schedule-resolver.js +26 -0
- package/dist/lifeops/checkin/schedule-resolver.js.map +1 -0
- package/dist/lifeops/checkin/types.d.ts +106 -0
- package/dist/lifeops/checkin/types.d.ts.map +1 -0
- package/dist/lifeops/checkin/types.js +1 -0
- package/dist/lifeops/checkin/types.js.map +1 -0
- package/dist/lifeops/connectors/_helpers.d.ts +51 -0
- package/dist/lifeops/connectors/_helpers.d.ts.map +1 -0
- package/dist/lifeops/connectors/_helpers.js +104 -0
- package/dist/lifeops/connectors/_helpers.js.map +1 -0
- package/dist/lifeops/connectors/calendly.d.ts +11 -0
- package/dist/lifeops/connectors/calendly.d.ts.map +1 -0
- package/dist/lifeops/connectors/calendly.js +61 -0
- package/dist/lifeops/connectors/calendly.js.map +1 -0
- package/dist/lifeops/connectors/contract.d.ts +88 -0
- package/dist/lifeops/connectors/contract.d.ts.map +1 -0
- package/dist/lifeops/connectors/contract.js +1 -0
- package/dist/lifeops/connectors/contract.js.map +1 -0
- package/dist/lifeops/connectors/default-pack.d.ts +35 -0
- package/dist/lifeops/connectors/default-pack.d.ts.map +1 -0
- package/dist/lifeops/connectors/default-pack.js +37 -0
- package/dist/lifeops/connectors/default-pack.js.map +1 -0
- package/dist/lifeops/connectors/discord.d.ts +8 -0
- package/dist/lifeops/connectors/discord.d.ts.map +1 -0
- package/dist/lifeops/connectors/discord.js +53 -0
- package/dist/lifeops/connectors/discord.js.map +1 -0
- package/dist/lifeops/connectors/dispatch-policy.d.ts +75 -0
- package/dist/lifeops/connectors/dispatch-policy.d.ts.map +1 -0
- package/dist/lifeops/connectors/dispatch-policy.js +35 -0
- package/dist/lifeops/connectors/dispatch-policy.js.map +1 -0
- package/dist/lifeops/connectors/duffel.d.ts +11 -0
- package/dist/lifeops/connectors/duffel.d.ts.map +1 -0
- package/dist/lifeops/connectors/duffel.js +74 -0
- package/dist/lifeops/connectors/duffel.js.map +1 -0
- package/dist/lifeops/connectors/google.d.ts +27 -0
- package/dist/lifeops/connectors/google.d.ts.map +1 -0
- package/dist/lifeops/connectors/google.js +80 -0
- package/dist/lifeops/connectors/google.js.map +1 -0
- package/dist/lifeops/connectors/imessage.d.ts +11 -0
- package/dist/lifeops/connectors/imessage.d.ts.map +1 -0
- package/dist/lifeops/connectors/imessage.js +55 -0
- package/dist/lifeops/connectors/imessage.js.map +1 -0
- package/dist/lifeops/connectors/index.d.ts +5 -0
- package/dist/lifeops/connectors/index.d.ts.map +1 -0
- package/dist/lifeops/connectors/index.js +23 -0
- package/dist/lifeops/connectors/index.js.map +1 -0
- package/dist/lifeops/connectors/mockoon-redirect.d.ts +54 -0
- package/dist/lifeops/connectors/mockoon-redirect.d.ts.map +1 -0
- package/dist/lifeops/connectors/mockoon-redirect.js +71 -0
- package/dist/lifeops/connectors/mockoon-redirect.js.map +1 -0
- package/dist/lifeops/connectors/registry.d.ts +7 -0
- package/dist/lifeops/connectors/registry.d.ts.map +1 -0
- package/dist/lifeops/connectors/registry.js +55 -0
- package/dist/lifeops/connectors/registry.js.map +1 -0
- package/dist/lifeops/connectors/signal.d.ts +8 -0
- package/dist/lifeops/connectors/signal.d.ts.map +1 -0
- package/dist/lifeops/connectors/signal.js +60 -0
- package/dist/lifeops/connectors/signal.js.map +1 -0
- package/dist/lifeops/connectors/telegram.d.ts +12 -0
- package/dist/lifeops/connectors/telegram.d.ts.map +1 -0
- package/dist/lifeops/connectors/telegram.js +65 -0
- package/dist/lifeops/connectors/telegram.js.map +1 -0
- package/dist/lifeops/connectors/twilio.d.ts +15 -0
- package/dist/lifeops/connectors/twilio.d.ts.map +1 -0
- package/dist/lifeops/connectors/twilio.js +126 -0
- package/dist/lifeops/connectors/twilio.js.map +1 -0
- package/dist/lifeops/connectors/whatsapp.d.ts +10 -0
- package/dist/lifeops/connectors/whatsapp.d.ts.map +1 -0
- package/dist/lifeops/connectors/whatsapp.js +56 -0
- package/dist/lifeops/connectors/whatsapp.js.map +1 -0
- package/dist/lifeops/connectors/x.d.ts +8 -0
- package/dist/lifeops/connectors/x.d.ts.map +1 -0
- package/dist/lifeops/connectors/x.js +62 -0
- package/dist/lifeops/connectors/x.js.map +1 -0
- package/dist/lifeops/contact-route-policy.d.ts +27 -0
- package/dist/lifeops/contact-route-policy.d.ts.map +1 -0
- package/dist/lifeops/contact-route-policy.js +153 -0
- package/dist/lifeops/contact-route-policy.js.map +1 -0
- package/dist/lifeops/continuity-probe.d.ts +49 -0
- package/dist/lifeops/continuity-probe.d.ts.map +1 -0
- package/dist/lifeops/continuity-probe.js +161 -0
- package/dist/lifeops/continuity-probe.js.map +1 -0
- package/dist/lifeops/cross-channel-search.d.ts +108 -0
- package/dist/lifeops/cross-channel-search.d.ts.map +1 -0
- package/dist/lifeops/cross-channel-search.js +888 -0
- package/dist/lifeops/cross-channel-search.js.map +1 -0
- package/dist/lifeops/defaults.d.ts +30 -0
- package/dist/lifeops/defaults.d.ts.map +1 -0
- package/dist/lifeops/defaults.js +206 -0
- package/dist/lifeops/defaults.js.map +1 -0
- package/dist/lifeops/device-bus-service.d.ts +16 -0
- package/dist/lifeops/device-bus-service.d.ts.map +1 -0
- package/dist/lifeops/device-bus-service.js +20 -0
- package/dist/lifeops/device-bus-service.js.map +1 -0
- package/dist/lifeops/device-identity.d.ts +31 -0
- package/dist/lifeops/device-identity.d.ts.map +1 -0
- package/dist/lifeops/device-identity.js +94 -0
- package/dist/lifeops/device-identity.js.map +1 -0
- package/dist/lifeops/document-review.d.ts +264 -0
- package/dist/lifeops/document-review.d.ts.map +1 -0
- package/dist/lifeops/document-review.js +925 -0
- package/dist/lifeops/document-review.js.map +1 -0
- package/dist/lifeops/email-classifier.d.ts +9 -0
- package/dist/lifeops/email-classifier.d.ts.map +1 -0
- package/dist/lifeops/email-classifier.js +15 -0
- package/dist/lifeops/email-classifier.js.map +1 -0
- package/dist/lifeops/email-curation.d.ts +13 -0
- package/dist/lifeops/email-curation.d.ts.map +1 -0
- package/dist/lifeops/email-curation.js +2 -0
- package/dist/lifeops/email-curation.js.map +1 -0
- package/dist/lifeops/email-unsubscribe-types.d.ts +7 -0
- package/dist/lifeops/email-unsubscribe-types.d.ts.map +1 -0
- package/dist/lifeops/email-unsubscribe-types.js +1 -0
- package/dist/lifeops/email-unsubscribe-types.js.map +1 -0
- package/dist/lifeops/enforcement-windows.d.ts +34 -0
- package/dist/lifeops/enforcement-windows.d.ts.map +1 -0
- package/dist/lifeops/enforcement-windows.js +80 -0
- package/dist/lifeops/enforcement-windows.js.map +1 -0
- package/dist/lifeops/engine.d.ts +8 -0
- package/dist/lifeops/engine.d.ts.map +1 -0
- package/dist/lifeops/engine.js +540 -0
- package/dist/lifeops/engine.js.map +1 -0
- package/dist/lifeops/entities/index.d.ts +4 -0
- package/dist/lifeops/entities/index.d.ts.map +1 -0
- package/dist/lifeops/entities/index.js +29 -0
- package/dist/lifeops/entities/index.js.map +1 -0
- package/dist/lifeops/entities/merge.d.ts +9 -0
- package/dist/lifeops/entities/merge.d.ts.map +1 -0
- package/dist/lifeops/entities/merge.js +17 -0
- package/dist/lifeops/entities/merge.js.map +1 -0
- package/dist/lifeops/entities/store.d.ts +13 -0
- package/dist/lifeops/entities/store.d.ts.map +1 -0
- package/dist/lifeops/entities/store.js +7 -0
- package/dist/lifeops/entities/store.js.map +1 -0
- package/dist/lifeops/entities/types.d.ts +9 -0
- package/dist/lifeops/entities/types.d.ts.map +1 -0
- package/dist/lifeops/entities/types.js +13 -0
- package/dist/lifeops/entities/types.js.map +1 -0
- package/dist/lifeops/entities/voice-attribution.d.ts +70 -0
- package/dist/lifeops/entities/voice-attribution.d.ts.map +1 -0
- package/dist/lifeops/entities/voice-attribution.js +121 -0
- package/dist/lifeops/entities/voice-attribution.js.map +1 -0
- package/dist/lifeops/entities/voice-observer-bridge.d.ts +32 -0
- package/dist/lifeops/entities/voice-observer-bridge.d.ts.map +1 -0
- package/dist/lifeops/entities/voice-observer-bridge.js +68 -0
- package/dist/lifeops/entities/voice-observer-bridge.js.map +1 -0
- package/dist/lifeops/entities/voice-observer.d.ts +72 -0
- package/dist/lifeops/entities/voice-observer.d.ts.map +1 -0
- package/dist/lifeops/entities/voice-observer.js +97 -0
- package/dist/lifeops/entities/voice-observer.js.map +1 -0
- package/dist/lifeops/escalation-ladders.d.ts +28 -0
- package/dist/lifeops/escalation-ladders.d.ts.map +1 -0
- package/dist/lifeops/escalation-ladders.js +17 -0
- package/dist/lifeops/escalation-ladders.js.map +1 -0
- package/dist/lifeops/fda-probe.d.ts +23 -0
- package/dist/lifeops/fda-probe.d.ts.map +1 -0
- package/dist/lifeops/fda-probe.js +59 -0
- package/dist/lifeops/fda-probe.js.map +1 -0
- package/dist/lifeops/feature-flags.d.ts +24 -0
- package/dist/lifeops/feature-flags.d.ts.map +1 -0
- package/dist/lifeops/feature-flags.js +261 -0
- package/dist/lifeops/feature-flags.js.map +1 -0
- package/dist/lifeops/feature-flags.types.d.ts +156 -0
- package/dist/lifeops/feature-flags.types.d.ts.map +1 -0
- package/dist/lifeops/feature-flags.types.js +129 -0
- package/dist/lifeops/feature-flags.types.js.map +1 -0
- package/dist/lifeops/first-run/defaults.d.ts +57 -0
- package/dist/lifeops/first-run/defaults.d.ts.map +1 -0
- package/dist/lifeops/first-run/defaults.js +159 -0
- package/dist/lifeops/first-run/defaults.js.map +1 -0
- package/dist/lifeops/first-run/questions.d.ts +74 -0
- package/dist/lifeops/first-run/questions.d.ts.map +1 -0
- package/dist/lifeops/first-run/questions.js +184 -0
- package/dist/lifeops/first-run/questions.js.map +1 -0
- package/dist/lifeops/first-run/replay.d.ts +41 -0
- package/dist/lifeops/first-run/replay.d.ts.map +1 -0
- package/dist/lifeops/first-run/replay.js +34 -0
- package/dist/lifeops/first-run/replay.js.map +1 -0
- package/dist/lifeops/first-run/service.d.ts +147 -0
- package/dist/lifeops/first-run/service.d.ts.map +1 -0
- package/dist/lifeops/first-run/service.js +455 -0
- package/dist/lifeops/first-run/service.js.map +1 -0
- package/dist/lifeops/first-run/state.d.ts +36 -0
- package/dist/lifeops/first-run/state.d.ts.map +1 -0
- package/dist/lifeops/first-run/state.js +128 -0
- package/dist/lifeops/first-run/state.js.map +1 -0
- package/dist/lifeops/global-pause/store.d.ts +22 -0
- package/dist/lifeops/global-pause/store.d.ts.map +1 -0
- package/dist/lifeops/global-pause/store.js +18 -0
- package/dist/lifeops/global-pause/store.js.map +1 -0
- package/dist/lifeops/goal-grounding.d.ts +9 -0
- package/dist/lifeops/goal-grounding.d.ts.map +1 -0
- package/dist/lifeops/goal-grounding.js +19 -0
- package/dist/lifeops/goal-grounding.js.map +1 -0
- package/dist/lifeops/goal-semantic-evaluator.d.ts +8 -0
- package/dist/lifeops/goal-semantic-evaluator.d.ts.map +1 -0
- package/dist/lifeops/goal-semantic-evaluator.js +7 -0
- package/dist/lifeops/goal-semantic-evaluator.js.map +1 -0
- package/dist/lifeops/google/format-helpers.d.ts +63 -0
- package/dist/lifeops/google/format-helpers.d.ts.map +1 -0
- package/dist/lifeops/google/format-helpers.js +597 -0
- package/dist/lifeops/google/format-helpers.js.map +1 -0
- package/dist/lifeops/google-plugin-delegates.d.ts +59 -0
- package/dist/lifeops/google-plugin-delegates.d.ts.map +1 -0
- package/dist/lifeops/google-plugin-delegates.js +408 -0
- package/dist/lifeops/google-plugin-delegates.js.map +1 -0
- package/dist/lifeops/google-scopes.d.ts +15 -0
- package/dist/lifeops/google-scopes.d.ts.map +1 -0
- package/dist/lifeops/google-scopes.js +118 -0
- package/dist/lifeops/google-scopes.js.map +1 -0
- package/dist/lifeops/handoff/store.d.ts +23 -0
- package/dist/lifeops/handoff/store.d.ts.map +1 -0
- package/dist/lifeops/handoff/store.js +20 -0
- package/dist/lifeops/handoff/store.js.map +1 -0
- package/dist/lifeops/i18n/localized-examples-provider.d.ts +16 -0
- package/dist/lifeops/i18n/localized-examples-provider.d.ts.map +1 -0
- package/dist/lifeops/i18n/localized-examples-provider.js +33 -0
- package/dist/lifeops/i18n/localized-examples-provider.js.map +1 -0
- package/dist/lifeops/i18n/localized-examples-resolver.d.ts +32 -0
- package/dist/lifeops/i18n/localized-examples-resolver.d.ts.map +1 -0
- package/dist/lifeops/i18n/localized-examples-resolver.js +28 -0
- package/dist/lifeops/i18n/localized-examples-resolver.js.map +1 -0
- package/dist/lifeops/i18n/prompt-registry.d.ts +64 -0
- package/dist/lifeops/i18n/prompt-registry.d.ts.map +1 -0
- package/dist/lifeops/i18n/prompt-registry.js +283 -0
- package/dist/lifeops/i18n/prompt-registry.js.map +1 -0
- package/dist/lifeops/imessage-outbound-probe.d.ts +7 -0
- package/dist/lifeops/imessage-outbound-probe.d.ts.map +1 -0
- package/dist/lifeops/imessage-outbound-probe.js +81 -0
- package/dist/lifeops/imessage-outbound-probe.js.map +1 -0
- package/dist/lifeops/index.d.ts +24 -0
- package/dist/lifeops/index.d.ts.map +1 -0
- package/dist/lifeops/index.js +24 -0
- package/dist/lifeops/index.js.map +1 -0
- package/dist/lifeops/intent-sync.d.ts +64 -0
- package/dist/lifeops/intent-sync.d.ts.map +1 -0
- package/dist/lifeops/intent-sync.js +321 -0
- package/dist/lifeops/intent-sync.js.map +1 -0
- package/dist/lifeops/messaging/index.d.ts +2 -0
- package/dist/lifeops/messaging/index.d.ts.map +1 -0
- package/dist/lifeops/messaging/index.js +5 -0
- package/dist/lifeops/messaging/index.js.map +1 -0
- package/dist/lifeops/messaging/owner-send-policy.d.ts +3 -0
- package/dist/lifeops/messaging/owner-send-policy.d.ts.map +1 -0
- package/dist/lifeops/messaging/owner-send-policy.js +83 -0
- package/dist/lifeops/messaging/owner-send-policy.js.map +1 -0
- package/dist/lifeops/notifications-push.d.ts +37 -0
- package/dist/lifeops/notifications-push.d.ts.map +1 -0
- package/dist/lifeops/notifications-push.js +95 -0
- package/dist/lifeops/notifications-push.js.map +1 -0
- package/dist/lifeops/optimized-prompt-instructions.d.ts +5 -0
- package/dist/lifeops/optimized-prompt-instructions.d.ts.map +1 -0
- package/dist/lifeops/optimized-prompt-instructions.js +48 -0
- package/dist/lifeops/optimized-prompt-instructions.js.map +1 -0
- package/dist/lifeops/owner/fact-store.d.ts +143 -0
- package/dist/lifeops/owner/fact-store.d.ts.map +1 -0
- package/dist/lifeops/owner/fact-store.js +446 -0
- package/dist/lifeops/owner/fact-store.js.map +1 -0
- package/dist/lifeops/owner/profile-extraction-evaluator.d.ts +3 -0
- package/dist/lifeops/owner/profile-extraction-evaluator.d.ts.map +1 -0
- package/dist/lifeops/owner/profile-extraction-evaluator.js +241 -0
- package/dist/lifeops/owner/profile-extraction-evaluator.js.map +1 -0
- package/dist/lifeops/owner-profile.d.ts +61 -0
- package/dist/lifeops/owner-profile.d.ts.map +1 -0
- package/dist/lifeops/owner-profile.js +407 -0
- package/dist/lifeops/owner-profile.js.map +1 -0
- package/dist/lifeops/pending-prompts/store.d.ts +23 -0
- package/dist/lifeops/pending-prompts/store.d.ts.map +1 -0
- package/dist/lifeops/pending-prompts/store.js +16 -0
- package/dist/lifeops/pending-prompts/store.js.map +1 -0
- package/dist/lifeops/policy-memory.d.ts +190 -0
- package/dist/lifeops/policy-memory.d.ts.map +1 -0
- package/dist/lifeops/policy-memory.js +1026 -0
- package/dist/lifeops/policy-memory.js.map +1 -0
- package/dist/lifeops/priority-scoring.d.ts +51 -0
- package/dist/lifeops/priority-scoring.d.ts.map +1 -0
- package/dist/lifeops/priority-scoring.js +305 -0
- package/dist/lifeops/priority-scoring.js.map +1 -0
- package/dist/lifeops/privacy-egress.d.ts +92 -0
- package/dist/lifeops/privacy-egress.d.ts.map +1 -0
- package/dist/lifeops/privacy-egress.js +230 -0
- package/dist/lifeops/privacy-egress.js.map +1 -0
- package/dist/lifeops/privacy.d.ts +49 -0
- package/dist/lifeops/privacy.d.ts.map +1 -0
- package/dist/lifeops/privacy.js +66 -0
- package/dist/lifeops/privacy.js.map +1 -0
- package/dist/lifeops/redact-sensitive-data.d.ts +32 -0
- package/dist/lifeops/redact-sensitive-data.d.ts.map +1 -0
- package/dist/lifeops/redact-sensitive-data.js +98 -0
- package/dist/lifeops/redact-sensitive-data.js.map +1 -0
- package/dist/lifeops/registries/app-blocker-contribution.d.ts +13 -0
- package/dist/lifeops/registries/app-blocker-contribution.d.ts.map +1 -0
- package/dist/lifeops/registries/app-blocker-contribution.js +73 -0
- package/dist/lifeops/registries/app-blocker-contribution.js.map +1 -0
- package/dist/lifeops/registries/blocker-registry.d.ts +76 -0
- package/dist/lifeops/registries/blocker-registry.d.ts.map +1 -0
- package/dist/lifeops/registries/blocker-registry.js +40 -0
- package/dist/lifeops/registries/blocker-registry.js.map +1 -0
- package/dist/lifeops/registries/event-kind-registry.d.ts +57 -0
- package/dist/lifeops/registries/event-kind-registry.d.ts.map +1 -0
- package/dist/lifeops/registries/event-kind-registry.js +82 -0
- package/dist/lifeops/registries/event-kind-registry.js.map +1 -0
- package/dist/lifeops/registries/family-registry.d.ts +72 -0
- package/dist/lifeops/registries/family-registry.d.ts.map +1 -0
- package/dist/lifeops/registries/family-registry.js +98 -0
- package/dist/lifeops/registries/family-registry.js.map +1 -0
- package/dist/lifeops/registries/feature-flag-default-pack.d.ts +32 -0
- package/dist/lifeops/registries/feature-flag-default-pack.d.ts.map +1 -0
- package/dist/lifeops/registries/feature-flag-default-pack.js +36 -0
- package/dist/lifeops/registries/feature-flag-default-pack.js.map +1 -0
- package/dist/lifeops/registries/feature-flag-registry.d.ts +76 -0
- package/dist/lifeops/registries/feature-flag-registry.d.ts.map +1 -0
- package/dist/lifeops/registries/feature-flag-registry.js +68 -0
- package/dist/lifeops/registries/feature-flag-registry.js.map +1 -0
- package/dist/lifeops/registries/index.d.ts +24 -0
- package/dist/lifeops/registries/index.d.ts.map +1 -0
- package/dist/lifeops/registries/index.js +115 -0
- package/dist/lifeops/registries/index.js.map +1 -0
- package/dist/lifeops/registries/website-blocker-contribution.d.ts +21 -0
- package/dist/lifeops/registries/website-blocker-contribution.d.ts.map +1 -0
- package/dist/lifeops/registries/website-blocker-contribution.js +76 -0
- package/dist/lifeops/registries/website-blocker-contribution.js.map +1 -0
- package/dist/lifeops/registries/workflow-step-default-pack.d.ts +30 -0
- package/dist/lifeops/registries/workflow-step-default-pack.d.ts.map +1 -0
- package/dist/lifeops/registries/workflow-step-default-pack.js +315 -0
- package/dist/lifeops/registries/workflow-step-default-pack.js.map +1 -0
- package/dist/lifeops/registries/workflow-step-registry.d.ts +101 -0
- package/dist/lifeops/registries/workflow-step-registry.d.ts.map +1 -0
- package/dist/lifeops/registries/workflow-step-registry.js +56 -0
- package/dist/lifeops/registries/workflow-step-registry.js.map +1 -0
- package/dist/lifeops/relationships/extraction.d.ts +77 -0
- package/dist/lifeops/relationships/extraction.d.ts.map +1 -0
- package/dist/lifeops/relationships/extraction.js +146 -0
- package/dist/lifeops/relationships/extraction.js.map +1 -0
- package/dist/lifeops/relationships/index.d.ts +4 -0
- package/dist/lifeops/relationships/index.d.ts.map +1 -0
- package/dist/lifeops/relationships/index.js +19 -0
- package/dist/lifeops/relationships/index.js.map +1 -0
- package/dist/lifeops/relationships/mapping.d.ts +34 -0
- package/dist/lifeops/relationships/mapping.d.ts.map +1 -0
- package/dist/lifeops/relationships/mapping.js +87 -0
- package/dist/lifeops/relationships/mapping.js.map +1 -0
- package/dist/lifeops/relationships/store.d.ts +12 -0
- package/dist/lifeops/relationships/store.d.ts.map +1 -0
- package/dist/lifeops/relationships/store.js +5 -0
- package/dist/lifeops/relationships/store.js.map +1 -0
- package/dist/lifeops/relationships/types.d.ts +9 -0
- package/dist/lifeops/relationships/types.d.ts.map +1 -0
- package/dist/lifeops/relationships/types.js +11 -0
- package/dist/lifeops/relationships/types.js.map +1 -0
- package/dist/lifeops/relative-schedule-resolver.d.ts +13 -0
- package/dist/lifeops/relative-schedule-resolver.d.ts.map +1 -0
- package/dist/lifeops/relative-schedule-resolver.js +107 -0
- package/dist/lifeops/relative-schedule-resolver.js.map +1 -0
- package/dist/lifeops/relative-time.d.ts +15 -0
- package/dist/lifeops/relative-time.d.ts.map +1 -0
- package/dist/lifeops/relative-time.js +191 -0
- package/dist/lifeops/relative-time.js.map +1 -0
- package/dist/lifeops/repository.d.ts +638 -0
- package/dist/lifeops/repository.d.ts.map +1 -0
- package/dist/lifeops/repository.js +6289 -0
- package/dist/lifeops/repository.js.map +1 -0
- package/dist/lifeops/runtime-cache.d.ts +4 -0
- package/dist/lifeops/runtime-cache.d.ts.map +1 -0
- package/dist/lifeops/runtime-cache.js +7 -0
- package/dist/lifeops/runtime-cache.js.map +1 -0
- package/dist/lifeops/runtime-service-delegates.d.ts +236 -0
- package/dist/lifeops/runtime-service-delegates.d.ts.map +1 -0
- package/dist/lifeops/runtime-service-delegates.js +839 -0
- package/dist/lifeops/runtime-service-delegates.js.map +1 -0
- package/dist/lifeops/runtime.d.ts +13 -0
- package/dist/lifeops/runtime.d.ts.map +1 -0
- package/dist/lifeops/runtime.js +104 -0
- package/dist/lifeops/runtime.js.map +1 -0
- package/dist/lifeops/schedule-insight.d.ts +133 -0
- package/dist/lifeops/schedule-insight.d.ts.map +1 -0
- package/dist/lifeops/schedule-insight.js +726 -0
- package/dist/lifeops/schedule-insight.js.map +1 -0
- package/dist/lifeops/schedule-state.d.ts +39 -0
- package/dist/lifeops/schedule-state.d.ts.map +1 -0
- package/dist/lifeops/schedule-state.js +671 -0
- package/dist/lifeops/schedule-state.js.map +1 -0
- package/dist/lifeops/schedule-sync-config.d.ts +3 -0
- package/dist/lifeops/schedule-sync-config.d.ts.map +1 -0
- package/dist/lifeops/schedule-sync-config.js +23 -0
- package/dist/lifeops/schedule-sync-config.js.map +1 -0
- package/dist/lifeops/schedule-sync-contracts.d.ts +2 -0
- package/dist/lifeops/schedule-sync-contracts.d.ts.map +1 -0
- package/dist/lifeops/schedule-sync-contracts.js +2 -0
- package/dist/lifeops/schedule-sync-contracts.js.map +1 -0
- package/dist/lifeops/scheduled-task/index.d.ts +13 -0
- package/dist/lifeops/scheduled-task/index.d.ts.map +1 -0
- package/dist/lifeops/scheduled-task/index.js +14 -0
- package/dist/lifeops/scheduled-task/index.js.map +1 -0
- package/dist/lifeops/scheduled-task/runtime-wiring.d.ts +33 -0
- package/dist/lifeops/scheduled-task/runtime-wiring.d.ts.map +1 -0
- package/dist/lifeops/scheduled-task/runtime-wiring.js +334 -0
- package/dist/lifeops/scheduled-task/runtime-wiring.js.map +1 -0
- package/dist/lifeops/scheduled-task/scheduler.d.ts +28 -0
- package/dist/lifeops/scheduled-task/scheduler.d.ts.map +1 -0
- package/dist/lifeops/scheduled-task/scheduler.js +202 -0
- package/dist/lifeops/scheduled-task/scheduler.js.map +1 -0
- package/dist/lifeops/scheduled-task/service.d.ts +61 -0
- package/dist/lifeops/scheduled-task/service.d.ts.map +1 -0
- package/dist/lifeops/scheduled-task/service.js +64 -0
- package/dist/lifeops/scheduled-task/service.js.map +1 -0
- package/dist/lifeops/scheduler-task.d.ts +19 -0
- package/dist/lifeops/scheduler-task.d.ts.map +1 -0
- package/dist/lifeops/scheduler-task.js +201 -0
- package/dist/lifeops/scheduler-task.js.map +1 -0
- package/dist/lifeops/schema.d.ts +28068 -0
- package/dist/lifeops/schema.d.ts.map +1 -0
- package/dist/lifeops/schema.js +1689 -0
- package/dist/lifeops/schema.js.map +1 -0
- package/dist/lifeops/screen-context.d.ts +66 -0
- package/dist/lifeops/screen-context.d.ts.map +1 -0
- package/dist/lifeops/screen-context.js +347 -0
- package/dist/lifeops/screen-context.js.map +1 -0
- package/dist/lifeops/seed-routine-migration/migrator.d.ts +113 -0
- package/dist/lifeops/seed-routine-migration/migrator.d.ts.map +1 -0
- package/dist/lifeops/seed-routine-migration/migrator.js +142 -0
- package/dist/lifeops/seed-routine-migration/migrator.js.map +1 -0
- package/dist/lifeops/seed-routines.d.ts +24 -0
- package/dist/lifeops/seed-routines.d.ts.map +1 -0
- package/dist/lifeops/seed-routines.js +140 -0
- package/dist/lifeops/seed-routines.js.map +1 -0
- package/dist/lifeops/send-policy/contract.d.ts +81 -0
- package/dist/lifeops/send-policy/contract.d.ts.map +1 -0
- package/dist/lifeops/send-policy/contract.js +1 -0
- package/dist/lifeops/send-policy/contract.js.map +1 -0
- package/dist/lifeops/send-policy/index.d.ts +3 -0
- package/dist/lifeops/send-policy/index.d.ts.map +1 -0
- package/dist/lifeops/send-policy/index.js +13 -0
- package/dist/lifeops/send-policy/index.js.map +1 -0
- package/dist/lifeops/send-policy/registry.d.ts +7 -0
- package/dist/lifeops/send-policy/registry.d.ts.map +1 -0
- package/dist/lifeops/send-policy/registry.js +62 -0
- package/dist/lifeops/send-policy/registry.js.map +1 -0
- package/dist/lifeops/sensitive-request-delivery.d.ts +46 -0
- package/dist/lifeops/sensitive-request-delivery.d.ts.map +1 -0
- package/dist/lifeops/sensitive-request-delivery.js +103 -0
- package/dist/lifeops/sensitive-request-delivery.js.map +1 -0
- package/dist/lifeops/service-constants.d.ts +10 -0
- package/dist/lifeops/service-constants.d.ts.map +1 -0
- package/dist/lifeops/service-constants.js +129 -0
- package/dist/lifeops/service-constants.js.map +1 -0
- package/dist/lifeops/service-helpers-browser.d.ts +41 -0
- package/dist/lifeops/service-helpers-browser.d.ts.map +1 -0
- package/dist/lifeops/service-helpers-browser.js +290 -0
- package/dist/lifeops/service-helpers-browser.js.map +1 -0
- package/dist/lifeops/service-helpers-misc.d.ts +68 -0
- package/dist/lifeops/service-helpers-misc.d.ts.map +1 -0
- package/dist/lifeops/service-helpers-misc.js +531 -0
- package/dist/lifeops/service-helpers-misc.js.map +1 -0
- package/dist/lifeops/service-helpers-occurrence.d.ts +23 -0
- package/dist/lifeops/service-helpers-occurrence.d.ts.map +1 -0
- package/dist/lifeops/service-helpers-occurrence.js +257 -0
- package/dist/lifeops/service-helpers-occurrence.js.map +1 -0
- package/dist/lifeops/service-helpers-reminder.d.ts +260 -0
- package/dist/lifeops/service-helpers-reminder.d.ts.map +1 -0
- package/dist/lifeops/service-helpers-reminder.js +1186 -0
- package/dist/lifeops/service-helpers-reminder.js.map +1 -0
- package/dist/lifeops/service-mixin-browser.d.ts +31 -0
- package/dist/lifeops/service-mixin-browser.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-browser.js +975 -0
- package/dist/lifeops/service-mixin-browser.js.map +1 -0
- package/dist/lifeops/service-mixin-calendar.d.ts +53 -0
- package/dist/lifeops/service-mixin-calendar.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-calendar.js +68 -0
- package/dist/lifeops/service-mixin-calendar.js.map +1 -0
- package/dist/lifeops/service-mixin-core.d.ts +51 -0
- package/dist/lifeops/service-mixin-core.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-core.js +500 -0
- package/dist/lifeops/service-mixin-core.js.map +1 -0
- package/dist/lifeops/service-mixin-definitions.d.ts +14 -0
- package/dist/lifeops/service-mixin-definitions.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-definitions.js +470 -0
- package/dist/lifeops/service-mixin-definitions.js.map +1 -0
- package/dist/lifeops/service-mixin-discord.d.ts +49 -0
- package/dist/lifeops/service-mixin-discord.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-discord.js +1253 -0
- package/dist/lifeops/service-mixin-discord.js.map +1 -0
- package/dist/lifeops/service-mixin-drive.d.ts +96 -0
- package/dist/lifeops/service-mixin-drive.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-drive.js +213 -0
- package/dist/lifeops/service-mixin-drive.js.map +1 -0
- package/dist/lifeops/service-mixin-email-unsubscribe.d.ts +23 -0
- package/dist/lifeops/service-mixin-email-unsubscribe.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-email-unsubscribe.js +27 -0
- package/dist/lifeops/service-mixin-email-unsubscribe.js.map +1 -0
- package/dist/lifeops/service-mixin-gmail.d.ts +43 -0
- package/dist/lifeops/service-mixin-gmail.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-gmail.js +727 -0
- package/dist/lifeops/service-mixin-gmail.js.map +1 -0
- package/dist/lifeops/service-mixin-goals.d.ts +22 -0
- package/dist/lifeops/service-mixin-goals.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-goals.js +884 -0
- package/dist/lifeops/service-mixin-goals.js.map +1 -0
- package/dist/lifeops/service-mixin-google.d.ts +13 -0
- package/dist/lifeops/service-mixin-google.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-google.js +398 -0
- package/dist/lifeops/service-mixin-google.js.map +1 -0
- package/dist/lifeops/service-mixin-health.d.ts +27 -0
- package/dist/lifeops/service-mixin-health.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-health.js +670 -0
- package/dist/lifeops/service-mixin-health.js.map +1 -0
- package/dist/lifeops/service-mixin-imessage.d.ts +106 -0
- package/dist/lifeops/service-mixin-imessage.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-imessage.js +303 -0
- package/dist/lifeops/service-mixin-imessage.js.map +1 -0
- package/dist/lifeops/service-mixin-inbox.d.ts +55 -0
- package/dist/lifeops/service-mixin-inbox.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-inbox.js +597 -0
- package/dist/lifeops/service-mixin-inbox.js.map +1 -0
- package/dist/lifeops/service-mixin-relationships.d.ts +65 -0
- package/dist/lifeops/service-mixin-relationships.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-relationships.js +150 -0
- package/dist/lifeops/service-mixin-relationships.js.map +1 -0
- package/dist/lifeops/service-mixin-reminders.d.ts +62 -0
- package/dist/lifeops/service-mixin-reminders.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-reminders.js +4003 -0
- package/dist/lifeops/service-mixin-reminders.js.map +1 -0
- package/dist/lifeops/service-mixin-scheduling.d.ts +53 -0
- package/dist/lifeops/service-mixin-scheduling.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-scheduling.js +405 -0
- package/dist/lifeops/service-mixin-scheduling.js.map +1 -0
- package/dist/lifeops/service-mixin-screentime.d.ts +71 -0
- package/dist/lifeops/service-mixin-screentime.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-screentime.js +530 -0
- package/dist/lifeops/service-mixin-screentime.js.map +1 -0
- package/dist/lifeops/service-mixin-signal.d.ts +74 -0
- package/dist/lifeops/service-mixin-signal.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-signal.js +214 -0
- package/dist/lifeops/service-mixin-signal.js.map +1 -0
- package/dist/lifeops/service-mixin-sleep.d.ts +68 -0
- package/dist/lifeops/service-mixin-sleep.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-sleep.js +43 -0
- package/dist/lifeops/service-mixin-sleep.js.map +1 -0
- package/dist/lifeops/service-mixin-status.d.ts +31 -0
- package/dist/lifeops/service-mixin-status.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-status.js +373 -0
- package/dist/lifeops/service-mixin-status.js.map +1 -0
- package/dist/lifeops/service-mixin-subscriptions.d.ts +101 -0
- package/dist/lifeops/service-mixin-subscriptions.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-subscriptions.js +50 -0
- package/dist/lifeops/service-mixin-subscriptions.js.map +1 -0
- package/dist/lifeops/service-mixin-telegram.d.ts +104 -0
- package/dist/lifeops/service-mixin-telegram.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-telegram.js +280 -0
- package/dist/lifeops/service-mixin-telegram.js.map +1 -0
- package/dist/lifeops/service-mixin-travel.d.ts +66 -0
- package/dist/lifeops/service-mixin-travel.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-travel.js +275 -0
- package/dist/lifeops/service-mixin-travel.js.map +1 -0
- package/dist/lifeops/service-mixin-whatsapp.d.ts +96 -0
- package/dist/lifeops/service-mixin-whatsapp.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-whatsapp.js +186 -0
- package/dist/lifeops/service-mixin-whatsapp.js.map +1 -0
- package/dist/lifeops/service-mixin-workflows.d.ts +15 -0
- package/dist/lifeops/service-mixin-workflows.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-workflows.js +710 -0
- package/dist/lifeops/service-mixin-workflows.js.map +1 -0
- package/dist/lifeops/service-mixin-x-read.d.ts +31 -0
- package/dist/lifeops/service-mixin-x-read.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-x-read.js +267 -0
- package/dist/lifeops/service-mixin-x-read.js.map +1 -0
- package/dist/lifeops/service-mixin-x.d.ts +66 -0
- package/dist/lifeops/service-mixin-x.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-x.js +501 -0
- package/dist/lifeops/service-mixin-x.js.map +1 -0
- package/dist/lifeops/service-normalize-connector.d.ts +19 -0
- package/dist/lifeops/service-normalize-connector.d.ts.map +1 -0
- package/dist/lifeops/service-normalize-connector.js +816 -0
- package/dist/lifeops/service-normalize-connector.js.map +1 -0
- package/dist/lifeops/service-normalize-gmail.d.ts +11 -0
- package/dist/lifeops/service-normalize-gmail.d.ts.map +1 -0
- package/dist/lifeops/service-normalize-gmail.js +85 -0
- package/dist/lifeops/service-normalize-gmail.js.map +1 -0
- package/dist/lifeops/service-normalize-task.d.ts +9 -0
- package/dist/lifeops/service-normalize-task.d.ts.map +1 -0
- package/dist/lifeops/service-normalize-task.js +567 -0
- package/dist/lifeops/service-normalize-task.js.map +1 -0
- package/dist/lifeops/service-normalize.d.ts +9 -0
- package/dist/lifeops/service-normalize.d.ts.map +1 -0
- package/dist/lifeops/service-normalize.js +53 -0
- package/dist/lifeops/service-normalize.js.map +1 -0
- package/dist/lifeops/service-types.d.ts +75 -0
- package/dist/lifeops/service-types.d.ts.map +1 -0
- package/dist/lifeops/service-types.js +5 -0
- package/dist/lifeops/service-types.js.map +1 -0
- package/dist/lifeops/service.d.ts +482 -0
- package/dist/lifeops/service.d.ts.map +1 -0
- package/dist/lifeops/service.js +62 -0
- package/dist/lifeops/service.js.map +1 -0
- package/dist/lifeops/signal-runtime-config.d.ts +13 -0
- package/dist/lifeops/signal-runtime-config.d.ts.map +1 -0
- package/dist/lifeops/signal-runtime-config.js +44 -0
- package/dist/lifeops/signal-runtime-config.js.map +1 -0
- package/dist/lifeops/signals/bus.d.ts +78 -0
- package/dist/lifeops/signals/bus.d.ts.map +1 -0
- package/dist/lifeops/signals/bus.js +117 -0
- package/dist/lifeops/signals/bus.js.map +1 -0
- package/dist/lifeops/sql.d.ts +65 -0
- package/dist/lifeops/sql.d.ts.map +1 -0
- package/dist/lifeops/sql.js +182 -0
- package/dist/lifeops/sql.js.map +1 -0
- package/dist/lifeops/stretch-decider.d.ts +73 -0
- package/dist/lifeops/stretch-decider.d.ts.map +1 -0
- package/dist/lifeops/stretch-decider.js +49 -0
- package/dist/lifeops/stretch-decider.js.map +1 -0
- package/dist/lifeops/telemetry-mapping.d.ts +14 -0
- package/dist/lifeops/telemetry-mapping.d.ts.map +1 -0
- package/dist/lifeops/telemetry-mapping.js +115 -0
- package/dist/lifeops/telemetry-mapping.js.map +1 -0
- package/dist/lifeops/telemetry-retention.d.ts +21 -0
- package/dist/lifeops/telemetry-retention.d.ts.map +1 -0
- package/dist/lifeops/telemetry-retention.js +13 -0
- package/dist/lifeops/telemetry-retention.js.map +1 -0
- package/dist/lifeops/time/timezone.d.ts +4 -0
- package/dist/lifeops/time/timezone.d.ts.map +1 -0
- package/dist/lifeops/time/timezone.js +154 -0
- package/dist/lifeops/time/timezone.js.map +1 -0
- package/dist/lifeops/time-util.d.ts +10 -0
- package/dist/lifeops/time-util.d.ts.map +1 -0
- package/dist/lifeops/time-util.js +14 -0
- package/dist/lifeops/time-util.js.map +1 -0
- package/dist/lifeops/time.d.ts +17 -0
- package/dist/lifeops/time.d.ts.map +1 -0
- package/dist/lifeops/time.js +152 -0
- package/dist/lifeops/time.js.map +1 -0
- package/dist/lifeops/travel-booking.types.d.ts +46 -0
- package/dist/lifeops/travel-booking.types.d.ts.map +1 -0
- package/dist/lifeops/travel-booking.types.js +1 -0
- package/dist/lifeops/travel-booking.types.js.map +1 -0
- package/dist/lifeops/triggers/schedule-once.d.ts +19 -0
- package/dist/lifeops/triggers/schedule-once.d.ts.map +1 -0
- package/dist/lifeops/triggers/schedule-once.js +99 -0
- package/dist/lifeops/triggers/schedule-once.js.map +1 -0
- package/dist/lifeops/validate/coding-task-request.d.ts +18 -0
- package/dist/lifeops/validate/coding-task-request.d.ts.map +1 -0
- package/dist/lifeops/validate/coding-task-request.js +16 -0
- package/dist/lifeops/validate/coding-task-request.js.map +1 -0
- package/dist/lifeops/voice/grounded-reply.d.ts +41 -0
- package/dist/lifeops/voice/grounded-reply.d.ts.map +1 -0
- package/dist/lifeops/voice/grounded-reply.js +24 -0
- package/dist/lifeops/voice/grounded-reply.js.map +1 -0
- package/dist/lifeops/voice-affect.d.ts +79 -0
- package/dist/lifeops/voice-affect.d.ts.map +1 -0
- package/dist/lifeops/voice-affect.js +253 -0
- package/dist/lifeops/voice-affect.js.map +1 -0
- package/dist/lifeops/wave1-types.d.ts +125 -0
- package/dist/lifeops/wave1-types.d.ts.map +1 -0
- package/dist/lifeops/wave1-types.js +1 -0
- package/dist/lifeops/wave1-types.js.map +1 -0
- package/dist/lifeops/work-threads/field-evaluator-thread-ops.d.ts +33 -0
- package/dist/lifeops/work-threads/field-evaluator-thread-ops.d.ts.map +1 -0
- package/dist/lifeops/work-threads/field-evaluator-thread-ops.js +226 -0
- package/dist/lifeops/work-threads/field-evaluator-thread-ops.js.map +1 -0
- package/dist/lifeops/work-threads/index.d.ts +3 -0
- package/dist/lifeops/work-threads/index.d.ts.map +1 -0
- package/dist/lifeops/work-threads/index.js +7 -0
- package/dist/lifeops/work-threads/index.js.map +1 -0
- package/dist/lifeops/work-threads/store.d.ts +91 -0
- package/dist/lifeops/work-threads/store.d.ts.map +1 -0
- package/dist/lifeops/work-threads/store.js +245 -0
- package/dist/lifeops/work-threads/store.js.map +1 -0
- package/dist/lifeops/work-threads/types.d.ts +58 -0
- package/dist/lifeops/work-threads/types.d.ts.map +1 -0
- package/dist/lifeops/work-threads/types.js +1 -0
- package/dist/lifeops/work-threads/types.js.map +1 -0
- package/dist/platform/host.d.ts +16 -0
- package/dist/platform/host.d.ts.map +1 -0
- package/dist/platform/host.js +22 -0
- package/dist/platform/host.js.map +1 -0
- package/dist/platform/index.d.ts +3 -0
- package/dist/platform/index.d.ts.map +1 -0
- package/dist/platform/index.js +3 -0
- package/dist/platform/index.js.map +1 -0
- package/dist/platform/lifeops-github.d.ts +15 -0
- package/dist/platform/lifeops-github.d.ts.map +1 -0
- package/dist/platform/lifeops-github.js +146 -0
- package/dist/platform/lifeops-github.js.map +1 -0
- package/dist/plugin.d.ts +106 -0
- package/dist/plugin.d.ts.map +1 -0
- package/dist/plugin.js +989 -0
- package/dist/plugin.js.map +1 -0
- package/dist/provider.d.ts +4 -0
- package/dist/provider.d.ts.map +1 -0
- package/dist/provider.js +108 -0
- package/dist/provider.js.map +1 -0
- package/dist/providers/activity-profile.d.ts +3 -0
- package/dist/providers/activity-profile.d.ts.map +1 -0
- package/dist/providers/activity-profile.js +140 -0
- package/dist/providers/activity-profile.js.map +1 -0
- package/dist/providers/cross-channel-context.d.ts +29 -0
- package/dist/providers/cross-channel-context.d.ts.map +1 -0
- package/dist/providers/cross-channel-context.js +206 -0
- package/dist/providers/cross-channel-context.js.map +1 -0
- package/dist/providers/first-run.d.ts +22 -0
- package/dist/providers/first-run.d.ts.map +1 -0
- package/dist/providers/first-run.js +93 -0
- package/dist/providers/first-run.js.map +1 -0
- package/dist/providers/health.d.ts +2 -0
- package/dist/providers/health.d.ts.map +1 -0
- package/dist/providers/health.js +14 -0
- package/dist/providers/health.js.map +1 -0
- package/dist/providers/inbox-triage.d.ts +3 -0
- package/dist/providers/inbox-triage.d.ts.map +1 -0
- package/dist/providers/inbox-triage.js +134 -0
- package/dist/providers/inbox-triage.js.map +1 -0
- package/dist/providers/lifeops.d.ts +3 -0
- package/dist/providers/lifeops.d.ts.map +1 -0
- package/dist/providers/lifeops.js +548 -0
- package/dist/providers/lifeops.js.map +1 -0
- package/dist/providers/pending-prompts.d.ts +38 -0
- package/dist/providers/pending-prompts.d.ts.map +1 -0
- package/dist/providers/pending-prompts.js +81 -0
- package/dist/providers/pending-prompts.js.map +1 -0
- package/dist/providers/recent-task-states.d.ts +52 -0
- package/dist/providers/recent-task-states.d.ts.map +1 -0
- package/dist/providers/recent-task-states.js +166 -0
- package/dist/providers/recent-task-states.js.map +1 -0
- package/dist/providers/room-policy.d.ts +16 -0
- package/dist/providers/room-policy.d.ts.map +1 -0
- package/dist/providers/room-policy.js +71 -0
- package/dist/providers/room-policy.js.map +1 -0
- package/dist/providers/work-threads.d.ts +3 -0
- package/dist/providers/work-threads.d.ts.map +1 -0
- package/dist/providers/work-threads.js +97 -0
- package/dist/providers/work-threads.js.map +1 -0
- package/dist/public.d.ts +3 -0
- package/dist/public.d.ts.map +1 -0
- package/dist/public.js +17 -0
- package/dist/public.js.map +1 -0
- package/dist/routes/cloud-features-routes.d.ts +9 -0
- package/dist/routes/cloud-features-routes.d.ts.map +1 -0
- package/dist/routes/cloud-features-routes.js +164 -0
- package/dist/routes/cloud-features-routes.js.map +1 -0
- package/dist/routes/entities.d.ts +14 -0
- package/dist/routes/entities.d.ts.map +1 -0
- package/dist/routes/entities.js +203 -0
- package/dist/routes/entities.js.map +1 -0
- package/dist/routes/lifeops-routes.d.ts +20 -0
- package/dist/routes/lifeops-routes.d.ts.map +1 -0
- package/dist/routes/lifeops-routes.js +2337 -0
- package/dist/routes/lifeops-routes.js.map +1 -0
- package/dist/routes/plugin.d.ts +9 -0
- package/dist/routes/plugin.d.ts.map +1 -0
- package/dist/routes/plugin.js +568 -0
- package/dist/routes/plugin.js.map +1 -0
- package/dist/routes/relationships.d.ts +13 -0
- package/dist/routes/relationships.d.ts.map +1 -0
- package/dist/routes/relationships.js +195 -0
- package/dist/routes/relationships.js.map +1 -0
- package/dist/routes/scheduled-tasks.d.ts +102 -0
- package/dist/routes/scheduled-tasks.d.ts.map +1 -0
- package/dist/routes/scheduled-tasks.js +322 -0
- package/dist/routes/scheduled-tasks.js.map +1 -0
- package/dist/routes/sleep-routes.d.ts +3 -0
- package/dist/routes/sleep-routes.d.ts.map +1 -0
- package/dist/routes/sleep-routes.js +33 -0
- package/dist/routes/sleep-routes.js.map +1 -0
- package/dist/routes/travel-provider-relay-routes.d.ts +2 -0
- package/dist/routes/travel-provider-relay-routes.d.ts.map +1 -0
- package/dist/routes/travel-provider-relay-routes.js +7 -0
- package/dist/routes/travel-provider-relay-routes.js.map +1 -0
- package/dist/routes/website-blocker-routes.d.ts +6 -0
- package/dist/routes/website-blocker-routes.d.ts.map +1 -0
- package/dist/routes/website-blocker-routes.js +218 -0
- package/dist/routes/website-blocker-routes.js.map +1 -0
- package/dist/security/action-confirmation.d.ts +12 -0
- package/dist/security/action-confirmation.d.ts.map +1 -0
- package/dist/security/action-confirmation.js +36 -0
- package/dist/security/action-confirmation.js.map +1 -0
- package/dist/service.d.ts +34 -0
- package/dist/service.d.ts.map +1 -0
- package/dist/service.js +111 -0
- package/dist/service.js.map +1 -0
- package/dist/travel-time/calendar-create.d.ts +17 -0
- package/dist/travel-time/calendar-create.d.ts.map +1 -0
- package/dist/travel-time/calendar-create.js +28 -0
- package/dist/travel-time/calendar-create.js.map +1 -0
- package/dist/travel-time/service.d.ts +114 -0
- package/dist/travel-time/service.d.ts.map +1 -0
- package/dist/travel-time/service.js +209 -0
- package/dist/travel-time/service.js.map +1 -0
- package/dist/types/app-blocker-settings-card.d.ts +2 -0
- package/dist/types/app-blocker-settings-card.d.ts.map +1 -0
- package/dist/types/app-blocker-settings-card.js +1 -0
- package/dist/types/app-blocker-settings-card.js.map +1 -0
- package/dist/types/briefing.d.ts +59 -0
- package/dist/types/briefing.d.ts.map +1 -0
- package/dist/types/briefing.js +1 -0
- package/dist/types/briefing.js.map +1 -0
- package/dist/types/document-request.d.ts +41 -0
- package/dist/types/document-request.d.ts.map +1 -0
- package/dist/types/document-request.js +1 -0
- package/dist/types/document-request.js.map +1 -0
- package/dist/types/index.d.ts +5 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +1 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/website-blocker-settings-card.d.ts +2 -0
- package/dist/types/website-blocker-settings-card.d.ts.map +1 -0
- package/dist/types/website-blocker-settings-card.js +1 -0
- package/dist/types/website-blocker-settings-card.js.map +1 -0
- package/dist/ui.d.ts +13 -0
- package/dist/ui.d.ts.map +1 -0
- package/dist/ui.js +25 -0
- package/dist/ui.js.map +1 -0
- package/dist/utils/format-duration.d.ts +2 -0
- package/dist/utils/format-duration.d.ts.map +1 -0
- package/dist/utils/format-duration.js +13 -0
- package/dist/utils/format-duration.js.map +1 -0
- package/dist/utils/index.d.ts +3 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +3 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/lifeops-url.d.ts +3 -0
- package/dist/utils/lifeops-url.d.ts.map +1 -0
- package/dist/utils/lifeops-url.js +28 -0
- package/dist/utils/lifeops-url.js.map +1 -0
- package/dist/website-blocker/chat-integration/block-activator.d.ts +32 -0
- package/dist/website-blocker/chat-integration/block-activator.d.ts.map +1 -0
- package/dist/website-blocker/chat-integration/block-activator.js +30 -0
- package/dist/website-blocker/chat-integration/block-activator.js.map +1 -0
- package/dist/website-blocker/chat-integration/block-rule-reconciler.d.ts +7 -0
- package/dist/website-blocker/chat-integration/block-rule-reconciler.d.ts.map +1 -0
- package/dist/website-blocker/chat-integration/block-rule-reconciler.js +115 -0
- package/dist/website-blocker/chat-integration/block-rule-reconciler.js.map +1 -0
- package/dist/website-blocker/chat-integration/block-rule-schema.d.ts +39 -0
- package/dist/website-blocker/chat-integration/block-rule-schema.d.ts.map +1 -0
- package/dist/website-blocker/chat-integration/block-rule-schema.js +133 -0
- package/dist/website-blocker/chat-integration/block-rule-schema.js.map +1 -0
- package/dist/website-blocker/chat-integration/block-rule-service.d.ts +21 -0
- package/dist/website-blocker/chat-integration/block-rule-service.d.ts.map +1 -0
- package/dist/website-blocker/chat-integration/block-rule-service.js +230 -0
- package/dist/website-blocker/chat-integration/block-rule-service.js.map +1 -0
- package/dist/website-blocker/chat-integration/harsh-mode-check.d.ts +13 -0
- package/dist/website-blocker/chat-integration/harsh-mode-check.d.ts.map +1 -0
- package/dist/website-blocker/chat-integration/harsh-mode-check.js +22 -0
- package/dist/website-blocker/chat-integration/harsh-mode-check.js.map +1 -0
- package/dist/website-blocker/chat-integration/index.d.ts +5 -0
- package/dist/website-blocker/chat-integration/index.d.ts.map +1 -0
- package/dist/website-blocker/chat-integration/index.js +26 -0
- package/dist/website-blocker/chat-integration/index.js.map +1 -0
- package/dist/website-blocker/proactive-block-bridge.d.ts +75 -0
- package/dist/website-blocker/proactive-block-bridge.d.ts.map +1 -0
- package/dist/website-blocker/proactive-block-bridge.js +154 -0
- package/dist/website-blocker/proactive-block-bridge.js.map +1 -0
- package/dist/website-blocker/public.d.ts +12 -0
- package/dist/website-blocker/public.d.ts.map +1 -0
- package/dist/website-blocker/public.js +51 -0
- package/dist/website-blocker/public.js.map +1 -0
- package/package.json +28 -28
|
@@ -0,0 +1,467 @@
|
|
|
1
|
+
import {
|
|
2
|
+
recentConversationTexts as collectRecentConversationTexts,
|
|
3
|
+
ModelType,
|
|
4
|
+
parseJsonModelRecord,
|
|
5
|
+
runWithTrajectoryContext
|
|
6
|
+
} from "@elizaos/core";
|
|
7
|
+
import {
|
|
8
|
+
PaymentRequiredError
|
|
9
|
+
} from "@elizaos/plugin-elizacloud/cloud/x402-payment-handler";
|
|
10
|
+
import { INTERNAL_URL } from "../lifeops/access.js";
|
|
11
|
+
import { createApprovalQueue } from "../lifeops/approval-queue.js";
|
|
12
|
+
import { requireFeatureEnabled } from "../lifeops/feature-flags.js";
|
|
13
|
+
import { FeatureNotEnabledError } from "../lifeops/feature-flags.types.js";
|
|
14
|
+
import { LifeOpsService } from "../lifeops/service.js";
|
|
15
|
+
function trimToNull(value) {
|
|
16
|
+
if (typeof value !== "string") {
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
const trimmed = value.trim();
|
|
20
|
+
return trimmed.length > 0 ? trimmed : null;
|
|
21
|
+
}
|
|
22
|
+
function normalizePassenger(value) {
|
|
23
|
+
const givenName = trimToNull(value.givenName);
|
|
24
|
+
const familyName = trimToNull(value.familyName);
|
|
25
|
+
const bornOn = trimToNull(value.bornOn);
|
|
26
|
+
if (!givenName || !familyName || !bornOn) {
|
|
27
|
+
return null;
|
|
28
|
+
}
|
|
29
|
+
return {
|
|
30
|
+
offerPassengerId: trimToNull(value.offerPassengerId),
|
|
31
|
+
givenName,
|
|
32
|
+
familyName,
|
|
33
|
+
bornOn,
|
|
34
|
+
email: trimToNull(value.email),
|
|
35
|
+
phoneNumber: trimToNull(value.phoneNumber),
|
|
36
|
+
title: trimToNull(value.title),
|
|
37
|
+
gender: trimToNull(value.gender)
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
function normalizePassengers(value) {
|
|
41
|
+
if (!Array.isArray(value)) {
|
|
42
|
+
return [];
|
|
43
|
+
}
|
|
44
|
+
return value.map(
|
|
45
|
+
(passenger) => passenger && typeof passenger === "object" ? normalizePassenger(passenger) : null
|
|
46
|
+
).filter(
|
|
47
|
+
(passenger) => passenger !== null
|
|
48
|
+
);
|
|
49
|
+
}
|
|
50
|
+
function formatBookTravelPromptValue(value) {
|
|
51
|
+
if (value === null || value === void 0) {
|
|
52
|
+
return "null";
|
|
53
|
+
}
|
|
54
|
+
if (typeof value === "string") {
|
|
55
|
+
return value;
|
|
56
|
+
}
|
|
57
|
+
if (typeof value === "number" || typeof value === "boolean") {
|
|
58
|
+
return String(value);
|
|
59
|
+
}
|
|
60
|
+
if (Array.isArray(value)) {
|
|
61
|
+
if (value.length === 0) {
|
|
62
|
+
return "none";
|
|
63
|
+
}
|
|
64
|
+
return value.map(
|
|
65
|
+
(entry, index) => `item ${index + 1}: ${formatBookTravelPromptValue(entry)}`
|
|
66
|
+
).join("\n");
|
|
67
|
+
}
|
|
68
|
+
if (typeof value === "object") {
|
|
69
|
+
const entries = Object.entries(value);
|
|
70
|
+
if (entries.length === 0) {
|
|
71
|
+
return "none";
|
|
72
|
+
}
|
|
73
|
+
return entries.map(([key, entry]) => `${key}: ${formatBookTravelPromptValue(entry)}`).join("\n");
|
|
74
|
+
}
|
|
75
|
+
return String(value);
|
|
76
|
+
}
|
|
77
|
+
function normalizeCalendarSync(value) {
|
|
78
|
+
if (!value || typeof value !== "object" || Array.isArray(value)) {
|
|
79
|
+
return null;
|
|
80
|
+
}
|
|
81
|
+
const record = value;
|
|
82
|
+
return {
|
|
83
|
+
enabled: record.enabled !== false,
|
|
84
|
+
calendarId: trimToNull(record.calendarId),
|
|
85
|
+
title: trimToNull(record.title),
|
|
86
|
+
description: trimToNull(record.description),
|
|
87
|
+
location: trimToNull(record.location),
|
|
88
|
+
timeZone: trimToNull(record.timeZone)
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
function mergePlans(params, extracted) {
|
|
92
|
+
const normalizedPassengers = normalizePassengers(params.passengers);
|
|
93
|
+
const extractedPassengers = normalizePassengers(extracted.passengers);
|
|
94
|
+
const passengers = normalizedPassengers.length > 0 ? normalizedPassengers : extractedPassengers;
|
|
95
|
+
return {
|
|
96
|
+
offerId: trimToNull(params.offerId) ?? extracted.offerId,
|
|
97
|
+
origin: trimToNull(params.origin) ?? extracted.origin,
|
|
98
|
+
destination: trimToNull(params.destination) ?? extracted.destination,
|
|
99
|
+
departureDate: trimToNull(params.departureDate) ?? extracted.departureDate,
|
|
100
|
+
returnDate: trimToNull(params.returnDate) ?? extracted.returnDate,
|
|
101
|
+
passengerCount: typeof params.passengerCount === "number" && params.passengerCount > 0 ? Math.floor(params.passengerCount) : extracted.passengerCount,
|
|
102
|
+
passengers,
|
|
103
|
+
calendarSync: normalizeCalendarSync(params.calendarSync) ?? normalizeCalendarSync(extracted.calendarSync) ?? {
|
|
104
|
+
enabled: true,
|
|
105
|
+
calendarId: "primary",
|
|
106
|
+
title: null,
|
|
107
|
+
description: null,
|
|
108
|
+
location: null,
|
|
109
|
+
timeZone: null
|
|
110
|
+
}
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
function getParams(options) {
|
|
114
|
+
return options?.parameters ?? {};
|
|
115
|
+
}
|
|
116
|
+
function messageText(message) {
|
|
117
|
+
return typeof message.content.text === "string" ? message.content.text : "";
|
|
118
|
+
}
|
|
119
|
+
async function extractBookTravelPlanWithLlm(args) {
|
|
120
|
+
if (typeof args.runtime.useModel !== "function") {
|
|
121
|
+
return {
|
|
122
|
+
offerId: null,
|
|
123
|
+
origin: null,
|
|
124
|
+
destination: null,
|
|
125
|
+
departureDate: null,
|
|
126
|
+
returnDate: null,
|
|
127
|
+
passengerCount: null,
|
|
128
|
+
passengers: [],
|
|
129
|
+
calendarSync: null
|
|
130
|
+
};
|
|
131
|
+
}
|
|
132
|
+
const recentConversation = (await collectRecentConversationTexts({
|
|
133
|
+
runtime: args.runtime,
|
|
134
|
+
message: args.message,
|
|
135
|
+
state: args.state,
|
|
136
|
+
limit: 6
|
|
137
|
+
})).join("\n");
|
|
138
|
+
const prompt = [
|
|
139
|
+
"Extract structured booking data for PERSONAL_ASSISTANT action=book_travel.",
|
|
140
|
+
"Return JSON only as a single object with exactly these keys:",
|
|
141
|
+
"offerId: string or null",
|
|
142
|
+
"origin: IATA airport code or null",
|
|
143
|
+
"destination: IATA airport code or null",
|
|
144
|
+
"departureDate: YYYY-MM-DD or null",
|
|
145
|
+
"returnDate: YYYY-MM-DD or null",
|
|
146
|
+
"passengerCount: number or null",
|
|
147
|
+
"passengers: passenger records if known; each record may include offerPassengerId, givenName, familyName, bornOn, email, phoneNumber, title, gender",
|
|
148
|
+
"calendarSync: calendar sync object if known; may include enabled, calendarId, title, description, location, timeZone",
|
|
149
|
+
'Example: {"offerId":null,"origin":"SFO","destination":"JFK","departureDate":"2026-06-01","returnDate":null,"passengerCount":1,"passengers":[],"calendarSync":null}',
|
|
150
|
+
"",
|
|
151
|
+
"Rules:",
|
|
152
|
+
"- Do not invent airports, dates, or passenger birthdays.",
|
|
153
|
+
"- Use offerId when the conversation already references a chosen offer.",
|
|
154
|
+
"- Use null for missing values.",
|
|
155
|
+
"- Passenger birthdays must stay in YYYY-MM-DD format when present.",
|
|
156
|
+
"",
|
|
157
|
+
`User message:
|
|
158
|
+
${messageText(args.message)}`,
|
|
159
|
+
"",
|
|
160
|
+
`Current parameters:
|
|
161
|
+
${formatBookTravelPromptValue(args.params)}`,
|
|
162
|
+
"",
|
|
163
|
+
`Recent conversation:
|
|
164
|
+
${recentConversation}`
|
|
165
|
+
].join("\n");
|
|
166
|
+
let parsed = null;
|
|
167
|
+
try {
|
|
168
|
+
const raw = await runWithTrajectoryContext(
|
|
169
|
+
{ purpose: "lifeops-book-travel" },
|
|
170
|
+
() => args.runtime.useModel(ModelType.TEXT_SMALL, { prompt })
|
|
171
|
+
);
|
|
172
|
+
const rawText = typeof raw === "string" ? raw : "";
|
|
173
|
+
parsed = parseJsonModelRecord(rawText);
|
|
174
|
+
} catch {
|
|
175
|
+
parsed = null;
|
|
176
|
+
}
|
|
177
|
+
return {
|
|
178
|
+
offerId: trimToNull(parsed?.offerId),
|
|
179
|
+
origin: trimToNull(parsed?.origin),
|
|
180
|
+
destination: trimToNull(parsed?.destination),
|
|
181
|
+
departureDate: trimToNull(parsed?.departureDate),
|
|
182
|
+
returnDate: trimToNull(parsed?.returnDate),
|
|
183
|
+
passengerCount: typeof parsed?.passengerCount === "number" && Number.isFinite(parsed.passengerCount) ? Math.max(1, Math.floor(parsed.passengerCount)) : null,
|
|
184
|
+
passengers: Array.isArray(parsed?.passengers) ? parsed.passengers : [],
|
|
185
|
+
calendarSync: parsed?.calendarSync && typeof parsed.calendarSync === "object" ? parsed.calendarSync : null
|
|
186
|
+
};
|
|
187
|
+
}
|
|
188
|
+
function listMissingPassengerFields(passengers) {
|
|
189
|
+
if (passengers.length > 0) {
|
|
190
|
+
return [];
|
|
191
|
+
}
|
|
192
|
+
return [
|
|
193
|
+
"passenger given name",
|
|
194
|
+
"passenger family name",
|
|
195
|
+
"passenger date of birth"
|
|
196
|
+
];
|
|
197
|
+
}
|
|
198
|
+
function buildMissingInfoText(missing) {
|
|
199
|
+
return `I can queue the booking once I have ${missing.join(", ")}.`;
|
|
200
|
+
}
|
|
201
|
+
function buildApprovalText(request) {
|
|
202
|
+
const payload = request.payload.action === "book_travel" ? request.payload : null;
|
|
203
|
+
const route = payload?.summary?.trim() || "this itinerary";
|
|
204
|
+
const total = typeof payload?.totalCents === "number" && payload.totalCents > 0 ? `${(payload.totalCents / 100).toFixed(2)} ${payload.currency}` : payload?.currency ?? "the quoted total";
|
|
205
|
+
const orderType = payload?.orderType === "hold" ? "hold then pay" : payload?.orderType === "instant" ? "book immediately" : "book";
|
|
206
|
+
return `Queued travel approval for ${route}. Once you approve, I will ${orderType}, complete payment, and sync the itinerary to your calendar. Current quote: ${total}.`;
|
|
207
|
+
}
|
|
208
|
+
async function runBookTravelHandler(runtime, message, state, options, callback) {
|
|
209
|
+
try {
|
|
210
|
+
await requireFeatureEnabled(runtime, "travel.book_flight");
|
|
211
|
+
} catch (error) {
|
|
212
|
+
if (error instanceof FeatureNotEnabledError) {
|
|
213
|
+
const text2 = error.message;
|
|
214
|
+
if (callback) {
|
|
215
|
+
await callback({ text: text2 });
|
|
216
|
+
}
|
|
217
|
+
return {
|
|
218
|
+
text: text2,
|
|
219
|
+
success: false,
|
|
220
|
+
values: {
|
|
221
|
+
success: false,
|
|
222
|
+
error: error.code,
|
|
223
|
+
featureKey: error.featureKey,
|
|
224
|
+
requiresConfirmation: true
|
|
225
|
+
},
|
|
226
|
+
data: {
|
|
227
|
+
actionName: "PERSONAL_ASSISTANT",
|
|
228
|
+
action: "book_travel",
|
|
229
|
+
error: error.code,
|
|
230
|
+
featureKey: error.featureKey,
|
|
231
|
+
requiresConfirmation: true
|
|
232
|
+
}
|
|
233
|
+
};
|
|
234
|
+
}
|
|
235
|
+
throw error;
|
|
236
|
+
}
|
|
237
|
+
const params = getParams(options);
|
|
238
|
+
const extracted = await extractBookTravelPlanWithLlm({
|
|
239
|
+
runtime,
|
|
240
|
+
message,
|
|
241
|
+
state,
|
|
242
|
+
params
|
|
243
|
+
});
|
|
244
|
+
const merged = mergePlans(params, extracted);
|
|
245
|
+
const missing = [];
|
|
246
|
+
if (!merged.offerId) {
|
|
247
|
+
if (!merged.origin) {
|
|
248
|
+
missing.push("origin airport");
|
|
249
|
+
}
|
|
250
|
+
if (!merged.destination) {
|
|
251
|
+
missing.push("destination airport");
|
|
252
|
+
}
|
|
253
|
+
if (!merged.departureDate) {
|
|
254
|
+
missing.push("departure date");
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
missing.push(...listMissingPassengerFields(merged.passengers));
|
|
258
|
+
if (missing.length > 0) {
|
|
259
|
+
const text2 = buildMissingInfoText(missing);
|
|
260
|
+
if (callback) {
|
|
261
|
+
await callback({ text: text2 });
|
|
262
|
+
}
|
|
263
|
+
return {
|
|
264
|
+
text: text2,
|
|
265
|
+
success: false,
|
|
266
|
+
values: {
|
|
267
|
+
success: false,
|
|
268
|
+
error: "MISSING_BOOKING_DETAILS",
|
|
269
|
+
requiresConfirmation: true,
|
|
270
|
+
missing
|
|
271
|
+
},
|
|
272
|
+
data: {
|
|
273
|
+
actionName: "PERSONAL_ASSISTANT",
|
|
274
|
+
action: "book_travel",
|
|
275
|
+
error: "MISSING_BOOKING_DETAILS",
|
|
276
|
+
requiresConfirmation: true,
|
|
277
|
+
missing
|
|
278
|
+
}
|
|
279
|
+
};
|
|
280
|
+
}
|
|
281
|
+
const service = new LifeOpsService(runtime);
|
|
282
|
+
let search = null;
|
|
283
|
+
if (!merged.offerId) {
|
|
284
|
+
const { origin, destination, departureDate } = merged;
|
|
285
|
+
if (!origin || !destination || !departureDate) {
|
|
286
|
+
throw new Error(
|
|
287
|
+
"PERSONAL_ASSISTANT action=book_travel validated fields are unexpectedly missing"
|
|
288
|
+
);
|
|
289
|
+
}
|
|
290
|
+
search = {
|
|
291
|
+
origin,
|
|
292
|
+
destination,
|
|
293
|
+
departureDate,
|
|
294
|
+
returnDate: merged.returnDate ?? void 0,
|
|
295
|
+
passengers: merged.passengerCount ?? merged.passengers.length
|
|
296
|
+
};
|
|
297
|
+
}
|
|
298
|
+
let prepared;
|
|
299
|
+
try {
|
|
300
|
+
prepared = await service.prepareFlightBooking({
|
|
301
|
+
offerId: merged.offerId,
|
|
302
|
+
search,
|
|
303
|
+
passengers: merged.passengers,
|
|
304
|
+
calendarSync: merged.calendarSync
|
|
305
|
+
});
|
|
306
|
+
} catch (err) {
|
|
307
|
+
if (!(err instanceof PaymentRequiredError) || err.requirements.length === 0) {
|
|
308
|
+
throw err;
|
|
309
|
+
}
|
|
310
|
+
const paymentRequired = err.requirements[0];
|
|
311
|
+
const queue2 = createApprovalQueue(runtime, { agentId: runtime.agentId });
|
|
312
|
+
const subjectUserId2 = typeof message.entityId === "string" ? message.entityId : String(runtime.agentId);
|
|
313
|
+
const request2 = await queue2.enqueue({
|
|
314
|
+
requestedBy: "PERSONAL_ASSISTANT",
|
|
315
|
+
subjectUserId: subjectUserId2,
|
|
316
|
+
action: "book_travel",
|
|
317
|
+
payload: {
|
|
318
|
+
action: "book_travel",
|
|
319
|
+
kind: "flight",
|
|
320
|
+
provider: "duffel",
|
|
321
|
+
itineraryRef: merged.offerId ?? "pending-quote",
|
|
322
|
+
totalCents: 0,
|
|
323
|
+
currency: "USD",
|
|
324
|
+
offerId: merged.offerId,
|
|
325
|
+
summary: merged.offerId ? `Booking for offer ${merged.offerId}` : `${merged.origin ?? "?"} \u2192 ${merged.destination ?? "?"}`,
|
|
326
|
+
cost: null,
|
|
327
|
+
paymentRequired: {
|
|
328
|
+
amount: paymentRequired.amount,
|
|
329
|
+
asset: paymentRequired.asset,
|
|
330
|
+
network: paymentRequired.network,
|
|
331
|
+
payTo: paymentRequired.payTo,
|
|
332
|
+
scheme: paymentRequired.scheme,
|
|
333
|
+
expiresAt: paymentRequired.expiresAt,
|
|
334
|
+
description: paymentRequired.description
|
|
335
|
+
}
|
|
336
|
+
},
|
|
337
|
+
channel: "internal",
|
|
338
|
+
reason: `Top up ${paymentRequired.amount} ${paymentRequired.asset} on ${paymentRequired.network} to book travel`,
|
|
339
|
+
expiresAt: new Date(Date.now() + 24 * 60 * 60 * 1e3)
|
|
340
|
+
});
|
|
341
|
+
const text2 = `Eliza Cloud needs a top-up before I can quote this trip: ${paymentRequired.amount} ${paymentRequired.asset} on ${paymentRequired.network}. I queued it for approval so you can review and pay together.`;
|
|
342
|
+
if (callback) {
|
|
343
|
+
await callback({ text: text2 });
|
|
344
|
+
}
|
|
345
|
+
return {
|
|
346
|
+
text: text2,
|
|
347
|
+
success: false,
|
|
348
|
+
values: {
|
|
349
|
+
success: false,
|
|
350
|
+
error: err.code,
|
|
351
|
+
requestId: request2.id,
|
|
352
|
+
requiresConfirmation: true
|
|
353
|
+
},
|
|
354
|
+
data: {
|
|
355
|
+
actionName: "PERSONAL_ASSISTANT",
|
|
356
|
+
action: "book_travel",
|
|
357
|
+
error: err.code,
|
|
358
|
+
requestId: request2.id,
|
|
359
|
+
requiresConfirmation: true,
|
|
360
|
+
paymentRequired: {
|
|
361
|
+
asset: paymentRequired.asset,
|
|
362
|
+
network: paymentRequired.network,
|
|
363
|
+
amount: paymentRequired.amount
|
|
364
|
+
}
|
|
365
|
+
}
|
|
366
|
+
};
|
|
367
|
+
}
|
|
368
|
+
const queue = createApprovalQueue(runtime, { agentId: runtime.agentId });
|
|
369
|
+
const subjectUserId = typeof message.entityId === "string" ? message.entityId : String(runtime.agentId);
|
|
370
|
+
const request = await queue.enqueue({
|
|
371
|
+
requestedBy: "PERSONAL_ASSISTANT",
|
|
372
|
+
subjectUserId,
|
|
373
|
+
action: "book_travel",
|
|
374
|
+
payload: {
|
|
375
|
+
action: "book_travel",
|
|
376
|
+
...prepared.payload
|
|
377
|
+
},
|
|
378
|
+
channel: "internal",
|
|
379
|
+
reason: `Book ${prepared.payload.summary ?? "travel itinerary"} after explicit approval`,
|
|
380
|
+
expiresAt: new Date(Date.now() + 24 * 60 * 60 * 1e3)
|
|
381
|
+
});
|
|
382
|
+
const text = buildApprovalText(request);
|
|
383
|
+
if (callback) {
|
|
384
|
+
await callback({ text });
|
|
385
|
+
}
|
|
386
|
+
return {
|
|
387
|
+
text,
|
|
388
|
+
success: true,
|
|
389
|
+
values: {
|
|
390
|
+
success: true,
|
|
391
|
+
requestId: request.id,
|
|
392
|
+
state: request.state,
|
|
393
|
+
offerId: prepared.offer.id
|
|
394
|
+
},
|
|
395
|
+
data: {
|
|
396
|
+
actionName: "PERSONAL_ASSISTANT",
|
|
397
|
+
action: "book_travel",
|
|
398
|
+
requestId: request.id,
|
|
399
|
+
state: request.state,
|
|
400
|
+
offerId: prepared.offer.id,
|
|
401
|
+
totalAmount: prepared.offer.totalAmount,
|
|
402
|
+
totalCurrency: prepared.offer.totalCurrency,
|
|
403
|
+
orderType: prepared.orderType
|
|
404
|
+
}
|
|
405
|
+
};
|
|
406
|
+
}
|
|
407
|
+
async function executeApprovedBookTravel(args) {
|
|
408
|
+
if (args.request.payload.action !== "book_travel") {
|
|
409
|
+
throw new Error("executeApprovedBookTravel received a non-travel request");
|
|
410
|
+
}
|
|
411
|
+
const payload = args.request.payload;
|
|
412
|
+
if (payload.kind !== "flight") {
|
|
413
|
+
throw new Error(`Unsupported travel kind: ${payload.kind}`);
|
|
414
|
+
}
|
|
415
|
+
if (!payload.offerId && !payload.search) {
|
|
416
|
+
throw new Error("Approved travel booking is missing offer/search context");
|
|
417
|
+
}
|
|
418
|
+
const passengers = Array.isArray(payload.passengers) ? payload.passengers : [];
|
|
419
|
+
if (passengers.length === 0) {
|
|
420
|
+
throw new Error("Approved travel booking is missing passenger details");
|
|
421
|
+
}
|
|
422
|
+
await args.queue.markExecuting(args.request.id);
|
|
423
|
+
const service = new LifeOpsService(args.runtime);
|
|
424
|
+
const booked = await service.bookFlightItinerary(INTERNAL_URL, {
|
|
425
|
+
offerId: payload.offerId ?? null,
|
|
426
|
+
search: payload.search ?? null,
|
|
427
|
+
passengers,
|
|
428
|
+
calendarSync: payload.calendarSync ?? null
|
|
429
|
+
});
|
|
430
|
+
const done = await args.queue.markDone(args.request.id);
|
|
431
|
+
const route = payload.summary?.trim() || `${booked.offer.id}`;
|
|
432
|
+
const bookingReference = booked.order.bookingReference ? ` Booking reference: ${booked.order.bookingReference}.` : "";
|
|
433
|
+
const paymentText = booked.payment ? ` Payment ${booked.payment.id} captured for ${booked.payment.amount} ${booked.payment.currency}.` : "";
|
|
434
|
+
const calendarText = booked.calendarEvent ? ` Synced to calendar as "${booked.calendarEvent.title}".` : "";
|
|
435
|
+
const text = `Booked ${route}.${bookingReference}${paymentText}${calendarText}`.trim();
|
|
436
|
+
if (args.callback) {
|
|
437
|
+
await args.callback({ text });
|
|
438
|
+
}
|
|
439
|
+
return {
|
|
440
|
+
text,
|
|
441
|
+
success: true,
|
|
442
|
+
values: {
|
|
443
|
+
success: true,
|
|
444
|
+
requestId: done.id,
|
|
445
|
+
bookingReference: booked.order.bookingReference,
|
|
446
|
+
orderId: booked.order.id,
|
|
447
|
+
paymentId: booked.payment?.id ?? null,
|
|
448
|
+
calendarEventId: booked.calendarEvent?.id ?? null
|
|
449
|
+
},
|
|
450
|
+
data: {
|
|
451
|
+
actionName: "PERSONAL_ASSISTANT",
|
|
452
|
+
action: "book_travel",
|
|
453
|
+
requestId: done.id,
|
|
454
|
+
state: done.state,
|
|
455
|
+
bookingReference: booked.order.bookingReference,
|
|
456
|
+
orderId: booked.order.id,
|
|
457
|
+
paymentId: booked.payment?.id ?? null,
|
|
458
|
+
calendarEventId: booked.calendarEvent?.id ?? null,
|
|
459
|
+
offerId: booked.offer.id
|
|
460
|
+
}
|
|
461
|
+
};
|
|
462
|
+
}
|
|
463
|
+
export {
|
|
464
|
+
executeApprovedBookTravel,
|
|
465
|
+
runBookTravelHandler
|
|
466
|
+
};
|
|
467
|
+
//# sourceMappingURL=book-travel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/actions/book-travel.ts"],"sourcesContent":["import type {\n ActionResult,\n HandlerCallback,\n HandlerOptions,\n IAgentRuntime,\n Memory,\n State,\n} from \"@elizaos/core\";\nimport {\n recentConversationTexts as collectRecentConversationTexts,\n ModelType,\n parseJsonModelRecord,\n runWithTrajectoryContext,\n} from \"@elizaos/core\";\nimport {\n PaymentRequiredError,\n type X402PaymentRequirement,\n} from \"@elizaos/plugin-elizacloud/cloud/x402-payment-handler\";\nimport { INTERNAL_URL } from \"../lifeops/access.js\";\nimport { createApprovalQueue } from \"../lifeops/approval-queue.js\";\nimport type {\n ApprovalQueue,\n ApprovalRequest,\n} from \"../lifeops/approval-queue.types.js\";\nimport { requireFeatureEnabled } from \"../lifeops/feature-flags.js\";\nimport { FeatureNotEnabledError } from \"../lifeops/feature-flags.types.js\";\nimport { LifeOpsService } from \"../lifeops/service.js\";\nimport type {\n TravelBookingPassenger,\n TravelCalendarSyncPlan,\n} from \"../lifeops/travel-booking.types.js\";\n\ntype BookTravelPassengerInput = {\n offerPassengerId?: string | null;\n givenName?: string | null;\n familyName?: string | null;\n bornOn?: string | null;\n email?: string | null;\n phoneNumber?: string | null;\n title?: string | null;\n gender?: string | null;\n};\n\ntype BookTravelParameters = {\n offerId?: string;\n origin?: string;\n destination?: string;\n departureDate?: string;\n returnDate?: string;\n passengers?: BookTravelPassengerInput[];\n passengerCount?: number;\n calendarSync?: Partial<TravelCalendarSyncPlan> | null;\n};\n\ntype ExtractedBookTravelPlan = {\n offerId: string | null;\n origin: string | null;\n destination: string | null;\n departureDate: string | null;\n returnDate: string | null;\n passengerCount: number | null;\n passengers: BookTravelPassengerInput[];\n calendarSync: Partial<TravelCalendarSyncPlan> | null;\n};\n\nfunction trimToNull(value: unknown): string | null {\n if (typeof value !== \"string\") {\n return null;\n }\n const trimmed = value.trim();\n return trimmed.length > 0 ? trimmed : null;\n}\n\nfunction normalizePassenger(\n value: BookTravelPassengerInput,\n): TravelBookingPassenger | null {\n const givenName = trimToNull(value.givenName);\n const familyName = trimToNull(value.familyName);\n const bornOn = trimToNull(value.bornOn);\n if (!givenName || !familyName || !bornOn) {\n return null;\n }\n return {\n offerPassengerId: trimToNull(value.offerPassengerId),\n givenName,\n familyName,\n bornOn,\n email: trimToNull(value.email),\n phoneNumber: trimToNull(value.phoneNumber),\n title: trimToNull(value.title),\n gender: trimToNull(value.gender),\n };\n}\n\nfunction normalizePassengers(value: unknown): TravelBookingPassenger[] {\n if (!Array.isArray(value)) {\n return [];\n }\n return value\n .map((passenger) =>\n passenger && typeof passenger === \"object\"\n ? normalizePassenger(passenger as BookTravelPassengerInput)\n : null,\n )\n .filter(\n (passenger): passenger is TravelBookingPassenger => passenger !== null,\n );\n}\n\nfunction formatBookTravelPromptValue(value: unknown): string {\n if (value === null || value === undefined) {\n return \"null\";\n }\n if (typeof value === \"string\") {\n return value;\n }\n if (typeof value === \"number\" || typeof value === \"boolean\") {\n return String(value);\n }\n if (Array.isArray(value)) {\n if (value.length === 0) {\n return \"none\";\n }\n return value\n .map(\n (entry, index) =>\n `item ${index + 1}: ${formatBookTravelPromptValue(entry)}`,\n )\n .join(\"\\n\");\n }\n if (typeof value === \"object\") {\n const entries = Object.entries(value as Record<string, unknown>);\n if (entries.length === 0) {\n return \"none\";\n }\n return entries\n .map(([key, entry]) => `${key}: ${formatBookTravelPromptValue(entry)}`)\n .join(\"\\n\");\n }\n return String(value);\n}\n\nfunction normalizeCalendarSync(value: unknown): TravelCalendarSyncPlan | null {\n if (!value || typeof value !== \"object\" || Array.isArray(value)) {\n return null;\n }\n const record = value as Record<string, unknown>;\n return {\n enabled: record.enabled !== false,\n calendarId: trimToNull(record.calendarId),\n title: trimToNull(record.title),\n description: trimToNull(record.description),\n location: trimToNull(record.location),\n timeZone: trimToNull(record.timeZone),\n };\n}\n\nfunction mergePlans(\n params: BookTravelParameters,\n extracted: ExtractedBookTravelPlan,\n): {\n offerId: string | null;\n origin: string | null;\n destination: string | null;\n departureDate: string | null;\n returnDate: string | null;\n passengerCount: number | null;\n passengers: TravelBookingPassenger[];\n calendarSync: TravelCalendarSyncPlan | null;\n} {\n const normalizedPassengers = normalizePassengers(params.passengers);\n const extractedPassengers = normalizePassengers(extracted.passengers);\n const passengers =\n normalizedPassengers.length > 0\n ? normalizedPassengers\n : extractedPassengers;\n return {\n offerId: trimToNull(params.offerId) ?? extracted.offerId,\n origin: trimToNull(params.origin) ?? extracted.origin,\n destination: trimToNull(params.destination) ?? extracted.destination,\n departureDate: trimToNull(params.departureDate) ?? extracted.departureDate,\n returnDate: trimToNull(params.returnDate) ?? extracted.returnDate,\n passengerCount:\n typeof params.passengerCount === \"number\" && params.passengerCount > 0\n ? Math.floor(params.passengerCount)\n : extracted.passengerCount,\n passengers,\n calendarSync: normalizeCalendarSync(params.calendarSync) ??\n normalizeCalendarSync(extracted.calendarSync) ?? {\n enabled: true,\n calendarId: \"primary\",\n title: null,\n description: null,\n location: null,\n timeZone: null,\n },\n };\n}\n\nfunction getParams(options: HandlerOptions | undefined): BookTravelParameters {\n return ((options?.parameters as BookTravelParameters | undefined) ??\n {}) as BookTravelParameters;\n}\n\nfunction messageText(message: Memory): string {\n return typeof message.content.text === \"string\" ? message.content.text : \"\";\n}\n\nasync function extractBookTravelPlanWithLlm(args: {\n runtime: IAgentRuntime;\n message: Memory;\n state: State | undefined;\n params: BookTravelParameters;\n}): Promise<ExtractedBookTravelPlan> {\n if (typeof args.runtime.useModel !== \"function\") {\n return {\n offerId: null,\n origin: null,\n destination: null,\n departureDate: null,\n returnDate: null,\n passengerCount: null,\n passengers: [],\n calendarSync: null,\n };\n }\n\n const recentConversation = (\n await collectRecentConversationTexts({\n runtime: args.runtime,\n message: args.message,\n state: args.state,\n limit: 6,\n })\n ).join(\"\\n\");\n\n const prompt = [\n \"Extract structured booking data for PERSONAL_ASSISTANT action=book_travel.\",\n \"Return JSON only as a single object with exactly these keys:\",\n \"offerId: string or null\",\n \"origin: IATA airport code or null\",\n \"destination: IATA airport code or null\",\n \"departureDate: YYYY-MM-DD or null\",\n \"returnDate: YYYY-MM-DD or null\",\n \"passengerCount: number or null\",\n \"passengers: passenger records if known; each record may include offerPassengerId, givenName, familyName, bornOn, email, phoneNumber, title, gender\",\n \"calendarSync: calendar sync object if known; may include enabled, calendarId, title, description, location, timeZone\",\n 'Example: {\"offerId\":null,\"origin\":\"SFO\",\"destination\":\"JFK\",\"departureDate\":\"2026-06-01\",\"returnDate\":null,\"passengerCount\":1,\"passengers\":[],\"calendarSync\":null}',\n \"\",\n \"Rules:\",\n \"- Do not invent airports, dates, or passenger birthdays.\",\n \"- Use offerId when the conversation already references a chosen offer.\",\n \"- Use null for missing values.\",\n \"- Passenger birthdays must stay in YYYY-MM-DD format when present.\",\n \"\",\n `User message:\\n${messageText(args.message)}`,\n \"\",\n `Current parameters:\\n${formatBookTravelPromptValue(args.params)}`,\n \"\",\n `Recent conversation:\\n${recentConversation}`,\n ].join(\"\\n\");\n\n let parsed: Record<string, unknown> | null = null;\n try {\n const raw = await runWithTrajectoryContext(\n { purpose: \"lifeops-book-travel\" },\n () => args.runtime.useModel(ModelType.TEXT_SMALL, { prompt }),\n );\n const rawText = typeof raw === \"string\" ? raw : \"\";\n parsed = parseJsonModelRecord<Record<string, unknown>>(rawText);\n } catch {\n parsed = null;\n }\n\n return {\n offerId: trimToNull(parsed?.offerId),\n origin: trimToNull(parsed?.origin),\n destination: trimToNull(parsed?.destination),\n departureDate: trimToNull(parsed?.departureDate),\n returnDate: trimToNull(parsed?.returnDate),\n passengerCount:\n typeof parsed?.passengerCount === \"number\" &&\n Number.isFinite(parsed.passengerCount)\n ? Math.max(1, Math.floor(parsed.passengerCount))\n : null,\n passengers: Array.isArray(parsed?.passengers)\n ? (parsed.passengers as BookTravelPassengerInput[])\n : [],\n calendarSync:\n parsed?.calendarSync && typeof parsed.calendarSync === \"object\"\n ? (parsed.calendarSync as Partial<TravelCalendarSyncPlan>)\n : null,\n };\n}\n\nfunction listMissingPassengerFields(\n passengers: TravelBookingPassenger[],\n): string[] {\n if (passengers.length > 0) {\n return [];\n }\n return [\n \"passenger given name\",\n \"passenger family name\",\n \"passenger date of birth\",\n ];\n}\n\nfunction buildMissingInfoText(missing: string[]): string {\n return `I can queue the booking once I have ${missing.join(\", \")}.`;\n}\n\nfunction buildApprovalText(request: ApprovalRequest): string {\n const payload =\n request.payload.action === \"book_travel\" ? request.payload : null;\n const route = payload?.summary?.trim() || \"this itinerary\";\n const total =\n typeof payload?.totalCents === \"number\" && payload.totalCents > 0\n ? `${(payload.totalCents / 100).toFixed(2)} ${payload.currency}`\n : (payload?.currency ?? \"the quoted total\");\n const orderType =\n payload?.orderType === \"hold\"\n ? \"hold then pay\"\n : payload?.orderType === \"instant\"\n ? \"book immediately\"\n : \"book\";\n return `Queued travel approval for ${route}. Once you approve, I will ${orderType}, complete payment, and sync the itinerary to your calendar. Current quote: ${total}.`;\n}\n\n// Internal travel-booking handler. The travel surface is delegated to from the\n// registered PERSONAL_ASSISTANT umbrella in owner-surfaces.ts; this module no\n// longer publishes a planner-visible Action. Approval execution still lives\n// here as `executeApprovedBookTravel` and is invoked by RESOLVE_REQUEST.\nexport async function runBookTravelHandler(\n runtime: IAgentRuntime,\n message: Memory,\n state: State | undefined,\n options: unknown,\n callback?: HandlerCallback,\n): Promise<ActionResult> {\n try {\n await requireFeatureEnabled(runtime, \"travel.book_flight\");\n } catch (error) {\n if (error instanceof FeatureNotEnabledError) {\n const text = error.message;\n if (callback) {\n await callback({ text });\n }\n // FEATURE_NOT_ENABLED is a \"needs setup / confirmation\" terminal\n // state — the action correctly identified what to do; the owner\n // just needs to enable the feature (e.g. sign in to Eliza Cloud).\n return {\n text,\n success: false,\n values: {\n success: false,\n error: error.code,\n featureKey: error.featureKey,\n requiresConfirmation: true,\n },\n data: {\n actionName: \"PERSONAL_ASSISTANT\",\n action: \"book_travel\",\n error: error.code,\n featureKey: error.featureKey,\n requiresConfirmation: true,\n },\n };\n }\n throw error;\n }\n\n const params = getParams(options as HandlerOptions | undefined);\n const extracted = await extractBookTravelPlanWithLlm({\n runtime,\n message,\n state,\n params,\n });\n const merged = mergePlans(params, extracted);\n\n const missing: string[] = [];\n if (!merged.offerId) {\n if (!merged.origin) {\n missing.push(\"origin airport\");\n }\n if (!merged.destination) {\n missing.push(\"destination airport\");\n }\n if (!merged.departureDate) {\n missing.push(\"departure date\");\n }\n }\n missing.push(...listMissingPassengerFields(merged.passengers));\n if (missing.length > 0) {\n const text = buildMissingInfoText(missing);\n if (callback) {\n await callback({ text });\n }\n // Selection + execution were correct: the user asked to book travel,\n // the action ran, and we now need the user to fill in missing trip\n // details. Mark as awaiting-confirmation so the native planner stops\n // chaining and the benchmark scorer treats this as completed.\n return {\n text,\n success: false,\n values: {\n success: false,\n error: \"MISSING_BOOKING_DETAILS\",\n requiresConfirmation: true,\n missing,\n },\n data: {\n actionName: \"PERSONAL_ASSISTANT\",\n action: \"book_travel\",\n error: \"MISSING_BOOKING_DETAILS\",\n requiresConfirmation: true,\n missing,\n },\n };\n }\n\n const service = new LifeOpsService(runtime);\n let search: {\n origin: string;\n destination: string;\n departureDate: string;\n returnDate?: string;\n passengers: number;\n } | null = null;\n if (!merged.offerId) {\n const { origin, destination, departureDate } = merged;\n if (!origin || !destination || !departureDate) {\n throw new Error(\n \"PERSONAL_ASSISTANT action=book_travel validated fields are unexpectedly missing\",\n );\n }\n search = {\n origin,\n destination,\n departureDate,\n returnDate: merged.returnDate ?? undefined,\n passengers: merged.passengerCount ?? merged.passengers.length,\n };\n }\n\n let prepared: Awaited<ReturnType<typeof service.prepareFlightBooking>>;\n try {\n prepared = await service.prepareFlightBooking({\n offerId: merged.offerId,\n search,\n passengers: merged.passengers,\n calendarSync: merged.calendarSync,\n });\n } catch (err) {\n if (\n !(err instanceof PaymentRequiredError) ||\n err.requirements.length === 0\n ) {\n throw err;\n }\n // Surface the x402 payment-required signal as part of the approval\n // entry rather than a hard failure: the user sees the booking\n // intent and the top-up prompt together and can approve once they\n // have credit. We bail out here because we don't have a quoted\n // offer yet — the next book_travel invocation after top-up will\n // re-quote.\n const paymentRequired: X402PaymentRequirement = err.requirements[0];\n const queue = createApprovalQueue(runtime, { agentId: runtime.agentId });\n const subjectUserId =\n typeof message.entityId === \"string\"\n ? message.entityId\n : String(runtime.agentId);\n const request = await queue.enqueue({\n requestedBy: \"PERSONAL_ASSISTANT\",\n subjectUserId,\n action: \"book_travel\",\n payload: {\n action: \"book_travel\",\n kind: \"flight\",\n provider: \"duffel\",\n itineraryRef: merged.offerId ?? \"pending-quote\",\n totalCents: 0,\n currency: \"USD\",\n offerId: merged.offerId,\n summary: merged.offerId\n ? `Booking for offer ${merged.offerId}`\n : `${merged.origin ?? \"?\"} → ${merged.destination ?? \"?\"}`,\n cost: null,\n paymentRequired: {\n amount: paymentRequired.amount,\n asset: paymentRequired.asset,\n network: paymentRequired.network,\n payTo: paymentRequired.payTo,\n scheme: paymentRequired.scheme,\n expiresAt: paymentRequired.expiresAt,\n description: paymentRequired.description,\n },\n },\n channel: \"internal\",\n reason: `Top up ${paymentRequired.amount} ${paymentRequired.asset} on ${paymentRequired.network} to book travel`,\n expiresAt: new Date(Date.now() + 24 * 60 * 60 * 1000),\n });\n const text = `Eliza Cloud needs a top-up before I can quote this trip: ${paymentRequired.amount} ${paymentRequired.asset} on ${paymentRequired.network}. I queued it for approval so you can review and pay together.`;\n if (callback) {\n await callback({ text });\n }\n return {\n text,\n success: false,\n values: {\n success: false,\n error: err.code,\n requestId: request.id,\n requiresConfirmation: true,\n },\n data: {\n actionName: \"PERSONAL_ASSISTANT\",\n action: \"book_travel\",\n error: err.code,\n requestId: request.id,\n requiresConfirmation: true,\n paymentRequired: {\n asset: paymentRequired.asset,\n network: paymentRequired.network,\n amount: paymentRequired.amount,\n },\n },\n };\n }\n\n const queue = createApprovalQueue(runtime, { agentId: runtime.agentId });\n const subjectUserId =\n typeof message.entityId === \"string\"\n ? message.entityId\n : String(runtime.agentId);\n const request = await queue.enqueue({\n requestedBy: \"PERSONAL_ASSISTANT\",\n subjectUserId,\n action: \"book_travel\",\n payload: {\n action: \"book_travel\",\n ...prepared.payload,\n },\n channel: \"internal\",\n reason: `Book ${prepared.payload.summary ?? \"travel itinerary\"} after explicit approval`,\n expiresAt: new Date(Date.now() + 24 * 60 * 60 * 1000),\n });\n\n const text = buildApprovalText(request);\n if (callback) {\n await callback({ text });\n }\n\n return {\n text,\n success: true,\n values: {\n success: true,\n requestId: request.id,\n state: request.state,\n offerId: prepared.offer.id,\n },\n data: {\n actionName: \"PERSONAL_ASSISTANT\",\n action: \"book_travel\",\n requestId: request.id,\n state: request.state,\n offerId: prepared.offer.id,\n totalAmount: prepared.offer.totalAmount,\n totalCurrency: prepared.offer.totalCurrency,\n orderType: prepared.orderType,\n },\n };\n}\n\n// Callback invoked by the approval queue once an owner approves a queued\n// book_travel request. The resolve-request action dispatches here after\n// a request transitions from pending -> approved.\nexport async function executeApprovedBookTravel(args: {\n runtime: IAgentRuntime;\n queue: ApprovalQueue;\n request: ApprovalRequest;\n callback?: HandlerCallback;\n}): Promise<ActionResult> {\n if (args.request.payload.action !== \"book_travel\") {\n throw new Error(\"executeApprovedBookTravel received a non-travel request\");\n }\n const payload = args.request.payload;\n if (payload.kind !== \"flight\") {\n throw new Error(`Unsupported travel kind: ${payload.kind}`);\n }\n if (!payload.offerId && !payload.search) {\n throw new Error(\"Approved travel booking is missing offer/search context\");\n }\n const passengers = Array.isArray(payload.passengers)\n ? payload.passengers\n : [];\n if (passengers.length === 0) {\n throw new Error(\"Approved travel booking is missing passenger details\");\n }\n\n await args.queue.markExecuting(args.request.id);\n const service = new LifeOpsService(args.runtime);\n const booked = await service.bookFlightItinerary(INTERNAL_URL, {\n offerId: payload.offerId ?? null,\n search: payload.search ?? null,\n passengers,\n calendarSync: payload.calendarSync ?? null,\n });\n const done = await args.queue.markDone(args.request.id);\n\n const route = payload.summary?.trim() || `${booked.offer.id}`;\n const bookingReference = booked.order.bookingReference\n ? ` Booking reference: ${booked.order.bookingReference}.`\n : \"\";\n const paymentText = booked.payment\n ? ` Payment ${booked.payment.id} captured for ${booked.payment.amount} ${booked.payment.currency}.`\n : \"\";\n const calendarText = booked.calendarEvent\n ? ` Synced to calendar as \"${booked.calendarEvent.title}\".`\n : \"\";\n const text =\n `Booked ${route}.${bookingReference}${paymentText}${calendarText}`.trim();\n\n if (args.callback) {\n await args.callback({ text });\n }\n\n return {\n text,\n success: true,\n values: {\n success: true,\n requestId: done.id,\n bookingReference: booked.order.bookingReference,\n orderId: booked.order.id,\n paymentId: booked.payment?.id ?? null,\n calendarEventId: booked.calendarEvent?.id ?? null,\n },\n data: {\n actionName: \"PERSONAL_ASSISTANT\",\n action: \"book_travel\",\n requestId: done.id,\n state: done.state,\n bookingReference: booked.order.bookingReference,\n orderId: booked.order.id,\n paymentId: booked.payment?.id ?? null,\n calendarEventId: booked.calendarEvent?.id ?? null,\n offerId: booked.offer.id,\n },\n };\n}\n"],"mappings":"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","names":["text","queue","subjectUserId","request"]}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `BRIEF` umbrella action — Daily Operations / morning-evening-weekly synthesis.
|
|
3
|
+
*
|
|
4
|
+
* Subactions:
|
|
5
|
+
* - `compose_morning` — `period: today` by default
|
|
6
|
+
* - `compose_evening` — `period: today` by default
|
|
7
|
+
* - `compose_weekly` — `period: this_week` by default
|
|
8
|
+
*
|
|
9
|
+
* Pulls from each domain (calendar feed, inbox triage, life-domain due items,
|
|
10
|
+
* money recurring charges) per the `include` arg, then runs a single LLM
|
|
11
|
+
* compose pass to render a narrative over the structured `LifeOpsBriefing`
|
|
12
|
+
* shape. Briefings are kept in-memory.
|
|
13
|
+
*
|
|
14
|
+
* Owner-only — `hasLifeOpsAccess` (which delegates to `hasOwnerAccess`).
|
|
15
|
+
*/
|
|
16
|
+
import type { Action, IAgentRuntime } from "@elizaos/core";
|
|
17
|
+
import type { LifeOpsBriefingCalendarItem, LifeOpsBriefingInboxItem, LifeOpsBriefingKind, LifeOpsBriefingLifeItem, LifeOpsBriefingMoneyItem, LifeOpsBriefingPeriod, LifeOpsBriefingSections } from "../types/briefing.js";
|
|
18
|
+
export { BRIEF_NARRATIVE_INSTRUCTIONS, MEETING_PREP_INSTRUCTIONS, } from "../lifeops/optimized-prompt-instructions.js";
|
|
19
|
+
type BriefOptimizationTask = "morning_brief" | "meeting_prep";
|
|
20
|
+
/**
|
|
21
|
+
* Composer hooks — overridable for tests. Defaults compose from LifeOps'
|
|
22
|
+
* structural services: calendar feed, MESSAGE triage, overview reminders, and
|
|
23
|
+
* recurring payments. Unavailable sources degrade to empty arrays.
|
|
24
|
+
*/
|
|
25
|
+
export interface BriefComposers {
|
|
26
|
+
loadCalendar: (args: {
|
|
27
|
+
runtime: IAgentRuntime;
|
|
28
|
+
period: LifeOpsBriefingPeriod;
|
|
29
|
+
}) => Promise<readonly LifeOpsBriefingCalendarItem[]>;
|
|
30
|
+
loadInbox: (args: {
|
|
31
|
+
runtime: IAgentRuntime;
|
|
32
|
+
period: LifeOpsBriefingPeriod;
|
|
33
|
+
}) => Promise<readonly LifeOpsBriefingInboxItem[]>;
|
|
34
|
+
loadLife: (args: {
|
|
35
|
+
runtime: IAgentRuntime;
|
|
36
|
+
period: LifeOpsBriefingPeriod;
|
|
37
|
+
}) => Promise<readonly LifeOpsBriefingLifeItem[]>;
|
|
38
|
+
loadMoney: (args: {
|
|
39
|
+
runtime: IAgentRuntime;
|
|
40
|
+
period: LifeOpsBriefingPeriod;
|
|
41
|
+
}) => Promise<readonly LifeOpsBriefingMoneyItem[]>;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Override the briefing composers. Service-backed loaders can be injected
|
|
45
|
+
* here at plugin init. Test-only callers reset between cases with
|
|
46
|
+
* `__resetBriefComposersForTests`.
|
|
47
|
+
*/
|
|
48
|
+
export declare function setBriefComposers(next: Partial<BriefComposers>): void;
|
|
49
|
+
export declare function __resetBriefComposersForTests(): void;
|
|
50
|
+
export declare function buildNarrativePrompt(args: {
|
|
51
|
+
kind: LifeOpsBriefingKind;
|
|
52
|
+
period: LifeOpsBriefingPeriod;
|
|
53
|
+
sections: LifeOpsBriefingSections;
|
|
54
|
+
runtime?: IAgentRuntime;
|
|
55
|
+
optimizationTask?: BriefOptimizationTask;
|
|
56
|
+
}): string;
|
|
57
|
+
export declare const briefAction: Action & {
|
|
58
|
+
suppressPostActionContinuation?: boolean;
|
|
59
|
+
};
|
|
60
|
+
//# sourceMappingURL=brief.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"brief.d.ts","sourceRoot":"","sources":["../../src/actions/brief.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EACV,MAAM,EAKN,aAAa,EAGd,MAAM,eAAe,CAAC;AAcvB,OAAO,KAAK,EAEV,2BAA2B,EAC3B,wBAAwB,EACxB,mBAAmB,EACnB,uBAAuB,EACvB,wBAAwB,EACxB,qBAAqB,EACrB,uBAAuB,EACxB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,4BAA4B,EAC5B,yBAAyB,GAC1B,MAAM,6CAA6C,CAAC;AAWrD,KAAK,qBAAqB,GAAG,eAAe,GAAG,cAAc,CAAC;AAsR9D;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,CAAC,IAAI,EAAE;QACnB,OAAO,EAAE,aAAa,CAAC;QACvB,MAAM,EAAE,qBAAqB,CAAC;KAC/B,KAAK,OAAO,CAAC,SAAS,2BAA2B,EAAE,CAAC,CAAC;IACtD,SAAS,EAAE,CAAC,IAAI,EAAE;QAChB,OAAO,EAAE,aAAa,CAAC;QACvB,MAAM,EAAE,qBAAqB,CAAC;KAC/B,KAAK,OAAO,CAAC,SAAS,wBAAwB,EAAE,CAAC,CAAC;IACnD,QAAQ,EAAE,CAAC,IAAI,EAAE;QACf,OAAO,EAAE,aAAa,CAAC;QACvB,MAAM,EAAE,qBAAqB,CAAC;KAC/B,KAAK,OAAO,CAAC,SAAS,uBAAuB,EAAE,CAAC,CAAC;IAClD,SAAS,EAAE,CAAC,IAAI,EAAE;QAChB,OAAO,EAAE,aAAa,CAAC;QACvB,MAAM,EAAE,qBAAqB,CAAC;KAC/B,KAAK,OAAO,CAAC,SAAS,wBAAwB,EAAE,CAAC,CAAC;CACpD;AAWD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI,CAErE;AAED,wBAAgB,6BAA6B,IAAI,IAAI,CAEpD;AAgGD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE;IACzC,IAAI,EAAE,mBAAmB,CAAC;IAC1B,MAAM,EAAE,qBAAqB,CAAC;IAC9B,QAAQ,EAAE,uBAAuB,CAAC;IAClC,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,gBAAgB,CAAC,EAAE,qBAAqB,CAAC;CAC1C,GAAG,MAAM,CAiCT;AAyHD,eAAO,MAAM,WAAW,EAAE,MAAM,GAAG;IACjC,8BAA8B,CAAC,EAAE,OAAO,CAAC;CAiH1C,CAAC"}
|