@xpert-ai/plugin-sdk 3.18.6 → 3.19.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.
Files changed (47) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/MIDDLEWARE_APPS.md +71 -0
  3. package/README.md +2 -0
  4. package/data-workbench.cjs.js +217 -66
  5. package/data-workbench.esm.js +217 -66
  6. package/index.cjs.js +162 -46
  7. package/index.esm.js +148 -47
  8. package/package.json +2 -2
  9. package/runtime-capabilities.md +35 -0
  10. package/src/index.d.ts +3 -0
  11. package/src/lib/agent/index.d.ts +1 -0
  12. package/src/lib/agent/middleware/capabilities/assistant-task.d.ts +55 -20
  13. package/src/lib/agent/middleware/types.d.ts +13 -3
  14. package/src/lib/agent/runtime/capability.d.ts +29 -0
  15. package/src/lib/agent/runtime/index.d.ts +3 -0
  16. package/src/lib/agent/runtime/strategy.d.ts +50 -0
  17. package/src/lib/agent/runtime/types.d.ts +132 -0
  18. package/src/lib/assistant-capability/index.d.ts +42 -0
  19. package/src/lib/connector/runtime-capability.d.ts +2 -0
  20. package/src/lib/connector/strategy.interface.d.ts +8 -0
  21. package/src/lib/core/context/request-context.d.ts +6 -0
  22. package/src/lib/data/datasource/workbench-pagination.d.ts +6 -0
  23. package/src/lib/data/datasource/workbench-sql-lexer.d.ts +11 -0
  24. package/src/lib/data/datasource/workbench-sql-syntax.d.ts +3 -0
  25. package/src/lib/evolution/runtime-capability.d.ts +2 -1
  26. package/src/lib/integration/strategy.interface.d.ts +22 -0
  27. package/src/lib/mcp/app.d.ts +10 -0
  28. package/src/lib/project-task/index.d.ts +59 -0
  29. package/src/lib/project-type/index.d.ts +64 -0
  30. package/src/lib/rag/analyzer/index.d.ts +3 -0
  31. package/src/lib/rag/analyzer/strategy.decorator.d.ts +2 -0
  32. package/src/lib/rag/analyzer/strategy.interface.d.ts +11 -0
  33. package/src/lib/rag/analyzer/strategy.registry.d.ts +8 -0
  34. package/src/lib/rag/index.d.ts +1 -0
  35. package/src/lib/runtime/capabilities/knowledge-graph.d.ts +59 -0
  36. package/src/lib/runtime/capabilities/knowledgebase-documents.d.ts +21 -0
  37. package/src/lib/runtime/capabilities/knowledgebase.d.ts +8 -3
  38. package/src/lib/runtime/capabilities/project-access.d.ts +2 -1
  39. package/src/lib/runtime/capabilities/project-provisioning.d.ts +3 -0
  40. package/src/lib/runtime/runtime-scope.d.ts +7 -1
  41. package/src/lib/sandbox/execution-environment.d.ts +10 -0
  42. package/src/lib/sandbox/execution.d.ts +3 -0
  43. package/src/lib/sandbox/index.d.ts +1 -0
  44. package/src/lib/sandbox/protocol.d.ts +2 -0
  45. package/src/lib/tool-provider/types.d.ts +6 -0
  46. package/src/lib/types.d.ts +2 -1
  47. package/src/lib/workflow/trigger/strategy.interface.d.ts +2 -1
package/index.cjs.js CHANGED
@@ -9,7 +9,6 @@ var rxjs = require('rxjs');
9
9
  var contracts = require('@xpert-ai/contracts');
10
10
  var node_async_hooks = require('node:async_hooks');
11
11
  var passportJwt = require('passport-jwt');
12
- var jsonwebtoken = require('jsonwebtoken');
13
12
  var node_crypto = require('node:crypto');
14
13
  var cqrs = require('@nestjs/cqrs');
15
14
  var fs = require('fs');
@@ -350,22 +349,15 @@ class RequestContext {
350
349
  }
351
350
  return scope.organizationId;
352
351
  }
353
- static hasPermissions(findPermissions, throwError) {
354
- const requestContext = RequestContext.currentRequestContext();
355
- if (requestContext) {
356
- // tslint:disable-next-line
357
- const token = passportJwt.ExtractJwt.fromAuthHeaderAsBearerToken()(requestContext.request);
358
- if (token) {
359
- const { permissions } = jsonwebtoken.verify(token, process.env['JWT_SECRET']);
360
- if (permissions) {
361
- const found = permissions.filter((value)=>findPermissions.indexOf(value) >= 0);
362
- if (found.length === findPermissions.length) {
363
- return true;
364
- }
365
- } else {
366
- return false;
367
- }
368
- }
352
+ /**
353
+ * Check the authenticated principal's enabled role permissions, matching the
354
+ * server RequestContext. Authentication guards resolve JWTs, API keys and
355
+ * ChatKit client secrets before this check; the bearer is not always a JWT.
356
+ */ static hasPermissions(findPermissions, throwError) {
357
+ const permissions = this.currentPermissions();
358
+ if (permissions.length > 0) {
359
+ const found = permissions.filter((value)=>findPermissions.indexOf(value) >= 0);
360
+ if (found.length === findPermissions.length) return true;
369
361
  }
370
362
  if (throwError) {
371
363
  throw new common.HttpException('Unauthorized', common.HttpStatus.UNAUTHORIZED);
@@ -373,17 +365,9 @@ class RequestContext {
373
365
  return false;
374
366
  }
375
367
  static hasAnyPermission(findPermissions, throwError) {
376
- const requestContext = RequestContext.currentRequestContext();
377
- if (requestContext) {
378
- // tslint:disable-next-line
379
- const token = passportJwt.ExtractJwt.fromAuthHeaderAsBearerToken()(requestContext.request);
380
- if (token) {
381
- const { permissions } = jsonwebtoken.verify(token, process.env['JWT_SECRET']);
382
- const found = permissions.filter((value)=>findPermissions.indexOf(value) >= 0);
383
- if (found.length > 0) {
384
- return true;
385
- }
386
- }
368
+ const permissions = this.currentPermissions();
369
+ if (permissions.some((value)=>findPermissions.includes(value))) {
370
+ return true;
387
371
  }
388
372
  if (throwError) {
389
373
  throw new common.HttpException('Unauthorized', common.HttpStatus.UNAUTHORIZED);
@@ -421,20 +405,6 @@ class RequestContext {
421
405
  const context = RequestContext.currentRequestContext();
422
406
  if (context) {
423
407
  var _this_currentUser_role, _this_currentUser;
424
- // tslint:disable-next-line
425
- const token = this.currentToken();
426
- if (token) {
427
- try {
428
- const { role } = jsonwebtoken.verify(token, process.env['JWT_SECRET']);
429
- if (role) {
430
- return roles.includes(role);
431
- }
432
- } catch (error) {
433
- if (!(error instanceof jsonwebtoken.JsonWebTokenError)) {
434
- throw error;
435
- }
436
- }
437
- }
438
408
  const role = (_this_currentUser = this.currentUser()) == null ? void 0 : (_this_currentUser_role = _this_currentUser.role) == null ? void 0 : _this_currentUser_role.name;
439
409
  if (role) {
440
410
  return roles.includes(role);
@@ -445,6 +415,11 @@ class RequestContext {
445
415
  }
446
416
  return false;
447
417
  }
418
+ static currentPermissions() {
419
+ var _this_currentUser_role, _this_currentUser;
420
+ var _this_currentUser_role_rolePermissions;
421
+ return ((_this_currentUser_role_rolePermissions = (_this_currentUser = this.currentUser()) == null ? void 0 : (_this_currentUser_role = _this_currentUser.role) == null ? void 0 : _this_currentUser_role.rolePermissions) != null ? _this_currentUser_role_rolePermissions : []).filter((rolePermission)=>rolePermission == null ? void 0 : rolePermission.enabled).map((rolePermission)=>rolePermission == null ? void 0 : rolePermission.permission).filter((permission)=>!!permission);
422
+ }
448
423
  constructor(request, response, reqId, userId, extras = {}){
449
424
  this.request = request;
450
425
  this.response = response;
@@ -1031,6 +1006,34 @@ exports.KnowledgeStrategyRegistry = __decorate([
1031
1006
  ])
1032
1007
  ], exports.KnowledgeStrategyRegistry);
1033
1008
 
1009
+ const KEYWORD_ANALYZER_STRATEGY = 'KEYWORD_ANALYZER_STRATEGY';
1010
+ const KeywordAnalyzerStrategy = (provider)=>common.applyDecorators(common.SetMetadata(KEYWORD_ANALYZER_STRATEGY, provider), common.SetMetadata(STRATEGY_META_KEY, KEYWORD_ANALYZER_STRATEGY));
1011
+
1012
+ exports.KeywordAnalyzerRegistry = class KeywordAnalyzerRegistry extends BaseStrategyRegistry {
1013
+ /** Resolve a pinned source without allowing a higher-priority scope to shadow it. */ getBySource(provider, source, organizationId) {
1014
+ var _this_strategies_get;
1015
+ if (!this.resolveStrategyScopeKeys(organizationId).includes(source.scopeKey)) return undefined;
1016
+ const strategy = (_this_strategies_get = this.strategies.get(source.scopeKey)) == null ? void 0 : _this_strategies_get.get(provider);
1017
+ if (!strategy) return undefined;
1018
+ const registered = this.getSource(strategy);
1019
+ if (registered.kind !== source.kind || registered.scopeKey !== source.scopeKey) return undefined;
1020
+ if (source.kind === 'plugin' && (registered.kind !== 'plugin' || registered.pluginName !== source.pluginName)) {
1021
+ return undefined;
1022
+ }
1023
+ return strategy;
1024
+ }
1025
+ constructor(discoveryService, reflector){
1026
+ super(KEYWORD_ANALYZER_STRATEGY, discoveryService, reflector);
1027
+ }
1028
+ };
1029
+ exports.KeywordAnalyzerRegistry = __decorate([
1030
+ common.Injectable(),
1031
+ __metadata("design:paramtypes", [
1032
+ core.DiscoveryService,
1033
+ core.Reflector
1034
+ ])
1035
+ ], exports.KeywordAnalyzerRegistry);
1036
+
1034
1037
  const TOOLSET_STRATEGY = 'TOOLSET_STRATEGY';
1035
1038
  /**
1036
1039
  * Decorator to mark a provider as a Toolset Strategy
@@ -3844,7 +3847,7 @@ exports.AgentMiddlewareRegistry = __decorate([
3844
3847
  'end'
3845
3848
  ];
3846
3849
 
3847
- const AssistantTaskRuntimeCapability = modelProvider.createRuntimeCapability('platform.assistant_task', {
3850
+ /** Scoped runtime capability for platform Assistant tasks. */ const AssistantTaskRuntimeCapability = modelProvider.createRuntimeCapability('platform.assistant_task', {
3848
3851
  description: 'Start asynchronous tasks on the current platform assistant.'
3849
3852
  });
3850
3853
 
@@ -3967,6 +3970,52 @@ exports.HandoffProcessorRegistry = __decorate([
3967
3970
  runTtlMs: 10 * 60 * 1000
3968
3971
  };
3969
3972
 
3973
+ /** Checks confirmed completion; unknown remains non-terminal. */ function isAgentInvocationTerminal(status) {
3974
+ return status === 'succeeded' || status === 'failed' || status === 'cancelled';
3975
+ }
3976
+
3977
+ /** Nest discovery metadata key for runtime strategies. */ const AGENT_RUNTIME_STRATEGY = 'AGENT_RUNTIME_STRATEGY';
3978
+ /** Associate a stable provider key with an adapter. Also declare @Injectable() and register the provider. */ const AgentRuntimeStrategy = (provider)=>common.applyDecorators(common.SetMetadata(AGENT_RUNTIME_STRATEGY, provider), common.SetMetadata(STRATEGY_META_KEY, AGENT_RUNTIME_STRATEGY));
3979
+ /** Scoped strategy registry with pinned provider/version lookup for continuation. */ exports.AgentRuntimeRegistry = class AgentRuntimeRegistry extends BaseStrategyRegistry {
3980
+ /** Find the exact original scope/plugin/version, without fallback. Returns undefined if unavailable. */ getPinned(provider, source) {
3981
+ var _this_strategies_get;
3982
+ const strategy = (_this_strategies_get = this.strategies.get(source.scopeKey)) == null ? void 0 : _this_strategies_get.get(provider);
3983
+ if (!strategy) return undefined;
3984
+ const actual = this.getSource(strategy);
3985
+ return actual.kind === source.kind && actual.scopeKey === source.scopeKey && (actual.kind !== 'plugin' || source.kind !== 'plugin' || actual.pluginName === source.pluginName && actual.pluginVersion === source.pluginVersion) ? strategy : undefined;
3986
+ }
3987
+ constructor(discoveryService, reflector){
3988
+ super(AGENT_RUNTIME_STRATEGY, discoveryService, reflector);
3989
+ }
3990
+ };
3991
+ exports.AgentRuntimeRegistry = __decorate([
3992
+ common.Injectable(),
3993
+ __metadata("design:paramtypes", [
3994
+ core.DiscoveryService,
3995
+ core.Reflector
3996
+ ])
3997
+ ], exports.AgentRuntimeRegistry);
3998
+
3999
+ /** Caller-scoped API obtained through runtime.capabilities.require(...). */ const AgentInvocationRuntimeCapability = modelProvider.createRuntimeCapability('platform.agent_invocation', {
4000
+ description: 'Scoped, versioned Agent invocation and lifecycle control'
4001
+ });
4002
+ /** Platform factory capability. The wire key is stable across SDK naming changes. */ const AgentRuntimeFactoryCapability = modelProvider.createRuntimeCapability('platform.agent_invocation.factory');
4003
+
4004
+ const ASSISTANT_CAPABILITY_PROVIDER = 'ASSISTANT_CAPABILITY_PROVIDER';
4005
+ const AssistantCapabilityProvider = (key)=>common.applyDecorators(common.SetMetadata(ASSISTANT_CAPABILITY_PROVIDER, key), common.SetMetadata(STRATEGY_META_KEY, ASSISTANT_CAPABILITY_PROVIDER));
4006
+ exports.AssistantCapabilityProviderRegistry = class AssistantCapabilityProviderRegistry extends BaseStrategyRegistry {
4007
+ constructor(discovery, reflector){
4008
+ super(ASSISTANT_CAPABILITY_PROVIDER, discovery, reflector);
4009
+ }
4010
+ };
4011
+ exports.AssistantCapabilityProviderRegistry = __decorate([
4012
+ common.Injectable(),
4013
+ __metadata("design:paramtypes", [
4014
+ core.DiscoveryService,
4015
+ core.Reflector
4016
+ ])
4017
+ ], exports.AssistantCapabilityProviderRegistry);
4018
+
3970
4019
  /**
3971
4020
  * Common platform message length limits
3972
4021
  */ const CHAT_CHANNEL_TEXT_LIMITS = {
@@ -4261,10 +4310,12 @@ function appendSandboxMessage(output, message) {
4261
4310
  function resolveSandboxExecutionOptions(options, defaults = DEFAULT_SANDBOX_SHELL_EXECUTION_OPTIONS) {
4262
4311
  const timeoutMs = typeof (options == null ? void 0 : options.timeoutMs) === 'number' && Number.isFinite(options.timeoutMs) && options.timeoutMs > 0 ? Math.trunc(options.timeoutMs) : typeof defaults.timeoutMs === 'number' && Number.isFinite(defaults.timeoutMs) && defaults.timeoutMs > 0 ? Math.trunc(defaults.timeoutMs) : DEFAULT_SANDBOX_SHELL_TIMEOUT_MS;
4263
4312
  const maxOutputBytes = typeof (options == null ? void 0 : options.maxOutputBytes) === 'number' && Number.isFinite(options.maxOutputBytes) && options.maxOutputBytes > 0 ? Math.trunc(options.maxOutputBytes) : typeof defaults.maxOutputBytes === 'number' && Number.isFinite(defaults.maxOutputBytes) && defaults.maxOutputBytes > 0 ? Math.trunc(defaults.maxOutputBytes) : DEFAULT_SANDBOX_EXECUTION_MAX_OUTPUT_BYTES;
4264
- return {
4313
+ return _extends._extends({
4265
4314
  timeoutMs,
4266
4315
  maxOutputBytes
4267
- };
4316
+ }, (options == null ? void 0 : options.signal) ? {
4317
+ signal: options.signal
4318
+ } : {});
4268
4319
  }
4269
4320
 
4270
4321
  function isObjectLike$2(value) {
@@ -5917,6 +5968,9 @@ exports.EvolutionTargetProviderRegistry = __decorate([
5917
5968
  ], exports.EvolutionTargetProviderRegistry);
5918
5969
 
5919
5970
  const EVOLUTION_RUNTIME_SERVICE_TOKEN = 'XPERT_EVOLUTION_RUNTIME_SERVICE';
5971
+ const EvolutionBaselineRuntimeCapability = modelProvider.createRuntimeCapability('platform.agent-evolution.baselines', {
5972
+ description: 'Inspect and initialize organization rule baselines with administrator authorization and revision checks.'
5973
+ });
5920
5974
  const EvolutionRuntimeCapability = modelProvider.createRuntimeCapability('platform.agent-evolution', {
5921
5975
  description: 'Ingest learning signals and resolve immutable capability versions for domain runtimes.'
5922
5976
  });
@@ -6157,6 +6211,11 @@ function describeXpertToolProvider(instance) {
6157
6211
  if (middlewareProvider && !middlewareProviders.has(middlewareProvider)) {
6158
6212
  throw new Error(`Tool '${toolOptions.name}' references undeclared Middleware provider '${middlewareProvider}'.`);
6159
6213
  }
6214
+ if (toolOptions.app) {
6215
+ if (!middlewareProvider || !toolOptions.app.visibility.length || toolOptions.app.visibility.some((item)=>item !== 'model' && item !== 'app') || toolOptions.app.resourceKey && (!appKeys.has(toolOptions.app.resourceKey) || !toolOptions.app.visibility.includes('app'))) {
6216
+ throw new Error(`Tool '${toolOptions.name}' has an invalid middleware App binding.`);
6217
+ }
6218
+ }
6160
6219
  const appKey = toolOptions.mcp && ((_toolOptions_mcp_app = toolOptions.mcp.app) == null ? void 0 : _toolOptions_mcp_app.resourceKey);
6161
6220
  if (appKey && !appKeys.has(appKey)) {
6162
6221
  throw new Error(`MCP Tool '${toolOptions.name}' references undeclared App '${appKey}'.`);
@@ -6554,12 +6613,21 @@ class DecoratedAgentMiddlewareStrategy {
6554
6613
  return this.descriptor.tools.filter((item)=>item.middlewareProvider === this.provider).map((item)=>item.options.name);
6555
6614
  }
6556
6615
  async createMiddleware(options, context) {
6616
+ var _this_descriptor_options_apps;
6557
6617
  const tools = this.descriptor.tools.filter((item)=>item.middlewareProvider === this.provider).map((item)=>createAgentTool(this.instance, item, context, options));
6558
6618
  const extensions = await (this.instance.getMiddlewareExtensions == null ? void 0 : this.instance.getMiddlewareExtensions.call(this.instance, this.provider, options, context));
6559
6619
  return _extends._extends({}, extensions != null ? extensions : {}, {
6560
6620
  name: this.provider,
6561
6621
  tools
6562
- });
6622
+ }, ((_this_descriptor_options_apps = this.descriptor.options.apps) == null ? void 0 : _this_descriptor_options_apps.length) ? {
6623
+ apps: {
6624
+ definitions: this.descriptor.options.apps,
6625
+ tools: Object.fromEntries(this.descriptor.tools.filter((item)=>item.middlewareProvider === this.provider && item.options.app).map((item)=>[
6626
+ item.options.name,
6627
+ item.options.app
6628
+ ]))
6629
+ }
6630
+ } : {});
6563
6631
  }
6564
6632
  constructor(instance, descriptor, provider){
6565
6633
  var _descriptor_options_middlewares;
@@ -9719,6 +9787,39 @@ function stableJson(value) {
9719
9787
  return `{${entries.map(([key, item])=>`${JSON.stringify(key)}:${stableJson(item)}`).join(',')}}`;
9720
9788
  }
9721
9789
 
9790
+ const PROJECT_TYPE_PROVIDER = 'PROJECT_TYPE_PROVIDER';
9791
+ /** Register the stable provider key used by entity-backed App project type declarations. */ const ProjectTypeProvider = (key)=>common.applyDecorators(common.SetMetadata(PROJECT_TYPE_PROVIDER, key), common.SetMetadata(STRATEGY_META_KEY, PROJECT_TYPE_PROVIDER));
9792
+ exports.ProjectTypeProviderRegistry = class ProjectTypeProviderRegistry extends BaseStrategyRegistry {
9793
+ constructor(discovery, reflector){
9794
+ super(PROJECT_TYPE_PROVIDER, discovery, reflector);
9795
+ }
9796
+ };
9797
+ exports.ProjectTypeProviderRegistry = __decorate([
9798
+ common.Injectable(),
9799
+ __metadata("design:paramtypes", [
9800
+ core.DiscoveryService,
9801
+ core.Reflector
9802
+ ])
9803
+ ], exports.ProjectTypeProviderRegistry);
9804
+
9805
+ const PROJECT_TASK_PROVIDER = 'PROJECT_TASK_PROVIDER';
9806
+ const ProjectTaskProvider = (key)=>common.applyDecorators(common.SetMetadata(PROJECT_TASK_PROVIDER, key), common.SetMetadata(STRATEGY_META_KEY, PROJECT_TASK_PROVIDER));
9807
+ exports.ProjectTaskProviderRegistry = class ProjectTaskProviderRegistry extends BaseStrategyRegistry {
9808
+ constructor(discovery, reflector){
9809
+ super(PROJECT_TASK_PROVIDER, discovery, reflector);
9810
+ }
9811
+ };
9812
+ exports.ProjectTaskProviderRegistry = __decorate([
9813
+ common.Injectable(),
9814
+ __metadata("design:paramtypes", [
9815
+ core.DiscoveryService,
9816
+ core.Reflector
9817
+ ])
9818
+ ], exports.ProjectTaskProviderRegistry);
9819
+ const ProjectTasksRuntimeCapability = modelProvider.createRuntimeCapability('platform.project.tasks', {
9820
+ description: 'Read project task graphs, manage schedules, and resolve exact execution conversations.'
9821
+ });
9822
+
9722
9823
  Object.defineProperty(exports, "ASSISTANT_CHAT_SEND_MESSAGE_COMMAND", {
9723
9824
  enumerable: true,
9724
9825
  get: function () { return contracts.ASSISTANT_CHAT_SEND_MESSAGE_COMMAND; }
@@ -9777,12 +9878,18 @@ exports.ACCOUNT_BINDING_PERMISSION_SERVICE_TOKEN = ACCOUNT_BINDING_PERMISSION_SE
9777
9878
  exports.AGENT_CHAT_DISPATCH_ERROR_STEER_TARGET_NOT_RUNNING = AGENT_CHAT_DISPATCH_ERROR_STEER_TARGET_NOT_RUNNING;
9778
9879
  exports.AGENT_CHAT_DISPATCH_MESSAGE_TYPE = AGENT_CHAT_DISPATCH_MESSAGE_TYPE;
9779
9880
  exports.AGENT_MIDDLEWARE_STRATEGY = AGENT_MIDDLEWARE_STRATEGY;
9881
+ exports.AGENT_RUNTIME_STRATEGY = AGENT_RUNTIME_STRATEGY;
9780
9882
  exports.AIModelProviderNotFoundException = AIModelProviderNotFoundException;
9781
9883
  exports.AIModelProviderStrategy = AIModelProviderStrategy;
9782
9884
  exports.AI_MODEL_PROVIDER = AI_MODEL_PROVIDER;
9885
+ exports.ASSISTANT_CAPABILITY_PROVIDER = ASSISTANT_CAPABILITY_PROVIDER;
9783
9886
  exports.AdapterDataSourceStrategy = AdapterDataSourceStrategy;
9887
+ exports.AgentInvocationRuntimeCapability = AgentInvocationRuntimeCapability;
9784
9888
  exports.AgentMiddlewareStrategy = AgentMiddlewareStrategy;
9889
+ exports.AgentRuntimeFactoryCapability = AgentRuntimeFactoryCapability;
9890
+ exports.AgentRuntimeStrategy = AgentRuntimeStrategy;
9785
9891
  exports.AiModelNotFoundException = AiModelNotFoundException;
9892
+ exports.AssistantCapabilityProvider = AssistantCapabilityProvider;
9786
9893
  exports.AssistantTaskRuntimeCapability = AssistantTaskRuntimeCapability;
9787
9894
  exports.BOUND_IDENTITY_LOGIN_PERMISSION_SERVICE_TOKEN = BOUND_IDENTITY_LOGIN_PERMISSION_SERVICE_TOKEN;
9788
9895
  exports.BUILTIN_GLOBAL_SCOPE = BUILTIN_GLOBAL_SCOPE;
@@ -9828,6 +9935,7 @@ exports.DocumentSourceStrategy = DocumentSourceStrategy;
9828
9935
  exports.DocumentTransformerStrategy = DocumentTransformerStrategy;
9829
9936
  exports.EVOLUTION_RUNTIME_SERVICE_TOKEN = EVOLUTION_RUNTIME_SERVICE_TOKEN;
9830
9937
  exports.EVOLUTION_TARGET_PROVIDER = EVOLUTION_TARGET_PROVIDER;
9938
+ exports.EvolutionBaselineRuntimeCapability = EvolutionBaselineRuntimeCapability;
9831
9939
  exports.EvolutionChangeRuntimeCapability = EvolutionChangeRuntimeCapability;
9832
9940
  exports.EvolutionRuntimeCapability = EvolutionRuntimeCapability;
9833
9941
  exports.EvolutionTargetProviderStrategy = EvolutionTargetProviderStrategy;
@@ -9849,7 +9957,9 @@ exports.ImageUnderstandingStrategy = ImageUnderstandingStrategy;
9849
9957
  exports.IntegrationStrategyKey = IntegrationStrategyKey;
9850
9958
  exports.JUMP_TO_TARGETS = JUMP_TO_TARGETS;
9851
9959
  exports.JsonSchemaValidator = JsonSchemaValidator;
9960
+ exports.KEYWORD_ANALYZER_STRATEGY = KEYWORD_ANALYZER_STRATEGY;
9852
9961
  exports.KNOWLEDGE_STRATEGY = KNOWLEDGE_STRATEGY;
9962
+ exports.KeywordAnalyzerStrategy = KeywordAnalyzerStrategy;
9853
9963
  exports.KnowledgeStrategyKey = KnowledgeStrategyKey;
9854
9964
  exports.LLMUsage = LLMUsage;
9855
9965
  exports.LargeLanguageModel = LargeLanguageModel;
@@ -9869,6 +9979,8 @@ exports.PLUGIN_METADATA_KEY = PLUGIN_METADATA_KEY;
9869
9979
  exports.PLUGIN_VERSION_METADATA_KEY = PLUGIN_VERSION_METADATA_KEY;
9870
9980
  exports.PLUGIN_WEBHOOK_AUTH_METADATA_KEY = PLUGIN_WEBHOOK_AUTH_METADATA_KEY;
9871
9981
  exports.PLUGIN_WEBHOOK_AUTH_SERVICE_TOKEN = PLUGIN_WEBHOOK_AUTH_SERVICE_TOKEN;
9982
+ exports.PROJECT_TASK_PROVIDER = PROJECT_TASK_PROVIDER;
9983
+ exports.PROJECT_TYPE_PROVIDER = PROJECT_TYPE_PROVIDER;
9872
9984
  exports.PROVIDE_AI_MODEL_LLM = PROVIDE_AI_MODEL_LLM;
9873
9985
  exports.PROVIDE_AI_MODEL_MODERATION = PROVIDE_AI_MODEL_MODERATION;
9874
9986
  exports.PROVIDE_AI_MODEL_RERANK = PROVIDE_AI_MODEL_RERANK;
@@ -9877,6 +9989,9 @@ exports.PROVIDE_AI_MODEL_TEXT_EMBEDDING = PROVIDE_AI_MODEL_TEXT_EMBEDDING;
9877
9989
  exports.PROVIDE_AI_MODEL_TTS = PROVIDE_AI_MODEL_TTS;
9878
9990
  exports.PluginJobProcessor = PluginJobProcessor;
9879
9991
  exports.PluginWebhookAuth = PluginWebhookAuth;
9992
+ exports.ProjectTaskProvider = ProjectTaskProvider;
9993
+ exports.ProjectTasksRuntimeCapability = ProjectTasksRuntimeCapability;
9994
+ exports.ProjectTypeProvider = ProjectTypeProvider;
9880
9995
  exports.RETRIEVER_STRATEGY = RETRIEVER_STRATEGY;
9881
9996
  exports.RequestContext = RequestContext;
9882
9997
  exports.RequirePermissionOperation = RequirePermissionOperation;
@@ -9969,6 +10084,7 @@ exports.getRequestContext = getRequestContext;
9969
10084
  exports.getRequiredPermissionOperation = getRequiredPermissionOperation;
9970
10085
  exports.getTenantGlobalScopeKey = getTenantGlobalScopeKey;
9971
10086
  exports.getXpertToolMethod = getXpertToolMethod;
10087
+ exports.isAgentInvocationTerminal = isAgentInvocationTerminal;
9972
10088
  exports.isDevelopmentSandboxRuntimeEnvironment = isDevelopmentSandboxRuntimeEnvironment;
9973
10089
  exports.isModelOutputValidationError = isModelOutputValidationError;
9974
10090
  exports.isModelUsagePricingConfig = isModelUsagePricingConfig;