@agentuity/server 1.0.1 → 1.0.3
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/AGENTS.md +38 -34
- package/dist/api/api.d.ts +32 -2
- package/dist/api/api.d.ts.map +1 -1
- package/dist/api/api.js +14 -2
- package/dist/api/api.js.map +1 -1
- package/dist/api/apikey/create.d.ts +12 -2
- package/dist/api/apikey/create.d.ts.map +1 -1
- package/dist/api/apikey/create.js +2 -2
- package/dist/api/apikey/create.js.map +1 -1
- package/dist/api/apikey/delete.d.ts +9 -0
- package/dist/api/apikey/delete.d.ts.map +1 -1
- package/dist/api/apikey/delete.js +1 -1
- package/dist/api/apikey/delete.js.map +1 -1
- package/dist/api/apikey/get.d.ts +21 -2
- package/dist/api/apikey/get.d.ts.map +1 -1
- package/dist/api/apikey/get.js +2 -2
- package/dist/api/apikey/get.js.map +1 -1
- package/dist/api/apikey/index.d.ts +1 -0
- package/dist/api/apikey/index.d.ts.map +1 -1
- package/dist/api/apikey/index.js +1 -0
- package/dist/api/apikey/index.js.map +1 -1
- package/dist/api/apikey/list.d.ts +1 -2
- package/dist/api/apikey/list.d.ts.map +1 -1
- package/dist/api/apikey/list.js +1 -1
- package/dist/api/apikey/list.js.map +1 -1
- package/dist/api/db/index.d.ts +4 -4
- package/dist/api/db/index.d.ts.map +1 -1
- package/dist/api/db/index.js +4 -4
- package/dist/api/db/index.js.map +1 -1
- package/dist/api/db/logs.d.ts +34 -3
- package/dist/api/db/logs.d.ts.map +1 -1
- package/dist/api/db/logs.js +4 -4
- package/dist/api/db/logs.js.map +1 -1
- package/dist/api/db/query.d.ts +14 -1
- package/dist/api/db/query.d.ts.map +1 -1
- package/dist/api/db/query.js +2 -2
- package/dist/api/db/query.js.map +1 -1
- package/dist/api/db/tables.d.ts +21 -2
- package/dist/api/db/tables.d.ts.map +1 -1
- package/dist/api/db/tables.js +2 -2
- package/dist/api/db/tables.js.map +1 -1
- package/dist/api/eval/get.d.ts +21 -3
- package/dist/api/eval/get.d.ts.map +1 -1
- package/dist/api/eval/get.js +2 -2
- package/dist/api/eval/get.js.map +1 -1
- package/dist/api/eval/index.d.ts +4 -4
- package/dist/api/eval/index.d.ts.map +1 -1
- package/dist/api/eval/index.js +4 -4
- package/dist/api/eval/index.js.map +1 -1
- package/dist/api/eval/list.d.ts +31 -3
- package/dist/api/eval/list.d.ts.map +1 -1
- package/dist/api/eval/list.js +3 -3
- package/dist/api/eval/list.js.map +1 -1
- package/dist/api/eval/run-get.d.ts +27 -3
- package/dist/api/eval/run-get.d.ts.map +1 -1
- package/dist/api/eval/run-get.js +2 -2
- package/dist/api/eval/run-get.js.map +1 -1
- package/dist/api/eval/run-list.d.ts +43 -3
- package/dist/api/eval/run-list.d.ts.map +1 -1
- package/dist/api/eval/run-list.js +3 -3
- package/dist/api/eval/run-list.js.map +1 -1
- package/dist/api/index.d.ts +1 -0
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +1 -0
- package/dist/api/index.js.map +1 -1
- package/dist/api/machine/machine.d.ts +134 -3
- package/dist/api/machine/machine.d.ts.map +1 -1
- package/dist/api/machine/machine.js +11 -11
- package/dist/api/machine/machine.js.map +1 -1
- package/dist/api/org/env-delete.d.ts +10 -3
- package/dist/api/org/env-delete.d.ts.map +1 -1
- package/dist/api/org/env-delete.js +2 -2
- package/dist/api/org/env-delete.js.map +1 -1
- package/dist/api/org/env-get.d.ts +14 -1
- package/dist/api/org/env-get.d.ts.map +1 -1
- package/dist/api/org/env-get.js +2 -2
- package/dist/api/org/env-get.js.map +1 -1
- package/dist/api/org/env-update.d.ts +10 -3
- package/dist/api/org/env-update.d.ts.map +1 -1
- package/dist/api/org/env-update.js +2 -2
- package/dist/api/org/env-update.js.map +1 -1
- package/dist/api/org/list.d.ts +2 -3
- package/dist/api/org/list.d.ts.map +1 -1
- package/dist/api/org/list.js +2 -2
- package/dist/api/org/list.js.map +1 -1
- package/dist/api/org/resources.d.ts +4 -5
- package/dist/api/org/resources.d.ts.map +1 -1
- package/dist/api/org/resources.js +4 -4
- package/dist/api/org/resources.js.map +1 -1
- package/dist/api/project/agent.d.ts +55 -2
- package/dist/api/project/agent.d.ts.map +1 -1
- package/dist/api/project/agent.js +3 -3
- package/dist/api/project/agent.js.map +1 -1
- package/dist/api/project/create.d.ts +5 -6
- package/dist/api/project/create.d.ts.map +1 -1
- package/dist/api/project/create.js +3 -3
- package/dist/api/project/create.js.map +1 -1
- package/dist/api/project/delete.d.ts +13 -1
- package/dist/api/project/delete.d.ts.map +1 -1
- package/dist/api/project/delete.js +2 -2
- package/dist/api/project/delete.js.map +1 -1
- package/dist/api/project/deploy.d.ts +233 -9
- package/dist/api/project/deploy.d.ts.map +1 -1
- package/dist/api/project/deploy.js +23 -23
- package/dist/api/project/deploy.js.map +1 -1
- package/dist/api/project/deployment.d.ts +163 -3
- package/dist/api/project/deployment.d.ts.map +1 -1
- package/dist/api/project/deployment.js +8 -8
- package/dist/api/project/deployment.js.map +1 -1
- package/dist/api/project/env-delete.d.ts +10 -3
- package/dist/api/project/env-delete.d.ts.map +1 -1
- package/dist/api/project/env-delete.js +6 -2
- package/dist/api/project/env-delete.js.map +1 -1
- package/dist/api/project/env-update.d.ts +17 -3
- package/dist/api/project/env-update.d.ts.map +1 -1
- package/dist/api/project/env-update.js +2 -2
- package/dist/api/project/env-update.js.map +1 -1
- package/dist/api/project/exists.d.ts +4 -5
- package/dist/api/project/exists.d.ts.map +1 -1
- package/dist/api/project/exists.js +3 -3
- package/dist/api/project/exists.js.map +1 -1
- package/dist/api/project/get.d.ts +22 -4
- package/dist/api/project/get.d.ts.map +1 -1
- package/dist/api/project/get.js +3 -3
- package/dist/api/project/get.js.map +1 -1
- package/dist/api/project/list.d.ts +13 -5
- package/dist/api/project/list.d.ts.map +1 -1
- package/dist/api/project/list.js +4 -3
- package/dist/api/project/list.js.map +1 -1
- package/dist/api/project/malware.d.ts +41 -7
- package/dist/api/project/malware.d.ts.map +1 -1
- package/dist/api/project/malware.js +9 -9
- package/dist/api/project/malware.js.map +1 -1
- package/dist/api/project/update-region.d.ts +15 -1
- package/dist/api/project/update-region.d.ts.map +1 -1
- package/dist/api/project/update-region.js +2 -2
- package/dist/api/project/update-region.js.map +1 -1
- package/dist/api/queue/analytics.d.ts +144 -2
- package/dist/api/queue/analytics.d.ts.map +1 -1
- package/dist/api/queue/analytics.js +5 -5
- package/dist/api/queue/analytics.js.map +1 -1
- package/dist/api/queue/destinations.d.ts +96 -2
- package/dist/api/queue/destinations.d.ts.map +1 -1
- package/dist/api/queue/destinations.js +7 -7
- package/dist/api/queue/destinations.js.map +1 -1
- package/dist/api/queue/dlq.d.ts +70 -2
- package/dist/api/queue/dlq.d.ts.map +1 -1
- package/dist/api/queue/dlq.js +5 -5
- package/dist/api/queue/dlq.js.map +1 -1
- package/dist/api/queue/index.d.ts +9 -9
- package/dist/api/queue/index.d.ts.map +1 -1
- package/dist/api/queue/index.js +11 -11
- package/dist/api/queue/index.js.map +1 -1
- package/dist/api/queue/messages.d.ts +173 -2
- package/dist/api/queue/messages.d.ts.map +1 -1
- package/dist/api/queue/messages.js +10 -10
- package/dist/api/queue/messages.js.map +1 -1
- package/dist/api/queue/queues.d.ts +75 -2
- package/dist/api/queue/queues.d.ts.map +1 -1
- package/dist/api/queue/queues.js +6 -6
- package/dist/api/queue/queues.js.map +1 -1
- package/dist/api/queue/sources.d.ts +72 -2
- package/dist/api/queue/sources.d.ts.map +1 -1
- package/dist/api/queue/sources.js +6 -6
- package/dist/api/queue/sources.js.map +1 -1
- package/dist/api/region/create.d.ts +18 -4
- package/dist/api/region/create.d.ts.map +1 -1
- package/dist/api/region/create.js +5 -5
- package/dist/api/region/create.js.map +1 -1
- package/dist/api/region/delete.d.ts +17 -4
- package/dist/api/region/delete.d.ts.map +1 -1
- package/dist/api/region/delete.js +5 -5
- package/dist/api/region/delete.js.map +1 -1
- package/dist/api/region/list.d.ts +2 -3
- package/dist/api/region/list.d.ts.map +1 -1
- package/dist/api/region/list.js +2 -2
- package/dist/api/region/list.js.map +1 -1
- package/dist/api/region/resources.d.ts +2 -3
- package/dist/api/region/resources.d.ts.map +1 -1
- package/dist/api/region/resources.js +2 -2
- package/dist/api/region/resources.js.map +1 -1
- package/dist/api/sandbox/cli-list.d.ts +98 -0
- package/dist/api/sandbox/cli-list.d.ts.map +1 -0
- package/dist/api/sandbox/cli-list.js +63 -0
- package/dist/api/sandbox/cli-list.js.map +1 -0
- package/dist/api/sandbox/create.d.ts +82 -1
- package/dist/api/sandbox/create.d.ts.map +1 -1
- package/dist/api/sandbox/create.js +14 -10
- package/dist/api/sandbox/create.js.map +1 -1
- package/dist/api/sandbox/destroy.d.ts +9 -1
- package/dist/api/sandbox/destroy.d.ts.map +1 -1
- package/dist/api/sandbox/destroy.js +2 -2
- package/dist/api/sandbox/destroy.js.map +1 -1
- package/dist/api/sandbox/execute.d.ts +49 -1
- package/dist/api/sandbox/execute.d.ts.map +1 -1
- package/dist/api/sandbox/execute.js +4 -4
- package/dist/api/sandbox/execute.js.map +1 -1
- package/dist/api/sandbox/execution.d.ts +104 -1
- package/dist/api/sandbox/execution.d.ts.map +1 -1
- package/dist/api/sandbox/execution.js +5 -5
- package/dist/api/sandbox/execution.js.map +1 -1
- package/dist/api/sandbox/files.d.ts +100 -0
- package/dist/api/sandbox/files.d.ts.map +1 -1
- package/dist/api/sandbox/files.js +16 -16
- package/dist/api/sandbox/files.js.map +1 -1
- package/dist/api/sandbox/get.d.ts +233 -1
- package/dist/api/sandbox/get.d.ts.map +1 -1
- package/dist/api/sandbox/get.js +12 -12
- package/dist/api/sandbox/get.js.map +1 -1
- package/dist/api/sandbox/index.d.ts +25 -21
- package/dist/api/sandbox/index.d.ts.map +1 -1
- package/dist/api/sandbox/index.js +13 -11
- package/dist/api/sandbox/index.js.map +1 -1
- package/dist/api/sandbox/list.d.ts +230 -1
- package/dist/api/sandbox/list.d.ts.map +1 -1
- package/dist/api/sandbox/list.js +9 -9
- package/dist/api/sandbox/list.js.map +1 -1
- package/dist/api/sandbox/resolve.d.ts +82 -0
- package/dist/api/sandbox/resolve.d.ts.map +1 -0
- package/dist/api/sandbox/resolve.js +71 -0
- package/dist/api/sandbox/resolve.js.map +1 -0
- package/dist/api/sandbox/run.d.ts.map +1 -1
- package/dist/api/sandbox/run.js +6 -0
- package/dist/api/sandbox/run.js.map +1 -1
- package/dist/api/sandbox/runtime.d.ts +69 -1
- package/dist/api/sandbox/runtime.d.ts.map +1 -1
- package/dist/api/sandbox/runtime.js +5 -5
- package/dist/api/sandbox/runtime.js.map +1 -1
- package/dist/api/sandbox/snapshot.d.ts +202 -9
- package/dist/api/sandbox/snapshot.d.ts.map +1 -1
- package/dist/api/sandbox/snapshot.js +17 -17
- package/dist/api/sandbox/snapshot.js.map +1 -1
- package/dist/api/session/get.d.ts +123 -8
- package/dist/api/session/get.d.ts.map +1 -1
- package/dist/api/session/get.js +8 -8
- package/dist/api/session/get.js.map +1 -1
- package/dist/api/session/index.d.ts +3 -6
- package/dist/api/session/index.d.ts.map +1 -1
- package/dist/api/session/index.js +3 -3
- package/dist/api/session/index.js.map +1 -1
- package/dist/api/session/list.d.ts +2 -2
- package/dist/api/session/list.d.ts.map +1 -1
- package/dist/api/session/list.js +2 -2
- package/dist/api/session/list.js.map +1 -1
- package/dist/api/session/logs.d.ts +19 -2
- package/dist/api/session/logs.d.ts.map +1 -1
- package/dist/api/session/logs.js +4 -4
- package/dist/api/session/logs.js.map +1 -1
- package/dist/api/stream/get.d.ts +58 -0
- package/dist/api/stream/get.d.ts.map +1 -0
- package/dist/api/stream/get.js +40 -0
- package/dist/api/stream/get.js.map +1 -0
- package/dist/api/stream/index.d.ts +4 -0
- package/dist/api/stream/index.d.ts.map +1 -0
- package/dist/api/stream/index.js +4 -0
- package/dist/api/stream/index.js.map +1 -0
- package/dist/api/stream/list.d.ts +107 -0
- package/dist/api/stream/list.d.ts.map +1 -0
- package/dist/api/stream/list.js +71 -0
- package/dist/api/stream/list.js.map +1 -0
- package/dist/api/stream/util.d.ts +23 -0
- package/dist/api/stream/util.d.ts.map +1 -0
- package/dist/api/stream/util.js +3 -0
- package/dist/api/stream/util.js.map +1 -0
- package/dist/api/thread/delete.d.ts +10 -3
- package/dist/api/thread/delete.d.ts.map +1 -1
- package/dist/api/thread/delete.js +2 -2
- package/dist/api/thread/delete.js.map +1 -1
- package/dist/api/thread/get.d.ts +23 -5
- package/dist/api/thread/get.d.ts.map +1 -1
- package/dist/api/thread/get.js +2 -2
- package/dist/api/thread/get.js.map +1 -1
- package/dist/api/thread/index.d.ts +4 -4
- package/dist/api/thread/index.d.ts.map +1 -1
- package/dist/api/thread/index.js +4 -4
- package/dist/api/thread/index.js.map +1 -1
- package/dist/api/thread/list.d.ts +4 -5
- package/dist/api/thread/list.d.ts.map +1 -1
- package/dist/api/thread/list.js +3 -4
- package/dist/api/thread/list.js.map +1 -1
- package/dist/api/user/whoami.d.ts +6 -3
- package/dist/api/user/whoami.d.ts.map +1 -1
- package/dist/api/user/whoami.js +3 -3
- package/dist/api/user/whoami.js.map +1 -1
- package/package.json +4 -4
- package/src/api/api.ts +23 -2
- package/src/api/apikey/create.ts +2 -2
- package/src/api/apikey/delete.ts +1 -1
- package/src/api/apikey/get.ts +2 -2
- package/src/api/apikey/index.ts +1 -0
- package/src/api/apikey/list.ts +1 -1
- package/src/api/db/index.ts +21 -4
- package/src/api/db/logs.ts +7 -7
- package/src/api/db/query.ts +2 -2
- package/src/api/db/tables.ts +3 -3
- package/src/api/eval/get.ts +3 -3
- package/src/api/eval/index.ts +28 -4
- package/src/api/eval/list.ts +4 -4
- package/src/api/eval/run-get.ts +3 -3
- package/src/api/eval/run-list.ts +4 -4
- package/src/api/index.ts +1 -0
- package/src/api/machine/machine.ts +15 -11
- package/src/api/org/env-delete.ts +4 -4
- package/src/api/org/env-get.ts +3 -3
- package/src/api/org/env-update.ts +4 -4
- package/src/api/org/list.ts +2 -2
- package/src/api/org/resources.ts +4 -4
- package/src/api/project/agent.ts +3 -3
- package/src/api/project/create.ts +5 -5
- package/src/api/project/delete.ts +3 -3
- package/src/api/project/deploy.ts +34 -32
- package/src/api/project/deployment.ts +8 -8
- package/src/api/project/env-delete.ts +12 -8
- package/src/api/project/env-update.ts +4 -4
- package/src/api/project/exists.ts +4 -4
- package/src/api/project/get.ts +5 -5
- package/src/api/project/list.ts +14 -14
- package/src/api/project/malware.ts +12 -12
- package/src/api/project/update-region.ts +3 -3
- package/src/api/queue/analytics.ts +15 -11
- package/src/api/queue/destinations.ts +14 -12
- package/src/api/queue/dlq.ts +10 -10
- package/src/api/queue/index.ts +136 -108
- package/src/api/queue/messages.ts +22 -22
- package/src/api/queue/queues.ts +14 -14
- package/src/api/queue/sources.ts +11 -11
- package/src/api/region/create.ts +5 -5
- package/src/api/region/delete.ts +5 -5
- package/src/api/region/list.ts +2 -2
- package/src/api/region/resources.ts +2 -2
- package/src/api/sandbox/cli-list.ts +99 -0
- package/src/api/sandbox/create.ts +18 -14
- package/src/api/sandbox/destroy.ts +4 -4
- package/src/api/sandbox/execute.ts +6 -6
- package/src/api/sandbox/execution.ts +7 -7
- package/src/api/sandbox/files.ts +16 -16
- package/src/api/sandbox/get.ts +15 -15
- package/src/api/sandbox/index.ts +160 -77
- package/src/api/sandbox/list.ts +12 -12
- package/src/api/sandbox/resolve.ts +98 -0
- package/src/api/sandbox/run.ts +6 -1
- package/src/api/sandbox/runtime.ts +7 -7
- package/src/api/sandbox/snapshot.ts +20 -18
- package/src/api/session/get.ts +13 -13
- package/src/api/session/index.ts +3 -6
- package/src/api/session/list.ts +2 -2
- package/src/api/session/logs.ts +4 -4
- package/src/api/stream/get.ts +51 -0
- package/src/api/stream/index.ts +3 -0
- package/src/api/stream/list.ts +111 -0
- package/src/api/stream/util.ts +3 -0
- package/src/api/thread/delete.ts +4 -4
- package/src/api/thread/get.ts +5 -7
- package/src/api/thread/index.ts +4 -4
- package/src/api/thread/list.ts +4 -6
- package/src/api/user/whoami.ts +3 -3
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { type APIClient, APIResponseSchema } from '../api';
|
|
3
|
+
import { SandboxResponseError } from './util';
|
|
4
|
+
|
|
5
|
+
export const SandboxInfoSchema = z.object({
|
|
6
|
+
id: z.string().describe('the sandbox id'),
|
|
7
|
+
name: z.string().nullable().describe('the sandbox name'),
|
|
8
|
+
description: z.string().nullable().describe('the sandbox description'),
|
|
9
|
+
status: z.string().describe('sandbox status'),
|
|
10
|
+
region: z.string().nullable().describe('cloud region'),
|
|
11
|
+
createdAt: z.string().nullable().describe('ISO 8601 creation timestamp'),
|
|
12
|
+
orgId: z.string().describe('the organization id'),
|
|
13
|
+
orgName: z.string().nullable().describe('the organization name'),
|
|
14
|
+
projectId: z.string().nullable().describe('the project id'),
|
|
15
|
+
});
|
|
16
|
+
|
|
17
|
+
export const SandboxListDataSchema = z.object({
|
|
18
|
+
sandboxes: z.array(SandboxInfoSchema).describe('list of sandboxes'),
|
|
19
|
+
total: z.number().describe('total count of matching sandboxes'),
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
export const SandboxListResponseSchema = APIResponseSchema(SandboxListDataSchema);
|
|
23
|
+
|
|
24
|
+
export type CLISandboxListResponse = z.infer<typeof SandboxListResponseSchema>;
|
|
25
|
+
export type CLISandboxListData = z.infer<typeof SandboxListDataSchema>;
|
|
26
|
+
export type CLISandboxInfo = z.infer<typeof SandboxInfoSchema>;
|
|
27
|
+
|
|
28
|
+
export interface CLISandboxListOptions {
|
|
29
|
+
/**
|
|
30
|
+
* Filter by specific project ID
|
|
31
|
+
*/
|
|
32
|
+
projectId?: string;
|
|
33
|
+
/**
|
|
34
|
+
* Filter by specific organization ID
|
|
35
|
+
*/
|
|
36
|
+
orgId?: string;
|
|
37
|
+
/**
|
|
38
|
+
* Filter by sandbox status
|
|
39
|
+
*/
|
|
40
|
+
status?: 'creating' | 'idle' | 'running' | 'terminated' | 'failed';
|
|
41
|
+
/**
|
|
42
|
+
* Maximum number of sandboxes to return (default: 50, max: 100)
|
|
43
|
+
*/
|
|
44
|
+
limit?: number;
|
|
45
|
+
/**
|
|
46
|
+
* Number of sandboxes to skip for pagination
|
|
47
|
+
*/
|
|
48
|
+
offset?: number;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* List sandboxes with optional filtering using the CLI API endpoint.
|
|
53
|
+
*
|
|
54
|
+
* This endpoint searches across all organizations the user is a member of,
|
|
55
|
+
* unlike the Catalyst API which requires an orgId.
|
|
56
|
+
*
|
|
57
|
+
* @param client - The API client
|
|
58
|
+
* @param options - Filtering and pagination options
|
|
59
|
+
* @returns A promise that resolves to the list of sandboxes
|
|
60
|
+
*
|
|
61
|
+
* @example
|
|
62
|
+
* // List all sandboxes across all orgs
|
|
63
|
+
* const result = await cliSandboxList(client);
|
|
64
|
+
* console.log(`Found ${result.total} sandboxes`);
|
|
65
|
+
*
|
|
66
|
+
* @example
|
|
67
|
+
* // List running sandboxes
|
|
68
|
+
* const result = await cliSandboxList(client, { status: 'running' });
|
|
69
|
+
*
|
|
70
|
+
* @example
|
|
71
|
+
* // List sandboxes for a specific project
|
|
72
|
+
* const result = await cliSandboxList(client, { projectId: 'proj_123' });
|
|
73
|
+
*/
|
|
74
|
+
export async function cliSandboxList(
|
|
75
|
+
client: APIClient,
|
|
76
|
+
options: CLISandboxListOptions = {}
|
|
77
|
+
): Promise<CLISandboxListData> {
|
|
78
|
+
const { projectId, orgId, status, limit, offset } = options;
|
|
79
|
+
const params = new URLSearchParams();
|
|
80
|
+
|
|
81
|
+
if (projectId) params.set('projectId', projectId);
|
|
82
|
+
if (orgId) params.set('orgId', orgId);
|
|
83
|
+
if (status) params.set('status', status);
|
|
84
|
+
if (limit !== undefined) params.set('limit', limit.toString());
|
|
85
|
+
if (offset !== undefined) params.set('offset', offset.toString());
|
|
86
|
+
|
|
87
|
+
const queryString = params.toString();
|
|
88
|
+
const resp = await client.request<CLISandboxListResponse>(
|
|
89
|
+
'GET',
|
|
90
|
+
`/cli/sandbox${queryString ? `?${queryString}` : ''}`,
|
|
91
|
+
SandboxListResponseSchema
|
|
92
|
+
);
|
|
93
|
+
|
|
94
|
+
if (resp.success) {
|
|
95
|
+
return resp.data;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
throw new SandboxResponseError({ message: resp.message });
|
|
99
|
+
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
import { APIClient, APIResponseSchema } from '../api';
|
|
3
|
-
import { throwSandboxError, API_VERSION } from './util';
|
|
4
1
|
import type { SandboxCreateOptions, SandboxStatus } from '@agentuity/core';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { type APIClient, APIResponseSchema } from '../api';
|
|
4
|
+
import { API_VERSION, throwSandboxError } from './util';
|
|
5
5
|
|
|
6
|
-
const SandboxCreateRequestSchema = z
|
|
6
|
+
export const SandboxCreateRequestSchema = z
|
|
7
7
|
.object({
|
|
8
8
|
projectId: z.string().optional().describe('Project ID to associate the sandbox with'),
|
|
9
9
|
runtime: z.string().optional().describe('Runtime name (e.g., "bun:1", "python:3.14")'),
|
|
@@ -57,9 +57,7 @@ const SandboxCreateRequestSchema = z
|
|
|
57
57
|
files: z
|
|
58
58
|
.array(
|
|
59
59
|
z.object({
|
|
60
|
-
path: z
|
|
61
|
-
.string()
|
|
62
|
-
.describe('Path to the file relative to the sandbox workspace'),
|
|
60
|
+
path: z.string().describe('Path to the file relative to the sandbox workspace'),
|
|
63
61
|
content: z.string().describe('Base64-encoded file content'),
|
|
64
62
|
})
|
|
65
63
|
)
|
|
@@ -73,9 +71,14 @@ const SandboxCreateRequestSchema = z
|
|
|
73
71
|
.optional()
|
|
74
72
|
.describe('Initial command to run in the sandbox'),
|
|
75
73
|
files: z
|
|
76
|
-
.
|
|
74
|
+
.array(
|
|
75
|
+
z.object({
|
|
76
|
+
path: z.string().describe('Path to the file relative to the sandbox workspace'),
|
|
77
|
+
content: z.string().describe('Base64-encoded file content'),
|
|
78
|
+
})
|
|
79
|
+
)
|
|
77
80
|
.optional()
|
|
78
|
-
.describe('Files to write to sandbox on creation
|
|
81
|
+
.describe('Files to write to sandbox on creation'),
|
|
79
82
|
snapshot: z.string().optional().describe('Snapshot ID to restore the sandbox from'),
|
|
80
83
|
dependencies: z
|
|
81
84
|
.array(z.string())
|
|
@@ -101,7 +104,7 @@ const SandboxCreateRequestSchema = z
|
|
|
101
104
|
)
|
|
102
105
|
.describe('Request body for creating a new sandbox');
|
|
103
106
|
|
|
104
|
-
const SandboxCreateDataSchema = z
|
|
107
|
+
export const SandboxCreateDataSchema = z
|
|
105
108
|
.object({
|
|
106
109
|
sandboxId: z.string().describe('Unique identifier for the created sandbox'),
|
|
107
110
|
status: z
|
|
@@ -114,7 +117,7 @@ const SandboxCreateDataSchema = z
|
|
|
114
117
|
})
|
|
115
118
|
.describe('Response data from sandbox creation');
|
|
116
119
|
|
|
117
|
-
const SandboxCreateResponseSchema = APIResponseSchema(SandboxCreateDataSchema);
|
|
120
|
+
export const SandboxCreateResponseSchema = APIResponseSchema(SandboxCreateDataSchema);
|
|
118
121
|
|
|
119
122
|
export interface SandboxCreateResponse {
|
|
120
123
|
sandboxId: string;
|
|
@@ -186,9 +189,10 @@ export async function sandboxCreate(
|
|
|
186
189
|
};
|
|
187
190
|
}
|
|
188
191
|
if (options.files && options.files.length > 0) {
|
|
189
|
-
body.files =
|
|
190
|
-
|
|
191
|
-
|
|
192
|
+
body.files = options.files.map((f) => ({
|
|
193
|
+
path: f.path,
|
|
194
|
+
content: f.content.toString('base64'),
|
|
195
|
+
}));
|
|
192
196
|
}
|
|
193
197
|
if (options.snapshot) {
|
|
194
198
|
body.snapshot = options.snapshot;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
import { APIClient, APIResponseSchemaNoData } from '../api';
|
|
3
|
-
import {
|
|
1
|
+
import type { z } from 'zod';
|
|
2
|
+
import { type APIClient, APIResponseSchemaNoData } from '../api';
|
|
3
|
+
import { API_VERSION, throwSandboxError } from './util';
|
|
4
4
|
|
|
5
|
-
const DestroyResponseSchema = APIResponseSchemaNoData();
|
|
5
|
+
export const DestroyResponseSchema = APIResponseSchemaNoData();
|
|
6
6
|
|
|
7
7
|
export interface SandboxDestroyParams {
|
|
8
8
|
sandboxId: string;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
import { APIClient, APIResponseSchema } from '../api';
|
|
3
|
-
import { throwSandboxError, API_VERSION } from './util';
|
|
4
1
|
import type { ExecuteOptions, Execution, ExecutionStatus } from '@agentuity/core';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { type APIClient, APIResponseSchema } from '../api';
|
|
4
|
+
import { API_VERSION, throwSandboxError } from './util';
|
|
5
5
|
|
|
6
|
-
const ExecuteRequestSchema = z
|
|
6
|
+
export const ExecuteRequestSchema = z
|
|
7
7
|
.object({
|
|
8
8
|
command: z.array(z.string()).describe('Command and arguments to execute'),
|
|
9
9
|
files: z
|
|
@@ -22,7 +22,7 @@ const ExecuteRequestSchema = z
|
|
|
22
22
|
})
|
|
23
23
|
.describe('Request body for executing a command in a sandbox');
|
|
24
24
|
|
|
25
|
-
const ExecuteDataSchema = z
|
|
25
|
+
export const ExecuteDataSchema = z
|
|
26
26
|
.object({
|
|
27
27
|
executionId: z.string().describe('Unique identifier for the execution'),
|
|
28
28
|
status: z
|
|
@@ -35,7 +35,7 @@ const ExecuteDataSchema = z
|
|
|
35
35
|
})
|
|
36
36
|
.describe('Response data from command execution');
|
|
37
37
|
|
|
38
|
-
const ExecuteResponseSchema = APIResponseSchema(ExecuteDataSchema);
|
|
38
|
+
export const ExecuteResponseSchema = APIResponseSchema(ExecuteDataSchema);
|
|
39
39
|
|
|
40
40
|
export interface SandboxExecuteParams {
|
|
41
41
|
sandboxId: string;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
import { APIClient, APIResponseSchema } from '../api';
|
|
3
|
-
import { throwSandboxError, API_VERSION } from './util';
|
|
4
1
|
import type { ExecutionStatus } from '@agentuity/core';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { type APIClient, APIResponseSchema } from '../api';
|
|
4
|
+
import { API_VERSION, throwSandboxError } from './util';
|
|
5
5
|
|
|
6
|
-
const ExecutionInfoSchema = z
|
|
6
|
+
export const ExecutionInfoSchema = z
|
|
7
7
|
.object({
|
|
8
8
|
executionId: z.string().describe('Unique identifier for the execution'),
|
|
9
9
|
sandboxId: z.string().describe('ID of the sandbox where the execution ran'),
|
|
@@ -25,15 +25,15 @@ const ExecutionInfoSchema = z
|
|
|
25
25
|
})
|
|
26
26
|
.describe('Detailed information about a command execution');
|
|
27
27
|
|
|
28
|
-
const ExecutionGetResponseSchema = APIResponseSchema(ExecutionInfoSchema);
|
|
28
|
+
export const ExecutionGetResponseSchema = APIResponseSchema(ExecutionInfoSchema);
|
|
29
29
|
|
|
30
|
-
const ExecutionListDataSchema = z
|
|
30
|
+
export const ExecutionListDataSchema = z
|
|
31
31
|
.object({
|
|
32
32
|
executions: z.array(ExecutionInfoSchema).describe('List of executions'),
|
|
33
33
|
})
|
|
34
34
|
.describe('List of executions for a sandbox');
|
|
35
35
|
|
|
36
|
-
const ExecutionListResponseSchema = APIResponseSchema(ExecutionListDataSchema);
|
|
36
|
+
export const ExecutionListResponseSchema = APIResponseSchema(ExecutionListDataSchema);
|
|
37
37
|
|
|
38
38
|
export interface ExecutionInfo {
|
|
39
39
|
executionId: string;
|
package/src/api/sandbox/files.ts
CHANGED
|
@@ -8,19 +8,19 @@ export const FileToWriteSchema = z.object({
|
|
|
8
8
|
content: z.string().describe('Base64-encoded file content'),
|
|
9
9
|
});
|
|
10
10
|
|
|
11
|
-
const WriteFilesRequestSchema = z
|
|
11
|
+
export const WriteFilesRequestSchema = z
|
|
12
12
|
.object({
|
|
13
13
|
files: z.array(FileToWriteSchema).describe('Array of files to write'),
|
|
14
14
|
})
|
|
15
15
|
.describe('Request body for writing files to a sandbox');
|
|
16
16
|
|
|
17
|
-
const WriteFilesDataSchema = z
|
|
17
|
+
export const WriteFilesDataSchema = z
|
|
18
18
|
.object({
|
|
19
19
|
filesWritten: z.number().describe('Number of files successfully written'),
|
|
20
20
|
})
|
|
21
21
|
.describe('Response data from writing files');
|
|
22
22
|
|
|
23
|
-
const WriteFilesResponseSchema = z.discriminatedUnion('success', [
|
|
23
|
+
export const WriteFilesResponseSchema = z.discriminatedUnion('success', [
|
|
24
24
|
z.object({
|
|
25
25
|
success: z.literal<false>(false),
|
|
26
26
|
message: z.string().describe('the error message'),
|
|
@@ -140,14 +140,14 @@ export async function sandboxReadFile(
|
|
|
140
140
|
return response.body;
|
|
141
141
|
}
|
|
142
142
|
|
|
143
|
-
const MkDirRequestSchema = z
|
|
143
|
+
export const MkDirRequestSchema = z
|
|
144
144
|
.object({
|
|
145
145
|
path: z.string().describe('Path to the directory to create'),
|
|
146
146
|
recursive: z.boolean().optional().describe('Create parent directories if needed'),
|
|
147
147
|
})
|
|
148
148
|
.describe('Request body for creating a directory');
|
|
149
149
|
|
|
150
|
-
const MkDirResponseSchema = z.discriminatedUnion('success', [
|
|
150
|
+
export const MkDirResponseSchema = z.discriminatedUnion('success', [
|
|
151
151
|
z.object({
|
|
152
152
|
success: z.literal<false>(false),
|
|
153
153
|
message: z.string().describe('the error message'),
|
|
@@ -200,14 +200,14 @@ export async function sandboxMkDir(client: APIClient, params: MkDirParams): Prom
|
|
|
200
200
|
}
|
|
201
201
|
}
|
|
202
202
|
|
|
203
|
-
const RmDirRequestSchema = z
|
|
203
|
+
export const RmDirRequestSchema = z
|
|
204
204
|
.object({
|
|
205
205
|
path: z.string().describe('Path to the directory to remove'),
|
|
206
206
|
recursive: z.boolean().optional().describe('Remove directory and all contents'),
|
|
207
207
|
})
|
|
208
208
|
.describe('Request body for removing a directory');
|
|
209
209
|
|
|
210
|
-
const RmDirResponseSchema = z.discriminatedUnion('success', [
|
|
210
|
+
export const RmDirResponseSchema = z.discriminatedUnion('success', [
|
|
211
211
|
z.object({
|
|
212
212
|
success: z.literal<false>(false),
|
|
213
213
|
message: z.string().describe('the error message'),
|
|
@@ -260,13 +260,13 @@ export async function sandboxRmDir(client: APIClient, params: RmDirParams): Prom
|
|
|
260
260
|
}
|
|
261
261
|
}
|
|
262
262
|
|
|
263
|
-
const RmFileRequestSchema = z
|
|
263
|
+
export const RmFileRequestSchema = z
|
|
264
264
|
.object({
|
|
265
265
|
path: z.string().describe('Path to the file to remove'),
|
|
266
266
|
})
|
|
267
267
|
.describe('Request body for removing a file');
|
|
268
268
|
|
|
269
|
-
const RmFileResponseSchema = z.discriminatedUnion('success', [
|
|
269
|
+
export const RmFileResponseSchema = z.discriminatedUnion('success', [
|
|
270
270
|
z.object({
|
|
271
271
|
success: z.literal<false>(false),
|
|
272
272
|
message: z.string().describe('the error message'),
|
|
@@ -317,7 +317,7 @@ export async function sandboxRmFile(client: APIClient, params: RmFileParams): Pr
|
|
|
317
317
|
}
|
|
318
318
|
}
|
|
319
319
|
|
|
320
|
-
const FileInfoSchema = z.object({
|
|
320
|
+
export const FileInfoSchema = z.object({
|
|
321
321
|
path: z.string().describe('File path relative to the listed directory'),
|
|
322
322
|
size: z.number().describe('File size in bytes'),
|
|
323
323
|
isDir: z.boolean().describe('Whether the entry is a directory'),
|
|
@@ -325,11 +325,11 @@ const FileInfoSchema = z.object({
|
|
|
325
325
|
modTime: z.string().describe('Modification time in RFC3339 format'),
|
|
326
326
|
});
|
|
327
327
|
|
|
328
|
-
const ListFilesDataSchema = z.object({
|
|
328
|
+
export const ListFilesDataSchema = z.object({
|
|
329
329
|
files: z.array(FileInfoSchema).describe('Array of file information'),
|
|
330
330
|
});
|
|
331
331
|
|
|
332
|
-
const ListFilesResponseSchema = z.discriminatedUnion('success', [
|
|
332
|
+
export const ListFilesResponseSchema = z.discriminatedUnion('success', [
|
|
333
333
|
z.object({
|
|
334
334
|
success: z.literal<false>(false),
|
|
335
335
|
message: z.string().describe('the error message'),
|
|
@@ -467,7 +467,7 @@ export interface UploadArchiveParams {
|
|
|
467
467
|
signal?: AbortSignal;
|
|
468
468
|
}
|
|
469
469
|
|
|
470
|
-
const UploadArchiveResponseSchema = z.discriminatedUnion('success', [
|
|
470
|
+
export const UploadArchiveResponseSchema = z.discriminatedUnion('success', [
|
|
471
471
|
z.object({
|
|
472
472
|
success: z.literal<false>(false),
|
|
473
473
|
message: z.string().describe('the error message'),
|
|
@@ -523,17 +523,17 @@ export async function sandboxUploadArchive(
|
|
|
523
523
|
}
|
|
524
524
|
}
|
|
525
525
|
|
|
526
|
-
const SetEnvRequestSchema = z.object({
|
|
526
|
+
export const SetEnvRequestSchema = z.object({
|
|
527
527
|
env: z
|
|
528
528
|
.record(z.string(), z.string().nullable())
|
|
529
529
|
.describe('Environment variables to set (null to delete)'),
|
|
530
530
|
});
|
|
531
531
|
|
|
532
|
-
const SetEnvDataSchema = z.object({
|
|
532
|
+
export const SetEnvDataSchema = z.object({
|
|
533
533
|
env: z.record(z.string(), z.string()).describe('Current environment variables after update'),
|
|
534
534
|
});
|
|
535
535
|
|
|
536
|
-
const SetEnvResponseSchema = z.discriminatedUnion('success', [
|
|
536
|
+
export const SetEnvResponseSchema = z.discriminatedUnion('success', [
|
|
537
537
|
z.object({
|
|
538
538
|
success: z.literal<false>(false),
|
|
539
539
|
message: z.string().describe('the error message'),
|
package/src/api/sandbox/get.ts
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
import { APIClient, APIResponseSchema } from '../api';
|
|
3
|
-
import { throwSandboxError, API_VERSION } from './util';
|
|
4
1
|
import type {
|
|
5
2
|
SandboxInfo,
|
|
6
|
-
SandboxStatus,
|
|
7
3
|
SandboxRuntimeInfo,
|
|
8
4
|
SandboxSnapshotInfo,
|
|
5
|
+
SandboxStatus,
|
|
9
6
|
} from '@agentuity/core';
|
|
7
|
+
import { z } from 'zod';
|
|
8
|
+
import { type APIClient, APIResponseSchema } from '../api';
|
|
9
|
+
import { API_VERSION, throwSandboxError } from './util';
|
|
10
10
|
|
|
11
|
-
const SandboxResourcesSchema = z
|
|
11
|
+
export const SandboxResourcesSchema = z
|
|
12
12
|
.object({
|
|
13
13
|
memory: z.string().optional().describe('Memory limit (e.g., "512Mi", "1Gi")'),
|
|
14
14
|
cpu: z.string().optional().describe('CPU limit in millicores (e.g., "500m", "1000m")'),
|
|
@@ -16,7 +16,7 @@ const SandboxResourcesSchema = z
|
|
|
16
16
|
})
|
|
17
17
|
.describe('Resource limits for the sandbox');
|
|
18
18
|
|
|
19
|
-
const SandboxUserInfoSchema = z
|
|
19
|
+
export const SandboxUserInfoSchema = z
|
|
20
20
|
.object({
|
|
21
21
|
id: z.string().describe('User ID'),
|
|
22
22
|
firstName: z.string().optional().describe("User's first name"),
|
|
@@ -24,28 +24,28 @@ const SandboxUserInfoSchema = z
|
|
|
24
24
|
})
|
|
25
25
|
.describe('User who created the sandbox');
|
|
26
26
|
|
|
27
|
-
const SandboxAgentInfoSchema = z
|
|
27
|
+
export const SandboxAgentInfoSchema = z
|
|
28
28
|
.object({
|
|
29
29
|
id: z.string().describe('Agent ID'),
|
|
30
30
|
name: z.string().describe('Agent name'),
|
|
31
31
|
})
|
|
32
32
|
.describe('Agent associated with the sandbox');
|
|
33
33
|
|
|
34
|
-
const SandboxProjectInfoSchema = z
|
|
34
|
+
export const SandboxProjectInfoSchema = z
|
|
35
35
|
.object({
|
|
36
36
|
id: z.string().describe('Project ID'),
|
|
37
37
|
name: z.string().describe('Project name'),
|
|
38
38
|
})
|
|
39
39
|
.describe('Project associated with the sandbox');
|
|
40
40
|
|
|
41
|
-
const SandboxOrgInfoSchema = z
|
|
41
|
+
export const SandboxOrgInfoSchema = z
|
|
42
42
|
.object({
|
|
43
43
|
id: z.string().describe('Organization ID'),
|
|
44
44
|
name: z.string().describe('Organization name'),
|
|
45
45
|
})
|
|
46
46
|
.describe('Organization associated with the sandbox');
|
|
47
47
|
|
|
48
|
-
const SandboxRuntimeInfoSchema = z
|
|
48
|
+
export const SandboxRuntimeInfoSchema = z
|
|
49
49
|
.object({
|
|
50
50
|
id: z.string().describe('Runtime ID'),
|
|
51
51
|
name: z.string().describe('Runtime name (e.g., "bun:1")'),
|
|
@@ -55,7 +55,7 @@ const SandboxRuntimeInfoSchema = z
|
|
|
55
55
|
})
|
|
56
56
|
.describe('Runtime information');
|
|
57
57
|
|
|
58
|
-
const SandboxSnapshotUserInfoSchema = z
|
|
58
|
+
export const SandboxSnapshotUserInfoSchema = z
|
|
59
59
|
.object({
|
|
60
60
|
id: z.string().describe('User ID'),
|
|
61
61
|
firstName: z.string().optional().describe("User's first name"),
|
|
@@ -63,7 +63,7 @@ const SandboxSnapshotUserInfoSchema = z
|
|
|
63
63
|
})
|
|
64
64
|
.describe('Snapshot user information');
|
|
65
65
|
|
|
66
|
-
const SandboxSnapshotOrgInfoSchema = z
|
|
66
|
+
export const SandboxSnapshotOrgInfoSchema = z
|
|
67
67
|
.object({
|
|
68
68
|
id: z.string().describe('Organization ID'),
|
|
69
69
|
name: z.string().describe('Organization name'),
|
|
@@ -71,7 +71,7 @@ const SandboxSnapshotOrgInfoSchema = z
|
|
|
71
71
|
})
|
|
72
72
|
.describe('Snapshot organization information');
|
|
73
73
|
|
|
74
|
-
const SandboxSnapshotInfoSchema = z
|
|
74
|
+
export const SandboxSnapshotInfoSchema = z
|
|
75
75
|
.union([
|
|
76
76
|
z
|
|
77
77
|
.object({
|
|
@@ -98,7 +98,7 @@ const SandboxSnapshotInfoSchema = z
|
|
|
98
98
|
])
|
|
99
99
|
.describe('Snapshot information (discriminated union)');
|
|
100
100
|
|
|
101
|
-
const SandboxInfoDataSchema = z
|
|
101
|
+
export const SandboxInfoDataSchema = z
|
|
102
102
|
.object({
|
|
103
103
|
sandboxId: z.string().describe('Unique identifier for the sandbox'),
|
|
104
104
|
identifier: z.string().optional().describe('Short identifier for DNS hostname'),
|
|
@@ -144,7 +144,7 @@ const SandboxInfoDataSchema = z
|
|
|
144
144
|
})
|
|
145
145
|
.describe('Detailed information about a sandbox');
|
|
146
146
|
|
|
147
|
-
const SandboxGetResponseSchema = APIResponseSchema(SandboxInfoDataSchema);
|
|
147
|
+
export const SandboxGetResponseSchema = APIResponseSchema(SandboxInfoDataSchema);
|
|
148
148
|
|
|
149
149
|
export interface SandboxGetParams {
|
|
150
150
|
sandboxId: string;
|