@mastra/e2b 0.14.2-alpha.0 → 0.15.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/dist/_types/@internal_workspace/dist/file-commands.d.ts +69 -0
- package/dist/_types/@internal_workspace/dist/files-api-filesystem.d.ts +85 -0
- package/dist/_types/@internal_workspace/dist/index.d.ts +5 -0
- package/dist/_types/@internal_workspace/dist/repo-clone.d.ts +22 -0
- package/dist/_types/@internal_workspace/dist/setup-marker.d.ts +56 -0
- package/dist/_types/@internal_workspace/package.json +1 -0
- package/dist/index.cjs +535 -90
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +537 -93
- package/dist/index.js.map +1 -1
- package/dist/sandbox/filesystem.d.ts +31 -0
- package/dist/sandbox/filesystem.d.ts.map +1 -0
- package/dist/sandbox/index.d.ts +8 -0
- package/dist/sandbox/index.d.ts.map +1 -1
- package/package.json +10 -11
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { FilesApiFilesystem } from '../_types/@internal_workspace/dist/index.js';
|
|
2
|
+
import type { FilesApi, FilesApiErrorKind, FilesCommandResult } from '../_types/@internal_workspace/dist/index.js';
|
|
3
|
+
import type { ProviderStatus } from '@mastra/core/workspace';
|
|
4
|
+
import type { E2BSandbox } from './index.js';
|
|
5
|
+
/**
|
|
6
|
+
* The disk of an {@link E2BSandbox}, read and written through E2B's files API
|
|
7
|
+
* (`sandbox.e2b.files`). Each operation starts the sandbox if needed, and each
|
|
8
|
+
* files call is retried once on a sandbox that died server-side, like
|
|
9
|
+
* `executeCommand`. Copies, appends and no-clobber writes and moves run as one
|
|
10
|
+
* shell command in the VM, so they are atomic and file bytes don't round-trip
|
|
11
|
+
* through the host. Paths are absolute inside the sandbox; this class does not
|
|
12
|
+
* confine paths or symlinks to any root.
|
|
13
|
+
*/
|
|
14
|
+
export declare class E2BSandboxFilesystem extends FilesApiFilesystem {
|
|
15
|
+
#private;
|
|
16
|
+
readonly id: string;
|
|
17
|
+
readonly name = "E2BSandboxFilesystem";
|
|
18
|
+
readonly provider = "e2b";
|
|
19
|
+
status: ProviderStatus;
|
|
20
|
+
constructor(sandbox: E2BSandbox);
|
|
21
|
+
/**
|
|
22
|
+
* Wrap each files call in `retryOnDead`, so a sandbox that died mid-operation
|
|
23
|
+
* is restarted and only the call that failed runs again; the calls before it
|
|
24
|
+
* are never replayed. If the sandbox was killed and replaced rather than
|
|
25
|
+
* paused, the rest of a multi-call operation runs against the new sandbox's disk.
|
|
26
|
+
*/
|
|
27
|
+
protected runFiles<T>(_operation: string, fn: (files: FilesApi) => Promise<T>): Promise<T>;
|
|
28
|
+
protected runCommand(operation: string, script: string): Promise<FilesCommandResult>;
|
|
29
|
+
protected errorKind(error: unknown): FilesApiErrorKind | undefined;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=filesystem.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filesystem.d.ts","sourceRoot":"","sources":["../../src/sandbox/filesystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,QAAQ,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC3F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAI7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAW1C;;;;;;;;GAQG;AACH,qBAAa,oBAAqB,SAAQ,kBAAkB;;IAC1D,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,0BAA0B;IACvC,QAAQ,CAAC,QAAQ,SAAS;IAC1B,MAAM,EAAE,cAAc,CAAW;IAIjC,YAAY,OAAO,EAAE,UAAU,EAI9B;IAED;;;;;OAKG;IACH,UAAgB,QAAQ,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAc/F;IAED,SAAS,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAInF;IAED,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,iBAAiB,GAAG,SAAS,CAUjE;CACF"}
|
package/dist/sandbox/index.d.ts
CHANGED
|
@@ -19,6 +19,7 @@ import { MastraSandbox } from '@mastra/core/workspace';
|
|
|
19
19
|
import { Sandbox } from 'e2b';
|
|
20
20
|
import type { SandboxConnectOpts, SandboxLifecycle, SandboxNetworkOpts, SandboxOpts } from 'e2b';
|
|
21
21
|
import type { TemplateSpec } from '../utils/template.js';
|
|
22
|
+
import { E2BSandboxFilesystem } from './filesystem.js';
|
|
22
23
|
import { E2BProcessManager } from './process-manager.js';
|
|
23
24
|
/**
|
|
24
25
|
* E2B sandbox provider configuration.
|
|
@@ -161,6 +162,7 @@ export declare class E2BSandbox extends MastraSandbox<Sandbox> {
|
|
|
161
162
|
protected _sandbox: Sandbox | null;
|
|
162
163
|
private _createdAt;
|
|
163
164
|
private _isRetrying;
|
|
165
|
+
private _filesystem?;
|
|
164
166
|
private readonly timeout;
|
|
165
167
|
protected readonly templateSpec?: TemplateSpec;
|
|
166
168
|
private readonly metadata;
|
|
@@ -267,6 +269,12 @@ export declare class E2BSandbox extends MastraSandbox<Sandbox> {
|
|
|
267
269
|
*/
|
|
268
270
|
destroy(): Promise<void>;
|
|
269
271
|
getInfo(): Promise<SandboxInfo>;
|
|
272
|
+
/**
|
|
273
|
+
* The sandbox's disk through E2B's files API: one request per operation
|
|
274
|
+
* instead of a shell command. Paths are absolute inside the sandbox and are
|
|
275
|
+
* not confined to any root.
|
|
276
|
+
*/
|
|
277
|
+
get filesystem(): E2BSandboxFilesystem;
|
|
270
278
|
/**
|
|
271
279
|
* Bulk-write files into the sandbox filesystem via the SDK's native upload.
|
|
272
280
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sandbox/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,KAAK,EACV,WAAW,EACX,mBAAmB,EACnB,WAAW,EAEX,cAAc,EACd,YAAY,EACZ,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EAEpB,MAAM,wBAAwB,CAAC;AAEhC;;GAEG;AACH,KAAK,kBAAkB,GAAG,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE;IAAE,mBAAmB,EAAE,MAAM,CAAC;IAAC,cAAc,CAAC,EAAE,cAAc,CAAA;CAAE,KAAK,MAAM,CAAC,CAAC;AACxH,OAAO,EAAE,aAAa,EAA8D,MAAM,wBAAwB,CAAC;AACnH,OAAO,EAAE,OAAO,EAAY,MAAM,KAAK,CAAC;AACxC,OAAO,KAAK,EAEV,kBAAkB,EAElB,gBAAgB,EAChB,kBAAkB,EAClB,WAAW,EAGZ,MAAM,KAAK,CAAC;AAEb,OAAO,KAAK,EAAmE,YAAY,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sandbox/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mastra/e2b",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.15.0",
|
|
4
4
|
"description": "E2B cloud sandbox provider for Mastra workspaces",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -28,17 +28,16 @@
|
|
|
28
28
|
"@vitest/coverage-v8": "4.1.11",
|
|
29
29
|
"@vitest/ui": "4.1.11",
|
|
30
30
|
"dotenv": "^17.4.2",
|
|
31
|
-
"eslint": "^10.7.0",
|
|
32
31
|
"tsdown": "0.22.9",
|
|
33
32
|
"typescript": "^7.0.2",
|
|
34
33
|
"vitest": "4.1.11",
|
|
35
|
-
"@internal/lint": "0.0.
|
|
36
|
-
"@internal/
|
|
37
|
-
"@
|
|
38
|
-
"@
|
|
39
|
-
"@mastra/
|
|
40
|
-
"@
|
|
41
|
-
"@
|
|
34
|
+
"@internal/lint": "0.0.145",
|
|
35
|
+
"@internal/workspace": "0.0.17",
|
|
36
|
+
"@mastra/gcs": "0.3.4",
|
|
37
|
+
"@internal/workspace-test-utils": "0.0.89",
|
|
38
|
+
"@mastra/core": "1.79.0",
|
|
39
|
+
"@mastra/s3": "0.6.4",
|
|
40
|
+
"@internal/types-builder": "0.0.120"
|
|
42
41
|
},
|
|
43
42
|
"peerDependencies": {
|
|
44
43
|
"@mastra/core": ">=1.67.0-0 <2.0.0-0"
|
|
@@ -66,7 +65,7 @@
|
|
|
66
65
|
"test:watch": "vitest watch",
|
|
67
66
|
"test": "vitest run ./src/**/*.integration.test.ts",
|
|
68
67
|
"test:cloud": "pnpm test",
|
|
69
|
-
"lint": "oxlint
|
|
70
|
-
"lint:fix": "oxlint --
|
|
68
|
+
"lint": "oxlint --type-aware .",
|
|
69
|
+
"lint:fix": "oxlint --type-aware --fix ."
|
|
71
70
|
}
|
|
72
71
|
}
|