@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,26 @@
|
|
|
1
|
+
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
2
|
+
/**
|
|
3
|
+
* Create the Long Tail Human Queue MCP server.
|
|
4
|
+
*
|
|
5
|
+
* Registers five tools that expose the escalation API:
|
|
6
|
+
* - escalate_to_human — create a new escalation (fire-and-forget)
|
|
7
|
+
* - check_resolution — check escalation status
|
|
8
|
+
* - get_available_work — list available escalations by role
|
|
9
|
+
* - claim_and_resolve — claim + resolve in one step
|
|
10
|
+
* - escalate_and_wait — create escalation and return signal for durable wait
|
|
11
|
+
*
|
|
12
|
+
* The server is created with tools registered but no transport
|
|
13
|
+
* auto-connected. Callers connect a transport programmatically
|
|
14
|
+
* or via the Streamable HTTP endpoint.
|
|
15
|
+
*/
|
|
16
|
+
export declare function createHumanQueueServer(options?: {
|
|
17
|
+
name?: string;
|
|
18
|
+
}): Promise<McpServer>;
|
|
19
|
+
/**
|
|
20
|
+
* Get the current MCP server instance.
|
|
21
|
+
*/
|
|
22
|
+
export declare function getServer(): McpServer | null;
|
|
23
|
+
/**
|
|
24
|
+
* Stop the MCP server and release resources.
|
|
25
|
+
*/
|
|
26
|
+
export declare function stopServer(): Promise<void>;
|
|
@@ -0,0 +1,287 @@
|
|
|
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.createHumanQueueServer = createHumanQueueServer;
|
|
37
|
+
exports.getServer = getServer;
|
|
38
|
+
exports.stopServer = stopServer;
|
|
39
|
+
const crypto = __importStar(require("crypto"));
|
|
40
|
+
const mcp_js_1 = require("@modelcontextprotocol/sdk/server/mcp.js");
|
|
41
|
+
const zod_1 = require("zod");
|
|
42
|
+
const logger_1 = require("../../services/logger");
|
|
43
|
+
const escalationService = __importStar(require("../../services/escalation"));
|
|
44
|
+
let server = null;
|
|
45
|
+
// ── Schemas (extracted to break TS2589 deep-instantiation in registerTool generics) ──
|
|
46
|
+
const escalateSchema = zod_1.z.object({
|
|
47
|
+
role: zod_1.z.string().describe('Target role for the escalation (e.g., "reviewer")'),
|
|
48
|
+
message: zod_1.z.string().describe('Description of what needs human review'),
|
|
49
|
+
data: zod_1.z.record(zod_1.z.any()).optional().describe('Contextual data for the reviewer'),
|
|
50
|
+
type: zod_1.z.string().optional().default('mcp').describe('Escalation type classification'),
|
|
51
|
+
subtype: zod_1.z.string().optional().default('tool_call').describe('Escalation subtype'),
|
|
52
|
+
priority: zod_1.z.number().min(1).max(4).optional().default(2)
|
|
53
|
+
.describe('Priority: 1 (highest) to 4 (lowest)'),
|
|
54
|
+
});
|
|
55
|
+
const checkResolutionSchema = zod_1.z.object({
|
|
56
|
+
escalation_id: zod_1.z.string().describe('The escalation ID to check'),
|
|
57
|
+
});
|
|
58
|
+
const getAvailableWorkSchema = zod_1.z.object({
|
|
59
|
+
role: zod_1.z.string().describe('Role to filter by'),
|
|
60
|
+
limit: zod_1.z.number().optional().default(10).describe('Max results to return'),
|
|
61
|
+
});
|
|
62
|
+
const claimAndResolveSchema = zod_1.z.object({
|
|
63
|
+
escalation_id: zod_1.z.string().describe('The escalation ID to claim and resolve'),
|
|
64
|
+
resolver_id: zod_1.z.string().describe('Identifier for who/what is resolving'),
|
|
65
|
+
payload: zod_1.z.record(zod_1.z.any()).describe('Resolution payload data'),
|
|
66
|
+
});
|
|
67
|
+
const escalateAndWaitSchema = zod_1.z.object({
|
|
68
|
+
role: zod_1.z.string().describe('Target role for the escalation (e.g., "reviewer")'),
|
|
69
|
+
message: zod_1.z.string().describe('Description of what input is needed from the human'),
|
|
70
|
+
form_schema: zod_1.z.record(zod_1.z.any()).optional()
|
|
71
|
+
.describe('JSON Schema for the resolver form. Use format:"password" for sensitive fields.'),
|
|
72
|
+
data: zod_1.z.record(zod_1.z.any()).optional().describe('Contextual data for the reviewer'),
|
|
73
|
+
assigned_to: zod_1.z.string().optional().describe('Auto-assign to a specific user'),
|
|
74
|
+
type: zod_1.z.string().optional().default('mcp').describe('Escalation type classification'),
|
|
75
|
+
subtype: zod_1.z.string().optional().default('wait_for_human').describe('Escalation subtype'),
|
|
76
|
+
priority: zod_1.z.number().min(1).max(4).optional().default(1)
|
|
77
|
+
.describe('Priority: 1 (highest) to 4 (lowest)'),
|
|
78
|
+
}).passthrough();
|
|
79
|
+
/**
|
|
80
|
+
* Create the Long Tail Human Queue MCP server.
|
|
81
|
+
*
|
|
82
|
+
* Registers five tools that expose the escalation API:
|
|
83
|
+
* - escalate_to_human — create a new escalation (fire-and-forget)
|
|
84
|
+
* - check_resolution — check escalation status
|
|
85
|
+
* - get_available_work — list available escalations by role
|
|
86
|
+
* - claim_and_resolve — claim + resolve in one step
|
|
87
|
+
* - escalate_and_wait — create escalation and return signal for durable wait
|
|
88
|
+
*
|
|
89
|
+
* The server is created with tools registered but no transport
|
|
90
|
+
* auto-connected. Callers connect a transport programmatically
|
|
91
|
+
* or via the Streamable HTTP endpoint.
|
|
92
|
+
*/
|
|
93
|
+
async function createHumanQueueServer(options) {
|
|
94
|
+
if (server)
|
|
95
|
+
return server;
|
|
96
|
+
const name = options?.name || 'long-tail-human-queue';
|
|
97
|
+
server = new mcp_js_1.McpServer({ name, version: '1.0.0' });
|
|
98
|
+
// ── escalate_to_human ───────────────────────────────────────────────
|
|
99
|
+
server.registerTool('escalate_to_human', {
|
|
100
|
+
title: 'Escalate to Human',
|
|
101
|
+
description: 'Create a new escalation for human review. Returns the escalation ID.',
|
|
102
|
+
inputSchema: escalateSchema,
|
|
103
|
+
}, async (args) => {
|
|
104
|
+
const escalation = await escalationService.createEscalation({
|
|
105
|
+
type: args.type || 'mcp',
|
|
106
|
+
subtype: args.subtype || 'tool_call',
|
|
107
|
+
description: args.message,
|
|
108
|
+
priority: args.priority,
|
|
109
|
+
role: args.role,
|
|
110
|
+
envelope: JSON.stringify(args.data || {}),
|
|
111
|
+
metadata: { source: 'mcp_server' },
|
|
112
|
+
});
|
|
113
|
+
return {
|
|
114
|
+
content: [{
|
|
115
|
+
type: 'text',
|
|
116
|
+
text: JSON.stringify({
|
|
117
|
+
escalation_id: escalation.id,
|
|
118
|
+
status: escalation.status,
|
|
119
|
+
role: escalation.role,
|
|
120
|
+
created_at: escalation.created_at,
|
|
121
|
+
}),
|
|
122
|
+
}],
|
|
123
|
+
};
|
|
124
|
+
});
|
|
125
|
+
// ── check_resolution ────────────────────────────────────────────────
|
|
126
|
+
server.registerTool('check_resolution', {
|
|
127
|
+
title: 'Check Escalation Resolution',
|
|
128
|
+
description: 'Check the status of an escalation. Returns status and resolver payload if resolved.',
|
|
129
|
+
inputSchema: checkResolutionSchema,
|
|
130
|
+
}, async (args) => {
|
|
131
|
+
const escalation = await escalationService.getEscalation(args.escalation_id);
|
|
132
|
+
if (!escalation) {
|
|
133
|
+
return {
|
|
134
|
+
content: [{
|
|
135
|
+
type: 'text',
|
|
136
|
+
text: JSON.stringify({ error: 'Escalation not found' }),
|
|
137
|
+
}],
|
|
138
|
+
isError: true,
|
|
139
|
+
};
|
|
140
|
+
}
|
|
141
|
+
const result = {
|
|
142
|
+
escalation_id: escalation.id,
|
|
143
|
+
status: escalation.status,
|
|
144
|
+
};
|
|
145
|
+
if (escalation.status === 'resolved' && escalation.resolver_payload) {
|
|
146
|
+
try {
|
|
147
|
+
result.resolver_payload = JSON.parse(escalation.resolver_payload);
|
|
148
|
+
}
|
|
149
|
+
catch {
|
|
150
|
+
result.resolver_payload = escalation.resolver_payload;
|
|
151
|
+
}
|
|
152
|
+
result.resolved_at = escalation.resolved_at;
|
|
153
|
+
}
|
|
154
|
+
return {
|
|
155
|
+
content: [{ type: 'text', text: JSON.stringify(result) }],
|
|
156
|
+
};
|
|
157
|
+
});
|
|
158
|
+
// ── get_available_work ──────────────────────────────────────────────
|
|
159
|
+
server.registerTool('get_available_work', {
|
|
160
|
+
title: 'Get Available Work',
|
|
161
|
+
description: 'List available escalations for a role. Returns pending, unassigned escalations.',
|
|
162
|
+
inputSchema: getAvailableWorkSchema,
|
|
163
|
+
}, async (args) => {
|
|
164
|
+
const { escalations } = await escalationService.listAvailableEscalations({
|
|
165
|
+
role: args.role,
|
|
166
|
+
limit: args.limit,
|
|
167
|
+
});
|
|
168
|
+
const items = escalations.map((e) => ({
|
|
169
|
+
escalation_id: e.id,
|
|
170
|
+
type: e.type,
|
|
171
|
+
subtype: e.subtype,
|
|
172
|
+
description: e.description,
|
|
173
|
+
priority: e.priority,
|
|
174
|
+
role: e.role,
|
|
175
|
+
created_at: e.created_at,
|
|
176
|
+
}));
|
|
177
|
+
return {
|
|
178
|
+
content: [{
|
|
179
|
+
type: 'text',
|
|
180
|
+
text: JSON.stringify({ count: items.length, escalations: items }),
|
|
181
|
+
}],
|
|
182
|
+
};
|
|
183
|
+
});
|
|
184
|
+
// ── claim_and_resolve ───────────────────────────────────────────────
|
|
185
|
+
server.registerTool('claim_and_resolve', {
|
|
186
|
+
title: 'Claim and Resolve',
|
|
187
|
+
description: 'Claim an escalation and immediately resolve it with a payload. Atomic operation.',
|
|
188
|
+
inputSchema: claimAndResolveSchema,
|
|
189
|
+
}, async (args) => {
|
|
190
|
+
const claimed = await escalationService.claimEscalation(args.escalation_id, args.resolver_id, 5);
|
|
191
|
+
if (!claimed) {
|
|
192
|
+
return {
|
|
193
|
+
content: [{
|
|
194
|
+
type: 'text',
|
|
195
|
+
text: JSON.stringify({ error: 'Escalation not available for claim' }),
|
|
196
|
+
}],
|
|
197
|
+
isError: true,
|
|
198
|
+
};
|
|
199
|
+
}
|
|
200
|
+
const resolved = await escalationService.resolveEscalation(args.escalation_id, args.payload);
|
|
201
|
+
if (!resolved) {
|
|
202
|
+
return {
|
|
203
|
+
content: [{
|
|
204
|
+
type: 'text',
|
|
205
|
+
text: JSON.stringify({ error: 'Failed to resolve escalation' }),
|
|
206
|
+
}],
|
|
207
|
+
isError: true,
|
|
208
|
+
};
|
|
209
|
+
}
|
|
210
|
+
return {
|
|
211
|
+
content: [{
|
|
212
|
+
type: 'text',
|
|
213
|
+
text: JSON.stringify({
|
|
214
|
+
escalation_id: resolved.id,
|
|
215
|
+
status: resolved.status,
|
|
216
|
+
resolved_at: resolved.resolved_at,
|
|
217
|
+
}),
|
|
218
|
+
}],
|
|
219
|
+
};
|
|
220
|
+
});
|
|
221
|
+
// ── escalate_and_wait ──────────────────────────────────────────────
|
|
222
|
+
server.registerTool('escalate_and_wait', {
|
|
223
|
+
title: 'Escalate and Wait',
|
|
224
|
+
description: 'Create an escalation and pause the workflow until a human responds. ' +
|
|
225
|
+
'Returns a signal ID that the workflow uses to wait. ' +
|
|
226
|
+
'Preferred over escalate_to_human + check_resolution polling.',
|
|
227
|
+
inputSchema: escalateAndWaitSchema,
|
|
228
|
+
}, async (args) => {
|
|
229
|
+
const signalId = `wait-for-human-${crypto.randomUUID()}`;
|
|
230
|
+
// YAML workflows inject _yaml_signal_routing to override Durable's signalId-based routing
|
|
231
|
+
const yamlRouting = args._yaml_signal_routing;
|
|
232
|
+
const signalRouting = yamlRouting
|
|
233
|
+
? { ...yamlRouting, signalId }
|
|
234
|
+
: { signalId };
|
|
235
|
+
const metadata = {
|
|
236
|
+
source: 'mcp_server',
|
|
237
|
+
signal_routing: signalRouting,
|
|
238
|
+
};
|
|
239
|
+
if (args.form_schema) {
|
|
240
|
+
metadata.form_schema = args.form_schema;
|
|
241
|
+
}
|
|
242
|
+
const escalation = await escalationService.createEscalation({
|
|
243
|
+
type: args.type || 'mcp',
|
|
244
|
+
subtype: args.subtype || 'wait_for_human',
|
|
245
|
+
description: args.message,
|
|
246
|
+
priority: args.priority,
|
|
247
|
+
role: args.role,
|
|
248
|
+
envelope: JSON.stringify(args.data || {}),
|
|
249
|
+
metadata,
|
|
250
|
+
// YAML routing provides workflow context for dashboard visibility
|
|
251
|
+
workflow_type: yamlRouting?.workflowType,
|
|
252
|
+
workflow_id: yamlRouting?.workflowId,
|
|
253
|
+
task_queue: yamlRouting?.taskQueue,
|
|
254
|
+
});
|
|
255
|
+
if (args.assigned_to) {
|
|
256
|
+
await escalationService.claimEscalation(escalation.id, args.assigned_to, 240);
|
|
257
|
+
}
|
|
258
|
+
return {
|
|
259
|
+
content: [{
|
|
260
|
+
type: 'text',
|
|
261
|
+
text: JSON.stringify({
|
|
262
|
+
type: 'waitFor',
|
|
263
|
+
signalId,
|
|
264
|
+
escalationId: escalation.id,
|
|
265
|
+
}),
|
|
266
|
+
}],
|
|
267
|
+
};
|
|
268
|
+
});
|
|
269
|
+
logger_1.loggerRegistry.info(`[lt-mcp:server] ${name} ready (5 tools registered)`);
|
|
270
|
+
return server;
|
|
271
|
+
}
|
|
272
|
+
/**
|
|
273
|
+
* Get the current MCP server instance.
|
|
274
|
+
*/
|
|
275
|
+
function getServer() {
|
|
276
|
+
return server;
|
|
277
|
+
}
|
|
278
|
+
/**
|
|
279
|
+
* Stop the MCP server and release resources.
|
|
280
|
+
*/
|
|
281
|
+
async function stopServer() {
|
|
282
|
+
if (server) {
|
|
283
|
+
await server.close();
|
|
284
|
+
server = null;
|
|
285
|
+
logger_1.loggerRegistry.info('[lt-mcp:server] stopped');
|
|
286
|
+
}
|
|
287
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
2
|
+
/**
|
|
3
|
+
* Create an OAuth MCP server.
|
|
4
|
+
*
|
|
5
|
+
* Provides 3 tools for OAuth token management:
|
|
6
|
+
* get_access_token, list_connections, revoke_connection
|
|
7
|
+
*
|
|
8
|
+
* Workflows call get_access_token to get fresh credentials
|
|
9
|
+
* before making authenticated API calls to external services.
|
|
10
|
+
*/
|
|
11
|
+
export declare function createOAuthServer(): Promise<McpServer>;
|
|
@@ -0,0 +1,100 @@
|
|
|
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.createOAuthServer = createOAuthServer;
|
|
37
|
+
const mcp_js_1 = require("@modelcontextprotocol/sdk/server/mcp.js");
|
|
38
|
+
const zod_1 = require("zod");
|
|
39
|
+
const logger_1 = require("../../services/logger");
|
|
40
|
+
const oauth = __importStar(require("../activities/oauth"));
|
|
41
|
+
const getAccessTokenSchema = zod_1.z.object({
|
|
42
|
+
provider: zod_1.z.string().describe('OAuth provider name (google, github, microsoft, anthropic, etc.)'),
|
|
43
|
+
user_id: zod_1.z.string().describe('User ID to get token for'),
|
|
44
|
+
label: zod_1.z.string().optional().describe('Credential label (default: "default"). Use to select among multiple credentials for the same provider.'),
|
|
45
|
+
});
|
|
46
|
+
const listConnectionsSchema = zod_1.z.object({
|
|
47
|
+
user_id: zod_1.z.string().describe('User ID to list connections for'),
|
|
48
|
+
});
|
|
49
|
+
const revokeConnectionSchema = zod_1.z.object({
|
|
50
|
+
provider: zod_1.z.string().describe('OAuth provider name to disconnect'),
|
|
51
|
+
user_id: zod_1.z.string().describe('User ID to revoke connection for'),
|
|
52
|
+
label: zod_1.z.string().optional().describe('Credential label to revoke (default: "default")'),
|
|
53
|
+
});
|
|
54
|
+
/**
|
|
55
|
+
* Create an OAuth MCP server.
|
|
56
|
+
*
|
|
57
|
+
* Provides 3 tools for OAuth token management:
|
|
58
|
+
* get_access_token, list_connections, revoke_connection
|
|
59
|
+
*
|
|
60
|
+
* Workflows call get_access_token to get fresh credentials
|
|
61
|
+
* before making authenticated API calls to external services.
|
|
62
|
+
*/
|
|
63
|
+
async function createOAuthServer() {
|
|
64
|
+
const instance = new mcp_js_1.McpServer({ name: 'long-tail-oauth', version: '1.0.0' });
|
|
65
|
+
instance.registerTool('get_access_token', {
|
|
66
|
+
title: 'Get OAuth Access Token',
|
|
67
|
+
description: 'Get a fresh OAuth access token for an external service (Google, GitHub, etc.). ' +
|
|
68
|
+
'Automatically refreshes expired tokens. Call this immediately before making an ' +
|
|
69
|
+
'authenticated API request — do not cache or reuse across workflow steps. ' +
|
|
70
|
+
'Use the label parameter to select a specific credential when multiple exist.',
|
|
71
|
+
inputSchema: getAccessTokenSchema,
|
|
72
|
+
}, async (args) => {
|
|
73
|
+
const result = await oauth.getAccessToken(args);
|
|
74
|
+
return {
|
|
75
|
+
content: [{ type: 'text', text: JSON.stringify(result) }],
|
|
76
|
+
};
|
|
77
|
+
});
|
|
78
|
+
instance.registerTool('list_connections', {
|
|
79
|
+
title: 'List OAuth Connections',
|
|
80
|
+
description: 'List all OAuth providers connected for a user. Returns provider, label, and credential type for each connection.',
|
|
81
|
+
inputSchema: listConnectionsSchema,
|
|
82
|
+
}, async (args) => {
|
|
83
|
+
const result = await oauth.listConnections(args);
|
|
84
|
+
return {
|
|
85
|
+
content: [{ type: 'text', text: JSON.stringify(result) }],
|
|
86
|
+
};
|
|
87
|
+
});
|
|
88
|
+
instance.registerTool('revoke_connection', {
|
|
89
|
+
title: 'Revoke OAuth Connection',
|
|
90
|
+
description: 'Disconnect an OAuth provider for a user, removing stored tokens. Use label to target a specific credential.',
|
|
91
|
+
inputSchema: revokeConnectionSchema,
|
|
92
|
+
}, async (args) => {
|
|
93
|
+
const result = await oauth.revokeConnection(args);
|
|
94
|
+
return {
|
|
95
|
+
content: [{ type: 'text', text: JSON.stringify(result) }],
|
|
96
|
+
};
|
|
97
|
+
});
|
|
98
|
+
logger_1.loggerRegistry.info('[lt-mcp:oauth] long-tail-oauth ready (3 tools registered)');
|
|
99
|
+
return instance;
|
|
100
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { type Browser, type Page } from 'playwright';
|
|
2
|
+
import type { PlaywrightHandle } from './types';
|
|
3
|
+
export declare const pages: Map<string, Page>;
|
|
4
|
+
/** Allocate a unique page ID (shared across both playwright servers). */
|
|
5
|
+
export declare function allocatePageId(): string;
|
|
6
|
+
export declare function ensureBrowser(): Promise<Browser>;
|
|
7
|
+
/**
|
|
8
|
+
* Resolve a page from either a local `page_id`, a `_handle`, or "most recent".
|
|
9
|
+
* Handles cross-container reconnection via CDP when needed.
|
|
10
|
+
*/
|
|
11
|
+
export declare function resolvePage(args: {
|
|
12
|
+
page_id?: string;
|
|
13
|
+
_handle?: PlaywrightHandle;
|
|
14
|
+
}): Promise<{
|
|
15
|
+
page: Page;
|
|
16
|
+
pageId: string;
|
|
17
|
+
}>;
|
|
18
|
+
/**
|
|
19
|
+
* Build a _handle for a page. Includes CDP endpoint when available
|
|
20
|
+
* (for cross-container access in distributed deployments).
|
|
21
|
+
*/
|
|
22
|
+
export declare function buildHandle(pageId: string): PlaywrightHandle;
|
|
23
|
+
/**
|
|
24
|
+
* Shut down the shared browser and release all pages.
|
|
25
|
+
*/
|
|
26
|
+
export declare function stopPlaywrightServer(): Promise<void>;
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.pages = void 0;
|
|
4
|
+
exports.allocatePageId = allocatePageId;
|
|
5
|
+
exports.ensureBrowser = ensureBrowser;
|
|
6
|
+
exports.resolvePage = resolvePage;
|
|
7
|
+
exports.buildHandle = buildHandle;
|
|
8
|
+
exports.stopPlaywrightServer = stopPlaywrightServer;
|
|
9
|
+
const playwright_1 = require("playwright");
|
|
10
|
+
const logger_1 = require("../../../services/logger");
|
|
11
|
+
const types_1 = require("./types");
|
|
12
|
+
// ── Browser lifecycle ────────────────────────────────────────────────────────
|
|
13
|
+
// Shared browser instance across tool calls within a single server lifetime.
|
|
14
|
+
// Lazy-launched on first use, cleaned up via stopPlaywrightServer().
|
|
15
|
+
let browser = null;
|
|
16
|
+
exports.pages = new Map();
|
|
17
|
+
let pageCounter = 0;
|
|
18
|
+
/** Remote browsers connected via CDP — cached to avoid reconnecting per call. */
|
|
19
|
+
const remoteBrowsers = new Map();
|
|
20
|
+
/** Allocate a unique page ID (shared across both playwright servers). */
|
|
21
|
+
function allocatePageId() {
|
|
22
|
+
return `page_${++pageCounter}`;
|
|
23
|
+
}
|
|
24
|
+
async function ensureBrowser() {
|
|
25
|
+
if (!browser || !browser.isConnected()) {
|
|
26
|
+
browser = await playwright_1.chromium.launch({ headless: true });
|
|
27
|
+
logger_1.loggerRegistry.info('[lt-mcp:playwright] browser launched');
|
|
28
|
+
}
|
|
29
|
+
return browser;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Resolve a page from either a local `page_id`, a `_handle`, or "most recent".
|
|
33
|
+
* Handles cross-container reconnection via CDP when needed.
|
|
34
|
+
*/
|
|
35
|
+
async function resolvePage(args) {
|
|
36
|
+
// 1. Try local pages Map (fast path — same container)
|
|
37
|
+
const localId = args._handle?.page_id || args.page_id;
|
|
38
|
+
if (localId) {
|
|
39
|
+
const local = exports.pages.get(localId);
|
|
40
|
+
if (local)
|
|
41
|
+
return { page: local, pageId: localId };
|
|
42
|
+
}
|
|
43
|
+
// 2. Try CDP reconnection via handle (cross-container)
|
|
44
|
+
if (args._handle?.cdp_endpoint) {
|
|
45
|
+
const cdp = args._handle.cdp_endpoint;
|
|
46
|
+
let remoteBrowser = remoteBrowsers.get(cdp);
|
|
47
|
+
if (!remoteBrowser || !remoteBrowser.isConnected()) {
|
|
48
|
+
try {
|
|
49
|
+
remoteBrowser = await playwright_1.chromium.connectOverCDP(cdp);
|
|
50
|
+
remoteBrowsers.set(cdp, remoteBrowser);
|
|
51
|
+
logger_1.loggerRegistry.info(`[lt-mcp:playwright] connected to remote browser: ${cdp}`);
|
|
52
|
+
}
|
|
53
|
+
catch (err) {
|
|
54
|
+
throw Object.assign(new Error(`Cannot reach browser at ${cdp}`), { code: types_1.SESSION_UNREACHABLE, cdp_endpoint: cdp });
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
// Find the page — for now, use the first page in the default context
|
|
58
|
+
const contexts = remoteBrowser.contexts();
|
|
59
|
+
const ctx = contexts[0] || await remoteBrowser.newContext();
|
|
60
|
+
const remotePages = ctx.pages();
|
|
61
|
+
if (remotePages.length > 0) {
|
|
62
|
+
const page = remotePages[remotePages.length - 1];
|
|
63
|
+
const id = args._handle.page_id || `remote_${++pageCounter}`;
|
|
64
|
+
exports.pages.set(id, page);
|
|
65
|
+
return { page, pageId: id };
|
|
66
|
+
}
|
|
67
|
+
throw Object.assign(new Error(`No pages found on remote browser at ${cdp}`), { code: types_1.SESSION_NOT_FOUND, cdp_endpoint: cdp });
|
|
68
|
+
}
|
|
69
|
+
// 3. If a specific page_id was requested but not found, throw structured error
|
|
70
|
+
if (localId) {
|
|
71
|
+
throw Object.assign(new Error(`Page ${localId} not found`), { code: types_1.SESSION_NOT_FOUND, page_id: localId });
|
|
72
|
+
}
|
|
73
|
+
// 4. Fall back to most recent local page
|
|
74
|
+
const entries = Array.from(exports.pages.entries());
|
|
75
|
+
if (entries.length === 0) {
|
|
76
|
+
throw Object.assign(new Error('No pages open. Navigate to a URL first, or pass a _handle.'), { code: types_1.SESSION_NOT_FOUND });
|
|
77
|
+
}
|
|
78
|
+
return { page: entries[entries.length - 1][1], pageId: entries[entries.length - 1][0] };
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Build a _handle for a page. Includes CDP endpoint when available
|
|
82
|
+
* (for cross-container access in distributed deployments).
|
|
83
|
+
*/
|
|
84
|
+
function buildHandle(pageId) {
|
|
85
|
+
const handle = {
|
|
86
|
+
type: 'playwright_page',
|
|
87
|
+
page_id: pageId,
|
|
88
|
+
};
|
|
89
|
+
// Include CDP endpoint if browser exposes one (e.g., launchServer or remote)
|
|
90
|
+
if (browser && typeof browser.wsEndpoint === 'function') {
|
|
91
|
+
try {
|
|
92
|
+
handle.cdp_endpoint = browser.wsEndpoint();
|
|
93
|
+
}
|
|
94
|
+
catch {
|
|
95
|
+
// Not available — single-process mode, local pages Map suffices
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
return handle;
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Shut down the shared browser and release all pages.
|
|
102
|
+
*/
|
|
103
|
+
async function stopPlaywrightServer() {
|
|
104
|
+
for (const [id, page] of exports.pages) {
|
|
105
|
+
try {
|
|
106
|
+
await page.close();
|
|
107
|
+
}
|
|
108
|
+
catch { /* ignore */ }
|
|
109
|
+
exports.pages.delete(id);
|
|
110
|
+
}
|
|
111
|
+
// Close remote browsers
|
|
112
|
+
for (const [endpoint, rb] of remoteBrowsers) {
|
|
113
|
+
try {
|
|
114
|
+
await rb.close();
|
|
115
|
+
}
|
|
116
|
+
catch { /* ignore */ }
|
|
117
|
+
remoteBrowsers.delete(endpoint);
|
|
118
|
+
}
|
|
119
|
+
if (browser) {
|
|
120
|
+
await browser.close();
|
|
121
|
+
browser = null;
|
|
122
|
+
}
|
|
123
|
+
pageCounter = 0;
|
|
124
|
+
logger_1.loggerRegistry.info('[lt-mcp:playwright] browser closed');
|
|
125
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
2
|
+
export { pages, allocatePageId, ensureBrowser, buildHandle, stopPlaywrightServer } from './browser-lifecycle';
|
|
3
|
+
export type { PlaywrightHandle } from './types';
|
|
4
|
+
/**
|
|
5
|
+
* Create a Playwright Browser MCP server.
|
|
6
|
+
*
|
|
7
|
+
* Provides 9 tools for browser automation:
|
|
8
|
+
* navigate, screenshot, click, fill, wait_for, evaluate, run_script, list_pages, close_page
|
|
9
|
+
*
|
|
10
|
+
* All page-scoped tools participate in the _handle convention:
|
|
11
|
+
* - navigate returns a _handle in its result
|
|
12
|
+
* - All other tools accept _handle to locate the page across activities
|
|
13
|
+
* - Fast path: local pages Map (same container)
|
|
14
|
+
* - Slow path: CDP reconnection (different container)
|
|
15
|
+
*
|
|
16
|
+
* `run_script` is the preferred tool for YAML workflows — it executes a
|
|
17
|
+
* multi-step browser script in a single activity, avoiding cross-activity
|
|
18
|
+
* session issues entirely.
|
|
19
|
+
*
|
|
20
|
+
* Returns a fresh McpServer instance each time. The browser is shared
|
|
21
|
+
* and lazy-launched on first tool call.
|
|
22
|
+
*/
|
|
23
|
+
export declare function createPlaywrightServer(options?: {
|
|
24
|
+
name?: string;
|
|
25
|
+
}): Promise<McpServer>;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.stopPlaywrightServer = exports.buildHandle = exports.ensureBrowser = exports.allocatePageId = exports.pages = void 0;
|
|
4
|
+
exports.createPlaywrightServer = createPlaywrightServer;
|
|
5
|
+
const mcp_js_1 = require("@modelcontextprotocol/sdk/server/mcp.js");
|
|
6
|
+
const logger_1 = require("../../../services/logger");
|
|
7
|
+
const tools_atomic_1 = require("./tools-atomic");
|
|
8
|
+
const tools_run_script_1 = require("./tools-run-script");
|
|
9
|
+
// Re-export public API consumed by playwright-cli.ts and system/index.ts
|
|
10
|
+
var browser_lifecycle_1 = require("./browser-lifecycle");
|
|
11
|
+
Object.defineProperty(exports, "pages", { enumerable: true, get: function () { return browser_lifecycle_1.pages; } });
|
|
12
|
+
Object.defineProperty(exports, "allocatePageId", { enumerable: true, get: function () { return browser_lifecycle_1.allocatePageId; } });
|
|
13
|
+
Object.defineProperty(exports, "ensureBrowser", { enumerable: true, get: function () { return browser_lifecycle_1.ensureBrowser; } });
|
|
14
|
+
Object.defineProperty(exports, "buildHandle", { enumerable: true, get: function () { return browser_lifecycle_1.buildHandle; } });
|
|
15
|
+
Object.defineProperty(exports, "stopPlaywrightServer", { enumerable: true, get: function () { return browser_lifecycle_1.stopPlaywrightServer; } });
|
|
16
|
+
/**
|
|
17
|
+
* Create a Playwright Browser MCP server.
|
|
18
|
+
*
|
|
19
|
+
* Provides 9 tools for browser automation:
|
|
20
|
+
* navigate, screenshot, click, fill, wait_for, evaluate, run_script, list_pages, close_page
|
|
21
|
+
*
|
|
22
|
+
* All page-scoped tools participate in the _handle convention:
|
|
23
|
+
* - navigate returns a _handle in its result
|
|
24
|
+
* - All other tools accept _handle to locate the page across activities
|
|
25
|
+
* - Fast path: local pages Map (same container)
|
|
26
|
+
* - Slow path: CDP reconnection (different container)
|
|
27
|
+
*
|
|
28
|
+
* `run_script` is the preferred tool for YAML workflows — it executes a
|
|
29
|
+
* multi-step browser script in a single activity, avoiding cross-activity
|
|
30
|
+
* session issues entirely.
|
|
31
|
+
*
|
|
32
|
+
* Returns a fresh McpServer instance each time. The browser is shared
|
|
33
|
+
* and lazy-launched on first tool call.
|
|
34
|
+
*/
|
|
35
|
+
async function createPlaywrightServer(options) {
|
|
36
|
+
const name = options?.name || 'long-tail-playwright';
|
|
37
|
+
const instance = new mcp_js_1.McpServer({ name, version: '1.0.0' });
|
|
38
|
+
(0, tools_atomic_1.registerAtomicTools)(instance);
|
|
39
|
+
(0, tools_run_script_1.registerRunScript)(instance);
|
|
40
|
+
logger_1.loggerRegistry.info(`[lt-mcp:playwright] ${name} ready (9 tools registered)`);
|
|
41
|
+
return instance;
|
|
42
|
+
}
|