@agentuity/core 3.0.0-alpha.6 → 3.0.0-beta.0
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 +0 -1
- package/dist/index.d.ts +0 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -3
- package/dist/index.js.map +1 -1
- package/dist/services/coder/api-reference.d.ts.map +1 -1
- package/dist/services/coder/api-reference.js +30 -1
- package/dist/services/coder/api-reference.js.map +1 -1
- package/dist/services/coder/client.d.ts +17 -1
- package/dist/services/coder/client.d.ts.map +1 -1
- package/dist/services/coder/client.js +30 -2
- package/dist/services/coder/client.js.map +1 -1
- package/dist/services/coder/index.d.ts +2 -2
- package/dist/services/coder/index.d.ts.map +1 -1
- package/dist/services/coder/index.js +1 -1
- package/dist/services/coder/index.js.map +1 -1
- package/dist/services/coder/protocol.d.ts +186 -5
- package/dist/services/coder/protocol.d.ts.map +1 -1
- package/dist/services/coder/protocol.js +125 -0
- package/dist/services/coder/protocol.js.map +1 -1
- package/dist/services/coder/sessions.d.ts +22 -0
- package/dist/services/coder/sessions.d.ts.map +1 -1
- package/dist/services/coder/sessions.js +10 -1
- package/dist/services/coder/sessions.js.map +1 -1
- package/dist/services/coder/sse.d.ts +2 -2
- package/dist/services/coder/sse.d.ts.map +1 -1
- package/dist/services/coder/sse.js +290 -178
- package/dist/services/coder/sse.js.map +1 -1
- package/dist/services/coder/types.d.ts +627 -0
- package/dist/services/coder/types.d.ts.map +1 -1
- package/dist/services/coder/types.js +221 -1
- package/dist/services/coder/types.js.map +1 -1
- package/dist/services/coder/workspaces.d.ts +11 -1
- package/dist/services/coder/workspaces.d.ts.map +1 -1
- package/dist/services/coder/workspaces.js +34 -1
- package/dist/services/coder/workspaces.js.map +1 -1
- package/dist/services/index.d.ts +0 -2
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/index.js +0 -2
- package/dist/services/index.js.map +1 -1
- package/dist/services/keyvalue/service.d.ts +9 -3
- package/dist/services/keyvalue/service.d.ts.map +1 -1
- package/dist/services/keyvalue/service.js +6 -3
- package/dist/services/keyvalue/service.js.map +1 -1
- package/dist/services/sandbox/api-reference.js +8 -8
- package/dist/services/sandbox/api-reference.js.map +1 -1
- package/dist/services/sandbox/client.d.ts +3 -2
- package/dist/services/sandbox/client.d.ts.map +1 -1
- package/dist/services/sandbox/client.js.map +1 -1
- package/dist/services/sandbox/create.d.ts +5 -0
- package/dist/services/sandbox/create.d.ts.map +1 -1
- package/dist/services/sandbox/create.js +8 -0
- package/dist/services/sandbox/create.js.map +1 -1
- package/dist/services/sandbox/get.d.ts +8 -4
- package/dist/services/sandbox/get.d.ts.map +1 -1
- package/dist/services/sandbox/get.js +28 -3
- package/dist/services/sandbox/get.js.map +1 -1
- package/dist/services/sandbox/getStatus.d.ts +3 -0
- package/dist/services/sandbox/getStatus.d.ts.map +1 -1
- package/dist/services/sandbox/getStatus.js +19 -2
- package/dist/services/sandbox/getStatus.js.map +1 -1
- package/dist/services/sandbox/index.d.ts +1 -1
- package/dist/services/sandbox/index.d.ts.map +1 -1
- package/dist/services/sandbox/list.d.ts +3 -0
- package/dist/services/sandbox/list.d.ts.map +1 -1
- package/dist/services/sandbox/list.js +5 -0
- package/dist/services/sandbox/list.js.map +1 -1
- package/dist/services/sandbox/pause.d.ts +17 -1
- package/dist/services/sandbox/pause.d.ts.map +1 -1
- package/dist/services/sandbox/pause.js +21 -3
- package/dist/services/sandbox/pause.js.map +1 -1
- package/dist/services/sandbox/run.d.ts +3 -2
- package/dist/services/sandbox/run.d.ts.map +1 -1
- package/dist/services/sandbox/run.js +244 -84
- package/dist/services/sandbox/run.js.map +1 -1
- package/dist/services/sandbox/types.d.ts +11 -4
- package/dist/services/sandbox/types.d.ts.map +1 -1
- package/dist/services/sandbox/types.js +12 -0
- package/dist/services/sandbox/types.js.map +1 -1
- package/dist/services/stream/namespaces.d.ts +2 -2
- package/dist/services/stream/namespaces.js +2 -2
- package/dist/services/stream/namespaces.js.map +1 -1
- package/dist/services/vector/service.d.ts +11 -11
- package/dist/services/vector/service.d.ts.map +1 -1
- package/dist/services/vector/service.js.map +1 -1
- package/package.json +3 -17
- package/src/index.ts +0 -15
- package/src/services/coder/api-reference.ts +31 -0
- package/src/services/coder/client.ts +46 -0
- package/src/services/coder/index.ts +3 -0
- package/src/services/coder/protocol.ts +133 -0
- package/src/services/coder/sessions.ts +26 -0
- package/src/services/coder/sse.ts +343 -184
- package/src/services/coder/types.ts +273 -1
- package/src/services/coder/workspaces.ts +74 -0
- package/src/services/index.ts +0 -2
- package/src/services/keyvalue/service.ts +16 -7
- package/src/services/sandbox/api-reference.ts +8 -8
- package/src/services/sandbox/client.ts +4 -4
- package/src/services/sandbox/create.ts +10 -0
- package/src/services/sandbox/get.ts +32 -3
- package/src/services/sandbox/getStatus.ts +23 -2
- package/src/services/sandbox/index.ts +1 -1
- package/src/services/sandbox/list.ts +5 -0
- package/src/services/sandbox/pause.ts +38 -4
- package/src/services/sandbox/run.ts +352 -105
- package/src/services/sandbox/types.ts +17 -2
- package/src/services/stream/namespaces.ts +2 -2
- package/src/services/vector/service.ts +11 -21
- package/dist/services/auth/index.d.ts +0 -7
- package/dist/services/auth/index.d.ts.map +0 -1
- package/dist/services/auth/index.js +0 -7
- package/dist/services/auth/index.js.map +0 -1
- package/dist/services/auth/types.d.ts +0 -192
- package/dist/services/auth/types.d.ts.map +0 -1
- package/dist/services/auth/types.js +0 -11
- package/dist/services/auth/types.js.map +0 -1
- package/dist/services/eval/api-reference.d.ts +0 -4
- package/dist/services/eval/api-reference.d.ts.map +0 -1
- package/dist/services/eval/api-reference.js +0 -121
- package/dist/services/eval/api-reference.js.map +0 -1
- package/dist/services/eval/events.d.ts +0 -93
- package/dist/services/eval/events.d.ts.map +0 -1
- package/dist/services/eval/events.js +0 -24
- package/dist/services/eval/events.js.map +0 -1
- package/dist/services/eval/get.d.ts +0 -36
- package/dist/services/eval/get.d.ts.map +0 -1
- package/dist/services/eval/get.js +0 -23
- package/dist/services/eval/get.js.map +0 -1
- package/dist/services/eval/index.d.ts +0 -6
- package/dist/services/eval/index.d.ts.map +0 -1
- package/dist/services/eval/index.js +0 -6
- package/dist/services/eval/index.js.map +0 -1
- package/dist/services/eval/list.d.ts +0 -50
- package/dist/services/eval/list.d.ts.map +0 -1
- package/dist/services/eval/list.js +0 -32
- package/dist/services/eval/list.js.map +0 -1
- package/dist/services/eval/run-get.d.ts +0 -48
- package/dist/services/eval/run-get.d.ts.map +0 -1
- package/dist/services/eval/run-get.js +0 -29
- package/dist/services/eval/run-get.js.map +0 -1
- package/dist/services/eval/run-list.d.ts +0 -70
- package/dist/services/eval/run-list.d.ts.map +0 -1
- package/dist/services/eval/run-list.js +0 -42
- package/dist/services/eval/run-list.js.map +0 -1
- package/dist/webrtc.d.ts +0 -243
- package/dist/webrtc.d.ts.map +0 -1
- package/dist/webrtc.js +0 -5
- package/dist/webrtc.js.map +0 -1
- package/dist/workbench-config.d.ts +0 -62
- package/dist/workbench-config.d.ts.map +0 -1
- package/dist/workbench-config.js +0 -58
- package/dist/workbench-config.js.map +0 -1
- package/dist/workbench.d.ts +0 -2
- package/dist/workbench.d.ts.map +0 -1
- package/dist/workbench.js +0 -2
- package/dist/workbench.js.map +0 -1
- package/src/services/auth/index.ts +0 -19
- package/src/services/auth/types.ts +0 -223
- package/src/services/eval/api-reference.ts +0 -124
- package/src/services/eval/events.ts +0 -92
- package/src/services/eval/get.ts +0 -33
- package/src/services/eval/index.ts +0 -29
- package/src/services/eval/list.ts +0 -49
- package/src/services/eval/run-get.ts +0 -39
- package/src/services/eval/run-list.ts +0 -59
- package/src/webrtc.ts +0 -259
- package/src/workbench-config.ts +0 -79
- package/src/workbench.ts +0 -1
|
@@ -156,7 +156,7 @@ export const SandboxInfoDataSchema = z
|
|
|
156
156
|
user: SandboxUserInfoSchema.optional().describe('User who created the sandbox'),
|
|
157
157
|
agent: SandboxAgentInfoSchema.optional().describe('Agent associated with the sandbox'),
|
|
158
158
|
project: SandboxProjectInfoSchema.optional().describe('Project associated with the sandbox'),
|
|
159
|
-
org: SandboxOrgInfoSchema.describe('Organization associated with the sandbox'),
|
|
159
|
+
org: SandboxOrgInfoSchema.nullish().describe('Organization associated with the sandbox'),
|
|
160
160
|
timeout: z
|
|
161
161
|
.object({
|
|
162
162
|
idle: z.string().optional().describe('Idle timeout duration (e.g., "5m", "1h").'),
|
|
@@ -164,6 +164,10 @@ export const SandboxInfoDataSchema = z
|
|
|
164
164
|
.string()
|
|
165
165
|
.optional()
|
|
166
166
|
.describe('Execution timeout duration (e.g., "30m", "2h").'),
|
|
167
|
+
paused: z
|
|
168
|
+
.string()
|
|
169
|
+
.optional()
|
|
170
|
+
.describe('Paused timeout duration (e.g., "24h", "0s" for infinite).'),
|
|
167
171
|
})
|
|
168
172
|
.optional()
|
|
169
173
|
.describe('Timeout configuration for the sandbox.'),
|
|
@@ -189,6 +193,16 @@ export const SandboxGetParamsSchema = z.object({
|
|
|
189
193
|
.boolean()
|
|
190
194
|
.optional()
|
|
191
195
|
.describe('Whether deleted sandboxes should be included in lookup'),
|
|
196
|
+
waitForStatus: z
|
|
197
|
+
.union([z.string(), z.array(z.string())])
|
|
198
|
+
.optional()
|
|
199
|
+
.describe('Optional desired status or statuses to wait for before responding'),
|
|
200
|
+
waitMs: z
|
|
201
|
+
.number()
|
|
202
|
+
.int()
|
|
203
|
+
.nonnegative()
|
|
204
|
+
.optional()
|
|
205
|
+
.describe('Maximum time in milliseconds to wait for the desired status'),
|
|
192
206
|
});
|
|
193
207
|
|
|
194
208
|
export type SandboxGetParams = z.infer<typeof SandboxGetParamsSchema>;
|
|
@@ -205,7 +219,7 @@ export async function sandboxGet(
|
|
|
205
219
|
client: APIClient,
|
|
206
220
|
params: SandboxGetParams
|
|
207
221
|
): Promise<SandboxInfo> {
|
|
208
|
-
const { sandboxId, orgId, includeDeleted } = params;
|
|
222
|
+
const { sandboxId, orgId, includeDeleted, waitForStatus, waitMs } = params;
|
|
209
223
|
const queryParams = new URLSearchParams();
|
|
210
224
|
if (orgId) {
|
|
211
225
|
queryParams.set('orgId', orgId);
|
|
@@ -213,6 +227,15 @@ export async function sandboxGet(
|
|
|
213
227
|
if (includeDeleted) {
|
|
214
228
|
queryParams.set('includeDeleted', 'true');
|
|
215
229
|
}
|
|
230
|
+
if (waitForStatus) {
|
|
231
|
+
queryParams.set(
|
|
232
|
+
'waitForStatus',
|
|
233
|
+
Array.isArray(waitForStatus) ? waitForStatus.join(',') : waitForStatus
|
|
234
|
+
);
|
|
235
|
+
}
|
|
236
|
+
if (waitMs != null) {
|
|
237
|
+
queryParams.set('waitMs', String(waitMs));
|
|
238
|
+
}
|
|
216
239
|
const queryString = queryParams.toString();
|
|
217
240
|
const url = `/sandbox/${encodeURIComponent(sandboxId)}${queryString ? `?${queryString}` : ''}`;
|
|
218
241
|
|
|
@@ -222,6 +245,12 @@ export async function sandboxGet(
|
|
|
222
245
|
);
|
|
223
246
|
|
|
224
247
|
if (resp.success) {
|
|
248
|
+
// Newly created sandboxes can be served from the server's pending cache before
|
|
249
|
+
// the backing row and related org hydration are fully available. That response
|
|
250
|
+
// serializes `org: null`, so normalize it to a placeholder object instead of
|
|
251
|
+
// failing response validation for an otherwise valid sandbox status poll.
|
|
252
|
+
const org = resp.data.org ?? { id: orgId ?? '', name: '' };
|
|
253
|
+
|
|
225
254
|
return {
|
|
226
255
|
sandboxId: resp.data.sandboxId,
|
|
227
256
|
identifier: resp.data.identifier,
|
|
@@ -252,7 +281,7 @@ export async function sandboxGet(
|
|
|
252
281
|
user: resp.data.user,
|
|
253
282
|
agent: resp.data.agent,
|
|
254
283
|
project: resp.data.project,
|
|
255
|
-
org
|
|
284
|
+
org,
|
|
256
285
|
timeout: resp.data.timeout,
|
|
257
286
|
command: resp.data.command,
|
|
258
287
|
};
|
|
@@ -13,6 +13,17 @@ const SandboxStatusResponseSchema = APIResponseSchema(SandboxStatusDataSchema);
|
|
|
13
13
|
export const SandboxGetStatusParamsSchema = z.object({
|
|
14
14
|
sandboxId: z.string().describe('Sandbox ID to retrieve status for'),
|
|
15
15
|
orgId: z.string().optional().describe('Optional org id for CLI auth context'),
|
|
16
|
+
waitForStatus: z
|
|
17
|
+
.union([z.string(), z.array(z.string())])
|
|
18
|
+
.optional()
|
|
19
|
+
.describe('Optional desired status or statuses to wait for before responding'),
|
|
20
|
+
waitMs: z
|
|
21
|
+
.number()
|
|
22
|
+
.int()
|
|
23
|
+
.nonnegative()
|
|
24
|
+
.optional()
|
|
25
|
+
.describe('Maximum time in milliseconds to wait for the desired status'),
|
|
26
|
+
signal: z.custom<AbortSignal>().optional().describe('abort signal for cancellation'),
|
|
16
27
|
});
|
|
17
28
|
|
|
18
29
|
export type SandboxGetStatusParams = z.infer<typeof SandboxGetStatusParamsSchema>;
|
|
@@ -26,17 +37,27 @@ export async function sandboxGetStatus(
|
|
|
26
37
|
client: APIClient,
|
|
27
38
|
params: SandboxGetStatusParams
|
|
28
39
|
): Promise<SandboxStatusResult> {
|
|
29
|
-
const { sandboxId, orgId } = params;
|
|
40
|
+
const { sandboxId, orgId, waitForStatus, waitMs, signal } = params;
|
|
30
41
|
const queryParams = new URLSearchParams();
|
|
31
42
|
if (orgId) {
|
|
32
43
|
queryParams.set('orgId', orgId);
|
|
33
44
|
}
|
|
45
|
+
if (waitForStatus) {
|
|
46
|
+
queryParams.set(
|
|
47
|
+
'waitForStatus',
|
|
48
|
+
Array.isArray(waitForStatus) ? waitForStatus.join(',') : waitForStatus
|
|
49
|
+
);
|
|
50
|
+
}
|
|
51
|
+
if (waitMs != null) {
|
|
52
|
+
queryParams.set('waitMs', String(waitMs));
|
|
53
|
+
}
|
|
34
54
|
const queryString = queryParams.toString();
|
|
35
55
|
const url = `/sandbox/status/${sandboxId}${queryString ? `?${queryString}` : ''}`;
|
|
36
56
|
|
|
37
57
|
const resp = await client.get<z.infer<typeof SandboxStatusResponseSchema>>(
|
|
38
58
|
url,
|
|
39
|
-
SandboxStatusResponseSchema
|
|
59
|
+
SandboxStatusResponseSchema,
|
|
60
|
+
signal
|
|
40
61
|
);
|
|
41
62
|
|
|
42
63
|
if (resp.success) {
|
|
@@ -52,7 +52,7 @@ export {
|
|
|
52
52
|
diskCheckpointRestore,
|
|
53
53
|
diskCheckpointDelete,
|
|
54
54
|
} from './disk-checkpoint.ts';
|
|
55
|
-
export type { SandboxPauseParams } from './pause.ts';
|
|
55
|
+
export type { SandboxPauseParams, SandboxPauseResult } from './pause.ts';
|
|
56
56
|
export { PauseResponseSchema, SandboxPauseParamsSchema, sandboxPause } from './pause.ts';
|
|
57
57
|
export type { SandboxResumeParams } from './resume.ts';
|
|
58
58
|
export { ResumeResponseSchema, SandboxResumeParamsSchema, sandboxResume } from './resume.ts';
|
|
@@ -112,6 +112,10 @@ export const SandboxInfoSchema = z
|
|
|
112
112
|
.string()
|
|
113
113
|
.optional()
|
|
114
114
|
.describe('Execution timeout duration (e.g., "30m", "2h").'),
|
|
115
|
+
paused: z
|
|
116
|
+
.string()
|
|
117
|
+
.optional()
|
|
118
|
+
.describe('Paused timeout duration (e.g., "24h", "0s" for infinite).'),
|
|
115
119
|
})
|
|
116
120
|
.optional()
|
|
117
121
|
.describe('Timeout configuration for the sandbox.'),
|
|
@@ -225,6 +229,7 @@ export async function sandboxList(
|
|
|
225
229
|
networkPort: s.networkPort,
|
|
226
230
|
url: s.url,
|
|
227
231
|
org: s.org,
|
|
232
|
+
timeout: s.timeout,
|
|
228
233
|
})),
|
|
229
234
|
total: resp.data.total,
|
|
230
235
|
};
|
|
@@ -1,8 +1,21 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import { type APIClient
|
|
2
|
+
import { type APIClient } from '../api.ts';
|
|
3
3
|
import { throwSandboxError } from './util.ts';
|
|
4
4
|
|
|
5
|
-
export const PauseResponseSchema =
|
|
5
|
+
export const PauseResponseSchema = z.discriminatedUnion('success', [
|
|
6
|
+
z.object({
|
|
7
|
+
success: z.literal<false>(false),
|
|
8
|
+
message: z.string(),
|
|
9
|
+
code: z.string().optional(),
|
|
10
|
+
}),
|
|
11
|
+
z.object({
|
|
12
|
+
success: z.literal<true>(true),
|
|
13
|
+
sandboxId: z.string(),
|
|
14
|
+
status: z.string(),
|
|
15
|
+
checkpointId: z.string().optional(),
|
|
16
|
+
terminatesAt: z.string().optional(),
|
|
17
|
+
}),
|
|
18
|
+
]);
|
|
6
19
|
|
|
7
20
|
export const SandboxPauseParamsSchema = z.object({
|
|
8
21
|
sandboxId: z.string().describe('Sandbox ID to pause'),
|
|
@@ -11,14 +24,30 @@ export const SandboxPauseParamsSchema = z.object({
|
|
|
11
24
|
|
|
12
25
|
export type SandboxPauseParams = z.infer<typeof SandboxPauseParamsSchema>;
|
|
13
26
|
|
|
27
|
+
/** Result returned from pausing a sandbox */
|
|
28
|
+
export interface SandboxPauseResult {
|
|
29
|
+
/** The sandbox ID that was paused */
|
|
30
|
+
sandboxId: string;
|
|
31
|
+
/** New status (typically "suspended") */
|
|
32
|
+
status: string;
|
|
33
|
+
/** Checkpoint ID created during pause */
|
|
34
|
+
checkpointId?: string;
|
|
35
|
+
/** ISO 8601 timestamp when sandbox will auto-terminate if not resumed (omitted if no paused timeout) */
|
|
36
|
+
terminatesAt?: string;
|
|
37
|
+
}
|
|
38
|
+
|
|
14
39
|
/**
|
|
15
40
|
* Pauses a running sandbox, creating a checkpoint of its current state.
|
|
16
41
|
*
|
|
17
42
|
* @param client - The API client to use for the request
|
|
18
43
|
* @param params - Parameters including the sandbox ID to pause
|
|
44
|
+
* @returns Pause result including terminatesAt if a paused timeout is configured
|
|
19
45
|
* @throws {SandboxResponseError} If the sandbox is not found or pause fails
|
|
20
46
|
*/
|
|
21
|
-
export async function sandboxPause(
|
|
47
|
+
export async function sandboxPause(
|
|
48
|
+
client: APIClient,
|
|
49
|
+
params: SandboxPauseParams
|
|
50
|
+
): Promise<SandboxPauseResult> {
|
|
22
51
|
const { sandboxId, orgId } = params;
|
|
23
52
|
const queryParams = new URLSearchParams();
|
|
24
53
|
if (orgId) {
|
|
@@ -34,7 +63,12 @@ export async function sandboxPause(client: APIClient, params: SandboxPauseParams
|
|
|
34
63
|
);
|
|
35
64
|
|
|
36
65
|
if (resp.success) {
|
|
37
|
-
return
|
|
66
|
+
return {
|
|
67
|
+
sandboxId: resp.sandboxId,
|
|
68
|
+
status: resp.status,
|
|
69
|
+
checkpointId: resp.checkpointId,
|
|
70
|
+
terminatesAt: resp.terminatesAt,
|
|
71
|
+
};
|
|
38
72
|
}
|
|
39
73
|
|
|
40
74
|
throwSandboxError(resp, { sandboxId });
|