@hotmeshio/long-tail 0.1.0
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/LICENSE +202 -0
- package/README.md +262 -0
- package/build/examples/external-mcp-server/server.d.ts +17 -0
- package/build/examples/external-mcp-server/server.js +116 -0
- package/build/examples/index.d.ts +2 -0
- package/build/examples/index.js +7 -0
- package/build/examples/seed.d.ts +5 -0
- package/build/examples/seed.js +221 -0
- package/build/examples/types/envelopes.d.ts +34 -0
- package/build/examples/types/envelopes.js +8 -0
- package/build/examples/types/index.d.ts +10 -0
- package/build/examples/types/index.js +9 -0
- package/build/examples/types/resolvers.d.ts +27 -0
- package/build/examples/types/resolvers.js +9 -0
- package/build/examples/workers.d.ts +10 -0
- package/build/examples/workers.js +49 -0
- package/build/examples/workflows/basic-echo/activities.d.ts +20 -0
- package/build/examples/workflows/basic-echo/activities.js +55 -0
- package/build/examples/workflows/basic-echo/index.d.ts +14 -0
- package/build/examples/workflows/basic-echo/index.js +66 -0
- package/build/examples/workflows/kitchen-sink/activities.d.ts +40 -0
- package/build/examples/workflows/kitchen-sink/activities.js +46 -0
- package/build/examples/workflows/kitchen-sink/index.d.ts +22 -0
- package/build/examples/workflows/kitchen-sink/index.js +123 -0
- package/build/examples/workflows/review-content/activities.d.ts +10 -0
- package/build/examples/workflows/review-content/activities.js +44 -0
- package/build/examples/workflows/review-content/index.d.ts +10 -0
- package/build/examples/workflows/review-content/index.js +95 -0
- package/build/examples/workflows/review-content/types.d.ts +28 -0
- package/build/examples/workflows/review-content/types.js +2 -0
- package/build/index.d.ts +37 -0
- package/build/index.js +151 -0
- package/build/modules/auth.d.ts +58 -0
- package/build/modules/auth.js +163 -0
- package/build/modules/config.d.ts +19 -0
- package/build/modules/config.js +26 -0
- package/build/modules/defaults.d.ts +58 -0
- package/build/modules/defaults.js +95 -0
- package/build/modules/ltconfig.d.ts +21 -0
- package/build/modules/ltconfig.js +110 -0
- package/build/modules/maintenance.d.ts +18 -0
- package/build/modules/maintenance.js +47 -0
- package/build/routes/auth.d.ts +2 -0
- package/build/routes/auth.js +48 -0
- package/build/routes/bot-accounts.d.ts +2 -0
- package/build/routes/bot-accounts.js +280 -0
- package/build/routes/controlplane.d.ts +2 -0
- package/build/routes/controlplane.js +144 -0
- package/build/routes/dba.d.ts +2 -0
- package/build/routes/dba.js +86 -0
- package/build/routes/delegation.d.ts +2 -0
- package/build/routes/delegation.js +81 -0
- package/build/routes/escalations/bulk.d.ts +2 -0
- package/build/routes/escalations/bulk.js +324 -0
- package/build/routes/escalations/helpers.d.ts +5 -0
- package/build/routes/escalations/helpers.js +48 -0
- package/build/routes/escalations/index.d.ts +2 -0
- package/build/routes/escalations/index.js +20 -0
- package/build/routes/escalations/list.d.ts +2 -0
- package/build/routes/escalations/list.js +140 -0
- package/build/routes/escalations/resolve.d.ts +2 -0
- package/build/routes/escalations/resolve.js +240 -0
- package/build/routes/escalations/single.d.ts +2 -0
- package/build/routes/escalations/single.js +195 -0
- package/build/routes/exports.d.ts +2 -0
- package/build/routes/exports.js +163 -0
- package/build/routes/files.d.ts +2 -0
- package/build/routes/files.js +47 -0
- package/build/routes/index.d.ts +2 -0
- package/build/routes/index.js +52 -0
- package/build/routes/insight.d.ts +2 -0
- package/build/routes/insight.js +58 -0
- package/build/routes/maintenance.d.ts +2 -0
- package/build/routes/maintenance.js +38 -0
- package/build/routes/mcp-runs.d.ts +2 -0
- package/build/routes/mcp-runs.js +85 -0
- package/build/routes/mcp.d.ts +2 -0
- package/build/routes/mcp.js +264 -0
- package/build/routes/namespaces.d.ts +2 -0
- package/build/routes/namespaces.js +71 -0
- package/build/routes/oauth.d.ts +7 -0
- package/build/routes/oauth.js +217 -0
- package/build/routes/resolve.d.ts +9 -0
- package/build/routes/resolve.js +19 -0
- package/build/routes/roles.d.ts +2 -0
- package/build/routes/roles.js +195 -0
- package/build/routes/settings.d.ts +2 -0
- package/build/routes/settings.js +35 -0
- package/build/routes/tasks.d.ts +2 -0
- package/build/routes/tasks.js +133 -0
- package/build/routes/users.d.ts +2 -0
- package/build/routes/users.js +206 -0
- package/build/routes/workflows/config.d.ts +2 -0
- package/build/routes/workflows/config.js +123 -0
- package/build/routes/workflows/discovery.d.ts +2 -0
- package/build/routes/workflows/discovery.js +146 -0
- package/build/routes/workflows/index.d.ts +2 -0
- package/build/routes/workflows/index.js +18 -0
- package/build/routes/workflows/invocation.d.ts +2 -0
- package/build/routes/workflows/invocation.js +162 -0
- package/build/routes/yaml-workflows/crud.d.ts +2 -0
- package/build/routes/yaml-workflows/crud.js +276 -0
- package/build/routes/yaml-workflows/deployment.d.ts +2 -0
- package/build/routes/yaml-workflows/deployment.js +179 -0
- package/build/routes/yaml-workflows/helpers.d.ts +2 -0
- package/build/routes/yaml-workflows/helpers.js +8 -0
- package/build/routes/yaml-workflows/index.d.ts +2 -0
- package/build/routes/yaml-workflows/index.js +21 -0
- package/build/routes/yaml-workflows/versions.d.ts +2 -0
- package/build/routes/yaml-workflows/versions.js +116 -0
- package/build/scripts/process-helpers.d.ts +11 -0
- package/build/scripts/process-helpers.js +59 -0
- package/build/scripts/process.d.ts +18 -0
- package/build/scripts/process.js +191 -0
- package/build/scripts/token.d.ts +13 -0
- package/build/scripts/token.js +42 -0
- package/build/services/auth/bot-api-key.d.ts +32 -0
- package/build/services/auth/bot-api-key.js +112 -0
- package/build/services/auth/delegation.d.ts +20 -0
- package/build/services/auth/delegation.js +53 -0
- package/build/services/auth/service-token.d.ts +23 -0
- package/build/services/auth/service-token.js +105 -0
- package/build/services/config/cache.d.ts +2 -0
- package/build/services/config/cache.js +24 -0
- package/build/services/config/index.d.ts +4 -0
- package/build/services/config/index.js +13 -0
- package/build/services/config/provider.d.ts +2 -0
- package/build/services/config/provider.js +30 -0
- package/build/services/config/read.d.ts +3 -0
- package/build/services/config/read.js +68 -0
- package/build/services/config/sql.d.ts +14 -0
- package/build/services/config/sql.js +58 -0
- package/build/services/config/write.d.ts +5 -0
- package/build/services/config/write.js +61 -0
- package/build/services/controlplane/index.d.ts +47 -0
- package/build/services/controlplane/index.js +124 -0
- package/build/services/controlplane/quorum-bridge.d.ts +15 -0
- package/build/services/controlplane/quorum-bridge.js +62 -0
- package/build/services/controlplane/sql.d.ts +21 -0
- package/build/services/controlplane/sql.js +70 -0
- package/build/services/controlplane/types.d.ts +13 -0
- package/build/services/controlplane/types.js +3 -0
- package/build/services/cron/index.d.ts +46 -0
- package/build/services/cron/index.js +199 -0
- package/build/services/db/index.d.ts +3 -0
- package/build/services/db/index.js +19 -0
- package/build/services/db/migrate.d.ts +1 -0
- package/build/services/db/migrate.js +78 -0
- package/build/services/dba.d.ts +28 -0
- package/build/services/dba.js +32 -0
- package/build/services/escalation/bulk.d.ts +27 -0
- package/build/services/escalation/bulk.js +57 -0
- package/build/services/escalation/crud.d.ts +47 -0
- package/build/services/escalation/crud.js +150 -0
- package/build/services/escalation/index.d.ts +4 -0
- package/build/services/escalation/index.js +20 -0
- package/build/services/escalation/queries.d.ts +37 -0
- package/build/services/escalation/queries.js +163 -0
- package/build/services/escalation/sql.d.ts +21 -0
- package/build/services/escalation/sql.js +135 -0
- package/build/services/escalation/types.d.ts +43 -0
- package/build/services/escalation/types.js +13 -0
- package/build/services/escalation-strategy/default.d.ts +12 -0
- package/build/services/escalation-strategy/default.js +17 -0
- package/build/services/escalation-strategy/index.d.ts +21 -0
- package/build/services/escalation-strategy/index.js +32 -0
- package/build/services/escalation-strategy/mcp.d.ts +13 -0
- package/build/services/escalation-strategy/mcp.js +51 -0
- package/build/services/events/index.d.ts +37 -0
- package/build/services/events/index.js +64 -0
- package/build/services/events/memory.d.ts +27 -0
- package/build/services/events/memory.js +40 -0
- package/build/services/events/nats.d.ts +29 -0
- package/build/services/events/nats.js +50 -0
- package/build/services/events/publish.d.ts +72 -0
- package/build/services/events/publish.js +106 -0
- package/build/services/events/socketio.d.ts +33 -0
- package/build/services/events/socketio.js +70 -0
- package/build/services/export/client.d.ts +2 -0
- package/build/services/export/client.js +16 -0
- package/build/services/export/index.d.ts +39 -0
- package/build/services/export/index.js +158 -0
- package/build/services/export/post-process.d.ts +16 -0
- package/build/services/export/post-process.js +133 -0
- package/build/services/export/types.d.ts +25 -0
- package/build/services/export/types.js +2 -0
- package/build/services/hotmesh-utils.d.ts +61 -0
- package/build/services/hotmesh-utils.js +204 -0
- package/build/services/iam/activity.d.ts +52 -0
- package/build/services/iam/activity.js +59 -0
- package/build/services/iam/bots.d.ts +83 -0
- package/build/services/iam/bots.js +157 -0
- package/build/services/iam/context.d.ts +14 -0
- package/build/services/iam/context.js +61 -0
- package/build/services/iam/credentials.d.ts +42 -0
- package/build/services/iam/credentials.js +86 -0
- package/build/services/iam/envelope.d.ts +10 -0
- package/build/services/iam/envelope.js +32 -0
- package/build/services/iam/ephemeral.d.ts +50 -0
- package/build/services/iam/ephemeral.js +131 -0
- package/build/services/iam/index.d.ts +19 -0
- package/build/services/iam/index.js +37 -0
- package/build/services/iam/principal.d.ts +12 -0
- package/build/services/iam/principal.js +53 -0
- package/build/services/iam/resolve.d.ts +48 -0
- package/build/services/iam/resolve.js +89 -0
- package/build/services/insight/index.d.ts +30 -0
- package/build/services/insight/index.js +81 -0
- package/build/services/insight/prompts.d.ts +4 -0
- package/build/services/insight/prompts.js +15 -0
- package/build/services/interceptor/activities/config.d.ts +21 -0
- package/build/services/interceptor/activities/config.js +26 -0
- package/build/services/interceptor/activities/escalation.d.ts +58 -0
- package/build/services/interceptor/activities/escalation.js +110 -0
- package/build/services/interceptor/activities/index.d.ts +4 -0
- package/build/services/interceptor/activities/index.js +23 -0
- package/build/services/interceptor/activities/task.d.ts +65 -0
- package/build/services/interceptor/activities/task.js +168 -0
- package/build/services/interceptor/activities/workflow.d.ts +26 -0
- package/build/services/interceptor/activities/workflow.js +41 -0
- package/build/services/interceptor/activity-interceptor.d.ts +32 -0
- package/build/services/interceptor/activity-interceptor.js +86 -0
- package/build/services/interceptor/completion.d.ts +16 -0
- package/build/services/interceptor/completion.js +149 -0
- package/build/services/interceptor/context.d.ts +11 -0
- package/build/services/interceptor/context.js +20 -0
- package/build/services/interceptor/escalation.d.ts +26 -0
- package/build/services/interceptor/escalation.js +150 -0
- package/build/services/interceptor/index.d.ts +45 -0
- package/build/services/interceptor/index.js +160 -0
- package/build/services/interceptor/lifecycle.d.ts +44 -0
- package/build/services/interceptor/lifecycle.js +174 -0
- package/build/services/interceptor/state.d.ts +22 -0
- package/build/services/interceptor/state.js +36 -0
- package/build/services/interceptor/types.d.ts +43 -0
- package/build/services/interceptor/types.js +3 -0
- package/build/services/llm/detect.d.ts +16 -0
- package/build/services/llm/detect.js +33 -0
- package/build/services/llm/index.d.ts +34 -0
- package/build/services/llm/index.js +106 -0
- package/build/services/llm/providers/anthropic.d.ts +11 -0
- package/build/services/llm/providers/anthropic.js +85 -0
- package/build/services/llm/providers/openai.d.ts +9 -0
- package/build/services/llm/providers/openai.js +46 -0
- package/build/services/llm/translate.d.ts +66 -0
- package/build/services/llm/translate.js +192 -0
- package/build/services/llm/types.d.ts +64 -0
- package/build/services/llm/types.js +8 -0
- package/build/services/logger/index.d.ts +32 -0
- package/build/services/logger/index.js +69 -0
- package/build/services/logger/pino.d.ts +24 -0
- package/build/services/logger/pino.js +59 -0
- package/build/services/maintenance/index.d.ts +43 -0
- package/build/services/maintenance/index.js +183 -0
- package/build/services/mcp/adapter.d.ts +23 -0
- package/build/services/mcp/adapter.js +119 -0
- package/build/services/mcp/client/connection.d.ts +46 -0
- package/build/services/mcp/client/connection.js +280 -0
- package/build/services/mcp/client/index.d.ts +2 -0
- package/build/services/mcp/client/index.js +16 -0
- package/build/services/mcp/client/tools.d.ts +22 -0
- package/build/services/mcp/client/tools.js +118 -0
- package/build/services/mcp/db-server/index.d.ts +25 -0
- package/build/services/mcp/db-server/index.js +49 -0
- package/build/services/mcp/db-server/schemas.d.ts +52 -0
- package/build/services/mcp/db-server/schemas.js +34 -0
- package/build/services/mcp/db-server/tools.d.ts +5 -0
- package/build/services/mcp/db-server/tools.js +224 -0
- package/build/services/mcp/db.d.ts +26 -0
- package/build/services/mcp/db.js +141 -0
- package/build/services/mcp/index.d.ts +25 -0
- package/build/services/mcp/index.js +47 -0
- package/build/services/mcp/playwright-server/index.d.ts +14 -0
- package/build/services/mcp/playwright-server/index.js +25 -0
- package/build/services/mcp/playwright-server/lifecycle.d.ts +7 -0
- package/build/services/mcp/playwright-server/lifecycle.js +63 -0
- package/build/services/mcp/playwright-server/schemas.d.ts +81 -0
- package/build/services/mcp/playwright-server/schemas.js +48 -0
- package/build/services/mcp/playwright-server/tools.d.ts +2 -0
- package/build/services/mcp/playwright-server/tools.js +224 -0
- package/build/services/mcp/server.d.ts +26 -0
- package/build/services/mcp/server.js +286 -0
- package/build/services/mcp/sql.d.ts +12 -0
- package/build/services/mcp/sql.js +59 -0
- package/build/services/mcp/types.d.ts +17 -0
- package/build/services/mcp/types.js +3 -0
- package/build/services/mcp/vision-server.d.ts +15 -0
- package/build/services/mcp/vision-server.js +214 -0
- package/build/services/mcp/workflow-compiler-server.d.ts +15 -0
- package/build/services/mcp/workflow-compiler-server.js +206 -0
- package/build/services/mcp/workflow-server.d.ts +24 -0
- package/build/services/mcp/workflow-server.js +230 -0
- package/build/services/mcp-runs/enrichment.d.ts +12 -0
- package/build/services/mcp-runs/enrichment.js +39 -0
- package/build/services/mcp-runs/events.d.ts +6 -0
- package/build/services/mcp-runs/events.js +126 -0
- package/build/services/mcp-runs/execution-builder.d.ts +12 -0
- package/build/services/mcp-runs/execution-builder.js +100 -0
- package/build/services/mcp-runs/index.d.ts +4 -0
- package/build/services/mcp-runs/index.js +8 -0
- package/build/services/mcp-runs/queries.d.ts +28 -0
- package/build/services/mcp-runs/queries.js +71 -0
- package/build/services/mcp-runs/sql.d.ts +4 -0
- package/build/services/mcp-runs/sql.js +17 -0
- package/build/services/mcp-runs/types.d.ts +65 -0
- package/build/services/mcp-runs/types.js +2 -0
- package/build/services/namespace/index.d.ts +17 -0
- package/build/services/namespace/index.js +41 -0
- package/build/services/namespace/sql.d.ts +4 -0
- package/build/services/namespace/sql.js +23 -0
- package/build/services/namespace/types.d.ts +11 -0
- package/build/services/namespace/types.js +3 -0
- package/build/services/oauth/crypto.d.ts +19 -0
- package/build/services/oauth/crypto.js +95 -0
- package/build/services/oauth/db.d.ts +20 -0
- package/build/services/oauth/db.js +140 -0
- package/build/services/oauth/index.d.ts +12 -0
- package/build/services/oauth/index.js +77 -0
- package/build/services/oauth/providers/anthropic.d.ts +3 -0
- package/build/services/oauth/providers/anthropic.js +111 -0
- package/build/services/oauth/providers/github.d.ts +3 -0
- package/build/services/oauth/providers/github.js +46 -0
- package/build/services/oauth/providers/google.d.ts +3 -0
- package/build/services/oauth/providers/google.js +44 -0
- package/build/services/oauth/providers/index.d.ts +2 -0
- package/build/services/oauth/providers/index.js +7 -0
- package/build/services/oauth/providers/microsoft.d.ts +3 -0
- package/build/services/oauth/providers/microsoft.js +46 -0
- package/build/services/oauth/providers/mock.d.ts +3 -0
- package/build/services/oauth/providers/mock.js +76 -0
- package/build/services/oauth/providers/registry.d.ts +8 -0
- package/build/services/oauth/providers/registry.js +46 -0
- package/build/services/oauth/providers/types.d.ts +13 -0
- package/build/services/oauth/providers/types.js +2 -0
- package/build/services/oauth/state.d.ts +30 -0
- package/build/services/oauth/state.js +83 -0
- package/build/services/orchestrator/index.d.ts +23 -0
- package/build/services/orchestrator/index.js +156 -0
- package/build/services/orchestrator/types.d.ts +15 -0
- package/build/services/orchestrator/types.js +3 -0
- package/build/services/role/index.d.ts +47 -0
- package/build/services/role/index.js +136 -0
- package/build/services/role/sql.d.ts +14 -0
- package/build/services/role/sql.js +80 -0
- package/build/services/role/types.d.ts +11 -0
- package/build/services/role/types.js +3 -0
- package/build/services/storage/index.d.ts +12 -0
- package/build/services/storage/index.js +31 -0
- package/build/services/storage/local.d.ts +26 -0
- package/build/services/storage/local.js +129 -0
- package/build/services/storage/s3.d.ts +31 -0
- package/build/services/storage/s3.js +180 -0
- package/build/services/storage/types.d.ts +41 -0
- package/build/services/storage/types.js +2 -0
- package/build/services/task/crud.d.ts +21 -0
- package/build/services/task/crud.js +123 -0
- package/build/services/task/index.d.ts +4 -0
- package/build/services/task/index.js +20 -0
- package/build/services/task/process.d.ts +14 -0
- package/build/services/task/process.js +98 -0
- package/build/services/task/resolve.d.ts +12 -0
- package/build/services/task/resolve.js +49 -0
- package/build/services/task/sql.d.ts +19 -0
- package/build/services/task/sql.js +92 -0
- package/build/services/task/types.d.ts +56 -0
- package/build/services/task/types.js +9 -0
- package/build/services/telemetry/honeycomb.d.ts +53 -0
- package/build/services/telemetry/honeycomb.js +79 -0
- package/build/services/telemetry/index.d.ts +46 -0
- package/build/services/telemetry/index.js +68 -0
- package/build/services/user/auth.d.ts +7 -0
- package/build/services/user/auth.js +26 -0
- package/build/services/user/crud.d.ts +19 -0
- package/build/services/user/crud.js +151 -0
- package/build/services/user/index.d.ts +5 -0
- package/build/services/user/index.js +26 -0
- package/build/services/user/rbac.d.ts +15 -0
- package/build/services/user/rbac.js +32 -0
- package/build/services/user/roles.d.ts +7 -0
- package/build/services/user/roles.js +42 -0
- package/build/services/user/sql.d.ts +22 -0
- package/build/services/user/sql.js +45 -0
- package/build/services/user/types.d.ts +23 -0
- package/build/services/user/types.js +4 -0
- package/build/services/workers/registry.d.ts +10 -0
- package/build/services/workers/registry.js +26 -0
- package/build/services/workflow-invocation.d.ts +46 -0
- package/build/services/workflow-invocation.js +184 -0
- package/build/services/yaml-workflow/db-utils.d.ts +25 -0
- package/build/services/yaml-workflow/db-utils.js +93 -0
- package/build/services/yaml-workflow/db.d.ts +27 -0
- package/build/services/yaml-workflow/db.js +196 -0
- package/build/services/yaml-workflow/deployer-helpers.d.ts +13 -0
- package/build/services/yaml-workflow/deployer-helpers.js +133 -0
- package/build/services/yaml-workflow/deployer.d.ts +54 -0
- package/build/services/yaml-workflow/deployer.js +203 -0
- package/build/services/yaml-workflow/generator.d.ts +21 -0
- package/build/services/yaml-workflow/generator.js +117 -0
- package/build/services/yaml-workflow/index.d.ts +4 -0
- package/build/services/yaml-workflow/index.js +20 -0
- package/build/services/yaml-workflow/input-analyzer-helpers.d.ts +48 -0
- package/build/services/yaml-workflow/input-analyzer-helpers.js +183 -0
- package/build/services/yaml-workflow/input-analyzer.d.ts +30 -0
- package/build/services/yaml-workflow/input-analyzer.js +109 -0
- package/build/services/yaml-workflow/pattern-detector/array-source.d.ts +22 -0
- package/build/services/yaml-workflow/pattern-detector/array-source.js +120 -0
- package/build/services/yaml-workflow/pattern-detector/collapse.d.ts +27 -0
- package/build/services/yaml-workflow/pattern-detector/collapse.js +92 -0
- package/build/services/yaml-workflow/pattern-detector/index.d.ts +18 -0
- package/build/services/yaml-workflow/pattern-detector/index.js +22 -0
- package/build/services/yaml-workflow/pattern-detector/run-detection.d.ts +28 -0
- package/build/services/yaml-workflow/pattern-detector/run-detection.js +81 -0
- package/build/services/yaml-workflow/pattern-detector/types.d.ts +29 -0
- package/build/services/yaml-workflow/pattern-detector/types.js +8 -0
- package/build/services/yaml-workflow/pipeline/analyze.d.ts +11 -0
- package/build/services/yaml-workflow/pipeline/analyze.js +64 -0
- package/build/services/yaml-workflow/pipeline/build/dag.d.ts +25 -0
- package/build/services/yaml-workflow/pipeline/build/dag.js +254 -0
- package/build/services/yaml-workflow/pipeline/build/index.d.ts +20 -0
- package/build/services/yaml-workflow/pipeline/build/index.js +115 -0
- package/build/services/yaml-workflow/pipeline/build/iteration.d.ts +25 -0
- package/build/services/yaml-workflow/pipeline/build/iteration.js +231 -0
- package/build/services/yaml-workflow/pipeline/build/metadata.d.ts +15 -0
- package/build/services/yaml-workflow/pipeline/build/metadata.js +126 -0
- package/build/services/yaml-workflow/pipeline/build/transform.d.ts +17 -0
- package/build/services/yaml-workflow/pipeline/build/transform.js +94 -0
- package/build/services/yaml-workflow/pipeline/build/utils.d.ts +22 -0
- package/build/services/yaml-workflow/pipeline/build/utils.js +129 -0
- package/build/services/yaml-workflow/pipeline/build/wiring.d.ts +9 -0
- package/build/services/yaml-workflow/pipeline/build/wiring.js +148 -0
- package/build/services/yaml-workflow/pipeline/compile/index.d.ts +17 -0
- package/build/services/yaml-workflow/pipeline/compile/index.js +64 -0
- package/build/services/yaml-workflow/pipeline/compile/llm-call.d.ts +14 -0
- package/build/services/yaml-workflow/pipeline/compile/llm-call.js +153 -0
- package/build/services/yaml-workflow/pipeline/compile/parse-plan.d.ts +12 -0
- package/build/services/yaml-workflow/pipeline/compile/parse-plan.js +88 -0
- package/build/services/yaml-workflow/pipeline/compile/summarize.d.ts +39 -0
- package/build/services/yaml-workflow/pipeline/compile/summarize.js +174 -0
- package/build/services/yaml-workflow/pipeline/extract-helpers.d.ts +42 -0
- package/build/services/yaml-workflow/pipeline/extract-helpers.js +88 -0
- package/build/services/yaml-workflow/pipeline/extract.d.ts +24 -0
- package/build/services/yaml-workflow/pipeline/extract.js +235 -0
- package/build/services/yaml-workflow/pipeline/prompts.d.ts +15 -0
- package/build/services/yaml-workflow/pipeline/prompts.js +254 -0
- package/build/services/yaml-workflow/pipeline/validate.d.ts +12 -0
- package/build/services/yaml-workflow/pipeline/validate.js +111 -0
- package/build/services/yaml-workflow/sql.d.ts +19 -0
- package/build/services/yaml-workflow/sql.js +83 -0
- package/build/services/yaml-workflow/types.d.ts +223 -0
- package/build/services/yaml-workflow/types.js +8 -0
- package/build/services/yaml-workflow/workers/callbacks.d.ts +17 -0
- package/build/services/yaml-workflow/workers/callbacks.js +194 -0
- package/build/services/yaml-workflow/workers/events.d.ts +7 -0
- package/build/services/yaml-workflow/workers/events.js +49 -0
- package/build/services/yaml-workflow/workers/index.d.ts +4 -0
- package/build/services/yaml-workflow/workers/index.js +15 -0
- package/build/services/yaml-workflow/workers/register.d.ts +15 -0
- package/build/services/yaml-workflow/workers/register.js +233 -0
- package/build/services/yaml-workflow/workers/scope.d.ts +13 -0
- package/build/services/yaml-workflow/workers/scope.js +37 -0
- package/build/start/adapters.d.ts +6 -0
- package/build/start/adapters.js +80 -0
- package/build/start/config.d.ts +10 -0
- package/build/start/config.js +88 -0
- package/build/start/index.d.ts +21 -0
- package/build/start/index.js +87 -0
- package/build/start/server.d.ts +6 -0
- package/build/start/server.js +46 -0
- package/build/start/workers.d.ts +32 -0
- package/build/start/workers.js +144 -0
- package/build/system/activities/claude-code.d.ts +56 -0
- package/build/system/activities/claude-code.js +258 -0
- package/build/system/activities/file-storage.d.ts +31 -0
- package/build/system/activities/file-storage.js +71 -0
- package/build/system/activities/http.d.ts +27 -0
- package/build/system/activities/http.js +56 -0
- package/build/system/activities/oauth.d.ts +39 -0
- package/build/system/activities/oauth.js +33 -0
- package/build/system/activities/triage/cache.d.ts +7 -0
- package/build/system/activities/triage/cache.js +10 -0
- package/build/system/activities/triage/context.d.ts +21 -0
- package/build/system/activities/triage/context.js +92 -0
- package/build/system/activities/triage/discovery.d.ts +25 -0
- package/build/system/activities/triage/discovery.js +170 -0
- package/build/system/activities/triage/index.d.ts +5 -0
- package/build/system/activities/triage/index.js +22 -0
- package/build/system/activities/triage/llm.d.ts +9 -0
- package/build/system/activities/triage/llm.js +34 -0
- package/build/system/activities/triage/tools.d.ts +24 -0
- package/build/system/activities/triage/tools.js +178 -0
- package/build/system/index.d.ts +16 -0
- package/build/system/index.js +100 -0
- package/build/system/mcp-servers/claude-code.d.ts +17 -0
- package/build/system/mcp-servers/claude-code.js +110 -0
- package/build/system/mcp-servers/db-query/index.d.ts +25 -0
- package/build/system/mcp-servers/db-query/index.js +49 -0
- package/build/system/mcp-servers/db-query/schemas.d.ts +52 -0
- package/build/system/mcp-servers/db-query/schemas.js +34 -0
- package/build/system/mcp-servers/db-query/tools.d.ts +5 -0
- package/build/system/mcp-servers/db-query/tools.js +224 -0
- package/build/system/mcp-servers/document-vision.d.ts +15 -0
- package/build/system/mcp-servers/document-vision.js +228 -0
- package/build/system/mcp-servers/file-storage.d.ts +4 -0
- package/build/system/mcp-servers/file-storage.js +101 -0
- package/build/system/mcp-servers/http-fetch.d.ts +4 -0
- package/build/system/mcp-servers/http-fetch.js +100 -0
- package/build/system/mcp-servers/human-queue.d.ts +26 -0
- package/build/system/mcp-servers/human-queue.js +287 -0
- package/build/system/mcp-servers/oauth.d.ts +11 -0
- package/build/system/mcp-servers/oauth.js +100 -0
- package/build/system/mcp-servers/playwright/browser-lifecycle.d.ts +26 -0
- package/build/system/mcp-servers/playwright/browser-lifecycle.js +125 -0
- package/build/system/mcp-servers/playwright/index.d.ts +25 -0
- package/build/system/mcp-servers/playwright/index.js +42 -0
- package/build/system/mcp-servers/playwright/schemas.d.ts +383 -0
- package/build/system/mcp-servers/playwright/schemas.js +87 -0
- package/build/system/mcp-servers/playwright/tools-atomic.d.ts +2 -0
- package/build/system/mcp-servers/playwright/tools-atomic.js +9 -0
- package/build/system/mcp-servers/playwright/tools-navigation.d.ts +2 -0
- package/build/system/mcp-servers/playwright/tools-navigation.js +140 -0
- package/build/system/mcp-servers/playwright/tools-page-interaction.d.ts +2 -0
- package/build/system/mcp-servers/playwright/tools-page-interaction.js +162 -0
- package/build/system/mcp-servers/playwright/tools-run-script.d.ts +2 -0
- package/build/system/mcp-servers/playwright/tools-run-script.js +190 -0
- package/build/system/mcp-servers/playwright/types.d.ts +8 -0
- package/build/system/mcp-servers/playwright/types.js +30 -0
- package/build/system/mcp-servers/playwright-cli/helpers.d.ts +11 -0
- package/build/system/mcp-servers/playwright-cli/helpers.js +20 -0
- package/build/system/mcp-servers/playwright-cli/index.d.ts +4 -0
- package/build/system/mcp-servers/playwright-cli/index.js +15 -0
- package/build/system/mcp-servers/playwright-cli/schemas.d.ts +219 -0
- package/build/system/mcp-servers/playwright-cli/schemas.js +75 -0
- package/build/system/mcp-servers/playwright-cli/tools-auth.d.ts +2 -0
- package/build/system/mcp-servers/playwright-cli/tools-auth.js +183 -0
- package/build/system/mcp-servers/playwright-cli/tools-capture.d.ts +2 -0
- package/build/system/mcp-servers/playwright-cli/tools-capture.js +267 -0
- package/build/system/mcp-servers/prompts.d.ts +4 -0
- package/build/system/mcp-servers/prompts.js +10 -0
- package/build/system/mcp-servers/workflow-compiler.d.ts +15 -0
- package/build/system/mcp-servers/workflow-compiler.js +230 -0
- package/build/system/mcp-servers/workflow.d.ts +24 -0
- package/build/system/mcp-servers/workflow.js +231 -0
- package/build/system/seed/index.d.ts +7 -0
- package/build/system/seed/index.js +36 -0
- package/build/system/seed/server-definitions.d.ts +1460 -0
- package/build/system/seed/server-definitions.js +160 -0
- package/build/system/seed/tool-manifests-browser.d.ts +577 -0
- package/build/system/seed/tool-manifests-browser.js +158 -0
- package/build/system/seed/tool-manifests-data.d.ts +322 -0
- package/build/system/seed/tool-manifests-data.js +173 -0
- package/build/system/seed/tool-manifests-escalation.d.ts +173 -0
- package/build/system/seed/tool-manifests-escalation.js +76 -0
- package/build/system/seed/tool-manifests-workflows.d.ts +211 -0
- package/build/system/seed/tool-manifests-workflows.js +136 -0
- package/build/system/workflows/mcp-deterministic/activities.d.ts +6 -0
- package/build/system/workflows/mcp-deterministic/activities.js +56 -0
- package/build/system/workflows/mcp-deterministic/index.d.ts +9 -0
- package/build/system/workflows/mcp-deterministic/index.js +72 -0
- package/build/system/workflows/mcp-query/activities/caches.d.ts +7 -0
- package/build/system/workflows/mcp-query/activities/caches.js +10 -0
- package/build/system/workflows/mcp-query/activities/discovery.d.ts +31 -0
- package/build/system/workflows/mcp-query/activities/discovery.js +172 -0
- package/build/system/workflows/mcp-query/activities/index.d.ts +4 -0
- package/build/system/workflows/mcp-query/activities/index.js +13 -0
- package/build/system/workflows/mcp-query/activities/llm.d.ts +8 -0
- package/build/system/workflows/mcp-query/activities/llm.js +33 -0
- package/build/system/workflows/mcp-query/activities/tool-executor.d.ts +5 -0
- package/build/system/workflows/mcp-query/activities/tool-executor.js +112 -0
- package/build/system/workflows/mcp-query/activities/tool-loader.d.ts +14 -0
- package/build/system/workflows/mcp-query/activities/tool-loader.js +93 -0
- package/build/system/workflows/mcp-query/index.d.ts +14 -0
- package/build/system/workflows/mcp-query/index.js +227 -0
- package/build/system/workflows/mcp-query/prompts.d.ts +4 -0
- package/build/system/workflows/mcp-query/prompts.js +101 -0
- package/build/system/workflows/mcp-query/strategy-advisors.d.ts +14 -0
- package/build/system/workflows/mcp-query/strategy-advisors.js +109 -0
- package/build/system/workflows/mcp-query/types.d.ts +10 -0
- package/build/system/workflows/mcp-query/types.js +3 -0
- package/build/system/workflows/mcp-query-router/activities.d.ts +6 -0
- package/build/system/workflows/mcp-query-router/activities.js +12 -0
- package/build/system/workflows/mcp-query-router/index.d.ts +13 -0
- package/build/system/workflows/mcp-query-router/index.js +107 -0
- package/build/system/workflows/mcp-query-router/prompts.d.ts +1 -0
- package/build/system/workflows/mcp-query-router/prompts.js +8 -0
- package/build/system/workflows/mcp-triage/index.d.ts +31 -0
- package/build/system/workflows/mcp-triage/index.js +222 -0
- package/build/system/workflows/mcp-triage/prompts.d.ts +7 -0
- package/build/system/workflows/mcp-triage/prompts.js +159 -0
- package/build/system/workflows/mcp-triage/response-builders.d.ts +17 -0
- package/build/system/workflows/mcp-triage/response-builders.js +96 -0
- package/build/system/workflows/mcp-triage/response.d.ts +8 -0
- package/build/system/workflows/mcp-triage/response.js +157 -0
- package/build/system/workflows/mcp-triage/types.d.ts +20 -0
- package/build/system/workflows/mcp-triage/types.js +3 -0
- package/build/system/workflows/mcp-triage-deterministic/activities.d.ts +4 -0
- package/build/system/workflows/mcp-triage-deterministic/activities.js +8 -0
- package/build/system/workflows/mcp-triage-deterministic/index.d.ts +12 -0
- package/build/system/workflows/mcp-triage-deterministic/index.js +83 -0
- package/build/system/workflows/mcp-triage-router/activities.d.ts +9 -0
- package/build/system/workflows/mcp-triage-router/activities.js +15 -0
- package/build/system/workflows/mcp-triage-router/index.d.ts +13 -0
- package/build/system/workflows/mcp-triage-router/index.js +122 -0
- package/build/tsconfig.tsbuildinfo +1 -0
- package/build/types/auth.d.ts +34 -0
- package/build/types/auth.js +2 -0
- package/build/types/config.d.ts +48 -0
- package/build/types/config.js +2 -0
- package/build/types/delegation.d.ts +41 -0
- package/build/types/delegation.js +2 -0
- package/build/types/discovery.d.ts +12 -0
- package/build/types/discovery.js +3 -0
- package/build/types/envelope.d.ts +53 -0
- package/build/types/envelope.js +2 -0
- package/build/types/escalation-strategy.d.ts +37 -0
- package/build/types/escalation-strategy.js +2 -0
- package/build/types/escalation.d.ts +39 -0
- package/build/types/escalation.js +21 -0
- package/build/types/events.d.ts +65 -0
- package/build/types/events.js +2 -0
- package/build/types/export.d.ts +78 -0
- package/build/types/export.js +11 -0
- package/build/types/index.d.ts +21 -0
- package/build/types/index.js +6 -0
- package/build/types/logger.d.ts +26 -0
- package/build/types/logger.js +2 -0
- package/build/types/maintenance.d.ts +24 -0
- package/build/types/maintenance.js +2 -0
- package/build/types/mcp.d.ts +80 -0
- package/build/types/mcp.js +2 -0
- package/build/types/oauth.d.ts +74 -0
- package/build/types/oauth.js +2 -0
- package/build/types/startup.d.ts +110 -0
- package/build/types/startup.js +2 -0
- package/build/types/task.d.ts +39 -0
- package/build/types/task.js +2 -0
- package/build/types/telemetry.d.ts +32 -0
- package/build/types/telemetry.js +2 -0
- package/build/types/tool-context.d.ts +68 -0
- package/build/types/tool-context.js +14 -0
- package/build/types/user.d.ts +18 -0
- package/build/types/user.js +2 -0
- package/build/types/workflow.d.ts +35 -0
- package/build/types/workflow.js +2 -0
- package/build/types/yaml-workflow.d.ts +101 -0
- package/build/types/yaml-workflow.js +5 -0
- package/build/vitest.config.d.ts +2 -0
- package/build/vitest.config.js +32 -0
- package/build/vitest.integration.config.d.ts +2 -0
- package/build/vitest.integration.config.js +25 -0
- package/build/workers/index.d.ts +6 -0
- package/build/workers/index.js +20 -0
- package/dashboard/dist/assets/AdminDashboard-jfacvOC7.js +2 -0
- package/dashboard/dist/assets/AdminDashboard-jfacvOC7.js.map +1 -0
- package/dashboard/dist/assets/AvailableEscalationsPage-BglLDoT8.js +2 -0
- package/dashboard/dist/assets/AvailableEscalationsPage-BglLDoT8.js.map +1 -0
- package/dashboard/dist/assets/BotPicker-D6FYW1Gt.js +2 -0
- package/dashboard/dist/assets/BotPicker-D6FYW1Gt.js.map +1 -0
- package/dashboard/dist/assets/CollapsibleSection-Cxk4wvjT.js +2 -0
- package/dashboard/dist/assets/CollapsibleSection-Cxk4wvjT.js.map +1 -0
- package/dashboard/dist/assets/ConfirmDeleteModal-FSXyKjaB.js +2 -0
- package/dashboard/dist/assets/ConfirmDeleteModal-FSXyKjaB.js.map +1 -0
- package/dashboard/dist/assets/CopyableId-CBdxWfp8.js +2 -0
- package/dashboard/dist/assets/CopyableId-CBdxWfp8.js.map +1 -0
- package/dashboard/dist/assets/CredentialsPage-Ikzsot0w.js +2 -0
- package/dashboard/dist/assets/CredentialsPage-Ikzsot0w.js.map +1 -0
- package/dashboard/dist/assets/CustomDurationPicker-CAninCbl.js +2 -0
- package/dashboard/dist/assets/CustomDurationPicker-CAninCbl.js.map +1 -0
- package/dashboard/dist/assets/DataTable-BDn1WBHS.js +2 -0
- package/dashboard/dist/assets/DataTable-BDn1WBHS.js.map +1 -0
- package/dashboard/dist/assets/EmptyState-2CmV-IaS.js +2 -0
- package/dashboard/dist/assets/EmptyState-2CmV-IaS.js.map +1 -0
- package/dashboard/dist/assets/EscalationsOverview-GXYFPASS.js +2 -0
- package/dashboard/dist/assets/EscalationsOverview-GXYFPASS.js.map +1 -0
- package/dashboard/dist/assets/EventTable-B01oJf6Y.js +2 -0
- package/dashboard/dist/assets/EventTable-B01oJf6Y.js.map +1 -0
- package/dashboard/dist/assets/Field-DuFBAYhu.js +2 -0
- package/dashboard/dist/assets/Field-DuFBAYhu.js.map +1 -0
- package/dashboard/dist/assets/FilterBar-Ck4K4rzu.js +2 -0
- package/dashboard/dist/assets/FilterBar-Ck4K4rzu.js.map +1 -0
- package/dashboard/dist/assets/McpOverview-JkvRcX2e.js +2 -0
- package/dashboard/dist/assets/McpOverview-JkvRcX2e.js.map +1 -0
- package/dashboard/dist/assets/McpQueryDetailPage-CUMqhQdS.js +2 -0
- package/dashboard/dist/assets/McpQueryDetailPage-CUMqhQdS.js.map +1 -0
- package/dashboard/dist/assets/McpQueryPage-DRRhw4nN.js +2 -0
- package/dashboard/dist/assets/McpQueryPage-DRRhw4nN.js.map +1 -0
- package/dashboard/dist/assets/McpRunDetailPage-CmPs5EvE.js +2 -0
- package/dashboard/dist/assets/McpRunDetailPage-CmPs5EvE.js.map +1 -0
- package/dashboard/dist/assets/McpRunsPage-Dl5Y2u6k.js +2 -0
- package/dashboard/dist/assets/McpRunsPage-Dl5Y2u6k.js.map +1 -0
- package/dashboard/dist/assets/Modal-B4rbIVAn.js +2 -0
- package/dashboard/dist/assets/Modal-B4rbIVAn.js.map +1 -0
- package/dashboard/dist/assets/OperatorDashboard-B56il28q.js +2 -0
- package/dashboard/dist/assets/OperatorDashboard-B56il28q.js.map +1 -0
- package/dashboard/dist/assets/PageHeader-CpWFly5S.js +2 -0
- package/dashboard/dist/assets/PageHeader-CpWFly5S.js.map +1 -0
- package/dashboard/dist/assets/PriorityBadge-DfQY9St9.js +2 -0
- package/dashboard/dist/assets/PriorityBadge-DfQY9St9.js.map +1 -0
- package/dashboard/dist/assets/ProcessDetailPage-CMLq4M7D.js +2 -0
- package/dashboard/dist/assets/ProcessDetailPage-CMLq4M7D.js.map +1 -0
- package/dashboard/dist/assets/ProcessesListPage-CZ_HF06v.js +2 -0
- package/dashboard/dist/assets/ProcessesListPage-CZ_HF06v.js.map +1 -0
- package/dashboard/dist/assets/RolePill-BTPa8L-P.js +2 -0
- package/dashboard/dist/assets/RolePill-BTPa8L-P.js.map +1 -0
- package/dashboard/dist/assets/RolesPage-9grZW7yR.js +2 -0
- package/dashboard/dist/assets/RolesPage-9grZW7yR.js.map +1 -0
- package/dashboard/dist/assets/RowActions-Dg-Fsm5O.js +2 -0
- package/dashboard/dist/assets/RowActions-Dg-Fsm5O.js.map +1 -0
- package/dashboard/dist/assets/SimpleMarkdown-CBlvaWP4.js +4 -0
- package/dashboard/dist/assets/SimpleMarkdown-CBlvaWP4.js.map +1 -0
- package/dashboard/dist/assets/StatCard-DlgF0CJC.js +2 -0
- package/dashboard/dist/assets/StatCard-DlgF0CJC.js.map +1 -0
- package/dashboard/dist/assets/StatusBadge-TlC4jiig.js +2 -0
- package/dashboard/dist/assets/StatusBadge-TlC4jiig.js.map +1 -0
- package/dashboard/dist/assets/StickyPagination-F9FZsRy9.js +2 -0
- package/dashboard/dist/assets/StickyPagination-F9FZsRy9.js.map +1 -0
- package/dashboard/dist/assets/SwimlaneTimeline-7SiwATsZ.js +2 -0
- package/dashboard/dist/assets/SwimlaneTimeline-7SiwATsZ.js.map +1 -0
- package/dashboard/dist/assets/TaskDetailPage-CbPVTakt.js +2 -0
- package/dashboard/dist/assets/TaskDetailPage-CbPVTakt.js.map +1 -0
- package/dashboard/dist/assets/TaskQueuePill-awmtb0qw.js +2 -0
- package/dashboard/dist/assets/TaskQueuePill-awmtb0qw.js.map +1 -0
- package/dashboard/dist/assets/TasksListPage-C_QF23c1.js +2 -0
- package/dashboard/dist/assets/TasksListPage-C_QF23c1.js.map +1 -0
- package/dashboard/dist/assets/TimeAgo-UPG6DoH8.js +2 -0
- package/dashboard/dist/assets/TimeAgo-UPG6DoH8.js.map +1 -0
- package/dashboard/dist/assets/TimestampCell-DoWMKg6w.js +2 -0
- package/dashboard/dist/assets/TimestampCell-DoWMKg6w.js.map +1 -0
- package/dashboard/dist/assets/UserName-DaP4YAKr.js +2 -0
- package/dashboard/dist/assets/UserName-DaP4YAKr.js.map +1 -0
- package/dashboard/dist/assets/VersionHistory-Bt7WBr6m.js +5 -0
- package/dashboard/dist/assets/VersionHistory-Bt7WBr6m.js.map +1 -0
- package/dashboard/dist/assets/WorkflowExecutionPage-DjtAQ3hy.js +2 -0
- package/dashboard/dist/assets/WorkflowExecutionPage-DjtAQ3hy.js.map +1 -0
- package/dashboard/dist/assets/WorkflowPill-CCDSVaQj.js +2 -0
- package/dashboard/dist/assets/WorkflowPill-CCDSVaQj.js.map +1 -0
- package/dashboard/dist/assets/WorkflowsDashboard-D8z9uBNB.js +2 -0
- package/dashboard/dist/assets/WorkflowsDashboard-D8z9uBNB.js.map +1 -0
- package/dashboard/dist/assets/WorkflowsOverview-D9OzzQqw.js +2 -0
- package/dashboard/dist/assets/WorkflowsOverview-D9OzzQqw.js.map +1 -0
- package/dashboard/dist/assets/YamlWorkflowDetailPage-DrDvvP62.js +3 -0
- package/dashboard/dist/assets/YamlWorkflowDetailPage-DrDvvP62.js.map +1 -0
- package/dashboard/dist/assets/YamlWorkflowsPage-COqiNCQK.js +2 -0
- package/dashboard/dist/assets/YamlWorkflowsPage-COqiNCQK.js.map +1 -0
- package/dashboard/dist/assets/bots-BkKVMbUW.js +2 -0
- package/dashboard/dist/assets/bots-BkKVMbUW.js.map +1 -0
- package/dashboard/dist/assets/constants-CgaZfe5d.js +2 -0
- package/dashboard/dist/assets/constants-CgaZfe5d.js.map +1 -0
- package/dashboard/dist/assets/escalation-columns-D6aqStaY.js +2 -0
- package/dashboard/dist/assets/escalation-columns-D6aqStaY.js.map +1 -0
- package/dashboard/dist/assets/escalation-qalymbKB.js +2 -0
- package/dashboard/dist/assets/escalation-qalymbKB.js.map +1 -0
- package/dashboard/dist/assets/format-gXZXQ-HJ.js +2 -0
- package/dashboard/dist/assets/format-gXZXQ-HJ.js.map +1 -0
- package/dashboard/dist/assets/helpers-0gSleuzT.js +2 -0
- package/dashboard/dist/assets/helpers-0gSleuzT.js.map +1 -0
- package/dashboard/dist/assets/index-BWvMHed7.js +6 -0
- package/dashboard/dist/assets/index-BWvMHed7.js.map +1 -0
- package/dashboard/dist/assets/index-BaszoPO_.css +1 -0
- package/dashboard/dist/assets/index-Cn2jyj9A.js +2 -0
- package/dashboard/dist/assets/index-Cn2jyj9A.js.map +1 -0
- package/dashboard/dist/assets/index-D8VH6K8B.js +54 -0
- package/dashboard/dist/assets/index-D8VH6K8B.js.map +1 -0
- package/dashboard/dist/assets/index-D9SYwJsi.js +3 -0
- package/dashboard/dist/assets/index-D9SYwJsi.js.map +1 -0
- package/dashboard/dist/assets/index-DTPzZr_X.js +2 -0
- package/dashboard/dist/assets/index-DTPzZr_X.js.map +1 -0
- package/dashboard/dist/assets/index-D_6AB5BE.js +2 -0
- package/dashboard/dist/assets/index-D_6AB5BE.js.map +1 -0
- package/dashboard/dist/assets/index-S9Ks2Lj2.js +2 -0
- package/dashboard/dist/assets/index-S9Ks2Lj2.js.map +1 -0
- package/dashboard/dist/assets/index-X85K5bHC.js +17 -0
- package/dashboard/dist/assets/index-X85K5bHC.js.map +1 -0
- package/dashboard/dist/assets/index-rjmgHlSH.js +2 -0
- package/dashboard/dist/assets/index-rjmgHlSH.js.map +1 -0
- package/dashboard/dist/assets/mcp-blCW6IL7.js +2 -0
- package/dashboard/dist/assets/mcp-blCW6IL7.js.map +1 -0
- package/dashboard/dist/assets/mcp-query-DoAyPbjC.js +2 -0
- package/dashboard/dist/assets/mcp-query-DoAyPbjC.js.map +1 -0
- package/dashboard/dist/assets/mcp-runs-ChPbpvXK.js +2 -0
- package/dashboard/dist/assets/mcp-runs-ChPbpvXK.js.map +1 -0
- package/dashboard/dist/assets/namespaces-BgbaC3ow.js +2 -0
- package/dashboard/dist/assets/namespaces-BgbaC3ow.js.map +1 -0
- package/dashboard/dist/assets/roles-ZNrqqnQl.js +2 -0
- package/dashboard/dist/assets/roles-ZNrqqnQl.js.map +1 -0
- package/dashboard/dist/assets/settings-eBRSE0mQ.js +2 -0
- package/dashboard/dist/assets/settings-eBRSE0mQ.js.map +1 -0
- package/dashboard/dist/assets/tasks-tRqClPns.js +2 -0
- package/dashboard/dist/assets/tasks-tRqClPns.js.map +1 -0
- package/dashboard/dist/assets/useFilterParams-BaXUAkYK.js +2 -0
- package/dashboard/dist/assets/useFilterParams-BaXUAkYK.js.map +1 -0
- package/dashboard/dist/assets/useNatsEvents-Xr43X1fG.js +2 -0
- package/dashboard/dist/assets/useNatsEvents-Xr43X1fG.js.map +1 -0
- package/dashboard/dist/assets/useYamlActivityEvents-BO51u8tm.js +2 -0
- package/dashboard/dist/assets/useYamlActivityEvents-BO51u8tm.js.map +1 -0
- package/dashboard/dist/assets/users-tMvNyOo8.js +2 -0
- package/dashboard/dist/assets/users-tMvNyOo8.js.map +1 -0
- package/dashboard/dist/assets/vendor-icons-ZTAKVwGc.js +292 -0
- package/dashboard/dist/assets/vendor-icons-ZTAKVwGc.js.map +1 -0
- package/dashboard/dist/assets/vendor-query-B2UbickB.js +18 -0
- package/dashboard/dist/assets/vendor-query-B2UbickB.js.map +1 -0
- package/dashboard/dist/assets/vendor-react-Cw8Gy8NJ.js +22 -0
- package/dashboard/dist/assets/vendor-react-Cw8Gy8NJ.js.map +1 -0
- package/dashboard/dist/assets/workflows-Cc4VHcrp.js +2 -0
- package/dashboard/dist/assets/workflows-Cc4VHcrp.js.map +1 -0
- package/dashboard/dist/assets/yaml-workflows-BL4V5CQy.js +2 -0
- package/dashboard/dist/assets/yaml-workflows-BL4V5CQy.js.map +1 -0
- package/dashboard/dist/index.html +20 -0
- package/dashboard/dist/logo512.png +0 -0
- package/package.json +96 -0
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.mcpQuery = mcpQuery;
|
|
37
|
+
const hotmesh_1 = require("@hotmeshio/hotmesh");
|
|
38
|
+
const defaults_1 = require("../../../modules/defaults");
|
|
39
|
+
const activities = __importStar(require("./activities"));
|
|
40
|
+
const interceptorActivities = __importStar(require("../../../services/interceptor/activities"));
|
|
41
|
+
const prompts_1 = require("./prompts");
|
|
42
|
+
const { loadTools, callMcpTool, callQueryLLM, } = hotmesh_1.Durable.workflow.proxyActivities({
|
|
43
|
+
activities,
|
|
44
|
+
retryPolicy: {
|
|
45
|
+
maximumAttempts: 3,
|
|
46
|
+
backoffCoefficient: 2,
|
|
47
|
+
maximumInterval: '10 seconds',
|
|
48
|
+
},
|
|
49
|
+
});
|
|
50
|
+
const { ltEnrichEscalationRouting, } = hotmesh_1.Durable.workflow.proxyActivities({
|
|
51
|
+
activities: interceptorActivities,
|
|
52
|
+
taskQueue: 'lt-interceptor',
|
|
53
|
+
retryPolicy: { maximumAttempts: 3 },
|
|
54
|
+
});
|
|
55
|
+
const MAX_TOOL_ROUNDS = defaults_1.TOOL_ROUNDS_MCP_QUERY;
|
|
56
|
+
/**
|
|
57
|
+
* MCP Query workflow (leaf).
|
|
58
|
+
*
|
|
59
|
+
* Dynamic MCP tool orchestration via LLM agentic loop.
|
|
60
|
+
* Discovers available MCP tools by tag and uses an LLM to
|
|
61
|
+
* fulfill arbitrary requests. This workflow ONLY handles
|
|
62
|
+
* dynamic execution — compiled workflow matching is done
|
|
63
|
+
* by the mcpQueryRouter parent.
|
|
64
|
+
*
|
|
65
|
+
* Clean execution traces from this workflow are what get
|
|
66
|
+
* compiled into deterministic YAML workflows.
|
|
67
|
+
*/
|
|
68
|
+
async function mcpQuery(envelope) {
|
|
69
|
+
const prompt = (envelope.data?.prompt || envelope.data?.question);
|
|
70
|
+
const tags = envelope.data?.tags;
|
|
71
|
+
if (!prompt) {
|
|
72
|
+
return {
|
|
73
|
+
type: 'return',
|
|
74
|
+
data: {
|
|
75
|
+
title: 'No prompt provided',
|
|
76
|
+
summary: 'Please provide a prompt describing what you want to accomplish.',
|
|
77
|
+
result: null,
|
|
78
|
+
tool_calls_made: 0,
|
|
79
|
+
},
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
// Load raw MCP tools (no compiled workflow discovery — router handles that)
|
|
83
|
+
const raw = await loadTools(tags);
|
|
84
|
+
const toolIds = raw.toolIds;
|
|
85
|
+
// Build system prompt: strategy first, then tool inventory
|
|
86
|
+
let serverSection = '';
|
|
87
|
+
if (raw.strategy) {
|
|
88
|
+
serverSection += `${raw.strategy}\n\n`;
|
|
89
|
+
}
|
|
90
|
+
serverSection += `## Available MCP Servers\n\n${raw.inventory}`;
|
|
91
|
+
const messages = [
|
|
92
|
+
{
|
|
93
|
+
role: 'system',
|
|
94
|
+
content: prompts_1.MCP_QUERY_SYSTEM_PROMPT + `\n\n${serverSection}`,
|
|
95
|
+
},
|
|
96
|
+
];
|
|
97
|
+
// If this is a re-run after triage, inject triage learnings as context
|
|
98
|
+
const triageContext = envelope.resolver?._triageContext;
|
|
99
|
+
if (triageContext) {
|
|
100
|
+
const triageHints = [
|
|
101
|
+
`This is a re-run after a previous attempt failed and was triaged.`,
|
|
102
|
+
triageContext.diagnosis ? `Previous diagnosis: ${triageContext.diagnosis}` : '',
|
|
103
|
+
triageContext.actions_taken?.length ? `Actions already taken: ${triageContext.actions_taken.join('; ')}` : '',
|
|
104
|
+
triageContext.recommendation ? `Recommendation: ${triageContext.recommendation}` : '',
|
|
105
|
+
].filter(Boolean).join('\n');
|
|
106
|
+
messages.push({ role: 'user', content: triageHints });
|
|
107
|
+
messages.push({ role: 'assistant', content: 'Understood. I will use these learnings to take a more targeted approach this time.' });
|
|
108
|
+
}
|
|
109
|
+
messages.push({ role: 'user', content: prompt });
|
|
110
|
+
let toolCallCount = 0;
|
|
111
|
+
// Agentic loop: LLM decides → execute tools → feed back → repeat
|
|
112
|
+
const BUDGET_WARNING_THRESHOLD = 3;
|
|
113
|
+
for (let round = 0; round < MAX_TOOL_ROUNDS; round++) {
|
|
114
|
+
const remaining = MAX_TOOL_ROUNDS - round;
|
|
115
|
+
// Inject budget warning when approaching the limit
|
|
116
|
+
if (remaining <= BUDGET_WARNING_THRESHOLD && remaining < MAX_TOOL_ROUNDS) {
|
|
117
|
+
messages.push({
|
|
118
|
+
role: 'user',
|
|
119
|
+
content: `[Rounds: ${remaining} remaining] Wrap up: consolidate results and return your final JSON response. Do not start new multi-step work.`,
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
const response = await callQueryLLM(messages, toolIds);
|
|
123
|
+
if (!response.tool_calls?.length) {
|
|
124
|
+
return buildQueryReturn(response.content || '', toolCallCount);
|
|
125
|
+
}
|
|
126
|
+
const fnCalls = response.tool_calls.filter((tc) => tc.type === 'function');
|
|
127
|
+
messages.push({
|
|
128
|
+
role: 'assistant',
|
|
129
|
+
content: response.content,
|
|
130
|
+
tool_calls: fnCalls,
|
|
131
|
+
});
|
|
132
|
+
for (const toolCall of fnCalls) {
|
|
133
|
+
toolCallCount++;
|
|
134
|
+
let args = {};
|
|
135
|
+
try {
|
|
136
|
+
args = JSON.parse(toolCall.function.arguments || '{}');
|
|
137
|
+
}
|
|
138
|
+
catch {
|
|
139
|
+
args = {};
|
|
140
|
+
}
|
|
141
|
+
const result = await callMcpTool(toolCall.function.name, args);
|
|
142
|
+
// Durable waitFor: if the tool returns a signal, pause until human responds
|
|
143
|
+
if (result?.type === 'waitFor' && result?.signalId) {
|
|
144
|
+
const ctx = hotmesh_1.Durable.workflow.getContext();
|
|
145
|
+
const workflowType = ctx.workflowTopic.replace(`${ctx.taskQueue}-`, '');
|
|
146
|
+
await ltEnrichEscalationRouting({
|
|
147
|
+
escalationId: result.escalationId,
|
|
148
|
+
signalRouting: {
|
|
149
|
+
taskQueue: ctx.taskQueue,
|
|
150
|
+
workflowType,
|
|
151
|
+
workflowId: ctx.workflowId,
|
|
152
|
+
signalId: result.signalId,
|
|
153
|
+
},
|
|
154
|
+
claimForUserId: envelope.lt?.userId,
|
|
155
|
+
});
|
|
156
|
+
const signalData = await hotmesh_1.Durable.workflow.waitFor(result.signalId);
|
|
157
|
+
messages.push({
|
|
158
|
+
role: 'tool',
|
|
159
|
+
tool_call_id: toolCall.id,
|
|
160
|
+
content: JSON.stringify(signalData),
|
|
161
|
+
});
|
|
162
|
+
continue;
|
|
163
|
+
}
|
|
164
|
+
messages.push({
|
|
165
|
+
role: 'tool',
|
|
166
|
+
tool_call_id: toolCall.id,
|
|
167
|
+
content: JSON.stringify(result),
|
|
168
|
+
});
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
// Exhausted rounds — ask LLM for diagnostic summary
|
|
172
|
+
messages.push({
|
|
173
|
+
role: 'user',
|
|
174
|
+
content: prompts_1.ROUNDS_EXHAUSTED_DIAGNOSTIC_PROMPT,
|
|
175
|
+
});
|
|
176
|
+
const finalResponse = await callQueryLLM(messages, undefined);
|
|
177
|
+
const parsed = parseJsonResponse(finalResponse.content || '');
|
|
178
|
+
return {
|
|
179
|
+
type: 'return',
|
|
180
|
+
data: {
|
|
181
|
+
...parsed,
|
|
182
|
+
tool_calls_made: toolCallCount,
|
|
183
|
+
rounds_exhausted: true,
|
|
184
|
+
},
|
|
185
|
+
milestones: [
|
|
186
|
+
{ name: 'mcp_query', value: 'completed' },
|
|
187
|
+
{ name: 'tool_calls', value: String(toolCallCount) },
|
|
188
|
+
{ name: 'rounds_exhausted', value: 'true' },
|
|
189
|
+
],
|
|
190
|
+
};
|
|
191
|
+
}
|
|
192
|
+
/** Build the LTReturn for a completed query, with standard + enriched milestones. */
|
|
193
|
+
function buildQueryReturn(content, toolCallCount, extraMilestones = []) {
|
|
194
|
+
const parsed = parseJsonResponse(content);
|
|
195
|
+
const milestones = [
|
|
196
|
+
{ name: 'mcp_query', value: 'completed' },
|
|
197
|
+
{ name: 'tool_calls', value: String(toolCallCount) },
|
|
198
|
+
];
|
|
199
|
+
if (parsed.knowledge_updated?.length) {
|
|
200
|
+
milestones.push({ name: 'knowledge_updated', value: String(parsed.knowledge_updated.length) });
|
|
201
|
+
}
|
|
202
|
+
if (parsed.compilation_candidate) {
|
|
203
|
+
milestones.push({ name: 'compilation_candidate', value: 'true' });
|
|
204
|
+
}
|
|
205
|
+
milestones.push(...extraMilestones);
|
|
206
|
+
return {
|
|
207
|
+
type: 'return',
|
|
208
|
+
data: { ...parsed, tool_calls_made: toolCallCount },
|
|
209
|
+
milestones,
|
|
210
|
+
};
|
|
211
|
+
}
|
|
212
|
+
function parseJsonResponse(content) {
|
|
213
|
+
const cleaned = content
|
|
214
|
+
.replace(/^```(?:json)?\s*/m, '')
|
|
215
|
+
.replace(/\s*```$/m, '')
|
|
216
|
+
.trim();
|
|
217
|
+
try {
|
|
218
|
+
return JSON.parse(cleaned);
|
|
219
|
+
}
|
|
220
|
+
catch {
|
|
221
|
+
return {
|
|
222
|
+
title: 'Query Complete',
|
|
223
|
+
summary: cleaned || 'No response generated.',
|
|
224
|
+
result: null,
|
|
225
|
+
};
|
|
226
|
+
}
|
|
227
|
+
}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare const MCP_QUERY_SYSTEM_PROMPT = "You are a general-purpose AI assistant for Long Tail \u2014 a durable workflow system with MCP tool integration.\n\nYou have access to **MCP tools** from registered servers. Your job is to fulfill the user's request using these tools.\n\n## Tool Selection \u2014 CRITICAL, READ CAREFULLY:\n- A \"Tool Selection Strategy\" section appears before the tool inventory. It tells you EXACTLY which tools to use and which to NEVER use. **Follow it strictly \u2014 violations cause failures.**\n- **Minimize total tool calls.** Before making a call, ask: \"Is there a single tool that does all of this?\" If yes, use it. If you find yourself chaining 3+ calls to accomplish what one composite tool could do, stop and switch.\n- **For multi-item tasks, look for batch tools.** If you need to perform the same operation on many items, check if a tool accepts a list/array input. One batch call is always better than N individual calls.\n\n**Principles for dynamic execution:**\n- **Chain tools logically.** If a task requires multiple steps, chain tool calls in the natural order. Pass outputs from one step as inputs to the next.\n- **Handle sessions and handles.** Some tools return session identifiers (page_id, _handle, session_id). Pass these to ALL subsequent calls that need to operate within that session. Session handles maintain authentication and state \u2014 losing them means starting over. NEVER open a new session when you already have one.\n- **Discover before acting.** When you need to understand structure, content, or available options, use discovery/extraction tools first. Then pass discovered values to subsequent tools. NEVER guess input values.\n- **Iterate when needed.** If you need to perform the same action on multiple items and no batch tool exists, call the tool for each item. The system will detect this pattern when compiling the workflow later.\n- **Use credentials from the prompt.** The user provides credentials in their request. NEVER persist credentials to the filesystem.\n- **Trust tool defaults.** Tools define default values for optional parameters. Only override defaults when the user provides a specific value or you've discovered the correct one via a prior tool call.\n- **When a tool call fails, adapt.** Use discovery tools to learn the correct structure, then retry with discovered values. Don't retry with the same wrong parameters.\n- **Fulfill the complete request.** If the user asks to process N items, process all N items. Don't stop early or summarize partway through.\n- **Budget your tool rounds.** You have a limited number of tool rounds. A budget indicator (e.g., \"[Rounds: 3 remaining]\") may appear in the conversation. When you see 3 or fewer rounds remaining, wrap up: consolidate partial results, write any pending output, and return your final response. Prefer batch/composite tools to conserve rounds.\n\n### 3. Mark for Compilation\nIf you completed a multi-step task that seems reusable, set `compilation_candidate: true` in your response. The execution trace can then be compiled into a deterministic YAML workflow \u2014 turning this dynamic run into a fast, repeatable tool for next time.\n\n## Escalation\n\nEscalate only when truly stuck \u2014 retry with alternatives first.\n\n- **For input you need before continuing** (credentials, approvals, missing data):\n Use escalate_and_wait. Specify a form_schema describing what fields you need. The workflow pauses until the human responds \u2014 no polling needed.\n- **For fire-and-forget notifications** (advisory, FYI):\n Use escalate_to_human.\n- **Escalate to 'engineer' role** \u2014 when you need human judgment or infrastructure help\n- **Escalate to 'mcp' role** \u2014 when you need tool capabilities not in the current inventory\n\nWhen escalating, provide specific context: what you tried, what failed, what you need.\n\n## Credential Tokens\nValues formatted as `eph:v1:<label>:<id>` are opaque credential tokens provided by human operators.\nNEVER modify, decode, split, or log these values. Pass them exactly as received into tool arguments.\nThey are automatically resolved at execution time.\n\n## Response Format\n\nReturn ONLY a JSON object (no markdown fences):\n{\n \"title\": \"Short headline (under 60 chars)\",\n \"summary\": \"1-3 sentence overview of what was accomplished\",\n \"result\": { ... },\n \"compilation_candidate\": false,\n \"tool_calls_made\": 0\n}";
|
|
2
|
+
export declare const WORKFLOW_MATCH_PROMPT = "You are a strict workflow matching evaluator. Given a user request and a list of compiled workflows, determine if any workflow is a PRECISE match for the request.\n\nA workflow matches ONLY if:\n1. **Scope alignment**: The workflow does approximately what the user asked \u2014 not significantly more, not significantly less.\n2. **Intent alignment**: The workflow's purpose (description, original prompt) closely matches the user's goal \u2014 not just the same topic or domain.\n3. **Input compatibility**: The user's request provides enough information to populate the workflow's required inputs.\n\nBe CONSERVATIVE. If the user's request is a subset or superset of what the workflow does, it is NOT a match. When in doubt, return match: false \u2014 the system will fall back to a dynamic execution that handles the exact request.\n\nRespond with ONLY a JSON object:\n{\n \"match\": true or false,\n \"workflow_name\": \"name-of-best-match\" or null,\n \"confidence\": 0.0 to 1.0,\n \"reasoning\": \"Brief explanation of why this is or isn't a scope match\"\n}";
|
|
3
|
+
export declare const EXTRACT_INPUTS_PROMPT = "You are an input extraction engine. Given a user's natural-language request and a workflow's input schema, extract the structured inputs the workflow needs.\n\nRules:\n- Extract ONLY values explicitly stated or clearly implied in the user's request.\n- Match each extracted value to the correct field in the input schema, paying attention to the field's **description** \u2014 not just its name.\n- Use the field descriptions to understand what each input represents and extract the semantically correct value from the request.\n- If a required field cannot be populated from the request, set \"_extraction_failed\" to true.\n- Do NOT invent, guess, or use default values for fields the user didn't mention.\n- Return ONLY a JSON object whose keys match the input schema's property names.\n- Include \"_extraction_failed\": true if any required field is missing, or \"_extraction_failed\": false if all required fields are satisfied.";
|
|
4
|
+
export declare const ROUNDS_EXHAUSTED_DIAGNOSTIC_PROMPT = "You have run out of allowed tool rounds. Summarize:\n(1) what you accomplished,\n(2) what you were unable to complete, and\n(3) what steps remain.\n\nReturn a JSON object with keys:\n- title: short title for the execution\n- summary: brief narrative of what happened\n- result: partial data collected (if any), or null\n- diagnosis: string explaining what went wrong and what remains to be done";
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// ── MCP Query prompts ───────────────────────────────────────────────────────
|
|
3
|
+
// All LLM prompt text for the mcp-query workflow lives here.
|
|
4
|
+
// Keep prompts generic — never reference specific tool names or selectors.
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.ROUNDS_EXHAUSTED_DIAGNOSTIC_PROMPT = exports.EXTRACT_INPUTS_PROMPT = exports.WORKFLOW_MATCH_PROMPT = exports.MCP_QUERY_SYSTEM_PROMPT = void 0;
|
|
7
|
+
// ── Agentic loop system prompt ──────────────────────────────────────────────
|
|
8
|
+
exports.MCP_QUERY_SYSTEM_PROMPT = `\
|
|
9
|
+
You are a general-purpose AI assistant for Long Tail — a durable workflow system with MCP tool integration.
|
|
10
|
+
|
|
11
|
+
You have access to **MCP tools** from registered servers. Your job is to fulfill the user's request using these tools.
|
|
12
|
+
|
|
13
|
+
## Tool Selection — CRITICAL, READ CAREFULLY:
|
|
14
|
+
- A "Tool Selection Strategy" section appears before the tool inventory. It tells you EXACTLY which tools to use and which to NEVER use. **Follow it strictly — violations cause failures.**
|
|
15
|
+
- **Minimize total tool calls.** Before making a call, ask: "Is there a single tool that does all of this?" If yes, use it. If you find yourself chaining 3+ calls to accomplish what one composite tool could do, stop and switch.
|
|
16
|
+
- **For multi-item tasks, look for batch tools.** If you need to perform the same operation on many items, check if a tool accepts a list/array input. One batch call is always better than N individual calls.
|
|
17
|
+
|
|
18
|
+
**Principles for dynamic execution:**
|
|
19
|
+
- **Chain tools logically.** If a task requires multiple steps, chain tool calls in the natural order. Pass outputs from one step as inputs to the next.
|
|
20
|
+
- **Handle sessions and handles.** Some tools return session identifiers (page_id, _handle, session_id). Pass these to ALL subsequent calls that need to operate within that session. Session handles maintain authentication and state — losing them means starting over. NEVER open a new session when you already have one.
|
|
21
|
+
- **Discover before acting.** When you need to understand structure, content, or available options, use discovery/extraction tools first. Then pass discovered values to subsequent tools. NEVER guess input values.
|
|
22
|
+
- **Iterate when needed.** If you need to perform the same action on multiple items and no batch tool exists, call the tool for each item. The system will detect this pattern when compiling the workflow later.
|
|
23
|
+
- **Use credentials from the prompt.** The user provides credentials in their request. NEVER persist credentials to the filesystem.
|
|
24
|
+
- **Trust tool defaults.** Tools define default values for optional parameters. Only override defaults when the user provides a specific value or you've discovered the correct one via a prior tool call.
|
|
25
|
+
- **When a tool call fails, adapt.** Use discovery tools to learn the correct structure, then retry with discovered values. Don't retry with the same wrong parameters.
|
|
26
|
+
- **Fulfill the complete request.** If the user asks to process N items, process all N items. Don't stop early or summarize partway through.
|
|
27
|
+
- **Budget your tool rounds.** You have a limited number of tool rounds. A budget indicator (e.g., "[Rounds: 3 remaining]") may appear in the conversation. When you see 3 or fewer rounds remaining, wrap up: consolidate partial results, write any pending output, and return your final response. Prefer batch/composite tools to conserve rounds.
|
|
28
|
+
|
|
29
|
+
### 3. Mark for Compilation
|
|
30
|
+
If you completed a multi-step task that seems reusable, set \`compilation_candidate: true\` in your response. The execution trace can then be compiled into a deterministic YAML workflow — turning this dynamic run into a fast, repeatable tool for next time.
|
|
31
|
+
|
|
32
|
+
## Escalation
|
|
33
|
+
|
|
34
|
+
Escalate only when truly stuck — retry with alternatives first.
|
|
35
|
+
|
|
36
|
+
- **For input you need before continuing** (credentials, approvals, missing data):
|
|
37
|
+
Use escalate_and_wait. Specify a form_schema describing what fields you need. The workflow pauses until the human responds — no polling needed.
|
|
38
|
+
- **For fire-and-forget notifications** (advisory, FYI):
|
|
39
|
+
Use escalate_to_human.
|
|
40
|
+
- **Escalate to 'engineer' role** — when you need human judgment or infrastructure help
|
|
41
|
+
- **Escalate to 'mcp' role** — when you need tool capabilities not in the current inventory
|
|
42
|
+
|
|
43
|
+
When escalating, provide specific context: what you tried, what failed, what you need.
|
|
44
|
+
|
|
45
|
+
## Credential Tokens
|
|
46
|
+
Values formatted as \`eph:v1:<label>:<id>\` are opaque credential tokens provided by human operators.
|
|
47
|
+
NEVER modify, decode, split, or log these values. Pass them exactly as received into tool arguments.
|
|
48
|
+
They are automatically resolved at execution time.
|
|
49
|
+
|
|
50
|
+
## Response Format
|
|
51
|
+
|
|
52
|
+
Return ONLY a JSON object (no markdown fences):
|
|
53
|
+
{
|
|
54
|
+
"title": "Short headline (under 60 chars)",
|
|
55
|
+
"summary": "1-3 sentence overview of what was accomplished",
|
|
56
|
+
"result": { ... },
|
|
57
|
+
"compilation_candidate": false,
|
|
58
|
+
"tool_calls_made": 0
|
|
59
|
+
}`;
|
|
60
|
+
// ── Workflow matching prompt (Phase 2) ──────────────────────────────────────
|
|
61
|
+
exports.WORKFLOW_MATCH_PROMPT = `\
|
|
62
|
+
You are a strict workflow matching evaluator. Given a user request and a list of compiled workflows, determine if any workflow is a PRECISE match for the request.
|
|
63
|
+
|
|
64
|
+
A workflow matches ONLY if:
|
|
65
|
+
1. **Scope alignment**: The workflow does approximately what the user asked — not significantly more, not significantly less.
|
|
66
|
+
2. **Intent alignment**: The workflow's purpose (description, original prompt) closely matches the user's goal — not just the same topic or domain.
|
|
67
|
+
3. **Input compatibility**: The user's request provides enough information to populate the workflow's required inputs.
|
|
68
|
+
|
|
69
|
+
Be CONSERVATIVE. If the user's request is a subset or superset of what the workflow does, it is NOT a match. When in doubt, return match: false — the system will fall back to a dynamic execution that handles the exact request.
|
|
70
|
+
|
|
71
|
+
Respond with ONLY a JSON object:
|
|
72
|
+
{
|
|
73
|
+
"match": true or false,
|
|
74
|
+
"workflow_name": "name-of-best-match" or null,
|
|
75
|
+
"confidence": 0.0 to 1.0,
|
|
76
|
+
"reasoning": "Brief explanation of why this is or isn't a scope match"
|
|
77
|
+
}`;
|
|
78
|
+
// ── Input extraction prompt (Phase 2b) ──────────────────────────────────────
|
|
79
|
+
exports.EXTRACT_INPUTS_PROMPT = `\
|
|
80
|
+
You are an input extraction engine. Given a user's natural-language request and a workflow's input schema, extract the structured inputs the workflow needs.
|
|
81
|
+
|
|
82
|
+
Rules:
|
|
83
|
+
- Extract ONLY values explicitly stated or clearly implied in the user's request.
|
|
84
|
+
- Match each extracted value to the correct field in the input schema, paying attention to the field's **description** — not just its name.
|
|
85
|
+
- Use the field descriptions to understand what each input represents and extract the semantically correct value from the request.
|
|
86
|
+
- If a required field cannot be populated from the request, set "_extraction_failed" to true.
|
|
87
|
+
- Do NOT invent, guess, or use default values for fields the user didn't mention.
|
|
88
|
+
- Return ONLY a JSON object whose keys match the input schema's property names.
|
|
89
|
+
- Include "_extraction_failed": true if any required field is missing, or "_extraction_failed": false if all required fields are satisfied.`;
|
|
90
|
+
// ── Rounds-exhausted diagnostic prompt ──────────────────────────────────────
|
|
91
|
+
exports.ROUNDS_EXHAUSTED_DIAGNOSTIC_PROMPT = `\
|
|
92
|
+
You have run out of allowed tool rounds. Summarize:
|
|
93
|
+
(1) what you accomplished,
|
|
94
|
+
(2) what you were unable to complete, and
|
|
95
|
+
(3) what steps remain.
|
|
96
|
+
|
|
97
|
+
Return a JSON object with keys:
|
|
98
|
+
- title: short title for the execution
|
|
99
|
+
- summary: brief narrative of what happened
|
|
100
|
+
- result: partial data collected (if any), or null
|
|
101
|
+
- diagnosis: string explaining what went wrong and what remains to be done`;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Strategy advisors — inspect loaded tool inventory and emit concrete,
|
|
3
|
+
* tool-name-specific prompt sections so the LLM makes optimal tool choices.
|
|
4
|
+
*
|
|
5
|
+
* No tool names are hardcoded in the generic system prompt. Instead,
|
|
6
|
+
* advisors run at tool-loading time and produce guidance referencing
|
|
7
|
+
* the actual qualified names the LLM will see.
|
|
8
|
+
*/
|
|
9
|
+
import type { ServerInfo } from './types';
|
|
10
|
+
/**
|
|
11
|
+
* Run all strategy advisors against the loaded server inventory
|
|
12
|
+
* and return a combined strategy section for the LLM prompt.
|
|
13
|
+
*/
|
|
14
|
+
export declare function generateStrategySection(servers: ServerInfo[]): string;
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Strategy advisors — inspect loaded tool inventory and emit concrete,
|
|
4
|
+
* tool-name-specific prompt sections so the LLM makes optimal tool choices.
|
|
5
|
+
*
|
|
6
|
+
* No tool names are hardcoded in the generic system prompt. Instead,
|
|
7
|
+
* advisors run at tool-loading time and produce guidance referencing
|
|
8
|
+
* the actual qualified names the LLM will see.
|
|
9
|
+
*/
|
|
10
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
+
exports.generateStrategySection = generateStrategySection;
|
|
12
|
+
// ── Advisors ────────────────────────────────────────────────────────────────
|
|
13
|
+
/**
|
|
14
|
+
* Detects overlapping server categories (e.g., two browser-automation servers)
|
|
15
|
+
* and emits concrete "USE THIS / AVOID THAT" guidance with actual tool names.
|
|
16
|
+
*/
|
|
17
|
+
function overlappingCategoryAdvisor(servers) {
|
|
18
|
+
// Group by category
|
|
19
|
+
const byCategory = new Map();
|
|
20
|
+
for (const s of servers) {
|
|
21
|
+
const category = s.metadata?.category;
|
|
22
|
+
if (!category)
|
|
23
|
+
continue;
|
|
24
|
+
const group = byCategory.get(category) || [];
|
|
25
|
+
group.push(s);
|
|
26
|
+
byCategory.set(category, group);
|
|
27
|
+
}
|
|
28
|
+
const sections = [];
|
|
29
|
+
for (const [category, group] of byCategory) {
|
|
30
|
+
if (group.length < 2)
|
|
31
|
+
continue;
|
|
32
|
+
// Determine high vs low level: explicit metadata.level, then tool-count heuristic
|
|
33
|
+
let highLevel = null;
|
|
34
|
+
let lowLevel = null;
|
|
35
|
+
const withLevel = group.filter(s => s.metadata?.level);
|
|
36
|
+
if (withLevel.length >= 2) {
|
|
37
|
+
highLevel = withLevel.find(s => s.metadata?.level === 'high') || null;
|
|
38
|
+
lowLevel = withLevel.find(s => s.metadata?.level === 'low') || null;
|
|
39
|
+
}
|
|
40
|
+
if (!highLevel || !lowLevel) {
|
|
41
|
+
// Heuristic: fewer tools = higher-level (composite)
|
|
42
|
+
const sorted = [...group].sort((a, b) => a.toolCount - b.toolCount);
|
|
43
|
+
highLevel = highLevel || sorted[0];
|
|
44
|
+
lowLevel = lowLevel || sorted[sorted.length - 1];
|
|
45
|
+
}
|
|
46
|
+
if (highLevel === lowLevel)
|
|
47
|
+
continue;
|
|
48
|
+
const categoryLabel = category.replace(/-/g, ' ').replace(/\b\w/g, c => c.toUpperCase());
|
|
49
|
+
const hiSlug = highLevel.slug;
|
|
50
|
+
const loSlug = lowLevel.slug;
|
|
51
|
+
const hiTools = highLevel.toolNames.map(t => `${hiSlug}__${t}`);
|
|
52
|
+
const loTools = lowLevel.toolNames.map(t => `${loSlug}__${t}`);
|
|
53
|
+
sections.push(`## ${categoryLabel} — Tool Selection (CRITICAL)
|
|
54
|
+
|
|
55
|
+
You have TWO ${categoryLabel.toLowerCase()} servers. One is high-level (composite), the other low-level (primitives).
|
|
56
|
+
|
|
57
|
+
**USE: ${highLevel.name}** (${highLevel.toolCount} composite tools)
|
|
58
|
+
Tools: ${hiTools.join(', ')}
|
|
59
|
+
${highLevel.description ? `> ${highLevel.description}` : ''}
|
|
60
|
+
Each tool handles a complete workflow in ONE call. Session management is automatic.
|
|
61
|
+
|
|
62
|
+
**AVOID: ${lowLevel.name}** (${lowLevel.toolCount} primitive tools)
|
|
63
|
+
Tools: ${loTools.join(', ')}
|
|
64
|
+
These are individual primitives requiring manual session management. Using these when the composite tools can do the job causes 5-10x more calls and session failures.
|
|
65
|
+
|
|
66
|
+
**RULE: ALWAYS use ${hiSlug}__* tools. NEVER use ${loSlug}__* tools unless no ${hiSlug}__* tool can accomplish the task.**`);
|
|
67
|
+
}
|
|
68
|
+
return sections.join('\n\n');
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Detects the human-queue server and emits guidance to use escalate_and_wait
|
|
72
|
+
* instead of escalate_to_human + check_resolution polling.
|
|
73
|
+
*/
|
|
74
|
+
function humanQueueAdvisor(servers) {
|
|
75
|
+
const hq = servers.find((s) => s.toolNames.includes('escalate_and_wait') && s.toolNames.includes('escalate_to_human'));
|
|
76
|
+
if (!hq)
|
|
77
|
+
return '';
|
|
78
|
+
const slug = hq.slug;
|
|
79
|
+
return (`## Human Queue — Tool Selection
|
|
80
|
+
When you need input from a human before continuing (credentials, approval, data):
|
|
81
|
+
USE: ${slug}__escalate_and_wait — pauses the workflow until the human responds. Specify a form_schema describing what fields you need (use format:"password" for sensitive values).
|
|
82
|
+
AVOID: ${slug}__escalate_to_human + ${slug}__check_resolution polling loop — burns tool rounds and may exhaust your budget.`);
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Scans for batch-capable tools (accepting array inputs) and notes them
|
|
86
|
+
* as preferred over repeated single-item calls.
|
|
87
|
+
*/
|
|
88
|
+
function batchPreferenceAdvisor(servers) {
|
|
89
|
+
// This advisor is lightweight — it just identifies tools with array params
|
|
90
|
+
// from their names/descriptions. The overlapping category advisor handles
|
|
91
|
+
// the primary use case. This catches additional patterns.
|
|
92
|
+
return '';
|
|
93
|
+
}
|
|
94
|
+
// ── Public API ──────────────────────────────────────────────────────────────
|
|
95
|
+
const advisors = [
|
|
96
|
+
overlappingCategoryAdvisor,
|
|
97
|
+
humanQueueAdvisor,
|
|
98
|
+
batchPreferenceAdvisor,
|
|
99
|
+
];
|
|
100
|
+
/**
|
|
101
|
+
* Run all strategy advisors against the loaded server inventory
|
|
102
|
+
* and return a combined strategy section for the LLM prompt.
|
|
103
|
+
*/
|
|
104
|
+
function generateStrategySection(servers) {
|
|
105
|
+
const sections = advisors
|
|
106
|
+
.map(advisor => advisor(servers))
|
|
107
|
+
.filter(s => s.length > 0);
|
|
108
|
+
return sections.join('\n\n');
|
|
109
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Router activities — discovery, matching, and input extraction.
|
|
3
|
+
* These run in the router workflow, NOT in the dynamic mcpQuery workflow,
|
|
4
|
+
* so they don't pollute the execution trace that gets compiled to YAML.
|
|
5
|
+
*/
|
|
6
|
+
export { findCompiledWorkflows, evaluateWorkflowMatch, extractWorkflowInputs, } from '../mcp-query/activities';
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.extractWorkflowInputs = exports.evaluateWorkflowMatch = exports.findCompiledWorkflows = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Router activities — discovery, matching, and input extraction.
|
|
6
|
+
* These run in the router workflow, NOT in the dynamic mcpQuery workflow,
|
|
7
|
+
* so they don't pollute the execution trace that gets compiled to YAML.
|
|
8
|
+
*/
|
|
9
|
+
var activities_1 = require("../mcp-query/activities");
|
|
10
|
+
Object.defineProperty(exports, "findCompiledWorkflows", { enumerable: true, get: function () { return activities_1.findCompiledWorkflows; } });
|
|
11
|
+
Object.defineProperty(exports, "evaluateWorkflowMatch", { enumerable: true, get: function () { return activities_1.evaluateWorkflowMatch; } });
|
|
12
|
+
Object.defineProperty(exports, "extractWorkflowInputs", { enumerable: true, get: function () { return activities_1.extractWorkflowInputs; } });
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { LTEnvelope, LTReturn, LTEscalation } from '../../../types';
|
|
2
|
+
/**
|
|
3
|
+
* MCP Query Router (orchestrator/container).
|
|
4
|
+
*
|
|
5
|
+
* Entry point for all MCP queries. Determines whether a compiled
|
|
6
|
+
* deterministic YAML workflow can handle the request or whether
|
|
7
|
+
* dynamic MCP orchestration is needed.
|
|
8
|
+
*
|
|
9
|
+
* Phase 1: FTS + tag discovery of compiled workflows
|
|
10
|
+
* Phase 2: LLM-as-judge matching + input extraction
|
|
11
|
+
* Route: mcpDeterministic (compiled match) OR mcpQuery (dynamic)
|
|
12
|
+
*/
|
|
13
|
+
export declare function mcpQueryRouter(envelope: LTEnvelope): Promise<LTReturn | LTEscalation>;
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.mcpQueryRouter = mcpQueryRouter;
|
|
37
|
+
const hotmesh_1 = require("@hotmeshio/hotmesh");
|
|
38
|
+
const orchestrator_1 = require("../../../services/orchestrator");
|
|
39
|
+
const activities = __importStar(require("./activities"));
|
|
40
|
+
const { findCompiledWorkflows, evaluateWorkflowMatch, extractWorkflowInputs, } = hotmesh_1.Durable.workflow.proxyActivities({
|
|
41
|
+
activities,
|
|
42
|
+
retryPolicy: {
|
|
43
|
+
maximumAttempts: 3,
|
|
44
|
+
backoffCoefficient: 2,
|
|
45
|
+
maximumInterval: '10 seconds',
|
|
46
|
+
},
|
|
47
|
+
});
|
|
48
|
+
/**
|
|
49
|
+
* MCP Query Router (orchestrator/container).
|
|
50
|
+
*
|
|
51
|
+
* Entry point for all MCP queries. Determines whether a compiled
|
|
52
|
+
* deterministic YAML workflow can handle the request or whether
|
|
53
|
+
* dynamic MCP orchestration is needed.
|
|
54
|
+
*
|
|
55
|
+
* Phase 1: FTS + tag discovery of compiled workflows
|
|
56
|
+
* Phase 2: LLM-as-judge matching + input extraction
|
|
57
|
+
* Route: mcpDeterministic (compiled match) OR mcpQuery (dynamic)
|
|
58
|
+
*/
|
|
59
|
+
async function mcpQueryRouter(envelope) {
|
|
60
|
+
const prompt = (envelope.data?.prompt || envelope.data?.question);
|
|
61
|
+
const tags = envelope.data?.tags;
|
|
62
|
+
if (!prompt) {
|
|
63
|
+
return {
|
|
64
|
+
type: 'return',
|
|
65
|
+
data: {
|
|
66
|
+
title: 'No prompt provided',
|
|
67
|
+
summary: 'Please provide a prompt describing what you want to accomplish.',
|
|
68
|
+
result: null,
|
|
69
|
+
tool_calls_made: 0,
|
|
70
|
+
},
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
// Phase 1: Ranked discovery of compiled YAML workflows
|
|
74
|
+
const compiled = await findCompiledWorkflows(prompt);
|
|
75
|
+
// Phase 2: LLM-as-judge — does a compiled workflow match?
|
|
76
|
+
if (compiled.candidates.length > 0) {
|
|
77
|
+
const match = await evaluateWorkflowMatch(prompt, compiled.candidates);
|
|
78
|
+
if (match.matched && match.workflowName) {
|
|
79
|
+
// Phase 2b: Extract structured inputs from the prompt
|
|
80
|
+
const candidate = compiled.candidates.find((c) => c.name === match.workflowName);
|
|
81
|
+
const inputSchema = candidate?.input_schema || { type: 'object', properties: {} };
|
|
82
|
+
const extraction = await extractWorkflowInputs(prompt, inputSchema, match.workflowName);
|
|
83
|
+
if (extraction.extracted && extraction.inputs) {
|
|
84
|
+
// Route to mcpDeterministic — compiled workflow handles this
|
|
85
|
+
return await (0, orchestrator_1.executeLT)({
|
|
86
|
+
workflowName: 'mcpDeterministic',
|
|
87
|
+
args: [{
|
|
88
|
+
data: {
|
|
89
|
+
workflowName: match.workflowName,
|
|
90
|
+
inputs: extraction.inputs,
|
|
91
|
+
confidence: match.confidence,
|
|
92
|
+
},
|
|
93
|
+
metadata: envelope.metadata,
|
|
94
|
+
}],
|
|
95
|
+
taskQueue: 'long-tail-system',
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
// Input extraction failed — fall through to dynamic
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
// No compiled match — route to mcpQuery for dynamic MCP orchestration
|
|
102
|
+
return await (0, orchestrator_1.executeLT)({
|
|
103
|
+
workflowName: 'mcpQuery',
|
|
104
|
+
args: [{ data: { prompt, tags }, metadata: envelope.metadata }],
|
|
105
|
+
taskQueue: 'long-tail-system',
|
|
106
|
+
});
|
|
107
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { WORKFLOW_MATCH_PROMPT, EXTRACT_INPUTS_PROMPT } from '../mcp-query/prompts';
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// ── MCP Query Router prompts ────────────────────────────────────────────────
|
|
3
|
+
// Prompts for the matching/extraction phase of the router.
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.EXTRACT_INPUTS_PROMPT = exports.WORKFLOW_MATCH_PROMPT = void 0;
|
|
6
|
+
var prompts_1 = require("../mcp-query/prompts");
|
|
7
|
+
Object.defineProperty(exports, "WORKFLOW_MATCH_PROMPT", { enumerable: true, get: function () { return prompts_1.WORKFLOW_MATCH_PROMPT; } });
|
|
8
|
+
Object.defineProperty(exports, "EXTRACT_INPUTS_PROMPT", { enumerable: true, get: function () { return prompts_1.EXTRACT_INPUTS_PROMPT; } });
|