@agentuity/core 0.1.31 → 0.1.33

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -9,7 +9,7 @@ export { type CreateStreamProps, type ListStreamsParams, type StreamInfo, type L
9
9
  export { type VectorUpsertBase, type VectorUpsertEmbeddings, type VectorUpsertText, type VectorUpsertParams, type VectorSearchParams, type VectorSearchResult, type VectorSearchResultWithDocument, type VectorUpsertResult, type VectorResultFound, type VectorResultNotFound, type VectorResult, type VectorNamespaceStats, type VectorItemStats, type VectorNamespaceStatsWithSamples, type VectorGetAllStatsParams, type VectorStatsPaginated, type VectorStorage, VectorStorageService, } from './services/vector';
10
10
  export { type QueueService, type QueuePublishParams, type QueuePublishResult, QueueStorageService, QueuePublishError, QueueNotFoundError, QueueValidationError, } from './services/queue';
11
11
  export { type EvalRunEventProvider, EvalRunStartEventSchema, EvalRunCompleteEventSchema, EvalRunStartEventDelayedSchema, EvalRunCompleteEventDelayedSchema, type EvalRunStartEvent, type EvalRunCompleteEvent, } from './services/evalrun';
12
- export { type SandboxResources, type SandboxStatus, type SandboxRuntimeRequirements, type SandboxRuntime, type ExecutionStatus, type StreamReader, type SandboxStreamConfig, type SandboxCommand, type SandboxNetworkConfig, type SandboxTimeoutConfig, type SandboxCreateOptions, type Sandbox, type SandboxInfo, type SandboxRuntimeInfo, type SandboxSnapshotInfo, type SandboxSnapshotInfoPublic, type SandboxSnapshotInfoPrivate, type SandboxSnapshotUserInfo, type SandboxSnapshotOrgInfo, type SandboxUserInfo, type SandboxAgentInfo, type SandboxProjectInfo, type SandboxOrgInfo, type ListSandboxesParams, type ListSandboxesResponse, type ListRuntimesParams, type ListRuntimesResponse, type ExecuteOptions, type Execution, type SandboxRunOptions, type SandboxRunResult, type SandboxService, type FileToWrite, SandboxError, } from './services/sandbox';
12
+ export { type SandboxResources, type SandboxStatus, type SandboxRuntimeRequirements, type SandboxRuntime, type ExecutionStatus, type StreamReader, type SandboxStreamConfig, type SandboxCommand, type SandboxNetworkConfig, type SandboxTimeoutConfig, type SandboxCreateOptions, type Sandbox, type SandboxInfo, type SandboxRuntimeInfo, type SandboxSnapshotInfo, type SandboxSnapshotInfoPublic, type SandboxSnapshotInfoPrivate, type SandboxSnapshotUserInfo, type SandboxSnapshotOrgInfo, type SandboxUserInfo, type SandboxAgentInfo, type SandboxProjectInfo, type SandboxOrgInfo, type ListSandboxesParams, type ListSandboxesResponse, type ListRuntimesParams, type ListRuntimesResponse, type ExecuteOptions, type Execution, type SandboxRunOptions, type SandboxRunResult, type SandboxService, type FileToWrite, type SnapshotFileInfo, type SnapshotOrgInfo, type SnapshotUserInfo, type SnapshotInfo, type SnapshotCreateOptions, type SnapshotListParams, type SnapshotListResponse, type SnapshotService, SandboxError, } from './services/sandbox';
13
13
  export { buildUrl, toServiceException, toPayload, fromResponse } from './services/_util';
14
14
  export type { StandardSchemaV1 } from './standard_schema';
15
15
  export { toCamelCase, toPascalCase } from './string';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,mBAAmB;AACnB,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAExE,kBAAkB;AAClB,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAevC,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAWN,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACtB,sBAAsB,GACtB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAEN,uBAAuB,EACvB,0BAA0B,EAC1B,8BAA8B,EAC9B,iCAAiC,GAGjC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAON,oBAAoB,GACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAkBN,oBAAoB,GACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAIN,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,GACpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAEN,uBAAuB,EACvB,0BAA0B,EAC1B,8BAA8B,EAC9B,iCAAiC,GAGjC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAkCN,YAAY,GACZ,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAKzF,oBAAoB;AACpB,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAKrD,oBAAoB;AACpB,OAAO,EACN,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,EACrB,kBAAkB,GAElB,MAAM,oBAAoB,CAAC;AAE5B,4EAA4E"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,mBAAmB;AACnB,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAExE,kBAAkB;AAClB,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAevC,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAWN,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACtB,sBAAsB,GACtB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAEN,uBAAuB,EACvB,0BAA0B,EAC1B,8BAA8B,EAC9B,iCAAiC,GAGjC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAON,oBAAoB,GACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAkBN,oBAAoB,GACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAIN,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,GACpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAEN,uBAAuB,EACvB,0BAA0B,EAC1B,8BAA8B,EAC9B,iCAAiC,GAGjC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EA2CN,YAAY,GACZ,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAKzF,oBAAoB;AACpB,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAKrD,oBAAoB;AACpB,OAAO,EACN,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,EACrB,kBAAkB,GAElB,MAAM,oBAAoB,CAAC;AAE5B,4EAA4E"}
@@ -281,7 +281,27 @@ export interface SandboxTimeoutConfig {
281
281
  execution?: string;
282
282
  }
283
283
  /**
284
- * Options for creating a sandbox
284
+ * Options for creating a sandbox.
285
+ *
286
+ * **Important:** `snapshot` and `runtime`/`runtimeId` are mutually exclusive.
287
+ * - If you specify `snapshot`, do not specify `runtime` or `runtimeId` (the snapshot's runtime will be used)
288
+ * - If you specify `runtime` or `runtimeId`, do not specify `snapshot`
289
+ *
290
+ * This constraint is enforced at runtime by the API. Specifying both will result in an error:
291
+ * "cannot specify both snapshot and runtime; snapshot includes its own runtime"
292
+ *
293
+ * @example
294
+ * ```typescript
295
+ * // Create from runtime (default)
296
+ * const sandbox1 = await ctx.sandbox.create({
297
+ * runtime: 'bun:1'
298
+ * });
299
+ *
300
+ * // Create from snapshot (runtime is inherited from snapshot)
301
+ * const sandbox2 = await ctx.sandbox.create({
302
+ * snapshot: 'my-snapshot:latest'
303
+ * });
304
+ * ```
285
305
  */
286
306
  export interface SandboxCreateOptions {
287
307
  /**
@@ -292,11 +312,15 @@ export interface SandboxCreateOptions {
292
312
  /**
293
313
  * Runtime name (e.g., "bun:1", "python:3.14").
294
314
  * If not specified, defaults to "bun:1".
315
+ *
316
+ * **Note:** Cannot be specified together with `snapshot`.
295
317
  */
296
318
  runtime?: string;
297
319
  /**
298
320
  * Runtime ID (e.g., "srt_xxx").
299
321
  * Alternative to specifying runtime by name.
322
+ *
323
+ * **Note:** Cannot be specified together with `snapshot`.
300
324
  */
301
325
  runtimeId?: string;
302
326
  /**
@@ -340,6 +364,9 @@ export interface SandboxCreateOptions {
340
364
  /**
341
365
  * Snapshot ID or tag to restore from when creating the sandbox.
342
366
  * The sandbox will start with the filesystem state from the snapshot.
367
+ *
368
+ * **Note:** Cannot be specified together with `runtime` or `runtimeId`.
369
+ * When using a snapshot, the snapshot's runtime will be used automatically.
343
370
  */
344
371
  snapshot?: string;
345
372
  /**
@@ -728,6 +755,272 @@ export interface Execution {
728
755
  */
729
756
  stderrStreamUrl?: string;
730
757
  }
758
+ /**
759
+ * Information about a file in a snapshot
760
+ */
761
+ export interface SnapshotFileInfo {
762
+ /**
763
+ * File path within the snapshot
764
+ */
765
+ path: string;
766
+ /**
767
+ * File size in bytes
768
+ */
769
+ size: number;
770
+ /**
771
+ * SHA256 hash of the file contents
772
+ */
773
+ sha256: string;
774
+ /**
775
+ * MIME type of the file
776
+ */
777
+ contentType: string;
778
+ /**
779
+ * Unix file mode/permissions (e.g., 0o644)
780
+ */
781
+ mode: number;
782
+ }
783
+ /**
784
+ * Organization information for snapshots
785
+ */
786
+ export interface SnapshotOrgInfo {
787
+ /**
788
+ * Organization ID
789
+ */
790
+ id: string;
791
+ /**
792
+ * Organization name
793
+ */
794
+ name: string;
795
+ /**
796
+ * Organization slug for building full name
797
+ */
798
+ slug?: string | null;
799
+ }
800
+ /**
801
+ * User information for snapshots
802
+ */
803
+ export interface SnapshotUserInfo {
804
+ /**
805
+ * User ID
806
+ */
807
+ id: string;
808
+ /**
809
+ * User first name
810
+ */
811
+ firstName?: string | null;
812
+ /**
813
+ * User last name
814
+ */
815
+ lastName?: string | null;
816
+ }
817
+ /**
818
+ * Detailed information about a snapshot
819
+ */
820
+ export interface SnapshotInfo {
821
+ /**
822
+ * Unique identifier for the snapshot
823
+ */
824
+ snapshotId: string;
825
+ /**
826
+ * Runtime ID associated with this snapshot
827
+ */
828
+ runtimeId?: string | null;
829
+ /**
830
+ * Display name for the snapshot (URL-safe: letters, numbers, underscores, dashes)
831
+ */
832
+ name: string;
833
+ /**
834
+ * Full name with org slug for public snapshots (@slug/name:tag)
835
+ */
836
+ fullName?: string;
837
+ /**
838
+ * Description of the snapshot
839
+ */
840
+ description?: string | null;
841
+ /**
842
+ * Build message for the snapshot
843
+ */
844
+ message?: string | null;
845
+ /**
846
+ * Tag for the snapshot (defaults to "latest")
847
+ */
848
+ tag?: string | null;
849
+ /**
850
+ * Total size of the snapshot in bytes
851
+ */
852
+ sizeBytes: number;
853
+ /**
854
+ * Number of files in the snapshot
855
+ */
856
+ fileCount: number;
857
+ /**
858
+ * ID of the parent snapshot (for incremental snapshots)
859
+ */
860
+ parentSnapshotId?: string | null;
861
+ /**
862
+ * Whether the snapshot is publicly accessible
863
+ */
864
+ public?: boolean;
865
+ /**
866
+ * Organization name (for public snapshots)
867
+ */
868
+ orgName?: string;
869
+ /**
870
+ * Organization slug (for public snapshots)
871
+ */
872
+ orgSlug?: string;
873
+ /**
874
+ * Organization details (for public snapshots)
875
+ */
876
+ org?: SnapshotOrgInfo | null;
877
+ /**
878
+ * User who pushed the snapshot (for private snapshots)
879
+ */
880
+ user?: SnapshotUserInfo | null;
881
+ /**
882
+ * ISO timestamp when the snapshot was created
883
+ */
884
+ createdAt: string;
885
+ /**
886
+ * URL to download the snapshot archive
887
+ */
888
+ downloadUrl?: string;
889
+ /**
890
+ * List of files in the snapshot
891
+ */
892
+ files?: SnapshotFileInfo[] | null;
893
+ /**
894
+ * User-defined metadata key-value pairs
895
+ */
896
+ userMetadata?: Record<string, string> | null;
897
+ }
898
+ /**
899
+ * Options for creating a snapshot
900
+ */
901
+ export interface SnapshotCreateOptions {
902
+ /**
903
+ * Display name for the snapshot (letters, numbers, underscores, dashes only)
904
+ */
905
+ name?: string;
906
+ /**
907
+ * Description of the snapshot
908
+ */
909
+ description?: string;
910
+ /**
911
+ * Tag for the snapshot (defaults to "latest")
912
+ */
913
+ tag?: string;
914
+ /**
915
+ * Make the snapshot publicly accessible
916
+ */
917
+ public?: boolean;
918
+ }
919
+ /**
920
+ * Parameters for listing snapshots
921
+ */
922
+ export interface SnapshotListParams {
923
+ /**
924
+ * Filter by sandbox ID
925
+ */
926
+ sandboxId?: string;
927
+ /**
928
+ * Maximum number of snapshots to return
929
+ */
930
+ limit?: number;
931
+ /**
932
+ * Number of snapshots to skip for pagination
933
+ */
934
+ offset?: number;
935
+ }
936
+ /**
937
+ * Response from listing snapshots
938
+ */
939
+ export interface SnapshotListResponse {
940
+ /**
941
+ * List of snapshot entries
942
+ */
943
+ snapshots: SnapshotInfo[];
944
+ /**
945
+ * Total number of snapshots matching the query
946
+ */
947
+ total: number;
948
+ }
949
+ /**
950
+ * Service for managing sandbox snapshots
951
+ */
952
+ export interface SnapshotService {
953
+ /**
954
+ * Create a snapshot from a sandbox's current state
955
+ *
956
+ * @param sandboxId - ID of the sandbox to snapshot
957
+ * @param options - Optional snapshot configuration
958
+ * @returns The created snapshot information
959
+ *
960
+ * @example
961
+ * ```typescript
962
+ * const snapshot = await ctx.sandbox.snapshot.create(sandbox.id, {
963
+ * name: 'after-install',
964
+ * tag: 'v1.0',
965
+ * description: 'State after installing dependencies'
966
+ * });
967
+ * ```
968
+ */
969
+ create(sandboxId: string, options?: SnapshotCreateOptions): Promise<SnapshotInfo>;
970
+ /**
971
+ * Get detailed information about a snapshot
972
+ *
973
+ * @param snapshotId - ID of the snapshot to retrieve
974
+ * @returns Snapshot information including files and download URL
975
+ *
976
+ * @example
977
+ * ```typescript
978
+ * const details = await ctx.sandbox.snapshot.get(snapshot.snapshotId);
979
+ * console.log(`Snapshot has ${details.fileCount} files`);
980
+ * ```
981
+ */
982
+ get(snapshotId: string): Promise<SnapshotInfo>;
983
+ /**
984
+ * List snapshots with optional filtering
985
+ *
986
+ * @param params - Optional filter and pagination parameters
987
+ * @returns Paginated list of snapshots
988
+ *
989
+ * @example
990
+ * ```typescript
991
+ * const { snapshots, total } = await ctx.sandbox.snapshot.list({ limit: 10 });
992
+ * ```
993
+ */
994
+ list(params?: SnapshotListParams): Promise<SnapshotListResponse>;
995
+ /**
996
+ * Delete a snapshot
997
+ *
998
+ * @param snapshotId - ID of the snapshot to delete
999
+ *
1000
+ * @example
1001
+ * ```typescript
1002
+ * await ctx.sandbox.snapshot.delete(snapshot.snapshotId);
1003
+ * ```
1004
+ */
1005
+ delete(snapshotId: string): Promise<void>;
1006
+ /**
1007
+ * Add or update a tag on a snapshot
1008
+ *
1009
+ * @param snapshotId - ID of the snapshot to tag
1010
+ * @param tag - New tag name, or null to remove the tag
1011
+ * @returns Updated snapshot information
1012
+ *
1013
+ * @example
1014
+ * ```typescript
1015
+ * // Add a tag
1016
+ * await ctx.sandbox.snapshot.tag(snapshot.snapshotId, 'production');
1017
+ *
1018
+ * // Remove a tag
1019
+ * await ctx.sandbox.snapshot.tag(snapshot.snapshotId, null);
1020
+ * ```
1021
+ */
1022
+ tag(snapshotId: string, tag: string | null): Promise<SnapshotInfo>;
1023
+ }
731
1024
  /**
732
1025
  * Options for one-shot sandbox execution
733
1026
  */
@@ -824,6 +1117,31 @@ export interface SandboxService {
824
1117
  * @param sandboxId - sandbox identifier
825
1118
  */
826
1119
  destroy(sandboxId: string): Promise<void>;
1120
+ /**
1121
+ * Snapshot management operations for creating and managing sandbox snapshots
1122
+ *
1123
+ * @example
1124
+ * ```typescript
1125
+ * // Create a snapshot of a sandbox
1126
+ * const snapshot = await ctx.sandbox.snapshot.create(sandbox.id, {
1127
+ * name: 'after-install',
1128
+ * tag: 'v1.0'
1129
+ * });
1130
+ *
1131
+ * // List all snapshots
1132
+ * const { snapshots } = await ctx.sandbox.snapshot.list();
1133
+ *
1134
+ * // Get snapshot details
1135
+ * const details = await ctx.sandbox.snapshot.get(snapshot.snapshotId);
1136
+ *
1137
+ * // Tag a snapshot
1138
+ * await ctx.sandbox.snapshot.tag(snapshot.snapshotId, 'production');
1139
+ *
1140
+ * // Delete a snapshot
1141
+ * await ctx.sandbox.snapshot.delete(snapshot.snapshotId);
1142
+ * ```
1143
+ */
1144
+ snapshot: SnapshotService;
827
1145
  }
828
1146
  /**
829
1147
  * Structured error for sandbox operations
@@ -1 +1 @@
1
- {"version":3,"file":"sandbox.d.ts","sourceRoot":"","sources":["../../src/services/sandbox.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sandbox.d.ts","sourceRoot":"","sources":["../../src/services/sandbox.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"sandbox.js","sourceRoot":"","sources":["../../src/services/sandbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AA29B3C;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,eAAe,CAAC,cAAc,CAAC,EAGvD,CAAC"}
1
+ {"version":3,"file":"sandbox.js","sourceRoot":"","sources":["../../src/services/sandbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAw0C3C;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,eAAe,CAAC,cAAc,CAAC,EAGvD,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agentuity/core",
3
- "version": "0.1.31",
3
+ "version": "0.1.33",
4
4
  "license": "Apache-2.0",
5
5
  "author": "Agentuity employees and contributors",
6
6
  "type": "module",
@@ -37,7 +37,7 @@
37
37
  "zod": "^4.3.5"
38
38
  },
39
39
  "devDependencies": {
40
- "@agentuity/test-utils": "0.1.31",
40
+ "@agentuity/test-utils": "0.1.33",
41
41
  "@types/bun": "latest",
42
42
  "bun-types": "latest",
43
43
  "esbuild": "^0.25.0",
package/src/index.ts CHANGED
@@ -124,6 +124,15 @@ export {
124
124
  type SandboxRunResult,
125
125
  type SandboxService,
126
126
  type FileToWrite,
127
+ // Snapshot types
128
+ type SnapshotFileInfo,
129
+ type SnapshotOrgInfo,
130
+ type SnapshotUserInfo,
131
+ type SnapshotInfo,
132
+ type SnapshotCreateOptions,
133
+ type SnapshotListParams,
134
+ type SnapshotListResponse,
135
+ type SnapshotService,
127
136
  SandboxError,
128
137
  } from './services/sandbox';
129
138
  export { buildUrl, toServiceException, toPayload, fromResponse } from './services/_util';
@@ -342,7 +342,27 @@ export interface SandboxTimeoutConfig {
342
342
  }
343
343
 
344
344
  /**
345
- * Options for creating a sandbox
345
+ * Options for creating a sandbox.
346
+ *
347
+ * **Important:** `snapshot` and `runtime`/`runtimeId` are mutually exclusive.
348
+ * - If you specify `snapshot`, do not specify `runtime` or `runtimeId` (the snapshot's runtime will be used)
349
+ * - If you specify `runtime` or `runtimeId`, do not specify `snapshot`
350
+ *
351
+ * This constraint is enforced at runtime by the API. Specifying both will result in an error:
352
+ * "cannot specify both snapshot and runtime; snapshot includes its own runtime"
353
+ *
354
+ * @example
355
+ * ```typescript
356
+ * // Create from runtime (default)
357
+ * const sandbox1 = await ctx.sandbox.create({
358
+ * runtime: 'bun:1'
359
+ * });
360
+ *
361
+ * // Create from snapshot (runtime is inherited from snapshot)
362
+ * const sandbox2 = await ctx.sandbox.create({
363
+ * snapshot: 'my-snapshot:latest'
364
+ * });
365
+ * ```
346
366
  */
347
367
  export interface SandboxCreateOptions {
348
368
  /**
@@ -354,12 +374,16 @@ export interface SandboxCreateOptions {
354
374
  /**
355
375
  * Runtime name (e.g., "bun:1", "python:3.14").
356
376
  * If not specified, defaults to "bun:1".
377
+ *
378
+ * **Note:** Cannot be specified together with `snapshot`.
357
379
  */
358
380
  runtime?: string;
359
381
 
360
382
  /**
361
383
  * Runtime ID (e.g., "srt_xxx").
362
384
  * Alternative to specifying runtime by name.
385
+ *
386
+ * **Note:** Cannot be specified together with `snapshot`.
363
387
  */
364
388
  runtimeId?: string;
365
389
 
@@ -413,6 +437,9 @@ export interface SandboxCreateOptions {
413
437
  /**
414
438
  * Snapshot ID or tag to restore from when creating the sandbox.
415
439
  * The sandbox will start with the filesystem state from the snapshot.
440
+ *
441
+ * **Note:** Cannot be specified together with `runtime` or `runtimeId`.
442
+ * When using a snapshot, the snapshot's runtime will be used automatically.
416
443
  */
417
444
  snapshot?: string;
418
445
 
@@ -877,6 +904,318 @@ export interface Execution {
877
904
  stderrStreamUrl?: string;
878
905
  }
879
906
 
907
+ // ===== Snapshot Types =====
908
+
909
+ /**
910
+ * Information about a file in a snapshot
911
+ */
912
+ export interface SnapshotFileInfo {
913
+ /**
914
+ * File path within the snapshot
915
+ */
916
+ path: string;
917
+
918
+ /**
919
+ * File size in bytes
920
+ */
921
+ size: number;
922
+
923
+ /**
924
+ * SHA256 hash of the file contents
925
+ */
926
+ sha256: string;
927
+
928
+ /**
929
+ * MIME type of the file
930
+ */
931
+ contentType: string;
932
+
933
+ /**
934
+ * Unix file mode/permissions (e.g., 0o644)
935
+ */
936
+ mode: number;
937
+ }
938
+
939
+ /**
940
+ * Organization information for snapshots
941
+ */
942
+ export interface SnapshotOrgInfo {
943
+ /**
944
+ * Organization ID
945
+ */
946
+ id: string;
947
+
948
+ /**
949
+ * Organization name
950
+ */
951
+ name: string;
952
+
953
+ /**
954
+ * Organization slug for building full name
955
+ */
956
+ slug?: string | null;
957
+ }
958
+
959
+ /**
960
+ * User information for snapshots
961
+ */
962
+ export interface SnapshotUserInfo {
963
+ /**
964
+ * User ID
965
+ */
966
+ id: string;
967
+
968
+ /**
969
+ * User first name
970
+ */
971
+ firstName?: string | null;
972
+
973
+ /**
974
+ * User last name
975
+ */
976
+ lastName?: string | null;
977
+ }
978
+
979
+ /**
980
+ * Detailed information about a snapshot
981
+ */
982
+ export interface SnapshotInfo {
983
+ /**
984
+ * Unique identifier for the snapshot
985
+ */
986
+ snapshotId: string;
987
+
988
+ /**
989
+ * Runtime ID associated with this snapshot
990
+ */
991
+ runtimeId?: string | null;
992
+
993
+ /**
994
+ * Display name for the snapshot (URL-safe: letters, numbers, underscores, dashes)
995
+ */
996
+ name: string;
997
+
998
+ /**
999
+ * Full name with org slug for public snapshots (@slug/name:tag)
1000
+ */
1001
+ fullName?: string;
1002
+
1003
+ /**
1004
+ * Description of the snapshot
1005
+ */
1006
+ description?: string | null;
1007
+
1008
+ /**
1009
+ * Build message for the snapshot
1010
+ */
1011
+ message?: string | null;
1012
+
1013
+ /**
1014
+ * Tag for the snapshot (defaults to "latest")
1015
+ */
1016
+ tag?: string | null;
1017
+
1018
+ /**
1019
+ * Total size of the snapshot in bytes
1020
+ */
1021
+ sizeBytes: number;
1022
+
1023
+ /**
1024
+ * Number of files in the snapshot
1025
+ */
1026
+ fileCount: number;
1027
+
1028
+ /**
1029
+ * ID of the parent snapshot (for incremental snapshots)
1030
+ */
1031
+ parentSnapshotId?: string | null;
1032
+
1033
+ /**
1034
+ * Whether the snapshot is publicly accessible
1035
+ */
1036
+ public?: boolean;
1037
+
1038
+ /**
1039
+ * Organization name (for public snapshots)
1040
+ */
1041
+ orgName?: string;
1042
+
1043
+ /**
1044
+ * Organization slug (for public snapshots)
1045
+ */
1046
+ orgSlug?: string;
1047
+
1048
+ /**
1049
+ * Organization details (for public snapshots)
1050
+ */
1051
+ org?: SnapshotOrgInfo | null;
1052
+
1053
+ /**
1054
+ * User who pushed the snapshot (for private snapshots)
1055
+ */
1056
+ user?: SnapshotUserInfo | null;
1057
+
1058
+ /**
1059
+ * ISO timestamp when the snapshot was created
1060
+ */
1061
+ createdAt: string;
1062
+
1063
+ /**
1064
+ * URL to download the snapshot archive
1065
+ */
1066
+ downloadUrl?: string;
1067
+
1068
+ /**
1069
+ * List of files in the snapshot
1070
+ */
1071
+ files?: SnapshotFileInfo[] | null;
1072
+
1073
+ /**
1074
+ * User-defined metadata key-value pairs
1075
+ */
1076
+ userMetadata?: Record<string, string> | null;
1077
+ }
1078
+
1079
+ /**
1080
+ * Options for creating a snapshot
1081
+ */
1082
+ export interface SnapshotCreateOptions {
1083
+ /**
1084
+ * Display name for the snapshot (letters, numbers, underscores, dashes only)
1085
+ */
1086
+ name?: string;
1087
+
1088
+ /**
1089
+ * Description of the snapshot
1090
+ */
1091
+ description?: string;
1092
+
1093
+ /**
1094
+ * Tag for the snapshot (defaults to "latest")
1095
+ */
1096
+ tag?: string;
1097
+
1098
+ /**
1099
+ * Make the snapshot publicly accessible
1100
+ */
1101
+ public?: boolean;
1102
+ }
1103
+
1104
+ /**
1105
+ * Parameters for listing snapshots
1106
+ */
1107
+ export interface SnapshotListParams {
1108
+ /**
1109
+ * Filter by sandbox ID
1110
+ */
1111
+ sandboxId?: string;
1112
+
1113
+ /**
1114
+ * Maximum number of snapshots to return
1115
+ */
1116
+ limit?: number;
1117
+
1118
+ /**
1119
+ * Number of snapshots to skip for pagination
1120
+ */
1121
+ offset?: number;
1122
+ }
1123
+
1124
+ /**
1125
+ * Response from listing snapshots
1126
+ */
1127
+ export interface SnapshotListResponse {
1128
+ /**
1129
+ * List of snapshot entries
1130
+ */
1131
+ snapshots: SnapshotInfo[];
1132
+
1133
+ /**
1134
+ * Total number of snapshots matching the query
1135
+ */
1136
+ total: number;
1137
+ }
1138
+
1139
+ /**
1140
+ * Service for managing sandbox snapshots
1141
+ */
1142
+ export interface SnapshotService {
1143
+ /**
1144
+ * Create a snapshot from a sandbox's current state
1145
+ *
1146
+ * @param sandboxId - ID of the sandbox to snapshot
1147
+ * @param options - Optional snapshot configuration
1148
+ * @returns The created snapshot information
1149
+ *
1150
+ * @example
1151
+ * ```typescript
1152
+ * const snapshot = await ctx.sandbox.snapshot.create(sandbox.id, {
1153
+ * name: 'after-install',
1154
+ * tag: 'v1.0',
1155
+ * description: 'State after installing dependencies'
1156
+ * });
1157
+ * ```
1158
+ */
1159
+ create(sandboxId: string, options?: SnapshotCreateOptions): Promise<SnapshotInfo>;
1160
+
1161
+ /**
1162
+ * Get detailed information about a snapshot
1163
+ *
1164
+ * @param snapshotId - ID of the snapshot to retrieve
1165
+ * @returns Snapshot information including files and download URL
1166
+ *
1167
+ * @example
1168
+ * ```typescript
1169
+ * const details = await ctx.sandbox.snapshot.get(snapshot.snapshotId);
1170
+ * console.log(`Snapshot has ${details.fileCount} files`);
1171
+ * ```
1172
+ */
1173
+ get(snapshotId: string): Promise<SnapshotInfo>;
1174
+
1175
+ /**
1176
+ * List snapshots with optional filtering
1177
+ *
1178
+ * @param params - Optional filter and pagination parameters
1179
+ * @returns Paginated list of snapshots
1180
+ *
1181
+ * @example
1182
+ * ```typescript
1183
+ * const { snapshots, total } = await ctx.sandbox.snapshot.list({ limit: 10 });
1184
+ * ```
1185
+ */
1186
+ list(params?: SnapshotListParams): Promise<SnapshotListResponse>;
1187
+
1188
+ /**
1189
+ * Delete a snapshot
1190
+ *
1191
+ * @param snapshotId - ID of the snapshot to delete
1192
+ *
1193
+ * @example
1194
+ * ```typescript
1195
+ * await ctx.sandbox.snapshot.delete(snapshot.snapshotId);
1196
+ * ```
1197
+ */
1198
+ delete(snapshotId: string): Promise<void>;
1199
+
1200
+ /**
1201
+ * Add or update a tag on a snapshot
1202
+ *
1203
+ * @param snapshotId - ID of the snapshot to tag
1204
+ * @param tag - New tag name, or null to remove the tag
1205
+ * @returns Updated snapshot information
1206
+ *
1207
+ * @example
1208
+ * ```typescript
1209
+ * // Add a tag
1210
+ * await ctx.sandbox.snapshot.tag(snapshot.snapshotId, 'production');
1211
+ *
1212
+ * // Remove a tag
1213
+ * await ctx.sandbox.snapshot.tag(snapshot.snapshotId, null);
1214
+ * ```
1215
+ */
1216
+ tag(snapshotId: string, tag: string | null): Promise<SnapshotInfo>;
1217
+ }
1218
+
880
1219
  /**
881
1220
  * Options for one-shot sandbox execution
882
1221
  */
@@ -983,6 +1322,32 @@ export interface SandboxService {
983
1322
  * @param sandboxId - sandbox identifier
984
1323
  */
985
1324
  destroy(sandboxId: string): Promise<void>;
1325
+
1326
+ /**
1327
+ * Snapshot management operations for creating and managing sandbox snapshots
1328
+ *
1329
+ * @example
1330
+ * ```typescript
1331
+ * // Create a snapshot of a sandbox
1332
+ * const snapshot = await ctx.sandbox.snapshot.create(sandbox.id, {
1333
+ * name: 'after-install',
1334
+ * tag: 'v1.0'
1335
+ * });
1336
+ *
1337
+ * // List all snapshots
1338
+ * const { snapshots } = await ctx.sandbox.snapshot.list();
1339
+ *
1340
+ * // Get snapshot details
1341
+ * const details = await ctx.sandbox.snapshot.get(snapshot.snapshotId);
1342
+ *
1343
+ * // Tag a snapshot
1344
+ * await ctx.sandbox.snapshot.tag(snapshot.snapshotId, 'production');
1345
+ *
1346
+ * // Delete a snapshot
1347
+ * await ctx.sandbox.snapshot.delete(snapshot.snapshotId);
1348
+ * ```
1349
+ */
1350
+ snapshot: SnapshotService;
986
1351
  }
987
1352
 
988
1353
  /**