@inkeep/agents-core 0.0.0-dev-20260123202200 → 0.0.0-dev-20260123211824

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 (49) hide show
  1. package/dist/auth/auth-schema.d.ts +82 -82
  2. package/dist/auth/auth.d.ts +24 -24
  3. package/dist/auth/auth.js +16 -12
  4. package/dist/auth/authz/client.d.ts +9 -3
  5. package/dist/auth/authz/client.js +24 -17
  6. package/dist/auth/authz/config.d.ts +51 -24
  7. package/dist/auth/authz/config.js +44 -27
  8. package/dist/auth/authz/index.d.ts +3 -3
  9. package/dist/auth/authz/index.js +3 -3
  10. package/dist/auth/authz/permissions.d.ts +0 -4
  11. package/dist/auth/authz/permissions.js +13 -13
  12. package/dist/auth/authz/sync.d.ts +23 -2
  13. package/dist/auth/authz/sync.js +136 -52
  14. package/dist/auth/permissions.d.ts +9 -9
  15. package/dist/client-exports.d.ts +7 -6
  16. package/dist/client-exports.js +2 -1
  17. package/dist/data-access/index.d.ts +2 -2
  18. package/dist/data-access/index.js +2 -2
  19. package/dist/data-access/manage/agentFull.js +2 -0
  20. package/dist/data-access/manage/agents.d.ts +46 -46
  21. package/dist/data-access/manage/agents.js +3 -2
  22. package/dist/data-access/manage/artifactComponents.d.ts +14 -14
  23. package/dist/data-access/manage/contextConfigs.d.ts +12 -12
  24. package/dist/data-access/manage/dataComponents.d.ts +6 -6
  25. package/dist/data-access/manage/functionTools.d.ts +37 -16
  26. package/dist/data-access/manage/functionTools.js +10 -6
  27. package/dist/data-access/manage/subAgentExternalAgentRelations.d.ts +24 -24
  28. package/dist/data-access/manage/subAgentRelations.d.ts +34 -34
  29. package/dist/data-access/manage/subAgentTeamAgentRelations.d.ts +18 -18
  30. package/dist/data-access/manage/subAgents.d.ts +18 -18
  31. package/dist/data-access/manage/tools.d.ts +33 -33
  32. package/dist/data-access/runtime/apiKeys.d.ts +24 -24
  33. package/dist/data-access/runtime/conversations.d.ts +31 -31
  34. package/dist/data-access/runtime/messages.d.ts +18 -18
  35. package/dist/data-access/runtime/organizations.d.ts +2 -2
  36. package/dist/data-access/runtime/organizations.js +2 -2
  37. package/dist/data-access/runtime/tasks.d.ts +7 -7
  38. package/dist/db/manage/manage-schema.d.ts +399 -376
  39. package/dist/db/manage/manage-schema.js +1 -0
  40. package/dist/db/runtime/runtime-schema.d.ts +181 -181
  41. package/dist/index.d.ts +4 -4
  42. package/dist/index.js +4 -4
  43. package/dist/validation/dolt-schemas.d.ts +1 -1
  44. package/dist/validation/schemas.d.ts +1466 -1415
  45. package/drizzle/manage/0004_curious_phil_sheldon.sql +2 -0
  46. package/drizzle/manage/meta/0004_snapshot.json +3141 -0
  47. package/drizzle/manage/meta/_journal.json +7 -0
  48. package/package.json +2 -1
  49. package/spicedb/schema.zed +114 -0
@@ -8,15 +8,14 @@ import { PgTable } from "drizzle-orm/pg-core";
8
8
  declare const getAgentById: (db: AgentsManageDatabaseClient) => (params: {
9
9
  scopes: AgentScopeConfig;
10
10
  }) => Promise<{
11
- id: string;
11
+ description: string | null;
12
12
  name: string;
13
+ tenantId: string;
14
+ projectId: string;
15
+ id: string;
16
+ prompt: string | null;
13
17
  createdAt: string;
14
18
  updatedAt: string;
15
- description: string | null;
16
- projectId: string;
17
- tenantId: string;
18
- defaultSubAgentId: string | null;
19
- contextConfigId: string | null;
20
19
  models: {
21
20
  base?: {
22
21
  model?: string | undefined;
@@ -31,7 +30,11 @@ declare const getAgentById: (db: AgentsManageDatabaseClient) => (params: {
31
30
  providerOptions?: Record<string, any> | undefined;
32
31
  } | undefined;
33
32
  } | null;
34
- prompt: string | null;
33
+ stopWhen: {
34
+ transferCountIs?: number | undefined;
35
+ } | null;
36
+ defaultSubAgentId: string | null;
37
+ contextConfigId: string | null;
35
38
  statusUpdates: {
36
39
  enabled?: boolean | undefined;
37
40
  numEvents?: number | undefined;
@@ -47,22 +50,18 @@ declare const getAgentById: (db: AgentsManageDatabaseClient) => (params: {
47
50
  } | undefined;
48
51
  }[] | undefined;
49
52
  } | null;
50
- stopWhen: {
51
- transferCountIs?: number | undefined;
52
- } | null;
53
53
  } | null>;
54
54
  declare const getAgentWithDefaultSubAgent: (db: AgentsManageDatabaseClient) => (params: {
55
55
  scopes: AgentScopeConfig;
56
56
  }) => Promise<{
57
- id: string;
57
+ description: string | null;
58
58
  name: string;
59
+ tenantId: string;
60
+ projectId: string;
61
+ id: string;
62
+ prompt: string | null;
59
63
  createdAt: string;
60
64
  updatedAt: string;
61
- description: string | null;
62
- projectId: string;
63
- tenantId: string;
64
- defaultSubAgentId: string | null;
65
- contextConfigId: string | null;
66
65
  models: {
67
66
  base?: {
68
67
  model?: string | undefined;
@@ -77,7 +76,11 @@ declare const getAgentWithDefaultSubAgent: (db: AgentsManageDatabaseClient) => (
77
76
  providerOptions?: Record<string, any> | undefined;
78
77
  } | undefined;
79
78
  } | null;
80
- prompt: string | null;
79
+ stopWhen: {
80
+ transferCountIs?: number | undefined;
81
+ } | null;
82
+ defaultSubAgentId: string | null;
83
+ contextConfigId: string | null;
81
84
  statusUpdates: {
82
85
  enabled?: boolean | undefined;
83
86
  numEvents?: number | undefined;
@@ -93,18 +96,16 @@ declare const getAgentWithDefaultSubAgent: (db: AgentsManageDatabaseClient) => (
93
96
  } | undefined;
94
97
  }[] | undefined;
95
98
  } | null;
96
- stopWhen: {
97
- transferCountIs?: number | undefined;
98
- } | null;
99
99
  defaultSubAgent: {
100
- id: string;
100
+ description: string | null;
101
101
  name: string;
102
+ tenantId: string;
103
+ projectId: string;
104
+ id: string;
105
+ prompt: string | null;
106
+ agentId: string;
102
107
  createdAt: string;
103
108
  updatedAt: string;
104
- description: string | null;
105
- agentId: string;
106
- projectId: string;
107
- tenantId: string;
108
109
  models: {
109
110
  base?: {
110
111
  model?: string | undefined;
@@ -119,7 +120,6 @@ declare const getAgentWithDefaultSubAgent: (db: AgentsManageDatabaseClient) => (
119
120
  providerOptions?: Record<string, any> | undefined;
120
121
  } | undefined;
121
122
  } | null;
122
- prompt: string | null;
123
123
  stopWhen: {
124
124
  stepCountIs?: number | undefined;
125
125
  } | null;
@@ -129,15 +129,14 @@ declare const getAgentWithDefaultSubAgent: (db: AgentsManageDatabaseClient) => (
129
129
  declare const listAgents: (db: AgentsManageDatabaseClient) => (params: {
130
130
  scopes: ProjectScopeConfig;
131
131
  }) => Promise<{
132
- id: string;
132
+ description: string | null;
133
133
  name: string;
134
+ tenantId: string;
135
+ projectId: string;
136
+ id: string;
137
+ prompt: string | null;
134
138
  createdAt: string;
135
139
  updatedAt: string;
136
- description: string | null;
137
- projectId: string;
138
- tenantId: string;
139
- defaultSubAgentId: string | null;
140
- contextConfigId: string | null;
141
140
  models: {
142
141
  base?: {
143
142
  model?: string | undefined;
@@ -152,7 +151,11 @@ declare const listAgents: (db: AgentsManageDatabaseClient) => (params: {
152
151
  providerOptions?: Record<string, any> | undefined;
153
152
  } | undefined;
154
153
  } | null;
155
- prompt: string | null;
154
+ stopWhen: {
155
+ transferCountIs?: number | undefined;
156
+ } | null;
157
+ defaultSubAgentId: string | null;
158
+ contextConfigId: string | null;
156
159
  statusUpdates: {
157
160
  enabled?: boolean | undefined;
158
161
  numEvents?: number | undefined;
@@ -168,9 +171,6 @@ declare const listAgents: (db: AgentsManageDatabaseClient) => (params: {
168
171
  } | undefined;
169
172
  }[] | undefined;
170
173
  } | null;
171
- stopWhen: {
172
- transferCountIs?: number | undefined;
173
- } | null;
174
174
  }[]>;
175
175
  declare const listAgentsPaginated: (db: AgentsManageDatabaseClient) => (params: {
176
176
  scopes: ProjectScopeConfig;
@@ -228,15 +228,14 @@ declare const listAgentsPaginated: (db: AgentsManageDatabaseClient) => (params:
228
228
  };
229
229
  }>;
230
230
  declare const createAgent: (db: AgentsManageDatabaseClient) => (data: AgentInsert) => Promise<{
231
- id: string;
231
+ description: string | null;
232
232
  name: string;
233
+ tenantId: string;
234
+ projectId: string;
235
+ id: string;
236
+ prompt: string | null;
233
237
  createdAt: string;
234
238
  updatedAt: string;
235
- description: string | null;
236
- projectId: string;
237
- tenantId: string;
238
- defaultSubAgentId: string | null;
239
- contextConfigId: string | null;
240
239
  models: {
241
240
  base?: {
242
241
  model?: string | undefined;
@@ -251,7 +250,11 @@ declare const createAgent: (db: AgentsManageDatabaseClient) => (data: AgentInser
251
250
  providerOptions?: Record<string, any> | undefined;
252
251
  } | undefined;
253
252
  } | null;
254
- prompt: string | null;
253
+ stopWhen: {
254
+ transferCountIs?: number | undefined;
255
+ } | null;
256
+ defaultSubAgentId: string | null;
257
+ contextConfigId: string | null;
255
258
  statusUpdates: {
256
259
  enabled?: boolean | undefined;
257
260
  numEvents?: number | undefined;
@@ -267,9 +270,6 @@ declare const createAgent: (db: AgentsManageDatabaseClient) => (data: AgentInser
267
270
  } | undefined;
268
271
  }[] | undefined;
269
272
  } | null;
270
- stopWhen: {
271
- transferCountIs?: number | undefined;
272
- } | null;
273
273
  }>;
274
274
  declare const updateAgent: (db: AgentsManageDatabaseClient) => (params: {
275
275
  scopes: AgentScopeConfig;
@@ -198,7 +198,8 @@ const getFullAgentDefinitionInternal = (db) => async ({ scopes: { tenantId, proj
198
198
  tenantId: functionTools.tenantId,
199
199
  projectId: functionTools.projectId,
200
200
  agentId: functionTools.agentId,
201
- agentToolRelationId: subAgentFunctionToolRelations.id
201
+ agentToolRelationId: subAgentFunctionToolRelations.id,
202
+ toolPolicies: subAgentFunctionToolRelations.toolPolicies
202
203
  }).from(subAgentFunctionToolRelations).innerJoin(functionTools, and(eq(subAgentFunctionToolRelations.functionToolId, functionTools.id), eq(subAgentFunctionToolRelations.tenantId, functionTools.tenantId), eq(subAgentFunctionToolRelations.projectId, functionTools.projectId), eq(subAgentFunctionToolRelations.agentId, functionTools.agentId))).where(and(eq(subAgentFunctionToolRelations.tenantId, tenantId), eq(subAgentFunctionToolRelations.projectId, projectId), eq(subAgentFunctionToolRelations.agentId, agentId), eq(subAgentFunctionToolRelations.subAgentId, agent$1.id)));
203
204
  const agentDataComponentIds = (await db.query.subAgentDataComponents.findMany({ where: and(eq(subAgentDataComponents.tenantId, tenantId), eq(subAgentDataComponents.subAgentId, agent$1.id)) })).map((rel) => rel.dataComponentId);
204
205
  const agentArtifactComponentIds = (await db.query.subAgentArtifactComponents.findMany({ where: and(eq(subAgentArtifactComponents.tenantId, tenantId), eq(subAgentArtifactComponents.subAgentId, agent$1.id)) })).map((rel) => rel.artifactComponentId);
@@ -214,7 +215,7 @@ const getFullAgentDefinitionInternal = (db) => async ({ scopes: { tenantId, proj
214
215
  toolId: tool.id,
215
216
  toolSelection: null,
216
217
  headers: null,
217
- toolPolicies: null
218
+ toolPolicies: tool.toolPolicies || null
218
219
  }));
219
220
  const canUse = [...mcpToolCanUse, ...functionToolCanUse];
220
221
  return {
@@ -7,13 +7,13 @@ declare const getArtifactComponentById: (db: AgentsManageDatabaseClient) => (par
7
7
  scopes: ProjectScopeConfig;
8
8
  id: string;
9
9
  }) => Promise<{
10
- id: string;
10
+ description: string | null;
11
11
  name: string;
12
+ tenantId: string;
13
+ projectId: string;
14
+ id: string;
12
15
  createdAt: string;
13
16
  updatedAt: string;
14
- description: string | null;
15
- projectId: string;
16
- tenantId: string;
17
17
  props: Record<string, unknown> | null;
18
18
  render: {
19
19
  component: string;
@@ -49,13 +49,13 @@ declare const listArtifactComponentsPaginated: (db: AgentsManageDatabaseClient)
49
49
  };
50
50
  }>;
51
51
  declare const createArtifactComponent: (db: AgentsManageDatabaseClient) => (params: ArtifactComponentInsert) => Promise<{
52
- id: string;
52
+ description: string | null;
53
53
  name: string;
54
+ tenantId: string;
55
+ projectId: string;
56
+ id: string;
54
57
  createdAt: string;
55
58
  updatedAt: string;
56
- description: string | null;
57
- projectId: string;
58
- tenantId: string;
59
59
  props: Record<string, unknown> | null;
60
60
  render: {
61
61
  component: string;
@@ -104,11 +104,11 @@ declare const associateArtifactComponentWithAgent: (db: AgentsManageDatabaseClie
104
104
  scopes: SubAgentScopeConfig;
105
105
  artifactComponentId: string;
106
106
  }) => Promise<{
107
+ tenantId: string;
108
+ projectId: string;
107
109
  id: string;
108
- createdAt: string;
109
110
  agentId: string;
110
- projectId: string;
111
- tenantId: string;
111
+ createdAt: string;
112
112
  subAgentId: string;
113
113
  artifactComponentId: string;
114
114
  }>;
@@ -147,11 +147,11 @@ declare const upsertAgentArtifactComponentRelation: (db: AgentsManageDatabaseCli
147
147
  scopes: SubAgentScopeConfig;
148
148
  artifactComponentId: string;
149
149
  }) => Promise<{
150
+ tenantId: string;
151
+ projectId: string;
150
152
  id: string;
151
- createdAt: string;
152
153
  agentId: string;
153
- projectId: string;
154
- tenantId: string;
154
+ createdAt: string;
155
155
  subAgentId: string;
156
156
  artifactComponentId: string;
157
157
  } | null>;
@@ -8,26 +8,26 @@ declare const getContextConfigById: (db: AgentsManageDatabaseClient) => (params:
8
8
  scopes: AgentScopeConfig;
9
9
  id: string;
10
10
  }) => Promise<{
11
+ tenantId: string;
12
+ projectId: string;
11
13
  id: string;
14
+ agentId: string;
12
15
  createdAt: string;
13
16
  updatedAt: string;
14
17
  headersSchema: unknown;
15
18
  contextVariables: Record<string, ContextFetchDefinition> | null;
16
- agentId: string;
17
- projectId: string;
18
- tenantId: string;
19
19
  } | undefined>;
20
20
  declare const listContextConfigs: (db: AgentsManageDatabaseClient) => (params: {
21
21
  scopes: AgentScopeConfig;
22
22
  }) => Promise<{
23
+ tenantId: string;
24
+ projectId: string;
23
25
  id: string;
26
+ agentId: string;
24
27
  createdAt: string;
25
28
  updatedAt: string;
26
29
  headersSchema: unknown;
27
30
  contextVariables: Record<string, ContextFetchDefinition> | null;
28
- agentId: string;
29
- projectId: string;
30
- tenantId: string;
31
31
  }[]>;
32
32
  declare const listContextConfigsPaginated: (db: AgentsManageDatabaseClient) => (params: {
33
33
  scopes: AgentScopeConfig;
@@ -42,14 +42,14 @@ declare const listContextConfigsPaginated: (db: AgentsManageDatabaseClient) => (
42
42
  };
43
43
  }>;
44
44
  declare const createContextConfig: (db: AgentsManageDatabaseClient) => (params: ContextConfigInsert) => Promise<{
45
+ tenantId: string;
46
+ projectId: string;
45
47
  id: string;
48
+ agentId: string;
46
49
  createdAt: string;
47
50
  updatedAt: string;
48
51
  headersSchema: unknown;
49
52
  contextVariables: Record<string, ContextFetchDefinition> | null;
50
- agentId: string;
51
- projectId: string;
52
- tenantId: string;
53
53
  }>;
54
54
  declare const updateContextConfig: (db: AgentsManageDatabaseClient) => (params: {
55
55
  scopes: AgentScopeConfig;
@@ -82,14 +82,14 @@ declare const countContextConfigs: (db: AgentsManageDatabaseClient) => (params:
82
82
  declare const upsertContextConfig: (db: AgentsManageDatabaseClient) => (params: {
83
83
  data: ContextConfigInsert;
84
84
  }) => Promise<{
85
+ tenantId: string;
86
+ projectId: string;
85
87
  id: string;
88
+ agentId: string;
86
89
  createdAt: string;
87
90
  updatedAt: string;
88
91
  headersSchema: unknown;
89
92
  contextVariables: Record<string, ContextFetchDefinition> | null;
90
- agentId: string;
91
- projectId: string;
92
- tenantId: string;
93
93
  }>;
94
94
  //#endregion
95
95
  export { countContextConfigs, createContextConfig, deleteContextConfig, getContextConfigById, hasContextConfig, listContextConfigs, listContextConfigsPaginated, updateContextConfig, upsertContextConfig };
@@ -64,11 +64,11 @@ declare const associateDataComponentWithAgent: (db: AgentsManageDatabaseClient)
64
64
  scopes: SubAgentScopeConfig;
65
65
  dataComponentId: string;
66
66
  }) => Promise<{
67
+ tenantId: string;
68
+ projectId: string;
67
69
  id: string;
68
- createdAt: string;
69
70
  agentId: string;
70
- projectId: string;
71
- tenantId: string;
71
+ createdAt: string;
72
72
  subAgentId: string;
73
73
  dataComponentId: string;
74
74
  }>;
@@ -106,11 +106,11 @@ declare const upsertAgentDataComponentRelation: (db: AgentsManageDatabaseClient)
106
106
  scopes: SubAgentScopeConfig;
107
107
  dataComponentId: string;
108
108
  }) => Promise<{
109
+ tenantId: string;
110
+ projectId: string;
109
111
  id: string;
110
- createdAt: string;
111
112
  agentId: string;
112
- projectId: string;
113
- tenantId: string;
113
+ createdAt: string;
114
114
  subAgentId: string;
115
115
  dataComponentId: string;
116
116
  } | null>;
@@ -53,14 +53,14 @@ declare const createFunctionTool: (db: AgentsManageDatabaseClient) => (params: {
53
53
  data: FunctionToolApiInsert;
54
54
  scopes: AgentScopeConfig;
55
55
  }) => Promise<{
56
- id: string;
56
+ description: string | null;
57
57
  name: string;
58
+ tenantId: string;
59
+ projectId: string;
60
+ id: string;
61
+ agentId: string;
58
62
  createdAt: string;
59
63
  updatedAt: string;
60
- description: string | null;
61
- agentId: string;
62
- projectId: string;
63
- tenantId: string;
64
64
  functionId: string;
65
65
  }>;
66
66
  /**
@@ -95,14 +95,14 @@ declare const upsertFunctionTool: (db: AgentsManageDatabaseClient) => (params: {
95
95
  data: FunctionToolApiInsert;
96
96
  scopes: AgentScopeConfig;
97
97
  }) => Promise<{
98
- id: string;
98
+ description: string | null;
99
99
  name: string;
100
+ tenantId: string;
101
+ projectId: string;
102
+ id: string;
103
+ agentId: string;
100
104
  createdAt: string;
101
105
  updatedAt: string;
102
- description: string | null;
103
- agentId: string;
104
- projectId: string;
105
- tenantId: string;
106
106
  functionId: string;
107
107
  }>;
108
108
  declare const getFunctionToolsForSubAgent: (db: AgentsManageDatabaseClient) => (params: {
@@ -125,6 +125,9 @@ declare const getFunctionToolsForSubAgent: (db: AgentsManageDatabaseClient) => (
125
125
  projectId: string;
126
126
  agentId: string;
127
127
  relationshipId: string;
128
+ toolPolicies: Record<string, {
129
+ needsApproval?: boolean;
130
+ }> | null;
128
131
  }[];
129
132
  pagination: {
130
133
  page: number;
@@ -140,6 +143,9 @@ declare const upsertSubAgentFunctionToolRelation: (db: AgentsManageDatabaseClien
140
143
  scopes: AgentScopeConfig;
141
144
  subAgentId: string;
142
145
  functionToolId: string;
146
+ toolPolicies?: Record<string, {
147
+ needsApproval?: boolean;
148
+ }> | null;
143
149
  relationId?: string;
144
150
  }) => Promise<{
145
151
  id: string;
@@ -151,13 +157,19 @@ declare const addFunctionToolToSubAgent: (db: AgentsManageDatabaseClient) => (pa
151
157
  scopes: AgentScopeConfig;
152
158
  subAgentId: string;
153
159
  functionToolId: string;
160
+ toolPolicies?: Record<string, {
161
+ needsApproval?: boolean;
162
+ }> | null;
154
163
  }) => Promise<{
164
+ tenantId: string;
165
+ projectId: string;
155
166
  id: string;
167
+ agentId: string;
156
168
  createdAt: string;
157
169
  updatedAt: string;
158
- agentId: string;
159
- projectId: string;
160
- tenantId: string;
170
+ toolPolicies: Record<string, {
171
+ needsApproval?: boolean;
172
+ }> | null;
161
173
  subAgentId: string;
162
174
  functionToolId: string;
163
175
  }>;
@@ -170,6 +182,9 @@ declare const updateSubAgentFunctionToolRelation: (db: AgentsManageDatabaseClien
170
182
  data: {
171
183
  subAgentId: string;
172
184
  functionToolId: string;
185
+ toolPolicies?: Record<string, {
186
+ needsApproval?: boolean;
187
+ }> | null;
173
188
  };
174
189
  }) => Promise<{
175
190
  id: string;
@@ -207,13 +222,19 @@ declare const associateFunctionToolWithSubAgent: (db: AgentsManageDatabaseClient
207
222
  scopes: AgentScopeConfig;
208
223
  subAgentId: string;
209
224
  functionToolId: string;
225
+ toolPolicies?: Record<string, {
226
+ needsApproval?: boolean;
227
+ }> | null;
210
228
  }) => Promise<{
229
+ tenantId: string;
230
+ projectId: string;
211
231
  id: string;
232
+ agentId: string;
212
233
  createdAt: string;
213
234
  updatedAt: string;
214
- agentId: string;
215
- projectId: string;
216
- tenantId: string;
235
+ toolPolicies: Record<string, {
236
+ needsApproval?: boolean;
237
+ }> | null;
217
238
  subAgentId: string;
218
239
  functionToolId: string;
219
240
  }>;
@@ -112,7 +112,8 @@ const getFunctionToolsForSubAgent = (db) => {
112
112
  tenantId: functionTools.tenantId,
113
113
  projectId: functionTools.projectId,
114
114
  agentId: functionTools.agentId,
115
- relationshipId: subAgentFunctionToolRelations.id
115
+ relationshipId: subAgentFunctionToolRelations.id,
116
+ toolPolicies: subAgentFunctionToolRelations.toolPolicies
116
117
  }).from(subAgentFunctionToolRelations).innerJoin(functionTools, and(eq(subAgentFunctionToolRelations.functionToolId, functionTools.id), eq(subAgentFunctionToolRelations.tenantId, functionTools.tenantId), eq(subAgentFunctionToolRelations.projectId, functionTools.projectId), eq(subAgentFunctionToolRelations.agentId, functionTools.agentId))).where(whereClause).limit(limit).offset(offset).orderBy(desc(subAgentFunctionToolRelations.createdAt)), db.select({ count: count() }).from(subAgentFunctionToolRelations).where(whereClause)]);
117
118
  const total = totalResult[0]?.count || 0;
118
119
  return {
@@ -140,14 +141,15 @@ const getFunctionToolsForSubAgent = (db) => {
140
141
  * Upsert a sub_agent-function tool relation (create if it doesn't exist, update if it does)
141
142
  */
142
143
  const upsertSubAgentFunctionToolRelation = (db) => async (params) => {
143
- const { scopes, subAgentId, functionToolId, relationId } = params;
144
+ const { scopes, subAgentId, functionToolId, toolPolicies, relationId } = params;
144
145
  const { tenantId, projectId, agentId } = scopes;
145
146
  if (relationId) return await updateSubAgentFunctionToolRelation(db)({
146
147
  scopes,
147
148
  relationId,
148
149
  data: {
149
150
  subAgentId,
150
- functionToolId
151
+ functionToolId,
152
+ ...toolPolicies !== void 0 ? { toolPolicies } : {}
151
153
  }
152
154
  });
153
155
  try {
@@ -181,7 +183,7 @@ const upsertSubAgentFunctionToolRelation = (db) => async (params) => {
181
183
  */
182
184
  const addFunctionToolToSubAgent = (db) => {
183
185
  return async (params) => {
184
- const { scopes, subAgentId, functionToolId } = params;
186
+ const { scopes, subAgentId, functionToolId, toolPolicies } = params;
185
187
  const { tenantId, projectId, agentId } = scopes;
186
188
  try {
187
189
  const relationId = generateId();
@@ -191,7 +193,8 @@ const addFunctionToolToSubAgent = (db) => {
191
193
  projectId,
192
194
  agentId,
193
195
  subAgentId,
194
- functionToolId
196
+ functionToolId,
197
+ ...toolPolicies !== void 0 ? { toolPolicies } : {}
195
198
  }).returning();
196
199
  logger.info({
197
200
  tenantId,
@@ -225,7 +228,8 @@ const updateSubAgentFunctionToolRelation = (db) => {
225
228
  try {
226
229
  await db.update(subAgentFunctionToolRelations).set({
227
230
  subAgentId: data.subAgentId,
228
- functionToolId: data.functionToolId
231
+ functionToolId: data.functionToolId,
232
+ ...data.toolPolicies !== void 0 ? { toolPolicies: data.toolPolicies } : {}
229
233
  }).where(and(eq(subAgentFunctionToolRelations.id, relationId), eq(subAgentFunctionToolRelations.tenantId, tenantId), eq(subAgentFunctionToolRelations.projectId, projectId), eq(subAgentFunctionToolRelations.agentId, agentId)));
230
234
  logger.info({
231
235
  tenantId,
@@ -8,15 +8,15 @@ declare const getSubAgentExternalAgentRelationById: (db: AgentsManageDatabaseCli
8
8
  scopes: SubAgentScopeConfig;
9
9
  relationId: string;
10
10
  }) => Promise<{
11
+ tenantId: string;
12
+ projectId: string;
11
13
  id: string;
14
+ agentId: string;
12
15
  createdAt: string;
13
16
  updatedAt: string;
14
17
  headers: Record<string, string> | null;
15
- agentId: string;
16
- projectId: string;
17
- tenantId: string;
18
- subAgentId: string;
19
18
  externalAgentId: string;
19
+ subAgentId: string;
20
20
  } | undefined>;
21
21
  declare const listSubAgentExternalAgentRelations: (db: AgentsManageDatabaseClient) => (params: {
22
22
  scopes: SubAgentScopeConfig;
@@ -43,28 +43,28 @@ declare const listSubAgentExternalAgentRelations: (db: AgentsManageDatabaseClien
43
43
  declare const getSubAgentExternalAgentRelations: (db: AgentsManageDatabaseClient) => (params: {
44
44
  scopes: SubAgentScopeConfig;
45
45
  }) => Promise<{
46
+ tenantId: string;
47
+ projectId: string;
46
48
  id: string;
49
+ agentId: string;
47
50
  createdAt: string;
48
51
  updatedAt: string;
49
52
  headers: Record<string, string> | null;
50
- agentId: string;
51
- projectId: string;
52
- tenantId: string;
53
- subAgentId: string;
54
53
  externalAgentId: string;
54
+ subAgentId: string;
55
55
  }[]>;
56
56
  declare const getSubAgentExternalAgentRelationsByAgent: (db: AgentsManageDatabaseClient) => (params: {
57
57
  scopes: AgentScopeConfig;
58
58
  }) => Promise<{
59
+ tenantId: string;
60
+ projectId: string;
59
61
  id: string;
62
+ agentId: string;
60
63
  createdAt: string;
61
64
  updatedAt: string;
62
65
  headers: Record<string, string> | null;
63
- agentId: string;
64
- projectId: string;
65
- tenantId: string;
66
- subAgentId: string;
67
66
  externalAgentId: string;
67
+ subAgentId: string;
68
68
  }[]>;
69
69
  declare const getSubAgentExternalAgentRelationsByExternalAgent: (db: AgentsManageDatabaseClient) => (params: {
70
70
  scopes: AgentScopeConfig;
@@ -179,15 +179,15 @@ declare const createSubAgentExternalAgentRelation: (db: AgentsManageDatabaseClie
179
179
  headers?: Record<string, string> | null;
180
180
  };
181
181
  }) => Promise<{
182
+ tenantId: string;
183
+ projectId: string;
182
184
  id: string;
185
+ agentId: string;
183
186
  createdAt: string;
184
187
  updatedAt: string;
185
188
  headers: Record<string, string> | null;
186
- agentId: string;
187
- projectId: string;
188
- tenantId: string;
189
- subAgentId: string;
190
189
  externalAgentId: string;
190
+ subAgentId: string;
191
191
  }>;
192
192
  /**
193
193
  * Check if sub-agent external agent relation exists by params
@@ -196,15 +196,15 @@ declare const getSubAgentExternalAgentRelationByParams: (db: AgentsManageDatabas
196
196
  scopes: SubAgentScopeConfig;
197
197
  externalAgentId: string;
198
198
  }) => Promise<{
199
+ tenantId: string;
200
+ projectId: string;
199
201
  id: string;
202
+ agentId: string;
200
203
  createdAt: string;
201
204
  updatedAt: string;
202
205
  headers: Record<string, string> | null;
203
- agentId: string;
204
- projectId: string;
205
- tenantId: string;
206
- subAgentId: string;
207
206
  externalAgentId: string;
207
+ subAgentId: string;
208
208
  } | undefined>;
209
209
  /**
210
210
  * Upsert sub-agent external agent relation (create if it doesn't exist, update if it does)
@@ -217,15 +217,15 @@ declare const upsertSubAgentExternalAgentRelation: (db: AgentsManageDatabaseClie
217
217
  headers?: Record<string, string> | null;
218
218
  };
219
219
  }) => Promise<{
220
+ tenantId: string;
221
+ projectId: string;
220
222
  id: string;
223
+ agentId: string;
221
224
  createdAt: string;
222
225
  updatedAt: string;
223
226
  headers: Record<string, string> | null;
224
- agentId: string;
225
- projectId: string;
226
- tenantId: string;
227
- subAgentId: string;
228
227
  externalAgentId: string;
228
+ subAgentId: string;
229
229
  }>;
230
230
  declare const updateSubAgentExternalAgentRelation: (db: AgentsManageDatabaseClient) => (params: {
231
231
  scopes: SubAgentScopeConfig;