@composio/client 0.1.0-alpha.67 → 0.1.0-alpha.69
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/CHANGELOG.md +24 -0
- package/internal/types.d.mts +6 -6
- package/internal/types.d.mts.map +1 -1
- package/internal/types.d.ts +6 -6
- package/internal/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/resources/auth-configs.js +6 -6
- package/resources/auth-configs.js.map +1 -1
- package/resources/auth-configs.mjs +6 -6
- package/resources/auth-configs.mjs.map +1 -1
- package/resources/cli/cli.js +2 -2
- package/resources/cli/cli.js.map +1 -1
- package/resources/cli/cli.mjs +2 -2
- package/resources/cli/cli.mjs.map +1 -1
- package/resources/cli/realtime.js +2 -2
- package/resources/cli/realtime.js.map +1 -1
- package/resources/cli/realtime.mjs +2 -2
- package/resources/cli/realtime.mjs.map +1 -1
- package/resources/connected-accounts.d.mts +164 -11
- package/resources/connected-accounts.d.mts.map +1 -1
- package/resources/connected-accounts.d.ts +164 -11
- package/resources/connected-accounts.d.ts.map +1 -1
- package/resources/connected-accounts.js +16 -7
- package/resources/connected-accounts.js.map +1 -1
- package/resources/connected-accounts.mjs +16 -7
- package/resources/connected-accounts.mjs.map +1 -1
- package/resources/files.js +2 -2
- package/resources/files.js.map +1 -1
- package/resources/files.mjs +2 -2
- package/resources/files.mjs.map +1 -1
- package/resources/link.d.mts +78 -44
- package/resources/link.d.mts.map +1 -1
- package/resources/link.d.ts +78 -44
- package/resources/link.d.ts.map +1 -1
- package/resources/link.js +1 -1
- package/resources/link.js.map +1 -1
- package/resources/link.mjs +1 -1
- package/resources/link.mjs.map +1 -1
- package/resources/logs/tools.js +2 -2
- package/resources/logs/tools.js.map +1 -1
- package/resources/logs/tools.mjs +2 -2
- package/resources/logs/tools.mjs.map +1 -1
- package/resources/logs/triggers.js +2 -2
- package/resources/logs/triggers.js.map +1 -1
- package/resources/logs/triggers.mjs +2 -2
- package/resources/logs/triggers.mjs.map +1 -1
- package/resources/mcp/custom.js +1 -1
- package/resources/mcp/custom.js.map +1 -1
- package/resources/mcp/custom.mjs +1 -1
- package/resources/mcp/custom.mjs.map +1 -1
- package/resources/mcp/generate.js +1 -1
- package/resources/mcp/generate.js.map +1 -1
- package/resources/mcp/generate.mjs +1 -1
- package/resources/mcp/generate.mjs.map +1 -1
- package/resources/mcp/mcp.js +6 -6
- package/resources/mcp/mcp.js.map +1 -1
- package/resources/mcp/mcp.mjs +6 -6
- package/resources/mcp/mcp.mjs.map +1 -1
- package/resources/migration.js +1 -1
- package/resources/migration.js.map +1 -1
- package/resources/migration.mjs +1 -1
- package/resources/migration.mjs.map +1 -1
- package/resources/project/config.js +2 -2
- package/resources/project/config.js.map +1 -1
- package/resources/project/config.mjs +2 -2
- package/resources/project/config.mjs.map +1 -1
- package/resources/tool-router/index.d.mts +1 -1
- package/resources/tool-router/index.d.mts.map +1 -1
- package/resources/tool-router/index.d.ts +1 -1
- package/resources/tool-router/index.d.ts.map +1 -1
- package/resources/tool-router/index.js.map +1 -1
- package/resources/tool-router/index.mjs.map +1 -1
- package/resources/tool-router/session/files.js +4 -7
- package/resources/tool-router/session/files.js.map +1 -1
- package/resources/tool-router/session/files.mjs +4 -7
- package/resources/tool-router/session/files.mjs.map +1 -1
- package/resources/tool-router/session/index.d.mts +1 -1
- package/resources/tool-router/session/index.d.mts.map +1 -1
- package/resources/tool-router/session/index.d.ts +1 -1
- package/resources/tool-router/session/index.d.ts.map +1 -1
- package/resources/tool-router/session/index.js.map +1 -1
- package/resources/tool-router/session/index.mjs.map +1 -1
- package/resources/tool-router/session/session.d.mts +2184 -560
- package/resources/tool-router/session/session.d.mts.map +1 -1
- package/resources/tool-router/session/session.d.ts +2184 -560
- package/resources/tool-router/session/session.d.ts.map +1 -1
- package/resources/tool-router/session/session.js +65 -25
- package/resources/tool-router/session/session.js.map +1 -1
- package/resources/tool-router/session/session.mjs +65 -25
- package/resources/tool-router/session/session.mjs.map +1 -1
- package/resources/tool-router/tool-router.d.mts +2 -2
- package/resources/tool-router/tool-router.d.mts.map +1 -1
- package/resources/tool-router/tool-router.d.ts +2 -2
- package/resources/tool-router/tool-router.d.ts.map +1 -1
- package/resources/tool-router/tool-router.js +1 -1
- package/resources/tool-router/tool-router.js.map +1 -1
- package/resources/tool-router/tool-router.mjs +1 -1
- package/resources/tool-router/tool-router.mjs.map +1 -1
- package/resources/toolkits.js +3 -3
- package/resources/toolkits.js.map +1 -1
- package/resources/toolkits.mjs +3 -3
- package/resources/toolkits.mjs.map +1 -1
- package/resources/tools.js +6 -6
- package/resources/tools.js.map +1 -1
- package/resources/tools.mjs +6 -6
- package/resources/tools.mjs.map +1 -1
- package/resources/trigger-instances/manage.js +2 -2
- package/resources/trigger-instances/manage.js.map +1 -1
- package/resources/trigger-instances/manage.mjs +2 -2
- package/resources/trigger-instances/manage.mjs.map +1 -1
- package/resources/trigger-instances/trigger-instances.js +2 -2
- package/resources/trigger-instances/trigger-instances.js.map +1 -1
- package/resources/trigger-instances/trigger-instances.mjs +2 -2
- package/resources/trigger-instances/trigger-instances.mjs.map +1 -1
- package/resources/triggers-types.js +3 -3
- package/resources/triggers-types.js.map +1 -1
- package/resources/triggers-types.mjs +3 -3
- package/resources/triggers-types.mjs.map +1 -1
- package/src/internal/types.ts +6 -8
- package/src/resources/auth-configs.ts +6 -6
- package/src/resources/cli/cli.ts +2 -2
- package/src/resources/cli/realtime.ts +2 -2
- package/src/resources/connected-accounts.ts +285 -18
- package/src/resources/files.ts +2 -2
- package/src/resources/link.ts +122 -61
- package/src/resources/logs/tools.ts +2 -2
- package/src/resources/logs/triggers.ts +2 -2
- package/src/resources/mcp/custom.ts +1 -1
- package/src/resources/mcp/generate.ts +1 -1
- package/src/resources/mcp/mcp.ts +6 -6
- package/src/resources/migration.ts +1 -1
- package/src/resources/project/config.ts +2 -2
- package/src/resources/tool-router/index.ts +6 -0
- package/src/resources/tool-router/session/files.ts +7 -7
- package/src/resources/tool-router/session/index.ts +6 -0
- package/src/resources/tool-router/session/session.ts +2605 -712
- package/src/resources/tool-router/tool-router.ts +13 -1
- package/src/resources/toolkits.ts +3 -3
- package/src/resources/tools.ts +6 -6
- package/src/resources/trigger-instances/manage.ts +2 -2
- package/src/resources/trigger-instances/trigger-instances.ts +2 -2
- package/src/resources/triggers-types.ts +3 -3
- package/src/version.ts +1 -1
- package/version.d.mts +1 -1
- package/version.d.ts +1 -1
- package/version.js +1 -1
- package/version.mjs +1 -1
|
@@ -37,7 +37,7 @@ export class Session extends APIResource {
|
|
|
37
37
|
* ```
|
|
38
38
|
*/
|
|
39
39
|
create(body: SessionCreateParams, options?: RequestOptions): APIPromise<SessionCreateResponse> {
|
|
40
|
-
return this._client.post('/api/v3/tool_router/session', { body, ...options });
|
|
40
|
+
return this._client.post('/api/v3.1/tool_router/session', { body, ...options });
|
|
41
41
|
}
|
|
42
42
|
|
|
43
43
|
/**
|
|
@@ -52,16 +52,53 @@ export class Session extends APIResource {
|
|
|
52
52
|
* ```
|
|
53
53
|
*/
|
|
54
54
|
retrieve(sessionID: string, options?: RequestOptions): APIPromise<SessionRetrieveResponse> {
|
|
55
|
-
return this._client.get(path`/api/v3/tool_router/session/${sessionID}`, options);
|
|
55
|
+
return this._client.get(path`/api/v3.1/tool_router/session/${sessionID}`, options);
|
|
56
56
|
}
|
|
57
57
|
|
|
58
58
|
/**
|
|
59
|
-
*
|
|
60
|
-
*
|
|
61
|
-
*
|
|
62
|
-
*
|
|
63
|
-
*
|
|
64
|
-
*
|
|
59
|
+
* Fetch an existing tool router session by ID.
|
|
60
|
+
*
|
|
61
|
+
* @example
|
|
62
|
+
* ```ts
|
|
63
|
+
* const response = await client.toolRouter.session.attach(
|
|
64
|
+
* 'trs_1a2b3c4d5e6f',
|
|
65
|
+
* );
|
|
66
|
+
* ```
|
|
67
|
+
*/
|
|
68
|
+
attach(
|
|
69
|
+
sessionID: string,
|
|
70
|
+
body: SessionAttachParams | null | undefined = {},
|
|
71
|
+
options?: RequestOptions,
|
|
72
|
+
): APIPromise<SessionAttachResponse> {
|
|
73
|
+
return this._client.post(path`/api/v3.1/tool_router/session/${sessionID}/attach`, { body, ...options });
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
/**
|
|
77
|
+
* Returns the session config history ordered by version DESC (newest first). The
|
|
78
|
+
* live (current) config appears once, on the first page only, with
|
|
79
|
+
* `is_current: true`; archived versions have `is_current: false`.
|
|
80
|
+
*
|
|
81
|
+
* @example
|
|
82
|
+
* ```ts
|
|
83
|
+
* const response =
|
|
84
|
+
* await client.toolRouter.session.configHistory(
|
|
85
|
+
* 'trs_1a2b3c4d5e6f',
|
|
86
|
+
* );
|
|
87
|
+
* ```
|
|
88
|
+
*/
|
|
89
|
+
configHistory(
|
|
90
|
+
sessionID: string,
|
|
91
|
+
query: SessionConfigHistoryParams | null | undefined = {},
|
|
92
|
+
options?: RequestOptions,
|
|
93
|
+
): APIPromise<SessionConfigHistoryResponse> {
|
|
94
|
+
return this._client.get(path`/api/v3.1/tool_router/session/${sessionID}/config_history`, {
|
|
95
|
+
query,
|
|
96
|
+
...options,
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
/**
|
|
101
|
+
* Execute a tool (meta or app) within an existing tool router session.
|
|
65
102
|
*
|
|
66
103
|
* @example
|
|
67
104
|
* ```ts
|
|
@@ -76,13 +113,12 @@ export class Session extends APIResource {
|
|
|
76
113
|
body: SessionExecuteParams,
|
|
77
114
|
options?: RequestOptions,
|
|
78
115
|
): APIPromise<SessionExecuteResponse> {
|
|
79
|
-
return this._client.post(path`/api/v3/tool_router/session/${sessionID}/execute`, { body, ...options });
|
|
116
|
+
return this._client.post(path`/api/v3.1/tool_router/session/${sessionID}/execute`, { body, ...options });
|
|
80
117
|
}
|
|
81
118
|
|
|
82
119
|
/**
|
|
83
|
-
*
|
|
84
|
-
*
|
|
85
|
-
* /execute endpoint.
|
|
120
|
+
* Execute a Composio meta tool (COMPOSIO\_\*) within an existing tool router
|
|
121
|
+
* session.
|
|
86
122
|
*
|
|
87
123
|
* @example
|
|
88
124
|
* ```ts
|
|
@@ -98,7 +134,7 @@ export class Session extends APIResource {
|
|
|
98
134
|
body: SessionExecuteMetaParams,
|
|
99
135
|
options?: RequestOptions,
|
|
100
136
|
): APIPromise<SessionExecuteMetaResponse> {
|
|
101
|
-
return this._client.post(path`/api/v3/tool_router/session/${sessionID}/execute_meta`, {
|
|
137
|
+
return this._client.post(path`/api/v3.1/tool_router/session/${sessionID}/execute_meta`, {
|
|
102
138
|
body,
|
|
103
139
|
...options,
|
|
104
140
|
});
|
|
@@ -122,7 +158,28 @@ export class Session extends APIResource {
|
|
|
122
158
|
body: SessionLinkParams,
|
|
123
159
|
options?: RequestOptions,
|
|
124
160
|
): APIPromise<SessionLinkResponse> {
|
|
125
|
-
return this._client.post(path`/api/v3/tool_router/session/${sessionID}/link`, { body, ...options });
|
|
161
|
+
return this._client.post(path`/api/v3.1/tool_router/session/${sessionID}/link`, { body, ...options });
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
/**
|
|
165
|
+
* Partially updates the configuration of an existing tool router session. Only the
|
|
166
|
+
* fields provided in the request body will be updated. Uses optimistic concurrency
|
|
167
|
+
* control to prevent lost updates. The previous config is stored in config
|
|
168
|
+
* history.
|
|
169
|
+
*
|
|
170
|
+
* @example
|
|
171
|
+
* ```ts
|
|
172
|
+
* const response = await client.toolRouter.session.patch(
|
|
173
|
+
* 'trs_1a2b3c4d5e6f',
|
|
174
|
+
* );
|
|
175
|
+
* ```
|
|
176
|
+
*/
|
|
177
|
+
patch(
|
|
178
|
+
sessionID: string,
|
|
179
|
+
body: SessionPatchParams | null | undefined = {},
|
|
180
|
+
options?: RequestOptions,
|
|
181
|
+
): APIPromise<SessionPatchResponse> {
|
|
182
|
+
return this._client.patch(path`/api/v3.1/tool_router/session/${sessionID}`, { body, ...options });
|
|
126
183
|
}
|
|
127
184
|
|
|
128
185
|
/**
|
|
@@ -152,16 +209,15 @@ export class Session extends APIResource {
|
|
|
152
209
|
body: SessionProxyExecuteParams,
|
|
153
210
|
options?: RequestOptions,
|
|
154
211
|
): APIPromise<SessionProxyExecuteResponse> {
|
|
155
|
-
return this._client.post(path`/api/v3/tool_router/session/${sessionID}/proxy_execute`, {
|
|
212
|
+
return this._client.post(path`/api/v3.1/tool_router/session/${sessionID}/proxy_execute`, {
|
|
156
213
|
body,
|
|
157
214
|
...options,
|
|
158
215
|
});
|
|
159
216
|
}
|
|
160
217
|
|
|
161
218
|
/**
|
|
162
|
-
* Search for tools matching a
|
|
163
|
-
*
|
|
164
|
-
* workflow guidance in a predictable format.
|
|
219
|
+
* Search for tools matching a use case query within an existing tool router
|
|
220
|
+
* session.
|
|
165
221
|
*
|
|
166
222
|
* @example
|
|
167
223
|
* ```ts
|
|
@@ -180,7 +236,7 @@ export class Session extends APIResource {
|
|
|
180
236
|
body: SessionSearchParams,
|
|
181
237
|
options?: RequestOptions,
|
|
182
238
|
): APIPromise<SessionSearchResponse> {
|
|
183
|
-
return this._client.post(path`/api/v3/tool_router/session/${sessionID}/search`, { body, ...options });
|
|
239
|
+
return this._client.post(path`/api/v3.1/tool_router/session/${sessionID}/search`, { body, ...options });
|
|
184
240
|
}
|
|
185
241
|
|
|
186
242
|
/**
|
|
@@ -200,13 +256,12 @@ export class Session extends APIResource {
|
|
|
200
256
|
query: SessionToolkitsParams | null | undefined = {},
|
|
201
257
|
options?: RequestOptions,
|
|
202
258
|
): APIPromise<SessionToolkitsResponse> {
|
|
203
|
-
return this._client.get(path`/api/v3/tool_router/session/${sessionID}/toolkits`, { query, ...options });
|
|
259
|
+
return this._client.get(path`/api/v3.1/tool_router/session/${sessionID}/toolkits`, { query, ...options });
|
|
204
260
|
}
|
|
205
261
|
|
|
206
262
|
/**
|
|
207
|
-
* Returns
|
|
208
|
-
*
|
|
209
|
-
* the session.
|
|
263
|
+
* Returns tools available in a tool router session with complete schemas. Results
|
|
264
|
+
* are paginated; use `next_cursor` to fetch the next page.
|
|
210
265
|
*
|
|
211
266
|
* @example
|
|
212
267
|
* ```ts
|
|
@@ -217,16 +272,16 @@ export class Session extends APIResource {
|
|
|
217
272
|
*/
|
|
218
273
|
tools(
|
|
219
274
|
sessionID: string,
|
|
220
|
-
query
|
|
275
|
+
query: SessionToolsParams | null | undefined = {},
|
|
221
276
|
options?: RequestOptions,
|
|
222
277
|
): APIPromise<SessionToolsResponse> {
|
|
223
|
-
return this._client.get(path`/api/v3/tool_router/session/${sessionID}/tools`, options);
|
|
278
|
+
return this._client.get(path`/api/v3.1/tool_router/session/${sessionID}/tools`, { query, ...options });
|
|
224
279
|
}
|
|
225
280
|
}
|
|
226
281
|
|
|
227
282
|
export interface SessionCreateResponse {
|
|
228
283
|
/**
|
|
229
|
-
* The
|
|
284
|
+
* The configuration used to create this session
|
|
230
285
|
*/
|
|
231
286
|
config: SessionCreateResponse.Config;
|
|
232
287
|
|
|
@@ -255,26 +310,33 @@ export interface SessionCreateResponse {
|
|
|
255
310
|
experimental?: SessionCreateResponse.Experimental;
|
|
256
311
|
|
|
257
312
|
/**
|
|
258
|
-
* Advisory list — session
|
|
259
|
-
* attention.
|
|
313
|
+
* Advisory list — the session exists and is usable, but the listed issues may
|
|
314
|
+
* warrant attention.
|
|
260
315
|
*/
|
|
261
316
|
warnings?: Array<SessionCreateResponse.Warning>;
|
|
262
317
|
}
|
|
263
318
|
|
|
264
319
|
export namespace SessionCreateResponse {
|
|
265
320
|
/**
|
|
266
|
-
* The
|
|
321
|
+
* The configuration used to create this session
|
|
267
322
|
*/
|
|
268
323
|
export interface Config {
|
|
269
324
|
/**
|
|
270
|
-
*
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
325
|
+
* Execute helper configuration
|
|
326
|
+
*/
|
|
327
|
+
execute: Config.Execute;
|
|
328
|
+
|
|
329
|
+
/**
|
|
330
|
+
* Preload configuration. Explicit slugs are returned as an array; dynamic preload
|
|
331
|
+
* is returned as "all".
|
|
275
332
|
*/
|
|
276
333
|
preload: Config.Preload;
|
|
277
334
|
|
|
335
|
+
/**
|
|
336
|
+
* Search helper configuration
|
|
337
|
+
*/
|
|
338
|
+
search: Config.Search;
|
|
339
|
+
|
|
278
340
|
/**
|
|
279
341
|
* User identifier for this session
|
|
280
342
|
*/
|
|
@@ -326,19 +388,29 @@ export namespace SessionCreateResponse {
|
|
|
326
388
|
|
|
327
389
|
export namespace Config {
|
|
328
390
|
/**
|
|
329
|
-
*
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
391
|
+
* Execute helper configuration
|
|
392
|
+
*/
|
|
393
|
+
export interface Execute {
|
|
394
|
+
enable_multi_execute?: boolean;
|
|
395
|
+
}
|
|
396
|
+
|
|
397
|
+
/**
|
|
398
|
+
* Preload configuration. Explicit slugs are returned as an array; dynamic preload
|
|
399
|
+
* is returned as "all".
|
|
334
400
|
*/
|
|
335
401
|
export interface Preload {
|
|
336
402
|
/**
|
|
337
|
-
*
|
|
338
|
-
*
|
|
339
|
-
* when no preload was configured.
|
|
403
|
+
* Explicit preloaded tool slugs, or "all" when the session dynamically exposes all
|
|
404
|
+
* app tools allowed by its filters.
|
|
340
405
|
*/
|
|
341
|
-
tools: Array<string
|
|
406
|
+
tools: Array<string> | 'all';
|
|
407
|
+
}
|
|
408
|
+
|
|
409
|
+
/**
|
|
410
|
+
* Search helper configuration
|
|
411
|
+
*/
|
|
412
|
+
export interface Search {
|
|
413
|
+
enable?: boolean;
|
|
342
414
|
}
|
|
343
415
|
|
|
344
416
|
/**
|
|
@@ -575,7 +647,7 @@ export namespace SessionCreateResponse {
|
|
|
575
647
|
|
|
576
648
|
export interface SessionRetrieveResponse {
|
|
577
649
|
/**
|
|
578
|
-
* The
|
|
650
|
+
* The configuration used to create this session
|
|
579
651
|
*/
|
|
580
652
|
config: SessionRetrieveResponse.Config;
|
|
581
653
|
|
|
@@ -601,22 +673,35 @@ export interface SessionRetrieveResponse {
|
|
|
601
673
|
* Experimental features
|
|
602
674
|
*/
|
|
603
675
|
experimental?: SessionRetrieveResponse.Experimental;
|
|
676
|
+
|
|
677
|
+
/**
|
|
678
|
+
* Advisory list — the session exists and is usable, but the listed issues may
|
|
679
|
+
* warrant attention.
|
|
680
|
+
*/
|
|
681
|
+
warnings?: Array<SessionRetrieveResponse.Warning>;
|
|
604
682
|
}
|
|
605
683
|
|
|
606
684
|
export namespace SessionRetrieveResponse {
|
|
607
685
|
/**
|
|
608
|
-
* The
|
|
686
|
+
* The configuration used to create this session
|
|
609
687
|
*/
|
|
610
688
|
export interface Config {
|
|
611
689
|
/**
|
|
612
|
-
*
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
690
|
+
* Execute helper configuration
|
|
691
|
+
*/
|
|
692
|
+
execute: Config.Execute;
|
|
693
|
+
|
|
694
|
+
/**
|
|
695
|
+
* Preload configuration. Explicit slugs are returned as an array; dynamic preload
|
|
696
|
+
* is returned as "all".
|
|
617
697
|
*/
|
|
618
698
|
preload: Config.Preload;
|
|
619
699
|
|
|
700
|
+
/**
|
|
701
|
+
* Search helper configuration
|
|
702
|
+
*/
|
|
703
|
+
search: Config.Search;
|
|
704
|
+
|
|
620
705
|
/**
|
|
621
706
|
* User identifier for this session
|
|
622
707
|
*/
|
|
@@ -668,19 +753,29 @@ export namespace SessionRetrieveResponse {
|
|
|
668
753
|
|
|
669
754
|
export namespace Config {
|
|
670
755
|
/**
|
|
671
|
-
*
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
756
|
+
* Execute helper configuration
|
|
757
|
+
*/
|
|
758
|
+
export interface Execute {
|
|
759
|
+
enable_multi_execute?: boolean;
|
|
760
|
+
}
|
|
761
|
+
|
|
762
|
+
/**
|
|
763
|
+
* Preload configuration. Explicit slugs are returned as an array; dynamic preload
|
|
764
|
+
* is returned as "all".
|
|
676
765
|
*/
|
|
677
766
|
export interface Preload {
|
|
678
767
|
/**
|
|
679
|
-
*
|
|
680
|
-
*
|
|
681
|
-
* when no preload was configured.
|
|
768
|
+
* Explicit preloaded tool slugs, or "all" when the session dynamically exposes all
|
|
769
|
+
* app tools allowed by its filters.
|
|
682
770
|
*/
|
|
683
|
-
tools: Array<string
|
|
771
|
+
tools: Array<string> | 'all';
|
|
772
|
+
}
|
|
773
|
+
|
|
774
|
+
/**
|
|
775
|
+
* Search helper configuration
|
|
776
|
+
*/
|
|
777
|
+
export interface Search {
|
|
778
|
+
enable?: boolean;
|
|
684
779
|
}
|
|
685
780
|
|
|
686
781
|
/**
|
|
@@ -899,438 +994,389 @@ export namespace SessionRetrieveResponse {
|
|
|
899
994
|
output_schema?: { [key: string]: unknown };
|
|
900
995
|
}
|
|
901
996
|
}
|
|
902
|
-
}
|
|
903
|
-
|
|
904
|
-
export interface SessionExecuteResponse {
|
|
905
|
-
/**
|
|
906
|
-
* The data returned by the tool execution
|
|
907
|
-
*/
|
|
908
|
-
data: { [key: string]: unknown };
|
|
909
|
-
|
|
910
|
-
/**
|
|
911
|
-
* Error message if the execution failed, null otherwise
|
|
912
|
-
*/
|
|
913
|
-
error: string | null;
|
|
914
|
-
|
|
915
|
-
/**
|
|
916
|
-
* Unique identifier for the execution log
|
|
917
|
-
*/
|
|
918
|
-
log_id: string;
|
|
919
|
-
}
|
|
920
|
-
|
|
921
|
-
export interface SessionExecuteMetaResponse {
|
|
922
|
-
/**
|
|
923
|
-
* The data returned by the tool execution
|
|
924
|
-
*/
|
|
925
|
-
data: { [key: string]: unknown };
|
|
926
997
|
|
|
927
|
-
|
|
928
|
-
|
|
929
|
-
|
|
930
|
-
|
|
998
|
+
export interface Warning {
|
|
999
|
+
/**
|
|
1000
|
+
* Stable machine code identifying the advisory. Safe to switch on in client code.
|
|
1001
|
+
*/
|
|
1002
|
+
code: 'PRELOAD_TOOLS_HIGH_CONTEXT_USAGE';
|
|
931
1003
|
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
|
|
935
|
-
|
|
1004
|
+
/**
|
|
1005
|
+
* Human-readable description of the advisory. Suitable for logging or surfacing to
|
|
1006
|
+
* end users.
|
|
1007
|
+
*/
|
|
1008
|
+
message: string;
|
|
1009
|
+
}
|
|
936
1010
|
}
|
|
937
1011
|
|
|
938
|
-
export interface
|
|
1012
|
+
export interface SessionAttachResponse {
|
|
939
1013
|
/**
|
|
940
|
-
* The
|
|
1014
|
+
* The configuration used to create this session
|
|
941
1015
|
*/
|
|
942
|
-
|
|
1016
|
+
config: SessionAttachResponse.Config;
|
|
943
1017
|
|
|
944
1018
|
/**
|
|
945
|
-
*
|
|
1019
|
+
* Monotonic version of the config. Incremented on each PATCH. Use for optimistic
|
|
1020
|
+
* concurrency control.
|
|
946
1021
|
*/
|
|
947
|
-
|
|
1022
|
+
config_version: number;
|
|
948
1023
|
|
|
949
|
-
|
|
950
|
-
* The URL where users should be redirected to complete OAuth
|
|
951
|
-
*/
|
|
952
|
-
redirect_url: string;
|
|
953
|
-
}
|
|
1024
|
+
mcp: SessionAttachResponse.Mcp;
|
|
954
1025
|
|
|
955
|
-
export interface SessionProxyExecuteResponse {
|
|
956
1026
|
/**
|
|
957
|
-
* The
|
|
1027
|
+
* The identifier of the session
|
|
958
1028
|
*/
|
|
959
|
-
|
|
1029
|
+
session_id: string;
|
|
960
1030
|
|
|
961
1031
|
/**
|
|
962
|
-
*
|
|
1032
|
+
* List of available tools in this session
|
|
963
1033
|
*/
|
|
964
|
-
|
|
1034
|
+
tool_router_tools: Array<string>;
|
|
965
1035
|
|
|
966
1036
|
/**
|
|
967
|
-
*
|
|
1037
|
+
* Experimental features
|
|
968
1038
|
*/
|
|
969
|
-
|
|
1039
|
+
experimental?: SessionAttachResponse.Experimental;
|
|
970
1040
|
|
|
971
1041
|
/**
|
|
972
|
-
*
|
|
1042
|
+
* Advisory list — the session exists and is usable, but the listed issues may
|
|
1043
|
+
* warrant attention.
|
|
973
1044
|
*/
|
|
974
|
-
|
|
1045
|
+
warnings?: Array<SessionAttachResponse.Warning>;
|
|
975
1046
|
}
|
|
976
1047
|
|
|
977
|
-
export namespace
|
|
1048
|
+
export namespace SessionAttachResponse {
|
|
978
1049
|
/**
|
|
979
|
-
*
|
|
1050
|
+
* The configuration used to create this session
|
|
980
1051
|
*/
|
|
981
|
-
export interface
|
|
1052
|
+
export interface Config {
|
|
982
1053
|
/**
|
|
983
|
-
*
|
|
1054
|
+
* Execute helper configuration
|
|
984
1055
|
*/
|
|
985
|
-
|
|
1056
|
+
execute: Config.Execute;
|
|
986
1057
|
|
|
987
1058
|
/**
|
|
988
|
-
*
|
|
1059
|
+
* Preload configuration. Explicit slugs are returned as an array; dynamic preload
|
|
1060
|
+
* is returned as "all".
|
|
989
1061
|
*/
|
|
990
|
-
|
|
1062
|
+
preload: Config.Preload;
|
|
991
1063
|
|
|
992
1064
|
/**
|
|
993
|
-
*
|
|
1065
|
+
* Search helper configuration
|
|
994
1066
|
*/
|
|
995
|
-
|
|
1067
|
+
search: Config.Search;
|
|
996
1068
|
|
|
997
1069
|
/**
|
|
998
|
-
*
|
|
1070
|
+
* User identifier for this session
|
|
999
1071
|
*/
|
|
1000
|
-
|
|
1001
|
-
}
|
|
1002
|
-
}
|
|
1003
|
-
|
|
1004
|
-
export interface SessionSearchResponse {
|
|
1005
|
-
/**
|
|
1006
|
-
* Error message if any searches failed, null if all succeeded. Format: "X out of Y
|
|
1007
|
-
* searches failed, reasons: <details>"
|
|
1008
|
-
*/
|
|
1009
|
-
error: string | null;
|
|
1010
|
-
|
|
1011
|
-
/**
|
|
1012
|
-
* Combined workflow guidance covering connections, planner, and memory usage. Each
|
|
1013
|
-
* element is a step instruction.
|
|
1014
|
-
*/
|
|
1015
|
-
next_steps_guidance: Array<string>;
|
|
1016
|
-
|
|
1017
|
-
/**
|
|
1018
|
-
* Per-query search results with tools, reasoning, and memory. One entry per query
|
|
1019
|
-
* in request order.
|
|
1020
|
-
*/
|
|
1021
|
-
results: Array<SessionSearchResponse.Result>;
|
|
1022
|
-
|
|
1023
|
-
/**
|
|
1024
|
-
* Session info for correlating meta tool calls
|
|
1025
|
-
*/
|
|
1026
|
-
session: SessionSearchResponse.Session;
|
|
1027
|
-
|
|
1028
|
-
/**
|
|
1029
|
-
* Whether all searches completed successfully. False if any query failed.
|
|
1030
|
-
*/
|
|
1031
|
-
success: boolean;
|
|
1032
|
-
|
|
1033
|
-
/**
|
|
1034
|
-
* Time information for the query
|
|
1035
|
-
*/
|
|
1036
|
-
time_info: SessionSearchResponse.TimeInfo;
|
|
1037
|
-
|
|
1038
|
-
/**
|
|
1039
|
-
* Deduplicated tool definitions keyed by tool_slug for O(1) lookup. Each tool
|
|
1040
|
-
* appears once even if used in multiple queries.
|
|
1041
|
-
*/
|
|
1042
|
-
tool_schemas: { [key: string]: SessionSearchResponse.ToolSchemas };
|
|
1043
|
-
|
|
1044
|
-
/**
|
|
1045
|
-
* Connection status for all toolkits mentioned across all queries, with
|
|
1046
|
-
* descriptions merged in.
|
|
1047
|
-
*/
|
|
1048
|
-
toolkit_connection_statuses: Array<SessionSearchResponse.ToolkitConnectionStatus>;
|
|
1049
|
-
}
|
|
1072
|
+
user_id: string;
|
|
1050
1073
|
|
|
1051
|
-
export namespace SessionSearchResponse {
|
|
1052
|
-
export interface Result {
|
|
1053
1074
|
/**
|
|
1054
|
-
*
|
|
1075
|
+
* Auth config overrides per toolkit
|
|
1055
1076
|
*/
|
|
1056
|
-
|
|
1077
|
+
auth_configs?: { [key: string]: string };
|
|
1057
1078
|
|
|
1058
1079
|
/**
|
|
1059
|
-
*
|
|
1080
|
+
* Connected account overrides per toolkit. Each connected account must belong to
|
|
1081
|
+
* the same user_id as the session.
|
|
1060
1082
|
*/
|
|
1061
|
-
|
|
1083
|
+
connected_accounts?: { [key: string]: string };
|
|
1062
1084
|
|
|
1063
1085
|
/**
|
|
1064
|
-
*
|
|
1086
|
+
* Manage connections configuration
|
|
1065
1087
|
*/
|
|
1066
|
-
|
|
1088
|
+
manage_connections?: Config.ManageConnections;
|
|
1067
1089
|
|
|
1068
1090
|
/**
|
|
1069
|
-
*
|
|
1091
|
+
* Multi-account configuration for this session.
|
|
1070
1092
|
*/
|
|
1071
|
-
|
|
1093
|
+
multi_account?: Config.MultiAccount;
|
|
1072
1094
|
|
|
1073
1095
|
/**
|
|
1074
|
-
*
|
|
1096
|
+
* MCP tool annotation hints for filtering tools with enabled/disabled support.
|
|
1097
|
+
* enabled: tags that the tool must have at least one of. disabled: tags that the
|
|
1098
|
+
* tool must NOT have any of. Both conditions must be satisfied.
|
|
1075
1099
|
*/
|
|
1076
|
-
|
|
1100
|
+
tags?: Config.Tags;
|
|
1077
1101
|
|
|
1078
1102
|
/**
|
|
1079
|
-
*
|
|
1080
|
-
* known parameters")
|
|
1103
|
+
* Toolkit configuration - either enabled list or disabled list
|
|
1081
1104
|
*/
|
|
1082
|
-
|
|
1105
|
+
toolkits?: Config.Enabled | Config.Disabled;
|
|
1083
1106
|
|
|
1084
1107
|
/**
|
|
1085
|
-
*
|
|
1086
|
-
* present for failed queries.
|
|
1108
|
+
* Tool-level configuration per toolkit
|
|
1087
1109
|
*/
|
|
1088
|
-
|
|
1110
|
+
tools?: { [key: string]: Config.Enabled | Config.Disabled | Config.Tags };
|
|
1089
1111
|
|
|
1090
1112
|
/**
|
|
1091
|
-
*
|
|
1092
|
-
* available
|
|
1113
|
+
* Workbench configuration
|
|
1093
1114
|
*/
|
|
1094
|
-
|
|
1115
|
+
workbench?: Config.Workbench;
|
|
1116
|
+
}
|
|
1095
1117
|
|
|
1118
|
+
export namespace Config {
|
|
1096
1119
|
/**
|
|
1097
|
-
*
|
|
1120
|
+
* Execute helper configuration
|
|
1098
1121
|
*/
|
|
1099
|
-
|
|
1122
|
+
export interface Execute {
|
|
1123
|
+
enable_multi_execute?: boolean;
|
|
1124
|
+
}
|
|
1100
1125
|
|
|
1101
1126
|
/**
|
|
1102
|
-
*
|
|
1103
|
-
*
|
|
1127
|
+
* Preload configuration. Explicit slugs are returned as an array; dynamic preload
|
|
1128
|
+
* is returned as "all".
|
|
1104
1129
|
*/
|
|
1105
|
-
|
|
1106
|
-
|
|
1107
|
-
|
|
1108
|
-
|
|
1109
|
-
|
|
1110
|
-
|
|
1130
|
+
export interface Preload {
|
|
1131
|
+
/**
|
|
1132
|
+
* Explicit preloaded tool slugs, or "all" when the session dynamically exposes all
|
|
1133
|
+
* app tools allowed by its filters.
|
|
1134
|
+
*/
|
|
1135
|
+
tools: Array<string> | 'all';
|
|
1136
|
+
}
|
|
1111
1137
|
|
|
1112
1138
|
/**
|
|
1113
|
-
*
|
|
1139
|
+
* Search helper configuration
|
|
1114
1140
|
*/
|
|
1115
|
-
|
|
1141
|
+
export interface Search {
|
|
1142
|
+
enable?: boolean;
|
|
1143
|
+
}
|
|
1116
1144
|
|
|
1117
1145
|
/**
|
|
1118
|
-
*
|
|
1119
|
-
* (only present when cached plan is available)
|
|
1146
|
+
* Manage connections configuration
|
|
1120
1147
|
*/
|
|
1121
|
-
|
|
1122
|
-
|
|
1148
|
+
export interface ManageConnections {
|
|
1149
|
+
/**
|
|
1150
|
+
* Custom callback URL for connected account auth flows
|
|
1151
|
+
*/
|
|
1152
|
+
callback_url?: string;
|
|
1123
1153
|
|
|
1124
|
-
export namespace Result {
|
|
1125
|
-
export interface ReferenceWorkbenchSnippet {
|
|
1126
1154
|
/**
|
|
1127
|
-
*
|
|
1155
|
+
* Enable the "remove" action in COMPOSIO_MANAGE_CONNECTIONS. Default true.
|
|
1128
1156
|
*/
|
|
1129
|
-
|
|
1157
|
+
enable_connection_removal?: boolean;
|
|
1130
1158
|
|
|
1131
1159
|
/**
|
|
1132
|
-
*
|
|
1160
|
+
* Enable the COMPOSIO_WAIT_FOR_CONNECTIONS tool for polling connection status.
|
|
1161
|
+
* Default false. May not work reliably with GPT models.
|
|
1133
1162
|
*/
|
|
1134
|
-
|
|
1135
|
-
}
|
|
1136
|
-
}
|
|
1163
|
+
enable_wait_for_connections?: boolean;
|
|
1137
1164
|
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
|
|
1142
|
-
|
|
1143
|
-
* Session identifier to be passed to subsequent meta tool calls as session_id.
|
|
1144
|
-
*/
|
|
1145
|
-
id: string;
|
|
1165
|
+
/**
|
|
1166
|
+
* Whether to enable the connection manager for automatic connection handling
|
|
1167
|
+
*/
|
|
1168
|
+
enabled?: boolean;
|
|
1169
|
+
}
|
|
1146
1170
|
|
|
1147
1171
|
/**
|
|
1148
|
-
*
|
|
1172
|
+
* Multi-account configuration for this session.
|
|
1149
1173
|
*/
|
|
1150
|
-
|
|
1174
|
+
export interface MultiAccount {
|
|
1175
|
+
/**
|
|
1176
|
+
* When true, enables multi-account mode for this session. When not set, falls back
|
|
1177
|
+
* to org/project-level configuration.
|
|
1178
|
+
*/
|
|
1179
|
+
enable?: boolean;
|
|
1151
1180
|
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
|
|
1181
|
+
/**
|
|
1182
|
+
* Maximum number of connected accounts allowed per toolkit. Defaults to 5 when
|
|
1183
|
+
* multi-account is enabled.
|
|
1184
|
+
*/
|
|
1185
|
+
max_accounts_per_toolkit?: number;
|
|
1157
1186
|
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
|
|
1164
|
-
*/
|
|
1165
|
-
current_time_utc: string;
|
|
1187
|
+
/**
|
|
1188
|
+
* When true, require explicit account selection when multiple accounts are
|
|
1189
|
+
* connected. When false (default), use the first/default account.
|
|
1190
|
+
*/
|
|
1191
|
+
require_explicit_selection?: boolean;
|
|
1192
|
+
}
|
|
1166
1193
|
|
|
1167
1194
|
/**
|
|
1168
|
-
*
|
|
1195
|
+
* MCP tool annotation hints for filtering tools with enabled/disabled support.
|
|
1196
|
+
* enabled: tags that the tool must have at least one of. disabled: tags that the
|
|
1197
|
+
* tool must NOT have any of. Both conditions must be satisfied.
|
|
1169
1198
|
*/
|
|
1170
|
-
|
|
1199
|
+
export interface Tags {
|
|
1200
|
+
/**
|
|
1201
|
+
* Tags that the tool must NOT have any of
|
|
1202
|
+
*/
|
|
1203
|
+
disabled?: Array<'readOnlyHint' | 'destructiveHint' | 'idempotentHint' | 'openWorldHint'>;
|
|
1171
1204
|
|
|
1172
|
-
|
|
1173
|
-
|
|
1174
|
-
|
|
1175
|
-
|
|
1176
|
-
|
|
1205
|
+
/**
|
|
1206
|
+
* Tags that the tool must have at least one of
|
|
1207
|
+
*/
|
|
1208
|
+
enabled?: Array<'readOnlyHint' | 'destructiveHint' | 'idempotentHint' | 'openWorldHint'>;
|
|
1209
|
+
}
|
|
1177
1210
|
|
|
1178
|
-
|
|
1179
|
-
|
|
1180
|
-
|
|
1181
|
-
*/
|
|
1182
|
-
tool_slug: string;
|
|
1211
|
+
export interface Enabled {
|
|
1212
|
+
enabled: Array<string>;
|
|
1213
|
+
}
|
|
1183
1214
|
|
|
1184
|
-
|
|
1185
|
-
|
|
1186
|
-
|
|
1187
|
-
toolkit: string;
|
|
1215
|
+
export interface Disabled {
|
|
1216
|
+
disabled: Array<string>;
|
|
1217
|
+
}
|
|
1188
1218
|
|
|
1189
|
-
|
|
1190
|
-
|
|
1191
|
-
|
|
1192
|
-
description?: string;
|
|
1219
|
+
export interface Enabled {
|
|
1220
|
+
enabled: Array<string>;
|
|
1221
|
+
}
|
|
1193
1222
|
|
|
1194
|
-
|
|
1195
|
-
|
|
1196
|
-
|
|
1197
|
-
hasFullSchema?: boolean;
|
|
1223
|
+
export interface Disabled {
|
|
1224
|
+
disabled: Array<string>;
|
|
1225
|
+
}
|
|
1198
1226
|
|
|
1199
|
-
|
|
1200
|
-
|
|
1201
|
-
|
|
1202
|
-
input_schema?: { [key: string]: unknown };
|
|
1227
|
+
export interface Tags {
|
|
1228
|
+
tags: Tags.Tags;
|
|
1229
|
+
}
|
|
1203
1230
|
|
|
1204
|
-
|
|
1205
|
-
|
|
1206
|
-
|
|
1207
|
-
|
|
1208
|
-
|
|
1231
|
+
export namespace Tags {
|
|
1232
|
+
export interface Tags {
|
|
1233
|
+
/**
|
|
1234
|
+
* Tags that the tool must NOT have any of
|
|
1235
|
+
*/
|
|
1236
|
+
disabled?: Array<'readOnlyHint' | 'destructiveHint' | 'idempotentHint' | 'openWorldHint'>;
|
|
1209
1237
|
|
|
1210
|
-
|
|
1211
|
-
|
|
1212
|
-
|
|
1213
|
-
|
|
1214
|
-
|
|
1238
|
+
/**
|
|
1239
|
+
* Tags that the tool must have at least one of
|
|
1240
|
+
*/
|
|
1241
|
+
enabled?: Array<'readOnlyHint' | 'destructiveHint' | 'idempotentHint' | 'openWorldHint'>;
|
|
1242
|
+
}
|
|
1243
|
+
}
|
|
1215
1244
|
|
|
1216
|
-
export namespace ToolSchemas {
|
|
1217
1245
|
/**
|
|
1218
|
-
*
|
|
1246
|
+
* Workbench configuration
|
|
1219
1247
|
*/
|
|
1220
|
-
export interface
|
|
1248
|
+
export interface Workbench {
|
|
1221
1249
|
/**
|
|
1222
|
-
*
|
|
1250
|
+
* Character threshold after which tool execution response are saved to a file in
|
|
1251
|
+
* workbench. Default is 20k.
|
|
1223
1252
|
*/
|
|
1224
|
-
|
|
1253
|
+
auto_offload_threshold?: number;
|
|
1225
1254
|
|
|
1226
1255
|
/**
|
|
1227
|
-
*
|
|
1256
|
+
* Whether the workbench (code execution sandbox) is enabled. When false,
|
|
1257
|
+
* COMPOSIO_REMOTE_WORKBENCH and COMPOSIO_REMOTE_BASH_TOOL are not exposed.
|
|
1228
1258
|
*/
|
|
1229
|
-
|
|
1259
|
+
enable?: boolean;
|
|
1230
1260
|
|
|
1231
1261
|
/**
|
|
1232
|
-
*
|
|
1262
|
+
* Whether proxy execution is enabled in the workbench
|
|
1233
1263
|
*/
|
|
1234
|
-
|
|
1235
|
-
}
|
|
1264
|
+
proxy_execution_enabled?: boolean;
|
|
1236
1265
|
|
|
1237
|
-
export namespace SchemaRef {
|
|
1238
1266
|
/**
|
|
1239
|
-
*
|
|
1267
|
+
* Sandbox compute tier: standard (1 vCPU / 1 GB), medium (2 vCPU / 2 GB), large (4
|
|
1268
|
+
* vCPU / 4 GB), xlarge (8 vCPU / 8 GB). Defaults to standard.
|
|
1240
1269
|
*/
|
|
1241
|
-
|
|
1242
|
-
/**
|
|
1243
|
-
* Tool slugs to fetch schemas for
|
|
1244
|
-
*/
|
|
1245
|
-
tool_slugs: Array<string>;
|
|
1246
|
-
}
|
|
1270
|
+
sandbox_size?: 'standard' | 'medium' | 'large' | 'xlarge';
|
|
1247
1271
|
}
|
|
1248
1272
|
}
|
|
1249
1273
|
|
|
1250
|
-
export interface
|
|
1274
|
+
export interface Mcp {
|
|
1251
1275
|
/**
|
|
1252
|
-
*
|
|
1276
|
+
* The type of the MCP server. Can be http
|
|
1253
1277
|
*/
|
|
1254
|
-
|
|
1278
|
+
type: 'http';
|
|
1255
1279
|
|
|
1256
1280
|
/**
|
|
1257
|
-
*
|
|
1281
|
+
* The URL of the MCP server
|
|
1258
1282
|
*/
|
|
1259
|
-
|
|
1283
|
+
url: string;
|
|
1284
|
+
}
|
|
1260
1285
|
|
|
1286
|
+
/**
|
|
1287
|
+
* Experimental features
|
|
1288
|
+
*/
|
|
1289
|
+
export interface Experimental {
|
|
1261
1290
|
/**
|
|
1262
|
-
*
|
|
1291
|
+
* The assistive system prompt for the tool router session
|
|
1263
1292
|
*/
|
|
1264
|
-
|
|
1293
|
+
assistive_prompt?: string;
|
|
1265
1294
|
|
|
1266
1295
|
/**
|
|
1267
|
-
*
|
|
1296
|
+
* User-defined custom toolkits with grouped tools (no-auth)
|
|
1268
1297
|
*/
|
|
1269
|
-
|
|
1298
|
+
custom_toolkits?: Array<Experimental.CustomToolkit>;
|
|
1270
1299
|
|
|
1271
1300
|
/**
|
|
1272
|
-
*
|
|
1273
|
-
* multiple accounts exist.
|
|
1301
|
+
* Custom tools — standalone or extending Composio toolkits
|
|
1274
1302
|
*/
|
|
1275
|
-
|
|
1303
|
+
custom_tools?: Array<Experimental.CustomTool>;
|
|
1304
|
+
}
|
|
1276
1305
|
|
|
1277
|
-
|
|
1278
|
-
|
|
1279
|
-
|
|
1280
|
-
*/
|
|
1281
|
-
accounts?: Array<ToolkitConnectionStatus.Account>;
|
|
1306
|
+
export namespace Experimental {
|
|
1307
|
+
export interface CustomToolkit {
|
|
1308
|
+
description: string;
|
|
1282
1309
|
|
|
1283
|
-
|
|
1284
|
-
* Connection details including auth config and connected account IDs. Only present
|
|
1285
|
-
* when has_active_connection is true.
|
|
1286
|
-
*/
|
|
1287
|
-
connection_details?: { [key: string]: unknown };
|
|
1310
|
+
name: string;
|
|
1288
1311
|
|
|
1289
|
-
|
|
1290
|
-
* Information about the currently connected user (email, name, etc.)
|
|
1291
|
-
*/
|
|
1292
|
-
current_user_info?: { [key: string]: unknown };
|
|
1293
|
-
}
|
|
1312
|
+
slug: string;
|
|
1294
1313
|
|
|
1295
|
-
|
|
1296
|
-
|
|
1297
|
-
/**
|
|
1298
|
-
* Unique identifier for this account
|
|
1299
|
-
*/
|
|
1300
|
-
id: string;
|
|
1314
|
+
tools: Array<CustomToolkit.Tool>;
|
|
1315
|
+
}
|
|
1301
1316
|
|
|
1302
|
-
|
|
1303
|
-
|
|
1304
|
-
|
|
1305
|
-
created_at: string;
|
|
1317
|
+
export namespace CustomToolkit {
|
|
1318
|
+
export interface Tool {
|
|
1319
|
+
description: string;
|
|
1306
1320
|
|
|
1307
|
-
|
|
1308
|
-
* Whether this is the default account for the toolkit
|
|
1309
|
-
*/
|
|
1310
|
-
is_default: boolean;
|
|
1321
|
+
input_schema: { [key: string]: unknown };
|
|
1311
1322
|
|
|
1312
|
-
|
|
1313
|
-
|
|
1314
|
-
|
|
1315
|
-
|
|
1323
|
+
name: string;
|
|
1324
|
+
|
|
1325
|
+
/**
|
|
1326
|
+
* Original tool slug as provided by the user
|
|
1327
|
+
*/
|
|
1328
|
+
original_slug: string;
|
|
1329
|
+
|
|
1330
|
+
/**
|
|
1331
|
+
* Prefixed tool slug (e.g. LOCAL_CRM_FIND_CUSTOMER)
|
|
1332
|
+
*/
|
|
1333
|
+
slug: string;
|
|
1334
|
+
|
|
1335
|
+
output_schema?: { [key: string]: unknown };
|
|
1336
|
+
}
|
|
1337
|
+
}
|
|
1338
|
+
|
|
1339
|
+
export interface CustomTool {
|
|
1340
|
+
description: string;
|
|
1341
|
+
|
|
1342
|
+
input_schema: { [key: string]: unknown };
|
|
1343
|
+
|
|
1344
|
+
name: string;
|
|
1316
1345
|
|
|
1317
1346
|
/**
|
|
1318
|
-
*
|
|
1347
|
+
* Original tool slug as provided by the user
|
|
1319
1348
|
*/
|
|
1320
|
-
|
|
1349
|
+
original_slug: string;
|
|
1321
1350
|
|
|
1322
1351
|
/**
|
|
1323
|
-
*
|
|
1352
|
+
* Prefixed tool slug (e.g. LOCAL_GMAIL_GET_IMPORTANT_EMAILS)
|
|
1324
1353
|
*/
|
|
1325
|
-
|
|
1354
|
+
slug: string;
|
|
1355
|
+
|
|
1356
|
+
extends_toolkit?: string;
|
|
1357
|
+
|
|
1358
|
+
output_schema?: { [key: string]: unknown };
|
|
1326
1359
|
}
|
|
1327
1360
|
}
|
|
1361
|
+
|
|
1362
|
+
export interface Warning {
|
|
1363
|
+
/**
|
|
1364
|
+
* Stable machine code identifying the advisory. Safe to switch on in client code.
|
|
1365
|
+
*/
|
|
1366
|
+
code: 'PRELOAD_TOOLS_HIGH_CONTEXT_USAGE';
|
|
1367
|
+
|
|
1368
|
+
/**
|
|
1369
|
+
* Human-readable description of the advisory. Suitable for logging or surfacing to
|
|
1370
|
+
* end users.
|
|
1371
|
+
*/
|
|
1372
|
+
message: string;
|
|
1373
|
+
}
|
|
1328
1374
|
}
|
|
1329
1375
|
|
|
1330
|
-
export interface
|
|
1376
|
+
export interface SessionConfigHistoryResponse {
|
|
1331
1377
|
current_page: number;
|
|
1332
1378
|
|
|
1333
|
-
items: Array<
|
|
1379
|
+
items: Array<SessionConfigHistoryResponse.Item>;
|
|
1334
1380
|
|
|
1335
1381
|
total_items: number;
|
|
1336
1382
|
|
|
@@ -1339,356 +1385,2036 @@ export interface SessionToolkitsResponse {
|
|
|
1339
1385
|
next_cursor?: string | null;
|
|
1340
1386
|
}
|
|
1341
1387
|
|
|
1342
|
-
export namespace
|
|
1388
|
+
export namespace SessionConfigHistoryResponse {
|
|
1343
1389
|
export interface Item {
|
|
1344
1390
|
/**
|
|
1345
|
-
*
|
|
1391
|
+
* The session configuration at this version
|
|
1346
1392
|
*/
|
|
1347
|
-
|
|
1393
|
+
config: Item.Config;
|
|
1348
1394
|
|
|
1349
1395
|
/**
|
|
1350
|
-
*
|
|
1396
|
+
* ISO timestamp. For history rows, when the entry was archived (i.e. the moment
|
|
1397
|
+
* the version was superseded by a PATCH).
|
|
1351
1398
|
*/
|
|
1352
|
-
|
|
1399
|
+
created_at: string;
|
|
1353
1400
|
|
|
1354
1401
|
/**
|
|
1355
|
-
*
|
|
1402
|
+
* True only for the live (current) session config, present on the first page.
|
|
1403
|
+
* False for archived history rows.
|
|
1404
|
+
*/
|
|
1405
|
+
is_current: boolean;
|
|
1406
|
+
|
|
1407
|
+
/**
|
|
1408
|
+
* The config version this entry represents
|
|
1409
|
+
*/
|
|
1410
|
+
version: number;
|
|
1411
|
+
}
|
|
1412
|
+
|
|
1413
|
+
export namespace Item {
|
|
1414
|
+
/**
|
|
1415
|
+
* The session configuration at this version
|
|
1416
|
+
*/
|
|
1417
|
+
export interface Config {
|
|
1418
|
+
/**
|
|
1419
|
+
* Execute helper configuration
|
|
1420
|
+
*/
|
|
1421
|
+
execute: Config.Execute;
|
|
1422
|
+
|
|
1423
|
+
/**
|
|
1424
|
+
* Preload configuration. Explicit slugs are returned as an array; dynamic preload
|
|
1425
|
+
* is returned as "all".
|
|
1426
|
+
*/
|
|
1427
|
+
preload: Config.Preload;
|
|
1428
|
+
|
|
1429
|
+
/**
|
|
1430
|
+
* Search helper configuration
|
|
1431
|
+
*/
|
|
1432
|
+
search: Config.Search;
|
|
1433
|
+
|
|
1434
|
+
/**
|
|
1435
|
+
* User identifier for this session
|
|
1436
|
+
*/
|
|
1437
|
+
user_id: string;
|
|
1438
|
+
|
|
1439
|
+
/**
|
|
1440
|
+
* Auth config overrides per toolkit
|
|
1441
|
+
*/
|
|
1442
|
+
auth_configs?: { [key: string]: string };
|
|
1443
|
+
|
|
1444
|
+
/**
|
|
1445
|
+
* Connected account overrides per toolkit. Each connected account must belong to
|
|
1446
|
+
* the same user_id as the session.
|
|
1447
|
+
*/
|
|
1448
|
+
connected_accounts?: { [key: string]: string };
|
|
1449
|
+
|
|
1450
|
+
/**
|
|
1451
|
+
* Manage connections configuration
|
|
1452
|
+
*/
|
|
1453
|
+
manage_connections?: Config.ManageConnections;
|
|
1454
|
+
|
|
1455
|
+
/**
|
|
1456
|
+
* Multi-account configuration for this session.
|
|
1457
|
+
*/
|
|
1458
|
+
multi_account?: Config.MultiAccount;
|
|
1459
|
+
|
|
1460
|
+
/**
|
|
1461
|
+
* MCP tool annotation hints for filtering tools with enabled/disabled support.
|
|
1462
|
+
* enabled: tags that the tool must have at least one of. disabled: tags that the
|
|
1463
|
+
* tool must NOT have any of. Both conditions must be satisfied.
|
|
1464
|
+
*/
|
|
1465
|
+
tags?: Config.Tags;
|
|
1466
|
+
|
|
1467
|
+
/**
|
|
1468
|
+
* Toolkit configuration - either enabled list or disabled list
|
|
1469
|
+
*/
|
|
1470
|
+
toolkits?: Config.Enabled | Config.Disabled;
|
|
1471
|
+
|
|
1472
|
+
/**
|
|
1473
|
+
* Tool-level configuration per toolkit
|
|
1474
|
+
*/
|
|
1475
|
+
tools?: { [key: string]: Config.Enabled | Config.Disabled | Config.Tags };
|
|
1476
|
+
|
|
1477
|
+
/**
|
|
1478
|
+
* Workbench configuration
|
|
1479
|
+
*/
|
|
1480
|
+
workbench?: Config.Workbench;
|
|
1481
|
+
}
|
|
1482
|
+
|
|
1483
|
+
export namespace Config {
|
|
1484
|
+
/**
|
|
1485
|
+
* Execute helper configuration
|
|
1486
|
+
*/
|
|
1487
|
+
export interface Execute {
|
|
1488
|
+
enable_multi_execute?: boolean;
|
|
1489
|
+
}
|
|
1490
|
+
|
|
1491
|
+
/**
|
|
1492
|
+
* Preload configuration. Explicit slugs are returned as an array; dynamic preload
|
|
1493
|
+
* is returned as "all".
|
|
1494
|
+
*/
|
|
1495
|
+
export interface Preload {
|
|
1496
|
+
/**
|
|
1497
|
+
* Explicit preloaded tool slugs, or "all" when the session dynamically exposes all
|
|
1498
|
+
* app tools allowed by its filters.
|
|
1499
|
+
*/
|
|
1500
|
+
tools: Array<string> | 'all';
|
|
1501
|
+
}
|
|
1502
|
+
|
|
1503
|
+
/**
|
|
1504
|
+
* Search helper configuration
|
|
1505
|
+
*/
|
|
1506
|
+
export interface Search {
|
|
1507
|
+
enable?: boolean;
|
|
1508
|
+
}
|
|
1509
|
+
|
|
1510
|
+
/**
|
|
1511
|
+
* Manage connections configuration
|
|
1512
|
+
*/
|
|
1513
|
+
export interface ManageConnections {
|
|
1514
|
+
/**
|
|
1515
|
+
* Custom callback URL for connected account auth flows
|
|
1516
|
+
*/
|
|
1517
|
+
callback_url?: string;
|
|
1518
|
+
|
|
1519
|
+
/**
|
|
1520
|
+
* Enable the "remove" action in COMPOSIO_MANAGE_CONNECTIONS. Default true.
|
|
1521
|
+
*/
|
|
1522
|
+
enable_connection_removal?: boolean;
|
|
1523
|
+
|
|
1524
|
+
/**
|
|
1525
|
+
* Enable the COMPOSIO_WAIT_FOR_CONNECTIONS tool for polling connection status.
|
|
1526
|
+
* Default false. May not work reliably with GPT models.
|
|
1527
|
+
*/
|
|
1528
|
+
enable_wait_for_connections?: boolean;
|
|
1529
|
+
|
|
1530
|
+
/**
|
|
1531
|
+
* Whether to enable the connection manager for automatic connection handling
|
|
1532
|
+
*/
|
|
1533
|
+
enabled?: boolean;
|
|
1534
|
+
}
|
|
1535
|
+
|
|
1536
|
+
/**
|
|
1537
|
+
* Multi-account configuration for this session.
|
|
1538
|
+
*/
|
|
1539
|
+
export interface MultiAccount {
|
|
1540
|
+
/**
|
|
1541
|
+
* When true, enables multi-account mode for this session. When not set, falls back
|
|
1542
|
+
* to org/project-level configuration.
|
|
1543
|
+
*/
|
|
1544
|
+
enable?: boolean;
|
|
1545
|
+
|
|
1546
|
+
/**
|
|
1547
|
+
* Maximum number of connected accounts allowed per toolkit. Defaults to 5 when
|
|
1548
|
+
* multi-account is enabled.
|
|
1549
|
+
*/
|
|
1550
|
+
max_accounts_per_toolkit?: number;
|
|
1551
|
+
|
|
1552
|
+
/**
|
|
1553
|
+
* When true, require explicit account selection when multiple accounts are
|
|
1554
|
+
* connected. When false (default), use the first/default account.
|
|
1555
|
+
*/
|
|
1556
|
+
require_explicit_selection?: boolean;
|
|
1557
|
+
}
|
|
1558
|
+
|
|
1559
|
+
/**
|
|
1560
|
+
* MCP tool annotation hints for filtering tools with enabled/disabled support.
|
|
1561
|
+
* enabled: tags that the tool must have at least one of. disabled: tags that the
|
|
1562
|
+
* tool must NOT have any of. Both conditions must be satisfied.
|
|
1563
|
+
*/
|
|
1564
|
+
export interface Tags {
|
|
1565
|
+
/**
|
|
1566
|
+
* Tags that the tool must NOT have any of
|
|
1567
|
+
*/
|
|
1568
|
+
disabled?: Array<'readOnlyHint' | 'destructiveHint' | 'idempotentHint' | 'openWorldHint'>;
|
|
1569
|
+
|
|
1570
|
+
/**
|
|
1571
|
+
* Tags that the tool must have at least one of
|
|
1572
|
+
*/
|
|
1573
|
+
enabled?: Array<'readOnlyHint' | 'destructiveHint' | 'idempotentHint' | 'openWorldHint'>;
|
|
1574
|
+
}
|
|
1575
|
+
|
|
1576
|
+
export interface Enabled {
|
|
1577
|
+
enabled: Array<string>;
|
|
1578
|
+
}
|
|
1579
|
+
|
|
1580
|
+
export interface Disabled {
|
|
1581
|
+
disabled: Array<string>;
|
|
1582
|
+
}
|
|
1583
|
+
|
|
1584
|
+
export interface Enabled {
|
|
1585
|
+
enabled: Array<string>;
|
|
1586
|
+
}
|
|
1587
|
+
|
|
1588
|
+
export interface Disabled {
|
|
1589
|
+
disabled: Array<string>;
|
|
1590
|
+
}
|
|
1591
|
+
|
|
1592
|
+
export interface Tags {
|
|
1593
|
+
tags: Tags.Tags;
|
|
1594
|
+
}
|
|
1595
|
+
|
|
1596
|
+
export namespace Tags {
|
|
1597
|
+
export interface Tags {
|
|
1598
|
+
/**
|
|
1599
|
+
* Tags that the tool must NOT have any of
|
|
1600
|
+
*/
|
|
1601
|
+
disabled?: Array<'readOnlyHint' | 'destructiveHint' | 'idempotentHint' | 'openWorldHint'>;
|
|
1602
|
+
|
|
1603
|
+
/**
|
|
1604
|
+
* Tags that the tool must have at least one of
|
|
1605
|
+
*/
|
|
1606
|
+
enabled?: Array<'readOnlyHint' | 'destructiveHint' | 'idempotentHint' | 'openWorldHint'>;
|
|
1607
|
+
}
|
|
1608
|
+
}
|
|
1609
|
+
|
|
1610
|
+
/**
|
|
1611
|
+
* Workbench configuration
|
|
1612
|
+
*/
|
|
1613
|
+
export interface Workbench {
|
|
1614
|
+
/**
|
|
1615
|
+
* Character threshold after which tool execution response are saved to a file in
|
|
1616
|
+
* workbench. Default is 20k.
|
|
1617
|
+
*/
|
|
1618
|
+
auto_offload_threshold?: number;
|
|
1619
|
+
|
|
1620
|
+
/**
|
|
1621
|
+
* Whether the workbench (code execution sandbox) is enabled. When false,
|
|
1622
|
+
* COMPOSIO_REMOTE_WORKBENCH and COMPOSIO_REMOTE_BASH_TOOL are not exposed.
|
|
1623
|
+
*/
|
|
1624
|
+
enable?: boolean;
|
|
1625
|
+
|
|
1626
|
+
/**
|
|
1627
|
+
* Whether proxy execution is enabled in the workbench
|
|
1628
|
+
*/
|
|
1629
|
+
proxy_execution_enabled?: boolean;
|
|
1630
|
+
|
|
1631
|
+
/**
|
|
1632
|
+
* Sandbox compute tier: standard (1 vCPU / 1 GB), medium (2 vCPU / 2 GB), large (4
|
|
1633
|
+
* vCPU / 4 GB), xlarge (8 vCPU / 8 GB). Defaults to standard.
|
|
1634
|
+
*/
|
|
1635
|
+
sandbox_size?: 'standard' | 'medium' | 'large' | 'xlarge';
|
|
1636
|
+
}
|
|
1637
|
+
}
|
|
1638
|
+
}
|
|
1639
|
+
}
|
|
1640
|
+
|
|
1641
|
+
export interface SessionExecuteResponse {
|
|
1642
|
+
/**
|
|
1643
|
+
* The data returned by the tool execution
|
|
1644
|
+
*/
|
|
1645
|
+
data: { [key: string]: unknown };
|
|
1646
|
+
|
|
1647
|
+
/**
|
|
1648
|
+
* Error message if the execution failed, null otherwise
|
|
1649
|
+
*/
|
|
1650
|
+
error: string | null;
|
|
1651
|
+
|
|
1652
|
+
/**
|
|
1653
|
+
* Unique identifier for the execution log
|
|
1654
|
+
*/
|
|
1655
|
+
log_id: string;
|
|
1656
|
+
}
|
|
1657
|
+
|
|
1658
|
+
export interface SessionExecuteMetaResponse {
|
|
1659
|
+
/**
|
|
1660
|
+
* The data returned by the tool execution
|
|
1661
|
+
*/
|
|
1662
|
+
data: { [key: string]: unknown };
|
|
1663
|
+
|
|
1664
|
+
/**
|
|
1665
|
+
* Error message if the execution failed, null otherwise
|
|
1666
|
+
*/
|
|
1667
|
+
error: string | null;
|
|
1668
|
+
|
|
1669
|
+
/**
|
|
1670
|
+
* Unique identifier for the execution log
|
|
1671
|
+
*/
|
|
1672
|
+
log_id: string;
|
|
1673
|
+
}
|
|
1674
|
+
|
|
1675
|
+
export interface SessionLinkResponse {
|
|
1676
|
+
/**
|
|
1677
|
+
* The unique identifier for the connected account
|
|
1678
|
+
*/
|
|
1679
|
+
connected_account_id: string;
|
|
1680
|
+
|
|
1681
|
+
/**
|
|
1682
|
+
* Token used to complete the authentication flow
|
|
1683
|
+
*/
|
|
1684
|
+
link_token: string;
|
|
1685
|
+
|
|
1686
|
+
/**
|
|
1687
|
+
* The URL where users should be redirected to complete OAuth
|
|
1688
|
+
*/
|
|
1689
|
+
redirect_url: string;
|
|
1690
|
+
}
|
|
1691
|
+
|
|
1692
|
+
export interface SessionPatchResponse {
|
|
1693
|
+
/**
|
|
1694
|
+
* The configuration used to create this session
|
|
1695
|
+
*/
|
|
1696
|
+
config: SessionPatchResponse.Config;
|
|
1697
|
+
|
|
1698
|
+
/**
|
|
1699
|
+
* Monotonic version of the config. Incremented on each PATCH. Use for optimistic
|
|
1700
|
+
* concurrency control.
|
|
1701
|
+
*/
|
|
1702
|
+
config_version: number;
|
|
1703
|
+
|
|
1704
|
+
mcp: SessionPatchResponse.Mcp;
|
|
1705
|
+
|
|
1706
|
+
/**
|
|
1707
|
+
* The identifier of the session
|
|
1708
|
+
*/
|
|
1709
|
+
session_id: string;
|
|
1710
|
+
|
|
1711
|
+
/**
|
|
1712
|
+
* List of available tools in this session
|
|
1713
|
+
*/
|
|
1714
|
+
tool_router_tools: Array<string>;
|
|
1715
|
+
|
|
1716
|
+
/**
|
|
1717
|
+
* Experimental features
|
|
1718
|
+
*/
|
|
1719
|
+
experimental?: SessionPatchResponse.Experimental;
|
|
1720
|
+
|
|
1721
|
+
/**
|
|
1722
|
+
* Advisory list — the session exists and is usable, but the listed issues may
|
|
1723
|
+
* warrant attention.
|
|
1724
|
+
*/
|
|
1725
|
+
warnings?: Array<SessionPatchResponse.Warning>;
|
|
1726
|
+
}
|
|
1727
|
+
|
|
1728
|
+
export namespace SessionPatchResponse {
|
|
1729
|
+
/**
|
|
1730
|
+
* The configuration used to create this session
|
|
1731
|
+
*/
|
|
1732
|
+
export interface Config {
|
|
1733
|
+
/**
|
|
1734
|
+
* Execute helper configuration
|
|
1735
|
+
*/
|
|
1736
|
+
execute: Config.Execute;
|
|
1737
|
+
|
|
1738
|
+
/**
|
|
1739
|
+
* Preload configuration. Explicit slugs are returned as an array; dynamic preload
|
|
1740
|
+
* is returned as "all".
|
|
1741
|
+
*/
|
|
1742
|
+
preload: Config.Preload;
|
|
1743
|
+
|
|
1744
|
+
/**
|
|
1745
|
+
* Search helper configuration
|
|
1746
|
+
*/
|
|
1747
|
+
search: Config.Search;
|
|
1748
|
+
|
|
1749
|
+
/**
|
|
1750
|
+
* User identifier for this session
|
|
1751
|
+
*/
|
|
1752
|
+
user_id: string;
|
|
1753
|
+
|
|
1754
|
+
/**
|
|
1755
|
+
* Auth config overrides per toolkit
|
|
1756
|
+
*/
|
|
1757
|
+
auth_configs?: { [key: string]: string };
|
|
1758
|
+
|
|
1759
|
+
/**
|
|
1760
|
+
* Connected account overrides per toolkit. Each connected account must belong to
|
|
1761
|
+
* the same user_id as the session.
|
|
1762
|
+
*/
|
|
1763
|
+
connected_accounts?: { [key: string]: string };
|
|
1764
|
+
|
|
1765
|
+
/**
|
|
1766
|
+
* Manage connections configuration
|
|
1767
|
+
*/
|
|
1768
|
+
manage_connections?: Config.ManageConnections;
|
|
1769
|
+
|
|
1770
|
+
/**
|
|
1771
|
+
* Multi-account configuration for this session.
|
|
1772
|
+
*/
|
|
1773
|
+
multi_account?: Config.MultiAccount;
|
|
1774
|
+
|
|
1775
|
+
/**
|
|
1776
|
+
* MCP tool annotation hints for filtering tools with enabled/disabled support.
|
|
1777
|
+
* enabled: tags that the tool must have at least one of. disabled: tags that the
|
|
1778
|
+
* tool must NOT have any of. Both conditions must be satisfied.
|
|
1779
|
+
*/
|
|
1780
|
+
tags?: Config.Tags;
|
|
1781
|
+
|
|
1782
|
+
/**
|
|
1783
|
+
* Toolkit configuration - either enabled list or disabled list
|
|
1784
|
+
*/
|
|
1785
|
+
toolkits?: Config.Enabled | Config.Disabled;
|
|
1786
|
+
|
|
1787
|
+
/**
|
|
1788
|
+
* Tool-level configuration per toolkit
|
|
1789
|
+
*/
|
|
1790
|
+
tools?: { [key: string]: Config.Enabled | Config.Disabled | Config.Tags };
|
|
1791
|
+
|
|
1792
|
+
/**
|
|
1793
|
+
* Workbench configuration
|
|
1794
|
+
*/
|
|
1795
|
+
workbench?: Config.Workbench;
|
|
1796
|
+
}
|
|
1797
|
+
|
|
1798
|
+
export namespace Config {
|
|
1799
|
+
/**
|
|
1800
|
+
* Execute helper configuration
|
|
1801
|
+
*/
|
|
1802
|
+
export interface Execute {
|
|
1803
|
+
enable_multi_execute?: boolean;
|
|
1804
|
+
}
|
|
1805
|
+
|
|
1806
|
+
/**
|
|
1807
|
+
* Preload configuration. Explicit slugs are returned as an array; dynamic preload
|
|
1808
|
+
* is returned as "all".
|
|
1809
|
+
*/
|
|
1810
|
+
export interface Preload {
|
|
1811
|
+
/**
|
|
1812
|
+
* Explicit preloaded tool slugs, or "all" when the session dynamically exposes all
|
|
1813
|
+
* app tools allowed by its filters.
|
|
1814
|
+
*/
|
|
1815
|
+
tools: Array<string> | 'all';
|
|
1816
|
+
}
|
|
1817
|
+
|
|
1818
|
+
/**
|
|
1819
|
+
* Search helper configuration
|
|
1820
|
+
*/
|
|
1821
|
+
export interface Search {
|
|
1822
|
+
enable?: boolean;
|
|
1823
|
+
}
|
|
1824
|
+
|
|
1825
|
+
/**
|
|
1826
|
+
* Manage connections configuration
|
|
1827
|
+
*/
|
|
1828
|
+
export interface ManageConnections {
|
|
1829
|
+
/**
|
|
1830
|
+
* Custom callback URL for connected account auth flows
|
|
1831
|
+
*/
|
|
1832
|
+
callback_url?: string;
|
|
1833
|
+
|
|
1834
|
+
/**
|
|
1835
|
+
* Enable the "remove" action in COMPOSIO_MANAGE_CONNECTIONS. Default true.
|
|
1836
|
+
*/
|
|
1837
|
+
enable_connection_removal?: boolean;
|
|
1838
|
+
|
|
1839
|
+
/**
|
|
1840
|
+
* Enable the COMPOSIO_WAIT_FOR_CONNECTIONS tool for polling connection status.
|
|
1841
|
+
* Default false. May not work reliably with GPT models.
|
|
1842
|
+
*/
|
|
1843
|
+
enable_wait_for_connections?: boolean;
|
|
1844
|
+
|
|
1845
|
+
/**
|
|
1846
|
+
* Whether to enable the connection manager for automatic connection handling
|
|
1847
|
+
*/
|
|
1848
|
+
enabled?: boolean;
|
|
1849
|
+
}
|
|
1850
|
+
|
|
1851
|
+
/**
|
|
1852
|
+
* Multi-account configuration for this session.
|
|
1853
|
+
*/
|
|
1854
|
+
export interface MultiAccount {
|
|
1855
|
+
/**
|
|
1856
|
+
* When true, enables multi-account mode for this session. When not set, falls back
|
|
1857
|
+
* to org/project-level configuration.
|
|
1858
|
+
*/
|
|
1859
|
+
enable?: boolean;
|
|
1860
|
+
|
|
1861
|
+
/**
|
|
1862
|
+
* Maximum number of connected accounts allowed per toolkit. Defaults to 5 when
|
|
1863
|
+
* multi-account is enabled.
|
|
1864
|
+
*/
|
|
1865
|
+
max_accounts_per_toolkit?: number;
|
|
1866
|
+
|
|
1867
|
+
/**
|
|
1868
|
+
* When true, require explicit account selection when multiple accounts are
|
|
1869
|
+
* connected. When false (default), use the first/default account.
|
|
1870
|
+
*/
|
|
1871
|
+
require_explicit_selection?: boolean;
|
|
1872
|
+
}
|
|
1873
|
+
|
|
1874
|
+
/**
|
|
1875
|
+
* MCP tool annotation hints for filtering tools with enabled/disabled support.
|
|
1876
|
+
* enabled: tags that the tool must have at least one of. disabled: tags that the
|
|
1877
|
+
* tool must NOT have any of. Both conditions must be satisfied.
|
|
1878
|
+
*/
|
|
1879
|
+
export interface Tags {
|
|
1880
|
+
/**
|
|
1881
|
+
* Tags that the tool must NOT have any of
|
|
1882
|
+
*/
|
|
1883
|
+
disabled?: Array<'readOnlyHint' | 'destructiveHint' | 'idempotentHint' | 'openWorldHint'>;
|
|
1884
|
+
|
|
1885
|
+
/**
|
|
1886
|
+
* Tags that the tool must have at least one of
|
|
1887
|
+
*/
|
|
1888
|
+
enabled?: Array<'readOnlyHint' | 'destructiveHint' | 'idempotentHint' | 'openWorldHint'>;
|
|
1889
|
+
}
|
|
1890
|
+
|
|
1891
|
+
export interface Enabled {
|
|
1892
|
+
enabled: Array<string>;
|
|
1893
|
+
}
|
|
1894
|
+
|
|
1895
|
+
export interface Disabled {
|
|
1896
|
+
disabled: Array<string>;
|
|
1897
|
+
}
|
|
1898
|
+
|
|
1899
|
+
export interface Enabled {
|
|
1900
|
+
enabled: Array<string>;
|
|
1901
|
+
}
|
|
1902
|
+
|
|
1903
|
+
export interface Disabled {
|
|
1904
|
+
disabled: Array<string>;
|
|
1905
|
+
}
|
|
1906
|
+
|
|
1907
|
+
export interface Tags {
|
|
1908
|
+
tags: Tags.Tags;
|
|
1909
|
+
}
|
|
1910
|
+
|
|
1911
|
+
export namespace Tags {
|
|
1912
|
+
export interface Tags {
|
|
1913
|
+
/**
|
|
1914
|
+
* Tags that the tool must NOT have any of
|
|
1915
|
+
*/
|
|
1916
|
+
disabled?: Array<'readOnlyHint' | 'destructiveHint' | 'idempotentHint' | 'openWorldHint'>;
|
|
1917
|
+
|
|
1918
|
+
/**
|
|
1919
|
+
* Tags that the tool must have at least one of
|
|
1920
|
+
*/
|
|
1921
|
+
enabled?: Array<'readOnlyHint' | 'destructiveHint' | 'idempotentHint' | 'openWorldHint'>;
|
|
1922
|
+
}
|
|
1923
|
+
}
|
|
1924
|
+
|
|
1925
|
+
/**
|
|
1926
|
+
* Workbench configuration
|
|
1927
|
+
*/
|
|
1928
|
+
export interface Workbench {
|
|
1929
|
+
/**
|
|
1930
|
+
* Character threshold after which tool execution response are saved to a file in
|
|
1931
|
+
* workbench. Default is 20k.
|
|
1932
|
+
*/
|
|
1933
|
+
auto_offload_threshold?: number;
|
|
1934
|
+
|
|
1935
|
+
/**
|
|
1936
|
+
* Whether the workbench (code execution sandbox) is enabled. When false,
|
|
1937
|
+
* COMPOSIO_REMOTE_WORKBENCH and COMPOSIO_REMOTE_BASH_TOOL are not exposed.
|
|
1938
|
+
*/
|
|
1939
|
+
enable?: boolean;
|
|
1940
|
+
|
|
1941
|
+
/**
|
|
1942
|
+
* Whether proxy execution is enabled in the workbench
|
|
1943
|
+
*/
|
|
1944
|
+
proxy_execution_enabled?: boolean;
|
|
1945
|
+
|
|
1946
|
+
/**
|
|
1947
|
+
* Sandbox compute tier: standard (1 vCPU / 1 GB), medium (2 vCPU / 2 GB), large (4
|
|
1948
|
+
* vCPU / 4 GB), xlarge (8 vCPU / 8 GB). Defaults to standard.
|
|
1949
|
+
*/
|
|
1950
|
+
sandbox_size?: 'standard' | 'medium' | 'large' | 'xlarge';
|
|
1951
|
+
}
|
|
1952
|
+
}
|
|
1953
|
+
|
|
1954
|
+
export interface Mcp {
|
|
1955
|
+
/**
|
|
1956
|
+
* The type of the MCP server. Can be http
|
|
1957
|
+
*/
|
|
1958
|
+
type: 'http';
|
|
1959
|
+
|
|
1960
|
+
/**
|
|
1961
|
+
* The URL of the MCP server
|
|
1962
|
+
*/
|
|
1963
|
+
url: string;
|
|
1964
|
+
}
|
|
1965
|
+
|
|
1966
|
+
/**
|
|
1967
|
+
* Experimental features
|
|
1968
|
+
*/
|
|
1969
|
+
export interface Experimental {
|
|
1970
|
+
/**
|
|
1971
|
+
* The assistive system prompt for the tool router session
|
|
1972
|
+
*/
|
|
1973
|
+
assistive_prompt?: string;
|
|
1974
|
+
|
|
1975
|
+
/**
|
|
1976
|
+
* User-defined custom toolkits with grouped tools (no-auth)
|
|
1977
|
+
*/
|
|
1978
|
+
custom_toolkits?: Array<Experimental.CustomToolkit>;
|
|
1979
|
+
|
|
1980
|
+
/**
|
|
1981
|
+
* Custom tools — standalone or extending Composio toolkits
|
|
1982
|
+
*/
|
|
1983
|
+
custom_tools?: Array<Experimental.CustomTool>;
|
|
1984
|
+
}
|
|
1985
|
+
|
|
1986
|
+
export namespace Experimental {
|
|
1987
|
+
export interface CustomToolkit {
|
|
1988
|
+
description: string;
|
|
1989
|
+
|
|
1990
|
+
name: string;
|
|
1991
|
+
|
|
1992
|
+
slug: string;
|
|
1993
|
+
|
|
1994
|
+
tools: Array<CustomToolkit.Tool>;
|
|
1995
|
+
}
|
|
1996
|
+
|
|
1997
|
+
export namespace CustomToolkit {
|
|
1998
|
+
export interface Tool {
|
|
1999
|
+
description: string;
|
|
2000
|
+
|
|
2001
|
+
input_schema: { [key: string]: unknown };
|
|
2002
|
+
|
|
2003
|
+
name: string;
|
|
2004
|
+
|
|
2005
|
+
/**
|
|
2006
|
+
* Original tool slug as provided by the user
|
|
2007
|
+
*/
|
|
2008
|
+
original_slug: string;
|
|
2009
|
+
|
|
2010
|
+
/**
|
|
2011
|
+
* Prefixed tool slug (e.g. LOCAL_CRM_FIND_CUSTOMER)
|
|
2012
|
+
*/
|
|
2013
|
+
slug: string;
|
|
2014
|
+
|
|
2015
|
+
output_schema?: { [key: string]: unknown };
|
|
2016
|
+
}
|
|
2017
|
+
}
|
|
2018
|
+
|
|
2019
|
+
export interface CustomTool {
|
|
2020
|
+
description: string;
|
|
2021
|
+
|
|
2022
|
+
input_schema: { [key: string]: unknown };
|
|
2023
|
+
|
|
2024
|
+
name: string;
|
|
2025
|
+
|
|
2026
|
+
/**
|
|
2027
|
+
* Original tool slug as provided by the user
|
|
2028
|
+
*/
|
|
2029
|
+
original_slug: string;
|
|
2030
|
+
|
|
2031
|
+
/**
|
|
2032
|
+
* Prefixed tool slug (e.g. LOCAL_GMAIL_GET_IMPORTANT_EMAILS)
|
|
2033
|
+
*/
|
|
2034
|
+
slug: string;
|
|
2035
|
+
|
|
2036
|
+
extends_toolkit?: string;
|
|
2037
|
+
|
|
2038
|
+
output_schema?: { [key: string]: unknown };
|
|
2039
|
+
}
|
|
2040
|
+
}
|
|
2041
|
+
|
|
2042
|
+
export interface Warning {
|
|
2043
|
+
/**
|
|
2044
|
+
* Stable machine code identifying the advisory. Safe to switch on in client code.
|
|
2045
|
+
*/
|
|
2046
|
+
code: 'PRELOAD_TOOLS_HIGH_CONTEXT_USAGE';
|
|
2047
|
+
|
|
2048
|
+
/**
|
|
2049
|
+
* Human-readable description of the advisory. Suitable for logging or surfacing to
|
|
2050
|
+
* end users.
|
|
2051
|
+
*/
|
|
2052
|
+
message: string;
|
|
2053
|
+
}
|
|
2054
|
+
}
|
|
2055
|
+
|
|
2056
|
+
export interface SessionProxyExecuteResponse {
|
|
2057
|
+
/**
|
|
2058
|
+
* The HTTP status code returned from the proxied API
|
|
2059
|
+
*/
|
|
2060
|
+
status: number;
|
|
2061
|
+
|
|
2062
|
+
/**
|
|
2063
|
+
* Binary body response data. Present when the response is a binary file.
|
|
2064
|
+
*/
|
|
2065
|
+
binary_data?: SessionProxyExecuteResponse.BinaryData;
|
|
2066
|
+
|
|
2067
|
+
/**
|
|
2068
|
+
* The response data returned from the proxied API
|
|
2069
|
+
*/
|
|
2070
|
+
data?: unknown;
|
|
2071
|
+
|
|
2072
|
+
/**
|
|
2073
|
+
* The HTTP headers returned from the proxied API
|
|
2074
|
+
*/
|
|
2075
|
+
headers?: { [key: string]: string };
|
|
2076
|
+
}
|
|
2077
|
+
|
|
2078
|
+
export namespace SessionProxyExecuteResponse {
|
|
2079
|
+
/**
|
|
2080
|
+
* Binary body response data. Present when the response is a binary file.
|
|
2081
|
+
*/
|
|
2082
|
+
export interface BinaryData {
|
|
2083
|
+
/**
|
|
2084
|
+
* Content-Type of the binary data
|
|
2085
|
+
*/
|
|
2086
|
+
content_type: string;
|
|
2087
|
+
|
|
2088
|
+
/**
|
|
2089
|
+
* File size in bytes
|
|
2090
|
+
*/
|
|
2091
|
+
size: number;
|
|
2092
|
+
|
|
2093
|
+
/**
|
|
2094
|
+
* URL to download binary content
|
|
2095
|
+
*/
|
|
2096
|
+
url: string;
|
|
2097
|
+
|
|
2098
|
+
/**
|
|
2099
|
+
* ISO 8601 timestamp when the URL expires
|
|
2100
|
+
*/
|
|
2101
|
+
expires_at?: string;
|
|
2102
|
+
}
|
|
2103
|
+
}
|
|
2104
|
+
|
|
2105
|
+
export interface SessionSearchResponse {
|
|
2106
|
+
/**
|
|
2107
|
+
* Error message if any searches failed, null if all succeeded. Format: "X out of Y
|
|
2108
|
+
* searches failed, reasons: <details>"
|
|
2109
|
+
*/
|
|
2110
|
+
error: string | null;
|
|
2111
|
+
|
|
2112
|
+
/**
|
|
2113
|
+
* Combined workflow guidance covering connections, planner, and memory usage. Each
|
|
2114
|
+
* element is a step instruction.
|
|
2115
|
+
*/
|
|
2116
|
+
next_steps_guidance: Array<string>;
|
|
2117
|
+
|
|
2118
|
+
/**
|
|
2119
|
+
* Per-query search results with tools, reasoning, and memory. One entry per query
|
|
2120
|
+
* in request order.
|
|
2121
|
+
*/
|
|
2122
|
+
results: Array<SessionSearchResponse.Result>;
|
|
2123
|
+
|
|
2124
|
+
/**
|
|
2125
|
+
* Session info for correlating meta tool calls
|
|
2126
|
+
*/
|
|
2127
|
+
session: SessionSearchResponse.Session;
|
|
2128
|
+
|
|
2129
|
+
/**
|
|
2130
|
+
* Whether all searches completed successfully. False if any query failed.
|
|
2131
|
+
*/
|
|
2132
|
+
success: boolean;
|
|
2133
|
+
|
|
2134
|
+
/**
|
|
2135
|
+
* Time information for the query
|
|
2136
|
+
*/
|
|
2137
|
+
time_info: SessionSearchResponse.TimeInfo;
|
|
2138
|
+
|
|
2139
|
+
/**
|
|
2140
|
+
* Deduplicated tool definitions keyed by tool_slug for O(1) lookup. Each tool
|
|
2141
|
+
* appears once even if used in multiple queries.
|
|
2142
|
+
*/
|
|
2143
|
+
tool_schemas: { [key: string]: SessionSearchResponse.ToolSchemas };
|
|
2144
|
+
|
|
2145
|
+
/**
|
|
2146
|
+
* Connection status for all toolkits mentioned across all queries, with
|
|
2147
|
+
* descriptions merged in.
|
|
2148
|
+
*/
|
|
2149
|
+
toolkit_connection_statuses: Array<SessionSearchResponse.ToolkitConnectionStatus>;
|
|
2150
|
+
}
|
|
2151
|
+
|
|
2152
|
+
export namespace SessionSearchResponse {
|
|
2153
|
+
export interface Result {
|
|
2154
|
+
/**
|
|
2155
|
+
* 1-based index of the query in the request
|
|
2156
|
+
*/
|
|
2157
|
+
index: number;
|
|
2158
|
+
|
|
2159
|
+
/**
|
|
2160
|
+
* List of main tool slugs matching the search criteria
|
|
2161
|
+
*/
|
|
2162
|
+
primary_tool_slugs: Array<string>;
|
|
2163
|
+
|
|
2164
|
+
/**
|
|
2165
|
+
* List of related tool slugs that might be useful
|
|
2166
|
+
*/
|
|
2167
|
+
related_tool_slugs: Array<string>;
|
|
2168
|
+
|
|
2169
|
+
/**
|
|
2170
|
+
* List of unique toolkit slugs used by tools in this query
|
|
2171
|
+
*/
|
|
2172
|
+
toolkits: Array<string>;
|
|
2173
|
+
|
|
2174
|
+
/**
|
|
2175
|
+
* The use case that was searched
|
|
2176
|
+
*/
|
|
2177
|
+
use_case: string;
|
|
2178
|
+
|
|
2179
|
+
/**
|
|
2180
|
+
* Task difficulty assessment (e.g., "easy - Simple single-tool operation with
|
|
2181
|
+
* known parameters")
|
|
2182
|
+
*/
|
|
2183
|
+
difficulty?: string;
|
|
2184
|
+
|
|
2185
|
+
/**
|
|
2186
|
+
* Error message if the search for this query failed, null otherwise. Always
|
|
2187
|
+
* present for failed queries.
|
|
2188
|
+
*/
|
|
2189
|
+
error?: string | null;
|
|
2190
|
+
|
|
2191
|
+
/**
|
|
2192
|
+
* Guidance message about the search results, particularly when a cached plan is
|
|
2193
|
+
* available
|
|
2194
|
+
*/
|
|
2195
|
+
execution_guidance?: string;
|
|
2196
|
+
|
|
2197
|
+
/**
|
|
2198
|
+
* Common pitfalls and considerations (only present when cached plan is available)
|
|
2199
|
+
*/
|
|
2200
|
+
known_pitfalls?: Array<string>;
|
|
2201
|
+
|
|
2202
|
+
/**
|
|
2203
|
+
* Memory data relevant to this query, grouped by app. Only present for non-cached
|
|
2204
|
+
* search results.
|
|
2205
|
+
*/
|
|
2206
|
+
memory?: { [key: string]: Array<string> };
|
|
2207
|
+
|
|
2208
|
+
/**
|
|
2209
|
+
* ID of cached plan if available
|
|
2210
|
+
*/
|
|
2211
|
+
plan_id?: string;
|
|
2212
|
+
|
|
2213
|
+
/**
|
|
2214
|
+
* Workflow steps from cached plan (only present when cached plan is available)
|
|
2215
|
+
*/
|
|
2216
|
+
recommended_plan_steps?: Array<string>;
|
|
2217
|
+
|
|
2218
|
+
/**
|
|
2219
|
+
* Reference Python code snippets for processing tool responses in the workbench
|
|
2220
|
+
* (only present when cached plan is available)
|
|
2221
|
+
*/
|
|
2222
|
+
reference_workbench_snippets?: Array<Result.ReferenceWorkbenchSnippet>;
|
|
2223
|
+
}
|
|
2224
|
+
|
|
2225
|
+
export namespace Result {
|
|
2226
|
+
export interface ReferenceWorkbenchSnippet {
|
|
2227
|
+
/**
|
|
2228
|
+
* Python code snippet for the workbench
|
|
2229
|
+
*/
|
|
2230
|
+
code: string;
|
|
2231
|
+
|
|
2232
|
+
/**
|
|
2233
|
+
* Description of what the code snippet does
|
|
2234
|
+
*/
|
|
2235
|
+
description: string;
|
|
2236
|
+
}
|
|
2237
|
+
}
|
|
2238
|
+
|
|
2239
|
+
/**
|
|
2240
|
+
* Session info for correlating meta tool calls
|
|
2241
|
+
*/
|
|
2242
|
+
export interface Session {
|
|
2243
|
+
/**
|
|
2244
|
+
* Session identifier to be passed to subsequent meta tool calls as session_id.
|
|
2245
|
+
*/
|
|
2246
|
+
id: string;
|
|
2247
|
+
|
|
2248
|
+
/**
|
|
2249
|
+
* Whether a fresh session id was generated in this call.
|
|
2250
|
+
*/
|
|
2251
|
+
generate_id: boolean;
|
|
2252
|
+
|
|
2253
|
+
/**
|
|
2254
|
+
* LLM-facing guidance on how to reuse this session id
|
|
2255
|
+
*/
|
|
2256
|
+
instructions: string;
|
|
2257
|
+
}
|
|
2258
|
+
|
|
2259
|
+
/**
|
|
2260
|
+
* Time information for the query
|
|
2261
|
+
*/
|
|
2262
|
+
export interface TimeInfo {
|
|
2263
|
+
/**
|
|
2264
|
+
* Current time in ISO format (UTC)
|
|
2265
|
+
*/
|
|
2266
|
+
current_time_utc: string;
|
|
2267
|
+
|
|
2268
|
+
/**
|
|
2269
|
+
* Current time as Unix epoch timestamp in seconds
|
|
2270
|
+
*/
|
|
2271
|
+
current_time_utc_epoch_seconds: number;
|
|
2272
|
+
|
|
2273
|
+
/**
|
|
2274
|
+
* Important message about time handling and timezone considerations
|
|
2275
|
+
*/
|
|
2276
|
+
message: string;
|
|
2277
|
+
}
|
|
2278
|
+
|
|
2279
|
+
export interface ToolSchemas {
|
|
2280
|
+
/**
|
|
2281
|
+
* The slug of the tool
|
|
2282
|
+
*/
|
|
2283
|
+
tool_slug: string;
|
|
2284
|
+
|
|
2285
|
+
/**
|
|
2286
|
+
* The slug of the toolkit that provides this tool
|
|
2287
|
+
*/
|
|
2288
|
+
toolkit: string;
|
|
2289
|
+
|
|
2290
|
+
/**
|
|
2291
|
+
* Description of the tool
|
|
2292
|
+
*/
|
|
2293
|
+
description?: string;
|
|
2294
|
+
|
|
2295
|
+
/**
|
|
2296
|
+
* Whether the full input_schema is included in this response
|
|
2297
|
+
*/
|
|
2298
|
+
hasFullSchema?: boolean;
|
|
2299
|
+
|
|
2300
|
+
/**
|
|
2301
|
+
* Input schema for the tool (only present when hasFullSchema is true)
|
|
2302
|
+
*/
|
|
2303
|
+
input_schema?: { [key: string]: unknown };
|
|
2304
|
+
|
|
2305
|
+
/**
|
|
2306
|
+
* Output/response schema for the tool. Only included when include_output_schemas
|
|
2307
|
+
* is true.
|
|
2308
|
+
*/
|
|
2309
|
+
output_schema?: { [key: string]: unknown };
|
|
2310
|
+
|
|
2311
|
+
/**
|
|
2312
|
+
* Reference to fetch full schema when hasFullSchema is false
|
|
2313
|
+
*/
|
|
2314
|
+
schemaRef?: ToolSchemas.SchemaRef;
|
|
2315
|
+
}
|
|
2316
|
+
|
|
2317
|
+
export namespace ToolSchemas {
|
|
2318
|
+
/**
|
|
2319
|
+
* Reference to fetch full schema when hasFullSchema is false
|
|
2320
|
+
*/
|
|
2321
|
+
export interface SchemaRef {
|
|
2322
|
+
/**
|
|
2323
|
+
* Arguments to pass to the tool
|
|
2324
|
+
*/
|
|
2325
|
+
args: SchemaRef.Args;
|
|
2326
|
+
|
|
2327
|
+
/**
|
|
2328
|
+
* Tool to call
|
|
2329
|
+
*/
|
|
2330
|
+
tool: 'COMPOSIO_GET_TOOL_SCHEMAS';
|
|
2331
|
+
|
|
2332
|
+
/**
|
|
2333
|
+
* Instruction message for the LLM
|
|
2334
|
+
*/
|
|
2335
|
+
message?: string;
|
|
2336
|
+
}
|
|
2337
|
+
|
|
2338
|
+
export namespace SchemaRef {
|
|
2339
|
+
/**
|
|
2340
|
+
* Arguments to pass to the tool
|
|
2341
|
+
*/
|
|
2342
|
+
export interface Args {
|
|
2343
|
+
/**
|
|
2344
|
+
* Tool slugs to fetch schemas for
|
|
2345
|
+
*/
|
|
2346
|
+
tool_slugs: Array<string>;
|
|
2347
|
+
}
|
|
2348
|
+
}
|
|
2349
|
+
}
|
|
2350
|
+
|
|
2351
|
+
export interface ToolkitConnectionStatus {
|
|
2352
|
+
/**
|
|
2353
|
+
* Description of what the toolkit does and its capabilities
|
|
2354
|
+
*/
|
|
2355
|
+
description: string;
|
|
2356
|
+
|
|
2357
|
+
/**
|
|
2358
|
+
* Whether an active connection exists for this toolkit
|
|
2359
|
+
*/
|
|
2360
|
+
has_active_connection: boolean;
|
|
2361
|
+
|
|
2362
|
+
/**
|
|
2363
|
+
* Human-readable message about the connection status and next steps
|
|
2364
|
+
*/
|
|
2365
|
+
status_message: string;
|
|
2366
|
+
|
|
2367
|
+
/**
|
|
2368
|
+
* The toolkit slug identifier (e.g., "gmail", "slack")
|
|
2369
|
+
*/
|
|
2370
|
+
toolkit: string;
|
|
2371
|
+
|
|
2372
|
+
/**
|
|
2373
|
+
* When "required", the agent must specify which account to use. Present only when
|
|
2374
|
+
* multiple accounts exist.
|
|
2375
|
+
*/
|
|
2376
|
+
account_selection?: 'required';
|
|
2377
|
+
|
|
2378
|
+
/**
|
|
2379
|
+
* List of connected accounts for this toolkit. Present when multi-account is
|
|
2380
|
+
* enabled.
|
|
2381
|
+
*/
|
|
2382
|
+
accounts?: Array<ToolkitConnectionStatus.Account>;
|
|
2383
|
+
|
|
2384
|
+
/**
|
|
2385
|
+
* Connection details including auth config and connected account IDs. Only present
|
|
2386
|
+
* when has_active_connection is true.
|
|
2387
|
+
*/
|
|
2388
|
+
connection_details?: { [key: string]: unknown };
|
|
2389
|
+
|
|
2390
|
+
/**
|
|
2391
|
+
* Information about the currently connected user (email, name, etc.)
|
|
2392
|
+
*/
|
|
2393
|
+
current_user_info?: { [key: string]: unknown };
|
|
2394
|
+
}
|
|
2395
|
+
|
|
2396
|
+
export namespace ToolkitConnectionStatus {
|
|
2397
|
+
export interface Account {
|
|
2398
|
+
/**
|
|
2399
|
+
* Unique identifier for this account
|
|
2400
|
+
*/
|
|
2401
|
+
id: string;
|
|
2402
|
+
|
|
2403
|
+
/**
|
|
2404
|
+
* ISO 8601 timestamp of when the account was connected
|
|
2405
|
+
*/
|
|
2406
|
+
created_at: string;
|
|
2407
|
+
|
|
2408
|
+
/**
|
|
2409
|
+
* Whether this is the default account for the toolkit
|
|
2410
|
+
*/
|
|
2411
|
+
is_default: boolean;
|
|
2412
|
+
|
|
2413
|
+
/**
|
|
2414
|
+
* Connection status (e.g., "active")
|
|
2415
|
+
*/
|
|
2416
|
+
status: string;
|
|
2417
|
+
|
|
2418
|
+
/**
|
|
2419
|
+
* User-assigned alias for this account
|
|
2420
|
+
*/
|
|
2421
|
+
alias?: string;
|
|
2422
|
+
|
|
2423
|
+
/**
|
|
2424
|
+
* Information about the connected user (email, name, etc.)
|
|
2425
|
+
*/
|
|
2426
|
+
user_info?: { [key: string]: unknown };
|
|
2427
|
+
}
|
|
2428
|
+
}
|
|
2429
|
+
}
|
|
2430
|
+
|
|
2431
|
+
export interface SessionToolkitsResponse {
|
|
2432
|
+
current_page: number;
|
|
2433
|
+
|
|
2434
|
+
items: Array<SessionToolkitsResponse.Item>;
|
|
2435
|
+
|
|
2436
|
+
total_items: number;
|
|
2437
|
+
|
|
2438
|
+
total_pages: number;
|
|
2439
|
+
|
|
2440
|
+
next_cursor?: string | null;
|
|
2441
|
+
}
|
|
2442
|
+
|
|
2443
|
+
export namespace SessionToolkitsResponse {
|
|
2444
|
+
export interface Item {
|
|
2445
|
+
/**
|
|
2446
|
+
* Available Composio-managed auth schemes
|
|
2447
|
+
*/
|
|
2448
|
+
composio_managed_auth_schemes: Array<string>;
|
|
2449
|
+
|
|
2450
|
+
/**
|
|
2451
|
+
* Connected account if available
|
|
2452
|
+
*/
|
|
2453
|
+
connected_account: Item.ConnectedAccount | null;
|
|
2454
|
+
|
|
2455
|
+
/**
|
|
2456
|
+
* Whether the toolkit is enabled
|
|
2457
|
+
*/
|
|
2458
|
+
enabled: boolean;
|
|
2459
|
+
|
|
2460
|
+
/**
|
|
2461
|
+
* Whether the toolkit is no-auth
|
|
2462
|
+
*/
|
|
2463
|
+
is_no_auth: boolean;
|
|
2464
|
+
|
|
2465
|
+
/**
|
|
2466
|
+
* Toolkit metadata
|
|
2467
|
+
*/
|
|
2468
|
+
meta: Item.Meta;
|
|
2469
|
+
|
|
2470
|
+
/**
|
|
2471
|
+
* Display name of the toolkit
|
|
2472
|
+
*/
|
|
2473
|
+
name: string;
|
|
2474
|
+
|
|
2475
|
+
/**
|
|
2476
|
+
* Unique slug identifier
|
|
2477
|
+
*/
|
|
2478
|
+
slug: string;
|
|
2479
|
+
}
|
|
2480
|
+
|
|
2481
|
+
export namespace Item {
|
|
2482
|
+
/**
|
|
2483
|
+
* Connected account if available
|
|
2484
|
+
*/
|
|
2485
|
+
export interface ConnectedAccount {
|
|
2486
|
+
/**
|
|
2487
|
+
* Connected account identifier
|
|
2488
|
+
*/
|
|
2489
|
+
id: string;
|
|
2490
|
+
|
|
2491
|
+
/**
|
|
2492
|
+
* Auth config details
|
|
2493
|
+
*/
|
|
2494
|
+
auth_config: ConnectedAccount.AuthConfig;
|
|
2495
|
+
|
|
2496
|
+
/**
|
|
2497
|
+
* Creation timestamp
|
|
2498
|
+
*/
|
|
2499
|
+
created_at: string;
|
|
2500
|
+
|
|
2501
|
+
/**
|
|
2502
|
+
* Connection status
|
|
2503
|
+
*/
|
|
2504
|
+
status: string;
|
|
2505
|
+
|
|
2506
|
+
/**
|
|
2507
|
+
* User identifier
|
|
2508
|
+
*/
|
|
2509
|
+
user_id: string;
|
|
2510
|
+
}
|
|
2511
|
+
|
|
2512
|
+
export namespace ConnectedAccount {
|
|
2513
|
+
/**
|
|
2514
|
+
* Auth config details
|
|
2515
|
+
*/
|
|
2516
|
+
export interface AuthConfig {
|
|
2517
|
+
/**
|
|
2518
|
+
* Auth config identifier
|
|
2519
|
+
*/
|
|
2520
|
+
id: string;
|
|
2521
|
+
|
|
2522
|
+
/**
|
|
2523
|
+
* Authentication scheme type
|
|
2524
|
+
*/
|
|
2525
|
+
auth_scheme: string;
|
|
2526
|
+
|
|
2527
|
+
/**
|
|
2528
|
+
* Whether this is a Composio-managed auth config
|
|
2529
|
+
*/
|
|
2530
|
+
is_composio_managed: boolean;
|
|
2531
|
+
}
|
|
2532
|
+
}
|
|
2533
|
+
|
|
2534
|
+
/**
|
|
2535
|
+
* Toolkit metadata
|
|
2536
|
+
*/
|
|
2537
|
+
export interface Meta {
|
|
2538
|
+
/**
|
|
2539
|
+
* Description of the toolkit
|
|
2540
|
+
*/
|
|
2541
|
+
description: string;
|
|
2542
|
+
|
|
2543
|
+
/**
|
|
2544
|
+
* URL to the toolkit logo
|
|
2545
|
+
*/
|
|
2546
|
+
logo: string;
|
|
2547
|
+
}
|
|
2548
|
+
}
|
|
2549
|
+
}
|
|
2550
|
+
|
|
2551
|
+
export interface SessionToolsResponse {
|
|
2552
|
+
current_page: number;
|
|
2553
|
+
|
|
2554
|
+
items: Array<SessionToolsResponse.Item>;
|
|
2555
|
+
|
|
2556
|
+
total_items: number;
|
|
2557
|
+
|
|
2558
|
+
total_pages: number;
|
|
2559
|
+
|
|
2560
|
+
next_cursor?: string | null;
|
|
2561
|
+
}
|
|
2562
|
+
|
|
2563
|
+
export namespace SessionToolsResponse {
|
|
2564
|
+
export interface Item {
|
|
2565
|
+
/**
|
|
2566
|
+
* List of all available versions for this tool
|
|
2567
|
+
*/
|
|
2568
|
+
available_versions: Array<string>;
|
|
2569
|
+
|
|
2570
|
+
deprecated: Item.Deprecated;
|
|
2571
|
+
|
|
2572
|
+
/**
|
|
2573
|
+
* Detailed explanation of the tool's functionality and purpose
|
|
2574
|
+
*/
|
|
2575
|
+
description: string;
|
|
2576
|
+
|
|
2577
|
+
/**
|
|
2578
|
+
* Schema definition of required input parameters for the tool
|
|
2579
|
+
*/
|
|
2580
|
+
input_parameters: { [key: string]: unknown };
|
|
2581
|
+
|
|
2582
|
+
/**
|
|
2583
|
+
* Indicates if this tool is deprecated and may be removed in the future
|
|
2584
|
+
*/
|
|
2585
|
+
is_deprecated: boolean;
|
|
2586
|
+
|
|
2587
|
+
/**
|
|
2588
|
+
* Human-readable display name of the tool
|
|
2589
|
+
*/
|
|
2590
|
+
name: string;
|
|
2591
|
+
|
|
2592
|
+
/**
|
|
2593
|
+
* Indicates if the tool can be used without authentication
|
|
2594
|
+
*/
|
|
2595
|
+
no_auth: boolean;
|
|
2596
|
+
|
|
2597
|
+
/**
|
|
2598
|
+
* Schema definition of return values from the tool
|
|
2599
|
+
*/
|
|
2600
|
+
output_parameters: { [key: string]: unknown };
|
|
2601
|
+
|
|
2602
|
+
/**
|
|
2603
|
+
* Structured scope requirements for the tool. Null means the tool is legacy and
|
|
2604
|
+
* only exposes flat scopes.
|
|
2605
|
+
*/
|
|
2606
|
+
scope_requirements: Item.ScopeRequirements | null;
|
|
2607
|
+
|
|
2608
|
+
/**
|
|
2609
|
+
* List of scopes associated with the tool
|
|
2610
|
+
*/
|
|
2611
|
+
scopes: Array<string>;
|
|
2612
|
+
|
|
2613
|
+
/**
|
|
2614
|
+
* Unique identifier for the tool
|
|
2615
|
+
*/
|
|
2616
|
+
slug: string;
|
|
2617
|
+
|
|
2618
|
+
/**
|
|
2619
|
+
* List of tags associated with the tool for categorization and filtering
|
|
2620
|
+
*/
|
|
2621
|
+
tags: Array<string>;
|
|
2622
|
+
|
|
2623
|
+
toolkit: Item.Toolkit;
|
|
2624
|
+
|
|
2625
|
+
/**
|
|
2626
|
+
* Current version of the tool
|
|
2627
|
+
*/
|
|
2628
|
+
version: string;
|
|
2629
|
+
|
|
2630
|
+
/**
|
|
2631
|
+
* Human-friendly description of the tool, if available
|
|
2632
|
+
*/
|
|
2633
|
+
human_description?: string;
|
|
2634
|
+
}
|
|
2635
|
+
|
|
2636
|
+
export namespace Item {
|
|
2637
|
+
export interface Deprecated {
|
|
2638
|
+
/**
|
|
2639
|
+
* List of all available versions for this tool
|
|
2640
|
+
*/
|
|
2641
|
+
available_versions: Array<string>;
|
|
2642
|
+
|
|
2643
|
+
/**
|
|
2644
|
+
* The display name of the tool
|
|
2645
|
+
*/
|
|
2646
|
+
displayName: string;
|
|
2647
|
+
|
|
2648
|
+
/**
|
|
2649
|
+
* Indicates if this tool is deprecated and may be removed in the future
|
|
2650
|
+
*/
|
|
2651
|
+
is_deprecated: boolean;
|
|
2652
|
+
|
|
2653
|
+
toolkit: Deprecated.Toolkit;
|
|
2654
|
+
|
|
2655
|
+
/**
|
|
2656
|
+
* Current version identifier of the tool
|
|
2657
|
+
*/
|
|
2658
|
+
version: string;
|
|
2659
|
+
}
|
|
2660
|
+
|
|
2661
|
+
export namespace Deprecated {
|
|
2662
|
+
export interface Toolkit {
|
|
2663
|
+
/**
|
|
2664
|
+
* URL to the toolkit logo image
|
|
2665
|
+
*/
|
|
2666
|
+
logo: string;
|
|
2667
|
+
}
|
|
2668
|
+
}
|
|
2669
|
+
|
|
2670
|
+
/**
|
|
2671
|
+
* Structured scope requirements for the tool. Null means the tool is legacy and
|
|
2672
|
+
* only exposes flat scopes.
|
|
2673
|
+
*/
|
|
2674
|
+
export interface ScopeRequirements {
|
|
2675
|
+
all_of: Array<string | ScopeRequirements.AnyOf>;
|
|
2676
|
+
}
|
|
2677
|
+
|
|
2678
|
+
export namespace ScopeRequirements {
|
|
2679
|
+
export interface AnyOf {
|
|
2680
|
+
any_of: Array<string>;
|
|
2681
|
+
}
|
|
2682
|
+
}
|
|
2683
|
+
|
|
2684
|
+
export interface Toolkit {
|
|
2685
|
+
/**
|
|
2686
|
+
* URL to the toolkit logo image
|
|
2687
|
+
*/
|
|
2688
|
+
logo: string;
|
|
2689
|
+
|
|
2690
|
+
/**
|
|
2691
|
+
* Human-readable name of the parent toolkit
|
|
2692
|
+
*/
|
|
2693
|
+
name: string;
|
|
2694
|
+
|
|
2695
|
+
/**
|
|
2696
|
+
* Unique identifier of the parent toolkit
|
|
2697
|
+
*/
|
|
2698
|
+
slug: string;
|
|
2699
|
+
}
|
|
2700
|
+
}
|
|
2701
|
+
}
|
|
2702
|
+
|
|
2703
|
+
export interface SessionCreateParams {
|
|
2704
|
+
/**
|
|
2705
|
+
* The identifier of the user who is initiating the session, ideally a unique
|
|
2706
|
+
* identifier from your database like a user ID or email address
|
|
2707
|
+
*/
|
|
2708
|
+
user_id: string;
|
|
2709
|
+
|
|
2710
|
+
/**
|
|
2711
|
+
* The auth configs to use for the session. This will override the default behavior
|
|
2712
|
+
* and use the given auth config when specific toolkits are being executed
|
|
2713
|
+
*/
|
|
2714
|
+
auth_configs?: { [key: string]: string };
|
|
2715
|
+
|
|
2716
|
+
/**
|
|
2717
|
+
* The connected accounts to use for the session. This will override the default
|
|
2718
|
+
* behaviour and use the given connected account when specific toolkits are being
|
|
2719
|
+
* executed. Each connected account must exist (not deleted or disabled) and belong
|
|
2720
|
+
* to the same `user_id` as the session — otherwise session creation fails with a
|
|
2721
|
+
* clear error explaining which account didn't match.
|
|
2722
|
+
*/
|
|
2723
|
+
connected_accounts?: { [key: string]: string };
|
|
2724
|
+
|
|
2725
|
+
execute?: SessionCreateParams.Execute;
|
|
2726
|
+
|
|
2727
|
+
/**
|
|
2728
|
+
* Experimental features - not stable, may be modified or removed in future
|
|
2729
|
+
* versions.
|
|
2730
|
+
*/
|
|
2731
|
+
experimental?: SessionCreateParams.Experimental;
|
|
2732
|
+
|
|
2733
|
+
/**
|
|
2734
|
+
* Configuration for connection management settings
|
|
2735
|
+
*/
|
|
2736
|
+
manage_connections?: SessionCreateParams.ManageConnections;
|
|
2737
|
+
|
|
2738
|
+
/**
|
|
2739
|
+
* Configure multi-account behavior. When enabled, users can connect multiple
|
|
2740
|
+
* accounts per toolkit.
|
|
2741
|
+
*/
|
|
2742
|
+
multi_account?: SessionCreateParams.MultiAccount;
|
|
2743
|
+
|
|
2744
|
+
/**
|
|
2745
|
+
* Preload configuration. Use an explicit list for frequently used tool slugs, or
|
|
2746
|
+
* "all" to dynamically expose every app tool allowed by positive
|
|
2747
|
+
* toolkits/tools/tags filters.
|
|
2748
|
+
*/
|
|
2749
|
+
preload?: SessionCreateParams.Preload;
|
|
2750
|
+
|
|
2751
|
+
search?: SessionCreateParams.Search;
|
|
2752
|
+
|
|
2753
|
+
/**
|
|
2754
|
+
* Global MCP tool annotation hints for filtering. Array format is treated as
|
|
2755
|
+
* enabled list. Object format supports both enabled (tool must have at least one)
|
|
2756
|
+
* and disabled (tool must NOT have any) lists. Toolkit-level tags override this.
|
|
2757
|
+
* Toolkit enabled/disabled lists take precedence over tag filtering.
|
|
2758
|
+
*/
|
|
2759
|
+
tags?:
|
|
2760
|
+
| Array<'readOnlyHint' | 'destructiveHint' | 'idempotentHint' | 'openWorldHint'>
|
|
2761
|
+
| SessionCreateParams.UnionMember1;
|
|
2762
|
+
|
|
2763
|
+
/**
|
|
2764
|
+
* Toolkit configuration - specify either enable toolkits (allowlist) or disable
|
|
2765
|
+
* toolkits (denylist). Mutually exclusive.
|
|
2766
|
+
*/
|
|
2767
|
+
toolkits?: SessionCreateParams.Enable | SessionCreateParams.Disable;
|
|
2768
|
+
|
|
2769
|
+
/**
|
|
2770
|
+
* Tool-level configuration per toolkit. Allows you to enable, disable, or filter
|
|
2771
|
+
* by tags for specific tools within each toolkit. Every slug passed in `enable` /
|
|
2772
|
+
* `disable` must be a valid Composio tool slug for that toolkit — invalid or
|
|
2773
|
+
* typo'd slugs fail session creation with a clear error listing which ones didn't
|
|
2774
|
+
* match.
|
|
2775
|
+
*/
|
|
2776
|
+
tools?: {
|
|
2777
|
+
[key: string]: SessionCreateParams.Enable | SessionCreateParams.Disable | SessionCreateParams.Tags;
|
|
2778
|
+
};
|
|
2779
|
+
|
|
2780
|
+
/**
|
|
2781
|
+
* Configuration for workbench behavior
|
|
2782
|
+
*/
|
|
2783
|
+
workbench?: SessionCreateParams.Workbench;
|
|
2784
|
+
}
|
|
2785
|
+
|
|
2786
|
+
export namespace SessionCreateParams {
|
|
2787
|
+
export interface Execute {
|
|
2788
|
+
enable_multi_execute?: boolean;
|
|
2789
|
+
}
|
|
2790
|
+
|
|
2791
|
+
/**
|
|
2792
|
+
* Experimental features - not stable, may be modified or removed in future
|
|
2793
|
+
* versions.
|
|
2794
|
+
*/
|
|
2795
|
+
export interface Experimental {
|
|
2796
|
+
/**
|
|
2797
|
+
* Customize assistive prompt generation (e.g., timezone).
|
|
2798
|
+
*/
|
|
2799
|
+
assistive_prompt_config?: Experimental.AssistivePromptConfig;
|
|
2800
|
+
|
|
2801
|
+
/**
|
|
2802
|
+
* Custom toolkits with grouped tools. Toolkit slugs must not conflict with
|
|
2803
|
+
* existing Composio toolkits. All tools are no-auth.
|
|
2804
|
+
*/
|
|
2805
|
+
custom_toolkits?: Array<Experimental.CustomToolkit>;
|
|
2806
|
+
|
|
2807
|
+
/**
|
|
2808
|
+
* Custom tools to include in search. Standalone tools need no auth. Tools with
|
|
2809
|
+
* extends_toolkit inherit the Composio toolkit's connection.
|
|
2810
|
+
*/
|
|
2811
|
+
custom_tools?: Array<Experimental.CustomTool>;
|
|
2812
|
+
|
|
2813
|
+
/**
|
|
2814
|
+
* Per-tool elicitation permission config. Default behavior + per-tool
|
|
2815
|
+
* always_allow/always_deny overrides. Mutation via PATCH.
|
|
2816
|
+
*/
|
|
2817
|
+
permissions?: Experimental.Permissions;
|
|
2818
|
+
}
|
|
2819
|
+
|
|
2820
|
+
export namespace Experimental {
|
|
2821
|
+
/**
|
|
2822
|
+
* Customize assistive prompt generation (e.g., timezone).
|
|
2823
|
+
*/
|
|
2824
|
+
export interface AssistivePromptConfig {
|
|
2825
|
+
/**
|
|
2826
|
+
* IANA timezone identifier (e.g., 'America/New_York', 'Europe/London'). Used to
|
|
2827
|
+
* customize the system prompt with timezone-aware instructions.
|
|
2828
|
+
*/
|
|
2829
|
+
user_timezone?: string;
|
|
2830
|
+
}
|
|
2831
|
+
|
|
2832
|
+
export interface CustomToolkit {
|
|
2833
|
+
/**
|
|
2834
|
+
* Used for BM25 search matching and shown in toolkit connection statuses.
|
|
2835
|
+
*/
|
|
2836
|
+
description: string;
|
|
2837
|
+
|
|
2838
|
+
/**
|
|
2839
|
+
* Display name shown to the LLM and in search results.
|
|
2840
|
+
*/
|
|
2841
|
+
name: string;
|
|
2842
|
+
|
|
2843
|
+
/**
|
|
2844
|
+
* Unique slug for the toolkit. Must not conflict with existing Composio toolkit
|
|
2845
|
+
* slugs. Alphanumeric, underscores, and hyphens only.
|
|
2846
|
+
*/
|
|
2847
|
+
slug: string;
|
|
2848
|
+
|
|
2849
|
+
/**
|
|
2850
|
+
* Tools in this custom toolkit
|
|
2851
|
+
*/
|
|
2852
|
+
tools: Array<CustomToolkit.Tool>;
|
|
2853
|
+
}
|
|
2854
|
+
|
|
2855
|
+
export namespace CustomToolkit {
|
|
2856
|
+
export interface Tool {
|
|
2857
|
+
/**
|
|
2858
|
+
* Used for BM25 search matching and shown to the LLM.
|
|
2859
|
+
*/
|
|
2860
|
+
description: string;
|
|
2861
|
+
|
|
2862
|
+
/**
|
|
2863
|
+
* Must have type: "object" and a properties field.
|
|
2864
|
+
*/
|
|
2865
|
+
input_schema: { [key: string]: unknown };
|
|
2866
|
+
|
|
2867
|
+
/**
|
|
2868
|
+
* Human-readable display name
|
|
2869
|
+
*/
|
|
2870
|
+
name: string;
|
|
2871
|
+
|
|
2872
|
+
/**
|
|
2873
|
+
* Tool slug. Combined with toolkit slug to form LOCAL*<TOOLKIT>*<TOOL> (max 60
|
|
2874
|
+
* chars total).
|
|
2875
|
+
*/
|
|
2876
|
+
slug: string;
|
|
2877
|
+
|
|
2878
|
+
/**
|
|
2879
|
+
* Optional output schema for the tool response.
|
|
2880
|
+
*/
|
|
2881
|
+
output_schema?: { [key: string]: unknown };
|
|
2882
|
+
}
|
|
2883
|
+
}
|
|
2884
|
+
|
|
2885
|
+
export interface CustomTool {
|
|
2886
|
+
/**
|
|
2887
|
+
* Used for BM25 search matching and shown to the LLM.
|
|
2888
|
+
*/
|
|
2889
|
+
description: string;
|
|
2890
|
+
|
|
2891
|
+
/**
|
|
2892
|
+
* Must have type: "object" and a properties field.
|
|
2893
|
+
*/
|
|
2894
|
+
input_schema: { [key: string]: unknown };
|
|
2895
|
+
|
|
2896
|
+
/**
|
|
2897
|
+
* Human-readable display name
|
|
2898
|
+
*/
|
|
2899
|
+
name: string;
|
|
2900
|
+
|
|
2901
|
+
/**
|
|
2902
|
+
* Tool slug. Forms LOCAL*<TOOL> (standalone) or LOCAL*<TOOLKIT>\_<TOOL>
|
|
2903
|
+
* (extending). Max 60 chars total.
|
|
2904
|
+
*/
|
|
2905
|
+
slug: string;
|
|
2906
|
+
|
|
2907
|
+
/**
|
|
2908
|
+
* If set, must be a valid Composio toolkit slug. The tool inherits that toolkit's
|
|
2909
|
+
* auth/connection status. If omitted, the tool is standalone (no-auth).
|
|
2910
|
+
*/
|
|
2911
|
+
extends_toolkit?: string;
|
|
2912
|
+
|
|
2913
|
+
/**
|
|
2914
|
+
* JSON Schema describing tool output (optional)
|
|
2915
|
+
*/
|
|
2916
|
+
output_schema?: { [key: string]: unknown };
|
|
2917
|
+
}
|
|
2918
|
+
|
|
2919
|
+
/**
|
|
2920
|
+
* Per-tool elicitation permission config. Default behavior + per-tool
|
|
2921
|
+
* always_allow/always_deny overrides. Mutation via PATCH.
|
|
2922
|
+
*/
|
|
2923
|
+
export interface Permissions {
|
|
2924
|
+
/**
|
|
2925
|
+
* Default elicitation behavior when no override matches. `allow_all` runs every
|
|
2926
|
+
* tool without prompting; `ask_every_call` prompts on each invocation;
|
|
2927
|
+
* `ask_once_per_session` prompts once and remembers the answer for the rest of the
|
|
2928
|
+
* session.
|
|
2929
|
+
*/
|
|
2930
|
+
default: 'allow_all' | 'ask_every_call' | 'ask_once_per_session';
|
|
2931
|
+
|
|
2932
|
+
/**
|
|
2933
|
+
* Per-tool overrides keyed by `${toolSlug}:${connectedAccountId ?? "__none__"}`,
|
|
2934
|
+
* plus account-wide overrides keyed by `*:${connectedAccountId ?? "__none__"}`.
|
|
2935
|
+
* Exact tool overrides take precedence over account-wide overrides. `always_allow`
|
|
2936
|
+
* skips the prompt and runs the tool; `always_deny` blocks the tool; `ask_once`
|
|
2937
|
+
* prompts once per session (allow/deny) and remembers; `ask_always` prompts on
|
|
2938
|
+
* every call with allow-once/allow-session/deny, ignoring any cached session
|
|
2939
|
+
* allow. Overrides take precedence over `default`.
|
|
2940
|
+
*/
|
|
2941
|
+
overrides?: { [key: string]: 'always_allow' | 'always_deny' | 'ask_once' | 'ask_always' };
|
|
2942
|
+
}
|
|
2943
|
+
}
|
|
2944
|
+
|
|
2945
|
+
/**
|
|
2946
|
+
* Configuration for connection management settings
|
|
2947
|
+
*/
|
|
2948
|
+
export interface ManageConnections {
|
|
2949
|
+
/**
|
|
2950
|
+
* The URL to redirect to after a user completes authentication for a connected
|
|
2951
|
+
* account. This allows you to handle the auth callback in your own application.
|
|
2952
|
+
*/
|
|
2953
|
+
callback_url?: string;
|
|
2954
|
+
|
|
2955
|
+
/**
|
|
2956
|
+
* Whether to enable the connection manager for automatic connection handling. If
|
|
2957
|
+
* true, we will provide a tool your agent can use to initiate connections to
|
|
2958
|
+
* toolkits if it doesnt exist. If set to false, then you have to manage
|
|
2959
|
+
* connections manually.
|
|
2960
|
+
*/
|
|
2961
|
+
enable?: boolean | null;
|
|
2962
|
+
|
|
2963
|
+
/**
|
|
2964
|
+
* Enable the "remove" action in COMPOSIO_MANAGE_CONNECTIONS to allow deleting
|
|
2965
|
+
* connected accounts. Default true.
|
|
2966
|
+
*/
|
|
2967
|
+
enable_connection_removal?: boolean | null;
|
|
2968
|
+
|
|
2969
|
+
/**
|
|
2970
|
+
* When true, the COMPOSIO_WAIT_FOR_CONNECTIONS tool is available for agents to
|
|
2971
|
+
* poll connection status after sharing auth URLs. Default is false (disabled). May
|
|
2972
|
+
* not work reliably with GPT models.
|
|
2973
|
+
*/
|
|
2974
|
+
enable_wait_for_connections?: boolean | null;
|
|
2975
|
+
}
|
|
2976
|
+
|
|
2977
|
+
/**
|
|
2978
|
+
* Configure multi-account behavior. When enabled, users can connect multiple
|
|
2979
|
+
* accounts per toolkit.
|
|
2980
|
+
*/
|
|
2981
|
+
export interface MultiAccount {
|
|
2982
|
+
/**
|
|
2983
|
+
* When true, enables multi-account mode for this session. When not set, falls back
|
|
2984
|
+
* to org/project-level configuration.
|
|
2985
|
+
*/
|
|
2986
|
+
enable?: boolean;
|
|
2987
|
+
|
|
2988
|
+
/**
|
|
2989
|
+
* Maximum number of connected accounts allowed per toolkit. Must be between 2
|
|
2990
|
+
* and 10.
|
|
2991
|
+
*/
|
|
2992
|
+
max_accounts_per_toolkit?: number;
|
|
2993
|
+
|
|
2994
|
+
/**
|
|
2995
|
+
* When true, the agent must explicitly select which account to use. When false
|
|
2996
|
+
* (default), the first/default account is used automatically.
|
|
2997
|
+
*/
|
|
2998
|
+
require_explicit_selection?: boolean;
|
|
2999
|
+
}
|
|
3000
|
+
|
|
3001
|
+
/**
|
|
3002
|
+
* Preload configuration. Use an explicit list for frequently used tool slugs, or
|
|
3003
|
+
* "all" to dynamically expose every app tool allowed by positive
|
|
3004
|
+
* toolkits/tools/tags filters.
|
|
3005
|
+
*/
|
|
3006
|
+
export interface Preload {
|
|
3007
|
+
/**
|
|
3008
|
+
* Explicit tool slugs to preload, or "all" to dynamically expose all current and
|
|
3009
|
+
* future app tools allowed by the positive session filters. "all" is capped at
|
|
3010
|
+
* 1000 tools and is not supported without a positive allowlist.
|
|
3011
|
+
*/
|
|
3012
|
+
tools?: Array<string> | string;
|
|
3013
|
+
}
|
|
3014
|
+
|
|
3015
|
+
export interface Search {
|
|
3016
|
+
enable?: boolean;
|
|
3017
|
+
}
|
|
3018
|
+
|
|
3019
|
+
export interface UnionMember1 {
|
|
3020
|
+
disable?: Array<'readOnlyHint' | 'destructiveHint' | 'idempotentHint' | 'openWorldHint'>;
|
|
3021
|
+
|
|
3022
|
+
enable?: Array<'readOnlyHint' | 'destructiveHint' | 'idempotentHint' | 'openWorldHint'>;
|
|
3023
|
+
}
|
|
3024
|
+
|
|
3025
|
+
/**
|
|
3026
|
+
* Enable only specific toolkits (allowlist)
|
|
3027
|
+
*/
|
|
3028
|
+
export interface Enable {
|
|
3029
|
+
/**
|
|
3030
|
+
* Only these specific toolkits will be enabled
|
|
3031
|
+
*/
|
|
3032
|
+
enable: Array<string>;
|
|
3033
|
+
}
|
|
3034
|
+
|
|
3035
|
+
/**
|
|
3036
|
+
* Disable specific toolkits (denylist)
|
|
3037
|
+
*/
|
|
3038
|
+
export interface Disable {
|
|
3039
|
+
/**
|
|
3040
|
+
* These specific toolkits will be disabled
|
|
3041
|
+
*/
|
|
3042
|
+
disable: Array<string>;
|
|
3043
|
+
}
|
|
3044
|
+
|
|
3045
|
+
export interface Enable {
|
|
3046
|
+
/**
|
|
3047
|
+
* Only these specific tools will be available for this toolkit
|
|
3048
|
+
*/
|
|
3049
|
+
enable: Array<string>;
|
|
3050
|
+
}
|
|
3051
|
+
|
|
3052
|
+
export interface Disable {
|
|
3053
|
+
/**
|
|
3054
|
+
* These specific tools will be disabled for this toolkit
|
|
3055
|
+
*/
|
|
3056
|
+
disable: Array<string>;
|
|
3057
|
+
}
|
|
3058
|
+
|
|
3059
|
+
export interface Tags {
|
|
3060
|
+
/**
|
|
3061
|
+
* MCP tags to filter tools. Array format is treated as enabled list. Object format
|
|
3062
|
+
* supports both enabled and disabled lists.
|
|
3063
|
+
*/
|
|
3064
|
+
tags: Array<'readOnlyHint' | 'destructiveHint' | 'idempotentHint' | 'openWorldHint'> | Tags.UnionMember1;
|
|
3065
|
+
}
|
|
3066
|
+
|
|
3067
|
+
export namespace Tags {
|
|
3068
|
+
export interface UnionMember1 {
|
|
3069
|
+
disable?: Array<'readOnlyHint' | 'destructiveHint' | 'idempotentHint' | 'openWorldHint'>;
|
|
3070
|
+
|
|
3071
|
+
enable?: Array<'readOnlyHint' | 'destructiveHint' | 'idempotentHint' | 'openWorldHint'>;
|
|
3072
|
+
}
|
|
3073
|
+
}
|
|
3074
|
+
|
|
3075
|
+
/**
|
|
3076
|
+
* Configuration for workbench behavior
|
|
3077
|
+
*/
|
|
3078
|
+
export interface Workbench {
|
|
3079
|
+
/**
|
|
3080
|
+
* Character threshold for automatic offloading. When workbench response exceeds
|
|
3081
|
+
* this threshold, it will be automatically offloaded. Default is picked
|
|
3082
|
+
* automatically based on the response size.
|
|
1356
3083
|
*/
|
|
1357
|
-
|
|
3084
|
+
auto_offload_threshold?: number;
|
|
1358
3085
|
|
|
1359
3086
|
/**
|
|
1360
|
-
*
|
|
3087
|
+
* Set to false to disable the workbench entirely. When disabled, no code execution
|
|
3088
|
+
* tools are available in the session.
|
|
1361
3089
|
*/
|
|
1362
|
-
|
|
3090
|
+
enable?: boolean;
|
|
1363
3091
|
|
|
1364
3092
|
/**
|
|
1365
|
-
*
|
|
3093
|
+
* Whether proxy execution is enabled. When enabled, workbench can call URLs and
|
|
3094
|
+
* APIs directly.
|
|
1366
3095
|
*/
|
|
1367
|
-
|
|
3096
|
+
enable_proxy_execution?: boolean;
|
|
1368
3097
|
|
|
1369
3098
|
/**
|
|
1370
|
-
*
|
|
3099
|
+
* Sandbox compute tier: standard (1 vCPU / 1 GB), medium (2 vCPU / 2 GB), large (4
|
|
3100
|
+
* vCPU / 4 GB), xlarge (8 vCPU / 8 GB). Defaults to standard.
|
|
1371
3101
|
*/
|
|
1372
|
-
|
|
3102
|
+
sandbox_size?: 'standard' | 'medium' | 'large' | 'xlarge';
|
|
3103
|
+
}
|
|
3104
|
+
}
|
|
3105
|
+
|
|
3106
|
+
export interface SessionAttachParams {
|
|
3107
|
+
/**
|
|
3108
|
+
* Inline custom tools and toolkits for this request. v3.1 sessions do not persist
|
|
3109
|
+
* customs — pass them on every request that needs them.
|
|
3110
|
+
*/
|
|
3111
|
+
experimental?: SessionAttachParams.Experimental;
|
|
3112
|
+
}
|
|
1373
3113
|
|
|
3114
|
+
export namespace SessionAttachParams {
|
|
3115
|
+
/**
|
|
3116
|
+
* Inline custom tools and toolkits for this request. v3.1 sessions do not persist
|
|
3117
|
+
* customs — pass them on every request that needs them.
|
|
3118
|
+
*/
|
|
3119
|
+
export interface Experimental {
|
|
1374
3120
|
/**
|
|
1375
|
-
*
|
|
3121
|
+
* Custom toolkits with grouped tools. Toolkit slugs must not conflict with
|
|
3122
|
+
* existing Composio toolkits. All tools are no-auth.
|
|
1376
3123
|
*/
|
|
1377
|
-
|
|
1378
|
-
}
|
|
3124
|
+
custom_toolkits?: Array<Experimental.CustomToolkit>;
|
|
1379
3125
|
|
|
1380
|
-
export namespace Item {
|
|
1381
3126
|
/**
|
|
1382
|
-
*
|
|
3127
|
+
* Custom tools to include in search. Standalone tools need no auth. Tools with
|
|
3128
|
+
* extends_toolkit inherit the Composio toolkit's connection.
|
|
1383
3129
|
*/
|
|
1384
|
-
|
|
1385
|
-
|
|
1386
|
-
* Connected account identifier
|
|
1387
|
-
*/
|
|
1388
|
-
id: string;
|
|
3130
|
+
custom_tools?: Array<Experimental.CustomTool>;
|
|
3131
|
+
}
|
|
1389
3132
|
|
|
3133
|
+
export namespace Experimental {
|
|
3134
|
+
export interface CustomToolkit {
|
|
1390
3135
|
/**
|
|
1391
|
-
*
|
|
3136
|
+
* Used for BM25 search matching and shown in toolkit connection statuses.
|
|
1392
3137
|
*/
|
|
1393
|
-
|
|
3138
|
+
description: string;
|
|
1394
3139
|
|
|
1395
3140
|
/**
|
|
1396
|
-
*
|
|
3141
|
+
* Display name shown to the LLM and in search results.
|
|
1397
3142
|
*/
|
|
1398
|
-
|
|
3143
|
+
name: string;
|
|
1399
3144
|
|
|
1400
3145
|
/**
|
|
1401
|
-
*
|
|
3146
|
+
* Unique slug for the toolkit. Must not conflict with existing Composio toolkit
|
|
3147
|
+
* slugs. Alphanumeric, underscores, and hyphens only.
|
|
1402
3148
|
*/
|
|
1403
|
-
|
|
3149
|
+
slug: string;
|
|
1404
3150
|
|
|
1405
3151
|
/**
|
|
1406
|
-
*
|
|
3152
|
+
* Tools in this custom toolkit
|
|
1407
3153
|
*/
|
|
1408
|
-
|
|
3154
|
+
tools: Array<CustomToolkit.Tool>;
|
|
1409
3155
|
}
|
|
1410
3156
|
|
|
1411
|
-
export namespace
|
|
1412
|
-
|
|
1413
|
-
* Auth config details
|
|
1414
|
-
*/
|
|
1415
|
-
export interface AuthConfig {
|
|
3157
|
+
export namespace CustomToolkit {
|
|
3158
|
+
export interface Tool {
|
|
1416
3159
|
/**
|
|
1417
|
-
*
|
|
3160
|
+
* Used for BM25 search matching and shown to the LLM.
|
|
1418
3161
|
*/
|
|
1419
|
-
|
|
3162
|
+
description: string;
|
|
1420
3163
|
|
|
1421
3164
|
/**
|
|
1422
|
-
*
|
|
3165
|
+
* Must have type: "object" and a properties field.
|
|
1423
3166
|
*/
|
|
1424
|
-
|
|
3167
|
+
input_schema: { [key: string]: unknown };
|
|
1425
3168
|
|
|
1426
3169
|
/**
|
|
1427
|
-
*
|
|
3170
|
+
* Human-readable display name
|
|
1428
3171
|
*/
|
|
1429
|
-
|
|
3172
|
+
name: string;
|
|
3173
|
+
|
|
3174
|
+
/**
|
|
3175
|
+
* Tool slug. Combined with toolkit slug to form LOCAL*<TOOLKIT>*<TOOL> (max 60
|
|
3176
|
+
* chars total).
|
|
3177
|
+
*/
|
|
3178
|
+
slug: string;
|
|
3179
|
+
|
|
3180
|
+
/**
|
|
3181
|
+
* Optional output schema for the tool response.
|
|
3182
|
+
*/
|
|
3183
|
+
output_schema?: { [key: string]: unknown };
|
|
1430
3184
|
}
|
|
1431
3185
|
}
|
|
1432
3186
|
|
|
1433
|
-
|
|
1434
|
-
* Toolkit metadata
|
|
1435
|
-
*/
|
|
1436
|
-
export interface Meta {
|
|
3187
|
+
export interface CustomTool {
|
|
1437
3188
|
/**
|
|
1438
|
-
*
|
|
3189
|
+
* Used for BM25 search matching and shown to the LLM.
|
|
1439
3190
|
*/
|
|
1440
3191
|
description: string;
|
|
1441
3192
|
|
|
1442
3193
|
/**
|
|
1443
|
-
*
|
|
3194
|
+
* Must have type: "object" and a properties field.
|
|
1444
3195
|
*/
|
|
1445
|
-
|
|
3196
|
+
input_schema: { [key: string]: unknown };
|
|
3197
|
+
|
|
3198
|
+
/**
|
|
3199
|
+
* Human-readable display name
|
|
3200
|
+
*/
|
|
3201
|
+
name: string;
|
|
3202
|
+
|
|
3203
|
+
/**
|
|
3204
|
+
* Tool slug. Forms LOCAL*<TOOL> (standalone) or LOCAL*<TOOLKIT>\_<TOOL>
|
|
3205
|
+
* (extending). Max 60 chars total.
|
|
3206
|
+
*/
|
|
3207
|
+
slug: string;
|
|
3208
|
+
|
|
3209
|
+
/**
|
|
3210
|
+
* If set, must be a valid Composio toolkit slug. The tool inherits that toolkit's
|
|
3211
|
+
* auth/connection status. If omitted, the tool is standalone (no-auth).
|
|
3212
|
+
*/
|
|
3213
|
+
extends_toolkit?: string;
|
|
3214
|
+
|
|
3215
|
+
/**
|
|
3216
|
+
* JSON Schema describing tool output (optional)
|
|
3217
|
+
*/
|
|
3218
|
+
output_schema?: { [key: string]: unknown };
|
|
1446
3219
|
}
|
|
1447
3220
|
}
|
|
1448
3221
|
}
|
|
1449
3222
|
|
|
1450
|
-
export interface
|
|
3223
|
+
export interface SessionConfigHistoryParams {
|
|
1451
3224
|
/**
|
|
1452
|
-
*
|
|
3225
|
+
* Cursor for pagination. The cursor is a base64 encoded string of the page and
|
|
3226
|
+
* limit. The page is the page number and the limit is the number of items per
|
|
3227
|
+
* page. The cursor is used to paginate through the items. The cursor is not
|
|
3228
|
+
* required for the first page.
|
|
1453
3229
|
*/
|
|
1454
|
-
|
|
1455
|
-
}
|
|
1456
|
-
|
|
1457
|
-
export namespace SessionToolsResponse {
|
|
1458
|
-
export interface Item {
|
|
1459
|
-
/**
|
|
1460
|
-
* List of all available versions for this tool
|
|
1461
|
-
*/
|
|
1462
|
-
available_versions: Array<string>;
|
|
1463
|
-
|
|
1464
|
-
deprecated: Item.Deprecated;
|
|
1465
|
-
|
|
1466
|
-
/**
|
|
1467
|
-
* Detailed explanation of the tool's functionality and purpose
|
|
1468
|
-
*/
|
|
1469
|
-
description: string;
|
|
1470
|
-
|
|
1471
|
-
/**
|
|
1472
|
-
* Schema definition of required input parameters for the tool
|
|
1473
|
-
*/
|
|
1474
|
-
input_parameters: { [key: string]: unknown };
|
|
1475
|
-
|
|
1476
|
-
/**
|
|
1477
|
-
* Indicates if this tool is deprecated and may be removed in the future
|
|
1478
|
-
*/
|
|
1479
|
-
is_deprecated: boolean;
|
|
1480
|
-
|
|
1481
|
-
/**
|
|
1482
|
-
* Human-readable display name of the tool
|
|
1483
|
-
*/
|
|
1484
|
-
name: string;
|
|
1485
|
-
|
|
1486
|
-
/**
|
|
1487
|
-
* Indicates if the tool can be used without authentication
|
|
1488
|
-
*/
|
|
1489
|
-
no_auth: boolean;
|
|
3230
|
+
cursor?: string;
|
|
1490
3231
|
|
|
1491
|
-
|
|
1492
|
-
|
|
1493
|
-
|
|
1494
|
-
|
|
3232
|
+
/**
|
|
3233
|
+
* Number of items per page, max allowed is 100
|
|
3234
|
+
*/
|
|
3235
|
+
limit?: number;
|
|
3236
|
+
}
|
|
1495
3237
|
|
|
1496
|
-
|
|
1497
|
-
|
|
1498
|
-
|
|
1499
|
-
|
|
1500
|
-
|
|
3238
|
+
export interface SessionExecuteParams {
|
|
3239
|
+
/**
|
|
3240
|
+
* The unique slug identifier of the tool to execute. Supports both meta tools and
|
|
3241
|
+
* app tools exposed by the session.
|
|
3242
|
+
*/
|
|
3243
|
+
tool_slug: string;
|
|
1501
3244
|
|
|
1502
|
-
|
|
1503
|
-
|
|
1504
|
-
|
|
1505
|
-
|
|
3245
|
+
/**
|
|
3246
|
+
* Account identifier to specify which connected account to use for direct tool
|
|
3247
|
+
* execution. Use the account ID (e.g. "coup_hurricane_dal_analytical") or an
|
|
3248
|
+
* alias. When omitted with a single account, the default is used. When omitted
|
|
3249
|
+
* with multiple accounts, an error lists available accounts. Meta/helper tools
|
|
3250
|
+
* either ignore this top-level field or define their own account-selection fields,
|
|
3251
|
+
* for example COMPOSIO_MULTI_EXECUTE_TOOL.tools[].account.
|
|
3252
|
+
*/
|
|
3253
|
+
account?: string;
|
|
1506
3254
|
|
|
1507
|
-
|
|
1508
|
-
|
|
1509
|
-
|
|
1510
|
-
|
|
3255
|
+
/**
|
|
3256
|
+
* The arguments required by the tool
|
|
3257
|
+
*/
|
|
3258
|
+
arguments?: { [key: string]: unknown };
|
|
1511
3259
|
|
|
1512
|
-
|
|
1513
|
-
|
|
1514
|
-
|
|
1515
|
-
|
|
3260
|
+
/**
|
|
3261
|
+
* When true, direct non-meta tool execution may return a workbench offload preview
|
|
3262
|
+
* if the response exceeds the configured threshold and the session workbench is
|
|
3263
|
+
* enabled. When omitted or false, direct tool execution returns the normal inline
|
|
3264
|
+
* response. Meta/helper tools are unaffected, and COMPOSIO_MULTI_EXECUTE_TOOL uses
|
|
3265
|
+
* session.workbench configuration for its own batch-level offload behavior.
|
|
3266
|
+
*/
|
|
3267
|
+
enable_auto_workbench_offload?: boolean;
|
|
1516
3268
|
|
|
1517
|
-
|
|
3269
|
+
/**
|
|
3270
|
+
* Inline custom tools and toolkits for this request. v3.1 sessions do not persist
|
|
3271
|
+
* customs — pass them on every request that needs them.
|
|
3272
|
+
*/
|
|
3273
|
+
experimental?: SessionExecuteParams.Experimental;
|
|
3274
|
+
}
|
|
1518
3275
|
|
|
3276
|
+
export namespace SessionExecuteParams {
|
|
3277
|
+
/**
|
|
3278
|
+
* Inline custom tools and toolkits for this request. v3.1 sessions do not persist
|
|
3279
|
+
* customs — pass them on every request that needs them.
|
|
3280
|
+
*/
|
|
3281
|
+
export interface Experimental {
|
|
1519
3282
|
/**
|
|
1520
|
-
*
|
|
3283
|
+
* Custom toolkits with grouped tools. Toolkit slugs must not conflict with
|
|
3284
|
+
* existing Composio toolkits. All tools are no-auth.
|
|
1521
3285
|
*/
|
|
1522
|
-
|
|
3286
|
+
custom_toolkits?: Array<Experimental.CustomToolkit>;
|
|
1523
3287
|
|
|
1524
3288
|
/**
|
|
1525
|
-
*
|
|
3289
|
+
* Custom tools to include in search. Standalone tools need no auth. Tools with
|
|
3290
|
+
* extends_toolkit inherit the Composio toolkit's connection.
|
|
1526
3291
|
*/
|
|
1527
|
-
|
|
3292
|
+
custom_tools?: Array<Experimental.CustomTool>;
|
|
1528
3293
|
}
|
|
1529
3294
|
|
|
1530
|
-
export namespace
|
|
1531
|
-
export interface
|
|
3295
|
+
export namespace Experimental {
|
|
3296
|
+
export interface CustomToolkit {
|
|
1532
3297
|
/**
|
|
1533
|
-
*
|
|
3298
|
+
* Used for BM25 search matching and shown in toolkit connection statuses.
|
|
1534
3299
|
*/
|
|
1535
|
-
|
|
3300
|
+
description: string;
|
|
1536
3301
|
|
|
1537
3302
|
/**
|
|
1538
|
-
*
|
|
3303
|
+
* Display name shown to the LLM and in search results.
|
|
1539
3304
|
*/
|
|
1540
|
-
|
|
3305
|
+
name: string;
|
|
1541
3306
|
|
|
1542
3307
|
/**
|
|
1543
|
-
*
|
|
3308
|
+
* Unique slug for the toolkit. Must not conflict with existing Composio toolkit
|
|
3309
|
+
* slugs. Alphanumeric, underscores, and hyphens only.
|
|
1544
3310
|
*/
|
|
1545
|
-
|
|
3311
|
+
slug: string;
|
|
1546
3312
|
|
|
1547
|
-
|
|
3313
|
+
/**
|
|
3314
|
+
* Tools in this custom toolkit
|
|
3315
|
+
*/
|
|
3316
|
+
tools: Array<CustomToolkit.Tool>;
|
|
3317
|
+
}
|
|
3318
|
+
|
|
3319
|
+
export namespace CustomToolkit {
|
|
3320
|
+
export interface Tool {
|
|
3321
|
+
/**
|
|
3322
|
+
* Used for BM25 search matching and shown to the LLM.
|
|
3323
|
+
*/
|
|
3324
|
+
description: string;
|
|
1548
3325
|
|
|
1549
|
-
|
|
1550
|
-
|
|
1551
|
-
|
|
1552
|
-
|
|
1553
|
-
}
|
|
3326
|
+
/**
|
|
3327
|
+
* Must have type: "object" and a properties field.
|
|
3328
|
+
*/
|
|
3329
|
+
input_schema: { [key: string]: unknown };
|
|
1554
3330
|
|
|
1555
|
-
export namespace Deprecated {
|
|
1556
|
-
export interface Toolkit {
|
|
1557
3331
|
/**
|
|
1558
|
-
*
|
|
3332
|
+
* Human-readable display name
|
|
1559
3333
|
*/
|
|
1560
|
-
|
|
1561
|
-
}
|
|
1562
|
-
}
|
|
3334
|
+
name: string;
|
|
1563
3335
|
|
|
1564
|
-
|
|
1565
|
-
|
|
1566
|
-
|
|
1567
|
-
|
|
1568
|
-
|
|
1569
|
-
all_of: Array<string | ScopeRequirements.AnyOf>;
|
|
1570
|
-
}
|
|
3336
|
+
/**
|
|
3337
|
+
* Tool slug. Combined with toolkit slug to form LOCAL*<TOOLKIT>*<TOOL> (max 60
|
|
3338
|
+
* chars total).
|
|
3339
|
+
*/
|
|
3340
|
+
slug: string;
|
|
1571
3341
|
|
|
1572
|
-
|
|
1573
|
-
|
|
1574
|
-
|
|
3342
|
+
/**
|
|
3343
|
+
* Optional output schema for the tool response.
|
|
3344
|
+
*/
|
|
3345
|
+
output_schema?: { [key: string]: unknown };
|
|
1575
3346
|
}
|
|
1576
3347
|
}
|
|
1577
3348
|
|
|
1578
|
-
export interface
|
|
3349
|
+
export interface CustomTool {
|
|
1579
3350
|
/**
|
|
1580
|
-
*
|
|
3351
|
+
* Used for BM25 search matching and shown to the LLM.
|
|
1581
3352
|
*/
|
|
1582
|
-
|
|
3353
|
+
description: string;
|
|
1583
3354
|
|
|
1584
3355
|
/**
|
|
1585
|
-
*
|
|
3356
|
+
* Must have type: "object" and a properties field.
|
|
3357
|
+
*/
|
|
3358
|
+
input_schema: { [key: string]: unknown };
|
|
3359
|
+
|
|
3360
|
+
/**
|
|
3361
|
+
* Human-readable display name
|
|
1586
3362
|
*/
|
|
1587
3363
|
name: string;
|
|
1588
3364
|
|
|
1589
3365
|
/**
|
|
1590
|
-
*
|
|
3366
|
+
* Tool slug. Forms LOCAL*<TOOL> (standalone) or LOCAL*<TOOLKIT>\_<TOOL>
|
|
3367
|
+
* (extending). Max 60 chars total.
|
|
1591
3368
|
*/
|
|
1592
3369
|
slug: string;
|
|
3370
|
+
|
|
3371
|
+
/**
|
|
3372
|
+
* If set, must be a valid Composio toolkit slug. The tool inherits that toolkit's
|
|
3373
|
+
* auth/connection status. If omitted, the tool is standalone (no-auth).
|
|
3374
|
+
*/
|
|
3375
|
+
extends_toolkit?: string;
|
|
3376
|
+
|
|
3377
|
+
/**
|
|
3378
|
+
* JSON Schema describing tool output (optional)
|
|
3379
|
+
*/
|
|
3380
|
+
output_schema?: { [key: string]: unknown };
|
|
1593
3381
|
}
|
|
1594
3382
|
}
|
|
1595
3383
|
}
|
|
1596
3384
|
|
|
1597
|
-
export interface
|
|
1598
|
-
/**
|
|
1599
|
-
* The identifier of the user who is initiating the session, ideally a unique
|
|
1600
|
-
* identifier from your database like a user ID or email address
|
|
1601
|
-
*/
|
|
1602
|
-
user_id: string;
|
|
1603
|
-
|
|
1604
|
-
/**
|
|
1605
|
-
* The auth configs to use for the session. This will override the default behavior
|
|
1606
|
-
* and use the given auth config when specific toolkits are being executed
|
|
1607
|
-
*/
|
|
1608
|
-
auth_configs?: { [key: string]: string };
|
|
1609
|
-
|
|
1610
|
-
/**
|
|
1611
|
-
* The connected accounts to use for the session. This will override the default
|
|
1612
|
-
* behaviour and use the given connected account when specific toolkits are being
|
|
1613
|
-
* executed. Each connected account must exist (not deleted or disabled) and belong
|
|
1614
|
-
* to the same `user_id` as the session — otherwise session creation fails with a
|
|
1615
|
-
* clear error explaining which account didn't match.
|
|
1616
|
-
*/
|
|
1617
|
-
connected_accounts?: { [key: string]: string };
|
|
1618
|
-
|
|
1619
|
-
/**
|
|
1620
|
-
* Experimental features - not stable, may be modified or removed in future
|
|
1621
|
-
* versions.
|
|
1622
|
-
*/
|
|
1623
|
-
experimental?: SessionCreateParams.Experimental;
|
|
1624
|
-
|
|
1625
|
-
/**
|
|
1626
|
-
* Configuration for connection management settings
|
|
1627
|
-
*/
|
|
1628
|
-
manage_connections?: SessionCreateParams.ManageConnections;
|
|
1629
|
-
|
|
1630
|
-
/**
|
|
1631
|
-
* Configure multi-account behavior. When enabled, users can connect multiple
|
|
1632
|
-
* accounts per toolkit.
|
|
1633
|
-
*/
|
|
1634
|
-
multi_account?: SessionCreateParams.MultiAccount;
|
|
1635
|
-
|
|
1636
|
-
/**
|
|
1637
|
-
* Preload configuration. Controls which tools appear in `session.tools` and the
|
|
1638
|
-
* MCP server tool list so the agent can call them directly without going through
|
|
1639
|
-
* search first — useful for frequently used tools. Each slug must be allowed by
|
|
1640
|
-
* the session filters (`toolkits`, `tools`, `tags`), otherwise session creation
|
|
1641
|
-
* fails with a 400. Custom tools declared in `custom_tools` / `custom_toolkits`
|
|
1642
|
-
* can also be preloaded. Not supported when multi-account is enabled. Each
|
|
1643
|
-
* preloaded tool adds to the agent context window, so keep the list at or under
|
|
1644
|
-
* ~20 tools.
|
|
1645
|
-
*/
|
|
1646
|
-
preload?: SessionCreateParams.Preload;
|
|
1647
|
-
|
|
1648
|
-
/**
|
|
1649
|
-
* Global MCP tool annotation hints for filtering. Array format is treated as
|
|
1650
|
-
* enabled list. Object format supports both enabled (tool must have at least one)
|
|
1651
|
-
* and disabled (tool must NOT have any) lists. Toolkit-level tags override this.
|
|
1652
|
-
* Toolkit enabled/disabled lists take precedence over tag filtering.
|
|
1653
|
-
*/
|
|
1654
|
-
tags?:
|
|
1655
|
-
| Array<'readOnlyHint' | 'destructiveHint' | 'idempotentHint' | 'openWorldHint'>
|
|
1656
|
-
| SessionCreateParams.UnionMember1;
|
|
1657
|
-
|
|
3385
|
+
export interface SessionExecuteMetaParams {
|
|
1658
3386
|
/**
|
|
1659
|
-
*
|
|
1660
|
-
* toolkits (denylist). Mutually exclusive.
|
|
3387
|
+
* The unique slug identifier of the meta tool to execute
|
|
1661
3388
|
*/
|
|
1662
|
-
|
|
3389
|
+
slug:
|
|
3390
|
+
| 'COMPOSIO_SEARCH_TOOLS'
|
|
3391
|
+
| 'COMPOSIO_MULTI_EXECUTE_TOOL'
|
|
3392
|
+
| 'COMPOSIO_MANAGE_CONNECTIONS'
|
|
3393
|
+
| 'COMPOSIO_WAIT_FOR_CONNECTIONS'
|
|
3394
|
+
| 'COMPOSIO_REMOTE_WORKBENCH'
|
|
3395
|
+
| 'COMPOSIO_REMOTE_BASH_TOOL'
|
|
3396
|
+
| 'COMPOSIO_GET_TOOL_SCHEMAS'
|
|
3397
|
+
| 'COMPOSIO_UPSERT_RECIPE'
|
|
3398
|
+
| 'COMPOSIO_GET_RECIPE';
|
|
1663
3399
|
|
|
1664
3400
|
/**
|
|
1665
|
-
*
|
|
1666
|
-
* by tags for specific tools within each toolkit. Every slug passed in `enable` /
|
|
1667
|
-
* `disable` must be a valid Composio tool slug for that toolkit — invalid or
|
|
1668
|
-
* typo'd slugs fail session creation with a clear error listing which ones didn't
|
|
1669
|
-
* match.
|
|
3401
|
+
* The arguments required by the meta tool
|
|
1670
3402
|
*/
|
|
1671
|
-
|
|
1672
|
-
[key: string]: SessionCreateParams.Enable | SessionCreateParams.Disable | SessionCreateParams.Tags;
|
|
1673
|
-
};
|
|
3403
|
+
arguments?: { [key: string]: unknown };
|
|
1674
3404
|
|
|
1675
3405
|
/**
|
|
1676
|
-
*
|
|
3406
|
+
* Inline custom tools and toolkits for this request. v3.1 sessions do not persist
|
|
3407
|
+
* customs — pass them on every request that needs them.
|
|
1677
3408
|
*/
|
|
1678
|
-
|
|
3409
|
+
experimental?: SessionExecuteMetaParams.Experimental;
|
|
1679
3410
|
}
|
|
1680
3411
|
|
|
1681
|
-
export namespace
|
|
3412
|
+
export namespace SessionExecuteMetaParams {
|
|
1682
3413
|
/**
|
|
1683
|
-
*
|
|
1684
|
-
*
|
|
3414
|
+
* Inline custom tools and toolkits for this request. v3.1 sessions do not persist
|
|
3415
|
+
* customs — pass them on every request that needs them.
|
|
1685
3416
|
*/
|
|
1686
3417
|
export interface Experimental {
|
|
1687
|
-
/**
|
|
1688
|
-
* Customize assistive prompt generation (e.g., timezone).
|
|
1689
|
-
*/
|
|
1690
|
-
assistive_prompt_config?: Experimental.AssistivePromptConfig;
|
|
1691
|
-
|
|
1692
3418
|
/**
|
|
1693
3419
|
* Custom toolkits with grouped tools. Toolkit slugs must not conflict with
|
|
1694
3420
|
* existing Composio toolkits. All tools are no-auth.
|
|
@@ -1703,17 +3429,6 @@ export namespace SessionCreateParams {
|
|
|
1703
3429
|
}
|
|
1704
3430
|
|
|
1705
3431
|
export namespace Experimental {
|
|
1706
|
-
/**
|
|
1707
|
-
* Customize assistive prompt generation (e.g., timezone).
|
|
1708
|
-
*/
|
|
1709
|
-
export interface AssistivePromptConfig {
|
|
1710
|
-
/**
|
|
1711
|
-
* IANA timezone identifier (e.g., 'America/New_York', 'Europe/London'). Used to
|
|
1712
|
-
* customize the system prompt with timezone-aware instructions.
|
|
1713
|
-
*/
|
|
1714
|
-
user_timezone?: string;
|
|
1715
|
-
}
|
|
1716
|
-
|
|
1717
3432
|
export interface CustomToolkit {
|
|
1718
3433
|
/**
|
|
1719
3434
|
* Used for BM25 search matching and shown in toolkit connection statuses.
|
|
@@ -1749,62 +3464,177 @@ export namespace SessionCreateParams {
|
|
|
1749
3464
|
*/
|
|
1750
3465
|
input_schema: { [key: string]: unknown };
|
|
1751
3466
|
|
|
1752
|
-
/**
|
|
1753
|
-
* Human-readable display name
|
|
1754
|
-
*/
|
|
1755
|
-
name: string;
|
|
3467
|
+
/**
|
|
3468
|
+
* Human-readable display name
|
|
3469
|
+
*/
|
|
3470
|
+
name: string;
|
|
3471
|
+
|
|
3472
|
+
/**
|
|
3473
|
+
* Tool slug. Combined with toolkit slug to form LOCAL*<TOOLKIT>*<TOOL> (max 60
|
|
3474
|
+
* chars total).
|
|
3475
|
+
*/
|
|
3476
|
+
slug: string;
|
|
3477
|
+
|
|
3478
|
+
/**
|
|
3479
|
+
* Optional output schema for the tool response.
|
|
3480
|
+
*/
|
|
3481
|
+
output_schema?: { [key: string]: unknown };
|
|
3482
|
+
}
|
|
3483
|
+
}
|
|
3484
|
+
|
|
3485
|
+
export interface CustomTool {
|
|
3486
|
+
/**
|
|
3487
|
+
* Used for BM25 search matching and shown to the LLM.
|
|
3488
|
+
*/
|
|
3489
|
+
description: string;
|
|
3490
|
+
|
|
3491
|
+
/**
|
|
3492
|
+
* Must have type: "object" and a properties field.
|
|
3493
|
+
*/
|
|
3494
|
+
input_schema: { [key: string]: unknown };
|
|
3495
|
+
|
|
3496
|
+
/**
|
|
3497
|
+
* Human-readable display name
|
|
3498
|
+
*/
|
|
3499
|
+
name: string;
|
|
3500
|
+
|
|
3501
|
+
/**
|
|
3502
|
+
* Tool slug. Forms LOCAL*<TOOL> (standalone) or LOCAL*<TOOLKIT>\_<TOOL>
|
|
3503
|
+
* (extending). Max 60 chars total.
|
|
3504
|
+
*/
|
|
3505
|
+
slug: string;
|
|
3506
|
+
|
|
3507
|
+
/**
|
|
3508
|
+
* If set, must be a valid Composio toolkit slug. The tool inherits that toolkit's
|
|
3509
|
+
* auth/connection status. If omitted, the tool is standalone (no-auth).
|
|
3510
|
+
*/
|
|
3511
|
+
extends_toolkit?: string;
|
|
3512
|
+
|
|
3513
|
+
/**
|
|
3514
|
+
* JSON Schema describing tool output (optional)
|
|
3515
|
+
*/
|
|
3516
|
+
output_schema?: { [key: string]: unknown };
|
|
3517
|
+
}
|
|
3518
|
+
}
|
|
3519
|
+
}
|
|
3520
|
+
|
|
3521
|
+
export interface SessionLinkParams {
|
|
3522
|
+
/**
|
|
3523
|
+
* The unique slug identifier of the toolkit to connect
|
|
3524
|
+
*/
|
|
3525
|
+
toolkit: string;
|
|
3526
|
+
|
|
3527
|
+
/**
|
|
3528
|
+
* A human-readable alias for this connected account. Must be unique per entity and
|
|
3529
|
+
* toolkit within the project.
|
|
3530
|
+
*/
|
|
3531
|
+
alias?: string;
|
|
3532
|
+
|
|
3533
|
+
/**
|
|
3534
|
+
* URL where users will be redirected after completing auth
|
|
3535
|
+
*/
|
|
3536
|
+
callback_url?: string;
|
|
3537
|
+
}
|
|
3538
|
+
|
|
3539
|
+
export interface SessionPatchParams {
|
|
3540
|
+
/**
|
|
3541
|
+
* The auth configs to use for the session. This will override the default behavior
|
|
3542
|
+
* and use the given auth config when specific toolkits are being executed
|
|
3543
|
+
*/
|
|
3544
|
+
auth_configs?: { [key: string]: string };
|
|
3545
|
+
|
|
3546
|
+
/**
|
|
3547
|
+
* The connected accounts to use for the session. This will override the default
|
|
3548
|
+
* behaviour and use the given connected account when specific toolkits are being
|
|
3549
|
+
* executed. Each connected account must exist (not deleted or disabled) and belong
|
|
3550
|
+
* to the same `user_id` as the session — otherwise session creation fails with a
|
|
3551
|
+
* clear error explaining which account didn't match.
|
|
3552
|
+
*/
|
|
3553
|
+
connected_accounts?: { [key: string]: string };
|
|
3554
|
+
|
|
3555
|
+
execute?: SessionPatchParams.Execute;
|
|
3556
|
+
|
|
3557
|
+
experimental?: SessionPatchParams.Experimental | null;
|
|
3558
|
+
|
|
3559
|
+
manage_connections?: SessionPatchParams.ManageConnections | null;
|
|
3560
|
+
|
|
3561
|
+
multi_account?: SessionPatchParams.MultiAccount | null;
|
|
3562
|
+
|
|
3563
|
+
/**
|
|
3564
|
+
* Preload configuration. Use an explicit list for frequently used tool slugs, or
|
|
3565
|
+
* "all" to dynamically expose every app tool allowed by positive
|
|
3566
|
+
* toolkits/tools/tags filters.
|
|
3567
|
+
*/
|
|
3568
|
+
preload?: SessionPatchParams.Preload;
|
|
3569
|
+
|
|
3570
|
+
search?: SessionPatchParams.Search;
|
|
1756
3571
|
|
|
1757
|
-
|
|
1758
|
-
|
|
1759
|
-
|
|
1760
|
-
|
|
1761
|
-
|
|
3572
|
+
/**
|
|
3573
|
+
* Global MCP tool annotation hints for filtering. Array format is treated as
|
|
3574
|
+
* enabled list. Object format supports both enabled (tool must have at least one)
|
|
3575
|
+
* and disabled (tool must NOT have any) lists. Toolkit-level tags override this.
|
|
3576
|
+
* Toolkit enabled/disabled lists take precedence over tag filtering.
|
|
3577
|
+
*/
|
|
3578
|
+
tags?:
|
|
3579
|
+
| Array<'readOnlyHint' | 'destructiveHint' | 'idempotentHint' | 'openWorldHint'>
|
|
3580
|
+
| SessionPatchParams.UnionMember1;
|
|
1762
3581
|
|
|
1763
|
-
|
|
1764
|
-
|
|
1765
|
-
|
|
1766
|
-
|
|
1767
|
-
|
|
1768
|
-
}
|
|
3582
|
+
/**
|
|
3583
|
+
* Toolkit configuration - specify either enable toolkits (allowlist) or disable
|
|
3584
|
+
* toolkits (denylist). Mutually exclusive.
|
|
3585
|
+
*/
|
|
3586
|
+
toolkits?: SessionPatchParams.Enable | SessionPatchParams.Disable;
|
|
1769
3587
|
|
|
1770
|
-
|
|
1771
|
-
|
|
1772
|
-
|
|
1773
|
-
|
|
1774
|
-
|
|
3588
|
+
/**
|
|
3589
|
+
* Tool-level configuration per toolkit. Allows you to enable, disable, or filter
|
|
3590
|
+
* by tags for specific tools within each toolkit. Every slug passed in `enable` /
|
|
3591
|
+
* `disable` must be a valid Composio tool slug for that toolkit — invalid or
|
|
3592
|
+
* typo'd slugs fail session creation with a clear error listing which ones didn't
|
|
3593
|
+
* match.
|
|
3594
|
+
*/
|
|
3595
|
+
tools?: { [key: string]: SessionPatchParams.Enable | SessionPatchParams.Disable | SessionPatchParams.Tags };
|
|
1775
3596
|
|
|
1776
|
-
|
|
1777
|
-
|
|
1778
|
-
*/
|
|
1779
|
-
input_schema: { [key: string]: unknown };
|
|
3597
|
+
workbench?: SessionPatchParams.Workbench | null;
|
|
3598
|
+
}
|
|
1780
3599
|
|
|
1781
|
-
|
|
1782
|
-
|
|
1783
|
-
|
|
1784
|
-
|
|
3600
|
+
export namespace SessionPatchParams {
|
|
3601
|
+
export interface Execute {
|
|
3602
|
+
enable_multi_execute?: boolean;
|
|
3603
|
+
}
|
|
1785
3604
|
|
|
1786
|
-
|
|
1787
|
-
|
|
1788
|
-
|
|
1789
|
-
|
|
1790
|
-
|
|
3605
|
+
export interface Experimental {
|
|
3606
|
+
/**
|
|
3607
|
+
* Per-tool elicitation permission config. Replaces the stored block when provided.
|
|
3608
|
+
*/
|
|
3609
|
+
permissions?: Experimental.Permissions;
|
|
3610
|
+
}
|
|
1791
3611
|
|
|
3612
|
+
export namespace Experimental {
|
|
3613
|
+
/**
|
|
3614
|
+
* Per-tool elicitation permission config. Replaces the stored block when provided.
|
|
3615
|
+
*/
|
|
3616
|
+
export interface Permissions {
|
|
1792
3617
|
/**
|
|
1793
|
-
*
|
|
1794
|
-
*
|
|
3618
|
+
* Default elicitation behavior when no override matches. `allow_all` runs every
|
|
3619
|
+
* tool without prompting; `ask_every_call` prompts on each invocation;
|
|
3620
|
+
* `ask_once_per_session` prompts once and remembers the answer for the rest of the
|
|
3621
|
+
* session.
|
|
1795
3622
|
*/
|
|
1796
|
-
|
|
3623
|
+
default: 'allow_all' | 'ask_every_call' | 'ask_once_per_session';
|
|
1797
3624
|
|
|
1798
3625
|
/**
|
|
1799
|
-
*
|
|
3626
|
+
* Per-tool overrides keyed by `${toolSlug}:${connectedAccountId ?? "__none__"}`,
|
|
3627
|
+
* plus account-wide overrides keyed by `*:${connectedAccountId ?? "__none__"}`.
|
|
3628
|
+
* Exact tool overrides take precedence over account-wide overrides. `always_allow`
|
|
3629
|
+
* skips the prompt and runs the tool; `always_deny` blocks the tool; `ask_once`
|
|
3630
|
+
* prompts once per session (allow/deny) and remembers; `ask_always` prompts on
|
|
3631
|
+
* every call with allow-once/allow-session/deny, ignoring any cached session
|
|
3632
|
+
* allow. Overrides take precedence over `default`.
|
|
1800
3633
|
*/
|
|
1801
|
-
|
|
3634
|
+
overrides?: { [key: string]: 'always_allow' | 'always_deny' | 'ask_once' | 'ask_always' };
|
|
1802
3635
|
}
|
|
1803
3636
|
}
|
|
1804
3637
|
|
|
1805
|
-
/**
|
|
1806
|
-
* Configuration for connection management settings
|
|
1807
|
-
*/
|
|
1808
3638
|
export interface ManageConnections {
|
|
1809
3639
|
/**
|
|
1810
3640
|
* The URL to redirect to after a user completes authentication for a connected
|
|
@@ -1834,10 +3664,6 @@ export namespace SessionCreateParams {
|
|
|
1834
3664
|
enable_wait_for_connections?: boolean | null;
|
|
1835
3665
|
}
|
|
1836
3666
|
|
|
1837
|
-
/**
|
|
1838
|
-
* Configure multi-account behavior. When enabled, users can connect multiple
|
|
1839
|
-
* accounts per toolkit.
|
|
1840
|
-
*/
|
|
1841
3667
|
export interface MultiAccount {
|
|
1842
3668
|
/**
|
|
1843
3669
|
* When true, enables multi-account mode for this session. When not set, falls back
|
|
@@ -1859,23 +3685,21 @@ export namespace SessionCreateParams {
|
|
|
1859
3685
|
}
|
|
1860
3686
|
|
|
1861
3687
|
/**
|
|
1862
|
-
* Preload configuration.
|
|
1863
|
-
*
|
|
1864
|
-
*
|
|
1865
|
-
* the session filters (`toolkits`, `tools`, `tags`), otherwise session creation
|
|
1866
|
-
* fails with a 400. Custom tools declared in `custom_tools` / `custom_toolkits`
|
|
1867
|
-
* can also be preloaded. Not supported when multi-account is enabled. Each
|
|
1868
|
-
* preloaded tool adds to the agent context window, so keep the list at or under
|
|
1869
|
-
* ~20 tools.
|
|
3688
|
+
* Preload configuration. Use an explicit list for frequently used tool slugs, or
|
|
3689
|
+
* "all" to dynamically expose every app tool allowed by positive
|
|
3690
|
+
* toolkits/tools/tags filters.
|
|
1870
3691
|
*/
|
|
1871
3692
|
export interface Preload {
|
|
1872
3693
|
/**
|
|
1873
|
-
*
|
|
1874
|
-
*
|
|
1875
|
-
*
|
|
1876
|
-
* session creation.
|
|
3694
|
+
* Explicit tool slugs to preload, or "all" to dynamically expose all current and
|
|
3695
|
+
* future app tools allowed by the positive session filters. "all" is capped at
|
|
3696
|
+
* 1000 tools and is not supported without a positive allowlist.
|
|
1877
3697
|
*/
|
|
1878
|
-
tools?: Array<string
|
|
3698
|
+
tools?: Array<string> | string;
|
|
3699
|
+
}
|
|
3700
|
+
|
|
3701
|
+
export interface Search {
|
|
3702
|
+
enable?: boolean;
|
|
1879
3703
|
}
|
|
1880
3704
|
|
|
1881
3705
|
export interface UnionMember1 {
|
|
@@ -1934,9 +3758,6 @@ export namespace SessionCreateParams {
|
|
|
1934
3758
|
}
|
|
1935
3759
|
}
|
|
1936
3760
|
|
|
1937
|
-
/**
|
|
1938
|
-
* Configuration for workbench behavior
|
|
1939
|
-
*/
|
|
1940
3761
|
export interface Workbench {
|
|
1941
3762
|
/**
|
|
1942
3763
|
* Character threshold for automatic offloading. When workbench response exceeds
|
|
@@ -1959,72 +3780,13 @@ export namespace SessionCreateParams {
|
|
|
1959
3780
|
|
|
1960
3781
|
/**
|
|
1961
3782
|
* Sandbox compute tier: standard (1 vCPU / 1 GB), medium (2 vCPU / 2 GB), large (4
|
|
1962
|
-
* vCPU / 4 GB), xlarge (8 vCPU / 8 GB).
|
|
3783
|
+
* vCPU / 4 GB), xlarge (8 vCPU / 8 GB). Patching this value recreates the sandbox
|
|
3784
|
+
* on next access — sandbox FS state is lost, but /mnt/files/ R2 mount persists.
|
|
1963
3785
|
*/
|
|
1964
3786
|
sandbox_size?: 'standard' | 'medium' | 'large' | 'xlarge';
|
|
1965
3787
|
}
|
|
1966
3788
|
}
|
|
1967
3789
|
|
|
1968
|
-
export interface SessionExecuteParams {
|
|
1969
|
-
/**
|
|
1970
|
-
* The unique slug identifier of the tool to execute. Supports both meta tools and
|
|
1971
|
-
* app tools exposed by the session.
|
|
1972
|
-
*/
|
|
1973
|
-
tool_slug: string;
|
|
1974
|
-
|
|
1975
|
-
/**
|
|
1976
|
-
* Account identifier to specify which connected account to use. Use the account ID
|
|
1977
|
-
* (e.g. "coup_hurricane_dal_analytical") or an alias. When omitted with a single
|
|
1978
|
-
* account, the default is used. When omitted with multiple accounts, an error
|
|
1979
|
-
* lists available accounts.
|
|
1980
|
-
*/
|
|
1981
|
-
account?: string;
|
|
1982
|
-
|
|
1983
|
-
/**
|
|
1984
|
-
* The arguments required by the tool
|
|
1985
|
-
*/
|
|
1986
|
-
arguments?: { [key: string]: unknown };
|
|
1987
|
-
}
|
|
1988
|
-
|
|
1989
|
-
export interface SessionExecuteMetaParams {
|
|
1990
|
-
/**
|
|
1991
|
-
* The unique slug identifier of the meta tool to execute
|
|
1992
|
-
*/
|
|
1993
|
-
slug:
|
|
1994
|
-
| 'COMPOSIO_SEARCH_TOOLS'
|
|
1995
|
-
| 'COMPOSIO_MULTI_EXECUTE_TOOL'
|
|
1996
|
-
| 'COMPOSIO_MANAGE_CONNECTIONS'
|
|
1997
|
-
| 'COMPOSIO_WAIT_FOR_CONNECTIONS'
|
|
1998
|
-
| 'COMPOSIO_REMOTE_WORKBENCH'
|
|
1999
|
-
| 'COMPOSIO_REMOTE_BASH_TOOL'
|
|
2000
|
-
| 'COMPOSIO_GET_TOOL_SCHEMAS'
|
|
2001
|
-
| 'COMPOSIO_UPSERT_RECIPE'
|
|
2002
|
-
| 'COMPOSIO_GET_RECIPE';
|
|
2003
|
-
|
|
2004
|
-
/**
|
|
2005
|
-
* The arguments required by the meta tool
|
|
2006
|
-
*/
|
|
2007
|
-
arguments?: { [key: string]: unknown };
|
|
2008
|
-
}
|
|
2009
|
-
|
|
2010
|
-
export interface SessionLinkParams {
|
|
2011
|
-
/**
|
|
2012
|
-
* The unique slug identifier of the toolkit to connect
|
|
2013
|
-
*/
|
|
2014
|
-
toolkit: string;
|
|
2015
|
-
|
|
2016
|
-
/**
|
|
2017
|
-
* A human-readable alias for this connected account. Must be unique per entity and
|
|
2018
|
-
* toolkit within the project.
|
|
2019
|
-
*/
|
|
2020
|
-
alias?: string;
|
|
2021
|
-
|
|
2022
|
-
/**
|
|
2023
|
-
* URL where users will be redirected after completing auth
|
|
2024
|
-
*/
|
|
2025
|
-
callback_url?: string;
|
|
2026
|
-
}
|
|
2027
|
-
|
|
2028
3790
|
export interface SessionProxyExecuteParams {
|
|
2029
3791
|
/**
|
|
2030
3792
|
* The API endpoint to call (absolute URL or path relative to base URL of the
|
|
@@ -2884,13 +4646,18 @@ export namespace SessionProxyExecuteParams {
|
|
|
2884
4646
|
|
|
2885
4647
|
export interface SessionSearchParams {
|
|
2886
4648
|
/**
|
|
2887
|
-
* List of search queries to execute in parallel.
|
|
4649
|
+
* List of search queries to execute in parallel.
|
|
2888
4650
|
*/
|
|
2889
4651
|
queries: Array<SessionSearchParams.Query>;
|
|
2890
4652
|
|
|
2891
4653
|
/**
|
|
2892
|
-
*
|
|
2893
|
-
*
|
|
4654
|
+
* Inline custom tools and toolkits for this request. v3.1 sessions do not persist
|
|
4655
|
+
* customs — pass them on every request that needs them.
|
|
4656
|
+
*/
|
|
4657
|
+
experimental?: SessionSearchParams.Experimental;
|
|
4658
|
+
|
|
4659
|
+
/**
|
|
4660
|
+
* Optional model hint for search/planning behavior (e.g., "gpt-4o").
|
|
2894
4661
|
*/
|
|
2895
4662
|
model?: string;
|
|
2896
4663
|
}
|
|
@@ -2909,6 +4676,113 @@ export namespace SessionSearchParams {
|
|
|
2909
4676
|
*/
|
|
2910
4677
|
known_fields?: string;
|
|
2911
4678
|
}
|
|
4679
|
+
|
|
4680
|
+
/**
|
|
4681
|
+
* Inline custom tools and toolkits for this request. v3.1 sessions do not persist
|
|
4682
|
+
* customs — pass them on every request that needs them.
|
|
4683
|
+
*/
|
|
4684
|
+
export interface Experimental {
|
|
4685
|
+
/**
|
|
4686
|
+
* Custom toolkits with grouped tools. Toolkit slugs must not conflict with
|
|
4687
|
+
* existing Composio toolkits. All tools are no-auth.
|
|
4688
|
+
*/
|
|
4689
|
+
custom_toolkits?: Array<Experimental.CustomToolkit>;
|
|
4690
|
+
|
|
4691
|
+
/**
|
|
4692
|
+
* Custom tools to include in search. Standalone tools need no auth. Tools with
|
|
4693
|
+
* extends_toolkit inherit the Composio toolkit's connection.
|
|
4694
|
+
*/
|
|
4695
|
+
custom_tools?: Array<Experimental.CustomTool>;
|
|
4696
|
+
}
|
|
4697
|
+
|
|
4698
|
+
export namespace Experimental {
|
|
4699
|
+
export interface CustomToolkit {
|
|
4700
|
+
/**
|
|
4701
|
+
* Used for BM25 search matching and shown in toolkit connection statuses.
|
|
4702
|
+
*/
|
|
4703
|
+
description: string;
|
|
4704
|
+
|
|
4705
|
+
/**
|
|
4706
|
+
* Display name shown to the LLM and in search results.
|
|
4707
|
+
*/
|
|
4708
|
+
name: string;
|
|
4709
|
+
|
|
4710
|
+
/**
|
|
4711
|
+
* Unique slug for the toolkit. Must not conflict with existing Composio toolkit
|
|
4712
|
+
* slugs. Alphanumeric, underscores, and hyphens only.
|
|
4713
|
+
*/
|
|
4714
|
+
slug: string;
|
|
4715
|
+
|
|
4716
|
+
/**
|
|
4717
|
+
* Tools in this custom toolkit
|
|
4718
|
+
*/
|
|
4719
|
+
tools: Array<CustomToolkit.Tool>;
|
|
4720
|
+
}
|
|
4721
|
+
|
|
4722
|
+
export namespace CustomToolkit {
|
|
4723
|
+
export interface Tool {
|
|
4724
|
+
/**
|
|
4725
|
+
* Used for BM25 search matching and shown to the LLM.
|
|
4726
|
+
*/
|
|
4727
|
+
description: string;
|
|
4728
|
+
|
|
4729
|
+
/**
|
|
4730
|
+
* Must have type: "object" and a properties field.
|
|
4731
|
+
*/
|
|
4732
|
+
input_schema: { [key: string]: unknown };
|
|
4733
|
+
|
|
4734
|
+
/**
|
|
4735
|
+
* Human-readable display name
|
|
4736
|
+
*/
|
|
4737
|
+
name: string;
|
|
4738
|
+
|
|
4739
|
+
/**
|
|
4740
|
+
* Tool slug. Combined with toolkit slug to form LOCAL*<TOOLKIT>*<TOOL> (max 60
|
|
4741
|
+
* chars total).
|
|
4742
|
+
*/
|
|
4743
|
+
slug: string;
|
|
4744
|
+
|
|
4745
|
+
/**
|
|
4746
|
+
* Optional output schema for the tool response.
|
|
4747
|
+
*/
|
|
4748
|
+
output_schema?: { [key: string]: unknown };
|
|
4749
|
+
}
|
|
4750
|
+
}
|
|
4751
|
+
|
|
4752
|
+
export interface CustomTool {
|
|
4753
|
+
/**
|
|
4754
|
+
* Used for BM25 search matching and shown to the LLM.
|
|
4755
|
+
*/
|
|
4756
|
+
description: string;
|
|
4757
|
+
|
|
4758
|
+
/**
|
|
4759
|
+
* Must have type: "object" and a properties field.
|
|
4760
|
+
*/
|
|
4761
|
+
input_schema: { [key: string]: unknown };
|
|
4762
|
+
|
|
4763
|
+
/**
|
|
4764
|
+
* Human-readable display name
|
|
4765
|
+
*/
|
|
4766
|
+
name: string;
|
|
4767
|
+
|
|
4768
|
+
/**
|
|
4769
|
+
* Tool slug. Forms LOCAL*<TOOL> (standalone) or LOCAL*<TOOLKIT>\_<TOOL>
|
|
4770
|
+
* (extending). Max 60 chars total.
|
|
4771
|
+
*/
|
|
4772
|
+
slug: string;
|
|
4773
|
+
|
|
4774
|
+
/**
|
|
4775
|
+
* If set, must be a valid Composio toolkit slug. The tool inherits that toolkit's
|
|
4776
|
+
* auth/connection status. If omitted, the tool is standalone (no-auth).
|
|
4777
|
+
*/
|
|
4778
|
+
extends_toolkit?: string;
|
|
4779
|
+
|
|
4780
|
+
/**
|
|
4781
|
+
* JSON Schema describing tool output (optional)
|
|
4782
|
+
*/
|
|
4783
|
+
output_schema?: { [key: string]: unknown };
|
|
4784
|
+
}
|
|
4785
|
+
}
|
|
2912
4786
|
}
|
|
2913
4787
|
|
|
2914
4788
|
export interface SessionToolkitsParams {
|
|
@@ -2943,7 +4817,20 @@ export interface SessionToolkitsParams {
|
|
|
2943
4817
|
toolkits?: Array<string> | null;
|
|
2944
4818
|
}
|
|
2945
4819
|
|
|
2946
|
-
export interface SessionToolsParams {
|
|
4820
|
+
export interface SessionToolsParams {
|
|
4821
|
+
/**
|
|
4822
|
+
* Cursor for pagination. The cursor is a base64 encoded string of the page and
|
|
4823
|
+
* limit. The page is the page number and the limit is the number of items per
|
|
4824
|
+
* page. The cursor is used to paginate through the items. The cursor is not
|
|
4825
|
+
* required for the first page.
|
|
4826
|
+
*/
|
|
4827
|
+
cursor?: string;
|
|
4828
|
+
|
|
4829
|
+
/**
|
|
4830
|
+
* Number of items per page, max allowed is 500
|
|
4831
|
+
*/
|
|
4832
|
+
limit?: number;
|
|
4833
|
+
}
|
|
2947
4834
|
|
|
2948
4835
|
Session.Files = Files;
|
|
2949
4836
|
|
|
@@ -2951,17 +4838,23 @@ export declare namespace Session {
|
|
|
2951
4838
|
export {
|
|
2952
4839
|
type SessionCreateResponse as SessionCreateResponse,
|
|
2953
4840
|
type SessionRetrieveResponse as SessionRetrieveResponse,
|
|
4841
|
+
type SessionAttachResponse as SessionAttachResponse,
|
|
4842
|
+
type SessionConfigHistoryResponse as SessionConfigHistoryResponse,
|
|
2954
4843
|
type SessionExecuteResponse as SessionExecuteResponse,
|
|
2955
4844
|
type SessionExecuteMetaResponse as SessionExecuteMetaResponse,
|
|
2956
4845
|
type SessionLinkResponse as SessionLinkResponse,
|
|
4846
|
+
type SessionPatchResponse as SessionPatchResponse,
|
|
2957
4847
|
type SessionProxyExecuteResponse as SessionProxyExecuteResponse,
|
|
2958
4848
|
type SessionSearchResponse as SessionSearchResponse,
|
|
2959
4849
|
type SessionToolkitsResponse as SessionToolkitsResponse,
|
|
2960
4850
|
type SessionToolsResponse as SessionToolsResponse,
|
|
2961
4851
|
type SessionCreateParams as SessionCreateParams,
|
|
4852
|
+
type SessionAttachParams as SessionAttachParams,
|
|
4853
|
+
type SessionConfigHistoryParams as SessionConfigHistoryParams,
|
|
2962
4854
|
type SessionExecuteParams as SessionExecuteParams,
|
|
2963
4855
|
type SessionExecuteMetaParams as SessionExecuteMetaParams,
|
|
2964
4856
|
type SessionLinkParams as SessionLinkParams,
|
|
4857
|
+
type SessionPatchParams as SessionPatchParams,
|
|
2965
4858
|
type SessionProxyExecuteParams as SessionProxyExecuteParams,
|
|
2966
4859
|
type SessionSearchParams as SessionSearchParams,
|
|
2967
4860
|
type SessionToolkitsParams as SessionToolkitsParams,
|