experimental-agent 0.2.3 → 0.3.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.
Files changed (69) hide show
  1. package/README.md +55 -254
  2. package/dist/adapter-BigchkkI.d.mts +201 -0
  3. package/dist/adapter-BigchkkI.d.ts +201 -0
  4. package/dist/chunk-BFFNCESS.mjs +302 -0
  5. package/dist/chunk-C4VSUEY2.mjs +72 -0
  6. package/dist/chunk-DOD4MC5D.mjs +196 -0
  7. package/dist/chunk-ELWIUJUK.mjs +96 -0
  8. package/dist/chunk-GKASMIBR.mjs +50 -0
  9. package/dist/chunk-JO3JDCH5.mjs +107 -0
  10. package/dist/chunk-MSWINCCM.mjs +128 -0
  11. package/dist/chunk-RT72C52I.mjs +324 -0
  12. package/dist/chunk-ZUFJJYC4.mjs +150 -0
  13. package/dist/{handler-FRUPZ4LX.mjs → docker-QPCLWLYR.mjs} +3 -4
  14. package/dist/entry-BmQ8FO-5.d.ts +36 -0
  15. package/dist/entry-CZd9aAwn.d.mts +36 -0
  16. package/dist/index.d.mts +415 -18
  17. package/dist/index.d.ts +415 -18
  18. package/dist/index.js +3036 -5494
  19. package/dist/index.mjs +3264 -1142
  20. package/dist/lifecycle-workflow-steps.d.mts +5 -0
  21. package/dist/lifecycle-workflow-steps.d.ts +5 -0
  22. package/dist/lifecycle-workflow-steps.js +263 -0
  23. package/dist/lifecycle-workflow-steps.mjs +9 -0
  24. package/dist/lifecycle-workflow.d.mts +6 -6
  25. package/dist/lifecycle-workflow.d.ts +6 -6
  26. package/dist/lifecycle-workflow.js +192 -905
  27. package/dist/lifecycle-workflow.mjs +3 -1
  28. package/dist/local-KJ3BSIFJ.mjs +8 -0
  29. package/dist/next/loader.js +27 -6
  30. package/dist/next/loader.mjs +1 -1
  31. package/dist/next.js +27 -6
  32. package/dist/next.mjs +1 -1
  33. package/dist/{process-manager-JDUJDYGU.mjs → process-manager-WQHAIVRB.mjs} +1 -1
  34. package/dist/sandbox.d.mts +6 -0
  35. package/dist/sandbox.d.ts +6 -0
  36. package/dist/sandbox.js +1070 -0
  37. package/dist/sandbox.mjs +19 -0
  38. package/dist/steps-BnkRQKlc.d.ts +173 -0
  39. package/dist/steps-u-mGDbP_.d.mts +173 -0
  40. package/dist/storage.d.mts +11 -0
  41. package/dist/storage.d.ts +11 -0
  42. package/dist/storage.js +234 -0
  43. package/dist/storage.mjs +12 -0
  44. package/dist/vercel-QZ6INPMV.mjs +11 -0
  45. package/package.json +26 -5
  46. package/dist/agent-workflow.d.mts +0 -30
  47. package/dist/agent-workflow.d.ts +0 -30
  48. package/dist/agent-workflow.js +0 -5433
  49. package/dist/agent-workflow.mjs +0 -14
  50. package/dist/chunk-7M6UPURS.mjs +0 -75
  51. package/dist/chunk-AML2VCQS.mjs +0 -1287
  52. package/dist/chunk-FQ67QZOI.mjs +0 -75
  53. package/dist/chunk-NO7RHGTH.mjs +0 -2367
  54. package/dist/chunk-NXDVNJRS.mjs +0 -106
  55. package/dist/chunk-OZZVS6L5.mjs +0 -139
  56. package/dist/chunk-SJVFFE5D.mjs +0 -402
  57. package/dist/chunk-TAXLUVIC.mjs +0 -1
  58. package/dist/chunk-TGNVXSMX.mjs +0 -399
  59. package/dist/chunk-YRYXN7W4.mjs +0 -48
  60. package/dist/chunk-ZIAHPXOJ.mjs +0 -595
  61. package/dist/client-BKA7XBGW.mjs +0 -15
  62. package/dist/client-CEeSFGva.d.mts +0 -2376
  63. package/dist/client-CEeSFGva.d.ts +0 -2376
  64. package/dist/docker-FB2MJTHJ.mjs +0 -12
  65. package/dist/local-fs-handlers-SYOCKTPN.mjs +0 -447
  66. package/dist/sandbox-UENKQV3T.mjs +0 -21
  67. package/dist/storage-LSDMRW73.mjs +0 -20
  68. package/dist/vercel-SD3JTECG.mjs +0 -20
  69. package/dist/vercel-sdk-I6A4MVAN.mjs +0 -8
@@ -0,0 +1,150 @@
1
+ // src/sandbox/bindings/local.ts
2
+ import { ulid } from "ulid";
3
+ var LocalSandboxInstance = class {
4
+ cwd;
5
+ basePath;
6
+ processes = /* @__PURE__ */ new Map();
7
+ constructor(basePath) {
8
+ this.basePath = basePath;
9
+ this.cwd = basePath;
10
+ }
11
+ async exec(opts) {
12
+ const { spawn } = await import("child_process");
13
+ const path = await import("path");
14
+ const commandId = `command_${ulid()}`;
15
+ const finalCmd = opts.sudo ? "sudo" : opts.command;
16
+ const finalArgs = opts.sudo ? [opts.command, ...opts.args ?? []] : opts.args ?? [];
17
+ const child = spawn(finalCmd, finalArgs, {
18
+ cwd: opts.cwd ? path.resolve(this.basePath, opts.cwd) : this.basePath,
19
+ env: opts.env ? { ...process.env, ...opts.env } : void 0,
20
+ signal: opts.signal
21
+ });
22
+ this.processes.set(commandId, child);
23
+ let stdout = "";
24
+ let stderr = "";
25
+ const logQueue = [];
26
+ let logResolve = null;
27
+ let closed = false;
28
+ child.stdout.on("data", (data) => {
29
+ const str = String(data);
30
+ stdout += str;
31
+ logQueue.push({ stream: "stdout", data: str });
32
+ logResolve?.();
33
+ });
34
+ child.stderr.on("data", (data) => {
35
+ const str = String(data);
36
+ stderr += str;
37
+ logQueue.push({ stream: "stderr", data: str });
38
+ logResolve?.();
39
+ });
40
+ const result = new Promise((resolve, reject) => {
41
+ child.on("error", (err) => {
42
+ this.processes.delete(commandId);
43
+ closed = true;
44
+ logResolve?.();
45
+ reject(err);
46
+ });
47
+ child.on("close", (code) => {
48
+ this.processes.delete(commandId);
49
+ closed = true;
50
+ logResolve?.();
51
+ resolve({ stdout, stderr, exitCode: code ?? 0 });
52
+ });
53
+ });
54
+ async function* logs() {
55
+ while (!closed || logQueue.length > 0) {
56
+ const entry = logQueue.shift();
57
+ if (entry) {
58
+ yield entry;
59
+ } else if (!closed) {
60
+ await new Promise((r) => {
61
+ logResolve = r;
62
+ });
63
+ logResolve = null;
64
+ }
65
+ }
66
+ }
67
+ return { commandId, logs, result };
68
+ }
69
+ async readFile(opts) {
70
+ const fs = await import("fs/promises");
71
+ const path = await import("path");
72
+ const fullPath = path.resolve(this.basePath, opts.path);
73
+ try {
74
+ return await fs.readFile(fullPath);
75
+ } catch (e) {
76
+ if (e instanceof Error && "code" in e && e.code === "ENOENT") {
77
+ return null;
78
+ }
79
+ throw e;
80
+ }
81
+ }
82
+ async writeFiles(opts) {
83
+ const fs = await import("fs/promises");
84
+ const pathMod = await import("path");
85
+ for (const file of opts.files) {
86
+ const fullPath = pathMod.resolve(this.basePath, opts.destPath, file.path);
87
+ await fs.mkdir(pathMod.dirname(fullPath), { recursive: true });
88
+ await fs.writeFile(fullPath, file.content);
89
+ if (file.path.endsWith(".sh")) {
90
+ await fs.chmod(fullPath, 493);
91
+ }
92
+ }
93
+ }
94
+ // biome-ignore lint/suspicious/useAwait: .
95
+ async getDomain(opts) {
96
+ return `http://localhost:${opts.port}`;
97
+ }
98
+ // biome-ignore lint/suspicious/useAwait: .
99
+ async kill(opts) {
100
+ const child = this.processes.get(opts.commandId);
101
+ if (child) {
102
+ child.kill("SIGTERM");
103
+ this.processes.delete(opts.commandId);
104
+ }
105
+ }
106
+ // biome-ignore lint/suspicious/useAwait: .
107
+ async getStatus() {
108
+ return "running";
109
+ }
110
+ async start() {
111
+ }
112
+ // biome-ignore lint/suspicious/useAwait: .
113
+ async stop() {
114
+ throw new Error("stop is not supported for local sandboxes");
115
+ }
116
+ // biome-ignore lint/suspicious/useAwait: .
117
+ async snapshot() {
118
+ throw new Error("snapshot is not supported for local sandboxes");
119
+ }
120
+ // biome-ignore lint/suspicious/useAwait: .
121
+ async updateNetworkPolicy() {
122
+ throw new Error("updateNetworkPolicy is not supported for local sandboxes");
123
+ }
124
+ };
125
+ function localSandbox() {
126
+ return {
127
+ type: "local",
128
+ async create(opts) {
129
+ const basePath = opts.setup.config?.cwd ?? process.cwd();
130
+ const instance = new LocalSandboxInstance(basePath);
131
+ if (opts.setup?.run) {
132
+ await opts.setup.run(instance);
133
+ }
134
+ return {
135
+ instance,
136
+ metadata: { basePath, pid: process.pid }
137
+ };
138
+ },
139
+ // biome-ignore lint/suspicious/useAwait: .
140
+ async connect(opts) {
141
+ const basePath = opts.metadata.basePath;
142
+ return new LocalSandboxInstance(basePath);
143
+ }
144
+ };
145
+ }
146
+
147
+ export {
148
+ localSandbox
149
+ };
150
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL3NhbmRib3gvYmluZGluZ3MvbG9jYWwudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImltcG9ydCB7IHVsaWQgfSBmcm9tIFwidWxpZFwiO1xuaW1wb3J0IHR5cGUgeyBFeGVjUmVzdWx0LCBTYW5kYm94QmluZGluZywgU2FuZGJveEluc3RhbmNlIH0gZnJvbSBcIi4uL2FkYXB0ZXJcIjtcblxuZXhwb3J0IHR5cGUgTG9jYWxCaW5kaW5nQ29uZmlnID0ge1xuICBjd2Q/OiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBMb2NhbEJpbmRpbmdNZXRhZGF0YSA9IHtcbiAgYmFzZVBhdGg6IHN0cmluZztcbiAgcGlkOiBudW1iZXI7XG59O1xuXG5jbGFzcyBMb2NhbFNhbmRib3hJbnN0YW5jZSBpbXBsZW1lbnRzIFNhbmRib3hJbnN0YW5jZSB7XG4gIHJlYWRvbmx5IGN3ZDogc3RyaW5nO1xuICBwcml2YXRlIHJlYWRvbmx5IGJhc2VQYXRoOiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgcHJvY2Vzc2VzID0gbmV3IE1hcDxcbiAgICBzdHJpbmcsXG4gICAgaW1wb3J0KFwibm9kZTpjaGlsZF9wcm9jZXNzXCIpLkNoaWxkUHJvY2Vzc1xuICA+KCk7XG5cbiAgY29uc3RydWN0b3IoYmFzZVBhdGg6IHN0cmluZykge1xuICAgIHRoaXMuYmFzZVBhdGggPSBiYXNlUGF0aDtcbiAgICB0aGlzLmN3ZCA9IGJhc2VQYXRoO1xuICB9XG5cbiAgYXN5bmMgZXhlYyhvcHRzOiB7XG4gICAgY29tbWFuZDogc3RyaW5nO1xuICAgIGFyZ3M/OiBzdHJpbmdbXTtcbiAgICBjd2Q/OiBzdHJpbmc7XG4gICAgZW52PzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgICBzdWRvPzogYm9vbGVhbjtcbiAgICBzaWduYWw/OiBBYm9ydFNpZ25hbDtcbiAgfSk6IFByb21pc2U8RXhlY1Jlc3VsdD4ge1xuICAgIGNvbnN0IHsgc3Bhd24gfSA9IGF3YWl0IGltcG9ydChcIm5vZGU6Y2hpbGRfcHJvY2Vzc1wiKTtcbiAgICBjb25zdCBwYXRoID0gYXdhaXQgaW1wb3J0KFwibm9kZTpwYXRoXCIpO1xuICAgIGNvbnN0IGNvbW1hbmRJZCA9IGBjb21tYW5kXyR7dWxpZCgpfWA7XG5cbiAgICBjb25zdCBmaW5hbENtZCA9IG9wdHMuc3VkbyA/IFwic3Vkb1wiIDogb3B0cy5jb21tYW5kO1xuICAgIGNvbnN0IGZpbmFsQXJncyA9IG9wdHMuc3Vkb1xuICAgICAgPyBbb3B0cy5jb21tYW5kLCAuLi4ob3B0cy5hcmdzID8/IFtdKV1cbiAgICAgIDogKG9wdHMuYXJncyA/PyBbXSk7XG5cbiAgICBjb25zdCBjaGlsZCA9IHNwYXduKGZpbmFsQ21kLCBmaW5hbEFyZ3MsIHtcbiAgICAgIGN3ZDogb3B0cy5jd2QgPyBwYXRoLnJlc29sdmUodGhpcy5iYXNlUGF0aCwgb3B0cy5jd2QpIDogdGhpcy5iYXNlUGF0aCxcbiAgICAgIGVudjogb3B0cy5lbnYgPyB7IC4uLnByb2Nlc3MuZW52LCAuLi5vcHRzLmVudiB9IDogdW5kZWZpbmVkLFxuICAgICAgc2lnbmFsOiBvcHRzLnNpZ25hbCxcbiAgICB9KTtcblxuICAgIHRoaXMucHJvY2Vzc2VzLnNldChjb21tYW5kSWQsIGNoaWxkKTtcblxuICAgIGxldCBzdGRvdXQgPSBcIlwiO1xuICAgIGxldCBzdGRlcnIgPSBcIlwiO1xuICAgIGNvbnN0IGxvZ1F1ZXVlOiB7IHN0cmVhbTogXCJzdGRvdXRcIiB8IFwic3RkZXJyXCI7IGRhdGE6IHN0cmluZyB9W10gPSBbXTtcbiAgICBsZXQgbG9nUmVzb2x2ZTogKCgpID0+IHZvaWQpIHwgbnVsbCA9IG51bGw7XG4gICAgbGV0IGNsb3NlZCA9IGZhbHNlO1xuXG4gICAgY2hpbGQuc3Rkb3V0Lm9uKFwiZGF0YVwiLCAoZGF0YTogc3RyaW5nIHwgQnVmZmVyKSA9PiB7XG4gICAgICBjb25zdCBzdHIgPSBTdHJpbmcoZGF0YSk7XG4gICAgICBzdGRvdXQgKz0gc3RyO1xuICAgICAgbG9nUXVldWUucHVzaCh7IHN0cmVhbTogXCJzdGRvdXRcIiwgZGF0YTogc3RyIH0pO1xuICAgICAgbG9nUmVzb2x2ZT8uKCk7XG4gICAgfSk7XG5cbiAgICBjaGlsZC5zdGRlcnIub24oXCJkYXRhXCIsIChkYXRhOiBzdHJpbmcgfCBCdWZmZXIpID0+IHtcbiAgICAgIGNvbnN0IHN0ciA9IFN0cmluZyhkYXRhKTtcbiAgICAgIHN0ZGVyciArPSBzdHI7XG4gICAgICBsb2dRdWV1ZS5wdXNoKHsgc3RyZWFtOiBcInN0ZGVyclwiLCBkYXRhOiBzdHIgfSk7XG4gICAgICBsb2dSZXNvbHZlPy4oKTtcbiAgICB9KTtcblxuICAgIGNvbnN0IHJlc3VsdCA9IG5ldyBQcm9taXNlPHtcbiAgICAgIHN0ZG91dDogc3RyaW5nO1xuICAgICAgc3RkZXJyOiBzdHJpbmc7XG4gICAgICBleGl0Q29kZTogbnVtYmVyO1xuICAgIH0+KChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIGNoaWxkLm9uKFwiZXJyb3JcIiwgKGVycikgPT4ge1xuICAgICAgICB0aGlzLnByb2Nlc3Nlcy5kZWxldGUoY29tbWFuZElkKTtcbiAgICAgICAgY2xvc2VkID0gdHJ1ZTtcbiAgICAgICAgbG9nUmVzb2x2ZT8uKCk7XG4gICAgICAgIHJlamVjdChlcnIpO1xuICAgICAgfSk7XG5cbiAgICAgIGNoaWxkLm9uKFwiY2xvc2VcIiwgKGNvZGU6IG51bWJlciB8IG51bGwpID0+IHtcbiAgICAgICAgdGhpcy5wcm9jZXNzZXMuZGVsZXRlKGNvbW1hbmRJZCk7XG4gICAgICAgIGNsb3NlZCA9IHRydWU7XG4gICAgICAgIGxvZ1Jlc29sdmU/LigpO1xuICAgICAgICByZXNvbHZlKHsgc3Rkb3V0LCBzdGRlcnIsIGV4aXRDb2RlOiBjb2RlID8/IDAgfSk7XG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIGFzeW5jIGZ1bmN0aW9uKiBsb2dzKCk6IEFzeW5jSXRlcmFibGU8e1xuICAgICAgc3RyZWFtOiBcInN0ZG91dFwiIHwgXCJzdGRlcnJcIjtcbiAgICAgIGRhdGE6IHN0cmluZztcbiAgICB9PiB7XG4gICAgICB3aGlsZSAoIWNsb3NlZCB8fCBsb2dRdWV1ZS5sZW5ndGggPiAwKSB7XG4gICAgICAgIGNvbnN0IGVudHJ5ID0gbG9nUXVldWUuc2hpZnQoKTtcbiAgICAgICAgaWYgKGVudHJ5KSB7XG4gICAgICAgICAgeWllbGQgZW50cnk7XG4gICAgICAgIH0gZWxzZSBpZiAoIWNsb3NlZCkge1xuICAgICAgICAgIGF3YWl0IG5ldyBQcm9taXNlPHZvaWQ+KChyKSA9PiB7XG4gICAgICAgICAgICBsb2dSZXNvbHZlID0gcjtcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBsb2dSZXNvbHZlID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7IGNvbW1hbmRJZCwgbG9ncywgcmVzdWx0IH07XG4gIH1cblxuICBhc3luYyByZWFkRmlsZShvcHRzOiB7XG4gICAgcGF0aDogc3RyaW5nO1xuICAgIHNpZ25hbD86IEFib3J0U2lnbmFsO1xuICB9KTogUHJvbWlzZTxCdWZmZXIgfCBudWxsPiB7XG4gICAgY29uc3QgZnMgPSBhd2FpdCBpbXBvcnQoXCJub2RlOmZzL3Byb21pc2VzXCIpO1xuICAgIGNvbnN0IHBhdGggPSBhd2FpdCBpbXBvcnQoXCJub2RlOnBhdGhcIik7XG4gICAgY29uc3QgZnVsbFBhdGggPSBwYXRoLnJlc29sdmUodGhpcy5iYXNlUGF0aCwgb3B0cy5wYXRoKTtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGF3YWl0IGZzLnJlYWRGaWxlKGZ1bGxQYXRoKTtcbiAgICB9IGNhdGNoIChlOiB1bmtub3duKSB7XG4gICAgICBpZiAoXG4gICAgICAgIGUgaW5zdGFuY2VvZiBFcnJvciAmJlxuICAgICAgICBcImNvZGVcIiBpbiBlICYmXG4gICAgICAgIChlIGFzIE5vZGVKUy5FcnJub0V4Y2VwdGlvbikuY29kZSA9PT0gXCJFTk9FTlRcIlxuICAgICAgKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICAgICAgdGhyb3cgZTtcbiAgICB9XG4gIH1cblxuICBhc3luYyB3cml0ZUZpbGVzKG9wdHM6IHtcbiAgICBmaWxlczogeyBwYXRoOiBzdHJpbmc7IGNvbnRlbnQ6IHN0cmluZyB8IEJ1ZmZlciB9W107XG4gICAgZGVzdFBhdGg6IHN0cmluZztcbiAgICBzaWduYWw/OiBBYm9ydFNpZ25hbDtcbiAgfSk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGZzID0gYXdhaXQgaW1wb3J0KFwibm9kZTpmcy9wcm9taXNlc1wiKTtcbiAgICBjb25zdCBwYXRoTW9kID0gYXdhaXQgaW1wb3J0KFwibm9kZTpwYXRoXCIpO1xuICAgIGZvciAoY29uc3QgZmlsZSBvZiBvcHRzLmZpbGVzKSB7XG4gICAgICBjb25zdCBmdWxsUGF0aCA9IHBhdGhNb2QucmVzb2x2ZSh0aGlzLmJhc2VQYXRoLCBvcHRzLmRlc3RQYXRoLCBmaWxlLnBhdGgpO1xuICAgICAgYXdhaXQgZnMubWtkaXIocGF0aE1vZC5kaXJuYW1lKGZ1bGxQYXRoKSwgeyByZWN1cnNpdmU6IHRydWUgfSk7XG4gICAgICBhd2FpdCBmcy53cml0ZUZpbGUoZnVsbFBhdGgsIGZpbGUuY29udGVudCk7XG4gICAgICBpZiAoZmlsZS5wYXRoLmVuZHNXaXRoKFwiLnNoXCIpKSB7XG4gICAgICAgIGF3YWl0IGZzLmNobW9kKGZ1bGxQYXRoLCAwbzc1NSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gYmlvbWUtaWdub3JlIGxpbnQvc3VzcGljaW91cy91c2VBd2FpdDogLlxuICBhc3luYyBnZXREb21haW4ob3B0czoge1xuICAgIHBvcnQ6IG51bWJlcjtcbiAgICBzaWduYWw/OiBBYm9ydFNpZ25hbDtcbiAgfSk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgcmV0dXJuIGBodHRwOi8vbG9jYWxob3N0OiR7b3B0cy5wb3J0fWA7XG4gIH1cblxuICAvLyBiaW9tZS1pZ25vcmUgbGludC9zdXNwaWNpb3VzL3VzZUF3YWl0OiAuXG4gIGFzeW5jIGtpbGwob3B0czogeyBjb21tYW5kSWQ6IHN0cmluZzsgc2lnbmFsPzogQWJvcnRTaWduYWwgfSk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGNoaWxkID0gdGhpcy5wcm9jZXNzZXMuZ2V0KG9wdHMuY29tbWFuZElkKTtcbiAgICBpZiAoY2hpbGQpIHtcbiAgICAgIGNoaWxkLmtpbGwoXCJTSUdURVJNXCIpO1xuICAgICAgdGhpcy5wcm9jZXNzZXMuZGVsZXRlKG9wdHMuY29tbWFuZElkKTtcbiAgICB9XG4gIH1cblxuICAvLyBiaW9tZS1pZ25vcmUgbGludC9zdXNwaWNpb3VzL3VzZUF3YWl0OiAuXG4gIGFzeW5jIGdldFN0YXR1cygpOiBQcm9taXNlPFwicnVubmluZ1wiPiB7XG4gICAgcmV0dXJuIFwicnVubmluZ1wiO1xuICB9XG5cbiAgYXN5bmMgc3RhcnQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgLy8gbm8tb3A6IGxvY2FsIHNhbmRib3ggaXMgYWx3YXlzIHN0YXJ0ZWRcbiAgfVxuXG4gIC8vIGJpb21lLWlnbm9yZSBsaW50L3N1c3BpY2lvdXMvdXNlQXdhaXQ6IC5cbiAgYXN5bmMgc3RvcCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJzdG9wIGlzIG5vdCBzdXBwb3J0ZWQgZm9yIGxvY2FsIHNhbmRib3hlc1wiKTtcbiAgfVxuXG4gIC8vIGJpb21lLWlnbm9yZSBsaW50L3N1c3BpY2lvdXMvdXNlQXdhaXQ6IC5cbiAgYXN5bmMgc25hcHNob3QoKTogUHJvbWlzZTx7IHNuYXBzaG90SWQ6IHN0cmluZyB9PiB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFwic25hcHNob3QgaXMgbm90IHN1cHBvcnRlZCBmb3IgbG9jYWwgc2FuZGJveGVzXCIpO1xuICB9XG5cbiAgLy8gYmlvbWUtaWdub3JlIGxpbnQvc3VzcGljaW91cy91c2VBd2FpdDogLlxuICBhc3luYyB1cGRhdGVOZXR3b3JrUG9saWN5KCk6IFByb21pc2U8bmV2ZXI+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJ1cGRhdGVOZXR3b3JrUG9saWN5IGlzIG5vdCBzdXBwb3J0ZWQgZm9yIGxvY2FsIHNhbmRib3hlc1wiKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gbG9jYWxTYW5kYm94KCk6IFNhbmRib3hCaW5kaW5nPFxuICBcImxvY2FsXCIsXG4gIExvY2FsQmluZGluZ0NvbmZpZyxcbiAgTG9jYWxCaW5kaW5nTWV0YWRhdGFcbj4ge1xuICByZXR1cm4ge1xuICAgIHR5cGU6IFwibG9jYWxcIixcbiAgICBhc3luYyBjcmVhdGUob3B0cykge1xuICAgICAgY29uc3QgYmFzZVBhdGggPSBvcHRzLnNldHVwLmNvbmZpZz8uY3dkID8/IHByb2Nlc3MuY3dkKCk7XG4gICAgICBjb25zdCBpbnN0YW5jZSA9IG5ldyBMb2NhbFNhbmRib3hJbnN0YW5jZShiYXNlUGF0aCk7XG5cbiAgICAgIGlmIChvcHRzLnNldHVwPy5ydW4pIHtcbiAgICAgICAgYXdhaXQgb3B0cy5zZXR1cC5ydW4oaW5zdGFuY2UpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4ge1xuICAgICAgICBpbnN0YW5jZSxcbiAgICAgICAgbWV0YWRhdGE6IHsgYmFzZVBhdGgsIHBpZDogcHJvY2Vzcy5waWQgfSxcbiAgICAgIH07XG4gICAgfSxcblxuICAgIC8vIGJpb21lLWlnbm9yZSBsaW50L3N1c3BpY2lvdXMvdXNlQXdhaXQ6IC5cbiAgICBhc3luYyBjb25uZWN0KG9wdHMpIHtcbiAgICAgIGNvbnN0IGJhc2VQYXRoID0gb3B0cy5tZXRhZGF0YS5iYXNlUGF0aDtcbiAgICAgIHJldHVybiBuZXcgTG9jYWxTYW5kYm94SW5zdGFuY2UoYmFzZVBhdGgpO1xuICAgIH0sXG4gIH07XG59XG4iXSwKICAibWFwcGluZ3MiOiAiO0FBQUEsU0FBUyxZQUFZO0FBWXJCLElBQU0sdUJBQU4sTUFBc0Q7QUFBQSxFQUMzQztBQUFBLEVBQ1E7QUFBQSxFQUNBLFlBQVksb0JBQUksSUFHL0I7QUFBQSxFQUVGLFlBQVksVUFBa0I7QUFDNUIsU0FB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
@@ -1,9 +1,8 @@
1
1
  import {
2
- handleStorageRpc
3
- } from "./chunk-SJVFFE5D.mjs";
4
- import "./chunk-YRYXN7W4.mjs";
2
+ dockerSandbox
3
+ } from "./chunk-BFFNCESS.mjs";
5
4
  import "./chunk-BJTO5JO5.mjs";
6
5
  export {
7
- handleStorageRpc
6
+ dockerSandbox
8
7
  };
9
8
  //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFtdLAogICJzb3VyY2VzQ29udGVudCI6IFtdLAogICJtYXBwaW5ncyI6ICIiLAogICJuYW1lcyI6IFtdCn0K
@@ -0,0 +1,36 @@
1
+ import { S as SandboxBinding, e as LifecycleConfig } from './steps-BnkRQKlc.js';
2
+ import * as _vercel_sandbox from '@vercel/sandbox';
3
+
4
+ type DockerBindingConfig = {
5
+ cwd?: string;
6
+ };
7
+ type DockerBindingMetadata = {
8
+ sandboxName: string;
9
+ };
10
+ declare function dockerSandbox(): SandboxBinding<"docker", DockerBindingConfig, DockerBindingMetadata>;
11
+
12
+ type LocalBindingConfig = {
13
+ cwd?: string;
14
+ };
15
+ type LocalBindingMetadata = {
16
+ basePath: string;
17
+ pid: number;
18
+ };
19
+ declare function localSandbox(): SandboxBinding<"local", LocalBindingConfig, LocalBindingMetadata>;
20
+
21
+ type VercelBindingConfig = {
22
+ cwd?: string;
23
+ resources?: {
24
+ vcpus: number;
25
+ };
26
+ ports?: number[];
27
+ networkPolicy?: _vercel_sandbox.NetworkPolicy;
28
+ snapshotId?: string;
29
+ lifecycle?: LifecycleConfig;
30
+ };
31
+ type VercelBindingMetadata = {
32
+ sandboxId: string;
33
+ };
34
+ declare function vercelSandbox(): SandboxBinding<"vercel", VercelBindingConfig, VercelBindingMetadata>;
35
+
36
+ export { type DockerBindingConfig as D, type LocalBindingConfig as L, type VercelBindingConfig as V, type LocalBindingMetadata as a, type VercelBindingMetadata as b, type DockerBindingMetadata as c, dockerSandbox as d, localSandbox as l, vercelSandbox as v };
@@ -0,0 +1,36 @@
1
+ import { S as SandboxBinding, e as LifecycleConfig } from './steps-u-mGDbP_.mjs';
2
+ import * as _vercel_sandbox from '@vercel/sandbox';
3
+
4
+ type DockerBindingConfig = {
5
+ cwd?: string;
6
+ };
7
+ type DockerBindingMetadata = {
8
+ sandboxName: string;
9
+ };
10
+ declare function dockerSandbox(): SandboxBinding<"docker", DockerBindingConfig, DockerBindingMetadata>;
11
+
12
+ type LocalBindingConfig = {
13
+ cwd?: string;
14
+ };
15
+ type LocalBindingMetadata = {
16
+ basePath: string;
17
+ pid: number;
18
+ };
19
+ declare function localSandbox(): SandboxBinding<"local", LocalBindingConfig, LocalBindingMetadata>;
20
+
21
+ type VercelBindingConfig = {
22
+ cwd?: string;
23
+ resources?: {
24
+ vcpus: number;
25
+ };
26
+ ports?: number[];
27
+ networkPolicy?: _vercel_sandbox.NetworkPolicy;
28
+ snapshotId?: string;
29
+ lifecycle?: LifecycleConfig;
30
+ };
31
+ type VercelBindingMetadata = {
32
+ sandboxId: string;
33
+ };
34
+ declare function vercelSandbox(): SandboxBinding<"vercel", VercelBindingConfig, VercelBindingMetadata>;
35
+
36
+ export { type DockerBindingConfig as D, type LocalBindingConfig as L, type VercelBindingConfig as V, type LocalBindingMetadata as a, type VercelBindingMetadata as b, type DockerBindingMetadata as c, dockerSandbox as d, localSandbox as l, vercelSandbox as v };