@elizaos/agent 2.0.0-alpha.211 → 2.0.0-alpha.214
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/apps/app-lifeops/src/actions/autofill.d.ts.map +1 -1
- package/apps/app-lifeops/src/actions/autofill.js +90 -0
- package/apps/app-lifeops/src/actions/calendar.d.ts.map +1 -1
- package/apps/app-lifeops/src/actions/calendar.js +1 -0
- package/apps/app-lifeops/src/actions/calendly.d.ts.map +1 -1
- package/apps/app-lifeops/src/actions/calendly.js +12 -1
- package/apps/app-lifeops/src/actions/checkin.d.ts.map +1 -1
- package/apps/app-lifeops/src/actions/checkin.js +60 -0
- package/apps/app-lifeops/src/actions/intent-sync.d.ts.map +1 -1
- package/apps/app-lifeops/src/actions/intent-sync.js +4 -41
- package/apps/app-lifeops/src/actions/life.d.ts.map +1 -1
- package/apps/app-lifeops/src/actions/life.js +14 -5
- package/apps/app-lifeops/src/actions/password-manager.d.ts.map +1 -1
- package/apps/app-lifeops/src/actions/password-manager.js +1 -32
- package/apps/app-lifeops/src/actions/remote-desktop.d.ts.map +1 -1
- package/apps/app-lifeops/src/actions/remote-desktop.js +1 -40
- package/apps/app-lifeops/src/actions/scheduling.d.ts.map +1 -1
- package/apps/app-lifeops/src/actions/scheduling.js +30 -0
- package/apps/app-lifeops/src/actions/screen-time.d.ts.map +1 -1
- package/apps/app-lifeops/src/actions/screen-time.js +1 -20
- package/apps/app-lifeops/src/actions/subscriptions.d.ts.map +1 -1
- package/apps/app-lifeops/src/actions/subscriptions.js +23 -84
- package/apps/app-lifeops/src/actions/website-blocker.d.ts.map +1 -1
- package/apps/app-lifeops/src/actions/website-blocker.js +1 -3
- package/apps/app-lifeops/src/lifeops/repository.d.ts +14 -0
- package/apps/app-lifeops/src/lifeops/repository.d.ts.map +1 -1
- package/apps/app-lifeops/src/lifeops/repository.js +25 -0
- package/apps/app-lifeops/src/lifeops/service-helpers-browser.d.ts.map +1 -1
- package/apps/app-lifeops/src/lifeops/service-helpers-browser.js +8 -0
- package/apps/app-lifeops/src/lifeops/service-mixin-reminders.js +5 -1
- package/apps/app-lifeops/src/lifeops/service-mixin-workflows.d.ts +2 -1
- package/apps/app-lifeops/src/lifeops/service-mixin-workflows.d.ts.map +1 -1
- package/apps/app-lifeops/src/lifeops/service-mixin-workflows.js +187 -13
- package/apps/app-lifeops/src/lifeops/service-normalize-connector.d.ts.map +1 -1
- package/apps/app-lifeops/src/lifeops/service-normalize-connector.js +52 -1
- package/apps/app-lifeops/src/lifeops/service-types.d.ts +8 -0
- package/apps/app-lifeops/src/lifeops/service-types.d.ts.map +1 -1
- package/apps/app-lifeops/src/lifeops/service.d.ts +5 -0
- package/apps/app-lifeops/src/lifeops/service.d.ts.map +1 -1
- package/package.json +4 -4
- package/packages/agent/src/actions/app-control.d.ts.map +1 -1
- package/packages/agent/src/actions/app-control.js +60 -0
- package/packages/agent/src/actions/browser-session.d.ts.map +1 -1
- package/packages/agent/src/actions/browser-session.js +30 -0
- package/packages/agent/src/actions/eject-plugin.d.ts.map +1 -1
- package/packages/agent/src/actions/eject-plugin.js +30 -0
- package/packages/agent/src/actions/entity-actions.d.ts.map +1 -1
- package/packages/agent/src/actions/entity-actions.js +90 -0
- package/packages/agent/src/actions/extract-page.d.ts.map +1 -1
- package/packages/agent/src/actions/extract-page.js +30 -0
- package/packages/agent/src/actions/get-self-status.d.ts.map +1 -1
- package/packages/agent/src/actions/get-self-status.js +30 -0
- package/packages/agent/src/actions/install-plugin.d.ts.map +1 -1
- package/packages/agent/src/actions/install-plugin.js +30 -0
- package/packages/agent/src/actions/list-ejected.d.ts.map +1 -1
- package/packages/agent/src/actions/list-ejected.js +44 -2
- package/packages/agent/src/actions/log-level.d.ts.map +1 -1
- package/packages/agent/src/actions/log-level.js +1 -0
- package/packages/agent/src/actions/media.d.ts.map +1 -1
- package/packages/agent/src/actions/media.js +120 -0
- package/packages/agent/src/actions/read-channel.d.ts.map +1 -1
- package/packages/agent/src/actions/read-channel.js +30 -0
- package/packages/agent/src/actions/read-messages.d.ts.map +1 -1
- package/packages/agent/src/actions/read-messages.js +30 -0
- package/packages/agent/src/actions/reinject-plugin.d.ts.map +1 -1
- package/packages/agent/src/actions/reinject-plugin.js +30 -0
- package/packages/agent/src/actions/restart.d.ts.map +1 -1
- package/packages/agent/src/actions/restart.js +30 -0
- package/packages/agent/src/actions/search-conversations.d.ts.map +1 -1
- package/packages/agent/src/actions/search-conversations.js +30 -0
- package/packages/agent/src/actions/send-admin-message.d.ts.map +1 -1
- package/packages/agent/src/actions/send-admin-message.js +30 -0
- package/packages/agent/src/actions/send-message.d.ts.map +1 -1
- package/packages/agent/src/actions/send-message.js +30 -0
- package/packages/agent/src/actions/set-user-name.d.ts.map +1 -1
- package/packages/agent/src/actions/set-user-name.js +30 -0
- package/packages/agent/src/actions/skill-command.d.ts.map +1 -1
- package/packages/agent/src/actions/skill-command.js +1 -0
- package/packages/agent/src/actions/stream-control.d.ts.map +1 -1
- package/packages/agent/src/actions/stream-control.js +72 -2
- package/packages/agent/src/actions/sync-plugin.d.ts.map +1 -1
- package/packages/agent/src/actions/sync-plugin.js +30 -0
- package/packages/agent/src/actions/terminal.d.ts.map +1 -1
- package/packages/agent/src/actions/terminal.js +43 -144
- package/packages/agent/src/actions/web-search.d.ts.map +1 -1
- package/packages/agent/src/actions/web-search.js +8 -0
- package/packages/agent/src/runtime/eliza.js +2 -2
- package/packages/shared/src/contracts/lifeops.d.ts +29 -1
- package/packages/shared/src/contracts/lifeops.d.ts.map +1 -1
- package/packages/shared/src/contracts/lifeops.js +14 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autofill.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/actions/autofill.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,EAEL,KAAK,MAAM,
|
|
1
|
+
{"version":3,"file":"autofill.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/actions/autofill.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,EAEL,KAAK,MAAM,EAMZ,MAAM,eAAe,CAAC;AA2BvB,iBAAe,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAK3E;AAED,iBAAe,eAAe,CAC5B,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,SAAS,MAAM,EAAE,GACzB,OAAO,CAAC,IAAI,CAAC,CAGf;AAED,iBAAe,kBAAkB,CAC/B,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAY5B;AA2FD,eAAO,MAAM,sBAAsB,EAAE,MAsKpC,CAAC;AAOF,eAAO,MAAM,0BAA0B,EAAE,MAiHxC,CAAC;AAEF,eAAO,MAAM,2BAA2B,EAAE,MA8DzC,CAAC;AAEF,eAAO,MAAM,UAAU;;;;;CAKtB,CAAC"}
|
|
@@ -232,6 +232,36 @@ export const requestFieldFillAction = {
|
|
|
232
232
|
schema: { type: "string" },
|
|
233
233
|
},
|
|
234
234
|
],
|
|
235
|
+
examples: [
|
|
236
|
+
[
|
|
237
|
+
{
|
|
238
|
+
name: "{{name1}}",
|
|
239
|
+
content: {
|
|
240
|
+
text: "Can you log me into github? I'm on the sign-in page.",
|
|
241
|
+
},
|
|
242
|
+
},
|
|
243
|
+
{
|
|
244
|
+
name: "{{agentName}}",
|
|
245
|
+
content: {
|
|
246
|
+
text: "Requested password autofill on github.com via the browser extension.",
|
|
247
|
+
},
|
|
248
|
+
},
|
|
249
|
+
],
|
|
250
|
+
[
|
|
251
|
+
{
|
|
252
|
+
name: "{{name1}}",
|
|
253
|
+
content: {
|
|
254
|
+
text: "Fill in my email on this signup form.",
|
|
255
|
+
},
|
|
256
|
+
},
|
|
257
|
+
{
|
|
258
|
+
name: "{{agentName}}",
|
|
259
|
+
content: {
|
|
260
|
+
text: "Requested email autofill on example.com via the browser extension.",
|
|
261
|
+
},
|
|
262
|
+
},
|
|
263
|
+
],
|
|
264
|
+
],
|
|
235
265
|
};
|
|
236
266
|
export const addAutofillWhitelistAction = {
|
|
237
267
|
name: "ADD_AUTOFILL_WHITELIST",
|
|
@@ -303,6 +333,36 @@ export const addAutofillWhitelistAction = {
|
|
|
303
333
|
schema: { type: "boolean" },
|
|
304
334
|
},
|
|
305
335
|
],
|
|
336
|
+
examples: [
|
|
337
|
+
[
|
|
338
|
+
{
|
|
339
|
+
name: "{{name1}}",
|
|
340
|
+
content: {
|
|
341
|
+
text: "Yes, trust notion.so for autofill going forward.",
|
|
342
|
+
},
|
|
343
|
+
},
|
|
344
|
+
{
|
|
345
|
+
name: "{{agentName}}",
|
|
346
|
+
content: {
|
|
347
|
+
text: "Added notion.so to the autofill whitelist.",
|
|
348
|
+
},
|
|
349
|
+
},
|
|
350
|
+
],
|
|
351
|
+
[
|
|
352
|
+
{
|
|
353
|
+
name: "{{name1}}",
|
|
354
|
+
content: {
|
|
355
|
+
text: "Go ahead and approve linear.app for password autofill.",
|
|
356
|
+
},
|
|
357
|
+
},
|
|
358
|
+
{
|
|
359
|
+
name: "{{agentName}}",
|
|
360
|
+
content: {
|
|
361
|
+
text: "Added linear.app to the autofill whitelist.",
|
|
362
|
+
},
|
|
363
|
+
},
|
|
364
|
+
],
|
|
365
|
+
],
|
|
306
366
|
};
|
|
307
367
|
export const listAutofillWhitelistAction = {
|
|
308
368
|
name: "LIST_AUTOFILL_WHITELIST",
|
|
@@ -331,6 +391,36 @@ export const listAutofillWhitelistAction = {
|
|
|
331
391
|
};
|
|
332
392
|
},
|
|
333
393
|
parameters: [],
|
|
394
|
+
examples: [
|
|
395
|
+
[
|
|
396
|
+
{
|
|
397
|
+
name: "{{name1}}",
|
|
398
|
+
content: {
|
|
399
|
+
text: "Which sites are allowed for autofill right now?",
|
|
400
|
+
},
|
|
401
|
+
},
|
|
402
|
+
{
|
|
403
|
+
name: "{{agentName}}",
|
|
404
|
+
content: {
|
|
405
|
+
text: "Autofill whitelist (4 entries): github.com, notion.so, linear.app, example.com",
|
|
406
|
+
},
|
|
407
|
+
},
|
|
408
|
+
],
|
|
409
|
+
[
|
|
410
|
+
{
|
|
411
|
+
name: "{{name1}}",
|
|
412
|
+
content: {
|
|
413
|
+
text: "Show me my trusted sites.",
|
|
414
|
+
},
|
|
415
|
+
},
|
|
416
|
+
{
|
|
417
|
+
name: "{{agentName}}",
|
|
418
|
+
content: {
|
|
419
|
+
text: "Autofill whitelist (3 entries): github.com, notion.so, linear.app",
|
|
420
|
+
},
|
|
421
|
+
},
|
|
422
|
+
],
|
|
423
|
+
],
|
|
334
424
|
};
|
|
335
425
|
export const __internal = {
|
|
336
426
|
effectiveWhitelist,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calendar.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/actions/calendar.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EAKN,aAAa,EACb,MAAM,EACN,KAAK,EACN,MAAM,eAAe,CAAC;AAyCvB,KAAK,iBAAiB,GAClB,MAAM,GACN,YAAY,GACZ,eAAe,GACf,cAAc,GACd,cAAc,GACd,cAAc,GACd,aAAa,CAAC;AAuBlB,MAAM,MAAM,eAAe,GAAG;IAC5B,SAAS,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACpC,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAkjDF,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,aAAa,EACtB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,KAAK,GAAG,SAAS,EACxB,MAAM,EAAE,MAAM,EACd,QAAQ,SAA2B,GAClC,OAAO,CAAC,eAAe,CAAC,CA6J1B;AA2gCD,eAAO,MAAM,cAAc,EAAE,MAAM,GAAG;IACpC,8BAA8B,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"calendar.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/actions/calendar.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EAKN,aAAa,EACb,MAAM,EACN,KAAK,EACN,MAAM,eAAe,CAAC;AAyCvB,KAAK,iBAAiB,GAClB,MAAM,GACN,YAAY,GACZ,eAAe,GACf,cAAc,GACd,cAAc,GACd,cAAc,GACd,aAAa,CAAC;AAuBlB,MAAM,MAAM,eAAe,GAAG;IAC5B,SAAS,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACpC,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAkjDF,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,aAAa,EACtB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,KAAK,GAAG,SAAS,EACxB,MAAM,EAAE,MAAM,EACd,QAAQ,SAA2B,GAClC,OAAO,CAAC,eAAe,CAAC,CA6J1B;AA2gCD,eAAO,MAAM,cAAc,EAAE,MAAM,GAAG;IACpC,8BAA8B,CAAC,EAAE,OAAO,CAAC;CAmqC1C,CAAC"}
|
|
@@ -2124,6 +2124,7 @@ export const calendarAction = {
|
|
|
2124
2124
|
"DO NOT use this action when the user is only making an observation like 'my calendar has been crazy this quarter' unless they actually ask you to inspect or change calendar state. " +
|
|
2125
2125
|
"DO NOT use this action for email inbox work, drafting or sending emails — use GMAIL_ACTION instead. " +
|
|
2126
2126
|
"DO NOT use this action for personal habits, goals, routines, or reminders — use LIFE instead. " +
|
|
2127
|
+
"DO NOT use this action for Calendly — any request that mentions Calendly by name, or passes a calendly.com / api.calendly.com URL (including an eventTypeUri), belongs to the CALENDLY action, which is a separate product from Google Calendar. " +
|
|
2127
2128
|
"This action provides the final grounded reply; do not pair it with a speculative REPLY action." +
|
|
2128
2129
|
" DO NOT use this action when the user asks to 'help schedule', 'help me schedule', 'set up a meeting with', 'find a time with', 'find us a time', 'find a slot with', or otherwise wants to negotiate a meeting with a person or team WITHOUT naming a concrete date or time — that is SCHEDULING (subaction: start). Any time the request mentions a person/team AND no specific time, route it to SCHEDULING, not here. DO NOT use this action to 'propose', 'suggest', or 'offer' meeting time slots — that is PROPOSE_MEETING_TIMES. Use CALENDAR_ACTION only when the user specifies (or intends to specify) a concrete date/time for the event.",
|
|
2129
2130
|
descriptionCompressed: "Google Calendar via LifeOps: view schedule, search events, create events, query travel. Not for email or habits.",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calendly.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/actions/calendly.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,MAAM,EAMZ,MAAM,eAAe,CAAC;AA6GvB,eAAO,MAAM,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"calendly.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/actions/calendly.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,MAAM,EAMZ,MAAM,eAAe,CAAC;AA6GvB,eAAO,MAAM,cAAc,EAAE,MAgP5B,CAAC"}
|
|
@@ -72,8 +72,19 @@ export const calendlyAction = {
|
|
|
72
72
|
"CALENDLY_AVAILABILITY",
|
|
73
73
|
"CALENDLY_UPCOMING",
|
|
74
74
|
"CALENDLY_BOOKING_LINK",
|
|
75
|
+
"CALENDLY_ACTION",
|
|
76
|
+
"CALENDLY_EVENT_TYPES",
|
|
77
|
+
"CALENDLY_SCHEDULED_EVENTS",
|
|
75
78
|
],
|
|
76
|
-
description: "Work with Calendly
|
|
79
|
+
description: "Work with Calendly specifically (calendly.com / api.calendly.com): " +
|
|
80
|
+
"list event types, check availability against a Calendly event type URI, " +
|
|
81
|
+
"list Calendly-scheduled events, generate Calendly single-use booking " +
|
|
82
|
+
"links. Subactions: list_event_types, availability, upcoming_events, " +
|
|
83
|
+
"single_use_link. " +
|
|
84
|
+
"Use this — NOT CALENDAR_ACTION — whenever the user mentions Calendly by " +
|
|
85
|
+
"name or passes a calendly.com / api.calendly.com URL. CALENDAR_ACTION " +
|
|
86
|
+
"is for Google Calendar; CALENDLY is its own third-party scheduling " +
|
|
87
|
+
"product with a separate API, event-type URIs, and booking-link flow.",
|
|
77
88
|
validate: async (runtime, message) => {
|
|
78
89
|
if (!readCalendlyCredentialsFromEnv())
|
|
79
90
|
return false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkin.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/actions/checkin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"checkin.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/actions/checkin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAqC,MAAM,eAAe,CAAC;AAuB/E,eAAO,MAAM,uBAAuB,EAAE,MA4DrC,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,MAwDnC,CAAC"}
|
|
@@ -44,6 +44,36 @@ export const runMorningCheckinAction = {
|
|
|
44
44
|
};
|
|
45
45
|
},
|
|
46
46
|
parameters: [],
|
|
47
|
+
examples: [
|
|
48
|
+
[
|
|
49
|
+
{
|
|
50
|
+
name: "{{name1}}",
|
|
51
|
+
content: {
|
|
52
|
+
text: "Let's do my morning check-in.",
|
|
53
|
+
},
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
name: "{{agentName}}",
|
|
57
|
+
content: {
|
|
58
|
+
text: "Here's your morning review: 2 overdue todos, 3 meetings today, and yesterday you closed out the onboarding draft.",
|
|
59
|
+
},
|
|
60
|
+
},
|
|
61
|
+
],
|
|
62
|
+
[
|
|
63
|
+
{
|
|
64
|
+
name: "{{name1}}",
|
|
65
|
+
content: {
|
|
66
|
+
text: "What's on my plate this morning?",
|
|
67
|
+
},
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
name: "{{agentName}}",
|
|
71
|
+
content: {
|
|
72
|
+
text: "Morning check-in ready: 1 overdue todo, 2 meetings today, and yesterday's wins included the PR review.",
|
|
73
|
+
},
|
|
74
|
+
},
|
|
75
|
+
],
|
|
76
|
+
],
|
|
47
77
|
};
|
|
48
78
|
export const runNightCheckinAction = {
|
|
49
79
|
name: "RUN_NIGHT_CHECKIN",
|
|
@@ -69,4 +99,34 @@ export const runNightCheckinAction = {
|
|
|
69
99
|
};
|
|
70
100
|
},
|
|
71
101
|
parameters: [],
|
|
102
|
+
examples: [
|
|
103
|
+
[
|
|
104
|
+
{
|
|
105
|
+
name: "{{name1}}",
|
|
106
|
+
content: {
|
|
107
|
+
text: "Ready to wrap up for the day.",
|
|
108
|
+
},
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
name: "{{agentName}}",
|
|
112
|
+
content: {
|
|
113
|
+
text: "Here's your night check-in: 3 meetings done, 2 wins captured, 1 todo still open for tomorrow.",
|
|
114
|
+
},
|
|
115
|
+
},
|
|
116
|
+
],
|
|
117
|
+
[
|
|
118
|
+
{
|
|
119
|
+
name: "{{name1}}",
|
|
120
|
+
content: {
|
|
121
|
+
text: "How did today go?",
|
|
122
|
+
},
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
name: "{{agentName}}",
|
|
126
|
+
content: {
|
|
127
|
+
text: "Night recap ready: you closed 2 meetings and shipped the release notes; 1 todo rolls over.",
|
|
128
|
+
},
|
|
129
|
+
},
|
|
130
|
+
],
|
|
131
|
+
],
|
|
72
132
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"intent-sync.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/actions/intent-sync.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EAMP,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"intent-sync.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/actions/intent-sync.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EAMP,MAAM,eAAe,CAAC;AAsIvB,eAAO,MAAM,gBAAgB,EAAE,MA6R9B,CAAC"}
|
|
@@ -86,35 +86,6 @@ function normalizeParams(raw) {
|
|
|
86
86
|
}
|
|
87
87
|
return {};
|
|
88
88
|
}
|
|
89
|
-
function inferSubactionFromText(text) {
|
|
90
|
-
const t = text.toLowerCase();
|
|
91
|
-
if (/\b(broadcast|send|publish|push|ping)\b/.test(t))
|
|
92
|
-
return "broadcast";
|
|
93
|
-
if (/\b(list|show|what.*pending)\b/.test(t))
|
|
94
|
-
return "list_pending";
|
|
95
|
-
if (/\b(acknowledge|ack|mark\s+done)\b/.test(t))
|
|
96
|
-
return "acknowledge";
|
|
97
|
-
if (/\b(prune|expire|clean)\b/.test(t))
|
|
98
|
-
return "prune_expired";
|
|
99
|
-
return undefined;
|
|
100
|
-
}
|
|
101
|
-
function inferKindFromText(text) {
|
|
102
|
-
const t = text.toLowerCase();
|
|
103
|
-
if (/\b(reminder|stretch|break|vitamin|hydrate|water|walk)\b/.test(t)) {
|
|
104
|
-
if (isKind("routine_reminder"))
|
|
105
|
-
return "routine_reminder";
|
|
106
|
-
}
|
|
107
|
-
if (/\b(urgent|help|need)\b/.test(t)) {
|
|
108
|
-
if (isKind("attention_request"))
|
|
109
|
-
return "attention_request";
|
|
110
|
-
}
|
|
111
|
-
if (/\b(request|ask|please)\b/.test(t)) {
|
|
112
|
-
if (isKind("user_action_requested")) {
|
|
113
|
-
return "user_action_requested";
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
return undefined;
|
|
117
|
-
}
|
|
118
89
|
export const intentSyncAction = {
|
|
119
90
|
name: ACTION_NAME,
|
|
120
91
|
similes: [
|
|
@@ -255,14 +226,13 @@ export const intentSyncAction = {
|
|
|
255
226
|
}
|
|
256
227
|
const rawParams = options?.parameters;
|
|
257
228
|
const params = normalizeParams(rawParams);
|
|
258
|
-
const messageText = typeof message.content?.text === "string" ? message.content.text : "";
|
|
259
229
|
let subactionRaw = coerceString(params.subaction);
|
|
260
230
|
if (!subactionRaw) {
|
|
261
|
-
// Tolerate LLMs that emit the verb in `
|
|
231
|
+
// Tolerate LLMs that emit the verb in `mode` / `action` field name
|
|
232
|
+
// variants (parameter-key normalization only — not free-text inference).
|
|
262
233
|
subactionRaw =
|
|
263
234
|
coerceString(params.mode) ??
|
|
264
|
-
coerceString(params.action)
|
|
265
|
-
inferSubactionFromText(messageText);
|
|
235
|
+
coerceString(params.action);
|
|
266
236
|
}
|
|
267
237
|
if (!subactionRaw) {
|
|
268
238
|
return validationTerminate("MISSING_SUBACTION", "I couldn't tell whether you wanted to broadcast, list, acknowledge, or prune an intent. Please say which.");
|
|
@@ -272,14 +242,7 @@ export const intentSyncAction = {
|
|
|
272
242
|
}
|
|
273
243
|
const subaction = subactionRaw;
|
|
274
244
|
if (subaction === "broadcast") {
|
|
275
|
-
|
|
276
|
-
if (!kindRaw || !isKind(kindRaw)) {
|
|
277
|
-
// Only infer when the current value is clearly wrong/missing — not
|
|
278
|
-
// when it's already a valid kind.
|
|
279
|
-
const inferred = inferKindFromText(messageText);
|
|
280
|
-
if (inferred)
|
|
281
|
-
kindRaw = inferred;
|
|
282
|
-
}
|
|
245
|
+
const kindRaw = coerceString(params.kind);
|
|
283
246
|
const title = coerceString(params.title);
|
|
284
247
|
const body = coerceString(params.body);
|
|
285
248
|
if (!kindRaw) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"life.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/actions/life.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EAMP,MAAM,eAAe,CAAC;AA44EvB,eAAO,MAAM,UAAU,EAAE,MAAM,GAAG;IAChC,8BAA8B,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"life.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/actions/life.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EAMP,MAAM,eAAe,CAAC;AA44EvB,eAAO,MAAM,UAAU,EAAE,MAAM,GAAG;IAChC,8BAA8B,CAAC,EAAE,OAAO,CAAC;CA6sD1C,CAAC"}
|
|
@@ -2295,15 +2295,24 @@ export const lifeAction = {
|
|
|
2295
2295
|
data: toActionData(ctx),
|
|
2296
2296
|
};
|
|
2297
2297
|
}
|
|
2298
|
-
|
|
2299
|
-
|
|
2298
|
+
// The planner extracts the time window as a structured `when` param
|
|
2299
|
+
// ("today" | "tomorrow" | "this_week"), so we never re-parse the
|
|
2300
|
+
// free-form `intent` string at runtime. Default to "today" when the
|
|
2301
|
+
// caller omits it.
|
|
2302
|
+
const whenRaw = detailString(details, "when")?.toLowerCase().trim();
|
|
2303
|
+
const when = whenRaw === "tomorrow"
|
|
2304
|
+
? "tomorrow"
|
|
2305
|
+
: whenRaw === "this_week" || whenRaw === "this week" || whenRaw === "week"
|
|
2306
|
+
? "this_week"
|
|
2307
|
+
: "today";
|
|
2308
|
+
const range = when === "tomorrow"
|
|
2300
2309
|
? dayRange(1)
|
|
2301
|
-
:
|
|
2310
|
+
: when === "this_week"
|
|
2302
2311
|
? weekRange()
|
|
2303
2312
|
: dayRange(0);
|
|
2304
|
-
const label =
|
|
2313
|
+
const label = when === "tomorrow"
|
|
2305
2314
|
? "tomorrow"
|
|
2306
|
-
:
|
|
2315
|
+
: when === "this_week"
|
|
2307
2316
|
? "this week"
|
|
2308
2317
|
: "today";
|
|
2309
2318
|
const feed = await service.getCalendarFeed(INTERNAL_URL, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"password-manager.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/actions/password-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,MAAM,EAMZ,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"password-manager.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/actions/password-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,MAAM,EAMZ,MAAM,eAAe,CAAC;AAsHvB,eAAO,MAAM,qBAAqB,EAAE,MAgJnC,CAAC"}
|
|
@@ -1,30 +1,6 @@
|
|
|
1
1
|
import { logger, } from "@elizaos/core";
|
|
2
2
|
import { hasOwnerAccess } from "@elizaos/agent/security/access";
|
|
3
3
|
import { injectCredentialToClipboard, listPasswordItems, searchPasswordItems, } from "../lifeops/password-manager-bridge.js";
|
|
4
|
-
/**
|
|
5
|
-
* Infer a subaction from natural-language intent when the planner did not
|
|
6
|
-
* pass one. Keeps the benchmark/common-path green without a planner-round-trip.
|
|
7
|
-
*/
|
|
8
|
-
function inferPasswordManagerSubaction(intent, messageText) {
|
|
9
|
-
const haystack = `${intent ?? ""}\n${messageText ?? ""}`.toLowerCase();
|
|
10
|
-
if (!haystack.trim())
|
|
11
|
-
return "";
|
|
12
|
-
if (/\b(copy|paste|fill)\s+(the\s+)?password\b/.test(haystack)) {
|
|
13
|
-
return "inject_password";
|
|
14
|
-
}
|
|
15
|
-
if (/\b(copy|paste|fill)\s+(the\s+)?username\b/.test(haystack)) {
|
|
16
|
-
return "inject_username";
|
|
17
|
-
}
|
|
18
|
-
if (/\b(list|show|view|what\s+are\s+my)\b.*\b(logins|passwords|credentials|saved)\b/.test(haystack) ||
|
|
19
|
-
/\b(saved\s+logins|all\s+logins)\b/.test(haystack)) {
|
|
20
|
-
return "list";
|
|
21
|
-
}
|
|
22
|
-
if (/\b(look\s*up|find|search|what(?:'s|\s+is)?|where\s+is)\b.*\b(login|password|credential)\b/.test(haystack) ||
|
|
23
|
-
/\b(password\s+for|login\s+for|credential\s+for)\b/.test(haystack)) {
|
|
24
|
-
return "search";
|
|
25
|
-
}
|
|
26
|
-
return "";
|
|
27
|
-
}
|
|
28
4
|
function readConfig(runtime) {
|
|
29
5
|
const account = process.env.ELIZA_1PASSWORD_ACCOUNT?.trim() ||
|
|
30
6
|
(() => {
|
|
@@ -120,14 +96,7 @@ export const passwordManagerAction = {
|
|
|
120
96
|
return failure("PERMISSION_DENIED");
|
|
121
97
|
}
|
|
122
98
|
const params = options?.parameters ?? {};
|
|
123
|
-
const
|
|
124
|
-
? (message.content.text)
|
|
125
|
-
: "";
|
|
126
|
-
const explicitSubaction = (params.subaction ?? "").toString().trim().toLowerCase();
|
|
127
|
-
const inferredSubaction = explicitSubaction
|
|
128
|
-
? ""
|
|
129
|
-
: inferPasswordManagerSubaction(params.intent, messageText);
|
|
130
|
-
const subaction = explicitSubaction || inferredSubaction;
|
|
99
|
+
const subaction = (params.subaction ?? "").toString().trim().toLowerCase();
|
|
131
100
|
const config = readConfig(runtime);
|
|
132
101
|
if (subaction === "search") {
|
|
133
102
|
const query = (params.query ?? params.intent ?? "").toString().trim();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remote-desktop.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/actions/remote-desktop.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,MAAM,EAMZ,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"remote-desktop.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/actions/remote-desktop.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,MAAM,EAMZ,MAAM,eAAe,CAAC;AAiDvB,eAAO,MAAM,mBAAmB,EAAE,MA6OjC,CAAC"}
|
|
@@ -13,40 +13,6 @@ function coerceSubaction(value) {
|
|
|
13
13
|
}
|
|
14
14
|
return undefined;
|
|
15
15
|
}
|
|
16
|
-
/**
|
|
17
|
-
* Infer a subaction from natural-language intent when the planner did not
|
|
18
|
-
* pass one. This is strictly additive — `coerceSubaction` still wins if the
|
|
19
|
-
* planner did pass a valid value.
|
|
20
|
-
*/
|
|
21
|
-
function inferSubactionFromText(text) {
|
|
22
|
-
if (!text)
|
|
23
|
-
return undefined;
|
|
24
|
-
const h = text.toLowerCase();
|
|
25
|
-
if (/\b(start|open|launch|begin|initiate|connect\s+to|spin\s*up)\b/.test(h) &&
|
|
26
|
-
/\b(remote|session|desktop|screen\s*share)\b/.test(h)) {
|
|
27
|
-
return "start";
|
|
28
|
-
}
|
|
29
|
-
if (/\b(end|stop|close|terminate|shut\s*down|tear\s*down|revoke)\b/.test(h) &&
|
|
30
|
-
/\b(remote|session|desktop)\b/.test(h)) {
|
|
31
|
-
return "end";
|
|
32
|
-
}
|
|
33
|
-
if (/\b(status|check)\b.*\b(remote|session|desktop)\b/.test(h)) {
|
|
34
|
-
return "status";
|
|
35
|
-
}
|
|
36
|
-
if (/\b(list|show|view)\b.*\b(remote|session|desktop)\b/.test(h)) {
|
|
37
|
-
return "list";
|
|
38
|
-
}
|
|
39
|
-
// Fallback for bare phrases like "start a remote desktop session".
|
|
40
|
-
if (/\bremote\s+desktop\b/.test(h) || /\bvnc\b/.test(h)) {
|
|
41
|
-
if (/\bstart|open|launch|begin|initiate|connect\b/.test(h))
|
|
42
|
-
return "start";
|
|
43
|
-
if (/\bend|stop|close|terminate|shut|revoke\b/.test(h))
|
|
44
|
-
return "end";
|
|
45
|
-
if (/\blist|show|view\b/.test(h))
|
|
46
|
-
return "list";
|
|
47
|
-
}
|
|
48
|
-
return undefined;
|
|
49
|
-
}
|
|
50
16
|
function formatSession(session) {
|
|
51
17
|
const lines = [
|
|
52
18
|
`Session ${session.id}`,
|
|
@@ -148,12 +114,7 @@ export const remoteDesktopAction = {
|
|
|
148
114
|
}
|
|
149
115
|
const params = (options?.parameters ??
|
|
150
116
|
{});
|
|
151
|
-
const
|
|
152
|
-
? (message.content.text)
|
|
153
|
-
: undefined;
|
|
154
|
-
const subaction = coerceSubaction(params.subaction) ??
|
|
155
|
-
inferSubactionFromText(params.intent) ??
|
|
156
|
-
inferSubactionFromText(messageText);
|
|
117
|
+
const subaction = coerceSubaction(params.subaction);
|
|
157
118
|
if (!subaction) {
|
|
158
119
|
return {
|
|
159
120
|
text: "Missing or invalid subaction. Use one of: start, status, end, list.",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scheduling.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/actions/scheduling.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EACV,MAAM,EAOP,MAAM,eAAe,CAAC;AAMvB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAO9E,OAAO,EAIL,KAAK,yBAAyB,EAG/B,MAAM,6BAA6B,CAAC;AAUrC,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG;IAC1C,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAkGF,wBAAgB,oBAAoB,CAAC,IAAI,EAAE;IACzC,GAAG,EAAE,IAAI,CAAC;IACV,WAAW,EAAE,IAAI,CAAC;IAClB,SAAS,EAAE,IAAI,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,yBAAyB,CAAC;IACvC,MAAM,EAAE,SAAS,oBAAoB,EAAE,CAAC;CACzC,GAAG,mBAAmB,EAAE,CAwExB;AAiCD,eAAO,MAAM,yBAAyB,EAAE,MAAM,GAAG;IAC/C,8BAA8B,CAAC,EAAE,OAAO,CAAC;CA8J1C,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,
|
|
1
|
+
{"version":3,"file":"scheduling.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/actions/scheduling.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EACV,MAAM,EAOP,MAAM,eAAe,CAAC;AAMvB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAO9E,OAAO,EAIL,KAAK,yBAAyB,EAG/B,MAAM,6BAA6B,CAAC;AAUrC,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG;IAC1C,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAkGF,wBAAgB,oBAAoB,CAAC,IAAI,EAAE;IACzC,GAAG,EAAE,IAAI,CAAC;IACV,WAAW,EAAE,IAAI,CAAC;IAClB,SAAS,EAAE,IAAI,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,yBAAyB,CAAC;IACvC,MAAM,EAAE,SAAS,oBAAoB,EAAE,CAAC;CACzC,GAAG,mBAAmB,EAAE,CAwExB;AAiCD,eAAO,MAAM,yBAAyB,EAAE,MAAM,GAAG;IAC/C,8BAA8B,CAAC,EAAE,OAAO,CAAC;CA8J1C,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,MAkIrC,CAAC;AAEF,eAAO,MAAM,8BAA8B,EAAE,MAAM,GAAG;IACpD,8BAA8B,CAAC,EAAE,OAAO,CAAC;CAqI1C,CAAC;AAsLF,eAAO,MAAM,gBAAgB,EAAE,MAyS9B,CAAC"}
|
|
@@ -412,6 +412,36 @@ export const checkAvailabilityAction = {
|
|
|
412
412
|
schema: { type: "string" },
|
|
413
413
|
},
|
|
414
414
|
],
|
|
415
|
+
examples: [
|
|
416
|
+
[
|
|
417
|
+
{
|
|
418
|
+
name: "{{name1}}",
|
|
419
|
+
content: {
|
|
420
|
+
text: "Am I free tomorrow between 2pm and 4pm?",
|
|
421
|
+
},
|
|
422
|
+
},
|
|
423
|
+
{
|
|
424
|
+
name: "{{agentName}}",
|
|
425
|
+
content: {
|
|
426
|
+
text: "You're free from Tue, Apr 20, 2:00 PM to Tue, Apr 20, 4:00 PM.",
|
|
427
|
+
},
|
|
428
|
+
},
|
|
429
|
+
],
|
|
430
|
+
[
|
|
431
|
+
{
|
|
432
|
+
name: "{{name1}}",
|
|
433
|
+
content: {
|
|
434
|
+
text: "Do I have anything on my calendar Friday afternoon?",
|
|
435
|
+
},
|
|
436
|
+
},
|
|
437
|
+
{
|
|
438
|
+
name: "{{agentName}}",
|
|
439
|
+
content: {
|
|
440
|
+
text: "You have 1 conflict in that window: Design review with the team.",
|
|
441
|
+
},
|
|
442
|
+
},
|
|
443
|
+
],
|
|
444
|
+
],
|
|
415
445
|
};
|
|
416
446
|
export const updateMeetingPreferencesAction = {
|
|
417
447
|
name: "UPDATE_MEETING_PREFERENCES",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"screen-time.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/actions/screen-time.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,MAAM,EAKP,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"screen-time.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/actions/screen-time.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,MAAM,EAKP,MAAM,eAAe,CAAC;AA8CvB,eAAO,MAAM,gBAAgB,EAAE,MAyN9B,CAAC"}
|
|
@@ -29,24 +29,6 @@ function formatSeconds(seconds) {
|
|
|
29
29
|
}
|
|
30
30
|
return `${m}m`;
|
|
31
31
|
}
|
|
32
|
-
function inferSubaction(intent, messageBody) {
|
|
33
|
-
const text = `${intent ?? ""} ${messageBody}`.toLowerCase();
|
|
34
|
-
if (/\btoday\b/.test(text))
|
|
35
|
-
return "today";
|
|
36
|
-
if (/\b(this week|weekly|past (7|seven) days|last week)\b/.test(text)) {
|
|
37
|
-
return "weekly";
|
|
38
|
-
}
|
|
39
|
-
if (/\b(on|at|in|spent)\b.*\b(website|site|domain|url)\b/.test(text)) {
|
|
40
|
-
return "by_website";
|
|
41
|
-
}
|
|
42
|
-
if (/\b(in|on|using|app)\b/.test(text) && /\b(app|application)\b/.test(text)) {
|
|
43
|
-
return "by_app";
|
|
44
|
-
}
|
|
45
|
-
if (/\b(top|most used|top apps|top websites)\b/.test(text)) {
|
|
46
|
-
return "summary";
|
|
47
|
-
}
|
|
48
|
-
return "summary";
|
|
49
|
-
}
|
|
50
32
|
export const screenTimeAction = {
|
|
51
33
|
name: "SCREEN_TIME",
|
|
52
34
|
similes: ["SCREENTIME", "APP_USAGE", "WEBSITE_USAGE", "DWELL_TIME"],
|
|
@@ -64,8 +46,7 @@ export const screenTimeAction = {
|
|
|
64
46
|
return { text, success: false, data: { error: "PERMISSION_DENIED" } };
|
|
65
47
|
}
|
|
66
48
|
const params = getParams(options);
|
|
67
|
-
const
|
|
68
|
-
const subaction = params.subaction ?? inferSubaction(params.intent, body);
|
|
49
|
+
const subaction = params.subaction ?? "summary";
|
|
69
50
|
const service = new LifeOpsService(runtime);
|
|
70
51
|
if (subaction === "today") {
|
|
71
52
|
const date = params.date ?? todayIso();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subscriptions.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/actions/subscriptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EAOP,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"subscriptions.d.ts","sourceRoot":"","sources":["../../../../../../../apps/app-lifeops/src/actions/subscriptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EAOP,MAAM,eAAe,CAAC;AA6PvB,eAAO,MAAM,mBAAmB,EAAE,MAAM,GAAG;IACzC,8BAA8B,CAAC,EAAE,OAAO,CAAC;CAuC1C,CAAC"}
|