@inkeep/agents-core 0.30.4 → 0.31.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -17,7 +17,9 @@ function detectDelegationCycles(agentData) {
17
17
  if (dfs(neighbor)) return true;
18
18
  } else if (stack.has(neighbor)) {
19
19
  const cycleStart = path.indexOf(neighbor);
20
- cycles.push(`Circular delegation detected: ${[...path.slice(cycleStart), neighbor].join(" \u2192 ")}`);
20
+ cycles.push(
21
+ `Circular delegation detected: ${[...path.slice(cycleStart), neighbor].join(" \u2192 ")}`
22
+ );
21
23
  return true;
22
24
  }
23
25
  }
@@ -36,9 +38,7 @@ function detectDelegationCycles(agentData) {
36
38
  function buildDelegationGraph(agentData) {
37
39
  const graph = /* @__PURE__ */ new Map();
38
40
  for (const [subAgentId, subAgent] of Object.entries(agentData.subAgents)) {
39
- const delegates = subAgent.canDelegateTo?.filter(
40
- (d) => typeof d === "string"
41
- );
41
+ const delegates = subAgent.canDelegateTo?.filter((d) => typeof d === "string");
42
42
  if (delegates?.length) {
43
43
  graph.set(subAgentId, delegates);
44
44
  }
@@ -431,10 +431,7 @@ var detectAuthenticationRequired = async ({
431
431
  } catch (discoveryError) {
432
432
  logger?.debug({ discoveryError }, "MCP OAuth metadata discovery failed");
433
433
  }
434
- logger?.debug(
435
- { error: error?.message },
436
- "No MCP OAuth authentication requirement detected"
437
- );
434
+ logger?.debug({ error: error?.message }, "No MCP OAuth authentication requirement detected");
438
435
  return false;
439
436
  };
440
437
 
@@ -2219,10 +2219,7 @@ var detectAuthenticationRequired = async ({
2219
2219
  } catch (discoveryError) {
2220
2220
  logger?.debug({ discoveryError }, "MCP OAuth metadata discovery failed");
2221
2221
  }
2222
- logger?.debug(
2223
- { error: error?.message },
2224
- "No MCP OAuth authentication requirement detected"
2225
- );
2222
+ logger?.debug({ error: error?.message }, "No MCP OAuth authentication requirement detected");
2226
2223
  return false;
2227
2224
  };
2228
2225
 
@@ -1,7 +1,7 @@
1
1
  export { i as ACTIVITY_NAMES, g as ACTIVITY_STATUS, f as ACTIVITY_TYPES, h as AGENT_IDS, p as AGGREGATE_OPERATORS, A as AI_OPERATIONS, j as AI_TOOL_TYPES, o as DATA_SOURCES, k as DATA_TYPES, D as DELEGATION_FROM_SUB_AGENT_ID, b as DELEGATION_ID, a as DELEGATION_TO_SUB_AGENT_ID, F as FIELD_TYPES, O as OPERATORS, m as ORDER_DIRECTIONS, P as PANEL_TYPES, q as QUERY_DEFAULTS, l as QUERY_EXPRESSIONS, Q as QUERY_FIELD_CONFIGS, n as QUERY_TYPES, R as REDUCE_OPERATIONS, e as SPAN_KEYS, S as SPAN_NAMES, T as TRANSFER_FROM_SUB_AGENT_ID, c as TRANSFER_TO_SUB_AGENT_ID, U as UNKNOWN_VALUE, d as detectAuthenticationRequired } from './auth-detection-Dk5iYAy9.cjs';
2
2
  import { z } from 'zod';
3
- import { C as ConversationHistoryConfig, F as FunctionApiInsertSchema, A as ApiKeyApiUpdateSchema, a as FullAgentAgentInsertSchema } from './utility-fD4C61M4.cjs';
4
- export { e as AgentStopWhen, b as AgentStopWhenSchema, h as CredentialStoreType, j as FunctionApiSelectSchema, k as FunctionApiUpdateSchema, i as MCPTransportType, g as ModelSettings, M as ModelSettingsSchema, d as StopWhen, S as StopWhenSchema, f as SubAgentStopWhen, c as SubAgentStopWhenSchema } from './utility-fD4C61M4.cjs';
3
+ import { C as ConversationHistoryConfig, F as FunctionApiInsertSchema, A as ApiKeyApiUpdateSchema, a as FullAgentAgentInsertSchema } from './utility-eADYCyd-.cjs';
4
+ export { e as AgentStopWhen, b as AgentStopWhenSchema, h as CredentialStoreType, j as FunctionApiSelectSchema, k as FunctionApiUpdateSchema, i as MCPTransportType, g as ModelSettings, M as ModelSettingsSchema, d as StopWhen, S as StopWhenSchema, f as SubAgentStopWhen, c as SubAgentStopWhenSchema } from './utility-eADYCyd-.cjs';
5
5
  export { v as validatePropsAsJsonSchema } from './props-validation-BMR1qNiy.cjs';
6
6
  import 'pino';
7
7
  import 'drizzle-zod';
@@ -134,8 +134,8 @@ declare const DataComponentApiInsertSchema: z.ZodObject<{
134
134
  }, z.core.$strip>>>;
135
135
  }, z.core.$strip>;
136
136
  declare const ArtifactComponentApiInsertSchema: z.ZodObject<{
137
- name: z.ZodString;
138
137
  id: z.ZodString;
138
+ name: z.ZodString;
139
139
  description: z.ZodString;
140
140
  props: z.ZodOptional<z.ZodNullable<z.ZodType<Record<string, unknown>, Record<string, unknown>, z.core.$ZodTypeInternals<Record<string, unknown>, Record<string, unknown>>>>>;
141
141
  }, {
@@ -170,11 +170,12 @@ declare const FullAgentDefinitionSchema: z.ZodObject<{
170
170
  description: z.ZodOptional<z.ZodString>;
171
171
  defaultSubAgentId: z.ZodOptional<z.ZodString>;
172
172
  subAgents: z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
173
- name: z.ZodString;
174
173
  id: z.ZodString;
174
+ name: z.ZodString;
175
+ description: z.ZodString;
176
+ prompt: z.ZodString;
175
177
  createdAt: z.ZodOptional<z.ZodString>;
176
178
  updatedAt: z.ZodOptional<z.ZodString>;
177
- description: z.ZodString;
178
179
  models: z.ZodOptional<z.ZodObject<{
179
180
  base: z.ZodOptional<z.ZodObject<{
180
181
  model: z.ZodOptional<z.ZodString>;
@@ -198,7 +199,6 @@ declare const FullAgentDefinitionSchema: z.ZodObject<{
198
199
  }, {
199
200
  stepCountIs?: number | undefined;
200
201
  }>>>>;
201
- prompt: z.ZodString;
202
202
  conversationHistoryConfig: z.ZodOptional<z.ZodNullable<z.ZodType<ConversationHistoryConfig, ConversationHistoryConfig, z.core.$ZodTypeInternals<ConversationHistoryConfig, ConversationHistoryConfig>>>>;
203
203
  type: z.ZodLiteral<"internal">;
204
204
  canUse: z.ZodArray<z.ZodObject<{
@@ -1,7 +1,7 @@
1
1
  export { i as ACTIVITY_NAMES, g as ACTIVITY_STATUS, f as ACTIVITY_TYPES, h as AGENT_IDS, p as AGGREGATE_OPERATORS, A as AI_OPERATIONS, j as AI_TOOL_TYPES, o as DATA_SOURCES, k as DATA_TYPES, D as DELEGATION_FROM_SUB_AGENT_ID, b as DELEGATION_ID, a as DELEGATION_TO_SUB_AGENT_ID, F as FIELD_TYPES, O as OPERATORS, m as ORDER_DIRECTIONS, P as PANEL_TYPES, q as QUERY_DEFAULTS, l as QUERY_EXPRESSIONS, Q as QUERY_FIELD_CONFIGS, n as QUERY_TYPES, R as REDUCE_OPERATIONS, e as SPAN_KEYS, S as SPAN_NAMES, T as TRANSFER_FROM_SUB_AGENT_ID, c as TRANSFER_TO_SUB_AGENT_ID, U as UNKNOWN_VALUE, d as detectAuthenticationRequired } from './auth-detection-Dk5iYAy9.js';
2
2
  import { z } from 'zod';
3
- import { C as ConversationHistoryConfig, F as FunctionApiInsertSchema, A as ApiKeyApiUpdateSchema, a as FullAgentAgentInsertSchema } from './utility-fD4C61M4.js';
4
- export { e as AgentStopWhen, b as AgentStopWhenSchema, h as CredentialStoreType, j as FunctionApiSelectSchema, k as FunctionApiUpdateSchema, i as MCPTransportType, g as ModelSettings, M as ModelSettingsSchema, d as StopWhen, S as StopWhenSchema, f as SubAgentStopWhen, c as SubAgentStopWhenSchema } from './utility-fD4C61M4.js';
3
+ import { C as ConversationHistoryConfig, F as FunctionApiInsertSchema, A as ApiKeyApiUpdateSchema, a as FullAgentAgentInsertSchema } from './utility-eADYCyd-.js';
4
+ export { e as AgentStopWhen, b as AgentStopWhenSchema, h as CredentialStoreType, j as FunctionApiSelectSchema, k as FunctionApiUpdateSchema, i as MCPTransportType, g as ModelSettings, M as ModelSettingsSchema, d as StopWhen, S as StopWhenSchema, f as SubAgentStopWhen, c as SubAgentStopWhenSchema } from './utility-eADYCyd-.js';
5
5
  export { v as validatePropsAsJsonSchema } from './props-validation-BMR1qNiy.js';
6
6
  import 'pino';
7
7
  import 'drizzle-zod';
@@ -134,8 +134,8 @@ declare const DataComponentApiInsertSchema: z.ZodObject<{
134
134
  }, z.core.$strip>>>;
135
135
  }, z.core.$strip>;
136
136
  declare const ArtifactComponentApiInsertSchema: z.ZodObject<{
137
- name: z.ZodString;
138
137
  id: z.ZodString;
138
+ name: z.ZodString;
139
139
  description: z.ZodString;
140
140
  props: z.ZodOptional<z.ZodNullable<z.ZodType<Record<string, unknown>, Record<string, unknown>, z.core.$ZodTypeInternals<Record<string, unknown>, Record<string, unknown>>>>>;
141
141
  }, {
@@ -170,11 +170,12 @@ declare const FullAgentDefinitionSchema: z.ZodObject<{
170
170
  description: z.ZodOptional<z.ZodString>;
171
171
  defaultSubAgentId: z.ZodOptional<z.ZodString>;
172
172
  subAgents: z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
173
- name: z.ZodString;
174
173
  id: z.ZodString;
174
+ name: z.ZodString;
175
+ description: z.ZodString;
176
+ prompt: z.ZodString;
175
177
  createdAt: z.ZodOptional<z.ZodString>;
176
178
  updatedAt: z.ZodOptional<z.ZodString>;
177
- description: z.ZodString;
178
179
  models: z.ZodOptional<z.ZodObject<{
179
180
  base: z.ZodOptional<z.ZodObject<{
180
181
  model: z.ZodOptional<z.ZodString>;
@@ -198,7 +199,6 @@ declare const FullAgentDefinitionSchema: z.ZodObject<{
198
199
  }, {
199
200
  stepCountIs?: number | undefined;
200
201
  }>>>>;
201
- prompt: z.ZodString;
202
202
  conversationHistoryConfig: z.ZodOptional<z.ZodNullable<z.ZodType<ConversationHistoryConfig, ConversationHistoryConfig, z.core.$ZodTypeInternals<ConversationHistoryConfig, ConversationHistoryConfig>>>>;
203
203
  type: z.ZodLiteral<"internal">;
204
204
  canUse: z.ZodArray<z.ZodObject<{
@@ -1,4 +1,4 @@
1
- export { ACTIVITY_NAMES, ACTIVITY_STATUS, ACTIVITY_TYPES, AGENT_IDS, AGGREGATE_OPERATORS, AI_OPERATIONS, AI_TOOL_TYPES, DATA_SOURCES, DATA_TYPES, DELEGATION_FROM_SUB_AGENT_ID, DELEGATION_ID, DELEGATION_TO_SUB_AGENT_ID, FIELD_TYPES, OPERATORS, ORDER_DIRECTIONS, PANEL_TYPES, QUERY_DEFAULTS, QUERY_EXPRESSIONS, QUERY_FIELD_CONFIGS, QUERY_TYPES, REDUCE_OPERATIONS, SPAN_KEYS, SPAN_NAMES, TRANSFER_FROM_SUB_AGENT_ID, TRANSFER_TO_SUB_AGENT_ID, UNKNOWN_VALUE, detectAuthenticationRequired } from './chunk-QWXWHPCK.js';
1
+ export { ACTIVITY_NAMES, ACTIVITY_STATUS, ACTIVITY_TYPES, AGENT_IDS, AGGREGATE_OPERATORS, AI_OPERATIONS, AI_TOOL_TYPES, DATA_SOURCES, DATA_TYPES, DELEGATION_FROM_SUB_AGENT_ID, DELEGATION_ID, DELEGATION_TO_SUB_AGENT_ID, FIELD_TYPES, OPERATORS, ORDER_DIRECTIONS, PANEL_TYPES, QUERY_DEFAULTS, QUERY_EXPRESSIONS, QUERY_FIELD_CONFIGS, QUERY_TYPES, REDUCE_OPERATIONS, SPAN_KEYS, SPAN_NAMES, TRANSFER_FROM_SUB_AGENT_ID, TRANSFER_TO_SUB_AGENT_ID, UNKNOWN_VALUE, detectAuthenticationRequired } from './chunk-AGEFXY7F.js';
2
2
  import { ModelSettingsSchema, FullAgentAgentInsertSchema, ArtifactComponentApiInsertSchema } from './chunk-37BY2EHU.js';
3
3
  export { AgentStopWhenSchema, FunctionApiInsertSchema, FunctionApiSelectSchema, FunctionApiUpdateSchema, ModelSettingsSchema, StopWhenSchema, SubAgentStopWhenSchema, validatePropsAsJsonSchema } from './chunk-37BY2EHU.js';
4
4
  import { CredentialStoreType } from './chunk-YFHT5M2R.js';
@@ -1,7 +1,7 @@
1
1
  import 'drizzle-orm';
2
2
  import 'drizzle-orm/sqlite-core';
3
- import '../utility-fD4C61M4.cjs';
4
- export { G as agentRelations, J as agentToolRelationsRelations, a as agents, y as apiKeys, I as apiKeysRelations, j as artifactComponents, O as artifactComponentsRelations, b as contextCache, E as contextCacheRelations, c as contextConfigs, D as contextConfigsRelations, v as conversations, M as conversationsRelations, z as credentialReferences, K as credentialReferencesRelations, h as dataComponents, Q as dataComponentsRelations, f as externalAgents, H as externalAgentsRelations, m as functionTools, V as functionToolsRelations, n as functions, T as functionsRelations, x as ledgerArtifacts, S as ledgerArtifactsRelations, w as messages, N as messagesRelations, p as projects, B as projectsRelations, k as subAgentArtifactComponents, P as subAgentArtifactComponentsRelations, i as subAgentDataComponents, R as subAgentDataComponentsRelations, q as subAgentExternalAgentRelations, X as subAgentExternalAgentRelationsRelations, u as subAgentFunctionToolRelations, W as subAgentFunctionToolRelationsRelations, e as subAgentRelations, U as subAgentRelationsRelations, r as subAgentTeamAgentRelations, Y as subAgentTeamAgentRelationsRelations, o as subAgentToolRelations, d as subAgents, F as subAgentsRelations, g as taskRelations, C as taskRelationsRelations, t as tasks, A as tasksRelations, l as tools, L as toolsRelations } from '../schema-uPzoiY7F.cjs';
3
+ import '../utility-eADYCyd-.cjs';
4
+ export { G as agentRelations, J as agentToolRelationsRelations, a as agents, y as apiKeys, I as apiKeysRelations, j as artifactComponents, O as artifactComponentsRelations, b as contextCache, E as contextCacheRelations, c as contextConfigs, D as contextConfigsRelations, v as conversations, M as conversationsRelations, z as credentialReferences, K as credentialReferencesRelations, h as dataComponents, Q as dataComponentsRelations, f as externalAgents, H as externalAgentsRelations, m as functionTools, V as functionToolsRelations, n as functions, T as functionsRelations, x as ledgerArtifacts, S as ledgerArtifactsRelations, w as messages, N as messagesRelations, p as projects, B as projectsRelations, k as subAgentArtifactComponents, P as subAgentArtifactComponentsRelations, i as subAgentDataComponents, R as subAgentDataComponentsRelations, q as subAgentExternalAgentRelations, X as subAgentExternalAgentRelationsRelations, u as subAgentFunctionToolRelations, W as subAgentFunctionToolRelationsRelations, e as subAgentRelations, U as subAgentRelationsRelations, r as subAgentTeamAgentRelations, Y as subAgentTeamAgentRelationsRelations, o as subAgentToolRelations, d as subAgents, F as subAgentsRelations, g as taskRelations, C as taskRelationsRelations, t as tasks, A as tasksRelations, l as tools, L as toolsRelations } from '../schema-DgEdaA4i.cjs';
5
5
  import 'zod';
6
6
  import 'drizzle-zod';
7
7
  import '@hono/zod-openapi';
@@ -1,7 +1,7 @@
1
1
  import 'drizzle-orm';
2
2
  import 'drizzle-orm/sqlite-core';
3
- import '../utility-fD4C61M4.js';
4
- export { G as agentRelations, J as agentToolRelationsRelations, a as agents, y as apiKeys, I as apiKeysRelations, j as artifactComponents, O as artifactComponentsRelations, b as contextCache, E as contextCacheRelations, c as contextConfigs, D as contextConfigsRelations, v as conversations, M as conversationsRelations, z as credentialReferences, K as credentialReferencesRelations, h as dataComponents, Q as dataComponentsRelations, f as externalAgents, H as externalAgentsRelations, m as functionTools, V as functionToolsRelations, n as functions, T as functionsRelations, x as ledgerArtifacts, S as ledgerArtifactsRelations, w as messages, N as messagesRelations, p as projects, B as projectsRelations, k as subAgentArtifactComponents, P as subAgentArtifactComponentsRelations, i as subAgentDataComponents, R as subAgentDataComponentsRelations, q as subAgentExternalAgentRelations, X as subAgentExternalAgentRelationsRelations, u as subAgentFunctionToolRelations, W as subAgentFunctionToolRelationsRelations, e as subAgentRelations, U as subAgentRelationsRelations, r as subAgentTeamAgentRelations, Y as subAgentTeamAgentRelationsRelations, o as subAgentToolRelations, d as subAgents, F as subAgentsRelations, g as taskRelations, C as taskRelationsRelations, t as tasks, A as tasksRelations, l as tools, L as toolsRelations } from '../schema-BWDgXp-e.js';
3
+ import '../utility-eADYCyd-.js';
4
+ export { G as agentRelations, J as agentToolRelationsRelations, a as agents, y as apiKeys, I as apiKeysRelations, j as artifactComponents, O as artifactComponentsRelations, b as contextCache, E as contextCacheRelations, c as contextConfigs, D as contextConfigsRelations, v as conversations, M as conversationsRelations, z as credentialReferences, K as credentialReferencesRelations, h as dataComponents, Q as dataComponentsRelations, f as externalAgents, H as externalAgentsRelations, m as functionTools, V as functionToolsRelations, n as functions, T as functionsRelations, x as ledgerArtifacts, S as ledgerArtifactsRelations, w as messages, N as messagesRelations, p as projects, B as projectsRelations, k as subAgentArtifactComponents, P as subAgentArtifactComponentsRelations, i as subAgentDataComponents, R as subAgentDataComponentsRelations, q as subAgentExternalAgentRelations, X as subAgentExternalAgentRelationsRelations, u as subAgentFunctionToolRelations, W as subAgentFunctionToolRelationsRelations, e as subAgentRelations, U as subAgentRelationsRelations, r as subAgentTeamAgentRelations, Y as subAgentTeamAgentRelationsRelations, o as subAgentToolRelations, d as subAgents, F as subAgentsRelations, g as taskRelations, C as taskRelationsRelations, t as tasks, A as tasksRelations, l as tools, L as toolsRelations } from '../schema-DfnCgRwo.js';
5
5
  import 'zod';
6
6
  import 'drizzle-zod';
7
7
  import '@hono/zod-openapi';
package/dist/index.cjs CHANGED
@@ -215964,7 +215964,9 @@ function detectDelegationCycles(agentData) {
215964
215964
  if (dfs(neighbor)) return true;
215965
215965
  } else if (stack.has(neighbor)) {
215966
215966
  const cycleStart = path2.indexOf(neighbor);
215967
- cycles.push(`Circular delegation detected: ${[...path2.slice(cycleStart), neighbor].join(" \u2192 ")}`);
215967
+ cycles.push(
215968
+ `Circular delegation detected: ${[...path2.slice(cycleStart), neighbor].join(" \u2192 ")}`
215969
+ );
215968
215970
  return true;
215969
215971
  }
215970
215972
  }
@@ -215983,9 +215985,7 @@ function detectDelegationCycles(agentData) {
215983
215985
  function buildDelegationGraph(agentData) {
215984
215986
  const graph = /* @__PURE__ */ new Map();
215985
215987
  for (const [subAgentId, subAgent] of Object.entries(agentData.subAgents)) {
215986
- const delegates = subAgent.canDelegateTo?.filter(
215987
- (d) => typeof d === "string"
215988
- );
215988
+ const delegates = subAgent.canDelegateTo?.filter((d) => typeof d === "string");
215989
215989
  if (delegates?.length) {
215990
215990
  graph.set(subAgentId, delegates);
215991
215991
  }
@@ -216702,7 +216702,14 @@ var upsertSubAgentFunctionToolRelation = (db) => async (params) => {
216702
216702
  ).limit(1);
216703
216703
  if (existingRelations.length > 0) {
216704
216704
  logger4.info(
216705
- { tenantId, projectId, agentId, subAgentId, functionToolId, relationId: existingRelations[0].id },
216705
+ {
216706
+ tenantId,
216707
+ projectId,
216708
+ agentId,
216709
+ subAgentId,
216710
+ functionToolId,
216711
+ relationId: existingRelations[0].id
216712
+ },
216706
216713
  "Sub_agent-function tool relation already exists, returning existing relation"
216707
216714
  );
216708
216715
  return { id: existingRelations[0].id };
@@ -218151,10 +218158,7 @@ var detectAuthenticationRequired = async ({
218151
218158
  } catch (discoveryError) {
218152
218159
  logger15?.debug({ discoveryError }, "MCP OAuth metadata discovery failed");
218153
218160
  }
218154
- logger15?.debug(
218155
- { error: error?.message },
218156
- "No MCP OAuth authentication requirement detected"
218157
- );
218161
+ logger15?.debug({ error: error?.message }, "No MCP OAuth authentication requirement detected");
218158
218162
  return false;
218159
218163
  };
218160
218164
  var ErrorCode = zodOpenapi.z.enum([
@@ -224022,12 +224026,7 @@ var getFullProject = (db, logger15 = defaultLogger2) => async (params) => {
224022
224026
  inputSchema: functions.inputSchema,
224023
224027
  executeCode: functions.executeCode,
224024
224028
  dependencies: functions.dependencies
224025
- }).from(functionTools).innerJoin(functions, drizzleOrm.eq(functionTools.functionId, functions.id)).where(
224026
- drizzleOrm.and(
224027
- drizzleOrm.eq(functionTools.tenantId, tenantId),
224028
- drizzleOrm.eq(functionTools.projectId, projectId)
224029
- )
224030
- );
224029
+ }).from(functionTools).innerJoin(functions, drizzleOrm.eq(functionTools.functionId, functions.id)).where(drizzleOrm.and(drizzleOrm.eq(functionTools.tenantId, tenantId), drizzleOrm.eq(functionTools.projectId, projectId)));
224031
224030
  for (const item of functionToolsWithFunctions) {
224032
224031
  projectFunctions[item.functionToolId] = {
224033
224032
  id: item.functionId,
@@ -224043,7 +224042,10 @@ var getFullProject = (db, logger15 = defaultLogger2) => async (params) => {
224043
224042
  "Function tools with function data retrieved for project"
224044
224043
  );
224045
224044
  } catch (error) {
224046
- logger15.warn({ tenantId, projectId, error }, "Failed to retrieve function tools for project");
224045
+ logger15.warn(
224046
+ { tenantId, projectId, error },
224047
+ "Failed to retrieve function tools for project"
224048
+ );
224047
224049
  }
224048
224050
  const agents2 = {};
224049
224051
  if (agentList.length > 0) {