@taico/client 0.2.0 → 0.2.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.
- package/dist/contracts/types.d.ts +166 -2
- package/dist/src/v1/client/index.d.ts +4 -0
- package/dist/src/v1/client/index.js +1 -0
- package/dist/src/v1/client/models/AgentToolPermissionResponseDto.d.ts +13 -0
- package/dist/src/v1/client/models/AgentToolPermissionResponseDto.js +1 -0
- package/dist/src/v1/client/models/AgentToolPermissionScopeResponseDto.d.ts +10 -0
- package/dist/src/v1/client/models/AgentToolPermissionScopeResponseDto.js +1 -0
- package/dist/src/v1/client/models/AgentToolPermissionServerResponseDto.d.ts +31 -0
- package/dist/src/v1/client/models/AgentToolPermissionServerResponseDto.js +11 -0
- package/dist/src/v1/client/models/RequestAgentExecutionTokenDto.d.ts +2 -2
- package/dist/src/v1/client/models/UpsertAgentToolPermissionDto.d.ts +6 -0
- package/dist/src/v1/client/models/UpsertAgentToolPermissionDto.js +1 -0
- package/dist/src/v1/client/services/AgentService.d.ts +26 -0
- package/dist/src/v1/client/services/AgentService.js +52 -0
- package/dist/src/v2/agent-resource.d.ts +19 -1
- package/dist/src/v2/agent-resource.js +12 -0
- package/dist/src/v2/base-client.d.ts +7 -0
- package/dist/src/v2/base-client.js +59 -11
- package/dist/src/v2/types.d.ts +20 -1
- package/package.json +1 -1
|
@@ -1244,6 +1244,41 @@ export interface paths {
|
|
|
1244
1244
|
patch: operations["AgentsController_patchAgent"];
|
|
1245
1245
|
trace?: never;
|
|
1246
1246
|
};
|
|
1247
|
+
"/api/v1/agents/{actorId}/tool-permissions": {
|
|
1248
|
+
parameters: {
|
|
1249
|
+
query?: never;
|
|
1250
|
+
header?: never;
|
|
1251
|
+
path?: never;
|
|
1252
|
+
cookie?: never;
|
|
1253
|
+
};
|
|
1254
|
+
/** List tool permissions for an agent */
|
|
1255
|
+
get: operations["AgentToolPermissionsController_listAgentToolPermissions"];
|
|
1256
|
+
put?: never;
|
|
1257
|
+
post?: never;
|
|
1258
|
+
delete?: never;
|
|
1259
|
+
options?: never;
|
|
1260
|
+
head?: never;
|
|
1261
|
+
patch?: never;
|
|
1262
|
+
trace?: never;
|
|
1263
|
+
};
|
|
1264
|
+
"/api/v1/agents/{actorId}/tool-permissions/{serverId}": {
|
|
1265
|
+
parameters: {
|
|
1266
|
+
query?: never;
|
|
1267
|
+
header?: never;
|
|
1268
|
+
path?: never;
|
|
1269
|
+
cookie?: never;
|
|
1270
|
+
};
|
|
1271
|
+
get?: never;
|
|
1272
|
+
/** Create or replace an agent tool permission assignment */
|
|
1273
|
+
put: operations["AgentToolPermissionsController_upsertAgentToolPermission"];
|
|
1274
|
+
post?: never;
|
|
1275
|
+
/** Delete an agent tool permission assignment */
|
|
1276
|
+
delete: operations["AgentToolPermissionsController_deleteAgentToolPermission"];
|
|
1277
|
+
options?: never;
|
|
1278
|
+
head?: never;
|
|
1279
|
+
patch?: never;
|
|
1280
|
+
trace?: never;
|
|
1281
|
+
};
|
|
1247
1282
|
"/api/v1/agents/{slug}/tokens": {
|
|
1248
1283
|
parameters: {
|
|
1249
1284
|
query?: never;
|
|
@@ -4217,6 +4252,67 @@ export interface components {
|
|
|
4217
4252
|
*/
|
|
4218
4253
|
concurrencyLimit?: number | null;
|
|
4219
4254
|
};
|
|
4255
|
+
AgentToolPermissionServerResponseDto: {
|
|
4256
|
+
/**
|
|
4257
|
+
* @description MCP server UUID
|
|
4258
|
+
* @example 123e4567-e89b-12d3-a456-426614174000
|
|
4259
|
+
*/
|
|
4260
|
+
id: string;
|
|
4261
|
+
/**
|
|
4262
|
+
* @description MCP server provided identifier
|
|
4263
|
+
* @example tasks
|
|
4264
|
+
*/
|
|
4265
|
+
providedId: string;
|
|
4266
|
+
/**
|
|
4267
|
+
* @description MCP server name
|
|
4268
|
+
* @example Tasks
|
|
4269
|
+
*/
|
|
4270
|
+
name: string;
|
|
4271
|
+
/**
|
|
4272
|
+
* @description MCP server description
|
|
4273
|
+
* @example Task operations exposed via MCP
|
|
4274
|
+
*/
|
|
4275
|
+
description: string;
|
|
4276
|
+
/**
|
|
4277
|
+
* @description MCP server transport type
|
|
4278
|
+
* @example http
|
|
4279
|
+
* @enum {string}
|
|
4280
|
+
*/
|
|
4281
|
+
type: "http" | "stdio";
|
|
4282
|
+
};
|
|
4283
|
+
AgentToolPermissionScopeResponseDto: {
|
|
4284
|
+
/**
|
|
4285
|
+
* @description Scope identifier
|
|
4286
|
+
* @example tasks:read
|
|
4287
|
+
*/
|
|
4288
|
+
id: string;
|
|
4289
|
+
/**
|
|
4290
|
+
* @description Human-readable scope description
|
|
4291
|
+
* @example Read task details
|
|
4292
|
+
*/
|
|
4293
|
+
description: string;
|
|
4294
|
+
};
|
|
4295
|
+
AgentToolPermissionResponseDto: {
|
|
4296
|
+
server: components["schemas"]["AgentToolPermissionServerResponseDto"];
|
|
4297
|
+
/** @description Subset of scopes granted to this agent for this server */
|
|
4298
|
+
grantedScopes: components["schemas"]["AgentToolPermissionScopeResponseDto"][];
|
|
4299
|
+
/**
|
|
4300
|
+
* @description True when this assignment grants every currently available scope on the server
|
|
4301
|
+
* @example false
|
|
4302
|
+
*/
|
|
4303
|
+
hasAllScopes: boolean;
|
|
4304
|
+
};
|
|
4305
|
+
UpsertAgentToolPermissionDto: {
|
|
4306
|
+
/**
|
|
4307
|
+
* @description Subset of scope IDs granted for this tool assignment. Leave empty for unscoped tools or no scope grants.
|
|
4308
|
+
* @default []
|
|
4309
|
+
* @example [
|
|
4310
|
+
* "tasks:read",
|
|
4311
|
+
* "tasks:write"
|
|
4312
|
+
* ]
|
|
4313
|
+
*/
|
|
4314
|
+
scopeIds: string[];
|
|
4315
|
+
};
|
|
4220
4316
|
IssueAccessTokenRequestDto: {
|
|
4221
4317
|
/**
|
|
4222
4318
|
* @description Human-readable name for this token (e.g., "CI/CD Pipeline Token")
|
|
@@ -4345,13 +4441,13 @@ export interface components {
|
|
|
4345
4441
|
};
|
|
4346
4442
|
RequestAgentExecutionTokenDto: {
|
|
4347
4443
|
/**
|
|
4348
|
-
* @description Scopes to grant to the short-lived execution token.
|
|
4444
|
+
* @description Scopes to grant to the short-lived execution token. When omitted, scopes are derived from baseline system access plus assigned tool permissions.
|
|
4349
4445
|
* @example [
|
|
4350
4446
|
* "tasks:read",
|
|
4351
4447
|
* "tasks:write"
|
|
4352
4448
|
* ]
|
|
4353
4449
|
*/
|
|
4354
|
-
scopes
|
|
4450
|
+
scopes?: string[];
|
|
4355
4451
|
/**
|
|
4356
4452
|
* @description Lifetime of the short-lived execution token in seconds. Defaults to the server MCP access token duration.
|
|
4357
4453
|
* @example 600
|
|
@@ -8625,6 +8721,74 @@ export interface operations {
|
|
|
8625
8721
|
};
|
|
8626
8722
|
};
|
|
8627
8723
|
};
|
|
8724
|
+
AgentToolPermissionsController_listAgentToolPermissions: {
|
|
8725
|
+
parameters: {
|
|
8726
|
+
query?: never;
|
|
8727
|
+
header?: never;
|
|
8728
|
+
path: {
|
|
8729
|
+
/** @description Agent actor ID */
|
|
8730
|
+
actorId: string;
|
|
8731
|
+
};
|
|
8732
|
+
cookie?: never;
|
|
8733
|
+
};
|
|
8734
|
+
requestBody?: never;
|
|
8735
|
+
responses: {
|
|
8736
|
+
200: {
|
|
8737
|
+
headers: {
|
|
8738
|
+
[name: string]: unknown;
|
|
8739
|
+
};
|
|
8740
|
+
content: {
|
|
8741
|
+
"application/json": components["schemas"]["AgentToolPermissionResponseDto"][];
|
|
8742
|
+
};
|
|
8743
|
+
};
|
|
8744
|
+
};
|
|
8745
|
+
};
|
|
8746
|
+
AgentToolPermissionsController_upsertAgentToolPermission: {
|
|
8747
|
+
parameters: {
|
|
8748
|
+
query?: never;
|
|
8749
|
+
header?: never;
|
|
8750
|
+
path: {
|
|
8751
|
+
actorId: string;
|
|
8752
|
+
serverId: string;
|
|
8753
|
+
};
|
|
8754
|
+
cookie?: never;
|
|
8755
|
+
};
|
|
8756
|
+
requestBody: {
|
|
8757
|
+
content: {
|
|
8758
|
+
"application/json": components["schemas"]["UpsertAgentToolPermissionDto"];
|
|
8759
|
+
};
|
|
8760
|
+
};
|
|
8761
|
+
responses: {
|
|
8762
|
+
200: {
|
|
8763
|
+
headers: {
|
|
8764
|
+
[name: string]: unknown;
|
|
8765
|
+
};
|
|
8766
|
+
content: {
|
|
8767
|
+
"application/json": components["schemas"]["AgentToolPermissionResponseDto"];
|
|
8768
|
+
};
|
|
8769
|
+
};
|
|
8770
|
+
};
|
|
8771
|
+
};
|
|
8772
|
+
AgentToolPermissionsController_deleteAgentToolPermission: {
|
|
8773
|
+
parameters: {
|
|
8774
|
+
query?: never;
|
|
8775
|
+
header?: never;
|
|
8776
|
+
path: {
|
|
8777
|
+
actorId: string;
|
|
8778
|
+
serverId: string;
|
|
8779
|
+
};
|
|
8780
|
+
cookie?: never;
|
|
8781
|
+
};
|
|
8782
|
+
requestBody?: never;
|
|
8783
|
+
responses: {
|
|
8784
|
+
204: {
|
|
8785
|
+
headers: {
|
|
8786
|
+
[name: string]: unknown;
|
|
8787
|
+
};
|
|
8788
|
+
content?: never;
|
|
8789
|
+
};
|
|
8790
|
+
};
|
|
8791
|
+
};
|
|
8628
8792
|
AgentTokensController_listTokens: {
|
|
8629
8793
|
parameters: {
|
|
8630
8794
|
query?: never;
|
|
@@ -11,6 +11,9 @@ export type { AgentListResponseDto } from './models/AgentListResponseDto.js';
|
|
|
11
11
|
export { AgentResponseDto } from './models/AgentResponseDto.js';
|
|
12
12
|
export type { AgentRunListResponseDto } from './models/AgentRunListResponseDto.js';
|
|
13
13
|
export type { AgentRunResponseDto } from './models/AgentRunResponseDto.js';
|
|
14
|
+
export type { AgentToolPermissionResponseDto } from './models/AgentToolPermissionResponseDto.js';
|
|
15
|
+
export type { AgentToolPermissionScopeResponseDto } from './models/AgentToolPermissionScopeResponseDto.js';
|
|
16
|
+
export { AgentToolPermissionServerResponseDto } from './models/AgentToolPermissionServerResponseDto.js';
|
|
14
17
|
export type { AnswerInputRequestDto } from './models/AnswerInputRequestDto.js';
|
|
15
18
|
export type { AppendBlockDto } from './models/AppendBlockDto.js';
|
|
16
19
|
export type { AppendThreadStateDto } from './models/AppendThreadStateDto.js';
|
|
@@ -129,6 +132,7 @@ export type { UpdateTaskBlueprintDto } from './models/UpdateTaskBlueprintDto.js'
|
|
|
129
132
|
export type { UpdateTaskDto } from './models/UpdateTaskDto.js';
|
|
130
133
|
export type { UpdateThreadDto } from './models/UpdateThreadDto.js';
|
|
131
134
|
export type { UpdateThreadStateDto } from './models/UpdateThreadStateDto.js';
|
|
135
|
+
export type { UpsertAgentToolPermissionDto } from './models/UpsertAgentToolPermissionDto.js';
|
|
132
136
|
export { UserResponseDto } from './models/UserResponseDto.js';
|
|
133
137
|
export { ActorsService } from './services/ActorsService.js';
|
|
134
138
|
export { AgentService } from './services/AgentService.js';
|
|
@@ -8,6 +8,7 @@ export { OpenAPI } from './core/OpenAPI.js';
|
|
|
8
8
|
export { ActiveTaskExecutionResponseDto } from './models/ActiveTaskExecutionResponseDto.js';
|
|
9
9
|
export { ActorResponseDto } from './models/ActorResponseDto.js';
|
|
10
10
|
export { AgentResponseDto } from './models/AgentResponseDto.js';
|
|
11
|
+
export { AgentToolPermissionServerResponseDto } from './models/AgentToolPermissionServerResponseDto.js';
|
|
11
12
|
export { AuthJourneyResponseDto } from './models/AuthJourneyResponseDto.js';
|
|
12
13
|
export { ChangeTaskStatusDto } from './models/ChangeTaskStatusDto.js';
|
|
13
14
|
export { ChatProviderResponseDto } from './models/ChatProviderResponseDto.js';
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { AgentToolPermissionScopeResponseDto } from './AgentToolPermissionScopeResponseDto.js';
|
|
2
|
+
import type { AgentToolPermissionServerResponseDto } from './AgentToolPermissionServerResponseDto.js';
|
|
3
|
+
export type AgentToolPermissionResponseDto = {
|
|
4
|
+
server: AgentToolPermissionServerResponseDto;
|
|
5
|
+
/**
|
|
6
|
+
* Subset of scopes granted to this agent for this server
|
|
7
|
+
*/
|
|
8
|
+
grantedScopes: Array<AgentToolPermissionScopeResponseDto>;
|
|
9
|
+
/**
|
|
10
|
+
* True when this assignment grants every currently available scope on the server
|
|
11
|
+
*/
|
|
12
|
+
hasAllScopes: boolean;
|
|
13
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
export type AgentToolPermissionServerResponseDto = {
|
|
2
|
+
/**
|
|
3
|
+
* MCP server UUID
|
|
4
|
+
*/
|
|
5
|
+
id: string;
|
|
6
|
+
/**
|
|
7
|
+
* MCP server provided identifier
|
|
8
|
+
*/
|
|
9
|
+
providedId: string;
|
|
10
|
+
/**
|
|
11
|
+
* MCP server name
|
|
12
|
+
*/
|
|
13
|
+
name: string;
|
|
14
|
+
/**
|
|
15
|
+
* MCP server description
|
|
16
|
+
*/
|
|
17
|
+
description: string;
|
|
18
|
+
/**
|
|
19
|
+
* MCP server transport type
|
|
20
|
+
*/
|
|
21
|
+
type: AgentToolPermissionServerResponseDto.type;
|
|
22
|
+
};
|
|
23
|
+
export declare namespace AgentToolPermissionServerResponseDto {
|
|
24
|
+
/**
|
|
25
|
+
* MCP server transport type
|
|
26
|
+
*/
|
|
27
|
+
enum type {
|
|
28
|
+
HTTP = "http",
|
|
29
|
+
STDIO = "stdio"
|
|
30
|
+
}
|
|
31
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export var AgentToolPermissionServerResponseDto;
|
|
2
|
+
(function (AgentToolPermissionServerResponseDto) {
|
|
3
|
+
/**
|
|
4
|
+
* MCP server transport type
|
|
5
|
+
*/
|
|
6
|
+
let type;
|
|
7
|
+
(function (type) {
|
|
8
|
+
type["HTTP"] = "http";
|
|
9
|
+
type["STDIO"] = "stdio";
|
|
10
|
+
})(type = AgentToolPermissionServerResponseDto.type || (AgentToolPermissionServerResponseDto.type = {}));
|
|
11
|
+
})(AgentToolPermissionServerResponseDto || (AgentToolPermissionServerResponseDto = {}));
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
export type RequestAgentExecutionTokenDto = {
|
|
2
2
|
/**
|
|
3
|
-
* Scopes to grant to the short-lived execution token.
|
|
3
|
+
* Scopes to grant to the short-lived execution token. When omitted, scopes are derived from baseline system access plus assigned tool permissions.
|
|
4
4
|
*/
|
|
5
|
-
scopes
|
|
5
|
+
scopes?: Array<string>;
|
|
6
6
|
/**
|
|
7
7
|
* Lifetime of the short-lived execution token in seconds. Defaults to the server MCP access token duration.
|
|
8
8
|
*/
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import type { AgentListResponseDto } from '../models/AgentListResponseDto.js';
|
|
2
2
|
import type { AgentResponseDto } from '../models/AgentResponseDto.js';
|
|
3
|
+
import type { AgentToolPermissionResponseDto } from '../models/AgentToolPermissionResponseDto.js';
|
|
3
4
|
import type { CreateAgentDto } from '../models/CreateAgentDto.js';
|
|
4
5
|
import type { PatchAgentDto } from '../models/PatchAgentDto.js';
|
|
6
|
+
import type { UpsertAgentToolPermissionDto } from '../models/UpsertAgentToolPermissionDto.js';
|
|
5
7
|
import type { CancelablePromise } from '../core/CancelablePromise.js';
|
|
6
8
|
import type { OpenAPIConfig } from '../core/OpenAPI.js';
|
|
7
9
|
export declare class AgentService {
|
|
@@ -43,4 +45,28 @@ export declare class AgentService {
|
|
|
43
45
|
* @throws ApiError
|
|
44
46
|
*/
|
|
45
47
|
static agentsControllerDeleteAgent(actorId: string, config?: OpenAPIConfig): CancelablePromise<void>;
|
|
48
|
+
/**
|
|
49
|
+
* List tool permissions for an agent
|
|
50
|
+
* @param actorId Agent actor ID
|
|
51
|
+
* @returns AgentToolPermissionResponseDto
|
|
52
|
+
* @throws ApiError
|
|
53
|
+
*/
|
|
54
|
+
static agentToolPermissionsControllerListAgentToolPermissions(actorId: string, config?: OpenAPIConfig): CancelablePromise<Array<AgentToolPermissionResponseDto>>;
|
|
55
|
+
/**
|
|
56
|
+
* Create or replace an agent tool permission assignment
|
|
57
|
+
* @param actorId
|
|
58
|
+
* @param serverId
|
|
59
|
+
* @param requestBody
|
|
60
|
+
* @returns AgentToolPermissionResponseDto
|
|
61
|
+
* @throws ApiError
|
|
62
|
+
*/
|
|
63
|
+
static agentToolPermissionsControllerUpsertAgentToolPermission(actorId: string, serverId: string, requestBody: UpsertAgentToolPermissionDto, config?: OpenAPIConfig): CancelablePromise<AgentToolPermissionResponseDto>;
|
|
64
|
+
/**
|
|
65
|
+
* Delete an agent tool permission assignment
|
|
66
|
+
* @param actorId
|
|
67
|
+
* @param serverId
|
|
68
|
+
* @returns void
|
|
69
|
+
* @throws ApiError
|
|
70
|
+
*/
|
|
71
|
+
static agentToolPermissionsControllerDeleteAgentToolPermission(actorId: string, serverId: string, config?: OpenAPIConfig): CancelablePromise<void>;
|
|
46
72
|
}
|
|
@@ -82,4 +82,56 @@ export class AgentService {
|
|
|
82
82
|
},
|
|
83
83
|
});
|
|
84
84
|
}
|
|
85
|
+
/**
|
|
86
|
+
* List tool permissions for an agent
|
|
87
|
+
* @param actorId Agent actor ID
|
|
88
|
+
* @returns AgentToolPermissionResponseDto
|
|
89
|
+
* @throws ApiError
|
|
90
|
+
*/
|
|
91
|
+
static agentToolPermissionsControllerListAgentToolPermissions(actorId, config = OpenAPI) {
|
|
92
|
+
return __request(config, {
|
|
93
|
+
method: 'GET',
|
|
94
|
+
url: '/api/v1/agents/{actorId}/tool-permissions',
|
|
95
|
+
path: {
|
|
96
|
+
'actorId': actorId,
|
|
97
|
+
},
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Create or replace an agent tool permission assignment
|
|
102
|
+
* @param actorId
|
|
103
|
+
* @param serverId
|
|
104
|
+
* @param requestBody
|
|
105
|
+
* @returns AgentToolPermissionResponseDto
|
|
106
|
+
* @throws ApiError
|
|
107
|
+
*/
|
|
108
|
+
static agentToolPermissionsControllerUpsertAgentToolPermission(actorId, serverId, requestBody, config = OpenAPI) {
|
|
109
|
+
return __request(config, {
|
|
110
|
+
method: 'PUT',
|
|
111
|
+
url: '/api/v1/agents/{actorId}/tool-permissions/{serverId}',
|
|
112
|
+
path: {
|
|
113
|
+
'actorId': actorId,
|
|
114
|
+
'serverId': serverId,
|
|
115
|
+
},
|
|
116
|
+
body: requestBody,
|
|
117
|
+
mediaType: 'application/json',
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Delete an agent tool permission assignment
|
|
122
|
+
* @param actorId
|
|
123
|
+
* @param serverId
|
|
124
|
+
* @returns void
|
|
125
|
+
* @throws ApiError
|
|
126
|
+
*/
|
|
127
|
+
static agentToolPermissionsControllerDeleteAgentToolPermission(actorId, serverId, config = OpenAPI) {
|
|
128
|
+
return __request(config, {
|
|
129
|
+
method: 'DELETE',
|
|
130
|
+
url: '/api/v1/agents/{actorId}/tool-permissions/{serverId}',
|
|
131
|
+
path: {
|
|
132
|
+
'actorId': actorId,
|
|
133
|
+
'serverId': serverId,
|
|
134
|
+
},
|
|
135
|
+
});
|
|
136
|
+
}
|
|
85
137
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BaseClient, ClientConfig } from './base-client.js';
|
|
2
|
-
import type { AgentListResponseDto, AgentResponseDto, CreateAgentDto, PatchAgentDto } from './types.js';
|
|
2
|
+
import type { AgentListResponseDto, AgentResponseDto, AgentToolPermissionResponseDto, CreateAgentDto, PatchAgentDto, UpsertAgentToolPermissionDto } from './types.js';
|
|
3
3
|
export declare class AgentResource extends BaseClient {
|
|
4
4
|
constructor(config: ClientConfig);
|
|
5
5
|
/** Create a new agent */
|
|
@@ -30,4 +30,22 @@ export declare class AgentResource extends BaseClient {
|
|
|
30
30
|
actorId: string;
|
|
31
31
|
signal?: AbortSignal;
|
|
32
32
|
}): Promise<void>;
|
|
33
|
+
/** List tool permissions for an agent */
|
|
34
|
+
AgentToolPermissionsController_listAgentToolPermissions(params: {
|
|
35
|
+
actorId: string;
|
|
36
|
+
signal?: AbortSignal;
|
|
37
|
+
}): Promise<AgentToolPermissionResponseDto[]>;
|
|
38
|
+
/** Create or replace an agent tool permission assignment */
|
|
39
|
+
AgentToolPermissionsController_upsertAgentToolPermission(params: {
|
|
40
|
+
actorId: string;
|
|
41
|
+
serverId: string;
|
|
42
|
+
body: UpsertAgentToolPermissionDto;
|
|
43
|
+
signal?: AbortSignal;
|
|
44
|
+
}): Promise<AgentToolPermissionResponseDto>;
|
|
45
|
+
/** Delete an agent tool permission assignment */
|
|
46
|
+
AgentToolPermissionsController_deleteAgentToolPermission(params: {
|
|
47
|
+
actorId: string;
|
|
48
|
+
serverId: string;
|
|
49
|
+
signal?: AbortSignal;
|
|
50
|
+
}): Promise<void>;
|
|
33
51
|
}
|
|
@@ -23,4 +23,16 @@ export class AgentResource extends BaseClient {
|
|
|
23
23
|
async AgentsController_deleteAgent(params) {
|
|
24
24
|
return this.request('DELETE', `/api/v1/agents/${params.actorId}`, { signal: params?.signal });
|
|
25
25
|
}
|
|
26
|
+
/** List tool permissions for an agent */
|
|
27
|
+
async AgentToolPermissionsController_listAgentToolPermissions(params) {
|
|
28
|
+
return this.request('GET', `/api/v1/agents/${params.actorId}/tool-permissions`, { signal: params?.signal });
|
|
29
|
+
}
|
|
30
|
+
/** Create or replace an agent tool permission assignment */
|
|
31
|
+
async AgentToolPermissionsController_upsertAgentToolPermission(params) {
|
|
32
|
+
return this.request('PUT', `/api/v1/agents/${params.actorId}/tool-permissions/${params.serverId}`, { body: params.body, signal: params?.signal });
|
|
33
|
+
}
|
|
34
|
+
/** Delete an agent tool permission assignment */
|
|
35
|
+
async AgentToolPermissionsController_deleteAgentToolPermission(params) {
|
|
36
|
+
return this.request('DELETE', `/api/v1/agents/${params.actorId}/tool-permissions/${params.serverId}`, { signal: params?.signal });
|
|
37
|
+
}
|
|
26
38
|
}
|
|
@@ -8,9 +8,16 @@ export interface ClientConfig {
|
|
|
8
8
|
credentials?: 'include' | 'same-origin' | 'omit';
|
|
9
9
|
headers?: Record<string, string>;
|
|
10
10
|
}
|
|
11
|
+
export declare class ApiError extends Error {
|
|
12
|
+
readonly status: number;
|
|
13
|
+
readonly statusText: string;
|
|
14
|
+
readonly body: unknown;
|
|
15
|
+
constructor(response: Response, body: unknown);
|
|
16
|
+
}
|
|
11
17
|
export declare class BaseClient {
|
|
12
18
|
protected config: ClientConfig;
|
|
13
19
|
constructor(config: ClientConfig);
|
|
20
|
+
private parseResponseBody;
|
|
14
21
|
private buildAuthHeaders;
|
|
15
22
|
protected request<T>(method: string, path: string, options?: {
|
|
16
23
|
params?: Record<string, any>;
|
|
@@ -1,8 +1,62 @@
|
|
|
1
|
+
function isRecord(value) {
|
|
2
|
+
return typeof value === 'object' && value !== null;
|
|
3
|
+
}
|
|
4
|
+
function getErrorMessageFromBody(body) {
|
|
5
|
+
if (!isRecord(body)) {
|
|
6
|
+
return undefined;
|
|
7
|
+
}
|
|
8
|
+
const detail = body.detail;
|
|
9
|
+
if (typeof detail === 'string' && detail.length > 0) {
|
|
10
|
+
return detail;
|
|
11
|
+
}
|
|
12
|
+
const message = body.message;
|
|
13
|
+
if (typeof message === 'string' && message.length > 0) {
|
|
14
|
+
return message;
|
|
15
|
+
}
|
|
16
|
+
const title = body.title;
|
|
17
|
+
if (typeof title === 'string' && title.length > 0) {
|
|
18
|
+
return title;
|
|
19
|
+
}
|
|
20
|
+
const errorDescription = body.error_description;
|
|
21
|
+
if (typeof errorDescription === 'string' && errorDescription.length > 0) {
|
|
22
|
+
return errorDescription;
|
|
23
|
+
}
|
|
24
|
+
return undefined;
|
|
25
|
+
}
|
|
26
|
+
export class ApiError extends Error {
|
|
27
|
+
status;
|
|
28
|
+
statusText;
|
|
29
|
+
body;
|
|
30
|
+
constructor(response, body) {
|
|
31
|
+
const message = getErrorMessageFromBody(body) ?? `HTTP ${response.status}: ${response.statusText}`;
|
|
32
|
+
super(message);
|
|
33
|
+
this.name = 'ApiError';
|
|
34
|
+
this.status = response.status;
|
|
35
|
+
this.statusText = response.statusText;
|
|
36
|
+
this.body = body;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
1
39
|
export class BaseClient {
|
|
2
40
|
config;
|
|
3
41
|
constructor(config) {
|
|
4
42
|
this.config = config;
|
|
5
43
|
}
|
|
44
|
+
async parseResponseBody(response) {
|
|
45
|
+
if (response.status === 204 || response.headers.get('content-length') === '0') {
|
|
46
|
+
return undefined;
|
|
47
|
+
}
|
|
48
|
+
const contentType = response.headers.get('content-type');
|
|
49
|
+
if (contentType?.includes('application/json')) {
|
|
50
|
+
try {
|
|
51
|
+
return await response.json();
|
|
52
|
+
}
|
|
53
|
+
catch {
|
|
54
|
+
return undefined;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
const text = await response.text();
|
|
58
|
+
return text.length > 0 ? text : undefined;
|
|
59
|
+
}
|
|
6
60
|
async buildAuthHeaders() {
|
|
7
61
|
const headers = {};
|
|
8
62
|
if (this.config.getAccessToken) {
|
|
@@ -56,17 +110,10 @@ export class BaseClient {
|
|
|
56
110
|
credentials: this.config.credentials,
|
|
57
111
|
});
|
|
58
112
|
if (!response.ok) {
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
// Handle no content responses
|
|
62
|
-
if (response.status === 204 || response.headers.get('content-length') === '0') {
|
|
63
|
-
return undefined;
|
|
64
|
-
}
|
|
65
|
-
const contentType = response.headers.get('content-type');
|
|
66
|
-
if (contentType?.includes('application/json')) {
|
|
67
|
-
return response.json();
|
|
113
|
+
const errorBody = await this.parseResponseBody(response);
|
|
114
|
+
throw new ApiError(response, errorBody);
|
|
68
115
|
}
|
|
69
|
-
return
|
|
116
|
+
return await this.parseResponseBody(response);
|
|
70
117
|
}
|
|
71
118
|
async *streamEvents(path, options) {
|
|
72
119
|
const url = new URL(path, this.config.baseUrl);
|
|
@@ -106,7 +153,8 @@ export class BaseClient {
|
|
|
106
153
|
credentials: this.config.credentials,
|
|
107
154
|
});
|
|
108
155
|
if (!response.ok) {
|
|
109
|
-
|
|
156
|
+
const errorBody = await this.parseResponseBody(response);
|
|
157
|
+
throw new ApiError(response, errorBody);
|
|
110
158
|
}
|
|
111
159
|
if (!response.body) {
|
|
112
160
|
throw new Error('Response body is null');
|
package/dist/src/v2/types.d.ts
CHANGED
|
@@ -601,6 +601,25 @@ export interface PatchAgentDto {
|
|
|
601
601
|
isActive?: boolean;
|
|
602
602
|
concurrencyLimit?: number | null;
|
|
603
603
|
}
|
|
604
|
+
export interface AgentToolPermissionServerResponseDto {
|
|
605
|
+
id: string;
|
|
606
|
+
providedId: string;
|
|
607
|
+
name: string;
|
|
608
|
+
description: string;
|
|
609
|
+
type: 'http' | 'stdio';
|
|
610
|
+
}
|
|
611
|
+
export interface AgentToolPermissionScopeResponseDto {
|
|
612
|
+
id: string;
|
|
613
|
+
description: string;
|
|
614
|
+
}
|
|
615
|
+
export interface AgentToolPermissionResponseDto {
|
|
616
|
+
server: AgentToolPermissionServerResponseDto;
|
|
617
|
+
grantedScopes: AgentToolPermissionScopeResponseDto[];
|
|
618
|
+
hasAllScopes: boolean;
|
|
619
|
+
}
|
|
620
|
+
export interface UpsertAgentToolPermissionDto {
|
|
621
|
+
scopeIds?: string[];
|
|
622
|
+
}
|
|
604
623
|
export interface IssueAccessTokenRequestDto {
|
|
605
624
|
name: string;
|
|
606
625
|
scopes: string[];
|
|
@@ -630,7 +649,7 @@ export interface IssuedAccessTokenResponseDto {
|
|
|
630
649
|
isValid: boolean;
|
|
631
650
|
}
|
|
632
651
|
export interface RequestAgentExecutionTokenDto {
|
|
633
|
-
scopes
|
|
652
|
+
scopes?: string[];
|
|
634
653
|
expirationSeconds?: number;
|
|
635
654
|
}
|
|
636
655
|
export interface AgentExecutionTokenResponseDto {
|