@rubytech/create-maxy-code 0.1.368 → 0.1.370

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (106) hide show
  1. package/dist/__tests__/cron-heartbeat-registration.test.js +100 -0
  2. package/dist/cron-registration.js +72 -0
  3. package/dist/index.js +50 -3
  4. package/dist/uninstall.js +31 -0
  5. package/package.json +1 -1
  6. package/payload/platform/plugins/email/.claude-plugin/plugin.json +1 -1
  7. package/payload/platform/plugins/email/PLUGIN.md +8 -2
  8. package/payload/platform/plugins/email/mcp/dist/__tests__/email-delete.test.d.ts +2 -0
  9. package/payload/platform/plugins/email/mcp/dist/__tests__/email-delete.test.d.ts.map +1 -0
  10. package/payload/platform/plugins/email/mcp/dist/__tests__/email-delete.test.js +151 -0
  11. package/payload/platform/plugins/email/mcp/dist/__tests__/email-delete.test.js.map +1 -0
  12. package/payload/platform/plugins/email/mcp/dist/__tests__/email-status.test.js +36 -3
  13. package/payload/platform/plugins/email/mcp/dist/__tests__/email-status.test.js.map +1 -1
  14. package/payload/platform/plugins/email/mcp/dist/__tests__/mailbox-resolve.test.d.ts +2 -0
  15. package/payload/platform/plugins/email/mcp/dist/__tests__/mailbox-resolve.test.d.ts.map +1 -0
  16. package/payload/platform/plugins/email/mcp/dist/__tests__/mailbox-resolve.test.js +101 -0
  17. package/payload/platform/plugins/email/mcp/dist/__tests__/mailbox-resolve.test.js.map +1 -0
  18. package/payload/platform/plugins/email/mcp/dist/index.js +58 -2
  19. package/payload/platform/plugins/email/mcp/dist/index.js.map +1 -1
  20. package/payload/platform/plugins/email/mcp/dist/lib/credentials.d.ts +35 -12
  21. package/payload/platform/plugins/email/mcp/dist/lib/credentials.d.ts.map +1 -1
  22. package/payload/platform/plugins/email/mcp/dist/lib/credentials.js +90 -40
  23. package/payload/platform/plugins/email/mcp/dist/lib/credentials.js.map +1 -1
  24. package/payload/platform/plugins/email/mcp/dist/lib/imap.d.ts +23 -0
  25. package/payload/platform/plugins/email/mcp/dist/lib/imap.d.ts.map +1 -1
  26. package/payload/platform/plugins/email/mcp/dist/lib/imap.js +66 -0
  27. package/payload/platform/plugins/email/mcp/dist/lib/imap.js.map +1 -1
  28. package/payload/platform/plugins/email/mcp/dist/lib/ingest-batch.d.ts +8 -8
  29. package/payload/platform/plugins/email/mcp/dist/lib/ingest-batch.d.ts.map +1 -1
  30. package/payload/platform/plugins/email/mcp/dist/lib/ingest-batch.js +0 -0
  31. package/payload/platform/plugins/email/mcp/dist/lib/ingest-batch.js.map +1 -1
  32. package/payload/platform/plugins/email/mcp/dist/scripts/send-transactional.js +5 -2
  33. package/payload/platform/plugins/email/mcp/dist/scripts/send-transactional.js.map +1 -1
  34. package/payload/platform/plugins/email/mcp/dist/tools/email-delete.d.ts +22 -0
  35. package/payload/platform/plugins/email/mcp/dist/tools/email-delete.d.ts.map +1 -0
  36. package/payload/platform/plugins/email/mcp/dist/tools/email-delete.js +51 -0
  37. package/payload/platform/plugins/email/mcp/dist/tools/email-delete.js.map +1 -0
  38. package/payload/platform/plugins/email/mcp/dist/tools/email-draft-edit.d.ts +1 -0
  39. package/payload/platform/plugins/email/mcp/dist/tools/email-draft-edit.d.ts.map +1 -1
  40. package/payload/platform/plugins/email/mcp/dist/tools/email-draft-edit.js +1 -1
  41. package/payload/platform/plugins/email/mcp/dist/tools/email-draft-edit.js.map +1 -1
  42. package/payload/platform/plugins/email/mcp/dist/tools/email-draft-send.d.ts +1 -0
  43. package/payload/platform/plugins/email/mcp/dist/tools/email-draft-send.d.ts.map +1 -1
  44. package/payload/platform/plugins/email/mcp/dist/tools/email-draft-send.js +1 -1
  45. package/payload/platform/plugins/email/mcp/dist/tools/email-draft-send.js.map +1 -1
  46. package/payload/platform/plugins/email/mcp/dist/tools/email-draft.d.ts +1 -0
  47. package/payload/platform/plugins/email/mcp/dist/tools/email-draft.d.ts.map +1 -1
  48. package/payload/platform/plugins/email/mcp/dist/tools/email-draft.js +1 -1
  49. package/payload/platform/plugins/email/mcp/dist/tools/email-draft.js.map +1 -1
  50. package/payload/platform/plugins/email/mcp/dist/tools/email-fetch-body.d.ts +1 -0
  51. package/payload/platform/plugins/email/mcp/dist/tools/email-fetch-body.d.ts.map +1 -1
  52. package/payload/platform/plugins/email/mcp/dist/tools/email-fetch-body.js +1 -1
  53. package/payload/platform/plugins/email/mcp/dist/tools/email-fetch-body.js.map +1 -1
  54. package/payload/platform/plugins/email/mcp/dist/tools/email-fetch.d.ts +1 -0
  55. package/payload/platform/plugins/email/mcp/dist/tools/email-fetch.d.ts.map +1 -1
  56. package/payload/platform/plugins/email/mcp/dist/tools/email-fetch.js +3 -3
  57. package/payload/platform/plugins/email/mcp/dist/tools/email-fetch.js.map +1 -1
  58. package/payload/platform/plugins/email/mcp/dist/tools/email-ingest.d.ts +1 -0
  59. package/payload/platform/plugins/email/mcp/dist/tools/email-ingest.d.ts.map +1 -1
  60. package/payload/platform/plugins/email/mcp/dist/tools/email-ingest.js +14 -6
  61. package/payload/platform/plugins/email/mcp/dist/tools/email-ingest.js.map +1 -1
  62. package/payload/platform/plugins/email/mcp/dist/tools/email-otp-extract.d.ts +1 -0
  63. package/payload/platform/plugins/email/mcp/dist/tools/email-otp-extract.d.ts.map +1 -1
  64. package/payload/platform/plugins/email/mcp/dist/tools/email-otp-extract.js +1 -1
  65. package/payload/platform/plugins/email/mcp/dist/tools/email-otp-extract.js.map +1 -1
  66. package/payload/platform/plugins/email/mcp/dist/tools/email-read.d.ts +1 -0
  67. package/payload/platform/plugins/email/mcp/dist/tools/email-read.d.ts.map +1 -1
  68. package/payload/platform/plugins/email/mcp/dist/tools/email-read.js +1 -1
  69. package/payload/platform/plugins/email/mcp/dist/tools/email-read.js.map +1 -1
  70. package/payload/platform/plugins/email/mcp/dist/tools/email-reply.d.ts +1 -0
  71. package/payload/platform/plugins/email/mcp/dist/tools/email-reply.d.ts.map +1 -1
  72. package/payload/platform/plugins/email/mcp/dist/tools/email-reply.js +1 -1
  73. package/payload/platform/plugins/email/mcp/dist/tools/email-reply.js.map +1 -1
  74. package/payload/platform/plugins/email/mcp/dist/tools/email-search.d.ts +1 -0
  75. package/payload/platform/plugins/email/mcp/dist/tools/email-search.d.ts.map +1 -1
  76. package/payload/platform/plugins/email/mcp/dist/tools/email-search.js +1 -1
  77. package/payload/platform/plugins/email/mcp/dist/tools/email-search.js.map +1 -1
  78. package/payload/platform/plugins/email/mcp/dist/tools/email-send.d.ts +1 -0
  79. package/payload/platform/plugins/email/mcp/dist/tools/email-send.d.ts.map +1 -1
  80. package/payload/platform/plugins/email/mcp/dist/tools/email-send.js +1 -1
  81. package/payload/platform/plugins/email/mcp/dist/tools/email-send.js.map +1 -1
  82. package/payload/platform/plugins/email/mcp/dist/tools/email-setup.js +3 -3
  83. package/payload/platform/plugins/email/mcp/dist/tools/email-setup.js.map +1 -1
  84. package/payload/platform/plugins/email/mcp/dist/tools/email-status.d.ts +7 -0
  85. package/payload/platform/plugins/email/mcp/dist/tools/email-status.d.ts.map +1 -1
  86. package/payload/platform/plugins/email/mcp/dist/tools/email-status.js +38 -9
  87. package/payload/platform/plugins/email/mcp/dist/tools/email-status.js.map +1 -1
  88. package/payload/platform/plugins/email/references/email-reference.md +25 -0
  89. package/payload/platform/plugins/email/skills/email-composition/SKILL.md +21 -4
  90. package/payload/platform/plugins/scheduling/PLUGIN.md +1 -1
  91. package/payload/platform/plugins/scheduling/mcp/dist/scripts/check-due-events.d.ts +5 -5
  92. package/payload/platform/plugins/scheduling/mcp/dist/scripts/check-due-events.js +5 -5
  93. package/payload/platform/plugins/workflows/PLUGIN.md +2 -2
  94. package/payload/platform/plugins/workflows/skills/workflow-manager/SKILL.md +1 -1
  95. package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.d.ts.map +1 -1
  96. package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.js +1 -0
  97. package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.js.map +1 -1
  98. package/payload/platform/templates/specialists/agents/personal-assistant.md +1 -1
  99. package/payload/platform/templates/specialists/agents/project-manager.md +1 -1
  100. package/payload/server/public/assets/{chat-BWNFeIjw.js → chat-nth30R3E.js} +1 -1
  101. package/payload/server/public/assets/{operator-B3hpbhNo.js → operator-As5Tw1vj.js} +1 -1
  102. package/payload/server/public/assets/{page-DFOoEKVK.js → page-CII4OBX3.js} +2 -2
  103. package/payload/server/public/assets/{public-Bd_0QBGJ.js → public-BxZBMrEL.js} +1 -1
  104. package/payload/server/public/chat.html +2 -2
  105. package/payload/server/public/operator.html +2 -2
  106. package/payload/server/public/public.html +2 -2
@@ -97,7 +97,7 @@ For recurring events, `schedule-update` with `skipNext: true` advances `nextRun`
97
97
 
98
98
  ## Event actions
99
99
 
100
- Events can carry an automated action that fires when the event's time arrives. The dispatcher binary that reads due events and spawns the target plugin's MCP server lives at `scheduling/mcp/dist/scripts/check-due-events.js`. It is **not currently scheduled on any install**: the legacy crontab writer was removed and migration of the dispatcher to Desktop scheduled tasks (the canonical dispatch surface see `maxy-code-prd.md` §Scheduled tasks) is tracked separately. Until that landing, `action:` payloads are stored on the event and only execute when an operator invokes the dispatcher manually.
100
+ Events can carry an automated action that fires when the event's time arrives. The dispatcher binary that reads due events and spawns the target plugin's MCP server lives at `scheduling/mcp/dist/scripts/check-due-events.js`. It is **armed by the installer**, which registers one install-level cron line (`# BEGIN <BRAND> CRONS` block) that ticks the dispatcher once a minute. The watcher scans every account itself and only acts on operator-created bookings whose time has come, so a stored `action:` payload executes within about a minute of its `startDate` with no operator present. (The email dispatchers, `email-fetch` and `email-auto-respond`, act without an operator booking and stay unscheduled by the installer; see `maxy-code-prd.md` §Scheduled tasks.)
101
101
 
102
102
  To create an event with an action, pass the `action` parameter to `schedule-event`:
103
103
 
@@ -1,11 +1,11 @@
1
1
  /**
2
2
  * Dispatcher script: check-due-events
3
3
  *
4
- * Standalone dispatcher. Not fired automatically on a running install the
5
- * installer-registered cron entry was removed and the replacement
6
- * surface (Claude Code's desktop scheduled tasks, per maxy-code-prd.md
7
- * §Scheduled tasks) is not yet wired. Until that lands, this binary runs only
8
- * when invoked manually or by a future scheduled-task dispatcher. Finds events
4
+ * Heartbeat dispatcher. The installer registers one install-level cron entry
5
+ * (`# BEGIN <BRAND> CRONS` block, src/cron-registration.ts) that runs this
6
+ * binary once a minute; it also runs when invoked manually. It scans every
7
+ * account itself and only acts on operator-created bookings whose time has
8
+ * come, so the per-minute tick creates no activity of its own. Finds events
9
9
  * whose time has arrived and marks them appropriately:
10
10
  *
11
11
  * - One-time events: set eventStatus = 'due'
@@ -1,11 +1,11 @@
1
1
  /**
2
2
  * Dispatcher script: check-due-events
3
3
  *
4
- * Standalone dispatcher. Not fired automatically on a running install the
5
- * installer-registered cron entry was removed and the replacement
6
- * surface (Claude Code's desktop scheduled tasks, per maxy-code-prd.md
7
- * §Scheduled tasks) is not yet wired. Until that lands, this binary runs only
8
- * when invoked manually or by a future scheduled-task dispatcher. Finds events
4
+ * Heartbeat dispatcher. The installer registers one install-level cron entry
5
+ * (`# BEGIN <BRAND> CRONS` block, src/cron-registration.ts) that runs this
6
+ * binary once a minute; it also runs when invoked manually. It scans every
7
+ * account itself and only acts on operator-created bookings whose time has
8
+ * come, so the per-minute tick creates no activity of its own. Finds events
9
9
  * whose time has arrived and marks them appropriately:
10
10
  *
11
11
  * - One-time events: set eventStatus = 'due'
@@ -44,7 +44,7 @@ mcp-manifest: auto
44
44
 
45
45
  # Workflows
46
46
 
47
- > **Loading note:** `platform.always:false` in the frontmatter above refers to **prose embedding** — this file's contents are not auto-injected into every agent system prompt. It does **not** refer to MCP server loading. The workflows MCP server is always loaded in admin sessions (registered in `getMcpServers()` in `claude-agent.ts` alongside `tasks` / `scheduling` / `email`). The same binary is designed to be spawned ad-hoc by the platform's scheduled-task dispatcher for `workflow-execute` calls via `.mcp.json`; that dispatcher is currently unwired (see `maxy-code-prd.md` §Scheduled tasks for the canonical destination surface).
47
+ > **Loading note:** `platform.always:false` in the frontmatter above refers to **prose embedding** — this file's contents are not auto-injected into every agent system prompt. It does **not** refer to MCP server loading. The workflows MCP server is always loaded in admin sessions (registered in `getMcpServers()` in `claude-agent.ts` alongside `tasks` / `scheduling` / `email`). The same binary is spawned ad-hoc by the scheduling dispatcher (`check-due-events`) for `workflow-execute` calls via `.mcp.json`; that dispatcher is armed by the installer's once-a-minute heartbeat cron (see `maxy-code-prd.md` §Scheduled tasks).
48
48
 
49
49
  Workflows are persistent, named compositions of MCP tool calls that the user creates and the engine executes. Each step is a direct invocation of a plugin tool — the workflow runner is an MCP-tool orchestrator, never an LLM caller. Plugins that need LLM reasoning own their own SDK call inside a tool. Steps are validated at creation time — a workflow with unmet dependencies cannot be activated. The user manages them conversationally.
50
50
 
@@ -138,7 +138,7 @@ To trigger a workflow on a schedule, create an Event with the scheduling plugin
138
138
  action: { plugin: "workflows", tool: "workflow-execute", args: { workflowId: "..." } }
139
139
  ```
140
140
 
141
- Scheduled workflows are dispatched by `check-due-events`, which is currently unwired pending migration to Desktop scheduled tasks (see `maxy-code-prd.md` §Scheduled tasks). When the dispatcher fires, the WorkflowRun captures `trigger: "schedule"`.
141
+ Scheduled workflows are dispatched by `check-due-events`, which the installer arms with a once-a-minute heartbeat cron (see `maxy-code-prd.md` §Scheduled tasks). When the dispatcher fires, the WorkflowRun captures `trigger: "schedule"`.
142
142
 
143
143
  ## Managing Workflows
144
144
 
@@ -92,4 +92,4 @@ To run a workflow on a schedule, create a scheduling event with action dispatch:
92
92
  - Tool: `schedule-event`
93
93
  - Action: `{ plugin: "workflows", tool: "workflow-execute", args: { workflowId: "..." } }`
94
94
 
95
- The `check-due-events` dispatcher (currently unwired see `maxy-code-prd.md` §Scheduled tasks) is the surface that will fire the workflow at the scheduled time. The WorkflowRun captures `trigger: "schedule"` when the dispatcher fires.
95
+ The `check-due-events` dispatcher (armed by the installer's once-a-minute heartbeat cron, see `maxy-code-prd.md` §Scheduled tasks) is the surface that fires the workflow at the scheduled time. The WorkflowRun captures `trigger: "schedule"` when the dispatcher fires.
@@ -1 +1 @@
1
- {"version":3,"file":"canonical-tool-names.generated.d.ts","sourceRoot":"","sources":["../src/canonical-tool-names.generated.ts"],"names":[],"mappings":"AAQA,+EAA+E;AAC/E,eAAO,MAAM,gBAAgB,EAAE,SAAS,MAAM,EAoB7C,CAAA;AAED,gEAAgE;AAChE,eAAO,MAAM,yBAAyB,EAAE,SAAS,MAAM,EAwPtD,CAAA"}
1
+ {"version":3,"file":"canonical-tool-names.generated.d.ts","sourceRoot":"","sources":["../src/canonical-tool-names.generated.ts"],"names":[],"mappings":"AAQA,+EAA+E;AAC/E,eAAO,MAAM,gBAAgB,EAAE,SAAS,MAAM,EAoB7C,CAAA;AAED,gEAAgE;AAChE,eAAO,MAAM,yBAAyB,EAAE,SAAS,MAAM,EAyPtD,CAAA"}
@@ -97,6 +97,7 @@ export const CANONICAL_MAXY_TOOL_NAMES = [
97
97
  "mcp__plugin_contacts_contacts__contact-update",
98
98
  "mcp__plugin_contacts_contacts__group-create",
99
99
  "mcp__plugin_contacts_contacts__group-manage",
100
+ "mcp__plugin_email_email__email-delete",
100
101
  "mcp__plugin_email_email__email-draft",
101
102
  "mcp__plugin_email_email__email-draft-edit",
102
103
  "mcp__plugin_email_email__email-draft-send",
@@ -1 +1 @@
1
- {"version":3,"file":"canonical-tool-names.generated.js","sourceRoot":"","sources":["../src/canonical-tool-names.generated.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"canonical-tool-names.generated.js","sourceRoot":"","sources":["../src/canonical-tool-names.generated.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ name: personal-assistant
3
3
  description: "Scheduling, platform settings, messaging channels (Telegram, WhatsApp, email, Outlook), and browser automation. Delegate when the work is on your calendar, configuring the platform, sending or reading messages, or driving a browser."
4
4
  summary: "Handles the operational tasks you'd give a personal assistant: scheduling meetings, managing your platform settings, connecting messaging channels, and completing browser-based tasks on your behalf."
5
5
  model: claude-sonnet-4-6
6
- tools: Skill, mcp__plugin_admin_admin__system-status, mcp__plugin_admin_admin__brand-settings, mcp__plugin_admin_admin__account-manage, mcp__plugin_admin_admin__account-update, mcp__plugin_admin_admin__logs-read, mcp__plugin_admin_admin__plugin-read, mcp__plugin_admin_admin__wifi, mcp__plugin_contacts_contacts__contact-create, mcp__plugin_contacts_contacts__contact-lookup, mcp__plugin_contacts_contacts__contact-update, mcp__plugin_contacts_contacts__contact-delete, mcp__plugin_contacts_contacts__contact-list, mcp__plugin_contacts_contacts__contact-export, mcp__plugin_contacts_contacts__contact-erase, mcp__plugin_contacts_contacts__group-create, mcp__plugin_contacts_contacts__group-manage, mcp__plugin_telegram_telegram__message, mcp__plugin_telegram_telegram__message-history, mcp__plugin_telegram_telegram__telegram-webhook-register, mcp__plugin_whatsapp_whatsapp__whatsapp-login-start, mcp__plugin_whatsapp_whatsapp__whatsapp-login-wait, mcp__plugin_whatsapp_whatsapp__whatsapp-status, mcp__plugin_whatsapp_whatsapp__whatsapp-disconnect, mcp__plugin_whatsapp_whatsapp__whatsapp-config, mcp__plugin_whatsapp_whatsapp__whatsapp-activity, mcp__plugin_whatsapp_whatsapp__whatsapp-conversations, mcp__plugin_whatsapp_whatsapp__whatsapp-messages, mcp__plugin_whatsapp_whatsapp__whatsapp-conversation-graph-state, mcp__plugin_whatsapp_whatsapp__whatsapp-group-info, mcp__plugin_whatsapp_whatsapp__whatsapp-send-admin, mcp__plugin_email_email__email-provider-info, mcp__plugin_email_email__email-setup, mcp__plugin_email_email__email-read, mcp__plugin_email_email__email-fetch-body, mcp__plugin_email_email__email-send, mcp__plugin_email_email__email-draft, mcp__plugin_email_email__email-draft-edit, mcp__plugin_email_email__email-draft-send, mcp__plugin_email_email__email-reply, mcp__plugin_email_email__email-search, mcp__plugin_email_email__email-graph-query, mcp__plugin_email_email__email-otp-extract, mcp__plugin_email_email__email-status, mcp__plugin_email_email__email-fetch, mcp__plugin_email_email__email-ingest, mcp__plugin_outlook_outlook__outlook-account-register, mcp__plugin_outlook_outlook__outlook-mail-list, mcp__plugin_outlook_outlook__outlook-mail-search, mcp__plugin_outlook_outlook__outlook-calendar-list, mcp__plugin_outlook_outlook__outlook-calendar-event, mcp__plugin_outlook_outlook__outlook-contacts-list, mcp__plugin_outlook_outlook__outlook-mailbox-info, mcp__plugin_scheduling_scheduling__schedule-event, mcp__plugin_scheduling_scheduling__schedule-list, mcp__plugin_scheduling_scheduling__schedule-get, mcp__plugin_scheduling_scheduling__schedule-update, mcp__plugin_scheduling_scheduling__schedule-cancel, mcp__plugin_scheduling_scheduling__schedule-export-ics, mcp__plugin_scheduling_scheduling__schedule-import-ics, mcp__plugin_scheduling_scheduling__time-resolve, mcp__plugin_memory_memory__memory-search, mcp__plugin_memory_memory__profile-update, mcp__plugin_url-get_url-get__url-get, mcp__plugin_browser_browser__browser-render, mcp__plugin_browser_browser__browser-navigate, mcp__plugin_browser_browser__browser-snapshot, mcp__plugin_browser_browser__browser-click, mcp__plugin_browser_browser__browser-fill, mcp__plugin_browser_browser__browser-fill-form, mcp__plugin_browser_browser__browser-type, mcp__plugin_browser_browser__browser-press-key, mcp__plugin_browser_browser__browser-hover, mcp__plugin_browser_browser__browser-select-option, mcp__plugin_browser_browser__browser-wait-for, mcp__plugin_browser_browser__browser-handle-dialog, mcp__plugin_browser_browser__browser-evaluate, mcp__plugin_browser_browser__browser-console-messages, mcp__plugin_browser_browser__browser-tabs, mcp__plugin_browser_browser__browser-pdf-save, mcp__plugin_browser_browser__browser-screenshot, mcp__plugin_browser_browser__browser-resize
6
+ tools: Skill, mcp__plugin_admin_admin__system-status, mcp__plugin_admin_admin__brand-settings, mcp__plugin_admin_admin__account-manage, mcp__plugin_admin_admin__account-update, mcp__plugin_admin_admin__logs-read, mcp__plugin_admin_admin__plugin-read, mcp__plugin_admin_admin__wifi, mcp__plugin_contacts_contacts__contact-create, mcp__plugin_contacts_contacts__contact-lookup, mcp__plugin_contacts_contacts__contact-update, mcp__plugin_contacts_contacts__contact-delete, mcp__plugin_contacts_contacts__contact-list, mcp__plugin_contacts_contacts__contact-export, mcp__plugin_contacts_contacts__contact-erase, mcp__plugin_contacts_contacts__group-create, mcp__plugin_contacts_contacts__group-manage, mcp__plugin_telegram_telegram__message, mcp__plugin_telegram_telegram__message-history, mcp__plugin_telegram_telegram__telegram-webhook-register, mcp__plugin_whatsapp_whatsapp__whatsapp-login-start, mcp__plugin_whatsapp_whatsapp__whatsapp-login-wait, mcp__plugin_whatsapp_whatsapp__whatsapp-status, mcp__plugin_whatsapp_whatsapp__whatsapp-disconnect, mcp__plugin_whatsapp_whatsapp__whatsapp-config, mcp__plugin_whatsapp_whatsapp__whatsapp-activity, mcp__plugin_whatsapp_whatsapp__whatsapp-conversations, mcp__plugin_whatsapp_whatsapp__whatsapp-messages, mcp__plugin_whatsapp_whatsapp__whatsapp-conversation-graph-state, mcp__plugin_whatsapp_whatsapp__whatsapp-group-info, mcp__plugin_whatsapp_whatsapp__whatsapp-send-admin, mcp__plugin_email_email__email-provider-info, mcp__plugin_email_email__email-setup, mcp__plugin_email_email__email-read, mcp__plugin_email_email__email-fetch-body, mcp__plugin_email_email__email-send, mcp__plugin_email_email__email-draft, mcp__plugin_email_email__email-draft-edit, mcp__plugin_email_email__email-draft-send, mcp__plugin_email_email__email-reply, mcp__plugin_email_email__email-search, mcp__plugin_email_email__email-delete, mcp__plugin_email_email__email-graph-query, mcp__plugin_email_email__email-otp-extract, mcp__plugin_email_email__email-status, mcp__plugin_email_email__email-fetch, mcp__plugin_email_email__email-ingest, mcp__plugin_outlook_outlook__outlook-account-register, mcp__plugin_outlook_outlook__outlook-mail-list, mcp__plugin_outlook_outlook__outlook-mail-search, mcp__plugin_outlook_outlook__outlook-calendar-list, mcp__plugin_outlook_outlook__outlook-calendar-event, mcp__plugin_outlook_outlook__outlook-contacts-list, mcp__plugin_outlook_outlook__outlook-mailbox-info, mcp__plugin_scheduling_scheduling__schedule-event, mcp__plugin_scheduling_scheduling__schedule-list, mcp__plugin_scheduling_scheduling__schedule-get, mcp__plugin_scheduling_scheduling__schedule-update, mcp__plugin_scheduling_scheduling__schedule-cancel, mcp__plugin_scheduling_scheduling__schedule-export-ics, mcp__plugin_scheduling_scheduling__schedule-import-ics, mcp__plugin_scheduling_scheduling__time-resolve, mcp__plugin_memory_memory__memory-search, mcp__plugin_memory_memory__profile-update, mcp__plugin_url-get_url-get__url-get, mcp__plugin_browser_browser__browser-render, mcp__plugin_browser_browser__browser-navigate, mcp__plugin_browser_browser__browser-snapshot, mcp__plugin_browser_browser__browser-click, mcp__plugin_browser_browser__browser-fill, mcp__plugin_browser_browser__browser-fill-form, mcp__plugin_browser_browser__browser-type, mcp__plugin_browser_browser__browser-press-key, mcp__plugin_browser_browser__browser-hover, mcp__plugin_browser_browser__browser-select-option, mcp__plugin_browser_browser__browser-wait-for, mcp__plugin_browser_browser__browser-handle-dialog, mcp__plugin_browser_browser__browser-evaluate, mcp__plugin_browser_browser__browser-console-messages, mcp__plugin_browser_browser__browser-tabs, mcp__plugin_browser_browser__browser-pdf-save, mcp__plugin_browser_browser__browser-screenshot, mcp__plugin_browser_browser__browser-resize
7
7
  ---
8
8
 
9
9
  # Personal Assistant
@@ -38,7 +38,7 @@ A workflow is a named, persistent composition of executable steps. Steps are eit
38
38
 
39
39
  Confirm name and steps with the user before creating. `workflow-validate` checks every referenced tool and plugin is available; a workflow with unmet dependencies stays in `draft`. Status moves through `draft`, `active`, `paused`. Runs are `completed`, `partial`, or `failed`; read history via `workflow-runs`.
40
40
 
41
- Workflows can be triggered by scheduled events through the `check-due-events` dispatcher. The dispatcher is not currently scheduled; migration to Desktop scheduled tasks is tracked separately. Until that lands, a workflow scheduled via `action: { plugin: "workflows", tool: "workflow-execute", args: { workflowId: "..." } }` stays inert until an operator invokes the dispatcher manually.
41
+ Workflows can be triggered by scheduled events through the `check-due-events` dispatcher, which the installer arms with a once-a-minute heartbeat cron. A workflow scheduled via `action: { plugin: "workflows", tool: "workflow-execute", args: { workflowId: "..." } }` fires within about a minute of its scheduled time with no operator present.
42
42
 
43
43
  ## Graph adjacency at write time
44
44
 
@@ -1 +1 @@
1
- import{H as e,w as t}from"./OperatorConversations-D_o_59Oc.js";import"./admin-types-DJoj6VJv.js";import"./AdminShell-CyZPfbzd.js";import{n}from"./page-DFOoEKVK.js";var r=e(),i=t();(0,r.createRoot)(document.getElementById(`root`)).render((0,i.jsx)(n,{}));
1
+ import{H as e,w as t}from"./OperatorConversations-D_o_59Oc.js";import"./admin-types-DJoj6VJv.js";import"./AdminShell-CyZPfbzd.js";import{n}from"./page-CII4OBX3.js";var r=e(),i=t();(0,r.createRoot)(document.getElementById(`root`)).render((0,i.jsx)(n,{}));
@@ -1 +1 @@
1
- import{o as e}from"./chunk-CAM3fms7.js";import{H as t,W as n,w as r}from"./OperatorConversations-D_o_59Oc.js";import{n as i,t as a}from"./AdminLoginScreens-B45MFjWG.js";import"./admin-types-DJoj6VJv.js";import"./AdminShell-CyZPfbzd.js";import{t as o}from"./page-DFOoEKVK.js";import"./Checkbox-BPYEJJPq.js";var s=t(),c=e(n(),1),l=r();function u(){let e=i(`operator`),t=(0,c.useRef)(null);return(0,c.useEffect)(()=>{e.appState!==`chat`&&t.current!==e.appState&&(t.current=e.appState,console.info(`[operator-ui] op=auth-gate state=${e.appState}`))},[e.appState]),e.appState===`chat`?(0,l.jsx)(o,{variant:`operator`}):(0,l.jsx)(a,{auth:e})}(0,s.createRoot)(document.getElementById(`root`)).render((0,l.jsx)(u,{}));
1
+ import{o as e}from"./chunk-CAM3fms7.js";import{H as t,W as n,w as r}from"./OperatorConversations-D_o_59Oc.js";import{n as i,t as a}from"./AdminLoginScreens-B45MFjWG.js";import"./admin-types-DJoj6VJv.js";import"./AdminShell-CyZPfbzd.js";import{t as o}from"./page-CII4OBX3.js";import"./Checkbox-BPYEJJPq.js";var s=t(),c=e(n(),1),l=r();function u(){let e=i(`operator`),t=(0,c.useRef)(null);return(0,c.useEffect)(()=>{e.appState!==`chat`&&t.current!==e.appState&&(t.current=e.appState,console.info(`[operator-ui] op=auth-gate state=${e.appState}`))},[e.appState]),e.appState===`chat`?(0,l.jsx)(o,{variant:`operator`}):(0,l.jsx)(a,{auth:e})}(0,s.createRoot)(document.getElementById(`root`)).render((0,l.jsx)(u,{}));