@hexabot-ai/api 3.2.2-alpha.9 → 3.2.2-beta.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/dist/actions/actions.service.d.ts +1 -0
- package/dist/actions/actions.service.js +19 -1
- package/dist/actions/actions.service.js.map +1 -1
- package/dist/actions/types.d.ts +3 -1
- package/dist/app.controller.d.ts +1 -0
- package/dist/app.controller.js +1 -0
- package/dist/app.controller.js.map +1 -1
- package/dist/app.module.js +13 -1
- package/dist/app.module.js.map +1 -1
- package/dist/config/index.js +14 -2
- package/dist/config/index.js.map +1 -1
- package/dist/config/types.d.ts +9 -0
- package/dist/extensions/actions/ai/agent.action.d.ts +1 -1
- package/dist/extensions/actions/ai/agent.action.js +6 -3
- package/dist/extensions/actions/ai/agent.action.js.map +1 -1
- package/dist/extensions/actions/ai/ai-base.action.d.ts +1 -1
- package/dist/extensions/actions/ai/ai-base.action.js +18 -5
- package/dist/extensions/actions/ai/ai-base.action.js.map +1 -1
- package/dist/extensions/actions/ai/generate-object.base.action.d.ts +1 -1
- package/dist/extensions/actions/ai/generate-object.base.action.js +3 -2
- package/dist/extensions/actions/ai/generate-object.base.action.js.map +1 -1
- package/dist/extensions/actions/ai/generate-text.base.action.d.ts +1 -1
- package/dist/extensions/actions/ai/generate-text.base.action.js +3 -2
- package/dist/extensions/actions/ai/generate-text.base.action.js.map +1 -1
- package/dist/extensions/actions/ai/mcp.binding.js +2 -0
- package/dist/extensions/actions/ai/mcp.binding.js.map +1 -1
- package/dist/extensions/actions/ai/memory.binding.js +2 -0
- package/dist/extensions/actions/ai/memory.binding.js.map +1 -1
- package/dist/extensions/actions/ai/retrieve-content-rag.action.js +2 -0
- package/dist/extensions/actions/ai/retrieve-content-rag.action.js.map +1 -1
- package/dist/extensions/actions/messaging/list.action.d.ts +2 -2
- package/dist/extensions/actions/messaging/list.action.js +7 -0
- package/dist/extensions/actions/messaging/list.action.js.map +1 -1
- package/dist/extensions/actions/subscriber/update-labels.action.js +3 -0
- package/dist/extensions/actions/subscriber/update-labels.action.js.map +1 -1
- package/dist/extensions/actions/web/http-request.action.js +12 -1
- package/dist/extensions/actions/web/http-request.action.js.map +1 -1
- package/dist/extensions/actions/workflow/call-workflow.action.d.ts +19 -0
- package/dist/extensions/actions/workflow/call-workflow.action.js +83 -0
- package/dist/extensions/actions/workflow/call-workflow.action.js.map +1 -0
- package/dist/extensions/actions/workflow/i18n/en.translations.json +9 -0
- package/dist/extensions/actions/workflow/i18n/fr.translations.json +9 -0
- package/dist/extensions/index.d.ts +1 -0
- package/dist/extensions/index.js +1 -0
- package/dist/extensions/index.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/mcp/controllers/mcp-token.controller.d.ts +47 -0
- package/dist/mcp/controllers/mcp-token.controller.js +70 -0
- package/dist/mcp/controllers/mcp-token.controller.js.map +1 -0
- package/dist/mcp/decorators/mcp-permission.decorator.d.ts +8 -0
- package/dist/mcp/decorators/mcp-permission.decorator.js +11 -0
- package/dist/mcp/decorators/mcp-permission.decorator.js.map +1 -0
- package/dist/mcp/dto/mcp-token.dto.d.ts +17 -0
- package/dist/mcp/dto/mcp-token.dto.js +40 -0
- package/dist/mcp/dto/mcp-token.dto.js.map +1 -0
- package/dist/mcp/entities/mcp-token.entity.d.ts +111 -0
- package/dist/mcp/entities/mcp-token.entity.js +69 -0
- package/dist/mcp/entities/mcp-token.entity.js.map +1 -0
- package/dist/mcp/guards/hexabot-mcp-token.guard.d.ts +9 -0
- package/dist/mcp/guards/hexabot-mcp-token.guard.js +49 -0
- package/dist/mcp/guards/hexabot-mcp-token.guard.js.map +1 -0
- package/dist/mcp/guards/mcp-permission.guard.d.ts +9 -0
- package/dist/mcp/guards/mcp-permission.guard.js +47 -0
- package/dist/mcp/guards/mcp-permission.guard.js.map +1 -0
- package/dist/mcp/mcp-api.module.d.ts +2 -0
- package/dist/mcp/mcp-api.module.js +65 -0
- package/dist/mcp/mcp-api.module.js.map +1 -0
- package/dist/mcp/repositories/mcp-token.repository.d.ts +8 -0
- package/dist/mcp/repositories/mcp-token.repository.js +41 -0
- package/dist/mcp/repositories/mcp-token.repository.js.map +1 -0
- package/dist/mcp/services/mcp-token.service.d.ts +24 -0
- package/dist/mcp/services/mcp-token.service.js +106 -0
- package/dist/mcp/services/mcp-token.service.js.map +1 -0
- package/dist/mcp/tools/catalog-mcp.tools.d.ts +63 -0
- package/dist/mcp/tools/catalog-mcp.tools.js +135 -0
- package/dist/mcp/tools/catalog-mcp.tools.js.map +1 -0
- package/dist/mcp/tools/cms-mcp.tools.d.ts +128 -0
- package/dist/mcp/tools/cms-mcp.tools.js +242 -0
- package/dist/mcp/tools/cms-mcp.tools.js.map +1 -0
- package/dist/mcp/tools/credential-mcp.tools.d.ts +19 -0
- package/dist/mcp/tools/credential-mcp.tools.js +82 -0
- package/dist/mcp/tools/credential-mcp.tools.js.map +1 -0
- package/dist/mcp/tools/hexabot-mcp-tool.base.d.ts +22 -0
- package/dist/mcp/tools/hexabot-mcp-tool.base.js +48 -0
- package/dist/mcp/tools/hexabot-mcp-tool.base.js.map +1 -0
- package/dist/mcp/tools/hexabot-mcp.schemas.d.ts +41 -0
- package/dist/mcp/tools/hexabot-mcp.schemas.js +36 -0
- package/dist/mcp/tools/hexabot-mcp.schemas.js.map +1 -0
- package/dist/mcp/tools/hexabot-mcp.tools.d.ts +1 -0
- package/dist/mcp/tools/hexabot-mcp.tools.js +18 -0
- package/dist/mcp/tools/hexabot-mcp.tools.js.map +1 -0
- package/dist/mcp/tools/hexabot-mcp.utils.d.ts +2 -0
- package/dist/mcp/tools/hexabot-mcp.utils.js +21 -0
- package/dist/mcp/tools/hexabot-mcp.utils.js.map +1 -0
- package/dist/mcp/tools/index.d.ts +22 -0
- package/dist/mcp/tools/index.js +50 -0
- package/dist/mcp/tools/index.js.map +1 -0
- package/dist/mcp/tools/mcp-server-mcp.tools.d.ts +77 -0
- package/dist/mcp/tools/mcp-server-mcp.tools.js +130 -0
- package/dist/mcp/tools/mcp-server-mcp.tools.js.map +1 -0
- package/dist/mcp/tools/memory-definition-mcp.tools.d.ts +57 -0
- package/dist/mcp/tools/memory-definition-mcp.tools.js +128 -0
- package/dist/mcp/tools/memory-definition-mcp.tools.js.map +1 -0
- package/dist/mcp/tools/workflow-mcp.helper.d.ts +156 -0
- package/dist/mcp/tools/workflow-mcp.helper.js +128 -0
- package/dist/mcp/tools/workflow-mcp.helper.js.map +1 -0
- package/dist/mcp/tools/workflow-mcp.tools.d.ts +790 -0
- package/dist/mcp/tools/workflow-mcp.tools.js +227 -0
- package/dist/mcp/tools/workflow-mcp.tools.js.map +1 -0
- package/dist/mcp/tools/workflow-run-mcp.tools.d.ts +349 -0
- package/dist/mcp/tools/workflow-run-mcp.tools.js +242 -0
- package/dist/mcp/tools/workflow-run-mcp.tools.js.map +1 -0
- package/dist/mcp/tools/workflow-version-mcp.tools.d.ts +238 -0
- package/dist/mcp/tools/workflow-version-mcp.tools.js +368 -0
- package/dist/mcp/tools/workflow-version-mcp.tools.js.map +1 -0
- package/dist/mcp/types.d.ts +7 -0
- package/dist/mcp/types.js +3 -0
- package/dist/mcp/types.js.map +1 -0
- package/dist/static/assets/{browser-ponyfill-Qk7qpw-i.js → browser-ponyfill-AQYxeOz6.js} +1 -1
- package/dist/static/assets/{cssMode-CdhvY6oD.js → cssMode-CU7XHFDD.js} +1 -1
- package/dist/static/assets/{freemarker2-BPoURZH1.js → freemarker2-DA_oH4Qs.js} +1 -1
- package/dist/static/assets/{handlebars-C4oubER1.js → handlebars-DXFzBSlw.js} +1 -1
- package/dist/static/assets/{html-CDE5RgVN.js → html-CnQNXujK.js} +1 -1
- package/dist/static/assets/{htmlMode-C8edIUUq.js → htmlMode-BpX8KTMR.js} +1 -1
- package/dist/static/assets/{index-C1NxBXuS.js → index-BIqNbcu4.js} +2379 -2330
- package/dist/static/assets/{index-BI1BtkYv.css → index-D-b9KTZd.css} +1 -1
- package/dist/static/assets/{javascript-Wp5m7adK.js → javascript-DeoOxUBN.js} +1 -1
- package/dist/static/assets/{jsonMode-0eww5Srr.js → jsonMode-YGmaNoOG.js} +1 -1
- package/dist/static/assets/{liquid-DTktXITv.js → liquid-K6wF5n3k.js} +1 -1
- package/dist/static/assets/{lspLanguageFeatures-BzIRlKhn.js → lspLanguageFeatures-DFIoRPyQ.js} +1 -1
- package/dist/static/assets/{mdx-D508emqD.js → mdx-CWEgpRjI.js} +1 -1
- package/dist/static/assets/{python-BfhIq2kX.js → python-22vBz2Ov.js} +1 -1
- package/dist/static/assets/{razor-C7F8fOds.js → razor-CEUwDwv_.js} +1 -1
- package/dist/static/assets/{tsMode-B8zPu6Wl.js → tsMode-kpHfzhoP.js} +1 -1
- package/dist/static/assets/{typescript-Dew3VavZ.js → typescript-PCkEoDOe.js} +1 -1
- package/dist/static/assets/{xml-B_2tc6Mh.js → xml-OzOqd-hy.js} +1 -1
- package/dist/static/assets/{yaml-pHcw4KrS.js → yaml-B3P_vvCy.js} +1 -1
- package/dist/static/index.html +2 -2
- package/dist/static/locales/en/translation.json +89 -4
- package/dist/static/locales/fr/translation.json +90 -5
- package/dist/transfer/adapters/content-type-transfer.adapter.d.ts +14 -0
- package/dist/transfer/adapters/content-type-transfer.adapter.js +102 -0
- package/dist/transfer/adapters/content-type-transfer.adapter.js.map +1 -0
- package/dist/transfer/adapters/credential-transfer.adapter.d.ts +13 -0
- package/dist/transfer/adapters/credential-transfer.adapter.js +110 -0
- package/dist/transfer/adapters/credential-transfer.adapter.js.map +1 -0
- package/dist/transfer/adapters/label-transfer.adapter.d.ts +15 -0
- package/dist/transfer/adapters/label-transfer.adapter.js +189 -0
- package/dist/transfer/adapters/label-transfer.adapter.js.map +1 -0
- package/dist/transfer/adapters/mcp-server-transfer.adapter.d.ts +16 -0
- package/dist/transfer/adapters/mcp-server-transfer.adapter.js +169 -0
- package/dist/transfer/adapters/mcp-server-transfer.adapter.js.map +1 -0
- package/dist/transfer/adapters/memory-definition-transfer.adapter.d.ts +14 -0
- package/dist/transfer/adapters/memory-definition-transfer.adapter.js +111 -0
- package/dist/transfer/adapters/memory-definition-transfer.adapter.js.map +1 -0
- package/dist/transfer/index.d.ts +7 -0
- package/dist/transfer/index.js +24 -0
- package/dist/transfer/index.js.map +1 -0
- package/dist/transfer/workflow-transfer-adapter.registry.d.ts +27 -0
- package/dist/transfer/workflow-transfer-adapter.registry.js +164 -0
- package/dist/transfer/workflow-transfer-adapter.registry.js.map +1 -0
- package/dist/transfer/workflow-transfer-definition.service.d.ts +40 -0
- package/dist/transfer/workflow-transfer-definition.service.js +353 -0
- package/dist/transfer/workflow-transfer-definition.service.js.map +1 -0
- package/dist/transfer/workflow-transfer-resource-adapter.d.ts +33 -0
- package/dist/transfer/workflow-transfer-resource-adapter.js +81 -0
- package/dist/transfer/workflow-transfer-resource-adapter.js.map +1 -0
- package/dist/transfer/workflow-transfer.controller.d.ts +9 -0
- package/dist/transfer/workflow-transfer.controller.js +63 -0
- package/dist/transfer/workflow-transfer.controller.js.map +1 -0
- package/dist/transfer/workflow-transfer.module.d.ts +2 -0
- package/dist/transfer/workflow-transfer.module.js +47 -0
- package/dist/transfer/workflow-transfer.module.js.map +1 -0
- package/dist/transfer/workflow-transfer.service.d.ts +51 -0
- package/dist/transfer/workflow-transfer.service.js +509 -0
- package/dist/transfer/workflow-transfer.service.js.map +1 -0
- package/dist/transfer/workflow-transfer.types.d.ts +31 -0
- package/dist/transfer/workflow-transfer.types.js +35 -0
- package/dist/transfer/workflow-transfer.types.js.map +1 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/types/event-emitter.d.ts +12 -5
- package/dist/user/dto/user.dto.d.ts +1 -1
- package/dist/user/guards/ability.guard.js +12 -2
- package/dist/user/guards/ability.guard.js.map +1 -1
- package/dist/utils/test/fixtures/label-group.d.ts +1 -1
- package/dist/utils/test/fixtures/label.d.ts +1 -1
- package/dist/utils/test/fixtures/subscriber.d.ts +1 -1
- package/dist/utils/test/fixtures/workflow-run.js +4 -1
- package/dist/utils/test/fixtures/workflow-run.js.map +1 -1
- package/dist/utils/test/port.d.ts +8 -0
- package/dist/utils/test/port.js +34 -0
- package/dist/utils/test/port.js.map +1 -0
- package/dist/websocket/websocket.gateway.d.ts +2 -1
- package/dist/websocket/websocket.gateway.js.map +1 -1
- package/dist/workflow/contexts/workflow-runtime.context.d.ts +3 -1
- package/dist/workflow/contexts/workflow-runtime.context.js +5 -0
- package/dist/workflow/contexts/workflow-runtime.context.js.map +1 -1
- package/dist/workflow/controllers/workflow-run.controller.js +2 -0
- package/dist/workflow/controllers/workflow-run.controller.js.map +1 -1
- package/dist/workflow/dto/workflow-run.dto.d.ts +1 -0
- package/dist/workflow/dto/workflow-run.dto.js +11 -0
- package/dist/workflow/dto/workflow-run.dto.js.map +1 -1
- package/dist/workflow/entities/memory-record.entity.d.ts +2 -0
- package/dist/workflow/entities/workflow-run.entity.d.ts +62 -0
- package/dist/workflow/entities/workflow-run.entity.js +15 -1
- package/dist/workflow/entities/workflow-run.entity.js.map +1 -1
- package/dist/workflow/index.d.ts +7 -0
- package/dist/workflow/index.js +7 -0
- package/dist/workflow/index.js.map +1 -1
- package/dist/workflow/repositories/workflow-run.repository.js +7 -1
- package/dist/workflow/repositories/workflow-run.repository.js.map +1 -1
- package/dist/workflow/resource-refs.d.ts +17 -0
- package/dist/workflow/resource-refs.js +15 -0
- package/dist/workflow/resource-refs.js.map +1 -0
- package/dist/workflow/services/agentic.service.d.ts +9 -2
- package/dist/workflow/services/agentic.service.js +142 -19
- package/dist/workflow/services/agentic.service.js.map +1 -1
- package/dist/workflow/services/workflow-run.service.d.ts +3 -0
- package/dist/workflow/services/workflow-run.service.js +75 -3
- package/dist/workflow/services/workflow-run.service.js.map +1 -1
- package/dist/workflow/services/workflow-version.service.d.ts +2 -0
- package/dist/workflow/services/workflow-version.service.js +19 -0
- package/dist/workflow/services/workflow-version.service.js.map +1 -1
- package/dist/workflow/services/workflow.service.d.ts +13 -9
- package/dist/workflow/services/workflow.service.js +64 -35
- package/dist/workflow/services/workflow.service.js.map +1 -1
- package/dist/workflow/types.d.ts +31 -0
- package/dist/workflow/types.js +2 -1
- package/dist/workflow/types.js.map +1 -1
- package/dist/workflow/workflow.module.js +3 -0
- package/dist/workflow/workflow.module.js.map +1 -1
- package/package.json +7 -5
- package/src/actions/actions.service.ts +34 -4
- package/src/actions/types.ts +6 -5
- package/src/app.controller.ts +1 -0
- package/src/app.module.ts +17 -1
- package/src/config/index.ts +17 -2
- package/src/config/types.ts +9 -0
- package/src/extensions/actions/ai/agent.action.ts +6 -1
- package/src/extensions/actions/ai/ai-base.action.ts +39 -5
- package/src/extensions/actions/ai/generate-object.base.action.ts +3 -0
- package/src/extensions/actions/ai/generate-text.base.action.ts +3 -0
- package/src/extensions/actions/ai/mcp.binding.ts +2 -0
- package/src/extensions/actions/ai/memory.binding.ts +2 -0
- package/src/extensions/actions/ai/retrieve-content-rag.action.ts +2 -0
- package/src/extensions/actions/messaging/list.action.ts +7 -0
- package/src/extensions/actions/subscriber/update-labels.action.ts +3 -0
- package/src/extensions/actions/web/http-request.action.ts +17 -1
- package/src/extensions/actions/workflow/call-workflow.action.ts +112 -0
- package/src/extensions/actions/workflow/i18n/en.translations.json +9 -0
- package/src/extensions/actions/workflow/i18n/fr.translations.json +9 -0
- package/src/extensions/index.ts +2 -0
- package/src/index.ts +2 -0
- package/src/mcp/README.md +277 -0
- package/src/mcp/controllers/mcp-token.controller.ts +64 -0
- package/src/mcp/decorators/mcp-permission.decorator.ts +23 -0
- package/src/mcp/dto/mcp-token.dto.ts +48 -0
- package/src/mcp/entities/mcp-token.entity.ts +60 -0
- package/src/mcp/guards/hexabot-mcp-token.guard.ts +55 -0
- package/src/mcp/guards/mcp-permission.guard.ts +61 -0
- package/src/mcp/mcp-api.module.ts +61 -0
- package/src/mcp/repositories/mcp-token.repository.ts +34 -0
- package/src/mcp/services/mcp-token.service.ts +138 -0
- package/src/mcp/tools/catalog-mcp.tools.ts +122 -0
- package/src/mcp/tools/cms-mcp.tools.ts +239 -0
- package/src/mcp/tools/credential-mcp.tools.ts +81 -0
- package/src/mcp/tools/hexabot-mcp-tool.base.ts +74 -0
- package/src/mcp/tools/hexabot-mcp.schemas.ts +55 -0
- package/src/mcp/tools/hexabot-mcp.tools.ts +7 -0
- package/src/mcp/tools/hexabot-mcp.utils.ts +29 -0
- package/src/mcp/tools/index.ts +51 -0
- package/src/mcp/tools/mcp-server-mcp.tools.ts +135 -0
- package/src/mcp/tools/memory-definition-mcp.tools.ts +125 -0
- package/src/mcp/tools/workflow-mcp.helper.ts +219 -0
- package/src/mcp/tools/workflow-mcp.tools.ts +271 -0
- package/src/mcp/tools/workflow-run-mcp.tools.ts +292 -0
- package/src/mcp/tools/workflow-version-mcp.tools.ts +459 -0
- package/src/mcp/types.ts +14 -0
- package/src/transfer/adapters/content-type-transfer.adapter.ts +154 -0
- package/src/transfer/adapters/credential-transfer.adapter.ts +158 -0
- package/src/transfer/adapters/label-transfer.adapter.ts +291 -0
- package/src/transfer/adapters/mcp-server-transfer.adapter.ts +255 -0
- package/src/transfer/adapters/memory-definition-transfer.adapter.ts +167 -0
- package/src/transfer/index.ts +19 -0
- package/src/transfer/workflow-transfer-adapter.registry.ts +250 -0
- package/src/transfer/workflow-transfer-definition.service.ts +587 -0
- package/src/transfer/workflow-transfer-resource-adapter.ts +132 -0
- package/src/transfer/workflow-transfer.controller.ts +86 -0
- package/src/transfer/workflow-transfer.module.ts +46 -0
- package/src/transfer/workflow-transfer.service.ts +858 -0
- package/src/transfer/workflow-transfer.types.ts +98 -0
- package/src/user/guards/ability.guard.ts +15 -3
- package/src/utils/test/fixtures/workflow-run.ts +4 -1
- package/src/utils/test/port.ts +48 -0
- package/src/websocket/websocket.gateway.ts +2 -1
- package/src/workflow/contexts/workflow-runtime.context.ts +12 -1
- package/src/workflow/controllers/workflow-run.controller.ts +2 -0
- package/src/workflow/dto/workflow-run.dto.ts +10 -0
- package/src/workflow/entities/workflow-run.entity.ts +22 -1
- package/src/workflow/index.ts +14 -0
- package/src/workflow/repositories/workflow-run.repository.ts +7 -1
- package/src/workflow/resource-refs.ts +44 -0
- package/src/workflow/services/agentic.service.ts +271 -30
- package/src/workflow/services/workflow-run.service.ts +120 -7
- package/src/workflow/services/workflow-version.service.ts +33 -0
- package/src/workflow/services/workflow.service.ts +86 -31
- package/src/workflow/types.ts +52 -0
- package/src/workflow/workflow.module.ts +3 -0
- package/types/event-emitter.d.ts +12 -5
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.HexabotWorkflowMcpTools = void 0;
|
|
13
|
+
const types_1 = require("@hexabot-ai/types");
|
|
14
|
+
const common_1 = require("@nestjs/common");
|
|
15
|
+
const mcp_nest_1 = require("@rekog/mcp-nest");
|
|
16
|
+
const zod_1 = require("zod");
|
|
17
|
+
const workflow_service_1 = require("../../workflow/services/workflow.service");
|
|
18
|
+
const types_2 = require("../../workflow/types");
|
|
19
|
+
const mcp_permission_decorator_1 = require("../decorators/mcp-permission.decorator");
|
|
20
|
+
const mcp_permission_guard_1 = require("../guards/mcp-permission.guard");
|
|
21
|
+
const hexabot_mcp_tool_base_1 = require("./hexabot-mcp-tool.base");
|
|
22
|
+
const hexabot_mcp_schemas_1 = require("./hexabot-mcp.schemas");
|
|
23
|
+
const workflow_mcp_helper_1 = require("./workflow-mcp.helper");
|
|
24
|
+
let HexabotWorkflowMcpTools = class HexabotWorkflowMcpTools extends hexabot_mcp_tool_base_1.HexabotMcpToolBase {
|
|
25
|
+
constructor(workflowService, workflowHelper) {
|
|
26
|
+
super();
|
|
27
|
+
this.workflowService = workflowService;
|
|
28
|
+
this.workflowHelper = workflowHelper;
|
|
29
|
+
}
|
|
30
|
+
async searchWorkflows(args) {
|
|
31
|
+
const where = this.buildWorkflowWhere(args);
|
|
32
|
+
const options = this.findOptions(args, where);
|
|
33
|
+
const result = await this.listWithCount(this.workflowService, options);
|
|
34
|
+
return {
|
|
35
|
+
...result,
|
|
36
|
+
items: result.items.map((workflow) => this.workflowHelper.summarizeWorkflow(workflow)),
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
async getWorkflow(args) {
|
|
40
|
+
const workflow = await this.workflowHelper.requireWorkflow(args.id);
|
|
41
|
+
return this.workflowHelper.summarizeWorkflow(workflow);
|
|
42
|
+
}
|
|
43
|
+
async getWorkflowVersionStatus(args) {
|
|
44
|
+
const workflow = await this.workflowHelper.requireWorkflow(args.id);
|
|
45
|
+
return this.workflowHelper.buildWorkflowVersionStatus(workflow);
|
|
46
|
+
}
|
|
47
|
+
async createWorkflow(args, _context, request) {
|
|
48
|
+
const actorId = this.getActorId(request);
|
|
49
|
+
const { definitionYml, versionMessage, ...workflowPayload } = args;
|
|
50
|
+
const workflow = await this.workflowService.create({
|
|
51
|
+
...workflowPayload,
|
|
52
|
+
createdBy: actorId,
|
|
53
|
+
});
|
|
54
|
+
if (definitionYml) {
|
|
55
|
+
await this.workflowHelper.commitWorkflowDefinition({
|
|
56
|
+
workflowId: workflow.id,
|
|
57
|
+
definitionYml,
|
|
58
|
+
message: versionMessage,
|
|
59
|
+
action: types_2.WorkflowVersionAction.update,
|
|
60
|
+
createdBy: actorId,
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
return this.workflowHelper.summarizeWorkflow(await this.workflowHelper.requireWorkflow(workflow.id));
|
|
64
|
+
}
|
|
65
|
+
async updateWorkflow(args, _context, request) {
|
|
66
|
+
const actorId = this.getActorId(request);
|
|
67
|
+
const { id, definitionYml, versionMessage, ...updates } = args;
|
|
68
|
+
await this.workflowHelper.requireWorkflow(id);
|
|
69
|
+
if (Object.keys(updates).length > 0) {
|
|
70
|
+
await this.workflowService.updateOne(id, updates);
|
|
71
|
+
}
|
|
72
|
+
if (definitionYml) {
|
|
73
|
+
await this.workflowHelper.commitWorkflowDefinition({
|
|
74
|
+
workflowId: id,
|
|
75
|
+
definitionYml,
|
|
76
|
+
message: versionMessage,
|
|
77
|
+
action: types_2.WorkflowVersionAction.update,
|
|
78
|
+
createdBy: actorId,
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
return this.workflowHelper.summarizeWorkflow(await this.workflowHelper.requireWorkflow(id));
|
|
82
|
+
}
|
|
83
|
+
async publishWorkflow(args) {
|
|
84
|
+
const workflow = await this.workflowService.findOne(args.id);
|
|
85
|
+
if (!workflow) {
|
|
86
|
+
throw new common_1.NotFoundException(`Workflow ${args.id} not found`);
|
|
87
|
+
}
|
|
88
|
+
if (!workflow.currentVersion) {
|
|
89
|
+
throw new common_1.BadRequestException('Workflow must have a current version to be published');
|
|
90
|
+
}
|
|
91
|
+
await this.workflowService.updateOne(args.id, {
|
|
92
|
+
publishedVersion: workflow.currentVersion,
|
|
93
|
+
});
|
|
94
|
+
return this.workflowHelper.summarizeWorkflow(await this.workflowHelper.requireWorkflow(args.id));
|
|
95
|
+
}
|
|
96
|
+
async unpublishWorkflow(args) {
|
|
97
|
+
await this.workflowHelper.requireWorkflow(args.id);
|
|
98
|
+
await this.workflowService.updateOne(args.id, { publishedVersion: null });
|
|
99
|
+
return this.workflowHelper.summarizeWorkflow(await this.workflowHelper.requireWorkflow(args.id));
|
|
100
|
+
}
|
|
101
|
+
buildWorkflowWhere(args) {
|
|
102
|
+
const base = {
|
|
103
|
+
...(args.type ? { type: args.type } : {}),
|
|
104
|
+
...(args.createdById ? { createdBy: { id: args.createdById } } : {}),
|
|
105
|
+
};
|
|
106
|
+
return args.query
|
|
107
|
+
? [
|
|
108
|
+
{ ...base, name: this.contains(args.query) },
|
|
109
|
+
{ ...base, description: this.contains(args.query) },
|
|
110
|
+
]
|
|
111
|
+
: base;
|
|
112
|
+
}
|
|
113
|
+
};
|
|
114
|
+
exports.HexabotWorkflowMcpTools = HexabotWorkflowMcpTools;
|
|
115
|
+
__decorate([
|
|
116
|
+
(0, mcp_permission_decorator_1.McpPermission)('workflow', types_1.Action.READ),
|
|
117
|
+
(0, mcp_nest_1.ToolGuards)([mcp_permission_guard_1.McpPermissionGuard]),
|
|
118
|
+
(0, mcp_nest_1.Tool)({
|
|
119
|
+
name: 'hexabot_workflow_search',
|
|
120
|
+
description: 'Search Hexabot workflows by metadata.',
|
|
121
|
+
parameters: zod_1.z.object({
|
|
122
|
+
query: zod_1.z.string().optional(),
|
|
123
|
+
type: zod_1.z.enum(types_2.WorkflowType).optional(),
|
|
124
|
+
createdById: hexabot_mcp_schemas_1.uuidSchema.optional(),
|
|
125
|
+
...hexabot_mcp_schemas_1.paginationSchema,
|
|
126
|
+
}),
|
|
127
|
+
}),
|
|
128
|
+
__metadata("design:type", Function),
|
|
129
|
+
__metadata("design:paramtypes", [Object]),
|
|
130
|
+
__metadata("design:returntype", Promise)
|
|
131
|
+
], HexabotWorkflowMcpTools.prototype, "searchWorkflows", null);
|
|
132
|
+
__decorate([
|
|
133
|
+
(0, mcp_permission_decorator_1.McpPermission)('workflow', types_1.Action.READ),
|
|
134
|
+
(0, mcp_nest_1.ToolGuards)([mcp_permission_guard_1.McpPermissionGuard]),
|
|
135
|
+
(0, mcp_nest_1.Tool)({
|
|
136
|
+
name: 'hexabot_workflow_get',
|
|
137
|
+
description: 'Read a Hexabot workflow with compact version metadata, excluding YAML definition bodies.',
|
|
138
|
+
parameters: zod_1.z.object({
|
|
139
|
+
id: hexabot_mcp_schemas_1.uuidSchema,
|
|
140
|
+
}),
|
|
141
|
+
}),
|
|
142
|
+
__metadata("design:type", Function),
|
|
143
|
+
__metadata("design:paramtypes", [Object]),
|
|
144
|
+
__metadata("design:returntype", Promise)
|
|
145
|
+
], HexabotWorkflowMcpTools.prototype, "getWorkflow", null);
|
|
146
|
+
__decorate([
|
|
147
|
+
(0, mcp_permission_decorator_1.McpPermission)('workflow', types_1.Action.READ),
|
|
148
|
+
(0, mcp_nest_1.ToolGuards)([mcp_permission_guard_1.McpPermissionGuard]),
|
|
149
|
+
(0, mcp_nest_1.Tool)({
|
|
150
|
+
name: 'hexabot_workflow_version_status',
|
|
151
|
+
description: 'Check the current and published version pointers for one workflow.',
|
|
152
|
+
parameters: zod_1.z.object({
|
|
153
|
+
id: hexabot_mcp_schemas_1.uuidSchema,
|
|
154
|
+
}),
|
|
155
|
+
}),
|
|
156
|
+
__metadata("design:type", Function),
|
|
157
|
+
__metadata("design:paramtypes", [Object]),
|
|
158
|
+
__metadata("design:returntype", Promise)
|
|
159
|
+
], HexabotWorkflowMcpTools.prototype, "getWorkflowVersionStatus", null);
|
|
160
|
+
__decorate([
|
|
161
|
+
(0, mcp_permission_decorator_1.McpPermission)('workflow', types_1.Action.CREATE),
|
|
162
|
+
(0, mcp_nest_1.ToolGuards)([mcp_permission_guard_1.McpPermissionGuard]),
|
|
163
|
+
(0, mcp_nest_1.Tool)({
|
|
164
|
+
name: 'hexabot_workflow_create',
|
|
165
|
+
description: 'Create a Hexabot workflow. Optionally commit an initial workflow definition YAML.',
|
|
166
|
+
parameters: zod_1.z.object({
|
|
167
|
+
...hexabot_mcp_schemas_1.workflowPayloadSchema,
|
|
168
|
+
name: zod_1.z.string().min(1),
|
|
169
|
+
definitionYml: zod_1.z.string().optional(),
|
|
170
|
+
versionMessage: zod_1.z.string().optional(),
|
|
171
|
+
}),
|
|
172
|
+
}),
|
|
173
|
+
__metadata("design:type", Function),
|
|
174
|
+
__metadata("design:paramtypes", [Object, Object, Object]),
|
|
175
|
+
__metadata("design:returntype", Promise)
|
|
176
|
+
], HexabotWorkflowMcpTools.prototype, "createWorkflow", null);
|
|
177
|
+
__decorate([
|
|
178
|
+
(0, mcp_permission_decorator_1.McpPermission)('workflow', types_1.Action.UPDATE),
|
|
179
|
+
(0, mcp_nest_1.ToolGuards)([mcp_permission_guard_1.McpPermissionGuard]),
|
|
180
|
+
(0, mcp_nest_1.Tool)({
|
|
181
|
+
name: 'hexabot_workflow_update',
|
|
182
|
+
description: 'Update workflow metadata. Optionally commit a new workflow definition YAML version.',
|
|
183
|
+
parameters: zod_1.z.object({
|
|
184
|
+
id: hexabot_mcp_schemas_1.uuidSchema,
|
|
185
|
+
...hexabot_mcp_schemas_1.workflowPayloadSchema,
|
|
186
|
+
definitionYml: zod_1.z.string().optional(),
|
|
187
|
+
versionMessage: zod_1.z.string().optional(),
|
|
188
|
+
}),
|
|
189
|
+
}),
|
|
190
|
+
__metadata("design:type", Function),
|
|
191
|
+
__metadata("design:paramtypes", [Object, Object, Object]),
|
|
192
|
+
__metadata("design:returntype", Promise)
|
|
193
|
+
], HexabotWorkflowMcpTools.prototype, "updateWorkflow", null);
|
|
194
|
+
__decorate([
|
|
195
|
+
(0, mcp_permission_decorator_1.McpPermission)('workflow', types_1.Action.UPDATE),
|
|
196
|
+
(0, mcp_nest_1.ToolGuards)([mcp_permission_guard_1.McpPermissionGuard]),
|
|
197
|
+
(0, mcp_nest_1.Tool)({
|
|
198
|
+
name: 'hexabot_workflow_publish',
|
|
199
|
+
description: 'Publish the current workflow version.',
|
|
200
|
+
parameters: zod_1.z.object({
|
|
201
|
+
id: hexabot_mcp_schemas_1.uuidSchema,
|
|
202
|
+
}),
|
|
203
|
+
}),
|
|
204
|
+
__metadata("design:type", Function),
|
|
205
|
+
__metadata("design:paramtypes", [Object]),
|
|
206
|
+
__metadata("design:returntype", Promise)
|
|
207
|
+
], HexabotWorkflowMcpTools.prototype, "publishWorkflow", null);
|
|
208
|
+
__decorate([
|
|
209
|
+
(0, mcp_permission_decorator_1.McpPermission)('workflow', types_1.Action.UPDATE),
|
|
210
|
+
(0, mcp_nest_1.ToolGuards)([mcp_permission_guard_1.McpPermissionGuard]),
|
|
211
|
+
(0, mcp_nest_1.Tool)({
|
|
212
|
+
name: 'hexabot_workflow_unpublish',
|
|
213
|
+
description: 'Clear the published workflow version.',
|
|
214
|
+
parameters: zod_1.z.object({
|
|
215
|
+
id: hexabot_mcp_schemas_1.uuidSchema,
|
|
216
|
+
}),
|
|
217
|
+
}),
|
|
218
|
+
__metadata("design:type", Function),
|
|
219
|
+
__metadata("design:paramtypes", [Object]),
|
|
220
|
+
__metadata("design:returntype", Promise)
|
|
221
|
+
], HexabotWorkflowMcpTools.prototype, "unpublishWorkflow", null);
|
|
222
|
+
exports.HexabotWorkflowMcpTools = HexabotWorkflowMcpTools = __decorate([
|
|
223
|
+
(0, common_1.Injectable)(),
|
|
224
|
+
__metadata("design:paramtypes", [workflow_service_1.WorkflowService,
|
|
225
|
+
workflow_mcp_helper_1.HexabotWorkflowMcpHelper])
|
|
226
|
+
], HexabotWorkflowMcpTools);
|
|
227
|
+
//# sourceMappingURL=workflow-mcp.tools.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-mcp.tools.js","sourceRoot":"","sources":["../../../src/mcp/tools/workflow-mcp.tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,349 @@
|
|
|
1
|
+
import { AgenticService } from "../../workflow/services/agentic.service";
|
|
2
|
+
import { WorkflowRunService } from "../../workflow/services/workflow-run.service";
|
|
3
|
+
import { WorkflowService } from "../../workflow/services/workflow.service";
|
|
4
|
+
import { WorkflowType } from "../../workflow/types";
|
|
5
|
+
import { HexabotMcpRequest } from '../types';
|
|
6
|
+
import { HexabotMcpToolBase } from './hexabot-mcp-tool.base';
|
|
7
|
+
import { PaginationArgs } from './hexabot-mcp.schemas';
|
|
8
|
+
export declare class HexabotWorkflowRunMcpTools extends HexabotMcpToolBase {
|
|
9
|
+
private readonly workflowService;
|
|
10
|
+
private readonly workflowRunService;
|
|
11
|
+
private readonly agenticService;
|
|
12
|
+
constructor(workflowService: WorkflowService, workflowRunService: WorkflowRunService, agenticService: AgenticService);
|
|
13
|
+
runWorkflow(args: {
|
|
14
|
+
workflowId: string;
|
|
15
|
+
input: Record<string, unknown>;
|
|
16
|
+
}, _context: unknown, request?: HexabotMcpRequest): Promise<{
|
|
17
|
+
accepted: boolean;
|
|
18
|
+
run: {
|
|
19
|
+
id: string;
|
|
20
|
+
createdAt: Date;
|
|
21
|
+
updatedAt: Date;
|
|
22
|
+
status: "idle" | "running" | "suspended" | "finished" | "failed";
|
|
23
|
+
input: Record<string, any> | null;
|
|
24
|
+
output: Record<string, any> | null;
|
|
25
|
+
context: Record<string, any>;
|
|
26
|
+
snapshot: any;
|
|
27
|
+
stepLog: Record<string, any> | null;
|
|
28
|
+
suspendedStep: string | null;
|
|
29
|
+
suspensionReason: string | null;
|
|
30
|
+
suspensionData: unknown;
|
|
31
|
+
suspensionStepExecId: string | null;
|
|
32
|
+
suspensionIndex: number | null;
|
|
33
|
+
suspensionKey: string | null;
|
|
34
|
+
suspensionAwaitResults: Record<string, any> | null;
|
|
35
|
+
lastResumeData: unknown;
|
|
36
|
+
error: string | null;
|
|
37
|
+
suspendedAt: Date | null;
|
|
38
|
+
finishedAt: Date | null;
|
|
39
|
+
failedAt: Date | null;
|
|
40
|
+
duration: number | null;
|
|
41
|
+
metadata: Record<string, any> | null;
|
|
42
|
+
workflow: {
|
|
43
|
+
id: string;
|
|
44
|
+
createdAt: Date;
|
|
45
|
+
updatedAt: Date;
|
|
46
|
+
name: string;
|
|
47
|
+
description: string | null;
|
|
48
|
+
type: import("@hexabot-ai/types/dist/types/workflow/domain").WorkflowType;
|
|
49
|
+
schedule: string | null;
|
|
50
|
+
inputSchema: any;
|
|
51
|
+
builtin: boolean;
|
|
52
|
+
x: number;
|
|
53
|
+
y: number;
|
|
54
|
+
zoom: number;
|
|
55
|
+
direction: import("@hexabot-ai/types").DirectionType;
|
|
56
|
+
createdBy: string | null;
|
|
57
|
+
runAfterMs: number;
|
|
58
|
+
currentVersion?: string | null | undefined;
|
|
59
|
+
publishedVersion?: string | null | undefined;
|
|
60
|
+
};
|
|
61
|
+
triggeredBy: {
|
|
62
|
+
id: string;
|
|
63
|
+
createdAt: Date;
|
|
64
|
+
updatedAt: Date;
|
|
65
|
+
firstName: string;
|
|
66
|
+
lastName: string;
|
|
67
|
+
language: string | null;
|
|
68
|
+
timezone: number;
|
|
69
|
+
locale: string | null;
|
|
70
|
+
gender: string | null;
|
|
71
|
+
country: string | null;
|
|
72
|
+
foreignId: string | null;
|
|
73
|
+
assignedAt: Date | null;
|
|
74
|
+
lastvisit: Date | null;
|
|
75
|
+
retainedFrom: Date | null;
|
|
76
|
+
channel: {
|
|
77
|
+
name: string | null;
|
|
78
|
+
data?: Record<string, any> | null | undefined;
|
|
79
|
+
};
|
|
80
|
+
labels: string[];
|
|
81
|
+
assignedTo: string | null;
|
|
82
|
+
avatar: string | null;
|
|
83
|
+
source: string | null;
|
|
84
|
+
} | {
|
|
85
|
+
id: string;
|
|
86
|
+
createdAt: Date;
|
|
87
|
+
updatedAt: Date;
|
|
88
|
+
firstName: string;
|
|
89
|
+
lastName: string;
|
|
90
|
+
language: string | null;
|
|
91
|
+
timezone: number;
|
|
92
|
+
locale: string | null;
|
|
93
|
+
gender: string | null;
|
|
94
|
+
country: string | null;
|
|
95
|
+
foreignId: string | null;
|
|
96
|
+
assignedAt: Date | null;
|
|
97
|
+
lastvisit: Date | null;
|
|
98
|
+
retainedFrom: Date | null;
|
|
99
|
+
channel: {
|
|
100
|
+
name: string | null;
|
|
101
|
+
data?: Record<string, any> | null | undefined;
|
|
102
|
+
};
|
|
103
|
+
username: string;
|
|
104
|
+
email: string;
|
|
105
|
+
sendEmail: boolean;
|
|
106
|
+
state: boolean;
|
|
107
|
+
resetCount: number;
|
|
108
|
+
resetToken: string | null;
|
|
109
|
+
labels: string[];
|
|
110
|
+
assignedTo: string | null;
|
|
111
|
+
roles: string[];
|
|
112
|
+
avatar: string | null;
|
|
113
|
+
provider?: {
|
|
114
|
+
strategy: "local";
|
|
115
|
+
sub?: string | undefined;
|
|
116
|
+
} | undefined;
|
|
117
|
+
} | null;
|
|
118
|
+
workflowVersion?: {
|
|
119
|
+
id: string;
|
|
120
|
+
createdAt: Date;
|
|
121
|
+
updatedAt: Date;
|
|
122
|
+
version: number;
|
|
123
|
+
definitionYml: string;
|
|
124
|
+
checksum: string;
|
|
125
|
+
message: string | null;
|
|
126
|
+
action: import("@hexabot-ai/types").WorkflowVersionAction | null;
|
|
127
|
+
parentVersion: string | null;
|
|
128
|
+
workflow: string;
|
|
129
|
+
createdBy: string | null;
|
|
130
|
+
} | null | undefined;
|
|
131
|
+
thread?: {
|
|
132
|
+
id: string;
|
|
133
|
+
createdAt: Date;
|
|
134
|
+
updatedAt: Date;
|
|
135
|
+
status: "open" | "closed";
|
|
136
|
+
subscriber: string;
|
|
137
|
+
source: string;
|
|
138
|
+
lastMessageAt?: Date | null | undefined;
|
|
139
|
+
closedAt?: Date | null | undefined;
|
|
140
|
+
closeReason?: "manual" | "inactivity" | null | undefined;
|
|
141
|
+
title?: string | null | undefined;
|
|
142
|
+
} | null | undefined;
|
|
143
|
+
parentRun?: {
|
|
144
|
+
id: string;
|
|
145
|
+
createdAt: Date;
|
|
146
|
+
updatedAt: Date;
|
|
147
|
+
status: "idle" | "running" | "suspended" | "finished" | "failed";
|
|
148
|
+
input: Record<string, any> | null;
|
|
149
|
+
output: Record<string, any> | null;
|
|
150
|
+
context: Record<string, any>;
|
|
151
|
+
snapshot: any;
|
|
152
|
+
stepLog: Record<string, any> | null;
|
|
153
|
+
suspendedStep: string | null;
|
|
154
|
+
suspensionReason: string | null;
|
|
155
|
+
suspensionData: unknown;
|
|
156
|
+
suspensionStepExecId: string | null;
|
|
157
|
+
suspensionIndex: number | null;
|
|
158
|
+
suspensionKey: string | null;
|
|
159
|
+
suspensionAwaitResults: Record<string, any> | null;
|
|
160
|
+
lastResumeData: unknown;
|
|
161
|
+
error: string | null;
|
|
162
|
+
suspendedAt: Date | null;
|
|
163
|
+
finishedAt: Date | null;
|
|
164
|
+
failedAt: Date | null;
|
|
165
|
+
duration: number | null;
|
|
166
|
+
metadata: Record<string, any> | null;
|
|
167
|
+
workflow: string;
|
|
168
|
+
workflowVersion: string | null;
|
|
169
|
+
triggeredBy: string | null;
|
|
170
|
+
parentRun: string | null;
|
|
171
|
+
} | null | undefined;
|
|
172
|
+
} | null;
|
|
173
|
+
}>;
|
|
174
|
+
searchWorkflowRuns(args: {
|
|
175
|
+
workflowId?: string;
|
|
176
|
+
status?: string;
|
|
177
|
+
} & PaginationArgs): Promise<{
|
|
178
|
+
items: unknown[];
|
|
179
|
+
total: number;
|
|
180
|
+
limit: number | undefined;
|
|
181
|
+
skip: number | undefined;
|
|
182
|
+
}>;
|
|
183
|
+
getWorkflowRun(args: {
|
|
184
|
+
id: string;
|
|
185
|
+
}): Promise<{
|
|
186
|
+
id: string;
|
|
187
|
+
createdAt: Date;
|
|
188
|
+
updatedAt: Date;
|
|
189
|
+
status: "idle" | "running" | "suspended" | "finished" | "failed";
|
|
190
|
+
input: Record<string, any> | null;
|
|
191
|
+
output: Record<string, any> | null;
|
|
192
|
+
context: Record<string, any>;
|
|
193
|
+
snapshot: any;
|
|
194
|
+
stepLog: Record<string, any> | null;
|
|
195
|
+
suspendedStep: string | null;
|
|
196
|
+
suspensionReason: string | null;
|
|
197
|
+
suspensionData: unknown;
|
|
198
|
+
suspensionStepExecId: string | null;
|
|
199
|
+
suspensionIndex: number | null;
|
|
200
|
+
suspensionKey: string | null;
|
|
201
|
+
suspensionAwaitResults: Record<string, any> | null;
|
|
202
|
+
lastResumeData: unknown;
|
|
203
|
+
error: string | null;
|
|
204
|
+
suspendedAt: Date | null;
|
|
205
|
+
finishedAt: Date | null;
|
|
206
|
+
failedAt: Date | null;
|
|
207
|
+
duration: number | null;
|
|
208
|
+
metadata: Record<string, any> | null;
|
|
209
|
+
workflow: {
|
|
210
|
+
id: string;
|
|
211
|
+
createdAt: Date;
|
|
212
|
+
updatedAt: Date;
|
|
213
|
+
name: string;
|
|
214
|
+
description: string | null;
|
|
215
|
+
type: import("@hexabot-ai/types/dist/types/workflow/domain").WorkflowType;
|
|
216
|
+
schedule: string | null;
|
|
217
|
+
inputSchema: any;
|
|
218
|
+
builtin: boolean;
|
|
219
|
+
x: number;
|
|
220
|
+
y: number;
|
|
221
|
+
zoom: number;
|
|
222
|
+
direction: import("@hexabot-ai/types").DirectionType;
|
|
223
|
+
createdBy: string | null;
|
|
224
|
+
runAfterMs: number;
|
|
225
|
+
currentVersion?: string | null | undefined;
|
|
226
|
+
publishedVersion?: string | null | undefined;
|
|
227
|
+
};
|
|
228
|
+
triggeredBy: {
|
|
229
|
+
id: string;
|
|
230
|
+
createdAt: Date;
|
|
231
|
+
updatedAt: Date;
|
|
232
|
+
firstName: string;
|
|
233
|
+
lastName: string;
|
|
234
|
+
language: string | null;
|
|
235
|
+
timezone: number;
|
|
236
|
+
locale: string | null;
|
|
237
|
+
gender: string | null;
|
|
238
|
+
country: string | null;
|
|
239
|
+
foreignId: string | null;
|
|
240
|
+
assignedAt: Date | null;
|
|
241
|
+
lastvisit: Date | null;
|
|
242
|
+
retainedFrom: Date | null;
|
|
243
|
+
channel: {
|
|
244
|
+
name: string | null;
|
|
245
|
+
data?: Record<string, any> | null | undefined;
|
|
246
|
+
};
|
|
247
|
+
labels: string[];
|
|
248
|
+
assignedTo: string | null;
|
|
249
|
+
avatar: string | null;
|
|
250
|
+
source: string | null;
|
|
251
|
+
} | {
|
|
252
|
+
id: string;
|
|
253
|
+
createdAt: Date;
|
|
254
|
+
updatedAt: Date;
|
|
255
|
+
firstName: string;
|
|
256
|
+
lastName: string;
|
|
257
|
+
language: string | null;
|
|
258
|
+
timezone: number;
|
|
259
|
+
locale: string | null;
|
|
260
|
+
gender: string | null;
|
|
261
|
+
country: string | null;
|
|
262
|
+
foreignId: string | null;
|
|
263
|
+
assignedAt: Date | null;
|
|
264
|
+
lastvisit: Date | null;
|
|
265
|
+
retainedFrom: Date | null;
|
|
266
|
+
channel: {
|
|
267
|
+
name: string | null;
|
|
268
|
+
data?: Record<string, any> | null | undefined;
|
|
269
|
+
};
|
|
270
|
+
username: string;
|
|
271
|
+
email: string;
|
|
272
|
+
sendEmail: boolean;
|
|
273
|
+
state: boolean;
|
|
274
|
+
resetCount: number;
|
|
275
|
+
resetToken: string | null;
|
|
276
|
+
labels: string[];
|
|
277
|
+
assignedTo: string | null;
|
|
278
|
+
roles: string[];
|
|
279
|
+
avatar: string | null;
|
|
280
|
+
provider?: {
|
|
281
|
+
strategy: "local";
|
|
282
|
+
sub?: string | undefined;
|
|
283
|
+
} | undefined;
|
|
284
|
+
} | null;
|
|
285
|
+
workflowVersion?: {
|
|
286
|
+
id: string;
|
|
287
|
+
createdAt: Date;
|
|
288
|
+
updatedAt: Date;
|
|
289
|
+
version: number;
|
|
290
|
+
definitionYml: string;
|
|
291
|
+
checksum: string;
|
|
292
|
+
message: string | null;
|
|
293
|
+
action: import("@hexabot-ai/types").WorkflowVersionAction | null;
|
|
294
|
+
parentVersion: string | null;
|
|
295
|
+
workflow: string;
|
|
296
|
+
createdBy: string | null;
|
|
297
|
+
} | null | undefined;
|
|
298
|
+
thread?: {
|
|
299
|
+
id: string;
|
|
300
|
+
createdAt: Date;
|
|
301
|
+
updatedAt: Date;
|
|
302
|
+
status: "open" | "closed";
|
|
303
|
+
subscriber: string;
|
|
304
|
+
source: string;
|
|
305
|
+
lastMessageAt?: Date | null | undefined;
|
|
306
|
+
closedAt?: Date | null | undefined;
|
|
307
|
+
closeReason?: "manual" | "inactivity" | null | undefined;
|
|
308
|
+
title?: string | null | undefined;
|
|
309
|
+
} | null | undefined;
|
|
310
|
+
parentRun?: {
|
|
311
|
+
id: string;
|
|
312
|
+
createdAt: Date;
|
|
313
|
+
updatedAt: Date;
|
|
314
|
+
status: "idle" | "running" | "suspended" | "finished" | "failed";
|
|
315
|
+
input: Record<string, any> | null;
|
|
316
|
+
output: Record<string, any> | null;
|
|
317
|
+
context: Record<string, any>;
|
|
318
|
+
snapshot: any;
|
|
319
|
+
stepLog: Record<string, any> | null;
|
|
320
|
+
suspendedStep: string | null;
|
|
321
|
+
suspensionReason: string | null;
|
|
322
|
+
suspensionData: unknown;
|
|
323
|
+
suspensionStepExecId: string | null;
|
|
324
|
+
suspensionIndex: number | null;
|
|
325
|
+
suspensionKey: string | null;
|
|
326
|
+
suspensionAwaitResults: Record<string, any> | null;
|
|
327
|
+
lastResumeData: unknown;
|
|
328
|
+
error: string | null;
|
|
329
|
+
suspendedAt: Date | null;
|
|
330
|
+
finishedAt: Date | null;
|
|
331
|
+
failedAt: Date | null;
|
|
332
|
+
duration: number | null;
|
|
333
|
+
metadata: Record<string, any> | null;
|
|
334
|
+
workflow: string;
|
|
335
|
+
workflowVersion: string | null;
|
|
336
|
+
triggeredBy: string | null;
|
|
337
|
+
parentRun: string | null;
|
|
338
|
+
} | null | undefined;
|
|
339
|
+
}>;
|
|
340
|
+
debugWorkflowRun(args: {
|
|
341
|
+
id: string;
|
|
342
|
+
includeWorkflowDefinition?: boolean;
|
|
343
|
+
includeRelatedRuns?: boolean;
|
|
344
|
+
childRunsLimit?: number;
|
|
345
|
+
}): Promise<Record<string, unknown>>;
|
|
346
|
+
private buildWorkflowRunDebugSummary;
|
|
347
|
+
private sanitizeWorkflowRunResponse;
|
|
348
|
+
private withoutWorkflowDefinition;
|
|
349
|
+
}
|