@elizaos/plugin-personal-assistant 2.0.3-beta.5 → 2.0.3-beta.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `pendingPromptsProvider` — surfaces open prompts for the current room so
|
|
3
|
+
* the planner can route an inbound to an open task's `complete` /
|
|
4
|
+
* `acknowledge` verb instead of treating it as a fresh request.
|
|
5
|
+
*
|
|
6
|
+
* Frozen contract (`wave1-interfaces.md` §4.3 + `GAP_ASSESSMENT.md` §3.11):
|
|
7
|
+
*
|
|
8
|
+
* list(roomId): Promise<PendingPrompt[]>
|
|
9
|
+
*
|
|
10
|
+
* Where `PendingPrompt = { taskId, promptSnippet, firedAt, expectedReplyKind, expiresAt? }`.
|
|
11
|
+
*
|
|
12
|
+
* Resolution policy (planner-side):
|
|
13
|
+
* - exactly one open prompt → planner correlates by default
|
|
14
|
+
* - multiple → planner asks the user OR uses an LLM classifier
|
|
15
|
+
* - zero → message routes as fresh
|
|
16
|
+
*
|
|
17
|
+
* Open prompts retained `expiresAt + reopenWindowHours` (default 24h).
|
|
18
|
+
*/
|
|
19
|
+
import type { IAgentRuntime, Provider } from "@elizaos/core";
|
|
20
|
+
import { type PendingPrompt } from "../lifeops/pending-prompts/store.js";
|
|
21
|
+
export type { PendingPrompt };
|
|
22
|
+
export interface PendingPromptsProvider {
|
|
23
|
+
list(roomId: string, opts?: {
|
|
24
|
+
lookbackMinutes?: number;
|
|
25
|
+
}): Promise<PendingPrompt[]>;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Build the planner-text rendering of the prompt list. Used both by the
|
|
29
|
+
* provider and externally by integration tests.
|
|
30
|
+
*/
|
|
31
|
+
export declare function renderPendingPromptsText(prompts: PendingPrompt[]): string;
|
|
32
|
+
/**
|
|
33
|
+
* Wraps the underlying store in the frozen `PendingPromptsProvider` shape
|
|
34
|
+
* for non-provider callers (the planner correlation step uses this).
|
|
35
|
+
*/
|
|
36
|
+
export declare function createPendingPromptsProvider(runtime: IAgentRuntime): PendingPromptsProvider;
|
|
37
|
+
export declare const pendingPromptsProvider: Provider;
|
|
38
|
+
//# sourceMappingURL=pending-prompts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pending-prompts.d.ts","sourceRoot":"","sources":["../../src/providers/pending-prompts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAGH,OAAO,KAAK,EACV,aAAa,EAEb,QAAQ,EAGT,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,KAAK,aAAa,EAGnB,MAAM,qCAAqC,CAAC;AAE7C,YAAY,EAAE,aAAa,EAAE,CAAC;AAE9B,MAAM,WAAW,sBAAsB;IACrC,IAAI,CACF,MAAM,EAAE,MAAM,EACd,IAAI,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,MAAM,CAAA;KAAE,GAClC,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;CAC7B;AAeD;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,aAAa,EAAE,GAAG,MAAM,CAYzE;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,aAAa,GACrB,sBAAsB,CAKxB;AAED,eAAO,MAAM,sBAAsB,EAAE,QAqDpC,CAAC"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { hasOwnerAccess } from "@elizaos/agent";
|
|
2
|
+
import { logger } from "@elizaos/core";
|
|
3
|
+
import {
|
|
4
|
+
resolvePendingPromptsStore
|
|
5
|
+
} from "../lifeops/pending-prompts/store.js";
|
|
6
|
+
const EMPTY = {
|
|
7
|
+
text: "",
|
|
8
|
+
values: { pendingPromptCount: 0 },
|
|
9
|
+
data: { pendingPrompts: [] }
|
|
10
|
+
};
|
|
11
|
+
const PROMPT_LINES_MAX = 5;
|
|
12
|
+
function formatPromptLine(prompt) {
|
|
13
|
+
const expires = prompt.expiresAt ? ` (expires ${prompt.expiresAt})` : "";
|
|
14
|
+
return `- task ${prompt.taskId}: ${prompt.promptSnippet} [reply=${prompt.expectedReplyKind}]${expires}`;
|
|
15
|
+
}
|
|
16
|
+
function renderPendingPromptsText(prompts) {
|
|
17
|
+
if (prompts.length === 0) return "";
|
|
18
|
+
const lines = prompts.slice(0, PROMPT_LINES_MAX).map((prompt) => formatPromptLine(prompt));
|
|
19
|
+
if (prompts.length > PROMPT_LINES_MAX) {
|
|
20
|
+
lines.push(`(+${prompts.length - PROMPT_LINES_MAX} more)`);
|
|
21
|
+
}
|
|
22
|
+
return [
|
|
23
|
+
"Open prompts in this room (route inbound to .complete/.acknowledge):",
|
|
24
|
+
...lines
|
|
25
|
+
].join("\n");
|
|
26
|
+
}
|
|
27
|
+
function createPendingPromptsProvider(runtime) {
|
|
28
|
+
const store = resolvePendingPromptsStore(runtime);
|
|
29
|
+
return {
|
|
30
|
+
list: (roomId, opts) => store.list(roomId, opts)
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
const pendingPromptsProvider = {
|
|
34
|
+
name: "pendingPrompts",
|
|
35
|
+
description: "Surfaces open prompts (fired ScheduledTasks awaiting the user's reply) for the current room. Lets the planner correlate the next inbound to an open task's complete/acknowledge verb.",
|
|
36
|
+
descriptionCompressed: "Open prompts per room \u2014 correlate inbound to open task verb.",
|
|
37
|
+
dynamic: true,
|
|
38
|
+
// Sit ahead of the lifeops capability provider so correlation runs first.
|
|
39
|
+
position: 11,
|
|
40
|
+
cacheScope: "turn",
|
|
41
|
+
contexts: ["messaging", "tasks"],
|
|
42
|
+
async get(runtime, message, _state) {
|
|
43
|
+
if (!await hasOwnerAccess(runtime, message)) {
|
|
44
|
+
return EMPTY;
|
|
45
|
+
}
|
|
46
|
+
const roomId = typeof message.roomId === "string" ? message.roomId : null;
|
|
47
|
+
if (!roomId) return EMPTY;
|
|
48
|
+
let store;
|
|
49
|
+
try {
|
|
50
|
+
store = resolvePendingPromptsStore(runtime);
|
|
51
|
+
} catch (error) {
|
|
52
|
+
logger.debug(
|
|
53
|
+
"[pending-prompts-provider] store unavailable:",
|
|
54
|
+
String(error)
|
|
55
|
+
);
|
|
56
|
+
return EMPTY;
|
|
57
|
+
}
|
|
58
|
+
let prompts;
|
|
59
|
+
try {
|
|
60
|
+
prompts = await store.list(roomId);
|
|
61
|
+
} catch (error) {
|
|
62
|
+
logger.debug("[pending-prompts-provider] list failed:", String(error));
|
|
63
|
+
return EMPTY;
|
|
64
|
+
}
|
|
65
|
+
if (prompts.length === 0) return EMPTY;
|
|
66
|
+
return {
|
|
67
|
+
text: renderPendingPromptsText(prompts),
|
|
68
|
+
values: {
|
|
69
|
+
pendingPromptCount: prompts.length,
|
|
70
|
+
pendingPromptTaskIds: prompts.map((p) => p.taskId)
|
|
71
|
+
},
|
|
72
|
+
data: { pendingPrompts: prompts }
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
export {
|
|
77
|
+
createPendingPromptsProvider,
|
|
78
|
+
pendingPromptsProvider,
|
|
79
|
+
renderPendingPromptsText
|
|
80
|
+
};
|
|
81
|
+
//# sourceMappingURL=pending-prompts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/providers/pending-prompts.ts"],"sourcesContent":["/**\n * `pendingPromptsProvider` — surfaces open prompts for the current room so\n * the planner can route an inbound to an open task's `complete` /\n * `acknowledge` verb instead of treating it as a fresh request.\n *\n * Frozen contract (`wave1-interfaces.md` §4.3 + `GAP_ASSESSMENT.md` §3.11):\n *\n * list(roomId): Promise<PendingPrompt[]>\n *\n * Where `PendingPrompt = { taskId, promptSnippet, firedAt, expectedReplyKind, expiresAt? }`.\n *\n * Resolution policy (planner-side):\n * - exactly one open prompt → planner correlates by default\n * - multiple → planner asks the user OR uses an LLM classifier\n * - zero → message routes as fresh\n *\n * Open prompts retained `expiresAt + reopenWindowHours` (default 24h).\n */\n\nimport { hasOwnerAccess } from \"@elizaos/agent\";\nimport type {\n IAgentRuntime,\n Memory,\n Provider,\n ProviderResult,\n State,\n} from \"@elizaos/core\";\nimport { logger } from \"@elizaos/core\";\nimport {\n type PendingPrompt,\n type PendingPromptsStore,\n resolvePendingPromptsStore,\n} from \"../lifeops/pending-prompts/store.js\";\n\nexport type { PendingPrompt };\n\nexport interface PendingPromptsProvider {\n list(\n roomId: string,\n opts?: { lookbackMinutes?: number },\n ): Promise<PendingPrompt[]>;\n}\n\nconst EMPTY: ProviderResult = {\n text: \"\",\n values: { pendingPromptCount: 0 },\n data: { pendingPrompts: [] },\n};\n\nconst PROMPT_LINES_MAX = 5;\n\nfunction formatPromptLine(prompt: PendingPrompt): string {\n const expires = prompt.expiresAt ? ` (expires ${prompt.expiresAt})` : \"\";\n return `- task ${prompt.taskId}: ${prompt.promptSnippet} [reply=${prompt.expectedReplyKind}]${expires}`;\n}\n\n/**\n * Build the planner-text rendering of the prompt list. Used both by the\n * provider and externally by integration tests.\n */\nexport function renderPendingPromptsText(prompts: PendingPrompt[]): string {\n if (prompts.length === 0) return \"\";\n const lines = prompts\n .slice(0, PROMPT_LINES_MAX)\n .map((prompt) => formatPromptLine(prompt));\n if (prompts.length > PROMPT_LINES_MAX) {\n lines.push(`(+${prompts.length - PROMPT_LINES_MAX} more)`);\n }\n return [\n \"Open prompts in this room (route inbound to .complete/.acknowledge):\",\n ...lines,\n ].join(\"\\n\");\n}\n\n/**\n * Wraps the underlying store in the frozen `PendingPromptsProvider` shape\n * for non-provider callers (the planner correlation step uses this).\n */\nexport function createPendingPromptsProvider(\n runtime: IAgentRuntime,\n): PendingPromptsProvider {\n const store: PendingPromptsStore = resolvePendingPromptsStore(runtime);\n return {\n list: (roomId: string, opts) => store.list(roomId, opts),\n };\n}\n\nexport const pendingPromptsProvider: Provider = {\n name: \"pendingPrompts\",\n description:\n \"Surfaces open prompts (fired ScheduledTasks awaiting the user's reply) \" +\n \"for the current room. Lets the planner correlate the next inbound to an open task's complete/acknowledge verb.\",\n descriptionCompressed:\n \"Open prompts per room — correlate inbound to open task verb.\",\n dynamic: true,\n // Sit ahead of the lifeops capability provider so correlation runs first.\n position: 11,\n cacheScope: \"turn\",\n contexts: [\"messaging\", \"tasks\"],\n\n async get(\n runtime: IAgentRuntime,\n message: Memory,\n _state: State,\n ): Promise<ProviderResult> {\n if (!(await hasOwnerAccess(runtime, message))) {\n return EMPTY;\n }\n const roomId = typeof message.roomId === \"string\" ? message.roomId : null;\n if (!roomId) return EMPTY;\n\n let store: PendingPromptsStore;\n try {\n store = resolvePendingPromptsStore(runtime);\n } catch (error) {\n logger.debug(\n \"[pending-prompts-provider] store unavailable:\",\n String(error),\n );\n return EMPTY;\n }\n\n let prompts: PendingPrompt[];\n try {\n prompts = await store.list(roomId);\n } catch (error) {\n logger.debug(\"[pending-prompts-provider] list failed:\", String(error));\n return EMPTY;\n }\n if (prompts.length === 0) return EMPTY;\n\n return {\n text: renderPendingPromptsText(prompts),\n values: {\n pendingPromptCount: prompts.length,\n pendingPromptTaskIds: prompts.map((p) => p.taskId),\n },\n data: { pendingPrompts: prompts },\n };\n },\n};\n"],"mappings":"AAmBA,SAAS,sBAAsB;AAQ/B,SAAS,cAAc;AACvB;AAAA,EAGE;AAAA,OACK;AAWP,MAAM,QAAwB;AAAA,EAC5B,MAAM;AAAA,EACN,QAAQ,EAAE,oBAAoB,EAAE;AAAA,EAChC,MAAM,EAAE,gBAAgB,CAAC,EAAE;AAC7B;AAEA,MAAM,mBAAmB;AAEzB,SAAS,iBAAiB,QAA+B;AACvD,QAAM,UAAU,OAAO,YAAY,aAAa,OAAO,SAAS,MAAM;AACtE,SAAO,UAAU,OAAO,MAAM,KAAK,OAAO,aAAa,WAAW,OAAO,iBAAiB,IAAI,OAAO;AACvG;AAMO,SAAS,yBAAyB,SAAkC;AACzE,MAAI,QAAQ,WAAW,EAAG,QAAO;AACjC,QAAM,QAAQ,QACX,MAAM,GAAG,gBAAgB,EACzB,IAAI,CAAC,WAAW,iBAAiB,MAAM,CAAC;AAC3C,MAAI,QAAQ,SAAS,kBAAkB;AACrC,UAAM,KAAK,KAAK,QAAQ,SAAS,gBAAgB,QAAQ;AAAA,EAC3D;AACA,SAAO;AAAA,IACL;AAAA,IACA,GAAG;AAAA,EACL,EAAE,KAAK,IAAI;AACb;AAMO,SAAS,6BACd,SACwB;AACxB,QAAM,QAA6B,2BAA2B,OAAO;AACrE,SAAO;AAAA,IACL,MAAM,CAAC,QAAgB,SAAS,MAAM,KAAK,QAAQ,IAAI;AAAA,EACzD;AACF;AAEO,MAAM,yBAAmC;AAAA,EAC9C,MAAM;AAAA,EACN,aACE;AAAA,EAEF,uBACE;AAAA,EACF,SAAS;AAAA;AAAA,EAET,UAAU;AAAA,EACV,YAAY;AAAA,EACZ,UAAU,CAAC,aAAa,OAAO;AAAA,EAE/B,MAAM,IACJ,SACA,SACA,QACyB;AACzB,QAAI,CAAE,MAAM,eAAe,SAAS,OAAO,GAAI;AAC7C,aAAO;AAAA,IACT;AACA,UAAM,SAAS,OAAO,QAAQ,WAAW,WAAW,QAAQ,SAAS;AACrE,QAAI,CAAC,OAAQ,QAAO;AAEpB,QAAI;AACJ,QAAI;AACF,cAAQ,2BAA2B,OAAO;AAAA,IAC5C,SAAS,OAAO;AACd,aAAO;AAAA,QACL;AAAA,QACA,OAAO,KAAK;AAAA,MACd;AACA,aAAO;AAAA,IACT;AAEA,QAAI;AACJ,QAAI;AACF,gBAAU,MAAM,MAAM,KAAK,MAAM;AAAA,IACnC,SAAS,OAAO;AACd,aAAO,MAAM,2CAA2C,OAAO,KAAK,CAAC;AACrE,aAAO;AAAA,IACT;AACA,QAAI,QAAQ,WAAW,EAAG,QAAO;AAEjC,WAAO;AAAA,MACL,MAAM,yBAAyB,OAAO;AAAA,MACtC,QAAQ;AAAA,QACN,oBAAoB,QAAQ;AAAA,QAC5B,sBAAsB,QAAQ,IAAI,CAAC,MAAM,EAAE,MAAM;AAAA,MACnD;AAAA,MACA,MAAM,EAAE,gBAAgB,QAAQ;AAAA,IAClC;AAAA,EACF;AACF;","names":[]}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `recentTaskStatesProvider` — summarizes recent `ScheduledTask` outcomes so
|
|
3
|
+
* the planner can (a) bring patterns up proactively (the "quiet-user
|
|
4
|
+
* watcher" reads this), and (b) answer "did I check in yesterday?" without
|
|
5
|
+
* scanning rows.
|
|
6
|
+
*
|
|
7
|
+
* Contract: summarize(opts?): Promise<{ summary, streaks, notable }>
|
|
8
|
+
*
|
|
9
|
+
* Reads the cache-backed task log maintained by the scheduled-task runner
|
|
10
|
+
* via `readScheduledTaskLog`.
|
|
11
|
+
*/
|
|
12
|
+
import type { IAgentRuntime, Provider } from "@elizaos/core";
|
|
13
|
+
import type { ScheduledTaskKind, TerminalState } from "../lifeops/scheduled-task/index.js";
|
|
14
|
+
export interface RecentTaskStateEntry {
|
|
15
|
+
taskId: string;
|
|
16
|
+
kind: ScheduledTaskKind;
|
|
17
|
+
outcome: TerminalState | "fired" | "acknowledged";
|
|
18
|
+
recordedAt: string;
|
|
19
|
+
subjectId?: string;
|
|
20
|
+
notable?: string;
|
|
21
|
+
}
|
|
22
|
+
export interface RecentTaskStatesSummary {
|
|
23
|
+
summary: string;
|
|
24
|
+
streaks: Array<{
|
|
25
|
+
kind: ScheduledTaskKind;
|
|
26
|
+
outcome: TerminalState;
|
|
27
|
+
consecutive: number;
|
|
28
|
+
}>;
|
|
29
|
+
notable: Array<{
|
|
30
|
+
taskId: string;
|
|
31
|
+
observation: string;
|
|
32
|
+
}>;
|
|
33
|
+
}
|
|
34
|
+
export interface RecentTaskStatesProvider {
|
|
35
|
+
summarize(opts?: {
|
|
36
|
+
kinds?: ScheduledTaskKind[];
|
|
37
|
+
subjectIds?: string[];
|
|
38
|
+
lookbackDays?: number;
|
|
39
|
+
}): Promise<RecentTaskStatesSummary>;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Read the scheduled-task log from the cache-backed list maintained alongside
|
|
43
|
+
* the in-memory runner. Entries surface in **chronological order (oldest first)**.
|
|
44
|
+
*/
|
|
45
|
+
export declare function readScheduledTaskLog(runtime: IAgentRuntime): Promise<RecentTaskStateEntry[]>;
|
|
46
|
+
/**
|
|
47
|
+
* Test/integration helper — append an entry to the log.
|
|
48
|
+
*/
|
|
49
|
+
export declare function appendScheduledTaskLogEntry(runtime: IAgentRuntime, entry: RecentTaskStateEntry): Promise<void>;
|
|
50
|
+
export declare function createRecentTaskStatesProvider(runtime: IAgentRuntime): RecentTaskStatesProvider;
|
|
51
|
+
export declare const recentTaskStatesProvider: Provider;
|
|
52
|
+
//# sourceMappingURL=recent-task-states.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recent-task-states.d.ts","sourceRoot":"","sources":["../../src/providers/recent-task-states.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EACV,aAAa,EAEb,QAAQ,EAGT,MAAM,eAAe,CAAC;AAGvB,OAAO,KAAK,EACV,iBAAiB,EACjB,aAAa,EACd,MAAM,oCAAoC,CAAC;AAE5C,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,iBAAiB,CAAC;IACxB,OAAO,EAAE,aAAa,GAAG,OAAO,GAAG,cAAc,CAAC;IAClD,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,KAAK,CAAC;QACb,IAAI,EAAE,iBAAiB,CAAC;QACxB,OAAO,EAAE,aAAa,CAAC;QACvB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC,CAAC;IACH,OAAO,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,wBAAwB;IACvC,SAAS,CAAC,IAAI,CAAC,EAAE;QACf,KAAK,CAAC,EAAE,iBAAiB,EAAE,CAAC;QAC5B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;QACtB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;CACtC;AAKD;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAcjC;AAED;;GAEG;AACH,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,oBAAoB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAMf;AAgGD,wBAAgB,8BAA8B,CAC5C,OAAO,EAAE,aAAa,GACrB,wBAAwB,CA8B1B;AAQD,eAAO,MAAM,wBAAwB,EAAE,QA8CtC,CAAC"}
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
import { hasOwnerAccess } from "@elizaos/agent";
|
|
2
|
+
import { logger } from "@elizaos/core";
|
|
3
|
+
import { asCacheRuntime } from "../lifeops/runtime-cache.js";
|
|
4
|
+
const TASK_LOG_CACHE_KEY = "eliza:lifeops:scheduled-task-log:v1";
|
|
5
|
+
const DEFAULT_LOOKBACK_DAYS = 7;
|
|
6
|
+
async function readScheduledTaskLog(runtime) {
|
|
7
|
+
const cache = asCacheRuntime(runtime);
|
|
8
|
+
const stored = await cache.getCache(TASK_LOG_CACHE_KEY);
|
|
9
|
+
if (!Array.isArray(stored)) return [];
|
|
10
|
+
return stored.filter(
|
|
11
|
+
(entry) => Boolean(entry) && typeof entry.taskId === "string" && typeof entry.recordedAt === "string"
|
|
12
|
+
).slice().sort((a, b) => Date.parse(a.recordedAt) - Date.parse(b.recordedAt));
|
|
13
|
+
}
|
|
14
|
+
async function appendScheduledTaskLogEntry(runtime, entry) {
|
|
15
|
+
const cache = asCacheRuntime(runtime);
|
|
16
|
+
const existing = await cache.getCache(TASK_LOG_CACHE_KEY) ?? [];
|
|
17
|
+
existing.push(entry);
|
|
18
|
+
await cache.setCache(TASK_LOG_CACHE_KEY, existing);
|
|
19
|
+
}
|
|
20
|
+
const TERMINAL_OUTCOMES = /* @__PURE__ */ new Set([
|
|
21
|
+
"completed",
|
|
22
|
+
"skipped",
|
|
23
|
+
"expired",
|
|
24
|
+
"failed",
|
|
25
|
+
"dismissed"
|
|
26
|
+
]);
|
|
27
|
+
function isTerminal(outcome) {
|
|
28
|
+
return TERMINAL_OUTCOMES.has(outcome);
|
|
29
|
+
}
|
|
30
|
+
function summarizeEntries(entries) {
|
|
31
|
+
const acc = {
|
|
32
|
+
byKind: /* @__PURE__ */ new Map(),
|
|
33
|
+
trail: /* @__PURE__ */ new Map(),
|
|
34
|
+
notable: []
|
|
35
|
+
};
|
|
36
|
+
for (const entry of entries) {
|
|
37
|
+
const bucket = acc.byKind.get(entry.kind) ?? {
|
|
38
|
+
fires: 0,
|
|
39
|
+
outcomes: /* @__PURE__ */ new Map()
|
|
40
|
+
};
|
|
41
|
+
bucket.fires += 1;
|
|
42
|
+
bucket.outcomes.set(
|
|
43
|
+
entry.outcome,
|
|
44
|
+
(bucket.outcomes.get(entry.outcome) ?? 0) + 1
|
|
45
|
+
);
|
|
46
|
+
acc.byKind.set(entry.kind, bucket);
|
|
47
|
+
if (isTerminal(entry.outcome)) {
|
|
48
|
+
const trail = acc.trail.get(entry.kind) ?? [];
|
|
49
|
+
trail.push(entry.outcome);
|
|
50
|
+
acc.trail.set(entry.kind, trail);
|
|
51
|
+
}
|
|
52
|
+
if (entry.notable) {
|
|
53
|
+
acc.notable.push({ taskId: entry.taskId, observation: entry.notable });
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
const streaks = [];
|
|
57
|
+
for (const [kind, trail] of acc.trail) {
|
|
58
|
+
if (trail.length === 0) continue;
|
|
59
|
+
const tail = trail[trail.length - 1];
|
|
60
|
+
let consecutive = 1;
|
|
61
|
+
for (let i = trail.length - 2; i >= 0; i -= 1) {
|
|
62
|
+
if (trail[i] === tail) consecutive += 1;
|
|
63
|
+
else break;
|
|
64
|
+
}
|
|
65
|
+
if (consecutive >= 2) {
|
|
66
|
+
streaks.push({ kind, outcome: tail, consecutive });
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
const summaryLines = [];
|
|
70
|
+
for (const [kind, bucket] of acc.byKind) {
|
|
71
|
+
const completed = bucket.outcomes.get("completed") ?? 0;
|
|
72
|
+
const skipped = bucket.outcomes.get("skipped") ?? 0;
|
|
73
|
+
const expired = bucket.outcomes.get("expired") ?? 0;
|
|
74
|
+
const dismissed = bucket.outcomes.get("dismissed") ?? 0;
|
|
75
|
+
summaryLines.push(
|
|
76
|
+
`${kind}: ${completed} done / ${skipped} skipped / ${expired} expired / ${dismissed} dismissed (over ${bucket.fires} fires)`
|
|
77
|
+
);
|
|
78
|
+
}
|
|
79
|
+
for (const streak of streaks) {
|
|
80
|
+
if (streak.consecutive >= 3) {
|
|
81
|
+
summaryLines.push(
|
|
82
|
+
`${streak.kind} ${streak.outcome} streak: ${streak.consecutive} in a row`
|
|
83
|
+
);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
if (summaryLines.length === 0) {
|
|
87
|
+
summaryLines.push(
|
|
88
|
+
"No recent scheduled-task activity in the lookback window."
|
|
89
|
+
);
|
|
90
|
+
}
|
|
91
|
+
return {
|
|
92
|
+
summary: summaryLines.join("\n"),
|
|
93
|
+
streaks,
|
|
94
|
+
notable: acc.notable.slice(0, 10)
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
function createRecentTaskStatesProvider(runtime) {
|
|
98
|
+
return {
|
|
99
|
+
async summarize(opts = {}) {
|
|
100
|
+
const lookbackDays = opts.lookbackDays ?? DEFAULT_LOOKBACK_DAYS;
|
|
101
|
+
const cutoffMs = Date.now() - lookbackDays * 864e5;
|
|
102
|
+
const log = await readScheduledTaskLog(runtime);
|
|
103
|
+
const filtered = log.filter((entry) => {
|
|
104
|
+
const recordedMs = Date.parse(entry.recordedAt);
|
|
105
|
+
if (!Number.isFinite(recordedMs) || recordedMs < cutoffMs) {
|
|
106
|
+
return false;
|
|
107
|
+
}
|
|
108
|
+
if (opts.kinds && opts.kinds.length > 0 && !opts.kinds.includes(entry.kind)) {
|
|
109
|
+
return false;
|
|
110
|
+
}
|
|
111
|
+
if (opts.subjectIds && opts.subjectIds.length > 0 && (!entry.subjectId || !opts.subjectIds.includes(entry.subjectId))) {
|
|
112
|
+
return false;
|
|
113
|
+
}
|
|
114
|
+
return true;
|
|
115
|
+
});
|
|
116
|
+
return summarizeEntries(filtered);
|
|
117
|
+
}
|
|
118
|
+
};
|
|
119
|
+
}
|
|
120
|
+
const EMPTY = {
|
|
121
|
+
text: "",
|
|
122
|
+
values: { recentTaskStateCount: 0 },
|
|
123
|
+
data: {}
|
|
124
|
+
};
|
|
125
|
+
const recentTaskStatesProvider = {
|
|
126
|
+
name: "recentTaskStates",
|
|
127
|
+
description: "Summarizes recent ScheduledTask outcomes (streaks, missed check-ins, completion counts) so the planner can answer 'did I check in yesterday?' and the quiet-user watcher can flag silence.",
|
|
128
|
+
descriptionCompressed: "Recent ScheduledTask outcomes \u2014 streaks + summary text.",
|
|
129
|
+
dynamic: true,
|
|
130
|
+
position: 13,
|
|
131
|
+
cacheScope: "turn",
|
|
132
|
+
contexts: ["tasks", "automation"],
|
|
133
|
+
async get(runtime, message, _state) {
|
|
134
|
+
if (!await hasOwnerAccess(runtime, message)) {
|
|
135
|
+
return EMPTY;
|
|
136
|
+
}
|
|
137
|
+
let summary;
|
|
138
|
+
try {
|
|
139
|
+
summary = await createRecentTaskStatesProvider(runtime).summarize();
|
|
140
|
+
} catch (error) {
|
|
141
|
+
logger.debug(
|
|
142
|
+
"[recent-task-states-provider] summarize failed:",
|
|
143
|
+
String(error)
|
|
144
|
+
);
|
|
145
|
+
return EMPTY;
|
|
146
|
+
}
|
|
147
|
+
if (!summary.summary || summary.summary.startsWith("No recent scheduled-task activity")) {
|
|
148
|
+
return EMPTY;
|
|
149
|
+
}
|
|
150
|
+
return {
|
|
151
|
+
text: summary.summary,
|
|
152
|
+
values: {
|
|
153
|
+
recentTaskStateCount: summary.streaks.length,
|
|
154
|
+
notableCount: summary.notable.length
|
|
155
|
+
},
|
|
156
|
+
data: { recentTaskStates: summary }
|
|
157
|
+
};
|
|
158
|
+
}
|
|
159
|
+
};
|
|
160
|
+
export {
|
|
161
|
+
appendScheduledTaskLogEntry,
|
|
162
|
+
createRecentTaskStatesProvider,
|
|
163
|
+
readScheduledTaskLog,
|
|
164
|
+
recentTaskStatesProvider
|
|
165
|
+
};
|
|
166
|
+
//# sourceMappingURL=recent-task-states.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/providers/recent-task-states.ts"],"sourcesContent":["/**\n * `recentTaskStatesProvider` — summarizes recent `ScheduledTask` outcomes so\n * the planner can (a) bring patterns up proactively (the \"quiet-user\n * watcher\" reads this), and (b) answer \"did I check in yesterday?\" without\n * scanning rows.\n *\n * Contract: summarize(opts?): Promise<{ summary, streaks, notable }>\n *\n * Reads the cache-backed task log maintained by the scheduled-task runner\n * via `readScheduledTaskLog`.\n */\n\nimport { hasOwnerAccess } from \"@elizaos/agent\";\nimport type {\n IAgentRuntime,\n Memory,\n Provider,\n ProviderResult,\n State,\n} from \"@elizaos/core\";\nimport { logger } from \"@elizaos/core\";\nimport { asCacheRuntime } from \"../lifeops/runtime-cache.js\";\nimport type {\n ScheduledTaskKind,\n TerminalState,\n} from \"../lifeops/scheduled-task/index.js\";\n\nexport interface RecentTaskStateEntry {\n taskId: string;\n kind: ScheduledTaskKind;\n outcome: TerminalState | \"fired\" | \"acknowledged\";\n recordedAt: string;\n subjectId?: string;\n notable?: string;\n}\n\nexport interface RecentTaskStatesSummary {\n summary: string;\n streaks: Array<{\n kind: ScheduledTaskKind;\n outcome: TerminalState;\n consecutive: number;\n }>;\n notable: Array<{ taskId: string; observation: string }>;\n}\n\nexport interface RecentTaskStatesProvider {\n summarize(opts?: {\n kinds?: ScheduledTaskKind[];\n subjectIds?: string[];\n lookbackDays?: number;\n }): Promise<RecentTaskStatesSummary>;\n}\n\nconst TASK_LOG_CACHE_KEY = \"eliza:lifeops:scheduled-task-log:v1\";\nconst DEFAULT_LOOKBACK_DAYS = 7;\n\n/**\n * Read the scheduled-task log from the cache-backed list maintained alongside\n * the in-memory runner. Entries surface in **chronological order (oldest first)**.\n */\nexport async function readScheduledTaskLog(\n runtime: IAgentRuntime,\n): Promise<RecentTaskStateEntry[]> {\n const cache = asCacheRuntime(runtime);\n const stored =\n await cache.getCache<RecentTaskStateEntry[]>(TASK_LOG_CACHE_KEY);\n if (!Array.isArray(stored)) return [];\n return stored\n .filter(\n (entry): entry is RecentTaskStateEntry =>\n Boolean(entry) &&\n typeof entry.taskId === \"string\" &&\n typeof entry.recordedAt === \"string\",\n )\n .slice()\n .sort((a, b) => Date.parse(a.recordedAt) - Date.parse(b.recordedAt));\n}\n\n/**\n * Test/integration helper — append an entry to the log.\n */\nexport async function appendScheduledTaskLogEntry(\n runtime: IAgentRuntime,\n entry: RecentTaskStateEntry,\n): Promise<void> {\n const cache = asCacheRuntime(runtime);\n const existing =\n (await cache.getCache<RecentTaskStateEntry[]>(TASK_LOG_CACHE_KEY)) ?? [];\n existing.push(entry);\n await cache.setCache<RecentTaskStateEntry[]>(TASK_LOG_CACHE_KEY, existing);\n}\n\nconst TERMINAL_OUTCOMES: ReadonlySet<TerminalState> = new Set<TerminalState>([\n \"completed\",\n \"skipped\",\n \"expired\",\n \"failed\",\n \"dismissed\",\n]);\n\nfunction isTerminal(outcome: string): outcome is TerminalState {\n return TERMINAL_OUTCOMES.has(outcome as TerminalState);\n}\n\ninterface SummaryAccumulator {\n byKind: Map<\n ScheduledTaskKind,\n { fires: number; outcomes: Map<string, number> }\n >;\n /** kind → ordered terminal outcomes (chronological) */\n trail: Map<ScheduledTaskKind, TerminalState[]>;\n notable: Array<{ taskId: string; observation: string }>;\n}\n\nfunction summarizeEntries(\n entries: RecentTaskStateEntry[],\n): RecentTaskStatesSummary {\n const acc: SummaryAccumulator = {\n byKind: new Map(),\n trail: new Map(),\n notable: [],\n };\n for (const entry of entries) {\n const bucket = acc.byKind.get(entry.kind) ?? {\n fires: 0,\n outcomes: new Map<string, number>(),\n };\n bucket.fires += 1;\n bucket.outcomes.set(\n entry.outcome,\n (bucket.outcomes.get(entry.outcome) ?? 0) + 1,\n );\n acc.byKind.set(entry.kind, bucket);\n if (isTerminal(entry.outcome)) {\n const trail = acc.trail.get(entry.kind) ?? [];\n trail.push(entry.outcome);\n acc.trail.set(entry.kind, trail);\n }\n if (entry.notable) {\n acc.notable.push({ taskId: entry.taskId, observation: entry.notable });\n }\n }\n\n const streaks: RecentTaskStatesSummary[\"streaks\"] = [];\n for (const [kind, trail] of acc.trail) {\n if (trail.length === 0) continue;\n const tail = trail[trail.length - 1];\n let consecutive = 1;\n for (let i = trail.length - 2; i >= 0; i -= 1) {\n if (trail[i] === tail) consecutive += 1;\n else break;\n }\n if (consecutive >= 2) {\n streaks.push({ kind, outcome: tail, consecutive });\n }\n }\n\n const summaryLines: string[] = [];\n for (const [kind, bucket] of acc.byKind) {\n const completed = bucket.outcomes.get(\"completed\") ?? 0;\n const skipped = bucket.outcomes.get(\"skipped\") ?? 0;\n const expired = bucket.outcomes.get(\"expired\") ?? 0;\n const dismissed = bucket.outcomes.get(\"dismissed\") ?? 0;\n summaryLines.push(\n `${kind}: ${completed} done / ${skipped} skipped / ${expired} expired / ${dismissed} dismissed (over ${bucket.fires} fires)`,\n );\n }\n for (const streak of streaks) {\n if (streak.consecutive >= 3) {\n summaryLines.push(\n `${streak.kind} ${streak.outcome} streak: ${streak.consecutive} in a row`,\n );\n }\n }\n if (summaryLines.length === 0) {\n summaryLines.push(\n \"No recent scheduled-task activity in the lookback window.\",\n );\n }\n return {\n summary: summaryLines.join(\"\\n\"),\n streaks,\n notable: acc.notable.slice(0, 10),\n };\n}\n\nexport function createRecentTaskStatesProvider(\n runtime: IAgentRuntime,\n): RecentTaskStatesProvider {\n return {\n async summarize(opts = {}) {\n const lookbackDays = opts.lookbackDays ?? DEFAULT_LOOKBACK_DAYS;\n const cutoffMs = Date.now() - lookbackDays * 86_400_000;\n const log = await readScheduledTaskLog(runtime);\n const filtered = log.filter((entry) => {\n const recordedMs = Date.parse(entry.recordedAt);\n if (!Number.isFinite(recordedMs) || recordedMs < cutoffMs) {\n return false;\n }\n if (\n opts.kinds &&\n opts.kinds.length > 0 &&\n !opts.kinds.includes(entry.kind)\n ) {\n return false;\n }\n if (\n opts.subjectIds &&\n opts.subjectIds.length > 0 &&\n (!entry.subjectId || !opts.subjectIds.includes(entry.subjectId))\n ) {\n return false;\n }\n return true;\n });\n return summarizeEntries(filtered);\n },\n };\n}\n\nconst EMPTY: ProviderResult = {\n text: \"\",\n values: { recentTaskStateCount: 0 },\n data: {},\n};\n\nexport const recentTaskStatesProvider: Provider = {\n name: \"recentTaskStates\",\n description:\n \"Summarizes recent ScheduledTask outcomes (streaks, missed check-ins, \" +\n \"completion counts) so the planner can answer 'did I check in yesterday?' \" +\n \"and the quiet-user watcher can flag silence.\",\n descriptionCompressed:\n \"Recent ScheduledTask outcomes — streaks + summary text.\",\n dynamic: true,\n position: 13,\n cacheScope: \"turn\",\n contexts: [\"tasks\", \"automation\"],\n\n async get(\n runtime: IAgentRuntime,\n message: Memory,\n _state: State,\n ): Promise<ProviderResult> {\n if (!(await hasOwnerAccess(runtime, message))) {\n return EMPTY;\n }\n let summary: RecentTaskStatesSummary;\n try {\n summary = await createRecentTaskStatesProvider(runtime).summarize();\n } catch (error) {\n logger.debug(\n \"[recent-task-states-provider] summarize failed:\",\n String(error),\n );\n return EMPTY;\n }\n if (\n !summary.summary ||\n summary.summary.startsWith(\"No recent scheduled-task activity\")\n ) {\n return EMPTY;\n }\n return {\n text: summary.summary,\n values: {\n recentTaskStateCount: summary.streaks.length,\n notableCount: summary.notable.length,\n },\n data: { recentTaskStates: summary },\n };\n },\n};\n"],"mappings":"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","names":[]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `roomPolicyProvider` — runs early in context assembly per
|
|
3
|
+
* `GAP_ASSESSMENT.md` §3.14. If `HandoffStore.status(roomId).active`, it
|
|
4
|
+
* injects "this room is in handoff mode — do not respond unless [resume
|
|
5
|
+
* condition]" into the planner context.
|
|
6
|
+
*
|
|
7
|
+
* Combined with the planner's standard discretion, this halts agent
|
|
8
|
+
* contributions cleanly until the resume condition fires.
|
|
9
|
+
*
|
|
10
|
+
* Position: `-9` so it lands ahead of capability providers but after the
|
|
11
|
+
* `firstRunProvider` (`-10`). The first-run affordance still wins on a
|
|
12
|
+
* fresh boot.
|
|
13
|
+
*/
|
|
14
|
+
import type { Provider } from "@elizaos/core";
|
|
15
|
+
export declare const roomPolicyProvider: Provider;
|
|
16
|
+
//# sourceMappingURL=room-policy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"room-policy.d.ts","sourceRoot":"","sources":["../../src/providers/room-policy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAGV,QAAQ,EAGT,MAAM,eAAe,CAAC;AAevB,eAAO,MAAM,kBAAkB,EAAE,QAyEhC,CAAC"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { logger } from "@elizaos/core";
|
|
2
|
+
import {
|
|
3
|
+
describeResumeCondition,
|
|
4
|
+
resolveHandoffStore
|
|
5
|
+
} from "../lifeops/handoff/store.js";
|
|
6
|
+
const QUIET_RESULT = {
|
|
7
|
+
text: "",
|
|
8
|
+
values: { roomInHandoff: false },
|
|
9
|
+
data: {}
|
|
10
|
+
};
|
|
11
|
+
const ONE_LINE_MAX = 240;
|
|
12
|
+
const roomPolicyProvider = {
|
|
13
|
+
name: "roomPolicy",
|
|
14
|
+
description: "Per-room policy gate. Surfaces `HandoffStore` state to the planner so the agent stops contributing in rooms that are in handoff mode until the registered resume condition fires.",
|
|
15
|
+
descriptionCompressed: "Handoff-mode gate; injects stay-quiet directive when room is handed off.",
|
|
16
|
+
dynamic: true,
|
|
17
|
+
position: -9,
|
|
18
|
+
cacheScope: "turn",
|
|
19
|
+
async get(runtime, message, _state) {
|
|
20
|
+
const roomId = typeof message.roomId === "string" && message.roomId.length > 0 ? message.roomId : null;
|
|
21
|
+
if (!roomId) {
|
|
22
|
+
return QUIET_RESULT;
|
|
23
|
+
}
|
|
24
|
+
let store;
|
|
25
|
+
try {
|
|
26
|
+
store = resolveHandoffStore(runtime);
|
|
27
|
+
} catch (error) {
|
|
28
|
+
logger.debug(
|
|
29
|
+
"[room-policy-provider] handoff store unavailable:",
|
|
30
|
+
String(error)
|
|
31
|
+
);
|
|
32
|
+
return QUIET_RESULT;
|
|
33
|
+
}
|
|
34
|
+
let status;
|
|
35
|
+
try {
|
|
36
|
+
status = await store.status(roomId);
|
|
37
|
+
} catch (error) {
|
|
38
|
+
logger.debug(
|
|
39
|
+
"[room-policy-provider] handoff status read failed:",
|
|
40
|
+
String(error)
|
|
41
|
+
);
|
|
42
|
+
return QUIET_RESULT;
|
|
43
|
+
}
|
|
44
|
+
if (!status.active) {
|
|
45
|
+
return QUIET_RESULT;
|
|
46
|
+
}
|
|
47
|
+
const resumePhrase = status.resumeOn ? describeResumeCondition(status.resumeOn) : "the resume condition fires";
|
|
48
|
+
const directive = `This room is in handoff mode (since ${status.enteredAt ?? "earlier"}; reason: ${status.reason ?? "n/a"}). Do not respond unless ${resumePhrase}. Stay silent \u2014 defer to the human participants.`;
|
|
49
|
+
const text = directive.slice(0, ONE_LINE_MAX);
|
|
50
|
+
return {
|
|
51
|
+
text,
|
|
52
|
+
values: {
|
|
53
|
+
roomInHandoff: true,
|
|
54
|
+
handoffEnteredAt: status.enteredAt ?? "",
|
|
55
|
+
handoffResumeKind: status.resumeOn?.kind ?? ""
|
|
56
|
+
},
|
|
57
|
+
data: {
|
|
58
|
+
handoff: {
|
|
59
|
+
active: true,
|
|
60
|
+
enteredAt: status.enteredAt,
|
|
61
|
+
reason: status.reason,
|
|
62
|
+
resumeOn: status.resumeOn
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
};
|
|
68
|
+
export {
|
|
69
|
+
roomPolicyProvider
|
|
70
|
+
};
|
|
71
|
+
//# sourceMappingURL=room-policy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/providers/room-policy.ts"],"sourcesContent":["/**\n * `roomPolicyProvider` — runs early in context assembly per\n * `GAP_ASSESSMENT.md` §3.14. If `HandoffStore.status(roomId).active`, it\n * injects \"this room is in handoff mode — do not respond unless [resume\n * condition]\" into the planner context.\n *\n * Combined with the planner's standard discretion, this halts agent\n * contributions cleanly until the resume condition fires.\n *\n * Position: `-9` so it lands ahead of capability providers but after the\n * `firstRunProvider` (`-10`). The first-run affordance still wins on a\n * fresh boot.\n */\n\nimport type {\n IAgentRuntime,\n Memory,\n Provider,\n ProviderResult,\n State,\n} from \"@elizaos/core\";\nimport { logger } from \"@elizaos/core\";\nimport {\n describeResumeCondition,\n resolveHandoffStore,\n} from \"../lifeops/handoff/store.js\";\n\nconst QUIET_RESULT: ProviderResult = {\n text: \"\",\n values: { roomInHandoff: false },\n data: {},\n};\n\nconst ONE_LINE_MAX = 240;\n\nexport const roomPolicyProvider: Provider = {\n name: \"roomPolicy\",\n description:\n \"Per-room policy gate. Surfaces `HandoffStore` state to the planner so the agent stops contributing in rooms that are in handoff mode until the registered resume condition fires.\",\n descriptionCompressed:\n \"Handoff-mode gate; injects stay-quiet directive when room is handed off.\",\n dynamic: true,\n position: -9,\n cacheScope: \"turn\",\n\n async get(\n runtime: IAgentRuntime,\n message: Memory,\n _state: State,\n ): Promise<ProviderResult> {\n const roomId =\n typeof message.roomId === \"string\" && message.roomId.length > 0\n ? message.roomId\n : null;\n if (!roomId) {\n return QUIET_RESULT;\n }\n\n let store: ReturnType<typeof resolveHandoffStore>;\n try {\n store = resolveHandoffStore(runtime);\n } catch (error) {\n logger.debug(\n \"[room-policy-provider] handoff store unavailable:\",\n String(error),\n );\n return QUIET_RESULT;\n }\n\n let status: Awaited<ReturnType<typeof store.status>>;\n try {\n status = await store.status(roomId);\n } catch (error) {\n logger.debug(\n \"[room-policy-provider] handoff status read failed:\",\n String(error),\n );\n return QUIET_RESULT;\n }\n\n if (!status.active) {\n return QUIET_RESULT;\n }\n\n const resumePhrase = status.resumeOn\n ? describeResumeCondition(status.resumeOn)\n : \"the resume condition fires\";\n const directive =\n `This room is in handoff mode (since ${status.enteredAt ?? \"earlier\"}; reason: ${status.reason ?? \"n/a\"}). ` +\n `Do not respond unless ${resumePhrase}. Stay silent — defer to the human participants.`;\n const text = directive.slice(0, ONE_LINE_MAX);\n return {\n text,\n values: {\n roomInHandoff: true,\n handoffEnteredAt: status.enteredAt ?? \"\",\n handoffResumeKind: status.resumeOn?.kind ?? \"\",\n },\n data: {\n handoff: {\n active: true,\n enteredAt: status.enteredAt,\n reason: status.reason,\n resumeOn: status.resumeOn,\n },\n },\n };\n },\n};\n"],"mappings":"AAqBA,SAAS,cAAc;AACvB;AAAA,EACE;AAAA,EACA;AAAA,OACK;AAEP,MAAM,eAA+B;AAAA,EACnC,MAAM;AAAA,EACN,QAAQ,EAAE,eAAe,MAAM;AAAA,EAC/B,MAAM,CAAC;AACT;AAEA,MAAM,eAAe;AAEd,MAAM,qBAA+B;AAAA,EAC1C,MAAM;AAAA,EACN,aACE;AAAA,EACF,uBACE;AAAA,EACF,SAAS;AAAA,EACT,UAAU;AAAA,EACV,YAAY;AAAA,EAEZ,MAAM,IACJ,SACA,SACA,QACyB;AACzB,UAAM,SACJ,OAAO,QAAQ,WAAW,YAAY,QAAQ,OAAO,SAAS,IAC1D,QAAQ,SACR;AACN,QAAI,CAAC,QAAQ;AACX,aAAO;AAAA,IACT;AAEA,QAAI;AACJ,QAAI;AACF,cAAQ,oBAAoB,OAAO;AAAA,IACrC,SAAS,OAAO;AACd,aAAO;AAAA,QACL;AAAA,QACA,OAAO,KAAK;AAAA,MACd;AACA,aAAO;AAAA,IACT;AAEA,QAAI;AACJ,QAAI;AACF,eAAS,MAAM,MAAM,OAAO,MAAM;AAAA,IACpC,SAAS,OAAO;AACd,aAAO;AAAA,QACL;AAAA,QACA,OAAO,KAAK;AAAA,MACd;AACA,aAAO;AAAA,IACT;AAEA,QAAI,CAAC,OAAO,QAAQ;AAClB,aAAO;AAAA,IACT;AAEA,UAAM,eAAe,OAAO,WACxB,wBAAwB,OAAO,QAAQ,IACvC;AACJ,UAAM,YACJ,uCAAuC,OAAO,aAAa,SAAS,aAAa,OAAO,UAAU,KAAK,4BAC9E,YAAY;AACvC,UAAM,OAAO,UAAU,MAAM,GAAG,YAAY;AAC5C,WAAO;AAAA,MACL;AAAA,MACA,QAAQ;AAAA,QACN,eAAe;AAAA,QACf,kBAAkB,OAAO,aAAa;AAAA,QACtC,mBAAmB,OAAO,UAAU,QAAQ;AAAA,MAC9C;AAAA,MACA,MAAM;AAAA,QACJ,SAAS;AAAA,UACP,QAAQ;AAAA,UACR,WAAW,OAAO;AAAA,UAClB,QAAQ,OAAO;AAAA,UACf,UAAU,OAAO;AAAA,QACnB;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"work-threads.d.ts","sourceRoot":"","sources":["../../src/providers/work-threads.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAGV,QAAQ,EAGT,MAAM,eAAe,CAAC;AAyDvB,eAAO,MAAM,mBAAmB,EAAE,QAsEjC,CAAC"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { hasOwnerAccess } from "@elizaos/agent";
|
|
2
|
+
import {
|
|
3
|
+
createWorkThreadStore
|
|
4
|
+
} from "../lifeops/work-threads/index.js";
|
|
5
|
+
const EMPTY = {
|
|
6
|
+
text: "",
|
|
7
|
+
values: { workThreadCount: 0 },
|
|
8
|
+
data: { workThreads: [] }
|
|
9
|
+
};
|
|
10
|
+
const MAX_THREADS = 8;
|
|
11
|
+
function threadMutability(thread, roomId) {
|
|
12
|
+
const refs = [thread.primarySourceRef, ...thread.sourceRefs];
|
|
13
|
+
const currentRoomRef = roomId ? refs.find((ref) => ref.roomId === roomId) : void 0;
|
|
14
|
+
if (currentRoomRef?.canMutate) {
|
|
15
|
+
return "mutable-current-channel";
|
|
16
|
+
}
|
|
17
|
+
if (currentRoomRef?.canRead) {
|
|
18
|
+
return "read-only-current-channel";
|
|
19
|
+
}
|
|
20
|
+
return "read-only-cross-channel";
|
|
21
|
+
}
|
|
22
|
+
function renderWorkThreadsText(threads, roomId) {
|
|
23
|
+
if (threads.length === 0) {
|
|
24
|
+
return "";
|
|
25
|
+
}
|
|
26
|
+
const lines = threads.slice(0, MAX_THREADS).map((thread) => {
|
|
27
|
+
const source = thread.primarySourceRef;
|
|
28
|
+
const channel = source.channelName ?? source.roomId ?? source.externalThreadId ?? "unknown-channel";
|
|
29
|
+
const plan = thread.currentPlanSummary ? ` plan=${thread.currentPlanSummary}` : "";
|
|
30
|
+
return `- ${thread.id} [${thread.status}; ${threadMutability(thread, roomId)}; ${source.connector}/${channel}]: ${thread.title} - ${thread.summary}${plan}`;
|
|
31
|
+
});
|
|
32
|
+
if (threads.length > MAX_THREADS) {
|
|
33
|
+
lines.push(`(+${threads.length - MAX_THREADS} more)`);
|
|
34
|
+
}
|
|
35
|
+
return [
|
|
36
|
+
"Active LifeOps work threads:",
|
|
37
|
+
"Use lifeops_thread_control only for lifecycle/routing. Cross-channel entries are read-only unless current-channel mutability is shown.",
|
|
38
|
+
...lines
|
|
39
|
+
].join("\n");
|
|
40
|
+
}
|
|
41
|
+
const workThreadsProvider = {
|
|
42
|
+
name: "workThreads",
|
|
43
|
+
description: "Surfaces active LifeOps work threads for the current room and owner. Current-room mutable refs may be steered; cross-channel refs are read-only summaries.",
|
|
44
|
+
descriptionCompressed: "Active work threads: current-channel mutable, cross-channel read-only summaries.",
|
|
45
|
+
dynamic: true,
|
|
46
|
+
position: 12,
|
|
47
|
+
cacheScope: "turn",
|
|
48
|
+
contexts: ["tasks", "messaging", "automation"],
|
|
49
|
+
async get(runtime, message, _state) {
|
|
50
|
+
if (!await hasOwnerAccess(runtime, message)) {
|
|
51
|
+
return EMPTY;
|
|
52
|
+
}
|
|
53
|
+
const roomId = typeof message.roomId === "string" ? message.roomId : null;
|
|
54
|
+
const ownerEntityId = typeof message.entityId === "string" && message.entityId.length > 0 ? message.entityId : void 0;
|
|
55
|
+
const store = createWorkThreadStore(runtime);
|
|
56
|
+
const currentRoomThreads = roomId ? await store.list({
|
|
57
|
+
statuses: ["active", "waiting", "paused"],
|
|
58
|
+
roomId,
|
|
59
|
+
limit: MAX_THREADS
|
|
60
|
+
}) : [];
|
|
61
|
+
const ownerThreads = ownerEntityId ? await store.list({
|
|
62
|
+
statuses: ["active", "waiting", "paused"],
|
|
63
|
+
ownerEntityId,
|
|
64
|
+
includeCrossChannel: true,
|
|
65
|
+
limit: MAX_THREADS
|
|
66
|
+
}) : [];
|
|
67
|
+
const byId = /* @__PURE__ */ new Map();
|
|
68
|
+
for (const thread of [...currentRoomThreads, ...ownerThreads]) {
|
|
69
|
+
byId.set(thread.id, thread);
|
|
70
|
+
}
|
|
71
|
+
const currentRoomThreadIds = new Set(
|
|
72
|
+
currentRoomThreads.map((thread) => thread.id)
|
|
73
|
+
);
|
|
74
|
+
const threads = [...byId.values()].sort((a, b) => {
|
|
75
|
+
const currentRoomDelta = Number(currentRoomThreadIds.has(b.id)) - Number(currentRoomThreadIds.has(a.id));
|
|
76
|
+
if (currentRoomDelta !== 0) {
|
|
77
|
+
return currentRoomDelta;
|
|
78
|
+
}
|
|
79
|
+
return Date.parse(b.lastActivityAt) - Date.parse(a.lastActivityAt);
|
|
80
|
+
}).slice(0, MAX_THREADS);
|
|
81
|
+
if (threads.length === 0) {
|
|
82
|
+
return EMPTY;
|
|
83
|
+
}
|
|
84
|
+
return {
|
|
85
|
+
text: renderWorkThreadsText(threads, roomId),
|
|
86
|
+
values: {
|
|
87
|
+
workThreadCount: threads.length,
|
|
88
|
+
workThreadIds: threads.map((thread) => thread.id)
|
|
89
|
+
},
|
|
90
|
+
data: { workThreads: threads }
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
};
|
|
94
|
+
export {
|
|
95
|
+
workThreadsProvider
|
|
96
|
+
};
|
|
97
|
+
//# sourceMappingURL=work-threads.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/providers/work-threads.ts"],"sourcesContent":["import { hasOwnerAccess } from \"@elizaos/agent\";\nimport type {\n IAgentRuntime,\n Memory,\n Provider,\n ProviderResult,\n State,\n} from \"@elizaos/core\";\nimport {\n createWorkThreadStore,\n type WorkThread,\n} from \"../lifeops/work-threads/index.js\";\n\nconst EMPTY: ProviderResult = {\n text: \"\",\n values: { workThreadCount: 0 },\n data: { workThreads: [] },\n};\n\nconst MAX_THREADS = 8;\n\nfunction threadMutability(thread: WorkThread, roomId: string | null): string {\n const refs = [thread.primarySourceRef, ...thread.sourceRefs];\n const currentRoomRef = roomId\n ? refs.find((ref) => ref.roomId === roomId)\n : undefined;\n if (currentRoomRef?.canMutate) {\n return \"mutable-current-channel\";\n }\n if (currentRoomRef?.canRead) {\n return \"read-only-current-channel\";\n }\n return \"read-only-cross-channel\";\n}\n\nfunction renderWorkThreadsText(\n threads: WorkThread[],\n roomId: string | null,\n): string {\n if (threads.length === 0) {\n return \"\";\n }\n const lines = threads.slice(0, MAX_THREADS).map((thread) => {\n const source = thread.primarySourceRef;\n const channel =\n source.channelName ??\n source.roomId ??\n source.externalThreadId ??\n \"unknown-channel\";\n const plan = thread.currentPlanSummary\n ? ` plan=${thread.currentPlanSummary}`\n : \"\";\n return `- ${thread.id} [${thread.status}; ${threadMutability(thread, roomId)}; ${source.connector}/${channel}]: ${thread.title} - ${thread.summary}${plan}`;\n });\n if (threads.length > MAX_THREADS) {\n lines.push(`(+${threads.length - MAX_THREADS} more)`);\n }\n return [\n \"Active LifeOps work threads:\",\n \"Use lifeops_thread_control only for lifecycle/routing. Cross-channel entries are read-only unless current-channel mutability is shown.\",\n ...lines,\n ].join(\"\\n\");\n}\n\nexport const workThreadsProvider: Provider = {\n name: \"workThreads\",\n description:\n \"Surfaces active LifeOps work threads for the current room and owner. Current-room mutable refs may be steered; cross-channel refs are read-only summaries.\",\n descriptionCompressed:\n \"Active work threads: current-channel mutable, cross-channel read-only summaries.\",\n dynamic: true,\n position: 12,\n cacheScope: \"turn\",\n contexts: [\"tasks\", \"messaging\", \"automation\"],\n\n async get(\n runtime: IAgentRuntime,\n message: Memory,\n _state: State,\n ): Promise<ProviderResult> {\n if (!(await hasOwnerAccess(runtime, message))) {\n return EMPTY;\n }\n const roomId = typeof message.roomId === \"string\" ? message.roomId : null;\n const ownerEntityId =\n typeof message.entityId === \"string\" && message.entityId.length > 0\n ? message.entityId\n : undefined;\n const store = createWorkThreadStore(runtime);\n const currentRoomThreads = roomId\n ? await store.list({\n statuses: [\"active\", \"waiting\", \"paused\"],\n roomId,\n limit: MAX_THREADS,\n })\n : [];\n const ownerThreads = ownerEntityId\n ? await store.list({\n statuses: [\"active\", \"waiting\", \"paused\"],\n ownerEntityId,\n includeCrossChannel: true,\n limit: MAX_THREADS,\n })\n : [];\n const byId = new Map<string, WorkThread>();\n for (const thread of [...currentRoomThreads, ...ownerThreads]) {\n byId.set(thread.id, thread);\n }\n const currentRoomThreadIds = new Set(\n currentRoomThreads.map((thread) => thread.id),\n );\n const threads = [...byId.values()]\n .sort((a, b) => {\n const currentRoomDelta =\n Number(currentRoomThreadIds.has(b.id)) -\n Number(currentRoomThreadIds.has(a.id));\n if (currentRoomDelta !== 0) {\n return currentRoomDelta;\n }\n return Date.parse(b.lastActivityAt) - Date.parse(a.lastActivityAt);\n })\n .slice(0, MAX_THREADS);\n if (threads.length === 0) {\n return EMPTY;\n }\n return {\n text: renderWorkThreadsText(threads, roomId),\n values: {\n workThreadCount: threads.length,\n workThreadIds: threads.map((thread) => thread.id),\n },\n data: { workThreads: threads },\n };\n },\n};\n"],"mappings":"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","names":[]}
|
package/dist/public.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../src/public.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EACL,6BAA6B,EAC7B,iCAAiC,EACjC,4BAA4B,EAC5B,kBAAkB,GACnB,MAAM,6BAA6B,CAAC"}
|
package/dist/public.js
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { registerLifeOpsAutomationNodeContributor } from "./automation-node-contributor.js";
|
|
2
|
+
import { personalAssistantRoutesPlugin } from "./routes/plugin.js";
|
|
3
|
+
import {
|
|
4
|
+
getSelfControlPermissionState,
|
|
5
|
+
openSelfControlPermissionLocation,
|
|
6
|
+
requestSelfControlPermission,
|
|
7
|
+
websiteBlockAction
|
|
8
|
+
} from "./website-blocker/public.js";
|
|
9
|
+
registerLifeOpsAutomationNodeContributor();
|
|
10
|
+
export {
|
|
11
|
+
getSelfControlPermissionState,
|
|
12
|
+
openSelfControlPermissionLocation,
|
|
13
|
+
personalAssistantRoutesPlugin,
|
|
14
|
+
requestSelfControlPermission,
|
|
15
|
+
websiteBlockAction
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=public.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/public.ts"],"sourcesContent":["import { registerLifeOpsAutomationNodeContributor } from \"./automation-node-contributor.js\";\n\nexport { personalAssistantRoutesPlugin } from \"./routes/plugin.js\";\nexport {\n getSelfControlPermissionState,\n openSelfControlPermissionLocation,\n requestSelfControlPermission,\n websiteBlockAction,\n} from \"./website-blocker/public.js\";\n\nregisterLifeOpsAutomationNodeContributor();\n"],"mappings":"AAAA,SAAS,gDAAgD;AAEzD,SAAS,qCAAqC;AAC9C;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP,yCAAyC;","names":[]}
|