@elizaos/plugin-workflow 2.0.0-beta.1
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/README.md +71 -0
- package/auto-enable.ts +18 -0
- package/dist/actions/index.d.ts +2 -0
- package/dist/actions/index.d.ts.map +1 -0
- package/dist/actions/index.js +2 -0
- package/dist/actions/index.js.map +1 -0
- package/dist/actions/workflow.d.ts +23 -0
- package/dist/actions/workflow.d.ts.map +1 -0
- package/dist/actions/workflow.js +425 -0
- package/dist/actions/workflow.js.map +1 -0
- package/dist/data/defaultNodes.json +9887 -0
- package/dist/data/schemaIndex.json +1 -0
- package/dist/data/triggerSchemaIndex.json +1 -0
- package/dist/db/index.d.ts +2 -0
- package/dist/db/index.d.ts.map +1 -0
- package/dist/db/index.js +2 -0
- package/dist/db/index.js.map +1 -0
- package/dist/db/schema.d.ts +588 -0
- package/dist/db/schema.d.ts.map +1 -0
- package/dist/db/schema.js +59 -0
- package/dist/db/schema.js.map +1 -0
- package/dist/index.d.ts +34 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +126 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/automations-builder.d.ts +21 -0
- package/dist/lib/automations-builder.d.ts.map +1 -0
- package/dist/lib/automations-builder.js +557 -0
- package/dist/lib/automations-builder.js.map +1 -0
- package/dist/lib/automations-types.d.ts +153 -0
- package/dist/lib/automations-types.d.ts.map +1 -0
- package/dist/lib/automations-types.js +191 -0
- package/dist/lib/automations-types.js.map +1 -0
- package/dist/lib/index.d.ts +3 -0
- package/dist/lib/index.d.ts.map +1 -0
- package/dist/lib/index.js +3 -0
- package/dist/lib/index.js.map +1 -0
- package/dist/lib/legacy-task-migration.d.ts +20 -0
- package/dist/lib/legacy-task-migration.d.ts.map +1 -0
- package/dist/lib/legacy-task-migration.js +110 -0
- package/dist/lib/legacy-task-migration.js.map +1 -0
- package/dist/lib/legacy-text-trigger-migration.d.ts +18 -0
- package/dist/lib/legacy-text-trigger-migration.d.ts.map +1 -0
- package/dist/lib/legacy-text-trigger-migration.js +131 -0
- package/dist/lib/legacy-text-trigger-migration.js.map +1 -0
- package/dist/lib/workflow-clarification.d.ts +113 -0
- package/dist/lib/workflow-clarification.d.ts.map +1 -0
- package/dist/lib/workflow-clarification.js +425 -0
- package/dist/lib/workflow-clarification.js.map +1 -0
- package/dist/plugin-routes.d.ts +9 -0
- package/dist/plugin-routes.d.ts.map +1 -0
- package/dist/plugin-routes.js +147 -0
- package/dist/plugin-routes.js.map +1 -0
- package/dist/providers/activeWorkflows.d.ts +11 -0
- package/dist/providers/activeWorkflows.d.ts.map +1 -0
- package/dist/providers/activeWorkflows.js +72 -0
- package/dist/providers/activeWorkflows.js.map +1 -0
- package/dist/providers/index.d.ts +4 -0
- package/dist/providers/index.d.ts.map +1 -0
- package/dist/providers/index.js +4 -0
- package/dist/providers/index.js.map +1 -0
- package/dist/providers/pendingDraft.d.ts +9 -0
- package/dist/providers/pendingDraft.d.ts.map +1 -0
- package/dist/providers/pendingDraft.js +48 -0
- package/dist/providers/pendingDraft.js.map +1 -0
- package/dist/providers/workflowStatus.d.ts +3 -0
- package/dist/providers/workflowStatus.d.ts.map +1 -0
- package/dist/providers/workflowStatus.js +69 -0
- package/dist/providers/workflowStatus.js.map +1 -0
- package/dist/register-routes.d.ts +2 -0
- package/dist/register-routes.d.ts.map +1 -0
- package/dist/register-routes.js +6 -0
- package/dist/register-routes.js.map +1 -0
- package/dist/routes/_helpers.d.ts +11 -0
- package/dist/routes/_helpers.d.ts.map +1 -0
- package/dist/routes/_helpers.js +22 -0
- package/dist/routes/_helpers.js.map +1 -0
- package/dist/routes/automations.d.ts +19 -0
- package/dist/routes/automations.d.ts.map +1 -0
- package/dist/routes/automations.js +32 -0
- package/dist/routes/automations.js.map +1 -0
- package/dist/routes/embedded-webhooks.d.ts +3 -0
- package/dist/routes/embedded-webhooks.d.ts.map +1 -0
- package/dist/routes/embedded-webhooks.js +47 -0
- package/dist/routes/embedded-webhooks.js.map +1 -0
- package/dist/routes/executions.d.ts +3 -0
- package/dist/routes/executions.d.ts.map +1 -0
- package/dist/routes/executions.js +58 -0
- package/dist/routes/executions.js.map +1 -0
- package/dist/routes/index.d.ts +4 -0
- package/dist/routes/index.d.ts.map +1 -0
- package/dist/routes/index.js +14 -0
- package/dist/routes/index.js.map +1 -0
- package/dist/routes/nodes.d.ts +3 -0
- package/dist/routes/nodes.d.ts.map +1 -0
- package/dist/routes/nodes.js +168 -0
- package/dist/routes/nodes.js.map +1 -0
- package/dist/routes/validation.d.ts +3 -0
- package/dist/routes/validation.d.ts.map +1 -0
- package/dist/routes/validation.js +41 -0
- package/dist/routes/validation.js.map +1 -0
- package/dist/routes/workflow-routes.d.ts +27 -0
- package/dist/routes/workflow-routes.d.ts.map +1 -0
- package/dist/routes/workflow-routes.js +326 -0
- package/dist/routes/workflow-routes.js.map +1 -0
- package/dist/routes/workflows.d.ts +3 -0
- package/dist/routes/workflows.d.ts.map +1 -0
- package/dist/routes/workflows.js +252 -0
- package/dist/routes/workflows.js.map +1 -0
- package/dist/schemas/draftIntent.d.ts +22 -0
- package/dist/schemas/draftIntent.d.ts.map +1 -0
- package/dist/schemas/draftIntent.js +22 -0
- package/dist/schemas/draftIntent.js.map +1 -0
- package/dist/schemas/feasibility.d.ts +13 -0
- package/dist/schemas/feasibility.d.ts.map +1 -0
- package/dist/schemas/feasibility.js +9 -0
- package/dist/schemas/feasibility.js.map +1 -0
- package/dist/schemas/index.d.ts +5 -0
- package/dist/schemas/index.d.ts.map +1 -0
- package/dist/schemas/index.js +5 -0
- package/dist/schemas/index.js.map +1 -0
- package/dist/schemas/keywordExtraction.d.ts +14 -0
- package/dist/schemas/keywordExtraction.d.ts.map +1 -0
- package/dist/schemas/keywordExtraction.js +12 -0
- package/dist/schemas/keywordExtraction.js.map +1 -0
- package/dist/schemas/workflowMatching.d.ts +36 -0
- package/dist/schemas/workflowMatching.d.ts.map +1 -0
- package/dist/schemas/workflowMatching.js +30 -0
- package/dist/schemas/workflowMatching.js.map +1 -0
- package/dist/services/embedded-workflow-service.d.ts +106 -0
- package/dist/services/embedded-workflow-service.d.ts.map +1 -0
- package/dist/services/embedded-workflow-service.js +1900 -0
- package/dist/services/embedded-workflow-service.js.map +1 -0
- package/dist/services/index.d.ts +5 -0
- package/dist/services/index.d.ts.map +1 -0
- package/dist/services/index.js +5 -0
- package/dist/services/index.js.map +1 -0
- package/dist/services/workflow-credential-store.d.ts +27 -0
- package/dist/services/workflow-credential-store.d.ts.map +1 -0
- package/dist/services/workflow-credential-store.js +92 -0
- package/dist/services/workflow-credential-store.js.map +1 -0
- package/dist/services/workflow-dispatch.d.ts +41 -0
- package/dist/services/workflow-dispatch.d.ts.map +1 -0
- package/dist/services/workflow-dispatch.js +86 -0
- package/dist/services/workflow-dispatch.js.map +1 -0
- package/dist/services/workflow-service.d.ts +63 -0
- package/dist/services/workflow-service.d.ts.map +1 -0
- package/dist/services/workflow-service.js +492 -0
- package/dist/services/workflow-service.js.map +1 -0
- package/dist/trigger-routes.d.ts +153 -0
- package/dist/trigger-routes.d.ts.map +1 -0
- package/dist/trigger-routes.js +424 -0
- package/dist/trigger-routes.js.map +1 -0
- package/dist/types/index.d.ts +457 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +59 -0
- package/dist/types/index.js.map +1 -0
- package/dist/utils/catalog.d.ts +16 -0
- package/dist/utils/catalog.d.ts.map +1 -0
- package/dist/utils/catalog.js +211 -0
- package/dist/utils/catalog.js.map +1 -0
- package/dist/utils/clarification.d.ts +17 -0
- package/dist/utils/clarification.d.ts.map +1 -0
- package/dist/utils/clarification.js +46 -0
- package/dist/utils/clarification.js.map +1 -0
- package/dist/utils/context.d.ts +4 -0
- package/dist/utils/context.d.ts.map +1 -0
- package/dist/utils/context.js +18 -0
- package/dist/utils/context.js.map +1 -0
- package/dist/utils/credentialResolver.d.ts +22 -0
- package/dist/utils/credentialResolver.d.ts.map +1 -0
- package/dist/utils/credentialResolver.js +146 -0
- package/dist/utils/credentialResolver.js.map +1 -0
- package/dist/utils/generation.d.ts +36 -0
- package/dist/utils/generation.d.ts.map +1 -0
- package/dist/utils/generation.js +701 -0
- package/dist/utils/generation.js.map +1 -0
- package/dist/utils/host-capabilities.d.ts +27 -0
- package/dist/utils/host-capabilities.d.ts.map +1 -0
- package/dist/utils/host-capabilities.js +59 -0
- package/dist/utils/host-capabilities.js.map +1 -0
- package/dist/utils/inferSyntheticOutputSchema.d.ts +20 -0
- package/dist/utils/inferSyntheticOutputSchema.d.ts.map +1 -0
- package/dist/utils/inferSyntheticOutputSchema.js +151 -0
- package/dist/utils/inferSyntheticOutputSchema.js.map +1 -0
- package/dist/utils/outputSchema.d.ts +26 -0
- package/dist/utils/outputSchema.d.ts.map +1 -0
- package/dist/utils/outputSchema.js +297 -0
- package/dist/utils/outputSchema.js.map +1 -0
- package/dist/utils/validateAndRepair.d.ts +41 -0
- package/dist/utils/validateAndRepair.d.ts.map +1 -0
- package/dist/utils/validateAndRepair.js +483 -0
- package/dist/utils/validateAndRepair.js.map +1 -0
- package/dist/utils/workflow-prompts/actionResponse.d.ts +2 -0
- package/dist/utils/workflow-prompts/actionResponse.d.ts.map +1 -0
- package/dist/utils/workflow-prompts/actionResponse.js +17 -0
- package/dist/utils/workflow-prompts/actionResponse.js.map +1 -0
- package/dist/utils/workflow-prompts/draftIntent.d.ts +2 -0
- package/dist/utils/workflow-prompts/draftIntent.d.ts.map +1 -0
- package/dist/utils/workflow-prompts/draftIntent.js +23 -0
- package/dist/utils/workflow-prompts/draftIntent.js.map +1 -0
- package/dist/utils/workflow-prompts/feasibilityCheck.d.ts +2 -0
- package/dist/utils/workflow-prompts/feasibilityCheck.d.ts.map +1 -0
- package/dist/utils/workflow-prompts/feasibilityCheck.js +21 -0
- package/dist/utils/workflow-prompts/feasibilityCheck.js.map +1 -0
- package/dist/utils/workflow-prompts/fieldCorrection.d.ts +3 -0
- package/dist/utils/workflow-prompts/fieldCorrection.d.ts.map +1 -0
- package/dist/utils/workflow-prompts/fieldCorrection.js +20 -0
- package/dist/utils/workflow-prompts/fieldCorrection.js.map +1 -0
- package/dist/utils/workflow-prompts/index.d.ts +8 -0
- package/dist/utils/workflow-prompts/index.d.ts.map +1 -0
- package/dist/utils/workflow-prompts/index.js +8 -0
- package/dist/utils/workflow-prompts/index.js.map +1 -0
- package/dist/utils/workflow-prompts/keywordExtraction.d.ts +2 -0
- package/dist/utils/workflow-prompts/keywordExtraction.d.ts.map +1 -0
- package/dist/utils/workflow-prompts/keywordExtraction.js +21 -0
- package/dist/utils/workflow-prompts/keywordExtraction.js.map +1 -0
- package/dist/utils/workflow-prompts/parameterCorrection.d.ts +3 -0
- package/dist/utils/workflow-prompts/parameterCorrection.d.ts.map +1 -0
- package/dist/utils/workflow-prompts/parameterCorrection.js +29 -0
- package/dist/utils/workflow-prompts/parameterCorrection.js.map +1 -0
- package/dist/utils/workflow-prompts/workflowGeneration.d.ts +2 -0
- package/dist/utils/workflow-prompts/workflowGeneration.d.ts.map +1 -0
- package/dist/utils/workflow-prompts/workflowGeneration.js +529 -0
- package/dist/utils/workflow-prompts/workflowGeneration.js.map +1 -0
- package/dist/utils/workflow-prompts/workflowMatching.d.ts +2 -0
- package/dist/utils/workflow-prompts/workflowMatching.d.ts.map +1 -0
- package/dist/utils/workflow-prompts/workflowMatching.js +23 -0
- package/dist/utils/workflow-prompts/workflowMatching.js.map +1 -0
- package/dist/utils/workflow.d.ts +62 -0
- package/dist/utils/workflow.d.ts.map +1 -0
- package/dist/utils/workflow.js +712 -0
- package/dist/utils/workflow.js.map +1 -0
- package/package.json +87 -0
- package/src/actions/index.ts +1 -0
- package/src/actions/workflow.ts +494 -0
- package/src/data/defaultNodes.json +9887 -0
- package/src/data/schemaIndex.json +1 -0
- package/src/data/triggerSchemaIndex.json +1 -0
- package/src/db/index.ts +8 -0
- package/src/db/schema.ts +94 -0
- package/src/index.ts +179 -0
- package/src/lib/automations-builder.ts +679 -0
- package/src/lib/automations-types.ts +391 -0
- package/src/lib/index.ts +8 -0
- package/src/lib/legacy-task-migration.ts +143 -0
- package/src/lib/legacy-text-trigger-migration.ts +178 -0
- package/src/lib/workflow-clarification.ts +497 -0
- package/src/plugin-routes.ts +164 -0
- package/src/providers/activeWorkflows.ts +81 -0
- package/src/providers/index.ts +3 -0
- package/src/providers/pendingDraft.ts +55 -0
- package/src/providers/workflowStatus.ts +88 -0
- package/src/register-routes.ts +6 -0
- package/src/routes/_helpers.ts +27 -0
- package/src/routes/automations.ts +46 -0
- package/src/routes/embedded-webhooks.ts +64 -0
- package/src/routes/executions.ts +75 -0
- package/src/routes/index.ts +16 -0
- package/src/routes/nodes.ts +211 -0
- package/src/routes/validation.ts +51 -0
- package/src/routes/workflow-routes.ts +469 -0
- package/src/routes/workflows.ts +310 -0
- package/src/schemas/draftIntent.ts +21 -0
- package/src/schemas/feasibility.ts +8 -0
- package/src/schemas/index.ts +4 -0
- package/src/schemas/keywordExtraction.ts +11 -0
- package/src/schemas/workflowMatching.ts +29 -0
- package/src/services/embedded-workflow-service.ts +2224 -0
- package/src/services/index.ts +17 -0
- package/src/services/workflow-credential-store.ts +132 -0
- package/src/services/workflow-dispatch.ts +121 -0
- package/src/services/workflow-service.ts +839 -0
- package/src/trigger-routes.ts +714 -0
- package/src/types/index.ts +562 -0
- package/src/utils/catalog.ts +260 -0
- package/src/utils/clarification.ts +52 -0
- package/src/utils/context.ts +22 -0
- package/src/utils/credentialResolver.ts +234 -0
- package/src/utils/generation.ts +987 -0
- package/src/utils/host-capabilities.ts +81 -0
- package/src/utils/inferSyntheticOutputSchema.ts +163 -0
- package/src/utils/outputSchema.ts +372 -0
- package/src/utils/validateAndRepair.ts +610 -0
- package/src/utils/workflow-prompts/actionResponse.ts +16 -0
- package/src/utils/workflow-prompts/draftIntent.ts +22 -0
- package/src/utils/workflow-prompts/feasibilityCheck.ts +20 -0
- package/src/utils/workflow-prompts/fieldCorrection.ts +20 -0
- package/src/utils/workflow-prompts/index.ts +10 -0
- package/src/utils/workflow-prompts/keywordExtraction.ts +20 -0
- package/src/utils/workflow-prompts/parameterCorrection.ts +29 -0
- package/src/utils/workflow-prompts/workflowGeneration.ts +528 -0
- package/src/utils/workflow-prompts/workflowMatching.ts +22 -0
- package/src/utils/workflow.ts +895 -0
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { type Plugin } from '@elizaos/core';
|
|
2
|
+
import './register-routes';
|
|
3
|
+
/**
|
|
4
|
+
* Workflow Plugin for ElizaOS
|
|
5
|
+
*
|
|
6
|
+
* Generate and manage workflows from natural language using a RAG pipeline.
|
|
7
|
+
* Supports workflow CRUD, execution management, and credential resolution.
|
|
8
|
+
*
|
|
9
|
+
* **Optional Configuration:**
|
|
10
|
+
* - `workflows.credentials`: Pre-configured credential IDs for local mode
|
|
11
|
+
*
|
|
12
|
+
* **Example Character Configuration:**
|
|
13
|
+
* ```json
|
|
14
|
+
* {
|
|
15
|
+
* "name": "AI Workflow Builder",
|
|
16
|
+
* "plugins": ["@elizaos/plugin-workflow"],
|
|
17
|
+
* "settings": {
|
|
18
|
+
* "workflows": {
|
|
19
|
+
* "credentials": {
|
|
20
|
+
* "gmailOAuth2": "cred_gmail_123",
|
|
21
|
+
* "stripeApi": "cred_stripe_456"
|
|
22
|
+
* }
|
|
23
|
+
* }
|
|
24
|
+
* }
|
|
25
|
+
* }
|
|
26
|
+
* ```
|
|
27
|
+
*/
|
|
28
|
+
export declare const workflowPlugin: Plugin;
|
|
29
|
+
export default workflowPlugin;
|
|
30
|
+
export * from './plugin-routes.js';
|
|
31
|
+
export * from './register-routes.js';
|
|
32
|
+
export * from './services/workflow-dispatch.js';
|
|
33
|
+
export { handleTriggerRoutes, type TriggerRouteContext, type TriggerRouteHelpers, } from './trigger-routes.js';
|
|
34
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8B,KAAK,MAAM,EAAE,MAAM,eAAe,CAAC;AAsBxE,OAAO,mBAAmB,CAAC;AAE3B;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,eAAO,MAAM,cAAc,EAAE,MAgD5B,CAAC;AAwEF,eAAe,cAAc,CAAC;AAE9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iCAAiC,CAAC;AAChD,OAAO,EACL,mBAAmB,EACnB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,GACzB,MAAM,qBAAqB,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import { logger } from '@elizaos/core';
|
|
2
|
+
import { workflowAction } from './actions/index';
|
|
3
|
+
import * as dbSchema from './db/index';
|
|
4
|
+
import { migrateLegacyTextTriggers, migrateLegacyWorkbenchTasks } from './lib/index';
|
|
5
|
+
import { activeWorkflowsProvider, pendingDraftProvider, workflowStatusProvider, } from './providers/index';
|
|
6
|
+
import { workflowRoutes } from './routes/index';
|
|
7
|
+
import { EmbeddedWorkflowService, registerWorkflowDispatchService, WORKFLOW_SERVICE_TYPE, WorkflowCredentialStore, WorkflowService, } from './services/index';
|
|
8
|
+
// Side-effect: register the rawPath route plugin
|
|
9
|
+
// (`@elizaos/plugin-workflow:routes`) with the app-route-plugin-registry so
|
|
10
|
+
// the runtime mounts /api/workflow/* on the host HTTP server. Without this
|
|
11
|
+
// import the registry call in register-routes.ts never fires and every
|
|
12
|
+
// /api/workflow/* request returns 404.
|
|
13
|
+
import './register-routes';
|
|
14
|
+
/**
|
|
15
|
+
* Workflow Plugin for ElizaOS
|
|
16
|
+
*
|
|
17
|
+
* Generate and manage workflows from natural language using a RAG pipeline.
|
|
18
|
+
* Supports workflow CRUD, execution management, and credential resolution.
|
|
19
|
+
*
|
|
20
|
+
* **Optional Configuration:**
|
|
21
|
+
* - `workflows.credentials`: Pre-configured credential IDs for local mode
|
|
22
|
+
*
|
|
23
|
+
* **Example Character Configuration:**
|
|
24
|
+
* ```json
|
|
25
|
+
* {
|
|
26
|
+
* "name": "AI Workflow Builder",
|
|
27
|
+
* "plugins": ["@elizaos/plugin-workflow"],
|
|
28
|
+
* "settings": {
|
|
29
|
+
* "workflows": {
|
|
30
|
+
* "credentials": {
|
|
31
|
+
* "gmailOAuth2": "cred_gmail_123",
|
|
32
|
+
* "stripeApi": "cred_stripe_456"
|
|
33
|
+
* }
|
|
34
|
+
* }
|
|
35
|
+
* }
|
|
36
|
+
* }
|
|
37
|
+
* ```
|
|
38
|
+
*/
|
|
39
|
+
export const workflowPlugin = {
|
|
40
|
+
name: 'workflow',
|
|
41
|
+
description: 'Generate and deploy workflows from natural language. ' +
|
|
42
|
+
'Runs supported workflow nodes in-process with credential resolution.',
|
|
43
|
+
services: [EmbeddedWorkflowService, WorkflowService, WorkflowCredentialStore],
|
|
44
|
+
schema: dbSchema,
|
|
45
|
+
actions: [workflowAction],
|
|
46
|
+
providers: [workflowStatusProvider, activeWorkflowsProvider, pendingDraftProvider],
|
|
47
|
+
routes: workflowRoutes,
|
|
48
|
+
init: async (_config, runtime) => {
|
|
49
|
+
// Check for pre-configured credentials (optional)
|
|
50
|
+
// Note: runtime.getSetting() only returns primitives — nested objects must be read directly
|
|
51
|
+
const workflowSettings = runtime.character?.settings?.workflows;
|
|
52
|
+
if (workflowSettings?.credentials) {
|
|
53
|
+
const credCount = Object.keys(workflowSettings.credentials).filter((k) => workflowSettings.credentials?.[k]).length;
|
|
54
|
+
logger.info({ src: 'plugin:workflow:plugin:init' }, `Pre-configured credentials: ${credCount} credential types`);
|
|
55
|
+
}
|
|
56
|
+
// Register WORKFLOW_DISPATCH so trigger-kind=workflow tasks can call
|
|
57
|
+
// runtime.getService("WORKFLOW_DISPATCH").execute(workflowId).
|
|
58
|
+
registerWorkflowDispatchService(runtime);
|
|
59
|
+
// Schedule one-shot legacy migrations off the init critical path. Service
|
|
60
|
+
// start-order is not guaranteed at init: WorkflowService may not be in
|
|
61
|
+
// the registry yet. Poll up to 10 times (1s spacing) and bail quietly
|
|
62
|
+
// if it never appears. Each migration is idempotent so a duplicate run
|
|
63
|
+
// on a future boot is harmless.
|
|
64
|
+
scheduleLegacyMigrations(runtime);
|
|
65
|
+
logger.info({ src: 'plugin:workflow:plugin:init' }, 'Workflow Plugin initialized successfully (in-process runtime)');
|
|
66
|
+
},
|
|
67
|
+
};
|
|
68
|
+
const MIGRATION_RETRY_LIMIT = 10;
|
|
69
|
+
const MIGRATION_RETRY_INTERVAL_MS = 1000;
|
|
70
|
+
function scheduleLegacyMigrations(runtime) {
|
|
71
|
+
let attempts = 0;
|
|
72
|
+
const tick = () => {
|
|
73
|
+
attempts += 1;
|
|
74
|
+
const ready = runtime.getService(WORKFLOW_SERVICE_TYPE);
|
|
75
|
+
if (!ready) {
|
|
76
|
+
if (attempts >= MIGRATION_RETRY_LIMIT) {
|
|
77
|
+
logger.warn({ src: 'plugin:workflow:plugin:migration' }, `WorkflowService still not registered after ${MIGRATION_RETRY_LIMIT} retries; legacy migrations will run on next boot`);
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
80
|
+
setTimeout(tick, MIGRATION_RETRY_INTERVAL_MS);
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
void runLegacyMigrations(runtime);
|
|
84
|
+
};
|
|
85
|
+
// Defer the first attempt off the init stack so the host runtime can
|
|
86
|
+
// finish wiring before we probe the service registry.
|
|
87
|
+
setImmediate(tick);
|
|
88
|
+
}
|
|
89
|
+
async function runLegacyMigrations(runtime) {
|
|
90
|
+
try {
|
|
91
|
+
const summary = await migrateLegacyWorkbenchTasks(runtime);
|
|
92
|
+
logger.info({
|
|
93
|
+
src: 'plugin:workflow:plugin:migration',
|
|
94
|
+
migrated: summary.migrated,
|
|
95
|
+
skipped: summary.skipped,
|
|
96
|
+
failed: summary.failed,
|
|
97
|
+
}, `Workbench-task migration: ${summary.migrated} migrated, ${summary.skipped} skipped, ${summary.failed} failed`);
|
|
98
|
+
}
|
|
99
|
+
catch (err) {
|
|
100
|
+
logger.warn({
|
|
101
|
+
src: 'plugin:workflow:plugin:migration',
|
|
102
|
+
err: err instanceof Error ? err.message : String(err),
|
|
103
|
+
}, 'Workbench-task migration threw; continuing');
|
|
104
|
+
}
|
|
105
|
+
try {
|
|
106
|
+
const summary = await migrateLegacyTextTriggers(runtime);
|
|
107
|
+
logger.info({
|
|
108
|
+
src: 'plugin:workflow:plugin:migration',
|
|
109
|
+
migrated: summary.migrated,
|
|
110
|
+
skipped: summary.skipped,
|
|
111
|
+
failed: summary.failed,
|
|
112
|
+
}, `Text-trigger migration: ${summary.migrated} migrated, ${summary.skipped} skipped, ${summary.failed} failed`);
|
|
113
|
+
}
|
|
114
|
+
catch (err) {
|
|
115
|
+
logger.warn({
|
|
116
|
+
src: 'plugin:workflow:plugin:migration',
|
|
117
|
+
err: err instanceof Error ? err.message : String(err),
|
|
118
|
+
}, 'Text-trigger migration threw; continuing');
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
export default workflowPlugin;
|
|
122
|
+
export * from './plugin-routes.js';
|
|
123
|
+
export * from './register-routes.js';
|
|
124
|
+
export * from './services/workflow-dispatch.js';
|
|
125
|
+
export { handleTriggerRoutes, } from './trigger-routes.js';
|
|
126
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Builder for the `/api/automations` response surface.
|
|
3
|
+
*
|
|
4
|
+
* Reads workflows in-process via WorkflowService, runtime tasks via the core
|
|
5
|
+
* runtime task API, and draft conversations via runtime room APIs. There is
|
|
6
|
+
* no dynamic import of plugin-workflow because this code IS the plugin.
|
|
7
|
+
*
|
|
8
|
+
* Trigger task lookup: the runtime stores trigger tasks under three tag
|
|
9
|
+
* combinations — `["queue","repeat","trigger"]` for user-defined triggers and
|
|
10
|
+
* `["queue","repeat","heartbeat"]` for plugin-owned heartbeats. We replicate
|
|
11
|
+
* `listTriggerTasks` from `packages/agent/src/triggers/runtime.ts` here
|
|
12
|
+
* because plugin-workflow cannot depend on @elizaos/agent.
|
|
13
|
+
*/
|
|
14
|
+
import type { AgentRuntime } from '@elizaos/core';
|
|
15
|
+
import { type AutomationListResponse } from './automations-types';
|
|
16
|
+
export declare function buildAutomationListResponse(runtime: AgentRuntime): Promise<AutomationListResponse>;
|
|
17
|
+
/**
|
|
18
|
+
* Test-only: clear the last-execution cache between cases.
|
|
19
|
+
*/
|
|
20
|
+
export declare function __resetAutomationsCacheForTests(): void;
|
|
21
|
+
//# sourceMappingURL=automations-builder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"automations-builder.d.ts","sourceRoot":"","sources":["../../src/lib/automations-builder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAoB,MAAM,eAAe,CAAC;AASpE,OAAO,EAGL,KAAK,sBAAsB,EAU5B,MAAM,qBAAqB,CAAC;AAge7B,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,sBAAsB,CAAC,CAyJjC;AAED;;GAEG;AACH,wBAAgB,+BAA+B,IAAI,IAAI,CAEtD"}
|