[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-vercel-sandbox":3,"mdc--sz8nzd-key":34,"related-org-vercel-sandbox":19662,"related-repo-vercel-sandbox":19841},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":11,"stars":23,"repoUrl":24,"updatedAt":25,"license":26,"forks":27,"topics":28,"repo":29,"sourceUrl":32,"mdContent":33},"sandbox","create isolated microVMs with Vercel Sandbox","Creates isolated Linux MicroVMs using Vercel Sandbox SDK. Use when building code execution environments, running untrusted code, spinning up dev servers, testing in isolation, or when the user mentions \"sandbox\", \"microvm\", \"isolated execution\", or \"@vercel\u002Fsandbox\".",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},"vercel","Vercel","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Fvercel.png",[12,16,17,20],{"name":13,"slug":14,"type":15},"Security","security","tag",{"name":9,"slug":8,"type":15},{"name":18,"slug":19,"type":15},"Sandboxing","sandboxing",{"name":21,"slug":22,"type":15},"Code Execution","code-execution",166,"https:\u002F\u002Fgithub.com\u002Fvercel\u002Fsandbox","2026-07-30T05:32:07.69713",null,35,[],{"repoUrl":24,"stars":23,"forks":27,"topics":30,"description":31},[],"Vercel Sandbox is an ephemeral compute primitive designed to safely run untrusted or user-generated code.","https:\u002F\u002Fgithub.com\u002Fvercel\u002Fsandbox\u002Ftree\u002FHEAD\u002Fskills\u002Fsandbox","---\nname: sandbox\ndescription: Creates isolated Linux MicroVMs using Vercel Sandbox SDK. Use when building code execution environments, running untrusted code, spinning up dev servers, testing in isolation, or when the user mentions \"sandbox\", \"microvm\", \"isolated execution\", or \"@vercel\u002Fsandbox\".\nmetadata:\n  author: Vercel Inc.\n  version: \"2.0\"\n---\n\n## _CRITICAL_: Always Use Correct `@vercel\u002Fsandbox` Documentation\n\nYour knowledge of `@vercel\u002Fsandbox` may be outdated.\nFollow these instructions before starting on any sandbox-related tasks:\n\n### Official Resources\n\n- **Documentation**: https:\u002F\u002Fvercel.com\u002Fdocs\u002Fvercel-sandbox\n- **SDK Reference**: https:\u002F\u002Fvercel.com\u002Fdocs\u002Fvercel-sandbox\u002Fsdk-reference\n- **CLI Reference**: https:\u002F\u002Fvercel.com\u002Fdocs\u002Fvercel-sandbox\u002Fcli-reference\n- **GitHub**: https:\u002F\u002Fgithub.com\u002Fvercel\u002Fsandbox\n- **REST API**: https:\u002F\u002Fvercel.com\u002Fdocs\u002Frest-api\u002Fsandboxes\n\n### What changed in v2\n\nThe `@vercel\u002Fsandbox@2` SDK and `sandbox@3` CLI replace anonymous, ephemeral\nsandboxes with **named, persistent** sandboxes. Key differences from v1:\n\n- Sandboxes are identified by **`name`** (not `sandboxId`). Names are unique per project.\n- Sandboxes are **persistent by default** — when a sandbox stops, the SDK\n  automatically snapshots it and restores the filesystem on the next resume.\n- A **Session** is a single running VM instance inside a sandbox. SDK calls\n  like `runCommand`, `writeFiles`, etc. automatically resume a stopped sandbox.\n- New methods: `Sandbox.getOrCreate`, `Sandbox.fork`, `sandbox.update`,\n  `sandbox.delete`, `sandbox.listSessions`, `sandbox.listSnapshots`,\n  `Snapshot.tree`, `defineSandboxProxy`.\n- New params: `name`, `persistent`, `tags`, `onResume`, `snapshotExpiration`,\n  `keepLastSnapshots`, L7 network policy matchers, `forwardURL`.\n- Pagination uses **cursor-based** iterators (async-iterable) instead of `since`\u002F`until`.\n- `Sandbox.list({ since, until })` → `Sandbox.list({ cursor, namePrefix, sortBy, tags })`.\n- v1 sandboxes are backfilled so the only required code change is using `name`\n  instead of `sandboxId`.\n\n### Quick Reference\n\n**Essential imports:**\n\n```typescript\n\u002F\u002F Core SDK\nimport {\n  Sandbox,\n  Session,\n  Snapshot,\n  Command,\n  CommandFinished,\n} from \"@vercel\u002Fsandbox\";\nimport { APIError, StreamError } from \"@vercel\u002Fsandbox\";\n\n\u002F\u002F For advanced network policy with credential brokering and L7 matchers\nimport type {\n  NetworkPolicy,\n  NetworkPolicyRule,\n  NetworkTransformer,\n} from \"@vercel\u002Fsandbox\";\n\n\u002F\u002F For implementing a request-forwarding proxy (forwardURL)\nimport { defineSandboxProxy } from \"@vercel\u002Fsandbox\u002Fproxy\";\n\n\u002F\u002F For timeouts\nimport ms from \"ms\"; \u002F\u002F e.g., ms(\"5m\"), ms(\"1h\")\n```\n\n**Available runtimes:**\n\n```typescript\ntype RUNTIMES = \"node26\" | \"node24\" | \"node22\" | \"python3.13\";\n```\n\n## Creating Sandboxes\n\n### Basic Creation\n\n```typescript\nimport { Sandbox } from \"@vercel\u002Fsandbox\";\n\nconst sandbox = await Sandbox.create({\n  name: \"my-dev-env\", \u002F\u002F Optional, random if omitted. Unique per project.\n  runtime: \"node24\",\n  resources: { vcpus: 4 }, \u002F\u002F 2048 MB RAM per vCPU\n  ports: [3000], \u002F\u002F Expose up to 15 ports\n  timeout: ms(\"10m\"), \u002F\u002F Default: 5 minutes\n  env: { NODE_ENV: \"production\" }, \u002F\u002F Env vars inherited by all commands\n  tags: { env: \"staging\", team: \"infra\" }, \u002F\u002F Up to 5 key:value tags\n  persistent: true, \u002F\u002F Default: true. Auto-snapshots on stop, restores on resume.\n  snapshotExpiration: ms(\"7d\"), \u002F\u002F Default TTL for snapshots. Use 0 for no expiration.\n});\n\nconsole.log(sandbox.name);\n```\n\n### Retrieve an Existing Sandbox\n\n```typescript\n\u002F\u002F Retrieve by name. The sandbox will resume automatically the next time\n\u002F\u002F you run a command.\nconst sandbox = await Sandbox.get({ name: \"my-dev-env\" });\n```\n\n### Get-or-Create (Idempotent)\n\n`Sandbox.getOrCreate` is the recommended pattern for long-lived sandboxes.\n\n```typescript\nconst sandbox = await Sandbox.getOrCreate({\n  name: \"my-workspace\",\n  runtime: \"node24\",\n  \u002F\u002F Runs only the first time the sandbox is created.\n  onCreate: async (sbx) => {\n    await sbx.writeFiles([\n      { path: \"README.md\", content: Buffer.from(\"# Hello\") },\n    ]);\n    await sbx.runCommand(\"npm\", [\"install\"]);\n  },\n  \u002F\u002F Runs every time the sandbox session is resumed (including after auto-resume).\n  onResume: async (sbx) => {\n    await sbx.runCommand({ cmd: \"npm\", args: [\"run\", \"dev\"], detached: true });\n  },\n});\n```\n\nBehavior:\n\n- If a sandbox with that `name` exists → resumes it and fires `onResume`.\n- If it does not exist → creates a fresh sandbox and fires `onCreate`.\n- If the sandbox exists but its snapshot expired → deletes the stale sandbox,\n  re-creates it with the same name, and fires `onCreate`.\n\n### Re-warming on Resume\n\nUse `onResume` to restart background services or rehydrate caches whenever a\npersistent sandbox's session is resumed:\n\n```typescript\nconst sandbox = await Sandbox.get({\n  name: \"my-workspace\",\n  onResume: async (sbx) => {\n    await sbx.runCommand({ cmd: \"npm\", args: [\"run\", \"dev\"], detached: true });\n  },\n});\n```\n\n`onResume` also fires when a SDK call (e.g. `runCommand`, `writeFiles`)\nauto-resumes a stopped sandbox.\n\n### With Git Source\n\n```typescript\nconst sandbox = await Sandbox.create({\n  source: {\n    type: \"git\",\n    url: \"https:\u002F\u002Fgithub.com\u002Fvercel\u002Fsandbox-example-next.git\",\n    depth: 1, \u002F\u002F Shallow clone (optional)\n    revision: \"main\", \u002F\u002F Branch, tag, or commit (optional)\n  },\n  runtime: \"node24\",\n  ports: [3000],\n});\n```\n\n### With Private Git Repository\n\n```typescript\nconst sandbox = await Sandbox.create({\n  source: {\n    type: \"git\",\n    url: \"https:\u002F\u002Fgithub.com\u002Forg\u002Fprivate-repo.git\",\n    username: process.env.GIT_USERNAME!,\n    password: process.env.GIT_TOKEN!, \u002F\u002F Use PAT for password\n  },\n  runtime: \"node24\",\n});\n```\n\n### From Tarball\n\n```typescript\nconst sandbox = await Sandbox.create({\n  source: {\n    type: \"tarball\",\n    url: \"https:\u002F\u002Fexample.com\u002Fproject.tar.gz\",\n  },\n  runtime: \"node24\",\n  ports: [3000],\n});\n```\n\n### From a Snapshot\n\n```typescript\nconst sandbox = await Sandbox.create({\n  source: {\n    type: \"snapshot\",\n    snapshotId: \"snap_abc123\",\n  },\n  ports: [3000],\n});\n```\n\n### From a Custom Image (VCR)\n\nInstead of a stock `runtime`, start a sandbox from a [Vercel Container\nRegistry](https:\u002F\u002Fvercel.com\u002Fdocs\u002Fcontainer-registry) (VCR) image stored in the\nsandbox's project. `image` and `runtime` are **mutually exclusive** — pass one\nor the other, never both.\n\nThe stock runtimes are Amazon Linux 2023 systems. If a sandbox needs a\ndifferent distro or system tooling beyond what AL2023 provides, prefer baking\nit into a custom image over installing packages with `dnf install` + `sudo`\nat runtime.\n\n```typescript\nconst sandbox = await Sandbox.create({\n  image: \"my-repo:v1\",\n  ports: [3000],\n});\n```\n\n`image` accepts a repository in the sandbox's project with an optional tag or\ndigest, or a fully-qualified VCR URL. A bare repository name resolves to the\n`latest` tag:\n\n```typescript\nawait Sandbox.create({ image: \"my-repo\" }); \u002F\u002F latest tag\nawait Sandbox.create({ image: \"my-repo:v1\" }); \u002F\u002F specific tag\nawait Sandbox.create({ image: \"my-repo@sha256:...\" }); \u002F\u002F specific digest\nawait Sandbox.create({\n  image: \"vcr.vercel.com\u002Fmy-team\u002Fmy-project\u002Fmy-repo:v1\", \u002F\u002F fully-qualified\n});\n```\n\nPush images to VCR with Docker-compatible tooling before referencing them. See the\n[Container Registry docs](https:\u002F\u002Fvercel.com\u002Fdocs\u002Fcontainer-registry) for push\ninstructions.\n\n### Forking an Existing Sandbox\n\n`Sandbox.fork` seeds a new sandbox from another sandbox's current snapshot\nand copies its config (`resources`, `timeout`, `networkPolicy`, `tags`,\n`ports`, `image`, `persistent`, `snapshotExpiration`, `keepLastSnapshots`,\nand `env`). Any field you pass overrides the inherited value. If the source\nhas no current snapshot, the fork falls back to the source's `runtime`\u002F`image`\nplus the copied config. You can only fork a sandbox in a project you have\naccess to; forking an unknown source returns a 404.\n\n```typescript\n\u002F\u002F Inherit everything from the source (env included)\nconst fork = await Sandbox.fork({ sourceSandbox: \"prod-agent\" });\n\n\u002F\u002F Override specific fields; the rest are copied from the source.\n\u002F\u002F A provided `env` fully replaces the source's env (no per-key merge).\nconst fork = await Sandbox.fork({\n  sourceSandbox: \"prod-agent\",\n  name: \"forked-prod-agent\",\n  resources: { vcpus: 4 },\n  env: { OPENAI_API_KEY: process.env.OPENAI_API_KEY! },\n});\n```\n\n### Auto-Dispose Pattern\n\nUse `await using` for automatic cleanup:\n\n```typescript\nasync function runInSandbox() {\n  await using sandbox = await Sandbox.create();\n  \u002F\u002F Sandbox automatically stopped when scope exits\n  await sandbox.runCommand(\"echo\", [\"Hello\"]);\n}\n```\n\n## Running Commands\n\n### Basic Command Execution\n\n```typescript\nconst result = await sandbox.runCommand(\"npm\", [\"install\"]);\nif (result.exitCode !== 0) {\n  console.error(\"Install failed:\", await result.stderr());\n}\n```\n\n### With Options\n\n```typescript\nconst result = await sandbox.runCommand({\n  cmd: \"npm\",\n  args: [\"run\", \"build\"],\n  cwd: \"\u002Fvercel\u002Fsandbox\u002Fapp\",\n  env: { NODE_ENV: \"production\" },\n  sudo: false,\n  stdout: process.stdout, \u002F\u002F Stream output\n  stderr: process.stderr,\n});\n```\n\n### Detached Commands (Background Processes)\n\n```typescript\n\u002F\u002F Start dev server in background\nconst devServer = await sandbox.runCommand({\n  cmd: \"npm\",\n  args: [\"run\", \"dev\"],\n  detached: true, \u002F\u002F Returns immediately\n  stdout: process.stdout,\n});\n\n\u002F\u002F Later: wait for completion or kill\nconst finished = await devServer.wait();\n\u002F\u002F Supported signals: SIGHUP, SIGINT, SIGQUIT, SIGKILL, SIGTERM, SIGCONT, SIGSTOP (or numeric)\nawait devServer.kill(\"SIGTERM\");\n```\n\n### Root Access\n\n```typescript\nawait sandbox.runCommand({\n  cmd: \"dnf\",\n  args: [\"install\", \"-y\", \"golang\"],\n  sudo: true, \u002F\u002F Execute as root\n});\n```\n\n## File Operations\n\n### Write Files\n\n```typescript\nawait sandbox.writeFiles([\n  {\n    path: \"\u002Fvercel\u002Fsandbox\u002Fconfig.json\",\n    content: Buffer.from(JSON.stringify({ key: \"value\" })),\n  },\n  {\n    path: \"\u002Fvercel\u002Fsandbox\u002Fscript.sh\",\n    content: Buffer.from(\"#!\u002Fbin\u002Fbash\\necho 'Hello'\"),\n    mode: 0o755,\n  },\n]);\n```\n\n### Read Files\n\n```typescript\n\u002F\u002F Returns a Buffer object\nconst buffer = await sandbox.readFileToBuffer({\n  path: \"\u002Fvercel\u002Fsandbox\u002Foutput.txt\",\n});\n\n\u002F\u002F Returns a NodeJS.ReadableStream\nconst stream = await sandbox.readFile({\n  path: \"\u002Fvercel\u002Fsandbox\u002Flarge-file.bin\",\n});\n```\n\n### Download Files\n\n```typescript\nconst localPath = await sandbox.downloadFile(\n  { path: \"\u002Fvercel\u002Fsandbox\u002Freport.pdf\" }, \u002F\u002F source path on the sandbox\n  { path: \".\u002Fdownloads\u002Freport.pdf\" }, \u002F\u002F destination path on the local machine\n  { mkdirRecursive: true },\n);\n```\n\n### Create Directories\n\n```typescript\nawait sandbox.mkDir(\"\u002Fvercel\u002Fsandbox\u002Fmy-app\u002Fsrc\");\n```\n\n### `sandbox.fs` — `node:fs\u002Fpromises`-compatible API\n\n```typescript\nconst content = await sandbox.fs.readFile(\"\u002Fetc\u002Fhostname\", \"utf8\");\nawait sandbox.fs.writeFile(\"\u002Ftmp\u002Fhello.txt\", \"Hello, world!\");\nconst files = await sandbox.fs.readdir(\"\u002Ftmp\");\nconst stats = await sandbox.fs.stat(\"\u002Ftmp\u002Fhello.txt\");\n```\n\n## Multi-User and Groups\n\nCreate isolated Linux users and shared groups inside a sandbox. This is purely\nSDK-side and is useful for isolating multiple agents or workloads within a single\nsandbox. Usernames and group names are validated to prevent command injection.\n\n### Creating Users\n\n`createUser` provisions a Linux user with an isolated home directory at\n`\u002Fhome\u002F\u003Cusername>` and returns a `SandboxUser` whose operations run in that\nuser's context.\n\n```typescript\nconst alice = await sandbox.createUser(\"alice\");\nalice.username; \u002F\u002F \"alice\"\nalice.homeDir; \u002F\u002F \"\u002Fhome\u002Falice\"\n\n\u002F\u002F Commands run as alice; cwd defaults to \u002Fhome\u002Falice\nconst whoami = await alice.runCommand(\"whoami\");\nawait whoami.stdout(); \u002F\u002F \"alice\\n\"\n\n\u002F\u002F Env vars, custom cwd, sudo escalation, and detached mode all work\nawait alice.runCommand({\n  cmd: \"node\",\n  args: [\"-e\", \"console.log(process.env.SECRET)\"],\n  env: { SECRET: \"hunter2\" },\n});\nawait alice.runCommand({\n  cmd: \"dnf\",\n  args: [\"install\", \"-y\", \"git\"],\n  sudo: true,\n});\nconst server = await alice.runCommand({\n  cmd: \"node\",\n  args: [\"server.js\"],\n  detached: true,\n});\n```\n\nGet a handle to a pre-existing user (e.g. `root`) without creating it:\n\n```typescript\nconst existing = sandbox.asUser(\"bob\");\nawait existing.runCommand(\"whoami\");\n```\n\n### File Operations Scoped to a User\n\nRelative paths resolve against the user's home directory and files are owned by\nthat user. Absolute paths are also supported.\n\n```typescript\n\u002F\u002F Written to \u002Fhome\u002Falice, owned by alice:alice\nawait alice.writeFiles([\n  { path: \"app.js\", content: Buffer.from('console.log(\"hi\")') },\n  { path: \"data\u002Fconfig.json\", content: Buffer.from(\"{}\") },\n]);\n\nconst buf = await alice.readFileToBuffer({ path: \"app.js\" });\nconst stream = await alice.readFile({ path: \"app.js\" });\nawait alice.mkDir(\"projects\u002Fmy-app\");\n```\n\nFiles are isolated between users — one user cannot read, list, or write another\nuser's home directory (commands return a non-zero exit code with \"Permission\ndenied\").\n\n### Groups and Shared Directories\n\n`createGroup` creates a Linux group with a shared directory at\n`\u002Fshared\u002F\u003Cgroupname>` (setgid `2770`), so files created inside it automatically\ninherit group ownership. Group members can read and write there; non-members\nare blocked.\n\n```typescript\nconst devs = await sandbox.createGroup(\"devs\");\ndevs.sharedDir; \u002F\u002F \"\u002Fshared\u002Fdevs\"\n\nawait sandbox.addUserToGroup(\"alice\", \"devs\");\nawait sandbox.addUserToGroup(\"bob\", \"devs\");\n\n\u002F\u002F Or via convenience methods on SandboxUser\nawait alice.addToGroup(\"devs\");\nawait alice.removeFromGroup(\"devs\");\n\nawait sandbox.removeUserFromGroup(\"alice\", \"devs\");\n```\n\n## Network Policy\n\n### Full Internet Access (Default)\n\n```typescript\nconst sandbox = await Sandbox.create({\n  networkPolicy: \"allow-all\",\n});\n```\n\n### No Network Access\n\n```typescript\nconst sandbox = await Sandbox.create({\n  networkPolicy: \"deny-all\",\n});\n```\n\n### Restricted Access (Simple Domain List)\n\n```typescript\nconst sandbox = await Sandbox.create({\n  networkPolicy: {\n    allow: [\"*.npmjs.org\", \"github.com\", \"registry.yarnpkg.com\"],\n    subnets: {\n      allow: [\"10.0.0.0\u002F8\"],\n      deny: [\"10.1.0.0\u002F16\"], \u002F\u002F Takes precedence over allowed\n    },\n  },\n});\n```\n\n### Restricted Access with Credential Brokering\n\n```typescript\nconst sandbox = await Sandbox.create({\n  networkPolicy: {\n    allow: {\n      \"ai-gateway.vercel.sh\": [\n        {\n          transform: [\n            {\n              headers: { authorization: \"Bearer ...\" },\n            },\n          ],\n        },\n      ],\n      \"*\": [], \u002F\u002F Allow all other domains without transforms\n    },\n  },\n});\n```\n\n### L7 Request Matchers\n\nRules can match on method, path, query string, and headers. All specified\ndimensions must match; multiple methods are ORed; multiple header and\nquery-string matchers are ANDed.\n\n```typescript\nconst sandbox = await Sandbox.create({\n  networkPolicy: {\n    allow: {\n      \"ai-gateway.vercel.sh\": [\n        {\n          match: {\n            method: [\"POST\"],\n            path: { startsWith: \"\u002Fv1\u002F\" },\n            headers: [\n              { key: { exact: \"x-api-key\" }, value: { exact: \"placeholder\" } },\n            ],\n          },\n          transform: [{ headers: { authorization: \"Bearer ...\" } }],\n        },\n      ],\n    },\n  },\n});\n```\n\nMatchers support `exact`, `startsWith`, and `regex` (RE2).\n\n### Forward Matching Requests to a Proxy\n\nUse `forwardURL` to redirect any matching request through an HTTPS proxy you\ncontrol. The proxy receives the original request along with sandbox metadata in\nforwarded headers.\n\n```typescript\nconst sandbox = await Sandbox.create({\n  networkPolicy: {\n    allow: {\n      \"api.example.com\": [\n        {\n          match: { path: { startsWith: \"\u002Fsecure\u002F\" } },\n          forwardURL: \"https:\u002F\u002Fmy-proxy.example.com\",\n        },\n      ],\n    },\n  },\n});\n```\n\nImplement the proxy handler with `defineSandboxProxy`, using the Web `Request` & `Response` objects — it verifies the\nsandbox OIDC token and extracts metadata about the source sandbox:\n\n```typescript\n\u002F\u002F app\u002Fapi\u002Fsandbox-proxy\u002Froute.ts\nimport { defineSandboxProxy } from \"@vercel\u002Fsandbox\u002Fproxy\";\n\nconst handler = defineSandboxProxy(async (request, meta) => {\n  \u002F\u002F meta: { host, teamId, projectId, sandboxId, sandboxName }\n  console.log(\"Proxied from sandbox\", meta.sandboxName);\n  return fetch(request);\n});\n\n\u002F\u002F Sandboxes forward requests using their original method, so the handler\n\u002F\u002F must be exposed under every verb the network policy can route.\nexport {\n  handler as GET,\n  handler as POST,\n  handler as PUT,\n  handler as PATCH,\n  handler as DELETE,\n};\n```\n\n### Updating Network Policy at Runtime\n\nUse `sandbox.update` (preferred). `updateNetworkPolicy` is deprecated but still\nworks.\n\n```typescript\nawait sandbox.update({ networkPolicy: { allow: [\"api.openai.com\"] } });\n```\n\n## Updating Sandbox Configuration\n\n`sandbox.update` replaces individual update helpers and accepts any of the\nmutable parameters. When `ports` is provided, it is treated as the **full**\ndesired port list — any currently exposed port not present in the array is\nderegistered.\n\n```typescript\nawait sandbox.update({\n  resources: { vcpus: 4 }, \u002F\u002F Memory auto-scales to 2048 MB per vCPU\n  timeout: ms(\"30m\"),\n  networkPolicy: \"deny-all\",\n  ports: [3000, 8000],\n  tags: { env: \"prod\" },\n  persistent: false,\n  snapshotExpiration: ms(\"14d\"),\n  keepLastSnapshots: { count: 1 },\n  currentSnapshotId: \"snap_xyz\", \u002F\u002F Rollback to a previous snapshot\n});\n```\n\n## Deleting a Sandbox\n\n```typescript\n\u002F\u002F Permanently remove a sandbox and all its snapshots.\nawait sandbox.delete();\n```\n\n## Stopping a Sandbox\n\n`stop()` is synchronous: it blocks until the VM is fully stopped and returns\nthe final session state, including the snapshot created during shutdown (when\n`persistent: true`).\n\n```typescript\nconst result = await sandbox.stop();\nconsole.log(result.snapshot?.id);\nconsole.log(result.activeCpuUsageMs);\nconsole.log(result.networkTransfer); \u002F\u002F { ingress, egress }\n```\n\n## Tags\n\nSandboxes support up to 5 key-value tags. Tags can be set at creation, updated\nvia `sandbox.update({ tags })`, and used as filters when listing.\n\n```typescript\nawait Sandbox.create({ tags: { env: \"staging\", team: \"infra\" } });\n\nconst result = await Sandbox.list({ tags: { env: \"staging\" } });\n```\n\n## Listing Sandboxes, Sessions, and Snapshots\n\nAll list APIs use **cursor-based pagination** and return an async-iterable that\nauto-paginates through every page. You can also iterate page-by-page or\ncollect all items at once.\n\n### `Sandbox.list`\n\n```typescript\nconst result = await Sandbox.list({\n  namePrefix: \"ci-\", \u002F\u002F Filter by name prefix\n  tags: { env: \"staging\" }, \u002F\u002F Filter by tags\n  sortBy: \"createdAt\", \u002F\u002F \"createdAt\" (default), \"name\", or \"statusUpdatedAt\"\n  sortOrder: \"desc\", \u002F\u002F \"asc\" or \"desc\" (default)\n  limit: 50,\n});\n\n\u002F\u002F Per-item async iteration (auto-paginates)\nfor await (const sandbox of result) {\n  console.log(sandbox.name);\n}\n\n\u002F\u002F Per-page iteration\nfor await (const page of result.pages()) {\n  console.log(page.sandboxes.length);\n}\n\n\u002F\u002F Collect everything\nconst all = await result.toArray();\n\n\u002F\u002F Or use the cursor directly\nconst next = result.pagination.next;\n```\n\n### `sandbox.listSessions` and `sandbox.listSnapshots`\n\n```typescript\n\u002F\u002F List all VM sessions for this sandbox\nconst sessions = await sandbox.listSessions();\nfor await (const session of sessions) {\n  console.log(session.sessionId, session.status);\n}\n\n\u002F\u002F List snapshots belonging to this sandbox\nconst snapshots = await sandbox.listSnapshots();\nfor await (const snapshot of snapshots) {\n  console.log(snapshot.snapshotId, snapshot.status);\n}\n```\n\n### `Snapshot.list`\n\n```typescript\nconst snapshots = await Snapshot.list({\n  name: \"my-dev-env\", \u002F\u002F Filter by sandbox name\n  sortOrder: \"desc\",\n  limit: 50,\n});\nfor await (const snapshot of snapshots) {\n  console.log(snapshot.snapshotId, snapshot.status);\n}\n```\n\n## Sessions\n\nA **Session** is a single running VM instance inside a sandbox. You typically\ndo not interact with sessions directly — the SDK creates and resumes them for\nyou — but you can inspect the current one.\n\n```typescript\nconst session = sandbox.currentSession();\nconsole.log(session.sessionId);\nconsole.log(session.status); \u002F\u002F \"pending\" | \"running\" | \"stopping\" | \"stopped\" | ...\n```\n\n## Snapshots\n\nSnapshots save the entire sandbox filesystem to be reused later, for any\nnumber of sandboxes.\n\n### Create a Snapshot\n\n```typescript\nconst sandbox = await Sandbox.create({ runtime: \"node24\" });\nawait sandbox.runCommand(\"npm\", [\"install\"]);\n\n\u002F\u002F Create snapshot (stops the sandbox)\nconst snapshot = await sandbox.snapshot({\n  expiration: ms(\"14d\"), \u002F\u002F Default: 30 days, use 0 for no expiration\n});\nconsole.log(\"Snapshot ID:\", snapshot.snapshotId);\n```\n\n### Default Snapshot Expiration and Retention\n\nConfigure default expiration and retention policy per sandbox:\n\n```typescript\nawait Sandbox.create({\n  name: \"my-app\",\n  snapshotExpiration: ms(\"7d\"), \u002F\u002F Default TTL for any snapshot of this sandbox\n  keepLastSnapshots: {\n    count: 1, \u002F\u002F Keep only the most recent snapshot (1-10)\n    expiration: ms(\"30d\"), \u002F\u002F Override expiration for kept snapshots\n    deleteEvicted: true, \u002F\u002F Delete evicted snapshots immediately (default)\n  },\n});\n```\n\n`keepLastSnapshots: { count: 1 }` is the recommended setting when you only\ncare about the latest snapshot — it lets the SDK keep snapshot storage costs flat.\n\n### List, Get, and Delete\n\n```typescript\n\u002F\u002F List all snapshots in the project (auto-paginates)\nconst snapshots = await Snapshot.list();\nfor await (const snapshot of snapshots) {\n  console.log(snapshot.snapshotId, snapshot.status);\n}\n\n\u002F\u002F Get a specific snapshot\nconst snapshot = await Snapshot.get({ snapshotId: \"snap_abc123\" });\n\n\u002F\u002F Delete a snapshot\nawait snapshot.delete();\n```\n\n### Snapshot Tree\n\nSnapshots form a tree: any sandbox created from another snapshot inherits a\nparent → child relationship. Walk that tree to see ancestors or descendants of\na given snapshot.\n\n```typescript\n\u002F\u002F Walk ancestors (default direction)\nconst ancestors = await Snapshot.tree({\n  snapshotId: \"snap_abc\",\n  sortOrder: \"desc\",\n});\nfor await (const node of ancestors) {\n  console.log(node.snapshotId, node.parentId);\n}\n\n\u002F\u002F Walk descendants\nconst descendants = await Snapshot.tree({\n  snapshotId: \"snap_abc\",\n  sortOrder: \"asc\",\n});\n```\n\n### Snapshot Rollback\n\nPoint an existing sandbox at a previous snapshot by updating\n`currentSnapshotId`. New sessions will resume from that snapshot.\n\n```typescript\nawait sandbox.update({ currentSnapshotId: \"snap_previous\" });\n```\n\n## Exposed Ports\n\n```typescript\nconst sandbox = await Sandbox.create({ ports: [3000, 8000] });\n\n\u002F\u002F Get public URL for a port\nconst url = sandbox.domain(3000);\n\u002F\u002F Returns: https:\u002F\u002Fsubdomain.vercel.run\n```\n\nReplace the exposed port list at runtime with `sandbox.update({ ports })`. Any\ncurrently exposed port not present in the new array is deregistered.\n\n```typescript\nawait sandbox.update({ ports: [3000, 8443] });\n```\n\n## Timeout Management\n\n```typescript\nconst sandbox = await Sandbox.create({\n  timeout: ms(\"10m\"), \u002F\u002F Initial timeout, default of 5 minutes\n});\n\n\u002F\u002F Extend timeout by 5 more minutes\nawait sandbox.extendTimeout(ms(\"5m\"));\n\u002F\u002F New total: 15 minutes\n```\n\n## Authentication\n\n### Vercel OIDC Token (Recommended)\n\n```bash\n# Pull development credentials\nvercel link\nvercel env pull\n```\n\nThe SDK automatically uses `VERCEL_OIDC_TOKEN` from environment.\n\n### Access Token (Alternative)\n\n```typescript\nconst sandbox = await Sandbox.create({\n  teamId: process.env.VERCEL_TEAM_ID!,\n  projectId: process.env.VERCEL_PROJECT_ID!,\n  token: process.env.VERCEL_TOKEN!,\n  \u002F\u002F ... other options\n});\n```\n\n## Error Handling\n\n```typescript\nimport { APIError, StreamError } from \"@vercel\u002Fsandbox\";\n\ntry {\n  const sandbox = await Sandbox.create();\n} catch (error) {\n  if (error instanceof APIError) {\n    console.error(\"API Error:\", error.message, error.response.status);\n  } else if (error instanceof StreamError) {\n    console.error(\"Stream Error:\", error.message);\n  }\n  throw error;\n}\n```\n\n## Cancellation with AbortSignal\n\n```typescript\nconst controller = new AbortController();\n\n\u002F\u002F Cancel after 30 seconds\nsetTimeout(() => controller.abort(), 30000);\n\nconst sandbox = await Sandbox.create({\n  signal: controller.signal,\n});\n\nconst result = await sandbox.runCommand({\n  cmd: \"npm\",\n  args: [\"test\"],\n  signal: controller.signal,\n});\n```\n\n## Limitations\n\n| Limitation      | Details                                                                         |\n| --------------- | ------------------------------------------------------------------------------- |\n| Max vCPUs       | 4 vCPUs on Hobby, 8 vCPUs on Pro, 32 vCPUs on Enterprise (2048 MB RAM per vCPU) |\n| Max ports       | 15 exposed ports                                                                |\n| Max tags        | 5 key-value tags per sandbox                                                    |\n| Max timeout     | 24 hours (Pro\u002FEnterprise), 45 minutes (Hobby)                                   |\n| Default timeout | 5 minutes                                                                       |\n| Base system     | Amazon Linux 2023                                                               |\n| User context    | `vercel-sandbox` user                                                           |\n| Writable path   | `\u002Fvercel\u002Fsandbox`                                                               |\n\n## System Packages\n\nPre-installed: `git`, `tar`, `gzip`, `unzip`, `curl`, `openssl`, `procps`, `findutils`, `which`.\n\nInstall additional packages with sudo:\n\n```typescript\nawait sandbox.runCommand({\n  cmd: \"dnf\",\n  args: [\"install\", \"-y\", \"package-name\"],\n  sudo: true,\n});\n```\n\nThis is fine for one-offs, but `dnf` limits you to what is packaged for the\nAmazon Linux 2023 base system. If you need a different distro or base\nenvironment, use a [custom image](#from-a-custom-image-vcr) instead.\n\n## CLI Quick Reference\n\n```bash\n# Install CLI\npnpm i -g sandbox\n\n# Login \u002F Logout\nsandbox login\nsandbox logout\n\n# Create and connect\nsandbox create --connect\nsandbox create --name my-app\nsandbox create --image my-repo:v1            # Boot from a VCR image (not with --runtime)\nsandbox create --non-persistent              # Disable filesystem persistence\nsandbox create --snapshot-expiration 7d      # Default snapshot TTL\nsandbox create --keep-last-snapshots 1       # Retention policy\nsandbox create --tag env=staging             # Repeatable\n\n# Fork an existing sandbox (inherits config, incl. env; --env replaces it)\nsandbox fork \u003Csource>\nsandbox fork \u003Csource> --name my-fork --vcpus 4 --env FOO=1\n\n# List sandboxes (paginated, filterable)\nsandbox ls\nsandbox ls --name-prefix ci- --sort-by name\nsandbox ls --tag env=staging --limit 100 --cursor \u003Ctoken>\n\n# Run a command in a new sandbox (create + exec in one step)\nsandbox run -- node -e \"console.log('hello')\"\nsandbox run --name my-app -- npm test        # Resumes existing sandbox if present\nsandbox run --stop -- npm build              # Stop the session when the command exits\nsandbox run --rm -- npm build                # DELETES the sandbox after running\n\n# Execute command in an existing sandbox\nsandbox exec \u003Cname> -- npm install\nsandbox exec \u003Cname> --stop -- npm build\n\n# Start an interactive shell\nsandbox connect \u003Cname>\n\n# Copy files\nsandbox cp local-file.txt \u003Cname>:\u002Fvercel\u002Fsandbox\u002F\n\n# Stop sandbox (synchronous; reports snapshot + usage)\nsandbox stop \u003Cname>\n\n# Permanently delete sandbox and all its snapshots\nsandbox remove \u003Cname>\n\n# Sessions\nsandbox sessions list \u003Cname>\n\n# Snapshots\nsandbox snapshot \u003Cname>\nsandbox snapshots list --name \u003Cname>\nsandbox snapshots get \u003Csnapshot-id>\nsandbox snapshots remove \u003Csnapshot-id>\nsandbox snapshots tree \u003Cname>                # Walk the tree from the sandbox's current snapshot\nsandbox snapshots tree \u003Cname> --cursor \u003Csnapshot-id> --sort-order asc\n\n# Config (view + update any sandbox parameter)\nsandbox config list \u003Cname>\nsandbox config vcpus \u003Cname> \u003Ccount>\nsandbox config timeout \u003Cname> \u003Cduration>\nsandbox config persistent \u003Cname> \u003Ctrue|false>\nsandbox config snapshot-expiration \u003Cname> \u003Cduration|none>\nsandbox config keep-last-snapshots \u003Cname> \u003Ccount>\nsandbox config keep-last-snapshots-for \u003Cname> \u003Cduration|none>\nsandbox config delete-evicted-snapshots \u003Cname> \u003Ctrue|false>\nsandbox config current-snapshot \u003Cname> \u003Csnapshot-id>\nsandbox config network-policy \u003Cname> --network-policy deny-all\nsandbox config tags \u003Cname> --tag env=prod\n```\n\n## Common Patterns\n\n### Dev Server Pattern (Persistent)\n\n```typescript\nconst sandbox = await Sandbox.getOrCreate({\n  name: \"my-dev-env\",\n  source: { type: \"git\", url: \"https:\u002F\u002Fgithub.com\u002Forg\u002Frepo.git\" },\n  ports: [3000],\n  timeout: ms(\"30m\"),\n  onCreate: async (sbx) => {\n    await sbx.runCommand(\"npm\", [\"install\"]);\n  },\n  onResume: async (sbx) => {\n    await sbx.runCommand({ cmd: \"npm\", args: [\"run\", \"dev\"], detached: true });\n  },\n});\n\nconsole.log(\"App running at:\", sandbox.domain(3000));\n```\n\n### Build and Test Pattern (Ephemeral)\n\n```typescript\nawait using sandbox = await Sandbox.create({\n  source: { type: \"git\", url: repoUrl },\n  persistent: false, \u002F\u002F Skip snapshotting on shutdown\n  snapshotExpiration: ms(\"1d\"), \u002F\u002F Short TTL for any incidental snapshot\n});\n\nconst install = await sandbox.runCommand(\"npm\", [\"ci\"]);\nif (install.exitCode !== 0) throw new Error(\"Install failed\");\n\nconst build = await sandbox.runCommand(\"npm\", [\"run\", \"build\"]);\nif (build.exitCode !== 0) throw new Error(\"Build failed\");\n\nconst test = await sandbox.runCommand(\"npm\", [\"test\"]);\nprocess.exit(test.exitCode);\n```\n\n### Base Sandbox + Forks Pattern\n\nMaintain a single \"base\" sandbox with dependencies installed, and spawn fresh\nchildren from it with `Sandbox.fork`. Each fork inherits the base's config\nand is seeded from its current snapshot — no need to store snapshot IDs in\nyour code. New base snapshots are picked up automatically on the next fork.\n\n```typescript\n\u002F\u002F Once: bootstrap the base sandbox\nawait Sandbox.getOrCreate({\n  name: \"my-base\",\n  runtime: \"node24\",\n  keepLastSnapshots: { count: 5 }, \u002F\u002F Keep storage flat\n  onCreate: async (sbx) => {\n    await sbx.runCommand(\"npm\", [\"install\", \"-g\", \"typescript\", \"tsx\"]);\n  },\n});\n\n\u002F\u002F On every run: fork the base sandbox\nasync function runFromBase(code: string) {\n  await using sandbox = await Sandbox.fork({\n    sourceSandbox: \"my-base\",\n    persistent: false,\n  });\n  await sandbox.writeFiles([\n    { path: \"\u002Fvercel\u002Fsandbox\u002Findex.ts\", content: Buffer.from(code) },\n  ]);\n  return sandbox.runCommand(\"tsx\", [\"index.ts\"]);\n}\n```\n\n### Long-Lived Workspace Pattern\n\n```typescript\n\u002F\u002F Idempotent: first call creates, subsequent calls resume\nconst sandbox = await Sandbox.getOrCreate({\n  name: `workspace-${userId}`,\n  runtime: \"node24\",\n  keepLastSnapshots: { count: 1, expiration: ms(\"5d\") },\n  onCreate: async (sbx) => {\n    await sbx.runCommand(\"git\", [\"clone\", repoUrl, \".\"]);\n    await sbx.runCommand(\"npm\", [\"install\"]);\n  },\n});\n\n\u002F\u002F Use the sandbox — auto-resumes if it was stopped\nawait sandbox.runCommand(\"git\", [\"pull\"]);\n```\n",{"data":35,"body":39},{"name":4,"description":6,"metadata":36},{"author":37,"version":38},"Vercel Inc.","2.0",{"type":40,"children":41},"root",[42,66,79,86,169,175,203,450,456,464,876,884,980,986,992,1532,1538,1635,1641,1651,2191,2196,2240,2246,2258,2511,2534,2540,2796,2802,3050,3056,3249,3255,3422,3428,3472,3493,3610,3628,3906,3919,3925,4014,4323,4329,4341,4498,4504,4510,4705,4711,5004,5010,5320,5326,5496,5502,5508,5795,5801,6000,6006,6161,6167,6219,6239,6530,6536,6541,6547,6574,7267,7279,7384,7390,7395,7793,7798,7804,7831,8216,8222,8228,8318,8324,8413,8419,8676,8682,8961,8967,8972,9412,9440,9446,9457,9696,9724,10097,10103,10122,10217,10223,10247,10601,10607,10650,10656,10675,10833,10838,10851,11053,11059,11071,11081,11643,11658,11974,11984,12221,12227,12237,12350,12356,12361,12367,12676,12682,12687,12926,12937,12943,13223,13229,13234,13587,13593,13606,13674,13680,13835,13848,13923,13929,14110,14116,14122,14167,14180,14186,14366,14372,14752,14758,15110,15116,15258,15264,15331,15336,15499,15519,15525,17312,17318,17324,17884,17890,18517,18523,18535,19172,19178,19656],{"type":43,"tag":44,"props":45,"children":47},"element","h2",{"id":46},"critical-always-use-correct-vercelsandbox-documentation",[48,55,57,64],{"type":43,"tag":49,"props":50,"children":51},"em",{},[52],{"type":53,"value":54},"text","CRITICAL",{"type":53,"value":56},": Always Use Correct ",{"type":43,"tag":58,"props":59,"children":61},"code",{"className":60},[],[62],{"type":53,"value":63},"@vercel\u002Fsandbox",{"type":53,"value":65}," Documentation",{"type":43,"tag":67,"props":68,"children":69},"p",{},[70,72,77],{"type":53,"value":71},"Your knowledge of ",{"type":43,"tag":58,"props":73,"children":75},{"className":74},[],[76],{"type":53,"value":63},{"type":53,"value":78}," may be outdated.\nFollow these instructions before starting on any sandbox-related tasks:",{"type":43,"tag":80,"props":81,"children":83},"h3",{"id":82},"official-resources",[84],{"type":53,"value":85},"Official Resources",{"type":43,"tag":87,"props":88,"children":89},"ul",{},[90,110,125,140,154],{"type":43,"tag":91,"props":92,"children":93},"li",{},[94,100,102],{"type":43,"tag":95,"props":96,"children":97},"strong",{},[98],{"type":53,"value":99},"Documentation",{"type":53,"value":101},": ",{"type":43,"tag":103,"props":104,"children":108},"a",{"href":105,"rel":106},"https:\u002F\u002Fvercel.com\u002Fdocs\u002Fvercel-sandbox",[107],"nofollow",[109],{"type":53,"value":105},{"type":43,"tag":91,"props":111,"children":112},{},[113,118,119],{"type":43,"tag":95,"props":114,"children":115},{},[116],{"type":53,"value":117},"SDK Reference",{"type":53,"value":101},{"type":43,"tag":103,"props":120,"children":123},{"href":121,"rel":122},"https:\u002F\u002Fvercel.com\u002Fdocs\u002Fvercel-sandbox\u002Fsdk-reference",[107],[124],{"type":53,"value":121},{"type":43,"tag":91,"props":126,"children":127},{},[128,133,134],{"type":43,"tag":95,"props":129,"children":130},{},[131],{"type":53,"value":132},"CLI Reference",{"type":53,"value":101},{"type":43,"tag":103,"props":135,"children":138},{"href":136,"rel":137},"https:\u002F\u002Fvercel.com\u002Fdocs\u002Fvercel-sandbox\u002Fcli-reference",[107],[139],{"type":53,"value":136},{"type":43,"tag":91,"props":141,"children":142},{},[143,148,149],{"type":43,"tag":95,"props":144,"children":145},{},[146],{"type":53,"value":147},"GitHub",{"type":53,"value":101},{"type":43,"tag":103,"props":150,"children":152},{"href":24,"rel":151},[107],[153],{"type":53,"value":24},{"type":43,"tag":91,"props":155,"children":156},{},[157,162,163],{"type":43,"tag":95,"props":158,"children":159},{},[160],{"type":53,"value":161},"REST API",{"type":53,"value":101},{"type":43,"tag":103,"props":164,"children":167},{"href":165,"rel":166},"https:\u002F\u002Fvercel.com\u002Fdocs\u002Frest-api\u002Fsandboxes",[107],[168],{"type":53,"value":165},{"type":43,"tag":80,"props":170,"children":172},{"id":171},"what-changed-in-v2",[173],{"type":53,"value":174},"What changed in v2",{"type":43,"tag":67,"props":176,"children":177},{},[178,180,186,188,194,196,201],{"type":53,"value":179},"The ",{"type":43,"tag":58,"props":181,"children":183},{"className":182},[],[184],{"type":53,"value":185},"@vercel\u002Fsandbox@2",{"type":53,"value":187}," SDK and ",{"type":43,"tag":58,"props":189,"children":191},{"className":190},[],[192],{"type":53,"value":193},"sandbox@3",{"type":53,"value":195}," CLI replace anonymous, ephemeral\nsandboxes with ",{"type":43,"tag":95,"props":197,"children":198},{},[199],{"type":53,"value":200},"named, persistent",{"type":53,"value":202}," sandboxes. Key differences from v1:",{"type":43,"tag":87,"props":204,"children":205},{},[206,230,242,270,333,387,414,432],{"type":43,"tag":91,"props":207,"children":208},{},[209,211,220,222,228],{"type":53,"value":210},"Sandboxes are identified by ",{"type":43,"tag":95,"props":212,"children":213},{},[214],{"type":43,"tag":58,"props":215,"children":217},{"className":216},[],[218],{"type":53,"value":219},"name",{"type":53,"value":221}," (not ",{"type":43,"tag":58,"props":223,"children":225},{"className":224},[],[226],{"type":53,"value":227},"sandboxId",{"type":53,"value":229},"). Names are unique per project.",{"type":43,"tag":91,"props":231,"children":232},{},[233,235,240],{"type":53,"value":234},"Sandboxes are ",{"type":43,"tag":95,"props":236,"children":237},{},[238],{"type":53,"value":239},"persistent by default",{"type":53,"value":241}," — when a sandbox stops, the SDK\nautomatically snapshots it and restores the filesystem on the next resume.",{"type":43,"tag":91,"props":243,"children":244},{},[245,247,252,254,260,262,268],{"type":53,"value":246},"A ",{"type":43,"tag":95,"props":248,"children":249},{},[250],{"type":53,"value":251},"Session",{"type":53,"value":253}," is a single running VM instance inside a sandbox. SDK calls\nlike ",{"type":43,"tag":58,"props":255,"children":257},{"className":256},[],[258],{"type":53,"value":259},"runCommand",{"type":53,"value":261},", ",{"type":43,"tag":58,"props":263,"children":265},{"className":264},[],[266],{"type":53,"value":267},"writeFiles",{"type":53,"value":269},", etc. automatically resume a stopped sandbox.",{"type":43,"tag":91,"props":271,"children":272},{},[273,275,281,282,288,289,295,297,303,304,310,311,317,318,324,325,331],{"type":53,"value":274},"New methods: ",{"type":43,"tag":58,"props":276,"children":278},{"className":277},[],[279],{"type":53,"value":280},"Sandbox.getOrCreate",{"type":53,"value":261},{"type":43,"tag":58,"props":283,"children":285},{"className":284},[],[286],{"type":53,"value":287},"Sandbox.fork",{"type":53,"value":261},{"type":43,"tag":58,"props":290,"children":292},{"className":291},[],[293],{"type":53,"value":294},"sandbox.update",{"type":53,"value":296},",\n",{"type":43,"tag":58,"props":298,"children":300},{"className":299},[],[301],{"type":53,"value":302},"sandbox.delete",{"type":53,"value":261},{"type":43,"tag":58,"props":305,"children":307},{"className":306},[],[308],{"type":53,"value":309},"sandbox.listSessions",{"type":53,"value":261},{"type":43,"tag":58,"props":312,"children":314},{"className":313},[],[315],{"type":53,"value":316},"sandbox.listSnapshots",{"type":53,"value":296},{"type":43,"tag":58,"props":319,"children":321},{"className":320},[],[322],{"type":53,"value":323},"Snapshot.tree",{"type":53,"value":261},{"type":43,"tag":58,"props":326,"children":328},{"className":327},[],[329],{"type":53,"value":330},"defineSandboxProxy",{"type":53,"value":332},".",{"type":43,"tag":91,"props":334,"children":335},{},[336,338,343,344,350,351,357,358,364,365,371,372,378,380,386],{"type":53,"value":337},"New params: ",{"type":43,"tag":58,"props":339,"children":341},{"className":340},[],[342],{"type":53,"value":219},{"type":53,"value":261},{"type":43,"tag":58,"props":345,"children":347},{"className":346},[],[348],{"type":53,"value":349},"persistent",{"type":53,"value":261},{"type":43,"tag":58,"props":352,"children":354},{"className":353},[],[355],{"type":53,"value":356},"tags",{"type":53,"value":261},{"type":43,"tag":58,"props":359,"children":361},{"className":360},[],[362],{"type":53,"value":363},"onResume",{"type":53,"value":261},{"type":43,"tag":58,"props":366,"children":368},{"className":367},[],[369],{"type":53,"value":370},"snapshotExpiration",{"type":53,"value":296},{"type":43,"tag":58,"props":373,"children":375},{"className":374},[],[376],{"type":53,"value":377},"keepLastSnapshots",{"type":53,"value":379},", L7 network policy matchers, ",{"type":43,"tag":58,"props":381,"children":383},{"className":382},[],[384],{"type":53,"value":385},"forwardURL",{"type":53,"value":332},{"type":43,"tag":91,"props":388,"children":389},{},[390,392,397,399,405,407,413],{"type":53,"value":391},"Pagination uses ",{"type":43,"tag":95,"props":393,"children":394},{},[395],{"type":53,"value":396},"cursor-based",{"type":53,"value":398}," iterators (async-iterable) instead of ",{"type":43,"tag":58,"props":400,"children":402},{"className":401},[],[403],{"type":53,"value":404},"since",{"type":53,"value":406},"\u002F",{"type":43,"tag":58,"props":408,"children":410},{"className":409},[],[411],{"type":53,"value":412},"until",{"type":53,"value":332},{"type":43,"tag":91,"props":415,"children":416},{},[417,423,425,431],{"type":43,"tag":58,"props":418,"children":420},{"className":419},[],[421],{"type":53,"value":422},"Sandbox.list({ since, until })",{"type":53,"value":424}," → ",{"type":43,"tag":58,"props":426,"children":428},{"className":427},[],[429],{"type":53,"value":430},"Sandbox.list({ cursor, namePrefix, sortBy, tags })",{"type":53,"value":332},{"type":43,"tag":91,"props":433,"children":434},{},[435,437,442,444,449],{"type":53,"value":436},"v1 sandboxes are backfilled so the only required code change is using ",{"type":43,"tag":58,"props":438,"children":440},{"className":439},[],[441],{"type":53,"value":219},{"type":53,"value":443},"\ninstead of ",{"type":43,"tag":58,"props":445,"children":447},{"className":446},[],[448],{"type":53,"value":227},{"type":53,"value":332},{"type":43,"tag":80,"props":451,"children":453},{"id":452},"quick-reference",[454],{"type":53,"value":455},"Quick Reference",{"type":43,"tag":67,"props":457,"children":458},{},[459],{"type":43,"tag":95,"props":460,"children":461},{},[462],{"type":53,"value":463},"Essential imports:",{"type":43,"tag":465,"props":466,"children":471},"pre",{"className":467,"code":468,"language":469,"meta":470,"style":470},"language-typescript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u002F\u002F Core SDK\nimport {\n  Sandbox,\n  Session,\n  Snapshot,\n  Command,\n  CommandFinished,\n} from \"@vercel\u002Fsandbox\";\nimport { APIError, StreamError } from \"@vercel\u002Fsandbox\";\n\n\u002F\u002F For advanced network policy with credential brokering and L7 matchers\nimport type {\n  NetworkPolicy,\n  NetworkPolicyRule,\n  NetworkTransformer,\n} from \"@vercel\u002Fsandbox\";\n\n\u002F\u002F For implementing a request-forwarding proxy (forwardURL)\nimport { defineSandboxProxy } from \"@vercel\u002Fsandbox\u002Fproxy\";\n\n\u002F\u002F For timeouts\nimport ms from \"ms\"; \u002F\u002F e.g., ms(\"5m\"), ms(\"1h\")\n","typescript","",[472],{"type":43,"tag":58,"props":473,"children":474},{"__ignoreMap":470},[475,487,503,517,530,543,556,569,603,656,666,675,692,705,718,731,759,767,776,818,826,835],{"type":43,"tag":476,"props":477,"children":480},"span",{"class":478,"line":479},"line",1,[481],{"type":43,"tag":476,"props":482,"children":484},{"style":483},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic",[485],{"type":53,"value":486},"\u002F\u002F Core SDK\n",{"type":43,"tag":476,"props":488,"children":490},{"class":478,"line":489},2,[491,497],{"type":43,"tag":476,"props":492,"children":494},{"style":493},"--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic",[495],{"type":53,"value":496},"import",{"type":43,"tag":476,"props":498,"children":500},{"style":499},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[501],{"type":53,"value":502}," {\n",{"type":43,"tag":476,"props":504,"children":506},{"class":478,"line":505},3,[507,513],{"type":43,"tag":476,"props":508,"children":510},{"style":509},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[511],{"type":53,"value":512},"  Sandbox",{"type":43,"tag":476,"props":514,"children":515},{"style":499},[516],{"type":53,"value":296},{"type":43,"tag":476,"props":518,"children":520},{"class":478,"line":519},4,[521,526],{"type":43,"tag":476,"props":522,"children":523},{"style":509},[524],{"type":53,"value":525},"  Session",{"type":43,"tag":476,"props":527,"children":528},{"style":499},[529],{"type":53,"value":296},{"type":43,"tag":476,"props":531,"children":533},{"class":478,"line":532},5,[534,539],{"type":43,"tag":476,"props":535,"children":536},{"style":509},[537],{"type":53,"value":538},"  Snapshot",{"type":43,"tag":476,"props":540,"children":541},{"style":499},[542],{"type":53,"value":296},{"type":43,"tag":476,"props":544,"children":546},{"class":478,"line":545},6,[547,552],{"type":43,"tag":476,"props":548,"children":549},{"style":509},[550],{"type":53,"value":551},"  Command",{"type":43,"tag":476,"props":553,"children":554},{"style":499},[555],{"type":53,"value":296},{"type":43,"tag":476,"props":557,"children":559},{"class":478,"line":558},7,[560,565],{"type":43,"tag":476,"props":561,"children":562},{"style":509},[563],{"type":53,"value":564},"  CommandFinished",{"type":43,"tag":476,"props":566,"children":567},{"style":499},[568],{"type":53,"value":296},{"type":43,"tag":476,"props":570,"children":572},{"class":478,"line":571},8,[573,578,583,588,593,598],{"type":43,"tag":476,"props":574,"children":575},{"style":499},[576],{"type":53,"value":577},"}",{"type":43,"tag":476,"props":579,"children":580},{"style":493},[581],{"type":53,"value":582}," from",{"type":43,"tag":476,"props":584,"children":585},{"style":499},[586],{"type":53,"value":587}," \"",{"type":43,"tag":476,"props":589,"children":591},{"style":590},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[592],{"type":53,"value":63},{"type":43,"tag":476,"props":594,"children":595},{"style":499},[596],{"type":53,"value":597},"\"",{"type":43,"tag":476,"props":599,"children":600},{"style":499},[601],{"type":53,"value":602},";\n",{"type":43,"tag":476,"props":604,"children":606},{"class":478,"line":605},9,[607,611,616,621,626,631,636,640,644,648,652],{"type":43,"tag":476,"props":608,"children":609},{"style":493},[610],{"type":53,"value":496},{"type":43,"tag":476,"props":612,"children":613},{"style":499},[614],{"type":53,"value":615}," {",{"type":43,"tag":476,"props":617,"children":618},{"style":509},[619],{"type":53,"value":620}," APIError",{"type":43,"tag":476,"props":622,"children":623},{"style":499},[624],{"type":53,"value":625},",",{"type":43,"tag":476,"props":627,"children":628},{"style":509},[629],{"type":53,"value":630}," StreamError",{"type":43,"tag":476,"props":632,"children":633},{"style":499},[634],{"type":53,"value":635}," }",{"type":43,"tag":476,"props":637,"children":638},{"style":493},[639],{"type":53,"value":582},{"type":43,"tag":476,"props":641,"children":642},{"style":499},[643],{"type":53,"value":587},{"type":43,"tag":476,"props":645,"children":646},{"style":590},[647],{"type":53,"value":63},{"type":43,"tag":476,"props":649,"children":650},{"style":499},[651],{"type":53,"value":597},{"type":43,"tag":476,"props":653,"children":654},{"style":499},[655],{"type":53,"value":602},{"type":43,"tag":476,"props":657,"children":659},{"class":478,"line":658},10,[660],{"type":43,"tag":476,"props":661,"children":663},{"emptyLinePlaceholder":662},true,[664],{"type":53,"value":665},"\n",{"type":43,"tag":476,"props":667,"children":669},{"class":478,"line":668},11,[670],{"type":43,"tag":476,"props":671,"children":672},{"style":483},[673],{"type":53,"value":674},"\u002F\u002F For advanced network policy with credential brokering and L7 matchers\n",{"type":43,"tag":476,"props":676,"children":678},{"class":478,"line":677},12,[679,683,688],{"type":43,"tag":476,"props":680,"children":681},{"style":493},[682],{"type":53,"value":496},{"type":43,"tag":476,"props":684,"children":685},{"style":493},[686],{"type":53,"value":687}," type",{"type":43,"tag":476,"props":689,"children":690},{"style":499},[691],{"type":53,"value":502},{"type":43,"tag":476,"props":693,"children":695},{"class":478,"line":694},13,[696,701],{"type":43,"tag":476,"props":697,"children":698},{"style":509},[699],{"type":53,"value":700},"  NetworkPolicy",{"type":43,"tag":476,"props":702,"children":703},{"style":499},[704],{"type":53,"value":296},{"type":43,"tag":476,"props":706,"children":708},{"class":478,"line":707},14,[709,714],{"type":43,"tag":476,"props":710,"children":711},{"style":509},[712],{"type":53,"value":713},"  NetworkPolicyRule",{"type":43,"tag":476,"props":715,"children":716},{"style":499},[717],{"type":53,"value":296},{"type":43,"tag":476,"props":719,"children":721},{"class":478,"line":720},15,[722,727],{"type":43,"tag":476,"props":723,"children":724},{"style":509},[725],{"type":53,"value":726},"  NetworkTransformer",{"type":43,"tag":476,"props":728,"children":729},{"style":499},[730],{"type":53,"value":296},{"type":43,"tag":476,"props":732,"children":734},{"class":478,"line":733},16,[735,739,743,747,751,755],{"type":43,"tag":476,"props":736,"children":737},{"style":499},[738],{"type":53,"value":577},{"type":43,"tag":476,"props":740,"children":741},{"style":493},[742],{"type":53,"value":582},{"type":43,"tag":476,"props":744,"children":745},{"style":499},[746],{"type":53,"value":587},{"type":43,"tag":476,"props":748,"children":749},{"style":590},[750],{"type":53,"value":63},{"type":43,"tag":476,"props":752,"children":753},{"style":499},[754],{"type":53,"value":597},{"type":43,"tag":476,"props":756,"children":757},{"style":499},[758],{"type":53,"value":602},{"type":43,"tag":476,"props":760,"children":762},{"class":478,"line":761},17,[763],{"type":43,"tag":476,"props":764,"children":765},{"emptyLinePlaceholder":662},[766],{"type":53,"value":665},{"type":43,"tag":476,"props":768,"children":770},{"class":478,"line":769},18,[771],{"type":43,"tag":476,"props":772,"children":773},{"style":483},[774],{"type":53,"value":775},"\u002F\u002F For implementing a request-forwarding proxy (forwardURL)\n",{"type":43,"tag":476,"props":777,"children":779},{"class":478,"line":778},19,[780,784,788,793,797,801,805,810,814],{"type":43,"tag":476,"props":781,"children":782},{"style":493},[783],{"type":53,"value":496},{"type":43,"tag":476,"props":785,"children":786},{"style":499},[787],{"type":53,"value":615},{"type":43,"tag":476,"props":789,"children":790},{"style":509},[791],{"type":53,"value":792}," defineSandboxProxy",{"type":43,"tag":476,"props":794,"children":795},{"style":499},[796],{"type":53,"value":635},{"type":43,"tag":476,"props":798,"children":799},{"style":493},[800],{"type":53,"value":582},{"type":43,"tag":476,"props":802,"children":803},{"style":499},[804],{"type":53,"value":587},{"type":43,"tag":476,"props":806,"children":807},{"style":590},[808],{"type":53,"value":809},"@vercel\u002Fsandbox\u002Fproxy",{"type":43,"tag":476,"props":811,"children":812},{"style":499},[813],{"type":53,"value":597},{"type":43,"tag":476,"props":815,"children":816},{"style":499},[817],{"type":53,"value":602},{"type":43,"tag":476,"props":819,"children":821},{"class":478,"line":820},20,[822],{"type":43,"tag":476,"props":823,"children":824},{"emptyLinePlaceholder":662},[825],{"type":53,"value":665},{"type":43,"tag":476,"props":827,"children":829},{"class":478,"line":828},21,[830],{"type":43,"tag":476,"props":831,"children":832},{"style":483},[833],{"type":53,"value":834},"\u002F\u002F For timeouts\n",{"type":43,"tag":476,"props":836,"children":838},{"class":478,"line":837},22,[839,843,848,853,857,862,866,871],{"type":43,"tag":476,"props":840,"children":841},{"style":493},[842],{"type":53,"value":496},{"type":43,"tag":476,"props":844,"children":845},{"style":509},[846],{"type":53,"value":847}," ms ",{"type":43,"tag":476,"props":849,"children":850},{"style":493},[851],{"type":53,"value":852},"from",{"type":43,"tag":476,"props":854,"children":855},{"style":499},[856],{"type":53,"value":587},{"type":43,"tag":476,"props":858,"children":859},{"style":590},[860],{"type":53,"value":861},"ms",{"type":43,"tag":476,"props":863,"children":864},{"style":499},[865],{"type":53,"value":597},{"type":43,"tag":476,"props":867,"children":868},{"style":499},[869],{"type":53,"value":870},";",{"type":43,"tag":476,"props":872,"children":873},{"style":483},[874],{"type":53,"value":875}," \u002F\u002F e.g., ms(\"5m\"), ms(\"1h\")\n",{"type":43,"tag":67,"props":877,"children":878},{},[879],{"type":43,"tag":95,"props":880,"children":881},{},[882],{"type":53,"value":883},"Available runtimes:",{"type":43,"tag":465,"props":885,"children":887},{"className":467,"code":886,"language":469,"meta":470,"style":470},"type RUNTIMES = \"node26\" | \"node24\" | \"node22\" | \"python3.13\";\n",[888],{"type":43,"tag":58,"props":889,"children":890},{"__ignoreMap":470},[891],{"type":43,"tag":476,"props":892,"children":893},{"class":478,"line":479},[894,900,906,911,915,920,924,929,933,938,942,946,950,955,959,963,967,972,976],{"type":43,"tag":476,"props":895,"children":897},{"style":896},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[898],{"type":53,"value":899},"type",{"type":43,"tag":476,"props":901,"children":903},{"style":902},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[904],{"type":53,"value":905}," RUNTIMES",{"type":43,"tag":476,"props":907,"children":908},{"style":499},[909],{"type":53,"value":910}," =",{"type":43,"tag":476,"props":912,"children":913},{"style":499},[914],{"type":53,"value":587},{"type":43,"tag":476,"props":916,"children":917},{"style":590},[918],{"type":53,"value":919},"node26",{"type":43,"tag":476,"props":921,"children":922},{"style":499},[923],{"type":53,"value":597},{"type":43,"tag":476,"props":925,"children":926},{"style":499},[927],{"type":53,"value":928}," |",{"type":43,"tag":476,"props":930,"children":931},{"style":499},[932],{"type":53,"value":587},{"type":43,"tag":476,"props":934,"children":935},{"style":590},[936],{"type":53,"value":937},"node24",{"type":43,"tag":476,"props":939,"children":940},{"style":499},[941],{"type":53,"value":597},{"type":43,"tag":476,"props":943,"children":944},{"style":499},[945],{"type":53,"value":928},{"type":43,"tag":476,"props":947,"children":948},{"style":499},[949],{"type":53,"value":587},{"type":43,"tag":476,"props":951,"children":952},{"style":590},[953],{"type":53,"value":954},"node22",{"type":43,"tag":476,"props":956,"children":957},{"style":499},[958],{"type":53,"value":597},{"type":43,"tag":476,"props":960,"children":961},{"style":499},[962],{"type":53,"value":928},{"type":43,"tag":476,"props":964,"children":965},{"style":499},[966],{"type":53,"value":587},{"type":43,"tag":476,"props":968,"children":969},{"style":590},[970],{"type":53,"value":971},"python3.13",{"type":43,"tag":476,"props":973,"children":974},{"style":499},[975],{"type":53,"value":597},{"type":43,"tag":476,"props":977,"children":978},{"style":499},[979],{"type":53,"value":602},{"type":43,"tag":44,"props":981,"children":983},{"id":982},"creating-sandboxes",[984],{"type":53,"value":985},"Creating Sandboxes",{"type":43,"tag":80,"props":987,"children":989},{"id":988},"basic-creation",[990],{"type":53,"value":991},"Basic Creation",{"type":43,"tag":465,"props":993,"children":995},{"className":467,"code":994,"language":469,"meta":470,"style":470},"import { Sandbox } from \"@vercel\u002Fsandbox\";\n\nconst sandbox = await Sandbox.create({\n  name: \"my-dev-env\", \u002F\u002F Optional, random if omitted. Unique per project.\n  runtime: \"node24\",\n  resources: { vcpus: 4 }, \u002F\u002F 2048 MB RAM per vCPU\n  ports: [3000], \u002F\u002F Expose up to 15 ports\n  timeout: ms(\"10m\"), \u002F\u002F Default: 5 minutes\n  env: { NODE_ENV: \"production\" }, \u002F\u002F Env vars inherited by all commands\n  tags: { env: \"staging\", team: \"infra\" }, \u002F\u002F Up to 5 key:value tags\n  persistent: true, \u002F\u002F Default: true. Auto-snapshots on stop, restores on resume.\n  snapshotExpiration: ms(\"7d\"), \u002F\u002F Default TTL for snapshots. Use 0 for no expiration.\n});\n\nconsole.log(sandbox.name);\n",[996],{"type":43,"tag":58,"props":997,"children":998},{"__ignoreMap":470},[999,1039,1046,1093,1129,1157,1198,1234,1282,1329,1402,1429,1475,1490,1497],{"type":43,"tag":476,"props":1000,"children":1001},{"class":478,"line":479},[1002,1006,1010,1015,1019,1023,1027,1031,1035],{"type":43,"tag":476,"props":1003,"children":1004},{"style":493},[1005],{"type":53,"value":496},{"type":43,"tag":476,"props":1007,"children":1008},{"style":499},[1009],{"type":53,"value":615},{"type":43,"tag":476,"props":1011,"children":1012},{"style":509},[1013],{"type":53,"value":1014}," Sandbox",{"type":43,"tag":476,"props":1016,"children":1017},{"style":499},[1018],{"type":53,"value":635},{"type":43,"tag":476,"props":1020,"children":1021},{"style":493},[1022],{"type":53,"value":582},{"type":43,"tag":476,"props":1024,"children":1025},{"style":499},[1026],{"type":53,"value":587},{"type":43,"tag":476,"props":1028,"children":1029},{"style":590},[1030],{"type":53,"value":63},{"type":43,"tag":476,"props":1032,"children":1033},{"style":499},[1034],{"type":53,"value":597},{"type":43,"tag":476,"props":1036,"children":1037},{"style":499},[1038],{"type":53,"value":602},{"type":43,"tag":476,"props":1040,"children":1041},{"class":478,"line":489},[1042],{"type":43,"tag":476,"props":1043,"children":1044},{"emptyLinePlaceholder":662},[1045],{"type":53,"value":665},{"type":43,"tag":476,"props":1047,"children":1048},{"class":478,"line":505},[1049,1054,1059,1064,1069,1073,1077,1083,1088],{"type":43,"tag":476,"props":1050,"children":1051},{"style":896},[1052],{"type":53,"value":1053},"const",{"type":43,"tag":476,"props":1055,"children":1056},{"style":509},[1057],{"type":53,"value":1058}," sandbox ",{"type":43,"tag":476,"props":1060,"children":1061},{"style":499},[1062],{"type":53,"value":1063},"=",{"type":43,"tag":476,"props":1065,"children":1066},{"style":493},[1067],{"type":53,"value":1068}," await",{"type":43,"tag":476,"props":1070,"children":1071},{"style":509},[1072],{"type":53,"value":1014},{"type":43,"tag":476,"props":1074,"children":1075},{"style":499},[1076],{"type":53,"value":332},{"type":43,"tag":476,"props":1078,"children":1080},{"style":1079},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[1081],{"type":53,"value":1082},"create",{"type":43,"tag":476,"props":1084,"children":1085},{"style":509},[1086],{"type":53,"value":1087},"(",{"type":43,"tag":476,"props":1089,"children":1090},{"style":499},[1091],{"type":53,"value":1092},"{\n",{"type":43,"tag":476,"props":1094,"children":1095},{"class":478,"line":519},[1096,1102,1107,1111,1116,1120,1124],{"type":43,"tag":476,"props":1097,"children":1099},{"style":1098},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[1100],{"type":53,"value":1101},"  name",{"type":43,"tag":476,"props":1103,"children":1104},{"style":499},[1105],{"type":53,"value":1106},":",{"type":43,"tag":476,"props":1108,"children":1109},{"style":499},[1110],{"type":53,"value":587},{"type":43,"tag":476,"props":1112,"children":1113},{"style":590},[1114],{"type":53,"value":1115},"my-dev-env",{"type":43,"tag":476,"props":1117,"children":1118},{"style":499},[1119],{"type":53,"value":597},{"type":43,"tag":476,"props":1121,"children":1122},{"style":499},[1123],{"type":53,"value":625},{"type":43,"tag":476,"props":1125,"children":1126},{"style":483},[1127],{"type":53,"value":1128}," \u002F\u002F Optional, random if omitted. Unique per project.\n",{"type":43,"tag":476,"props":1130,"children":1131},{"class":478,"line":532},[1132,1137,1141,1145,1149,1153],{"type":43,"tag":476,"props":1133,"children":1134},{"style":1098},[1135],{"type":53,"value":1136},"  runtime",{"type":43,"tag":476,"props":1138,"children":1139},{"style":499},[1140],{"type":53,"value":1106},{"type":43,"tag":476,"props":1142,"children":1143},{"style":499},[1144],{"type":53,"value":587},{"type":43,"tag":476,"props":1146,"children":1147},{"style":590},[1148],{"type":53,"value":937},{"type":43,"tag":476,"props":1150,"children":1151},{"style":499},[1152],{"type":53,"value":597},{"type":43,"tag":476,"props":1154,"children":1155},{"style":499},[1156],{"type":53,"value":296},{"type":43,"tag":476,"props":1158,"children":1159},{"class":478,"line":545},[1160,1165,1169,1173,1178,1182,1188,1193],{"type":43,"tag":476,"props":1161,"children":1162},{"style":1098},[1163],{"type":53,"value":1164},"  resources",{"type":43,"tag":476,"props":1166,"children":1167},{"style":499},[1168],{"type":53,"value":1106},{"type":43,"tag":476,"props":1170,"children":1171},{"style":499},[1172],{"type":53,"value":615},{"type":43,"tag":476,"props":1174,"children":1175},{"style":1098},[1176],{"type":53,"value":1177}," vcpus",{"type":43,"tag":476,"props":1179,"children":1180},{"style":499},[1181],{"type":53,"value":1106},{"type":43,"tag":476,"props":1183,"children":1185},{"style":1184},"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C",[1186],{"type":53,"value":1187}," 4",{"type":43,"tag":476,"props":1189,"children":1190},{"style":499},[1191],{"type":53,"value":1192}," },",{"type":43,"tag":476,"props":1194,"children":1195},{"style":483},[1196],{"type":53,"value":1197}," \u002F\u002F 2048 MB RAM per vCPU\n",{"type":43,"tag":476,"props":1199,"children":1200},{"class":478,"line":558},[1201,1206,1210,1215,1220,1225,1229],{"type":43,"tag":476,"props":1202,"children":1203},{"style":1098},[1204],{"type":53,"value":1205},"  ports",{"type":43,"tag":476,"props":1207,"children":1208},{"style":499},[1209],{"type":53,"value":1106},{"type":43,"tag":476,"props":1211,"children":1212},{"style":509},[1213],{"type":53,"value":1214}," [",{"type":43,"tag":476,"props":1216,"children":1217},{"style":1184},[1218],{"type":53,"value":1219},"3000",{"type":43,"tag":476,"props":1221,"children":1222},{"style":509},[1223],{"type":53,"value":1224},"]",{"type":43,"tag":476,"props":1226,"children":1227},{"style":499},[1228],{"type":53,"value":625},{"type":43,"tag":476,"props":1230,"children":1231},{"style":483},[1232],{"type":53,"value":1233}," \u002F\u002F Expose up to 15 ports\n",{"type":43,"tag":476,"props":1235,"children":1236},{"class":478,"line":571},[1237,1242,1246,1251,1255,1259,1264,1268,1273,1277],{"type":43,"tag":476,"props":1238,"children":1239},{"style":1098},[1240],{"type":53,"value":1241},"  timeout",{"type":43,"tag":476,"props":1243,"children":1244},{"style":499},[1245],{"type":53,"value":1106},{"type":43,"tag":476,"props":1247,"children":1248},{"style":1079},[1249],{"type":53,"value":1250}," ms",{"type":43,"tag":476,"props":1252,"children":1253},{"style":509},[1254],{"type":53,"value":1087},{"type":43,"tag":476,"props":1256,"children":1257},{"style":499},[1258],{"type":53,"value":597},{"type":43,"tag":476,"props":1260,"children":1261},{"style":590},[1262],{"type":53,"value":1263},"10m",{"type":43,"tag":476,"props":1265,"children":1266},{"style":499},[1267],{"type":53,"value":597},{"type":43,"tag":476,"props":1269,"children":1270},{"style":509},[1271],{"type":53,"value":1272},")",{"type":43,"tag":476,"props":1274,"children":1275},{"style":499},[1276],{"type":53,"value":625},{"type":43,"tag":476,"props":1278,"children":1279},{"style":483},[1280],{"type":53,"value":1281}," \u002F\u002F Default: 5 minutes\n",{"type":43,"tag":476,"props":1283,"children":1284},{"class":478,"line":605},[1285,1290,1294,1298,1303,1307,1311,1316,1320,1324],{"type":43,"tag":476,"props":1286,"children":1287},{"style":1098},[1288],{"type":53,"value":1289},"  env",{"type":43,"tag":476,"props":1291,"children":1292},{"style":499},[1293],{"type":53,"value":1106},{"type":43,"tag":476,"props":1295,"children":1296},{"style":499},[1297],{"type":53,"value":615},{"type":43,"tag":476,"props":1299,"children":1300},{"style":1098},[1301],{"type":53,"value":1302}," NODE_ENV",{"type":43,"tag":476,"props":1304,"children":1305},{"style":499},[1306],{"type":53,"value":1106},{"type":43,"tag":476,"props":1308,"children":1309},{"style":499},[1310],{"type":53,"value":587},{"type":43,"tag":476,"props":1312,"children":1313},{"style":590},[1314],{"type":53,"value":1315},"production",{"type":43,"tag":476,"props":1317,"children":1318},{"style":499},[1319],{"type":53,"value":597},{"type":43,"tag":476,"props":1321,"children":1322},{"style":499},[1323],{"type":53,"value":1192},{"type":43,"tag":476,"props":1325,"children":1326},{"style":483},[1327],{"type":53,"value":1328}," \u002F\u002F Env vars inherited by all commands\n",{"type":43,"tag":476,"props":1330,"children":1331},{"class":478,"line":658},[1332,1337,1341,1345,1350,1354,1358,1363,1367,1371,1376,1380,1384,1389,1393,1397],{"type":43,"tag":476,"props":1333,"children":1334},{"style":1098},[1335],{"type":53,"value":1336},"  tags",{"type":43,"tag":476,"props":1338,"children":1339},{"style":499},[1340],{"type":53,"value":1106},{"type":43,"tag":476,"props":1342,"children":1343},{"style":499},[1344],{"type":53,"value":615},{"type":43,"tag":476,"props":1346,"children":1347},{"style":1098},[1348],{"type":53,"value":1349}," env",{"type":43,"tag":476,"props":1351,"children":1352},{"style":499},[1353],{"type":53,"value":1106},{"type":43,"tag":476,"props":1355,"children":1356},{"style":499},[1357],{"type":53,"value":587},{"type":43,"tag":476,"props":1359,"children":1360},{"style":590},[1361],{"type":53,"value":1362},"staging",{"type":43,"tag":476,"props":1364,"children":1365},{"style":499},[1366],{"type":53,"value":597},{"type":43,"tag":476,"props":1368,"children":1369},{"style":499},[1370],{"type":53,"value":625},{"type":43,"tag":476,"props":1372,"children":1373},{"style":1098},[1374],{"type":53,"value":1375}," team",{"type":43,"tag":476,"props":1377,"children":1378},{"style":499},[1379],{"type":53,"value":1106},{"type":43,"tag":476,"props":1381,"children":1382},{"style":499},[1383],{"type":53,"value":587},{"type":43,"tag":476,"props":1385,"children":1386},{"style":590},[1387],{"type":53,"value":1388},"infra",{"type":43,"tag":476,"props":1390,"children":1391},{"style":499},[1392],{"type":53,"value":597},{"type":43,"tag":476,"props":1394,"children":1395},{"style":499},[1396],{"type":53,"value":1192},{"type":43,"tag":476,"props":1398,"children":1399},{"style":483},[1400],{"type":53,"value":1401}," \u002F\u002F Up to 5 key:value tags\n",{"type":43,"tag":476,"props":1403,"children":1404},{"class":478,"line":668},[1405,1410,1414,1420,1424],{"type":43,"tag":476,"props":1406,"children":1407},{"style":1098},[1408],{"type":53,"value":1409},"  persistent",{"type":43,"tag":476,"props":1411,"children":1412},{"style":499},[1413],{"type":53,"value":1106},{"type":43,"tag":476,"props":1415,"children":1417},{"style":1416},"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC",[1418],{"type":53,"value":1419}," true",{"type":43,"tag":476,"props":1421,"children":1422},{"style":499},[1423],{"type":53,"value":625},{"type":43,"tag":476,"props":1425,"children":1426},{"style":483},[1427],{"type":53,"value":1428}," \u002F\u002F Default: true. Auto-snapshots on stop, restores on resume.\n",{"type":43,"tag":476,"props":1430,"children":1431},{"class":478,"line":677},[1432,1437,1441,1445,1449,1453,1458,1462,1466,1470],{"type":43,"tag":476,"props":1433,"children":1434},{"style":1098},[1435],{"type":53,"value":1436},"  snapshotExpiration",{"type":43,"tag":476,"props":1438,"children":1439},{"style":499},[1440],{"type":53,"value":1106},{"type":43,"tag":476,"props":1442,"children":1443},{"style":1079},[1444],{"type":53,"value":1250},{"type":43,"tag":476,"props":1446,"children":1447},{"style":509},[1448],{"type":53,"value":1087},{"type":43,"tag":476,"props":1450,"children":1451},{"style":499},[1452],{"type":53,"value":597},{"type":43,"tag":476,"props":1454,"children":1455},{"style":590},[1456],{"type":53,"value":1457},"7d",{"type":43,"tag":476,"props":1459,"children":1460},{"style":499},[1461],{"type":53,"value":597},{"type":43,"tag":476,"props":1463,"children":1464},{"style":509},[1465],{"type":53,"value":1272},{"type":43,"tag":476,"props":1467,"children":1468},{"style":499},[1469],{"type":53,"value":625},{"type":43,"tag":476,"props":1471,"children":1472},{"style":483},[1473],{"type":53,"value":1474}," \u002F\u002F Default TTL for snapshots. Use 0 for no expiration.\n",{"type":43,"tag":476,"props":1476,"children":1477},{"class":478,"line":694},[1478,1482,1486],{"type":43,"tag":476,"props":1479,"children":1480},{"style":499},[1481],{"type":53,"value":577},{"type":43,"tag":476,"props":1483,"children":1484},{"style":509},[1485],{"type":53,"value":1272},{"type":43,"tag":476,"props":1487,"children":1488},{"style":499},[1489],{"type":53,"value":602},{"type":43,"tag":476,"props":1491,"children":1492},{"class":478,"line":707},[1493],{"type":43,"tag":476,"props":1494,"children":1495},{"emptyLinePlaceholder":662},[1496],{"type":53,"value":665},{"type":43,"tag":476,"props":1498,"children":1499},{"class":478,"line":720},[1500,1505,1509,1514,1519,1523,1528],{"type":43,"tag":476,"props":1501,"children":1502},{"style":509},[1503],{"type":53,"value":1504},"console",{"type":43,"tag":476,"props":1506,"children":1507},{"style":499},[1508],{"type":53,"value":332},{"type":43,"tag":476,"props":1510,"children":1511},{"style":1079},[1512],{"type":53,"value":1513},"log",{"type":43,"tag":476,"props":1515,"children":1516},{"style":509},[1517],{"type":53,"value":1518},"(sandbox",{"type":43,"tag":476,"props":1520,"children":1521},{"style":499},[1522],{"type":53,"value":332},{"type":43,"tag":476,"props":1524,"children":1525},{"style":509},[1526],{"type":53,"value":1527},"name)",{"type":43,"tag":476,"props":1529,"children":1530},{"style":499},[1531],{"type":53,"value":602},{"type":43,"tag":80,"props":1533,"children":1535},{"id":1534},"retrieve-an-existing-sandbox",[1536],{"type":53,"value":1537},"Retrieve an Existing Sandbox",{"type":43,"tag":465,"props":1539,"children":1541},{"className":467,"code":1540,"language":469,"meta":470,"style":470},"\u002F\u002F Retrieve by name. The sandbox will resume automatically the next time\n\u002F\u002F you run a command.\nconst sandbox = await Sandbox.get({ name: \"my-dev-env\" });\n",[1542],{"type":43,"tag":58,"props":1543,"children":1544},{"__ignoreMap":470},[1545,1553,1561],{"type":43,"tag":476,"props":1546,"children":1547},{"class":478,"line":479},[1548],{"type":43,"tag":476,"props":1549,"children":1550},{"style":483},[1551],{"type":53,"value":1552},"\u002F\u002F Retrieve by name. The sandbox will resume automatically the next time\n",{"type":43,"tag":476,"props":1554,"children":1555},{"class":478,"line":489},[1556],{"type":43,"tag":476,"props":1557,"children":1558},{"style":483},[1559],{"type":53,"value":1560},"\u002F\u002F you run a command.\n",{"type":43,"tag":476,"props":1562,"children":1563},{"class":478,"line":505},[1564,1568,1572,1576,1580,1584,1588,1593,1597,1602,1607,1611,1615,1619,1623,1627,1631],{"type":43,"tag":476,"props":1565,"children":1566},{"style":896},[1567],{"type":53,"value":1053},{"type":43,"tag":476,"props":1569,"children":1570},{"style":509},[1571],{"type":53,"value":1058},{"type":43,"tag":476,"props":1573,"children":1574},{"style":499},[1575],{"type":53,"value":1063},{"type":43,"tag":476,"props":1577,"children":1578},{"style":493},[1579],{"type":53,"value":1068},{"type":43,"tag":476,"props":1581,"children":1582},{"style":509},[1583],{"type":53,"value":1014},{"type":43,"tag":476,"props":1585,"children":1586},{"style":499},[1587],{"type":53,"value":332},{"type":43,"tag":476,"props":1589,"children":1590},{"style":1079},[1591],{"type":53,"value":1592},"get",{"type":43,"tag":476,"props":1594,"children":1595},{"style":509},[1596],{"type":53,"value":1087},{"type":43,"tag":476,"props":1598,"children":1599},{"style":499},[1600],{"type":53,"value":1601},"{",{"type":43,"tag":476,"props":1603,"children":1604},{"style":1098},[1605],{"type":53,"value":1606}," name",{"type":43,"tag":476,"props":1608,"children":1609},{"style":499},[1610],{"type":53,"value":1106},{"type":43,"tag":476,"props":1612,"children":1613},{"style":499},[1614],{"type":53,"value":587},{"type":43,"tag":476,"props":1616,"children":1617},{"style":590},[1618],{"type":53,"value":1115},{"type":43,"tag":476,"props":1620,"children":1621},{"style":499},[1622],{"type":53,"value":597},{"type":43,"tag":476,"props":1624,"children":1625},{"style":499},[1626],{"type":53,"value":635},{"type":43,"tag":476,"props":1628,"children":1629},{"style":509},[1630],{"type":53,"value":1272},{"type":43,"tag":476,"props":1632,"children":1633},{"style":499},[1634],{"type":53,"value":602},{"type":43,"tag":80,"props":1636,"children":1638},{"id":1637},"get-or-create-idempotent",[1639],{"type":53,"value":1640},"Get-or-Create (Idempotent)",{"type":43,"tag":67,"props":1642,"children":1643},{},[1644,1649],{"type":43,"tag":58,"props":1645,"children":1647},{"className":1646},[],[1648],{"type":53,"value":280},{"type":53,"value":1650}," is the recommended pattern for long-lived sandboxes.",{"type":43,"tag":465,"props":1652,"children":1654},{"className":467,"code":1653,"language":469,"meta":470,"style":470},"const sandbox = await Sandbox.getOrCreate({\n  name: \"my-workspace\",\n  runtime: \"node24\",\n  \u002F\u002F Runs only the first time the sandbox is created.\n  onCreate: async (sbx) => {\n    await sbx.writeFiles([\n      { path: \"README.md\", content: Buffer.from(\"# Hello\") },\n    ]);\n    await sbx.runCommand(\"npm\", [\"install\"]);\n  },\n  \u002F\u002F Runs every time the sandbox session is resumed (including after auto-resume).\n  onResume: async (sbx) => {\n    await sbx.runCommand({ cmd: \"npm\", args: [\"run\", \"dev\"], detached: true });\n  },\n});\n",[1655],{"type":43,"tag":58,"props":1656,"children":1657},{"__ignoreMap":470},[1658,1698,1726,1753,1761,1802,1828,1911,1923,1989,1997,2005,2041,2169,2176],{"type":43,"tag":476,"props":1659,"children":1660},{"class":478,"line":479},[1661,1665,1669,1673,1677,1681,1685,1690,1694],{"type":43,"tag":476,"props":1662,"children":1663},{"style":896},[1664],{"type":53,"value":1053},{"type":43,"tag":476,"props":1666,"children":1667},{"style":509},[1668],{"type":53,"value":1058},{"type":43,"tag":476,"props":1670,"children":1671},{"style":499},[1672],{"type":53,"value":1063},{"type":43,"tag":476,"props":1674,"children":1675},{"style":493},[1676],{"type":53,"value":1068},{"type":43,"tag":476,"props":1678,"children":1679},{"style":509},[1680],{"type":53,"value":1014},{"type":43,"tag":476,"props":1682,"children":1683},{"style":499},[1684],{"type":53,"value":332},{"type":43,"tag":476,"props":1686,"children":1687},{"style":1079},[1688],{"type":53,"value":1689},"getOrCreate",{"type":43,"tag":476,"props":1691,"children":1692},{"style":509},[1693],{"type":53,"value":1087},{"type":43,"tag":476,"props":1695,"children":1696},{"style":499},[1697],{"type":53,"value":1092},{"type":43,"tag":476,"props":1699,"children":1700},{"class":478,"line":489},[1701,1705,1709,1713,1718,1722],{"type":43,"tag":476,"props":1702,"children":1703},{"style":1098},[1704],{"type":53,"value":1101},{"type":43,"tag":476,"props":1706,"children":1707},{"style":499},[1708],{"type":53,"value":1106},{"type":43,"tag":476,"props":1710,"children":1711},{"style":499},[1712],{"type":53,"value":587},{"type":43,"tag":476,"props":1714,"children":1715},{"style":590},[1716],{"type":53,"value":1717},"my-workspace",{"type":43,"tag":476,"props":1719,"children":1720},{"style":499},[1721],{"type":53,"value":597},{"type":43,"tag":476,"props":1723,"children":1724},{"style":499},[1725],{"type":53,"value":296},{"type":43,"tag":476,"props":1727,"children":1728},{"class":478,"line":505},[1729,1733,1737,1741,1745,1749],{"type":43,"tag":476,"props":1730,"children":1731},{"style":1098},[1732],{"type":53,"value":1136},{"type":43,"tag":476,"props":1734,"children":1735},{"style":499},[1736],{"type":53,"value":1106},{"type":43,"tag":476,"props":1738,"children":1739},{"style":499},[1740],{"type":53,"value":587},{"type":43,"tag":476,"props":1742,"children":1743},{"style":590},[1744],{"type":53,"value":937},{"type":43,"tag":476,"props":1746,"children":1747},{"style":499},[1748],{"type":53,"value":597},{"type":43,"tag":476,"props":1750,"children":1751},{"style":499},[1752],{"type":53,"value":296},{"type":43,"tag":476,"props":1754,"children":1755},{"class":478,"line":519},[1756],{"type":43,"tag":476,"props":1757,"children":1758},{"style":483},[1759],{"type":53,"value":1760},"  \u002F\u002F Runs only the first time the sandbox is created.\n",{"type":43,"tag":476,"props":1762,"children":1763},{"class":478,"line":532},[1764,1769,1773,1778,1783,1789,1793,1798],{"type":43,"tag":476,"props":1765,"children":1766},{"style":1079},[1767],{"type":53,"value":1768},"  onCreate",{"type":43,"tag":476,"props":1770,"children":1771},{"style":499},[1772],{"type":53,"value":1106},{"type":43,"tag":476,"props":1774,"children":1775},{"style":896},[1776],{"type":53,"value":1777}," async",{"type":43,"tag":476,"props":1779,"children":1780},{"style":499},[1781],{"type":53,"value":1782}," (",{"type":43,"tag":476,"props":1784,"children":1786},{"style":1785},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic",[1787],{"type":53,"value":1788},"sbx",{"type":43,"tag":476,"props":1790,"children":1791},{"style":499},[1792],{"type":53,"value":1272},{"type":43,"tag":476,"props":1794,"children":1795},{"style":896},[1796],{"type":53,"value":1797}," =>",{"type":43,"tag":476,"props":1799,"children":1800},{"style":499},[1801],{"type":53,"value":502},{"type":43,"tag":476,"props":1803,"children":1804},{"class":478,"line":545},[1805,1810,1815,1819,1823],{"type":43,"tag":476,"props":1806,"children":1807},{"style":493},[1808],{"type":53,"value":1809},"    await",{"type":43,"tag":476,"props":1811,"children":1812},{"style":509},[1813],{"type":53,"value":1814}," sbx",{"type":43,"tag":476,"props":1816,"children":1817},{"style":499},[1818],{"type":53,"value":332},{"type":43,"tag":476,"props":1820,"children":1821},{"style":1079},[1822],{"type":53,"value":267},{"type":43,"tag":476,"props":1824,"children":1825},{"style":1098},[1826],{"type":53,"value":1827},"([\n",{"type":43,"tag":476,"props":1829,"children":1830},{"class":478,"line":558},[1831,1836,1841,1845,1849,1854,1858,1862,1867,1871,1876,1880,1884,1888,1892,1897,1901,1906],{"type":43,"tag":476,"props":1832,"children":1833},{"style":499},[1834],{"type":53,"value":1835},"      {",{"type":43,"tag":476,"props":1837,"children":1838},{"style":1098},[1839],{"type":53,"value":1840}," path",{"type":43,"tag":476,"props":1842,"children":1843},{"style":499},[1844],{"type":53,"value":1106},{"type":43,"tag":476,"props":1846,"children":1847},{"style":499},[1848],{"type":53,"value":587},{"type":43,"tag":476,"props":1850,"children":1851},{"style":590},[1852],{"type":53,"value":1853},"README.md",{"type":43,"tag":476,"props":1855,"children":1856},{"style":499},[1857],{"type":53,"value":597},{"type":43,"tag":476,"props":1859,"children":1860},{"style":499},[1861],{"type":53,"value":625},{"type":43,"tag":476,"props":1863,"children":1864},{"style":1098},[1865],{"type":53,"value":1866}," content",{"type":43,"tag":476,"props":1868,"children":1869},{"style":499},[1870],{"type":53,"value":1106},{"type":43,"tag":476,"props":1872,"children":1873},{"style":509},[1874],{"type":53,"value":1875}," Buffer",{"type":43,"tag":476,"props":1877,"children":1878},{"style":499},[1879],{"type":53,"value":332},{"type":43,"tag":476,"props":1881,"children":1882},{"style":1079},[1883],{"type":53,"value":852},{"type":43,"tag":476,"props":1885,"children":1886},{"style":1098},[1887],{"type":53,"value":1087},{"type":43,"tag":476,"props":1889,"children":1890},{"style":499},[1891],{"type":53,"value":597},{"type":43,"tag":476,"props":1893,"children":1894},{"style":590},[1895],{"type":53,"value":1896},"# Hello",{"type":43,"tag":476,"props":1898,"children":1899},{"style":499},[1900],{"type":53,"value":597},{"type":43,"tag":476,"props":1902,"children":1903},{"style":1098},[1904],{"type":53,"value":1905},") ",{"type":43,"tag":476,"props":1907,"children":1908},{"style":499},[1909],{"type":53,"value":1910},"},\n",{"type":43,"tag":476,"props":1912,"children":1913},{"class":478,"line":571},[1914,1919],{"type":43,"tag":476,"props":1915,"children":1916},{"style":1098},[1917],{"type":53,"value":1918},"    ])",{"type":43,"tag":476,"props":1920,"children":1921},{"style":499},[1922],{"type":53,"value":602},{"type":43,"tag":476,"props":1924,"children":1925},{"class":478,"line":605},[1926,1930,1934,1938,1942,1946,1950,1955,1959,1963,1967,1971,1976,1980,1985],{"type":43,"tag":476,"props":1927,"children":1928},{"style":493},[1929],{"type":53,"value":1809},{"type":43,"tag":476,"props":1931,"children":1932},{"style":509},[1933],{"type":53,"value":1814},{"type":43,"tag":476,"props":1935,"children":1936},{"style":499},[1937],{"type":53,"value":332},{"type":43,"tag":476,"props":1939,"children":1940},{"style":1079},[1941],{"type":53,"value":259},{"type":43,"tag":476,"props":1943,"children":1944},{"style":1098},[1945],{"type":53,"value":1087},{"type":43,"tag":476,"props":1947,"children":1948},{"style":499},[1949],{"type":53,"value":597},{"type":43,"tag":476,"props":1951,"children":1952},{"style":590},[1953],{"type":53,"value":1954},"npm",{"type":43,"tag":476,"props":1956,"children":1957},{"style":499},[1958],{"type":53,"value":597},{"type":43,"tag":476,"props":1960,"children":1961},{"style":499},[1962],{"type":53,"value":625},{"type":43,"tag":476,"props":1964,"children":1965},{"style":1098},[1966],{"type":53,"value":1214},{"type":43,"tag":476,"props":1968,"children":1969},{"style":499},[1970],{"type":53,"value":597},{"type":43,"tag":476,"props":1972,"children":1973},{"style":590},[1974],{"type":53,"value":1975},"install",{"type":43,"tag":476,"props":1977,"children":1978},{"style":499},[1979],{"type":53,"value":597},{"type":43,"tag":476,"props":1981,"children":1982},{"style":1098},[1983],{"type":53,"value":1984},"])",{"type":43,"tag":476,"props":1986,"children":1987},{"style":499},[1988],{"type":53,"value":602},{"type":43,"tag":476,"props":1990,"children":1991},{"class":478,"line":658},[1992],{"type":43,"tag":476,"props":1993,"children":1994},{"style":499},[1995],{"type":53,"value":1996},"  },\n",{"type":43,"tag":476,"props":1998,"children":1999},{"class":478,"line":668},[2000],{"type":43,"tag":476,"props":2001,"children":2002},{"style":483},[2003],{"type":53,"value":2004},"  \u002F\u002F Runs every time the sandbox session is resumed (including after auto-resume).\n",{"type":43,"tag":476,"props":2006,"children":2007},{"class":478,"line":677},[2008,2013,2017,2021,2025,2029,2033,2037],{"type":43,"tag":476,"props":2009,"children":2010},{"style":1079},[2011],{"type":53,"value":2012},"  onResume",{"type":43,"tag":476,"props":2014,"children":2015},{"style":499},[2016],{"type":53,"value":1106},{"type":43,"tag":476,"props":2018,"children":2019},{"style":896},[2020],{"type":53,"value":1777},{"type":43,"tag":476,"props":2022,"children":2023},{"style":499},[2024],{"type":53,"value":1782},{"type":43,"tag":476,"props":2026,"children":2027},{"style":1785},[2028],{"type":53,"value":1788},{"type":43,"tag":476,"props":2030,"children":2031},{"style":499},[2032],{"type":53,"value":1272},{"type":43,"tag":476,"props":2034,"children":2035},{"style":896},[2036],{"type":53,"value":1797},{"type":43,"tag":476,"props":2038,"children":2039},{"style":499},[2040],{"type":53,"value":502},{"type":43,"tag":476,"props":2042,"children":2043},{"class":478,"line":694},[2044,2048,2052,2056,2060,2064,2068,2073,2077,2081,2085,2089,2093,2098,2102,2106,2110,2115,2119,2123,2127,2132,2136,2140,2144,2149,2153,2157,2161,2165],{"type":43,"tag":476,"props":2045,"children":2046},{"style":493},[2047],{"type":53,"value":1809},{"type":43,"tag":476,"props":2049,"children":2050},{"style":509},[2051],{"type":53,"value":1814},{"type":43,"tag":476,"props":2053,"children":2054},{"style":499},[2055],{"type":53,"value":332},{"type":43,"tag":476,"props":2057,"children":2058},{"style":1079},[2059],{"type":53,"value":259},{"type":43,"tag":476,"props":2061,"children":2062},{"style":1098},[2063],{"type":53,"value":1087},{"type":43,"tag":476,"props":2065,"children":2066},{"style":499},[2067],{"type":53,"value":1601},{"type":43,"tag":476,"props":2069,"children":2070},{"style":1098},[2071],{"type":53,"value":2072}," cmd",{"type":43,"tag":476,"props":2074,"children":2075},{"style":499},[2076],{"type":53,"value":1106},{"type":43,"tag":476,"props":2078,"children":2079},{"style":499},[2080],{"type":53,"value":587},{"type":43,"tag":476,"props":2082,"children":2083},{"style":590},[2084],{"type":53,"value":1954},{"type":43,"tag":476,"props":2086,"children":2087},{"style":499},[2088],{"type":53,"value":597},{"type":43,"tag":476,"props":2090,"children":2091},{"style":499},[2092],{"type":53,"value":625},{"type":43,"tag":476,"props":2094,"children":2095},{"style":1098},[2096],{"type":53,"value":2097}," args",{"type":43,"tag":476,"props":2099,"children":2100},{"style":499},[2101],{"type":53,"value":1106},{"type":43,"tag":476,"props":2103,"children":2104},{"style":1098},[2105],{"type":53,"value":1214},{"type":43,"tag":476,"props":2107,"children":2108},{"style":499},[2109],{"type":53,"value":597},{"type":43,"tag":476,"props":2111,"children":2112},{"style":590},[2113],{"type":53,"value":2114},"run",{"type":43,"tag":476,"props":2116,"children":2117},{"style":499},[2118],{"type":53,"value":597},{"type":43,"tag":476,"props":2120,"children":2121},{"style":499},[2122],{"type":53,"value":625},{"type":43,"tag":476,"props":2124,"children":2125},{"style":499},[2126],{"type":53,"value":587},{"type":43,"tag":476,"props":2128,"children":2129},{"style":590},[2130],{"type":53,"value":2131},"dev",{"type":43,"tag":476,"props":2133,"children":2134},{"style":499},[2135],{"type":53,"value":597},{"type":43,"tag":476,"props":2137,"children":2138},{"style":1098},[2139],{"type":53,"value":1224},{"type":43,"tag":476,"props":2141,"children":2142},{"style":499},[2143],{"type":53,"value":625},{"type":43,"tag":476,"props":2145,"children":2146},{"style":1098},[2147],{"type":53,"value":2148}," detached",{"type":43,"tag":476,"props":2150,"children":2151},{"style":499},[2152],{"type":53,"value":1106},{"type":43,"tag":476,"props":2154,"children":2155},{"style":1416},[2156],{"type":53,"value":1419},{"type":43,"tag":476,"props":2158,"children":2159},{"style":499},[2160],{"type":53,"value":635},{"type":43,"tag":476,"props":2162,"children":2163},{"style":1098},[2164],{"type":53,"value":1272},{"type":43,"tag":476,"props":2166,"children":2167},{"style":499},[2168],{"type":53,"value":602},{"type":43,"tag":476,"props":2170,"children":2171},{"class":478,"line":707},[2172],{"type":43,"tag":476,"props":2173,"children":2174},{"style":499},[2175],{"type":53,"value":1996},{"type":43,"tag":476,"props":2177,"children":2178},{"class":478,"line":720},[2179,2183,2187],{"type":43,"tag":476,"props":2180,"children":2181},{"style":499},[2182],{"type":53,"value":577},{"type":43,"tag":476,"props":2184,"children":2185},{"style":509},[2186],{"type":53,"value":1272},{"type":43,"tag":476,"props":2188,"children":2189},{"style":499},[2190],{"type":53,"value":602},{"type":43,"tag":67,"props":2192,"children":2193},{},[2194],{"type":53,"value":2195},"Behavior:",{"type":43,"tag":87,"props":2197,"children":2198},{},[2199,2217,2229],{"type":43,"tag":91,"props":2200,"children":2201},{},[2202,2204,2209,2211,2216],{"type":53,"value":2203},"If a sandbox with that ",{"type":43,"tag":58,"props":2205,"children":2207},{"className":2206},[],[2208],{"type":53,"value":219},{"type":53,"value":2210}," exists → resumes it and fires ",{"type":43,"tag":58,"props":2212,"children":2214},{"className":2213},[],[2215],{"type":53,"value":363},{"type":53,"value":332},{"type":43,"tag":91,"props":2218,"children":2219},{},[2220,2222,2228],{"type":53,"value":2221},"If it does not exist → creates a fresh sandbox and fires ",{"type":43,"tag":58,"props":2223,"children":2225},{"className":2224},[],[2226],{"type":53,"value":2227},"onCreate",{"type":53,"value":332},{"type":43,"tag":91,"props":2230,"children":2231},{},[2232,2234,2239],{"type":53,"value":2233},"If the sandbox exists but its snapshot expired → deletes the stale sandbox,\nre-creates it with the same name, and fires ",{"type":43,"tag":58,"props":2235,"children":2237},{"className":2236},[],[2238],{"type":53,"value":2227},{"type":53,"value":332},{"type":43,"tag":80,"props":2241,"children":2243},{"id":2242},"re-warming-on-resume",[2244],{"type":53,"value":2245},"Re-warming on Resume",{"type":43,"tag":67,"props":2247,"children":2248},{},[2249,2251,2256],{"type":53,"value":2250},"Use ",{"type":43,"tag":58,"props":2252,"children":2254},{"className":2253},[],[2255],{"type":53,"value":363},{"type":53,"value":2257}," to restart background services or rehydrate caches whenever a\npersistent sandbox's session is resumed:",{"type":43,"tag":465,"props":2259,"children":2261},{"className":467,"code":2260,"language":469,"meta":470,"style":470},"const sandbox = await Sandbox.get({\n  name: \"my-workspace\",\n  onResume: async (sbx) => {\n    await sbx.runCommand({ cmd: \"npm\", args: [\"run\", \"dev\"], detached: true });\n  },\n});\n",[2262],{"type":43,"tag":58,"props":2263,"children":2264},{"__ignoreMap":470},[2265,2304,2331,2366,2489,2496],{"type":43,"tag":476,"props":2266,"children":2267},{"class":478,"line":479},[2268,2272,2276,2280,2284,2288,2292,2296,2300],{"type":43,"tag":476,"props":2269,"children":2270},{"style":896},[2271],{"type":53,"value":1053},{"type":43,"tag":476,"props":2273,"children":2274},{"style":509},[2275],{"type":53,"value":1058},{"type":43,"tag":476,"props":2277,"children":2278},{"style":499},[2279],{"type":53,"value":1063},{"type":43,"tag":476,"props":2281,"children":2282},{"style":493},[2283],{"type":53,"value":1068},{"type":43,"tag":476,"props":2285,"children":2286},{"style":509},[2287],{"type":53,"value":1014},{"type":43,"tag":476,"props":2289,"children":2290},{"style":499},[2291],{"type":53,"value":332},{"type":43,"tag":476,"props":2293,"children":2294},{"style":1079},[2295],{"type":53,"value":1592},{"type":43,"tag":476,"props":2297,"children":2298},{"style":509},[2299],{"type":53,"value":1087},{"type":43,"tag":476,"props":2301,"children":2302},{"style":499},[2303],{"type":53,"value":1092},{"type":43,"tag":476,"props":2305,"children":2306},{"class":478,"line":489},[2307,2311,2315,2319,2323,2327],{"type":43,"tag":476,"props":2308,"children":2309},{"style":1098},[2310],{"type":53,"value":1101},{"type":43,"tag":476,"props":2312,"children":2313},{"style":499},[2314],{"type":53,"value":1106},{"type":43,"tag":476,"props":2316,"children":2317},{"style":499},[2318],{"type":53,"value":587},{"type":43,"tag":476,"props":2320,"children":2321},{"style":590},[2322],{"type":53,"value":1717},{"type":43,"tag":476,"props":2324,"children":2325},{"style":499},[2326],{"type":53,"value":597},{"type":43,"tag":476,"props":2328,"children":2329},{"style":499},[2330],{"type":53,"value":296},{"type":43,"tag":476,"props":2332,"children":2333},{"class":478,"line":505},[2334,2338,2342,2346,2350,2354,2358,2362],{"type":43,"tag":476,"props":2335,"children":2336},{"style":1079},[2337],{"type":53,"value":2012},{"type":43,"tag":476,"props":2339,"children":2340},{"style":499},[2341],{"type":53,"value":1106},{"type":43,"tag":476,"props":2343,"children":2344},{"style":896},[2345],{"type":53,"value":1777},{"type":43,"tag":476,"props":2347,"children":2348},{"style":499},[2349],{"type":53,"value":1782},{"type":43,"tag":476,"props":2351,"children":2352},{"style":1785},[2353],{"type":53,"value":1788},{"type":43,"tag":476,"props":2355,"children":2356},{"style":499},[2357],{"type":53,"value":1272},{"type":43,"tag":476,"props":2359,"children":2360},{"style":896},[2361],{"type":53,"value":1797},{"type":43,"tag":476,"props":2363,"children":2364},{"style":499},[2365],{"type":53,"value":502},{"type":43,"tag":476,"props":2367,"children":2368},{"class":478,"line":519},[2369,2373,2377,2381,2385,2389,2393,2397,2401,2405,2409,2413,2417,2421,2425,2429,2433,2437,2441,2445,2449,2453,2457,2461,2465,2469,2473,2477,2481,2485],{"type":43,"tag":476,"props":2370,"children":2371},{"style":493},[2372],{"type":53,"value":1809},{"type":43,"tag":476,"props":2374,"children":2375},{"style":509},[2376],{"type":53,"value":1814},{"type":43,"tag":476,"props":2378,"children":2379},{"style":499},[2380],{"type":53,"value":332},{"type":43,"tag":476,"props":2382,"children":2383},{"style":1079},[2384],{"type":53,"value":259},{"type":43,"tag":476,"props":2386,"children":2387},{"style":1098},[2388],{"type":53,"value":1087},{"type":43,"tag":476,"props":2390,"children":2391},{"style":499},[2392],{"type":53,"value":1601},{"type":43,"tag":476,"props":2394,"children":2395},{"style":1098},[2396],{"type":53,"value":2072},{"type":43,"tag":476,"props":2398,"children":2399},{"style":499},[2400],{"type":53,"value":1106},{"type":43,"tag":476,"props":2402,"children":2403},{"style":499},[2404],{"type":53,"value":587},{"type":43,"tag":476,"props":2406,"children":2407},{"style":590},[2408],{"type":53,"value":1954},{"type":43,"tag":476,"props":2410,"children":2411},{"style":499},[2412],{"type":53,"value":597},{"type":43,"tag":476,"props":2414,"children":2415},{"style":499},[2416],{"type":53,"value":625},{"type":43,"tag":476,"props":2418,"children":2419},{"style":1098},[2420],{"type":53,"value":2097},{"type":43,"tag":476,"props":2422,"children":2423},{"style":499},[2424],{"type":53,"value":1106},{"type":43,"tag":476,"props":2426,"children":2427},{"style":1098},[2428],{"type":53,"value":1214},{"type":43,"tag":476,"props":2430,"children":2431},{"style":499},[2432],{"type":53,"value":597},{"type":43,"tag":476,"props":2434,"children":2435},{"style":590},[2436],{"type":53,"value":2114},{"type":43,"tag":476,"props":2438,"children":2439},{"style":499},[2440],{"type":53,"value":597},{"type":43,"tag":476,"props":2442,"children":2443},{"style":499},[2444],{"type":53,"value":625},{"type":43,"tag":476,"props":2446,"children":2447},{"style":499},[2448],{"type":53,"value":587},{"type":43,"tag":476,"props":2450,"children":2451},{"style":590},[2452],{"type":53,"value":2131},{"type":43,"tag":476,"props":2454,"children":2455},{"style":499},[2456],{"type":53,"value":597},{"type":43,"tag":476,"props":2458,"children":2459},{"style":1098},[2460],{"type":53,"value":1224},{"type":43,"tag":476,"props":2462,"children":2463},{"style":499},[2464],{"type":53,"value":625},{"type":43,"tag":476,"props":2466,"children":2467},{"style":1098},[2468],{"type":53,"value":2148},{"type":43,"tag":476,"props":2470,"children":2471},{"style":499},[2472],{"type":53,"value":1106},{"type":43,"tag":476,"props":2474,"children":2475},{"style":1416},[2476],{"type":53,"value":1419},{"type":43,"tag":476,"props":2478,"children":2479},{"style":499},[2480],{"type":53,"value":635},{"type":43,"tag":476,"props":2482,"children":2483},{"style":1098},[2484],{"type":53,"value":1272},{"type":43,"tag":476,"props":2486,"children":2487},{"style":499},[2488],{"type":53,"value":602},{"type":43,"tag":476,"props":2490,"children":2491},{"class":478,"line":532},[2492],{"type":43,"tag":476,"props":2493,"children":2494},{"style":499},[2495],{"type":53,"value":1996},{"type":43,"tag":476,"props":2497,"children":2498},{"class":478,"line":545},[2499,2503,2507],{"type":43,"tag":476,"props":2500,"children":2501},{"style":499},[2502],{"type":53,"value":577},{"type":43,"tag":476,"props":2504,"children":2505},{"style":509},[2506],{"type":53,"value":1272},{"type":43,"tag":476,"props":2508,"children":2509},{"style":499},[2510],{"type":53,"value":602},{"type":43,"tag":67,"props":2512,"children":2513},{},[2514,2519,2521,2526,2527,2532],{"type":43,"tag":58,"props":2515,"children":2517},{"className":2516},[],[2518],{"type":53,"value":363},{"type":53,"value":2520}," also fires when a SDK call (e.g. ",{"type":43,"tag":58,"props":2522,"children":2524},{"className":2523},[],[2525],{"type":53,"value":259},{"type":53,"value":261},{"type":43,"tag":58,"props":2528,"children":2530},{"className":2529},[],[2531],{"type":53,"value":267},{"type":53,"value":2533},")\nauto-resumes a stopped sandbox.",{"type":43,"tag":80,"props":2535,"children":2537},{"id":2536},"with-git-source",[2538],{"type":53,"value":2539},"With Git Source",{"type":43,"tag":465,"props":2541,"children":2543},{"className":467,"code":2542,"language":469,"meta":470,"style":470},"const sandbox = await Sandbox.create({\n  source: {\n    type: \"git\",\n    url: \"https:\u002F\u002Fgithub.com\u002Fvercel\u002Fsandbox-example-next.git\",\n    depth: 1, \u002F\u002F Shallow clone (optional)\n    revision: \"main\", \u002F\u002F Branch, tag, or commit (optional)\n  },\n  runtime: \"node24\",\n  ports: [3000],\n});\n",[2544],{"type":43,"tag":58,"props":2545,"children":2546},{"__ignoreMap":470},[2547,2586,2602,2631,2660,2686,2720,2727,2754,2781],{"type":43,"tag":476,"props":2548,"children":2549},{"class":478,"line":479},[2550,2554,2558,2562,2566,2570,2574,2578,2582],{"type":43,"tag":476,"props":2551,"children":2552},{"style":896},[2553],{"type":53,"value":1053},{"type":43,"tag":476,"props":2555,"children":2556},{"style":509},[2557],{"type":53,"value":1058},{"type":43,"tag":476,"props":2559,"children":2560},{"style":499},[2561],{"type":53,"value":1063},{"type":43,"tag":476,"props":2563,"children":2564},{"style":493},[2565],{"type":53,"value":1068},{"type":43,"tag":476,"props":2567,"children":2568},{"style":509},[2569],{"type":53,"value":1014},{"type":43,"tag":476,"props":2571,"children":2572},{"style":499},[2573],{"type":53,"value":332},{"type":43,"tag":476,"props":2575,"children":2576},{"style":1079},[2577],{"type":53,"value":1082},{"type":43,"tag":476,"props":2579,"children":2580},{"style":509},[2581],{"type":53,"value":1087},{"type":43,"tag":476,"props":2583,"children":2584},{"style":499},[2585],{"type":53,"value":1092},{"type":43,"tag":476,"props":2587,"children":2588},{"class":478,"line":489},[2589,2594,2598],{"type":43,"tag":476,"props":2590,"children":2591},{"style":1098},[2592],{"type":53,"value":2593},"  source",{"type":43,"tag":476,"props":2595,"children":2596},{"style":499},[2597],{"type":53,"value":1106},{"type":43,"tag":476,"props":2599,"children":2600},{"style":499},[2601],{"type":53,"value":502},{"type":43,"tag":476,"props":2603,"children":2604},{"class":478,"line":505},[2605,2610,2614,2618,2623,2627],{"type":43,"tag":476,"props":2606,"children":2607},{"style":1098},[2608],{"type":53,"value":2609},"    type",{"type":43,"tag":476,"props":2611,"children":2612},{"style":499},[2613],{"type":53,"value":1106},{"type":43,"tag":476,"props":2615,"children":2616},{"style":499},[2617],{"type":53,"value":587},{"type":43,"tag":476,"props":2619,"children":2620},{"style":590},[2621],{"type":53,"value":2622},"git",{"type":43,"tag":476,"props":2624,"children":2625},{"style":499},[2626],{"type":53,"value":597},{"type":43,"tag":476,"props":2628,"children":2629},{"style":499},[2630],{"type":53,"value":296},{"type":43,"tag":476,"props":2632,"children":2633},{"class":478,"line":519},[2634,2639,2643,2647,2652,2656],{"type":43,"tag":476,"props":2635,"children":2636},{"style":1098},[2637],{"type":53,"value":2638},"    url",{"type":43,"tag":476,"props":2640,"children":2641},{"style":499},[2642],{"type":53,"value":1106},{"type":43,"tag":476,"props":2644,"children":2645},{"style":499},[2646],{"type":53,"value":587},{"type":43,"tag":476,"props":2648,"children":2649},{"style":590},[2650],{"type":53,"value":2651},"https:\u002F\u002Fgithub.com\u002Fvercel\u002Fsandbox-example-next.git",{"type":43,"tag":476,"props":2653,"children":2654},{"style":499},[2655],{"type":53,"value":597},{"type":43,"tag":476,"props":2657,"children":2658},{"style":499},[2659],{"type":53,"value":296},{"type":43,"tag":476,"props":2661,"children":2662},{"class":478,"line":532},[2663,2668,2672,2677,2681],{"type":43,"tag":476,"props":2664,"children":2665},{"style":1098},[2666],{"type":53,"value":2667},"    depth",{"type":43,"tag":476,"props":2669,"children":2670},{"style":499},[2671],{"type":53,"value":1106},{"type":43,"tag":476,"props":2673,"children":2674},{"style":1184},[2675],{"type":53,"value":2676}," 1",{"type":43,"tag":476,"props":2678,"children":2679},{"style":499},[2680],{"type":53,"value":625},{"type":43,"tag":476,"props":2682,"children":2683},{"style":483},[2684],{"type":53,"value":2685}," \u002F\u002F Shallow clone (optional)\n",{"type":43,"tag":476,"props":2687,"children":2688},{"class":478,"line":545},[2689,2694,2698,2702,2707,2711,2715],{"type":43,"tag":476,"props":2690,"children":2691},{"style":1098},[2692],{"type":53,"value":2693},"    revision",{"type":43,"tag":476,"props":2695,"children":2696},{"style":499},[2697],{"type":53,"value":1106},{"type":43,"tag":476,"props":2699,"children":2700},{"style":499},[2701],{"type":53,"value":587},{"type":43,"tag":476,"props":2703,"children":2704},{"style":590},[2705],{"type":53,"value":2706},"main",{"type":43,"tag":476,"props":2708,"children":2709},{"style":499},[2710],{"type":53,"value":597},{"type":43,"tag":476,"props":2712,"children":2713},{"style":499},[2714],{"type":53,"value":625},{"type":43,"tag":476,"props":2716,"children":2717},{"style":483},[2718],{"type":53,"value":2719}," \u002F\u002F Branch, tag, or commit (optional)\n",{"type":43,"tag":476,"props":2721,"children":2722},{"class":478,"line":558},[2723],{"type":43,"tag":476,"props":2724,"children":2725},{"style":499},[2726],{"type":53,"value":1996},{"type":43,"tag":476,"props":2728,"children":2729},{"class":478,"line":571},[2730,2734,2738,2742,2746,2750],{"type":43,"tag":476,"props":2731,"children":2732},{"style":1098},[2733],{"type":53,"value":1136},{"type":43,"tag":476,"props":2735,"children":2736},{"style":499},[2737],{"type":53,"value":1106},{"type":43,"tag":476,"props":2739,"children":2740},{"style":499},[2741],{"type":53,"value":587},{"type":43,"tag":476,"props":2743,"children":2744},{"style":590},[2745],{"type":53,"value":937},{"type":43,"tag":476,"props":2747,"children":2748},{"style":499},[2749],{"type":53,"value":597},{"type":43,"tag":476,"props":2751,"children":2752},{"style":499},[2753],{"type":53,"value":296},{"type":43,"tag":476,"props":2755,"children":2756},{"class":478,"line":605},[2757,2761,2765,2769,2773,2777],{"type":43,"tag":476,"props":2758,"children":2759},{"style":1098},[2760],{"type":53,"value":1205},{"type":43,"tag":476,"props":2762,"children":2763},{"style":499},[2764],{"type":53,"value":1106},{"type":43,"tag":476,"props":2766,"children":2767},{"style":509},[2768],{"type":53,"value":1214},{"type":43,"tag":476,"props":2770,"children":2771},{"style":1184},[2772],{"type":53,"value":1219},{"type":43,"tag":476,"props":2774,"children":2775},{"style":509},[2776],{"type":53,"value":1224},{"type":43,"tag":476,"props":2778,"children":2779},{"style":499},[2780],{"type":53,"value":296},{"type":43,"tag":476,"props":2782,"children":2783},{"class":478,"line":658},[2784,2788,2792],{"type":43,"tag":476,"props":2785,"children":2786},{"style":499},[2787],{"type":53,"value":577},{"type":43,"tag":476,"props":2789,"children":2790},{"style":509},[2791],{"type":53,"value":1272},{"type":43,"tag":476,"props":2793,"children":2794},{"style":499},[2795],{"type":53,"value":602},{"type":43,"tag":80,"props":2797,"children":2799},{"id":2798},"with-private-git-repository",[2800],{"type":53,"value":2801},"With Private Git Repository",{"type":43,"tag":465,"props":2803,"children":2805},{"className":467,"code":2804,"language":469,"meta":470,"style":470},"const sandbox = await Sandbox.create({\n  source: {\n    type: \"git\",\n    url: \"https:\u002F\u002Fgithub.com\u002Forg\u002Fprivate-repo.git\",\n    username: process.env.GIT_USERNAME!,\n    password: process.env.GIT_TOKEN!, \u002F\u002F Use PAT for password\n  },\n  runtime: \"node24\",\n});\n",[2806],{"type":43,"tag":58,"props":2807,"children":2808},{"__ignoreMap":470},[2809,2848,2863,2890,2918,2958,3001,3008,3035],{"type":43,"tag":476,"props":2810,"children":2811},{"class":478,"line":479},[2812,2816,2820,2824,2828,2832,2836,2840,2844],{"type":43,"tag":476,"props":2813,"children":2814},{"style":896},[2815],{"type":53,"value":1053},{"type":43,"tag":476,"props":2817,"children":2818},{"style":509},[2819],{"type":53,"value":1058},{"type":43,"tag":476,"props":2821,"children":2822},{"style":499},[2823],{"type":53,"value":1063},{"type":43,"tag":476,"props":2825,"children":2826},{"style":493},[2827],{"type":53,"value":1068},{"type":43,"tag":476,"props":2829,"children":2830},{"style":509},[2831],{"type":53,"value":1014},{"type":43,"tag":476,"props":2833,"children":2834},{"style":499},[2835],{"type":53,"value":332},{"type":43,"tag":476,"props":2837,"children":2838},{"style":1079},[2839],{"type":53,"value":1082},{"type":43,"tag":476,"props":2841,"children":2842},{"style":509},[2843],{"type":53,"value":1087},{"type":43,"tag":476,"props":2845,"children":2846},{"style":499},[2847],{"type":53,"value":1092},{"type":43,"tag":476,"props":2849,"children":2850},{"class":478,"line":489},[2851,2855,2859],{"type":43,"tag":476,"props":2852,"children":2853},{"style":1098},[2854],{"type":53,"value":2593},{"type":43,"tag":476,"props":2856,"children":2857},{"style":499},[2858],{"type":53,"value":1106},{"type":43,"tag":476,"props":2860,"children":2861},{"style":499},[2862],{"type":53,"value":502},{"type":43,"tag":476,"props":2864,"children":2865},{"class":478,"line":505},[2866,2870,2874,2878,2882,2886],{"type":43,"tag":476,"props":2867,"children":2868},{"style":1098},[2869],{"type":53,"value":2609},{"type":43,"tag":476,"props":2871,"children":2872},{"style":499},[2873],{"type":53,"value":1106},{"type":43,"tag":476,"props":2875,"children":2876},{"style":499},[2877],{"type":53,"value":587},{"type":43,"tag":476,"props":2879,"children":2880},{"style":590},[2881],{"type":53,"value":2622},{"type":43,"tag":476,"props":2883,"children":2884},{"style":499},[2885],{"type":53,"value":597},{"type":43,"tag":476,"props":2887,"children":2888},{"style":499},[2889],{"type":53,"value":296},{"type":43,"tag":476,"props":2891,"children":2892},{"class":478,"line":519},[2893,2897,2901,2905,2910,2914],{"type":43,"tag":476,"props":2894,"children":2895},{"style":1098},[2896],{"type":53,"value":2638},{"type":43,"tag":476,"props":2898,"children":2899},{"style":499},[2900],{"type":53,"value":1106},{"type":43,"tag":476,"props":2902,"children":2903},{"style":499},[2904],{"type":53,"value":587},{"type":43,"tag":476,"props":2906,"children":2907},{"style":590},[2908],{"type":53,"value":2909},"https:\u002F\u002Fgithub.com\u002Forg\u002Fprivate-repo.git",{"type":43,"tag":476,"props":2911,"children":2912},{"style":499},[2913],{"type":53,"value":597},{"type":43,"tag":476,"props":2915,"children":2916},{"style":499},[2917],{"type":53,"value":296},{"type":43,"tag":476,"props":2919,"children":2920},{"class":478,"line":532},[2921,2926,2930,2935,2939,2944,2948,2953],{"type":43,"tag":476,"props":2922,"children":2923},{"style":1098},[2924],{"type":53,"value":2925},"    username",{"type":43,"tag":476,"props":2927,"children":2928},{"style":499},[2929],{"type":53,"value":1106},{"type":43,"tag":476,"props":2931,"children":2932},{"style":509},[2933],{"type":53,"value":2934}," process",{"type":43,"tag":476,"props":2936,"children":2937},{"style":499},[2938],{"type":53,"value":332},{"type":43,"tag":476,"props":2940,"children":2941},{"style":509},[2942],{"type":53,"value":2943},"env",{"type":43,"tag":476,"props":2945,"children":2946},{"style":499},[2947],{"type":53,"value":332},{"type":43,"tag":476,"props":2949,"children":2950},{"style":509},[2951],{"type":53,"value":2952},"GIT_USERNAME",{"type":43,"tag":476,"props":2954,"children":2955},{"style":499},[2956],{"type":53,"value":2957},"!,\n",{"type":43,"tag":476,"props":2959,"children":2960},{"class":478,"line":545},[2961,2966,2970,2974,2978,2982,2986,2991,2996],{"type":43,"tag":476,"props":2962,"children":2963},{"style":1098},[2964],{"type":53,"value":2965},"    password",{"type":43,"tag":476,"props":2967,"children":2968},{"style":499},[2969],{"type":53,"value":1106},{"type":43,"tag":476,"props":2971,"children":2972},{"style":509},[2973],{"type":53,"value":2934},{"type":43,"tag":476,"props":2975,"children":2976},{"style":499},[2977],{"type":53,"value":332},{"type":43,"tag":476,"props":2979,"children":2980},{"style":509},[2981],{"type":53,"value":2943},{"type":43,"tag":476,"props":2983,"children":2984},{"style":499},[2985],{"type":53,"value":332},{"type":43,"tag":476,"props":2987,"children":2988},{"style":509},[2989],{"type":53,"value":2990},"GIT_TOKEN",{"type":43,"tag":476,"props":2992,"children":2993},{"style":499},[2994],{"type":53,"value":2995},"!,",{"type":43,"tag":476,"props":2997,"children":2998},{"style":483},[2999],{"type":53,"value":3000}," \u002F\u002F Use PAT for password\n",{"type":43,"tag":476,"props":3002,"children":3003},{"class":478,"line":558},[3004],{"type":43,"tag":476,"props":3005,"children":3006},{"style":499},[3007],{"type":53,"value":1996},{"type":43,"tag":476,"props":3009,"children":3010},{"class":478,"line":571},[3011,3015,3019,3023,3027,3031],{"type":43,"tag":476,"props":3012,"children":3013},{"style":1098},[3014],{"type":53,"value":1136},{"type":43,"tag":476,"props":3016,"children":3017},{"style":499},[3018],{"type":53,"value":1106},{"type":43,"tag":476,"props":3020,"children":3021},{"style":499},[3022],{"type":53,"value":587},{"type":43,"tag":476,"props":3024,"children":3025},{"style":590},[3026],{"type":53,"value":937},{"type":43,"tag":476,"props":3028,"children":3029},{"style":499},[3030],{"type":53,"value":597},{"type":43,"tag":476,"props":3032,"children":3033},{"style":499},[3034],{"type":53,"value":296},{"type":43,"tag":476,"props":3036,"children":3037},{"class":478,"line":605},[3038,3042,3046],{"type":43,"tag":476,"props":3039,"children":3040},{"style":499},[3041],{"type":53,"value":577},{"type":43,"tag":476,"props":3043,"children":3044},{"style":509},[3045],{"type":53,"value":1272},{"type":43,"tag":476,"props":3047,"children":3048},{"style":499},[3049],{"type":53,"value":602},{"type":43,"tag":80,"props":3051,"children":3053},{"id":3052},"from-tarball",[3054],{"type":53,"value":3055},"From Tarball",{"type":43,"tag":465,"props":3057,"children":3059},{"className":467,"code":3058,"language":469,"meta":470,"style":470},"const sandbox = await Sandbox.create({\n  source: {\n    type: \"tarball\",\n    url: \"https:\u002F\u002Fexample.com\u002Fproject.tar.gz\",\n  },\n  runtime: \"node24\",\n  ports: [3000],\n});\n",[3060],{"type":43,"tag":58,"props":3061,"children":3062},{"__ignoreMap":470},[3063,3102,3117,3145,3173,3180,3207,3234],{"type":43,"tag":476,"props":3064,"children":3065},{"class":478,"line":479},[3066,3070,3074,3078,3082,3086,3090,3094,3098],{"type":43,"tag":476,"props":3067,"children":3068},{"style":896},[3069],{"type":53,"value":1053},{"type":43,"tag":476,"props":3071,"children":3072},{"style":509},[3073],{"type":53,"value":1058},{"type":43,"tag":476,"props":3075,"children":3076},{"style":499},[3077],{"type":53,"value":1063},{"type":43,"tag":476,"props":3079,"children":3080},{"style":493},[3081],{"type":53,"value":1068},{"type":43,"tag":476,"props":3083,"children":3084},{"style":509},[3085],{"type":53,"value":1014},{"type":43,"tag":476,"props":3087,"children":3088},{"style":499},[3089],{"type":53,"value":332},{"type":43,"tag":476,"props":3091,"children":3092},{"style":1079},[3093],{"type":53,"value":1082},{"type":43,"tag":476,"props":3095,"children":3096},{"style":509},[3097],{"type":53,"value":1087},{"type":43,"tag":476,"props":3099,"children":3100},{"style":499},[3101],{"type":53,"value":1092},{"type":43,"tag":476,"props":3103,"children":3104},{"class":478,"line":489},[3105,3109,3113],{"type":43,"tag":476,"props":3106,"children":3107},{"style":1098},[3108],{"type":53,"value":2593},{"type":43,"tag":476,"props":3110,"children":3111},{"style":499},[3112],{"type":53,"value":1106},{"type":43,"tag":476,"props":3114,"children":3115},{"style":499},[3116],{"type":53,"value":502},{"type":43,"tag":476,"props":3118,"children":3119},{"class":478,"line":505},[3120,3124,3128,3132,3137,3141],{"type":43,"tag":476,"props":3121,"children":3122},{"style":1098},[3123],{"type":53,"value":2609},{"type":43,"tag":476,"props":3125,"children":3126},{"style":499},[3127],{"type":53,"value":1106},{"type":43,"tag":476,"props":3129,"children":3130},{"style":499},[3131],{"type":53,"value":587},{"type":43,"tag":476,"props":3133,"children":3134},{"style":590},[3135],{"type":53,"value":3136},"tarball",{"type":43,"tag":476,"props":3138,"children":3139},{"style":499},[3140],{"type":53,"value":597},{"type":43,"tag":476,"props":3142,"children":3143},{"style":499},[3144],{"type":53,"value":296},{"type":43,"tag":476,"props":3146,"children":3147},{"class":478,"line":519},[3148,3152,3156,3160,3165,3169],{"type":43,"tag":476,"props":3149,"children":3150},{"style":1098},[3151],{"type":53,"value":2638},{"type":43,"tag":476,"props":3153,"children":3154},{"style":499},[3155],{"type":53,"value":1106},{"type":43,"tag":476,"props":3157,"children":3158},{"style":499},[3159],{"type":53,"value":587},{"type":43,"tag":476,"props":3161,"children":3162},{"style":590},[3163],{"type":53,"value":3164},"https:\u002F\u002Fexample.com\u002Fproject.tar.gz",{"type":43,"tag":476,"props":3166,"children":3167},{"style":499},[3168],{"type":53,"value":597},{"type":43,"tag":476,"props":3170,"children":3171},{"style":499},[3172],{"type":53,"value":296},{"type":43,"tag":476,"props":3174,"children":3175},{"class":478,"line":532},[3176],{"type":43,"tag":476,"props":3177,"children":3178},{"style":499},[3179],{"type":53,"value":1996},{"type":43,"tag":476,"props":3181,"children":3182},{"class":478,"line":545},[3183,3187,3191,3195,3199,3203],{"type":43,"tag":476,"props":3184,"children":3185},{"style":1098},[3186],{"type":53,"value":1136},{"type":43,"tag":476,"props":3188,"children":3189},{"style":499},[3190],{"type":53,"value":1106},{"type":43,"tag":476,"props":3192,"children":3193},{"style":499},[3194],{"type":53,"value":587},{"type":43,"tag":476,"props":3196,"children":3197},{"style":590},[3198],{"type":53,"value":937},{"type":43,"tag":476,"props":3200,"children":3201},{"style":499},[3202],{"type":53,"value":597},{"type":43,"tag":476,"props":3204,"children":3205},{"style":499},[3206],{"type":53,"value":296},{"type":43,"tag":476,"props":3208,"children":3209},{"class":478,"line":558},[3210,3214,3218,3222,3226,3230],{"type":43,"tag":476,"props":3211,"children":3212},{"style":1098},[3213],{"type":53,"value":1205},{"type":43,"tag":476,"props":3215,"children":3216},{"style":499},[3217],{"type":53,"value":1106},{"type":43,"tag":476,"props":3219,"children":3220},{"style":509},[3221],{"type":53,"value":1214},{"type":43,"tag":476,"props":3223,"children":3224},{"style":1184},[3225],{"type":53,"value":1219},{"type":43,"tag":476,"props":3227,"children":3228},{"style":509},[3229],{"type":53,"value":1224},{"type":43,"tag":476,"props":3231,"children":3232},{"style":499},[3233],{"type":53,"value":296},{"type":43,"tag":476,"props":3235,"children":3236},{"class":478,"line":571},[3237,3241,3245],{"type":43,"tag":476,"props":3238,"children":3239},{"style":499},[3240],{"type":53,"value":577},{"type":43,"tag":476,"props":3242,"children":3243},{"style":509},[3244],{"type":53,"value":1272},{"type":43,"tag":476,"props":3246,"children":3247},{"style":499},[3248],{"type":53,"value":602},{"type":43,"tag":80,"props":3250,"children":3252},{"id":3251},"from-a-snapshot",[3253],{"type":53,"value":3254},"From a Snapshot",{"type":43,"tag":465,"props":3256,"children":3258},{"className":467,"code":3257,"language":469,"meta":470,"style":470},"const sandbox = await Sandbox.create({\n  source: {\n    type: \"snapshot\",\n    snapshotId: \"snap_abc123\",\n  },\n  ports: [3000],\n});\n",[3259],{"type":43,"tag":58,"props":3260,"children":3261},{"__ignoreMap":470},[3262,3301,3316,3344,3373,3380,3407],{"type":43,"tag":476,"props":3263,"children":3264},{"class":478,"line":479},[3265,3269,3273,3277,3281,3285,3289,3293,3297],{"type":43,"tag":476,"props":3266,"children":3267},{"style":896},[3268],{"type":53,"value":1053},{"type":43,"tag":476,"props":3270,"children":3271},{"style":509},[3272],{"type":53,"value":1058},{"type":43,"tag":476,"props":3274,"children":3275},{"style":499},[3276],{"type":53,"value":1063},{"type":43,"tag":476,"props":3278,"children":3279},{"style":493},[3280],{"type":53,"value":1068},{"type":43,"tag":476,"props":3282,"children":3283},{"style":509},[3284],{"type":53,"value":1014},{"type":43,"tag":476,"props":3286,"children":3287},{"style":499},[3288],{"type":53,"value":332},{"type":43,"tag":476,"props":3290,"children":3291},{"style":1079},[3292],{"type":53,"value":1082},{"type":43,"tag":476,"props":3294,"children":3295},{"style":509},[3296],{"type":53,"value":1087},{"type":43,"tag":476,"props":3298,"children":3299},{"style":499},[3300],{"type":53,"value":1092},{"type":43,"tag":476,"props":3302,"children":3303},{"class":478,"line":489},[3304,3308,3312],{"type":43,"tag":476,"props":3305,"children":3306},{"style":1098},[3307],{"type":53,"value":2593},{"type":43,"tag":476,"props":3309,"children":3310},{"style":499},[3311],{"type":53,"value":1106},{"type":43,"tag":476,"props":3313,"children":3314},{"style":499},[3315],{"type":53,"value":502},{"type":43,"tag":476,"props":3317,"children":3318},{"class":478,"line":505},[3319,3323,3327,3331,3336,3340],{"type":43,"tag":476,"props":3320,"children":3321},{"style":1098},[3322],{"type":53,"value":2609},{"type":43,"tag":476,"props":3324,"children":3325},{"style":499},[3326],{"type":53,"value":1106},{"type":43,"tag":476,"props":3328,"children":3329},{"style":499},[3330],{"type":53,"value":587},{"type":43,"tag":476,"props":3332,"children":3333},{"style":590},[3334],{"type":53,"value":3335},"snapshot",{"type":43,"tag":476,"props":3337,"children":3338},{"style":499},[3339],{"type":53,"value":597},{"type":43,"tag":476,"props":3341,"children":3342},{"style":499},[3343],{"type":53,"value":296},{"type":43,"tag":476,"props":3345,"children":3346},{"class":478,"line":519},[3347,3352,3356,3360,3365,3369],{"type":43,"tag":476,"props":3348,"children":3349},{"style":1098},[3350],{"type":53,"value":3351},"    snapshotId",{"type":43,"tag":476,"props":3353,"children":3354},{"style":499},[3355],{"type":53,"value":1106},{"type":43,"tag":476,"props":3357,"children":3358},{"style":499},[3359],{"type":53,"value":587},{"type":43,"tag":476,"props":3361,"children":3362},{"style":590},[3363],{"type":53,"value":3364},"snap_abc123",{"type":43,"tag":476,"props":3366,"children":3367},{"style":499},[3368],{"type":53,"value":597},{"type":43,"tag":476,"props":3370,"children":3371},{"style":499},[3372],{"type":53,"value":296},{"type":43,"tag":476,"props":3374,"children":3375},{"class":478,"line":532},[3376],{"type":43,"tag":476,"props":3377,"children":3378},{"style":499},[3379],{"type":53,"value":1996},{"type":43,"tag":476,"props":3381,"children":3382},{"class":478,"line":545},[3383,3387,3391,3395,3399,3403],{"type":43,"tag":476,"props":3384,"children":3385},{"style":1098},[3386],{"type":53,"value":1205},{"type":43,"tag":476,"props":3388,"children":3389},{"style":499},[3390],{"type":53,"value":1106},{"type":43,"tag":476,"props":3392,"children":3393},{"style":509},[3394],{"type":53,"value":1214},{"type":43,"tag":476,"props":3396,"children":3397},{"style":1184},[3398],{"type":53,"value":1219},{"type":43,"tag":476,"props":3400,"children":3401},{"style":509},[3402],{"type":53,"value":1224},{"type":43,"tag":476,"props":3404,"children":3405},{"style":499},[3406],{"type":53,"value":296},{"type":43,"tag":476,"props":3408,"children":3409},{"class":478,"line":558},[3410,3414,3418],{"type":43,"tag":476,"props":3411,"children":3412},{"style":499},[3413],{"type":53,"value":577},{"type":43,"tag":476,"props":3415,"children":3416},{"style":509},[3417],{"type":53,"value":1272},{"type":43,"tag":476,"props":3419,"children":3420},{"style":499},[3421],{"type":53,"value":602},{"type":43,"tag":80,"props":3423,"children":3425},{"id":3424},"from-a-custom-image-vcr",[3426],{"type":53,"value":3427},"From a Custom Image (VCR)",{"type":43,"tag":67,"props":3429,"children":3430},{},[3431,3433,3439,3441,3448,3450,3456,3458,3463,3465,3470],{"type":53,"value":3432},"Instead of a stock ",{"type":43,"tag":58,"props":3434,"children":3436},{"className":3435},[],[3437],{"type":53,"value":3438},"runtime",{"type":53,"value":3440},", start a sandbox from a ",{"type":43,"tag":103,"props":3442,"children":3445},{"href":3443,"rel":3444},"https:\u002F\u002Fvercel.com\u002Fdocs\u002Fcontainer-registry",[107],[3446],{"type":53,"value":3447},"Vercel Container\nRegistry",{"type":53,"value":3449}," (VCR) image stored in the\nsandbox's project. ",{"type":43,"tag":58,"props":3451,"children":3453},{"className":3452},[],[3454],{"type":53,"value":3455},"image",{"type":53,"value":3457}," and ",{"type":43,"tag":58,"props":3459,"children":3461},{"className":3460},[],[3462],{"type":53,"value":3438},{"type":53,"value":3464}," are ",{"type":43,"tag":95,"props":3466,"children":3467},{},[3468],{"type":53,"value":3469},"mutually exclusive",{"type":53,"value":3471}," — pass one\nor the other, never both.",{"type":43,"tag":67,"props":3473,"children":3474},{},[3475,3477,3483,3485,3491],{"type":53,"value":3476},"The stock runtimes are Amazon Linux 2023 systems. If a sandbox needs a\ndifferent distro or system tooling beyond what AL2023 provides, prefer baking\nit into a custom image over installing packages with ",{"type":43,"tag":58,"props":3478,"children":3480},{"className":3479},[],[3481],{"type":53,"value":3482},"dnf install",{"type":53,"value":3484}," + ",{"type":43,"tag":58,"props":3486,"children":3488},{"className":3487},[],[3489],{"type":53,"value":3490},"sudo",{"type":53,"value":3492},"\nat runtime.",{"type":43,"tag":465,"props":3494,"children":3496},{"className":467,"code":3495,"language":469,"meta":470,"style":470},"const sandbox = await Sandbox.create({\n  image: \"my-repo:v1\",\n  ports: [3000],\n});\n",[3497],{"type":43,"tag":58,"props":3498,"children":3499},{"__ignoreMap":470},[3500,3539,3568,3595],{"type":43,"tag":476,"props":3501,"children":3502},{"class":478,"line":479},[3503,3507,3511,3515,3519,3523,3527,3531,3535],{"type":43,"tag":476,"props":3504,"children":3505},{"style":896},[3506],{"type":53,"value":1053},{"type":43,"tag":476,"props":3508,"children":3509},{"style":509},[3510],{"type":53,"value":1058},{"type":43,"tag":476,"props":3512,"children":3513},{"style":499},[3514],{"type":53,"value":1063},{"type":43,"tag":476,"props":3516,"children":3517},{"style":493},[3518],{"type":53,"value":1068},{"type":43,"tag":476,"props":3520,"children":3521},{"style":509},[3522],{"type":53,"value":1014},{"type":43,"tag":476,"props":3524,"children":3525},{"style":499},[3526],{"type":53,"value":332},{"type":43,"tag":476,"props":3528,"children":3529},{"style":1079},[3530],{"type":53,"value":1082},{"type":43,"tag":476,"props":3532,"children":3533},{"style":509},[3534],{"type":53,"value":1087},{"type":43,"tag":476,"props":3536,"children":3537},{"style":499},[3538],{"type":53,"value":1092},{"type":43,"tag":476,"props":3540,"children":3541},{"class":478,"line":489},[3542,3547,3551,3555,3560,3564],{"type":43,"tag":476,"props":3543,"children":3544},{"style":1098},[3545],{"type":53,"value":3546},"  image",{"type":43,"tag":476,"props":3548,"children":3549},{"style":499},[3550],{"type":53,"value":1106},{"type":43,"tag":476,"props":3552,"children":3553},{"style":499},[3554],{"type":53,"value":587},{"type":43,"tag":476,"props":3556,"children":3557},{"style":590},[3558],{"type":53,"value":3559},"my-repo:v1",{"type":43,"tag":476,"props":3561,"children":3562},{"style":499},[3563],{"type":53,"value":597},{"type":43,"tag":476,"props":3565,"children":3566},{"style":499},[3567],{"type":53,"value":296},{"type":43,"tag":476,"props":3569,"children":3570},{"class":478,"line":505},[3571,3575,3579,3583,3587,3591],{"type":43,"tag":476,"props":3572,"children":3573},{"style":1098},[3574],{"type":53,"value":1205},{"type":43,"tag":476,"props":3576,"children":3577},{"style":499},[3578],{"type":53,"value":1106},{"type":43,"tag":476,"props":3580,"children":3581},{"style":509},[3582],{"type":53,"value":1214},{"type":43,"tag":476,"props":3584,"children":3585},{"style":1184},[3586],{"type":53,"value":1219},{"type":43,"tag":476,"props":3588,"children":3589},{"style":509},[3590],{"type":53,"value":1224},{"type":43,"tag":476,"props":3592,"children":3593},{"style":499},[3594],{"type":53,"value":296},{"type":43,"tag":476,"props":3596,"children":3597},{"class":478,"line":519},[3598,3602,3606],{"type":43,"tag":476,"props":3599,"children":3600},{"style":499},[3601],{"type":53,"value":577},{"type":43,"tag":476,"props":3603,"children":3604},{"style":509},[3605],{"type":53,"value":1272},{"type":43,"tag":476,"props":3607,"children":3608},{"style":499},[3609],{"type":53,"value":602},{"type":43,"tag":67,"props":3611,"children":3612},{},[3613,3618,3620,3626],{"type":43,"tag":58,"props":3614,"children":3616},{"className":3615},[],[3617],{"type":53,"value":3455},{"type":53,"value":3619}," accepts a repository in the sandbox's project with an optional tag or\ndigest, or a fully-qualified VCR URL. A bare repository name resolves to the\n",{"type":43,"tag":58,"props":3621,"children":3623},{"className":3622},[],[3624],{"type":53,"value":3625},"latest",{"type":53,"value":3627}," tag:",{"type":43,"tag":465,"props":3629,"children":3631},{"className":467,"code":3630,"language":469,"meta":470,"style":470},"await Sandbox.create({ image: \"my-repo\" }); \u002F\u002F latest tag\nawait Sandbox.create({ image: \"my-repo:v1\" }); \u002F\u002F specific tag\nawait Sandbox.create({ image: \"my-repo@sha256:...\" }); \u002F\u002F specific digest\nawait Sandbox.create({\n  image: \"vcr.vercel.com\u002Fmy-team\u002Fmy-project\u002Fmy-repo:v1\", \u002F\u002F fully-qualified\n});\n",[3632],{"type":43,"tag":58,"props":3633,"children":3634},{"__ignoreMap":470},[3635,3702,3766,3831,3858,3891],{"type":43,"tag":476,"props":3636,"children":3637},{"class":478,"line":479},[3638,3643,3647,3651,3655,3659,3663,3668,3672,3676,3681,3685,3689,3693,3697],{"type":43,"tag":476,"props":3639,"children":3640},{"style":493},[3641],{"type":53,"value":3642},"await",{"type":43,"tag":476,"props":3644,"children":3645},{"style":509},[3646],{"type":53,"value":1014},{"type":43,"tag":476,"props":3648,"children":3649},{"style":499},[3650],{"type":53,"value":332},{"type":43,"tag":476,"props":3652,"children":3653},{"style":1079},[3654],{"type":53,"value":1082},{"type":43,"tag":476,"props":3656,"children":3657},{"style":509},[3658],{"type":53,"value":1087},{"type":43,"tag":476,"props":3660,"children":3661},{"style":499},[3662],{"type":53,"value":1601},{"type":43,"tag":476,"props":3664,"children":3665},{"style":1098},[3666],{"type":53,"value":3667}," image",{"type":43,"tag":476,"props":3669,"children":3670},{"style":499},[3671],{"type":53,"value":1106},{"type":43,"tag":476,"props":3673,"children":3674},{"style":499},[3675],{"type":53,"value":587},{"type":43,"tag":476,"props":3677,"children":3678},{"style":590},[3679],{"type":53,"value":3680},"my-repo",{"type":43,"tag":476,"props":3682,"children":3683},{"style":499},[3684],{"type":53,"value":597},{"type":43,"tag":476,"props":3686,"children":3687},{"style":499},[3688],{"type":53,"value":635},{"type":43,"tag":476,"props":3690,"children":3691},{"style":509},[3692],{"type":53,"value":1272},{"type":43,"tag":476,"props":3694,"children":3695},{"style":499},[3696],{"type":53,"value":870},{"type":43,"tag":476,"props":3698,"children":3699},{"style":483},[3700],{"type":53,"value":3701}," \u002F\u002F latest tag\n",{"type":43,"tag":476,"props":3703,"children":3704},{"class":478,"line":489},[3705,3709,3713,3717,3721,3725,3729,3733,3737,3741,3745,3749,3753,3757,3761],{"type":43,"tag":476,"props":3706,"children":3707},{"style":493},[3708],{"type":53,"value":3642},{"type":43,"tag":476,"props":3710,"children":3711},{"style":509},[3712],{"type":53,"value":1014},{"type":43,"tag":476,"props":3714,"children":3715},{"style":499},[3716],{"type":53,"value":332},{"type":43,"tag":476,"props":3718,"children":3719},{"style":1079},[3720],{"type":53,"value":1082},{"type":43,"tag":476,"props":3722,"children":3723},{"style":509},[3724],{"type":53,"value":1087},{"type":43,"tag":476,"props":3726,"children":3727},{"style":499},[3728],{"type":53,"value":1601},{"type":43,"tag":476,"props":3730,"children":3731},{"style":1098},[3732],{"type":53,"value":3667},{"type":43,"tag":476,"props":3734,"children":3735},{"style":499},[3736],{"type":53,"value":1106},{"type":43,"tag":476,"props":3738,"children":3739},{"style":499},[3740],{"type":53,"value":587},{"type":43,"tag":476,"props":3742,"children":3743},{"style":590},[3744],{"type":53,"value":3559},{"type":43,"tag":476,"props":3746,"children":3747},{"style":499},[3748],{"type":53,"value":597},{"type":43,"tag":476,"props":3750,"children":3751},{"style":499},[3752],{"type":53,"value":635},{"type":43,"tag":476,"props":3754,"children":3755},{"style":509},[3756],{"type":53,"value":1272},{"type":43,"tag":476,"props":3758,"children":3759},{"style":499},[3760],{"type":53,"value":870},{"type":43,"tag":476,"props":3762,"children":3763},{"style":483},[3764],{"type":53,"value":3765}," \u002F\u002F specific tag\n",{"type":43,"tag":476,"props":3767,"children":3768},{"class":478,"line":505},[3769,3773,3777,3781,3785,3789,3793,3797,3801,3805,3810,3814,3818,3822,3826],{"type":43,"tag":476,"props":3770,"children":3771},{"style":493},[3772],{"type":53,"value":3642},{"type":43,"tag":476,"props":3774,"children":3775},{"style":509},[3776],{"type":53,"value":1014},{"type":43,"tag":476,"props":3778,"children":3779},{"style":499},[3780],{"type":53,"value":332},{"type":43,"tag":476,"props":3782,"children":3783},{"style":1079},[3784],{"type":53,"value":1082},{"type":43,"tag":476,"props":3786,"children":3787},{"style":509},[3788],{"type":53,"value":1087},{"type":43,"tag":476,"props":3790,"children":3791},{"style":499},[3792],{"type":53,"value":1601},{"type":43,"tag":476,"props":3794,"children":3795},{"style":1098},[3796],{"type":53,"value":3667},{"type":43,"tag":476,"props":3798,"children":3799},{"style":499},[3800],{"type":53,"value":1106},{"type":43,"tag":476,"props":3802,"children":3803},{"style":499},[3804],{"type":53,"value":587},{"type":43,"tag":476,"props":3806,"children":3807},{"style":590},[3808],{"type":53,"value":3809},"my-repo@sha256:...",{"type":43,"tag":476,"props":3811,"children":3812},{"style":499},[3813],{"type":53,"value":597},{"type":43,"tag":476,"props":3815,"children":3816},{"style":499},[3817],{"type":53,"value":635},{"type":43,"tag":476,"props":3819,"children":3820},{"style":509},[3821],{"type":53,"value":1272},{"type":43,"tag":476,"props":3823,"children":3824},{"style":499},[3825],{"type":53,"value":870},{"type":43,"tag":476,"props":3827,"children":3828},{"style":483},[3829],{"type":53,"value":3830}," \u002F\u002F specific digest\n",{"type":43,"tag":476,"props":3832,"children":3833},{"class":478,"line":519},[3834,3838,3842,3846,3850,3854],{"type":43,"tag":476,"props":3835,"children":3836},{"style":493},[3837],{"type":53,"value":3642},{"type":43,"tag":476,"props":3839,"children":3840},{"style":509},[3841],{"type":53,"value":1014},{"type":43,"tag":476,"props":3843,"children":3844},{"style":499},[3845],{"type":53,"value":332},{"type":43,"tag":476,"props":3847,"children":3848},{"style":1079},[3849],{"type":53,"value":1082},{"type":43,"tag":476,"props":3851,"children":3852},{"style":509},[3853],{"type":53,"value":1087},{"type":43,"tag":476,"props":3855,"children":3856},{"style":499},[3857],{"type":53,"value":1092},{"type":43,"tag":476,"props":3859,"children":3860},{"class":478,"line":532},[3861,3865,3869,3873,3878,3882,3886],{"type":43,"tag":476,"props":3862,"children":3863},{"style":1098},[3864],{"type":53,"value":3546},{"type":43,"tag":476,"props":3866,"children":3867},{"style":499},[3868],{"type":53,"value":1106},{"type":43,"tag":476,"props":3870,"children":3871},{"style":499},[3872],{"type":53,"value":587},{"type":43,"tag":476,"props":3874,"children":3875},{"style":590},[3876],{"type":53,"value":3877},"vcr.vercel.com\u002Fmy-team\u002Fmy-project\u002Fmy-repo:v1",{"type":43,"tag":476,"props":3879,"children":3880},{"style":499},[3881],{"type":53,"value":597},{"type":43,"tag":476,"props":3883,"children":3884},{"style":499},[3885],{"type":53,"value":625},{"type":43,"tag":476,"props":3887,"children":3888},{"style":483},[3889],{"type":53,"value":3890}," \u002F\u002F fully-qualified\n",{"type":43,"tag":476,"props":3892,"children":3893},{"class":478,"line":545},[3894,3898,3902],{"type":43,"tag":476,"props":3895,"children":3896},{"style":499},[3897],{"type":53,"value":577},{"type":43,"tag":476,"props":3899,"children":3900},{"style":509},[3901],{"type":53,"value":1272},{"type":43,"tag":476,"props":3903,"children":3904},{"style":499},[3905],{"type":53,"value":602},{"type":43,"tag":67,"props":3907,"children":3908},{},[3909,3911,3917],{"type":53,"value":3910},"Push images to VCR with Docker-compatible tooling before referencing them. See the\n",{"type":43,"tag":103,"props":3912,"children":3914},{"href":3443,"rel":3913},[107],[3915],{"type":53,"value":3916},"Container Registry docs",{"type":53,"value":3918}," for push\ninstructions.",{"type":43,"tag":80,"props":3920,"children":3922},{"id":3921},"forking-an-existing-sandbox",[3923],{"type":53,"value":3924},"Forking an Existing Sandbox",{"type":43,"tag":67,"props":3926,"children":3927},{},[3928,3933,3935,3941,3942,3948,3949,3955,3956,3961,3962,3968,3969,3974,3975,3980,3981,3986,3987,3992,3994,3999,4001,4006,4007,4012],{"type":43,"tag":58,"props":3929,"children":3931},{"className":3930},[],[3932],{"type":53,"value":287},{"type":53,"value":3934}," seeds a new sandbox from another sandbox's current snapshot\nand copies its config (",{"type":43,"tag":58,"props":3936,"children":3938},{"className":3937},[],[3939],{"type":53,"value":3940},"resources",{"type":53,"value":261},{"type":43,"tag":58,"props":3943,"children":3945},{"className":3944},[],[3946],{"type":53,"value":3947},"timeout",{"type":53,"value":261},{"type":43,"tag":58,"props":3950,"children":3952},{"className":3951},[],[3953],{"type":53,"value":3954},"networkPolicy",{"type":53,"value":261},{"type":43,"tag":58,"props":3957,"children":3959},{"className":3958},[],[3960],{"type":53,"value":356},{"type":53,"value":296},{"type":43,"tag":58,"props":3963,"children":3965},{"className":3964},[],[3966],{"type":53,"value":3967},"ports",{"type":53,"value":261},{"type":43,"tag":58,"props":3970,"children":3972},{"className":3971},[],[3973],{"type":53,"value":3455},{"type":53,"value":261},{"type":43,"tag":58,"props":3976,"children":3978},{"className":3977},[],[3979],{"type":53,"value":349},{"type":53,"value":261},{"type":43,"tag":58,"props":3982,"children":3984},{"className":3983},[],[3985],{"type":53,"value":370},{"type":53,"value":261},{"type":43,"tag":58,"props":3988,"children":3990},{"className":3989},[],[3991],{"type":53,"value":377},{"type":53,"value":3993},",\nand ",{"type":43,"tag":58,"props":3995,"children":3997},{"className":3996},[],[3998],{"type":53,"value":2943},{"type":53,"value":4000},"). Any field you pass overrides the inherited value. If the source\nhas no current snapshot, the fork falls back to the source's ",{"type":43,"tag":58,"props":4002,"children":4004},{"className":4003},[],[4005],{"type":53,"value":3438},{"type":53,"value":406},{"type":43,"tag":58,"props":4008,"children":4010},{"className":4009},[],[4011],{"type":53,"value":3455},{"type":53,"value":4013},"\nplus the copied config. You can only fork a sandbox in a project you have\naccess to; forking an unknown source returns a 404.",{"type":43,"tag":465,"props":4015,"children":4017},{"className":467,"code":4016,"language":469,"meta":470,"style":470},"\u002F\u002F Inherit everything from the source (env included)\nconst fork = await Sandbox.fork({ sourceSandbox: \"prod-agent\" });\n\n\u002F\u002F Override specific fields; the rest are copied from the source.\n\u002F\u002F A provided `env` fully replaces the source's env (no per-key merge).\nconst fork = await Sandbox.fork({\n  sourceSandbox: \"prod-agent\",\n  name: \"forked-prod-agent\",\n  resources: { vcpus: 4 },\n  env: { OPENAI_API_KEY: process.env.OPENAI_API_KEY! },\n});\n",[4018],{"type":43,"tag":58,"props":4019,"children":4020},{"__ignoreMap":470},[4021,4029,4104,4111,4119,4127,4166,4194,4222,4254,4308],{"type":43,"tag":476,"props":4022,"children":4023},{"class":478,"line":479},[4024],{"type":43,"tag":476,"props":4025,"children":4026},{"style":483},[4027],{"type":53,"value":4028},"\u002F\u002F Inherit everything from the source (env included)\n",{"type":43,"tag":476,"props":4030,"children":4031},{"class":478,"line":489},[4032,4036,4041,4045,4049,4053,4057,4062,4066,4070,4075,4079,4083,4088,4092,4096,4100],{"type":43,"tag":476,"props":4033,"children":4034},{"style":896},[4035],{"type":53,"value":1053},{"type":43,"tag":476,"props":4037,"children":4038},{"style":509},[4039],{"type":53,"value":4040}," fork ",{"type":43,"tag":476,"props":4042,"children":4043},{"style":499},[4044],{"type":53,"value":1063},{"type":43,"tag":476,"props":4046,"children":4047},{"style":493},[4048],{"type":53,"value":1068},{"type":43,"tag":476,"props":4050,"children":4051},{"style":509},[4052],{"type":53,"value":1014},{"type":43,"tag":476,"props":4054,"children":4055},{"style":499},[4056],{"type":53,"value":332},{"type":43,"tag":476,"props":4058,"children":4059},{"style":1079},[4060],{"type":53,"value":4061},"fork",{"type":43,"tag":476,"props":4063,"children":4064},{"style":509},[4065],{"type":53,"value":1087},{"type":43,"tag":476,"props":4067,"children":4068},{"style":499},[4069],{"type":53,"value":1601},{"type":43,"tag":476,"props":4071,"children":4072},{"style":1098},[4073],{"type":53,"value":4074}," sourceSandbox",{"type":43,"tag":476,"props":4076,"children":4077},{"style":499},[4078],{"type":53,"value":1106},{"type":43,"tag":476,"props":4080,"children":4081},{"style":499},[4082],{"type":53,"value":587},{"type":43,"tag":476,"props":4084,"children":4085},{"style":590},[4086],{"type":53,"value":4087},"prod-agent",{"type":43,"tag":476,"props":4089,"children":4090},{"style":499},[4091],{"type":53,"value":597},{"type":43,"tag":476,"props":4093,"children":4094},{"style":499},[4095],{"type":53,"value":635},{"type":43,"tag":476,"props":4097,"children":4098},{"style":509},[4099],{"type":53,"value":1272},{"type":43,"tag":476,"props":4101,"children":4102},{"style":499},[4103],{"type":53,"value":602},{"type":43,"tag":476,"props":4105,"children":4106},{"class":478,"line":505},[4107],{"type":43,"tag":476,"props":4108,"children":4109},{"emptyLinePlaceholder":662},[4110],{"type":53,"value":665},{"type":43,"tag":476,"props":4112,"children":4113},{"class":478,"line":519},[4114],{"type":43,"tag":476,"props":4115,"children":4116},{"style":483},[4117],{"type":53,"value":4118},"\u002F\u002F Override specific fields; the rest are copied from the source.\n",{"type":43,"tag":476,"props":4120,"children":4121},{"class":478,"line":532},[4122],{"type":43,"tag":476,"props":4123,"children":4124},{"style":483},[4125],{"type":53,"value":4126},"\u002F\u002F A provided `env` fully replaces the source's env (no per-key merge).\n",{"type":43,"tag":476,"props":4128,"children":4129},{"class":478,"line":545},[4130,4134,4138,4142,4146,4150,4154,4158,4162],{"type":43,"tag":476,"props":4131,"children":4132},{"style":896},[4133],{"type":53,"value":1053},{"type":43,"tag":476,"props":4135,"children":4136},{"style":509},[4137],{"type":53,"value":4040},{"type":43,"tag":476,"props":4139,"children":4140},{"style":499},[4141],{"type":53,"value":1063},{"type":43,"tag":476,"props":4143,"children":4144},{"style":493},[4145],{"type":53,"value":1068},{"type":43,"tag":476,"props":4147,"children":4148},{"style":509},[4149],{"type":53,"value":1014},{"type":43,"tag":476,"props":4151,"children":4152},{"style":499},[4153],{"type":53,"value":332},{"type":43,"tag":476,"props":4155,"children":4156},{"style":1079},[4157],{"type":53,"value":4061},{"type":43,"tag":476,"props":4159,"children":4160},{"style":509},[4161],{"type":53,"value":1087},{"type":43,"tag":476,"props":4163,"children":4164},{"style":499},[4165],{"type":53,"value":1092},{"type":43,"tag":476,"props":4167,"children":4168},{"class":478,"line":558},[4169,4174,4178,4182,4186,4190],{"type":43,"tag":476,"props":4170,"children":4171},{"style":1098},[4172],{"type":53,"value":4173},"  sourceSandbox",{"type":43,"tag":476,"props":4175,"children":4176},{"style":499},[4177],{"type":53,"value":1106},{"type":43,"tag":476,"props":4179,"children":4180},{"style":499},[4181],{"type":53,"value":587},{"type":43,"tag":476,"props":4183,"children":4184},{"style":590},[4185],{"type":53,"value":4087},{"type":43,"tag":476,"props":4187,"children":4188},{"style":499},[4189],{"type":53,"value":597},{"type":43,"tag":476,"props":4191,"children":4192},{"style":499},[4193],{"type":53,"value":296},{"type":43,"tag":476,"props":4195,"children":4196},{"class":478,"line":571},[4197,4201,4205,4209,4214,4218],{"type":43,"tag":476,"props":4198,"children":4199},{"style":1098},[4200],{"type":53,"value":1101},{"type":43,"tag":476,"props":4202,"children":4203},{"style":499},[4204],{"type":53,"value":1106},{"type":43,"tag":476,"props":4206,"children":4207},{"style":499},[4208],{"type":53,"value":587},{"type":43,"tag":476,"props":4210,"children":4211},{"style":590},[4212],{"type":53,"value":4213},"forked-prod-agent",{"type":43,"tag":476,"props":4215,"children":4216},{"style":499},[4217],{"type":53,"value":597},{"type":43,"tag":476,"props":4219,"children":4220},{"style":499},[4221],{"type":53,"value":296},{"type":43,"tag":476,"props":4223,"children":4224},{"class":478,"line":605},[4225,4229,4233,4237,4241,4245,4249],{"type":43,"tag":476,"props":4226,"children":4227},{"style":1098},[4228],{"type":53,"value":1164},{"type":43,"tag":476,"props":4230,"children":4231},{"style":499},[4232],{"type":53,"value":1106},{"type":43,"tag":476,"props":4234,"children":4235},{"style":499},[4236],{"type":53,"value":615},{"type":43,"tag":476,"props":4238,"children":4239},{"style":1098},[4240],{"type":53,"value":1177},{"type":43,"tag":476,"props":4242,"children":4243},{"style":499},[4244],{"type":53,"value":1106},{"type":43,"tag":476,"props":4246,"children":4247},{"style":1184},[4248],{"type":53,"value":1187},{"type":43,"tag":476,"props":4250,"children":4251},{"style":499},[4252],{"type":53,"value":4253}," },\n",{"type":43,"tag":476,"props":4255,"children":4256},{"class":478,"line":658},[4257,4261,4265,4269,4274,4278,4282,4286,4290,4294,4299,4304],{"type":43,"tag":476,"props":4258,"children":4259},{"style":1098},[4260],{"type":53,"value":1289},{"type":43,"tag":476,"props":4262,"children":4263},{"style":499},[4264],{"type":53,"value":1106},{"type":43,"tag":476,"props":4266,"children":4267},{"style":499},[4268],{"type":53,"value":615},{"type":43,"tag":476,"props":4270,"children":4271},{"style":1098},[4272],{"type":53,"value":4273}," OPENAI_API_KEY",{"type":43,"tag":476,"props":4275,"children":4276},{"style":499},[4277],{"type":53,"value":1106},{"type":43,"tag":476,"props":4279,"children":4280},{"style":509},[4281],{"type":53,"value":2934},{"type":43,"tag":476,"props":4283,"children":4284},{"style":499},[4285],{"type":53,"value":332},{"type":43,"tag":476,"props":4287,"children":4288},{"style":509},[4289],{"type":53,"value":2943},{"type":43,"tag":476,"props":4291,"children":4292},{"style":499},[4293],{"type":53,"value":332},{"type":43,"tag":476,"props":4295,"children":4296},{"style":509},[4297],{"type":53,"value":4298},"OPENAI_API_KEY",{"type":43,"tag":476,"props":4300,"children":4301},{"style":499},[4302],{"type":53,"value":4303},"!",{"type":43,"tag":476,"props":4305,"children":4306},{"style":499},[4307],{"type":53,"value":4253},{"type":43,"tag":476,"props":4309,"children":4310},{"class":478,"line":668},[4311,4315,4319],{"type":43,"tag":476,"props":4312,"children":4313},{"style":499},[4314],{"type":53,"value":577},{"type":43,"tag":476,"props":4316,"children":4317},{"style":509},[4318],{"type":53,"value":1272},{"type":43,"tag":476,"props":4320,"children":4321},{"style":499},[4322],{"type":53,"value":602},{"type":43,"tag":80,"props":4324,"children":4326},{"id":4325},"auto-dispose-pattern",[4327],{"type":53,"value":4328},"Auto-Dispose Pattern",{"type":43,"tag":67,"props":4330,"children":4331},{},[4332,4333,4339],{"type":53,"value":2250},{"type":43,"tag":58,"props":4334,"children":4336},{"className":4335},[],[4337],{"type":53,"value":4338},"await using",{"type":53,"value":4340}," for automatic cleanup:",{"type":43,"tag":465,"props":4342,"children":4344},{"className":467,"code":4343,"language":469,"meta":470,"style":470},"async function runInSandbox() {\n  await using sandbox = await Sandbox.create();\n  \u002F\u002F Sandbox automatically stopped when scope exits\n  await sandbox.runCommand(\"echo\", [\"Hello\"]);\n}\n",[4345],{"type":43,"tag":58,"props":4346,"children":4347},{"__ignoreMap":470},[4348,4375,4416,4424,4490],{"type":43,"tag":476,"props":4349,"children":4350},{"class":478,"line":479},[4351,4356,4361,4366,4371],{"type":43,"tag":476,"props":4352,"children":4353},{"style":896},[4354],{"type":53,"value":4355},"async",{"type":43,"tag":476,"props":4357,"children":4358},{"style":896},[4359],{"type":53,"value":4360}," function",{"type":43,"tag":476,"props":4362,"children":4363},{"style":1079},[4364],{"type":53,"value":4365}," runInSandbox",{"type":43,"tag":476,"props":4367,"children":4368},{"style":499},[4369],{"type":53,"value":4370},"()",{"type":43,"tag":476,"props":4372,"children":4373},{"style":499},[4374],{"type":53,"value":502},{"type":43,"tag":476,"props":4376,"children":4377},{"class":478,"line":489},[4378,4383,4388,4392,4396,4400,4404,4408,4412],{"type":43,"tag":476,"props":4379,"children":4380},{"style":896},[4381],{"type":53,"value":4382},"  await using",{"type":43,"tag":476,"props":4384,"children":4385},{"style":509},[4386],{"type":53,"value":4387}," sandbox",{"type":43,"tag":476,"props":4389,"children":4390},{"style":499},[4391],{"type":53,"value":910},{"type":43,"tag":476,"props":4393,"children":4394},{"style":493},[4395],{"type":53,"value":1068},{"type":43,"tag":476,"props":4397,"children":4398},{"style":509},[4399],{"type":53,"value":1014},{"type":43,"tag":476,"props":4401,"children":4402},{"style":499},[4403],{"type":53,"value":332},{"type":43,"tag":476,"props":4405,"children":4406},{"style":1079},[4407],{"type":53,"value":1082},{"type":43,"tag":476,"props":4409,"children":4410},{"style":1098},[4411],{"type":53,"value":4370},{"type":43,"tag":476,"props":4413,"children":4414},{"style":499},[4415],{"type":53,"value":602},{"type":43,"tag":476,"props":4417,"children":4418},{"class":478,"line":505},[4419],{"type":43,"tag":476,"props":4420,"children":4421},{"style":483},[4422],{"type":53,"value":4423},"  \u002F\u002F Sandbox automatically stopped when scope exits\n",{"type":43,"tag":476,"props":4425,"children":4426},{"class":478,"line":519},[4427,4432,4436,4440,4444,4448,4452,4457,4461,4465,4469,4473,4478,4482,4486],{"type":43,"tag":476,"props":4428,"children":4429},{"style":493},[4430],{"type":53,"value":4431},"  await",{"type":43,"tag":476,"props":4433,"children":4434},{"style":509},[4435],{"type":53,"value":4387},{"type":43,"tag":476,"props":4437,"children":4438},{"style":499},[4439],{"type":53,"value":332},{"type":43,"tag":476,"props":4441,"children":4442},{"style":1079},[4443],{"type":53,"value":259},{"type":43,"tag":476,"props":4445,"children":4446},{"style":1098},[4447],{"type":53,"value":1087},{"type":43,"tag":476,"props":4449,"children":4450},{"style":499},[4451],{"type":53,"value":597},{"type":43,"tag":476,"props":4453,"children":4454},{"style":590},[4455],{"type":53,"value":4456},"echo",{"type":43,"tag":476,"props":4458,"children":4459},{"style":499},[4460],{"type":53,"value":597},{"type":43,"tag":476,"props":4462,"children":4463},{"style":499},[4464],{"type":53,"value":625},{"type":43,"tag":476,"props":4466,"children":4467},{"style":1098},[4468],{"type":53,"value":1214},{"type":43,"tag":476,"props":4470,"children":4471},{"style":499},[4472],{"type":53,"value":597},{"type":43,"tag":476,"props":4474,"children":4475},{"style":590},[4476],{"type":53,"value":4477},"Hello",{"type":43,"tag":476,"props":4479,"children":4480},{"style":499},[4481],{"type":53,"value":597},{"type":43,"tag":476,"props":4483,"children":4484},{"style":1098},[4485],{"type":53,"value":1984},{"type":43,"tag":476,"props":4487,"children":4488},{"style":499},[4489],{"type":53,"value":602},{"type":43,"tag":476,"props":4491,"children":4492},{"class":478,"line":532},[4493],{"type":43,"tag":476,"props":4494,"children":4495},{"style":499},[4496],{"type":53,"value":4497},"}\n",{"type":43,"tag":44,"props":4499,"children":4501},{"id":4500},"running-commands",[4502],{"type":53,"value":4503},"Running Commands",{"type":43,"tag":80,"props":4505,"children":4507},{"id":4506},"basic-command-execution",[4508],{"type":53,"value":4509},"Basic Command Execution",{"type":43,"tag":465,"props":4511,"children":4513},{"className":467,"code":4512,"language":469,"meta":470,"style":470},"const result = await sandbox.runCommand(\"npm\", [\"install\"]);\nif (result.exitCode !== 0) {\n  console.error(\"Install failed:\", await result.stderr());\n}\n",[4514],{"type":43,"tag":58,"props":4515,"children":4516},{"__ignoreMap":470},[4517,4593,4633,4698],{"type":43,"tag":476,"props":4518,"children":4519},{"class":478,"line":479},[4520,4524,4529,4533,4537,4541,4545,4549,4553,4557,4561,4565,4569,4573,4577,4581,4585,4589],{"type":43,"tag":476,"props":4521,"children":4522},{"style":896},[4523],{"type":53,"value":1053},{"type":43,"tag":476,"props":4525,"children":4526},{"style":509},[4527],{"type":53,"value":4528}," result ",{"type":43,"tag":476,"props":4530,"children":4531},{"style":499},[4532],{"type":53,"value":1063},{"type":43,"tag":476,"props":4534,"children":4535},{"style":493},[4536],{"type":53,"value":1068},{"type":43,"tag":476,"props":4538,"children":4539},{"style":509},[4540],{"type":53,"value":4387},{"type":43,"tag":476,"props":4542,"children":4543},{"style":499},[4544],{"type":53,"value":332},{"type":43,"tag":476,"props":4546,"children":4547},{"style":1079},[4548],{"type":53,"value":259},{"type":43,"tag":476,"props":4550,"children":4551},{"style":509},[4552],{"type":53,"value":1087},{"type":43,"tag":476,"props":4554,"children":4555},{"style":499},[4556],{"type":53,"value":597},{"type":43,"tag":476,"props":4558,"children":4559},{"style":590},[4560],{"type":53,"value":1954},{"type":43,"tag":476,"props":4562,"children":4563},{"style":499},[4564],{"type":53,"value":597},{"type":43,"tag":476,"props":4566,"children":4567},{"style":499},[4568],{"type":53,"value":625},{"type":43,"tag":476,"props":4570,"children":4571},{"style":509},[4572],{"type":53,"value":1214},{"type":43,"tag":476,"props":4574,"children":4575},{"style":499},[4576],{"type":53,"value":597},{"type":43,"tag":476,"props":4578,"children":4579},{"style":590},[4580],{"type":53,"value":1975},{"type":43,"tag":476,"props":4582,"children":4583},{"style":499},[4584],{"type":53,"value":597},{"type":43,"tag":476,"props":4586,"children":4587},{"style":509},[4588],{"type":53,"value":1984},{"type":43,"tag":476,"props":4590,"children":4591},{"style":499},[4592],{"type":53,"value":602},{"type":43,"tag":476,"props":4594,"children":4595},{"class":478,"line":489},[4596,4601,4606,4610,4615,4620,4625,4629],{"type":43,"tag":476,"props":4597,"children":4598},{"style":493},[4599],{"type":53,"value":4600},"if",{"type":43,"tag":476,"props":4602,"children":4603},{"style":509},[4604],{"type":53,"value":4605}," (result",{"type":43,"tag":476,"props":4607,"children":4608},{"style":499},[4609],{"type":53,"value":332},{"type":43,"tag":476,"props":4611,"children":4612},{"style":509},[4613],{"type":53,"value":4614},"exitCode ",{"type":43,"tag":476,"props":4616,"children":4617},{"style":499},[4618],{"type":53,"value":4619},"!==",{"type":43,"tag":476,"props":4621,"children":4622},{"style":1184},[4623],{"type":53,"value":4624}," 0",{"type":43,"tag":476,"props":4626,"children":4627},{"style":509},[4628],{"type":53,"value":1905},{"type":43,"tag":476,"props":4630,"children":4631},{"style":499},[4632],{"type":53,"value":1092},{"type":43,"tag":476,"props":4634,"children":4635},{"class":478,"line":505},[4636,4641,4645,4650,4654,4658,4663,4667,4671,4675,4680,4684,4689,4694],{"type":43,"tag":476,"props":4637,"children":4638},{"style":509},[4639],{"type":53,"value":4640},"  console",{"type":43,"tag":476,"props":4642,"children":4643},{"style":499},[4644],{"type":53,"value":332},{"type":43,"tag":476,"props":4646,"children":4647},{"style":1079},[4648],{"type":53,"value":4649},"error",{"type":43,"tag":476,"props":4651,"children":4652},{"style":1098},[4653],{"type":53,"value":1087},{"type":43,"tag":476,"props":4655,"children":4656},{"style":499},[4657],{"type":53,"value":597},{"type":43,"tag":476,"props":4659,"children":4660},{"style":590},[4661],{"type":53,"value":4662},"Install failed:",{"type":43,"tag":476,"props":4664,"children":4665},{"style":499},[4666],{"type":53,"value":597},{"type":43,"tag":476,"props":4668,"children":4669},{"style":499},[4670],{"type":53,"value":625},{"type":43,"tag":476,"props":4672,"children":4673},{"style":493},[4674],{"type":53,"value":1068},{"type":43,"tag":476,"props":4676,"children":4677},{"style":509},[4678],{"type":53,"value":4679}," result",{"type":43,"tag":476,"props":4681,"children":4682},{"style":499},[4683],{"type":53,"value":332},{"type":43,"tag":476,"props":4685,"children":4686},{"style":1079},[4687],{"type":53,"value":4688},"stderr",{"type":43,"tag":476,"props":4690,"children":4691},{"style":1098},[4692],{"type":53,"value":4693},"())",{"type":43,"tag":476,"props":4695,"children":4696},{"style":499},[4697],{"type":53,"value":602},{"type":43,"tag":476,"props":4699,"children":4700},{"class":478,"line":519},[4701],{"type":43,"tag":476,"props":4702,"children":4703},{"style":499},[4704],{"type":53,"value":4497},{"type":43,"tag":80,"props":4706,"children":4708},{"id":4707},"with-options",[4709],{"type":53,"value":4710},"With Options",{"type":43,"tag":465,"props":4712,"children":4714},{"className":467,"code":4713,"language":469,"meta":470,"style":470},"const result = await sandbox.runCommand({\n  cmd: \"npm\",\n  args: [\"run\", \"build\"],\n  cwd: \"\u002Fvercel\u002Fsandbox\u002Fapp\",\n  env: { NODE_ENV: \"production\" },\n  sudo: false,\n  stdout: process.stdout, \u002F\u002F Stream output\n  stderr: process.stderr,\n});\n",[4715],{"type":43,"tag":58,"props":4716,"children":4717},{"__ignoreMap":470},[4718,4757,4785,4838,4867,4906,4927,4961,4989],{"type":43,"tag":476,"props":4719,"children":4720},{"class":478,"line":479},[4721,4725,4729,4733,4737,4741,4745,4749,4753],{"type":43,"tag":476,"props":4722,"children":4723},{"style":896},[4724],{"type":53,"value":1053},{"type":43,"tag":476,"props":4726,"children":4727},{"style":509},[4728],{"type":53,"value":4528},{"type":43,"tag":476,"props":4730,"children":4731},{"style":499},[4732],{"type":53,"value":1063},{"type":43,"tag":476,"props":4734,"children":4735},{"style":493},[4736],{"type":53,"value":1068},{"type":43,"tag":476,"props":4738,"children":4739},{"style":509},[4740],{"type":53,"value":4387},{"type":43,"tag":476,"props":4742,"children":4743},{"style":499},[4744],{"type":53,"value":332},{"type":43,"tag":476,"props":4746,"children":4747},{"style":1079},[4748],{"type":53,"value":259},{"type":43,"tag":476,"props":4750,"children":4751},{"style":509},[4752],{"type":53,"value":1087},{"type":43,"tag":476,"props":4754,"children":4755},{"style":499},[4756],{"type":53,"value":1092},{"type":43,"tag":476,"props":4758,"children":4759},{"class":478,"line":489},[4760,4765,4769,4773,4777,4781],{"type":43,"tag":476,"props":4761,"children":4762},{"style":1098},[4763],{"type":53,"value":4764},"  cmd",{"type":43,"tag":476,"props":4766,"children":4767},{"style":499},[4768],{"type":53,"value":1106},{"type":43,"tag":476,"props":4770,"children":4771},{"style":499},[4772],{"type":53,"value":587},{"type":43,"tag":476,"props":4774,"children":4775},{"style":590},[4776],{"type":53,"value":1954},{"type":43,"tag":476,"props":4778,"children":4779},{"style":499},[4780],{"type":53,"value":597},{"type":43,"tag":476,"props":4782,"children":4783},{"style":499},[4784],{"type":53,"value":296},{"type":43,"tag":476,"props":4786,"children":4787},{"class":478,"line":505},[4788,4793,4797,4801,4805,4809,4813,4817,4821,4826,4830,4834],{"type":43,"tag":476,"props":4789,"children":4790},{"style":1098},[4791],{"type":53,"value":4792},"  args",{"type":43,"tag":476,"props":4794,"children":4795},{"style":499},[4796],{"type":53,"value":1106},{"type":43,"tag":476,"props":4798,"children":4799},{"style":509},[4800],{"type":53,"value":1214},{"type":43,"tag":476,"props":4802,"children":4803},{"style":499},[4804],{"type":53,"value":597},{"type":43,"tag":476,"props":4806,"children":4807},{"style":590},[4808],{"type":53,"value":2114},{"type":43,"tag":476,"props":4810,"children":4811},{"style":499},[4812],{"type":53,"value":597},{"type":43,"tag":476,"props":4814,"children":4815},{"style":499},[4816],{"type":53,"value":625},{"type":43,"tag":476,"props":4818,"children":4819},{"style":499},[4820],{"type":53,"value":587},{"type":43,"tag":476,"props":4822,"children":4823},{"style":590},[4824],{"type":53,"value":4825},"build",{"type":43,"tag":476,"props":4827,"children":4828},{"style":499},[4829],{"type":53,"value":597},{"type":43,"tag":476,"props":4831,"children":4832},{"style":509},[4833],{"type":53,"value":1224},{"type":43,"tag":476,"props":4835,"children":4836},{"style":499},[4837],{"type":53,"value":296},{"type":43,"tag":476,"props":4839,"children":4840},{"class":478,"line":519},[4841,4846,4850,4854,4859,4863],{"type":43,"tag":476,"props":4842,"children":4843},{"style":1098},[4844],{"type":53,"value":4845},"  cwd",{"type":43,"tag":476,"props":4847,"children":4848},{"style":499},[4849],{"type":53,"value":1106},{"type":43,"tag":476,"props":4851,"children":4852},{"style":499},[4853],{"type":53,"value":587},{"type":43,"tag":476,"props":4855,"children":4856},{"style":590},[4857],{"type":53,"value":4858},"\u002Fvercel\u002Fsandbox\u002Fapp",{"type":43,"tag":476,"props":4860,"children":4861},{"style":499},[4862],{"type":53,"value":597},{"type":43,"tag":476,"props":4864,"children":4865},{"style":499},[4866],{"type":53,"value":296},{"type":43,"tag":476,"props":4868,"children":4869},{"class":478,"line":532},[4870,4874,4878,4882,4886,4890,4894,4898,4902],{"type":43,"tag":476,"props":4871,"children":4872},{"style":1098},[4873],{"type":53,"value":1289},{"type":43,"tag":476,"props":4875,"children":4876},{"style":499},[4877],{"type":53,"value":1106},{"type":43,"tag":476,"props":4879,"children":4880},{"style":499},[4881],{"type":53,"value":615},{"type":43,"tag":476,"props":4883,"children":4884},{"style":1098},[4885],{"type":53,"value":1302},{"type":43,"tag":476,"props":4887,"children":4888},{"style":499},[4889],{"type":53,"value":1106},{"type":43,"tag":476,"props":4891,"children":4892},{"style":499},[4893],{"type":53,"value":587},{"type":43,"tag":476,"props":4895,"children":4896},{"style":590},[4897],{"type":53,"value":1315},{"type":43,"tag":476,"props":4899,"children":4900},{"style":499},[4901],{"type":53,"value":597},{"type":43,"tag":476,"props":4903,"children":4904},{"style":499},[4905],{"type":53,"value":4253},{"type":43,"tag":476,"props":4907,"children":4908},{"class":478,"line":545},[4909,4914,4918,4923],{"type":43,"tag":476,"props":4910,"children":4911},{"style":1098},[4912],{"type":53,"value":4913},"  sudo",{"type":43,"tag":476,"props":4915,"children":4916},{"style":499},[4917],{"type":53,"value":1106},{"type":43,"tag":476,"props":4919,"children":4920},{"style":1416},[4921],{"type":53,"value":4922}," false",{"type":43,"tag":476,"props":4924,"children":4925},{"style":499},[4926],{"type":53,"value":296},{"type":43,"tag":476,"props":4928,"children":4929},{"class":478,"line":558},[4930,4935,4939,4943,4947,4952,4956],{"type":43,"tag":476,"props":4931,"children":4932},{"style":1098},[4933],{"type":53,"value":4934},"  stdout",{"type":43,"tag":476,"props":4936,"children":4937},{"style":499},[4938],{"type":53,"value":1106},{"type":43,"tag":476,"props":4940,"children":4941},{"style":509},[4942],{"type":53,"value":2934},{"type":43,"tag":476,"props":4944,"children":4945},{"style":499},[4946],{"type":53,"value":332},{"type":43,"tag":476,"props":4948,"children":4949},{"style":509},[4950],{"type":53,"value":4951},"stdout",{"type":43,"tag":476,"props":4953,"children":4954},{"style":499},[4955],{"type":53,"value":625},{"type":43,"tag":476,"props":4957,"children":4958},{"style":483},[4959],{"type":53,"value":4960}," \u002F\u002F Stream output\n",{"type":43,"tag":476,"props":4962,"children":4963},{"class":478,"line":571},[4964,4969,4973,4977,4981,4985],{"type":43,"tag":476,"props":4965,"children":4966},{"style":1098},[4967],{"type":53,"value":4968},"  stderr",{"type":43,"tag":476,"props":4970,"children":4971},{"style":499},[4972],{"type":53,"value":1106},{"type":43,"tag":476,"props":4974,"children":4975},{"style":509},[4976],{"type":53,"value":2934},{"type":43,"tag":476,"props":4978,"children":4979},{"style":499},[4980],{"type":53,"value":332},{"type":43,"tag":476,"props":4982,"children":4983},{"style":509},[4984],{"type":53,"value":4688},{"type":43,"tag":476,"props":4986,"children":4987},{"style":499},[4988],{"type":53,"value":296},{"type":43,"tag":476,"props":4990,"children":4991},{"class":478,"line":605},[4992,4996,5000],{"type":43,"tag":476,"props":4993,"children":4994},{"style":499},[4995],{"type":53,"value":577},{"type":43,"tag":476,"props":4997,"children":4998},{"style":509},[4999],{"type":53,"value":1272},{"type":43,"tag":476,"props":5001,"children":5002},{"style":499},[5003],{"type":53,"value":602},{"type":43,"tag":80,"props":5005,"children":5007},{"id":5006},"detached-commands-background-processes",[5008],{"type":53,"value":5009},"Detached Commands (Background Processes)",{"type":43,"tag":465,"props":5011,"children":5013},{"className":467,"code":5012,"language":469,"meta":470,"style":470},"\u002F\u002F Start dev server in background\nconst devServer = await sandbox.runCommand({\n  cmd: \"npm\",\n  args: [\"run\", \"dev\"],\n  detached: true, \u002F\u002F Returns immediately\n  stdout: process.stdout,\n});\n\n\u002F\u002F Later: wait for completion or kill\nconst finished = await devServer.wait();\n\u002F\u002F Supported signals: SIGHUP, SIGINT, SIGQUIT, SIGKILL, SIGTERM, SIGCONT, SIGSTOP (or numeric)\nawait devServer.kill(\"SIGTERM\");\n",[5014],{"type":43,"tag":58,"props":5015,"children":5016},{"__ignoreMap":470},[5017,5025,5065,5092,5143,5168,5195,5210,5217,5225,5267,5275],{"type":43,"tag":476,"props":5018,"children":5019},{"class":478,"line":479},[5020],{"type":43,"tag":476,"props":5021,"children":5022},{"style":483},[5023],{"type":53,"value":5024},"\u002F\u002F Start dev server in background\n",{"type":43,"tag":476,"props":5026,"children":5027},{"class":478,"line":489},[5028,5032,5037,5041,5045,5049,5053,5057,5061],{"type":43,"tag":476,"props":5029,"children":5030},{"style":896},[5031],{"type":53,"value":1053},{"type":43,"tag":476,"props":5033,"children":5034},{"style":509},[5035],{"type":53,"value":5036}," devServer ",{"type":43,"tag":476,"props":5038,"children":5039},{"style":499},[5040],{"type":53,"value":1063},{"type":43,"tag":476,"props":5042,"children":5043},{"style":493},[5044],{"type":53,"value":1068},{"type":43,"tag":476,"props":5046,"children":5047},{"style":509},[5048],{"type":53,"value":4387},{"type":43,"tag":476,"props":5050,"children":5051},{"style":499},[5052],{"type":53,"value":332},{"type":43,"tag":476,"props":5054,"children":5055},{"style":1079},[5056],{"type":53,"value":259},{"type":43,"tag":476,"props":5058,"children":5059},{"style":509},[5060],{"type":53,"value":1087},{"type":43,"tag":476,"props":5062,"children":5063},{"style":499},[5064],{"type":53,"value":1092},{"type":43,"tag":476,"props":5066,"children":5067},{"class":478,"line":505},[5068,5072,5076,5080,5084,5088],{"type":43,"tag":476,"props":5069,"children":5070},{"style":1098},[5071],{"type":53,"value":4764},{"type":43,"tag":476,"props":5073,"children":5074},{"style":499},[5075],{"type":53,"value":1106},{"type":43,"tag":476,"props":5077,"children":5078},{"style":499},[5079],{"type":53,"value":587},{"type":43,"tag":476,"props":5081,"children":5082},{"style":590},[5083],{"type":53,"value":1954},{"type":43,"tag":476,"props":5085,"children":5086},{"style":499},[5087],{"type":53,"value":597},{"type":43,"tag":476,"props":5089,"children":5090},{"style":499},[5091],{"type":53,"value":296},{"type":43,"tag":476,"props":5093,"children":5094},{"class":478,"line":519},[5095,5099,5103,5107,5111,5115,5119,5123,5127,5131,5135,5139],{"type":43,"tag":476,"props":5096,"children":5097},{"style":1098},[5098],{"type":53,"value":4792},{"type":43,"tag":476,"props":5100,"children":5101},{"style":499},[5102],{"type":53,"value":1106},{"type":43,"tag":476,"props":5104,"children":5105},{"style":509},[5106],{"type":53,"value":1214},{"type":43,"tag":476,"props":5108,"children":5109},{"style":499},[5110],{"type":53,"value":597},{"type":43,"tag":476,"props":5112,"children":5113},{"style":590},[5114],{"type":53,"value":2114},{"type":43,"tag":476,"props":5116,"children":5117},{"style":499},[5118],{"type":53,"value":597},{"type":43,"tag":476,"props":5120,"children":5121},{"style":499},[5122],{"type":53,"value":625},{"type":43,"tag":476,"props":5124,"children":5125},{"style":499},[5126],{"type":53,"value":587},{"type":43,"tag":476,"props":5128,"children":5129},{"style":590},[5130],{"type":53,"value":2131},{"type":43,"tag":476,"props":5132,"children":5133},{"style":499},[5134],{"type":53,"value":597},{"type":43,"tag":476,"props":5136,"children":5137},{"style":509},[5138],{"type":53,"value":1224},{"type":43,"tag":476,"props":5140,"children":5141},{"style":499},[5142],{"type":53,"value":296},{"type":43,"tag":476,"props":5144,"children":5145},{"class":478,"line":532},[5146,5151,5155,5159,5163],{"type":43,"tag":476,"props":5147,"children":5148},{"style":1098},[5149],{"type":53,"value":5150},"  detached",{"type":43,"tag":476,"props":5152,"children":5153},{"style":499},[5154],{"type":53,"value":1106},{"type":43,"tag":476,"props":5156,"children":5157},{"style":1416},[5158],{"type":53,"value":1419},{"type":43,"tag":476,"props":5160,"children":5161},{"style":499},[5162],{"type":53,"value":625},{"type":43,"tag":476,"props":5164,"children":5165},{"style":483},[5166],{"type":53,"value":5167}," \u002F\u002F Returns immediately\n",{"type":43,"tag":476,"props":5169,"children":5170},{"class":478,"line":545},[5171,5175,5179,5183,5187,5191],{"type":43,"tag":476,"props":5172,"children":5173},{"style":1098},[5174],{"type":53,"value":4934},{"type":43,"tag":476,"props":5176,"children":5177},{"style":499},[5178],{"type":53,"value":1106},{"type":43,"tag":476,"props":5180,"children":5181},{"style":509},[5182],{"type":53,"value":2934},{"type":43,"tag":476,"props":5184,"children":5185},{"style":499},[5186],{"type":53,"value":332},{"type":43,"tag":476,"props":5188,"children":5189},{"style":509},[5190],{"type":53,"value":4951},{"type":43,"tag":476,"props":5192,"children":5193},{"style":499},[5194],{"type":53,"value":296},{"type":43,"tag":476,"props":5196,"children":5197},{"class":478,"line":558},[5198,5202,5206],{"type":43,"tag":476,"props":5199,"children":5200},{"style":499},[5201],{"type":53,"value":577},{"type":43,"tag":476,"props":5203,"children":5204},{"style":509},[5205],{"type":53,"value":1272},{"type":43,"tag":476,"props":5207,"children":5208},{"style":499},[5209],{"type":53,"value":602},{"type":43,"tag":476,"props":5211,"children":5212},{"class":478,"line":571},[5213],{"type":43,"tag":476,"props":5214,"children":5215},{"emptyLinePlaceholder":662},[5216],{"type":53,"value":665},{"type":43,"tag":476,"props":5218,"children":5219},{"class":478,"line":605},[5220],{"type":43,"tag":476,"props":5221,"children":5222},{"style":483},[5223],{"type":53,"value":5224},"\u002F\u002F Later: wait for completion or kill\n",{"type":43,"tag":476,"props":5226,"children":5227},{"class":478,"line":658},[5228,5232,5237,5241,5245,5250,5254,5259,5263],{"type":43,"tag":476,"props":5229,"children":5230},{"style":896},[5231],{"type":53,"value":1053},{"type":43,"tag":476,"props":5233,"children":5234},{"style":509},[5235],{"type":53,"value":5236}," finished ",{"type":43,"tag":476,"props":5238,"children":5239},{"style":499},[5240],{"type":53,"value":1063},{"type":43,"tag":476,"props":5242,"children":5243},{"style":493},[5244],{"type":53,"value":1068},{"type":43,"tag":476,"props":5246,"children":5247},{"style":509},[5248],{"type":53,"value":5249}," devServer",{"type":43,"tag":476,"props":5251,"children":5252},{"style":499},[5253],{"type":53,"value":332},{"type":43,"tag":476,"props":5255,"children":5256},{"style":1079},[5257],{"type":53,"value":5258},"wait",{"type":43,"tag":476,"props":5260,"children":5261},{"style":509},[5262],{"type":53,"value":4370},{"type":43,"tag":476,"props":5264,"children":5265},{"style":499},[5266],{"type":53,"value":602},{"type":43,"tag":476,"props":5268,"children":5269},{"class":478,"line":668},[5270],{"type":43,"tag":476,"props":5271,"children":5272},{"style":483},[5273],{"type":53,"value":5274},"\u002F\u002F Supported signals: SIGHUP, SIGINT, SIGQUIT, SIGKILL, SIGTERM, SIGCONT, SIGSTOP (or numeric)\n",{"type":43,"tag":476,"props":5276,"children":5277},{"class":478,"line":677},[5278,5282,5286,5290,5295,5299,5303,5308,5312,5316],{"type":43,"tag":476,"props":5279,"children":5280},{"style":493},[5281],{"type":53,"value":3642},{"type":43,"tag":476,"props":5283,"children":5284},{"style":509},[5285],{"type":53,"value":5249},{"type":43,"tag":476,"props":5287,"children":5288},{"style":499},[5289],{"type":53,"value":332},{"type":43,"tag":476,"props":5291,"children":5292},{"style":1079},[5293],{"type":53,"value":5294},"kill",{"type":43,"tag":476,"props":5296,"children":5297},{"style":509},[5298],{"type":53,"value":1087},{"type":43,"tag":476,"props":5300,"children":5301},{"style":499},[5302],{"type":53,"value":597},{"type":43,"tag":476,"props":5304,"children":5305},{"style":590},[5306],{"type":53,"value":5307},"SIGTERM",{"type":43,"tag":476,"props":5309,"children":5310},{"style":499},[5311],{"type":53,"value":597},{"type":43,"tag":476,"props":5313,"children":5314},{"style":509},[5315],{"type":53,"value":1272},{"type":43,"tag":476,"props":5317,"children":5318},{"style":499},[5319],{"type":53,"value":602},{"type":43,"tag":80,"props":5321,"children":5323},{"id":5322},"root-access",[5324],{"type":53,"value":5325},"Root Access",{"type":43,"tag":465,"props":5327,"children":5329},{"className":467,"code":5328,"language":469,"meta":470,"style":470},"await sandbox.runCommand({\n  cmd: \"dnf\",\n  args: [\"install\", \"-y\", \"golang\"],\n  sudo: true, \u002F\u002F Execute as root\n});\n",[5330],{"type":43,"tag":58,"props":5331,"children":5332},{"__ignoreMap":470},[5333,5360,5388,5457,5481],{"type":43,"tag":476,"props":5334,"children":5335},{"class":478,"line":479},[5336,5340,5344,5348,5352,5356],{"type":43,"tag":476,"props":5337,"children":5338},{"style":493},[5339],{"type":53,"value":3642},{"type":43,"tag":476,"props":5341,"children":5342},{"style":509},[5343],{"type":53,"value":4387},{"type":43,"tag":476,"props":5345,"children":5346},{"style":499},[5347],{"type":53,"value":332},{"type":43,"tag":476,"props":5349,"children":5350},{"style":1079},[5351],{"type":53,"value":259},{"type":43,"tag":476,"props":5353,"children":5354},{"style":509},[5355],{"type":53,"value":1087},{"type":43,"tag":476,"props":5357,"children":5358},{"style":499},[5359],{"type":53,"value":1092},{"type":43,"tag":476,"props":5361,"children":5362},{"class":478,"line":489},[5363,5367,5371,5375,5380,5384],{"type":43,"tag":476,"props":5364,"children":5365},{"style":1098},[5366],{"type":53,"value":4764},{"type":43,"tag":476,"props":5368,"children":5369},{"style":499},[5370],{"type":53,"value":1106},{"type":43,"tag":476,"props":5372,"children":5373},{"style":499},[5374],{"type":53,"value":587},{"type":43,"tag":476,"props":5376,"children":5377},{"style":590},[5378],{"type":53,"value":5379},"dnf",{"type":43,"tag":476,"props":5381,"children":5382},{"style":499},[5383],{"type":53,"value":597},{"type":43,"tag":476,"props":5385,"children":5386},{"style":499},[5387],{"type":53,"value":296},{"type":43,"tag":476,"props":5389,"children":5390},{"class":478,"line":505},[5391,5395,5399,5403,5407,5411,5415,5419,5423,5428,5432,5436,5440,5445,5449,5453],{"type":43,"tag":476,"props":5392,"children":5393},{"style":1098},[5394],{"type":53,"value":4792},{"type":43,"tag":476,"props":5396,"children":5397},{"style":499},[5398],{"type":53,"value":1106},{"type":43,"tag":476,"props":5400,"children":5401},{"style":509},[5402],{"type":53,"value":1214},{"type":43,"tag":476,"props":5404,"children":5405},{"style":499},[5406],{"type":53,"value":597},{"type":43,"tag":476,"props":5408,"children":5409},{"style":590},[5410],{"type":53,"value":1975},{"type":43,"tag":476,"props":5412,"children":5413},{"style":499},[5414],{"type":53,"value":597},{"type":43,"tag":476,"props":5416,"children":5417},{"style":499},[5418],{"type":53,"value":625},{"type":43,"tag":476,"props":5420,"children":5421},{"style":499},[5422],{"type":53,"value":587},{"type":43,"tag":476,"props":5424,"children":5425},{"style":590},[5426],{"type":53,"value":5427},"-y",{"type":43,"tag":476,"props":5429,"children":5430},{"style":499},[5431],{"type":53,"value":597},{"type":43,"tag":476,"props":5433,"children":5434},{"style":499},[5435],{"type":53,"value":625},{"type":43,"tag":476,"props":5437,"children":5438},{"style":499},[5439],{"type":53,"value":587},{"type":43,"tag":476,"props":5441,"children":5442},{"style":590},[5443],{"type":53,"value":5444},"golang",{"type":43,"tag":476,"props":5446,"children":5447},{"style":499},[5448],{"type":53,"value":597},{"type":43,"tag":476,"props":5450,"children":5451},{"style":509},[5452],{"type":53,"value":1224},{"type":43,"tag":476,"props":5454,"children":5455},{"style":499},[5456],{"type":53,"value":296},{"type":43,"tag":476,"props":5458,"children":5459},{"class":478,"line":519},[5460,5464,5468,5472,5476],{"type":43,"tag":476,"props":5461,"children":5462},{"style":1098},[5463],{"type":53,"value":4913},{"type":43,"tag":476,"props":5465,"children":5466},{"style":499},[5467],{"type":53,"value":1106},{"type":43,"tag":476,"props":5469,"children":5470},{"style":1416},[5471],{"type":53,"value":1419},{"type":43,"tag":476,"props":5473,"children":5474},{"style":499},[5475],{"type":53,"value":625},{"type":43,"tag":476,"props":5477,"children":5478},{"style":483},[5479],{"type":53,"value":5480}," \u002F\u002F Execute as root\n",{"type":43,"tag":476,"props":5482,"children":5483},{"class":478,"line":532},[5484,5488,5492],{"type":43,"tag":476,"props":5485,"children":5486},{"style":499},[5487],{"type":53,"value":577},{"type":43,"tag":476,"props":5489,"children":5490},{"style":509},[5491],{"type":53,"value":1272},{"type":43,"tag":476,"props":5493,"children":5494},{"style":499},[5495],{"type":53,"value":602},{"type":43,"tag":44,"props":5497,"children":5499},{"id":5498},"file-operations",[5500],{"type":53,"value":5501},"File Operations",{"type":43,"tag":80,"props":5503,"children":5505},{"id":5504},"write-files",[5506],{"type":53,"value":5507},"Write Files",{"type":43,"tag":465,"props":5509,"children":5511},{"className":467,"code":5510,"language":469,"meta":470,"style":470},"await sandbox.writeFiles([\n  {\n    path: \"\u002Fvercel\u002Fsandbox\u002Fconfig.json\",\n    content: Buffer.from(JSON.stringify({ key: \"value\" })),\n  },\n  {\n    path: \"\u002Fvercel\u002Fsandbox\u002Fscript.sh\",\n    content: Buffer.from(\"#!\u002Fbin\u002Fbash\\necho 'Hello'\"),\n    mode: 0o755,\n  },\n]);\n",[5512],{"type":43,"tag":58,"props":5513,"children":5514},{"__ignoreMap":470},[5515,5538,5546,5575,5656,5663,5670,5698,5756,5777,5784],{"type":43,"tag":476,"props":5516,"children":5517},{"class":478,"line":479},[5518,5522,5526,5530,5534],{"type":43,"tag":476,"props":5519,"children":5520},{"style":493},[5521],{"type":53,"value":3642},{"type":43,"tag":476,"props":5523,"children":5524},{"style":509},[5525],{"type":53,"value":4387},{"type":43,"tag":476,"props":5527,"children":5528},{"style":499},[5529],{"type":53,"value":332},{"type":43,"tag":476,"props":5531,"children":5532},{"style":1079},[5533],{"type":53,"value":267},{"type":43,"tag":476,"props":5535,"children":5536},{"style":509},[5537],{"type":53,"value":1827},{"type":43,"tag":476,"props":5539,"children":5540},{"class":478,"line":489},[5541],{"type":43,"tag":476,"props":5542,"children":5543},{"style":499},[5544],{"type":53,"value":5545},"  {\n",{"type":43,"tag":476,"props":5547,"children":5548},{"class":478,"line":505},[5549,5554,5558,5562,5567,5571],{"type":43,"tag":476,"props":5550,"children":5551},{"style":1098},[5552],{"type":53,"value":5553},"    path",{"type":43,"tag":476,"props":5555,"children":5556},{"style":499},[5557],{"type":53,"value":1106},{"type":43,"tag":476,"props":5559,"children":5560},{"style":499},[5561],{"type":53,"value":587},{"type":43,"tag":476,"props":5563,"children":5564},{"style":590},[5565],{"type":53,"value":5566},"\u002Fvercel\u002Fsandbox\u002Fconfig.json",{"type":43,"tag":476,"props":5568,"children":5569},{"style":499},[5570],{"type":53,"value":597},{"type":43,"tag":476,"props":5572,"children":5573},{"style":499},[5574],{"type":53,"value":296},{"type":43,"tag":476,"props":5576,"children":5577},{"class":478,"line":519},[5578,5583,5587,5591,5595,5599,5604,5608,5613,5617,5621,5626,5630,5634,5639,5643,5647,5652],{"type":43,"tag":476,"props":5579,"children":5580},{"style":1098},[5581],{"type":53,"value":5582},"    content",{"type":43,"tag":476,"props":5584,"children":5585},{"style":499},[5586],{"type":53,"value":1106},{"type":43,"tag":476,"props":5588,"children":5589},{"style":509},[5590],{"type":53,"value":1875},{"type":43,"tag":476,"props":5592,"children":5593},{"style":499},[5594],{"type":53,"value":332},{"type":43,"tag":476,"props":5596,"children":5597},{"style":1079},[5598],{"type":53,"value":852},{"type":43,"tag":476,"props":5600,"children":5601},{"style":509},[5602],{"type":53,"value":5603},"(JSON",{"type":43,"tag":476,"props":5605,"children":5606},{"style":499},[5607],{"type":53,"value":332},{"type":43,"tag":476,"props":5609,"children":5610},{"style":1079},[5611],{"type":53,"value":5612},"stringify",{"type":43,"tag":476,"props":5614,"children":5615},{"style":509},[5616],{"type":53,"value":1087},{"type":43,"tag":476,"props":5618,"children":5619},{"style":499},[5620],{"type":53,"value":1601},{"type":43,"tag":476,"props":5622,"children":5623},{"style":1098},[5624],{"type":53,"value":5625}," key",{"type":43,"tag":476,"props":5627,"children":5628},{"style":499},[5629],{"type":53,"value":1106},{"type":43,"tag":476,"props":5631,"children":5632},{"style":499},[5633],{"type":53,"value":587},{"type":43,"tag":476,"props":5635,"children":5636},{"style":590},[5637],{"type":53,"value":5638},"value",{"type":43,"tag":476,"props":5640,"children":5641},{"style":499},[5642],{"type":53,"value":597},{"type":43,"tag":476,"props":5644,"children":5645},{"style":499},[5646],{"type":53,"value":635},{"type":43,"tag":476,"props":5648,"children":5649},{"style":509},[5650],{"type":53,"value":5651},"))",{"type":43,"tag":476,"props":5653,"children":5654},{"style":499},[5655],{"type":53,"value":296},{"type":43,"tag":476,"props":5657,"children":5658},{"class":478,"line":532},[5659],{"type":43,"tag":476,"props":5660,"children":5661},{"style":499},[5662],{"type":53,"value":1996},{"type":43,"tag":476,"props":5664,"children":5665},{"class":478,"line":545},[5666],{"type":43,"tag":476,"props":5667,"children":5668},{"style":499},[5669],{"type":53,"value":5545},{"type":43,"tag":476,"props":5671,"children":5672},{"class":478,"line":558},[5673,5677,5681,5685,5690,5694],{"type":43,"tag":476,"props":5674,"children":5675},{"style":1098},[5676],{"type":53,"value":5553},{"type":43,"tag":476,"props":5678,"children":5679},{"style":499},[5680],{"type":53,"value":1106},{"type":43,"tag":476,"props":5682,"children":5683},{"style":499},[5684],{"type":53,"value":587},{"type":43,"tag":476,"props":5686,"children":5687},{"style":590},[5688],{"type":53,"value":5689},"\u002Fvercel\u002Fsandbox\u002Fscript.sh",{"type":43,"tag":476,"props":5691,"children":5692},{"style":499},[5693],{"type":53,"value":597},{"type":43,"tag":476,"props":5695,"children":5696},{"style":499},[5697],{"type":53,"value":296},{"type":43,"tag":476,"props":5699,"children":5700},{"class":478,"line":571},[5701,5705,5709,5713,5717,5721,5725,5729,5734,5739,5744,5748,5752],{"type":43,"tag":476,"props":5702,"children":5703},{"style":1098},[5704],{"type":53,"value":5582},{"type":43,"tag":476,"props":5706,"children":5707},{"style":499},[5708],{"type":53,"value":1106},{"type":43,"tag":476,"props":5710,"children":5711},{"style":509},[5712],{"type":53,"value":1875},{"type":43,"tag":476,"props":5714,"children":5715},{"style":499},[5716],{"type":53,"value":332},{"type":43,"tag":476,"props":5718,"children":5719},{"style":1079},[5720],{"type":53,"value":852},{"type":43,"tag":476,"props":5722,"children":5723},{"style":509},[5724],{"type":53,"value":1087},{"type":43,"tag":476,"props":5726,"children":5727},{"style":499},[5728],{"type":53,"value":597},{"type":43,"tag":476,"props":5730,"children":5731},{"style":590},[5732],{"type":53,"value":5733},"#!\u002Fbin\u002Fbash",{"type":43,"tag":476,"props":5735,"children":5736},{"style":509},[5737],{"type":53,"value":5738},"\\n",{"type":43,"tag":476,"props":5740,"children":5741},{"style":590},[5742],{"type":53,"value":5743},"echo 'Hello'",{"type":43,"tag":476,"props":5745,"children":5746},{"style":499},[5747],{"type":53,"value":597},{"type":43,"tag":476,"props":5749,"children":5750},{"style":509},[5751],{"type":53,"value":1272},{"type":43,"tag":476,"props":5753,"children":5754},{"style":499},[5755],{"type":53,"value":296},{"type":43,"tag":476,"props":5757,"children":5758},{"class":478,"line":605},[5759,5764,5768,5773],{"type":43,"tag":476,"props":5760,"children":5761},{"style":1098},[5762],{"type":53,"value":5763},"    mode",{"type":43,"tag":476,"props":5765,"children":5766},{"style":499},[5767],{"type":53,"value":1106},{"type":43,"tag":476,"props":5769,"children":5770},{"style":1184},[5771],{"type":53,"value":5772}," 0o755",{"type":43,"tag":476,"props":5774,"children":5775},{"style":499},[5776],{"type":53,"value":296},{"type":43,"tag":476,"props":5778,"children":5779},{"class":478,"line":658},[5780],{"type":43,"tag":476,"props":5781,"children":5782},{"style":499},[5783],{"type":53,"value":1996},{"type":43,"tag":476,"props":5785,"children":5786},{"class":478,"line":668},[5787,5791],{"type":43,"tag":476,"props":5788,"children":5789},{"style":509},[5790],{"type":53,"value":1984},{"type":43,"tag":476,"props":5792,"children":5793},{"style":499},[5794],{"type":53,"value":602},{"type":43,"tag":80,"props":5796,"children":5798},{"id":5797},"read-files",[5799],{"type":53,"value":5800},"Read Files",{"type":43,"tag":465,"props":5802,"children":5804},{"className":467,"code":5803,"language":469,"meta":470,"style":470},"\u002F\u002F Returns a Buffer object\nconst buffer = await sandbox.readFileToBuffer({\n  path: \"\u002Fvercel\u002Fsandbox\u002Foutput.txt\",\n});\n\n\u002F\u002F Returns a NodeJS.ReadableStream\nconst stream = await sandbox.readFile({\n  path: \"\u002Fvercel\u002Fsandbox\u002Flarge-file.bin\",\n});\n",[5805],{"type":43,"tag":58,"props":5806,"children":5807},{"__ignoreMap":470},[5808,5816,5857,5886,5901,5908,5916,5957,5985],{"type":43,"tag":476,"props":5809,"children":5810},{"class":478,"line":479},[5811],{"type":43,"tag":476,"props":5812,"children":5813},{"style":483},[5814],{"type":53,"value":5815},"\u002F\u002F Returns a Buffer object\n",{"type":43,"tag":476,"props":5817,"children":5818},{"class":478,"line":489},[5819,5823,5828,5832,5836,5840,5844,5849,5853],{"type":43,"tag":476,"props":5820,"children":5821},{"style":896},[5822],{"type":53,"value":1053},{"type":43,"tag":476,"props":5824,"children":5825},{"style":509},[5826],{"type":53,"value":5827}," buffer ",{"type":43,"tag":476,"props":5829,"children":5830},{"style":499},[5831],{"type":53,"value":1063},{"type":43,"tag":476,"props":5833,"children":5834},{"style":493},[5835],{"type":53,"value":1068},{"type":43,"tag":476,"props":5837,"children":5838},{"style":509},[5839],{"type":53,"value":4387},{"type":43,"tag":476,"props":5841,"children":5842},{"style":499},[5843],{"type":53,"value":332},{"type":43,"tag":476,"props":5845,"children":5846},{"style":1079},[5847],{"type":53,"value":5848},"readFileToBuffer",{"type":43,"tag":476,"props":5850,"children":5851},{"style":509},[5852],{"type":53,"value":1087},{"type":43,"tag":476,"props":5854,"children":5855},{"style":499},[5856],{"type":53,"value":1092},{"type":43,"tag":476,"props":5858,"children":5859},{"class":478,"line":505},[5860,5865,5869,5873,5878,5882],{"type":43,"tag":476,"props":5861,"children":5862},{"style":1098},[5863],{"type":53,"value":5864},"  path",{"type":43,"tag":476,"props":5866,"children":5867},{"style":499},[5868],{"type":53,"value":1106},{"type":43,"tag":476,"props":5870,"children":5871},{"style":499},[5872],{"type":53,"value":587},{"type":43,"tag":476,"props":5874,"children":5875},{"style":590},[5876],{"type":53,"value":5877},"\u002Fvercel\u002Fsandbox\u002Foutput.txt",{"type":43,"tag":476,"props":5879,"children":5880},{"style":499},[5881],{"type":53,"value":597},{"type":43,"tag":476,"props":5883,"children":5884},{"style":499},[5885],{"type":53,"value":296},{"type":43,"tag":476,"props":5887,"children":5888},{"class":478,"line":519},[5889,5893,5897],{"type":43,"tag":476,"props":5890,"children":5891},{"style":499},[5892],{"type":53,"value":577},{"type":43,"tag":476,"props":5894,"children":5895},{"style":509},[5896],{"type":53,"value":1272},{"type":43,"tag":476,"props":5898,"children":5899},{"style":499},[5900],{"type":53,"value":602},{"type":43,"tag":476,"props":5902,"children":5903},{"class":478,"line":532},[5904],{"type":43,"tag":476,"props":5905,"children":5906},{"emptyLinePlaceholder":662},[5907],{"type":53,"value":665},{"type":43,"tag":476,"props":5909,"children":5910},{"class":478,"line":545},[5911],{"type":43,"tag":476,"props":5912,"children":5913},{"style":483},[5914],{"type":53,"value":5915},"\u002F\u002F Returns a NodeJS.ReadableStream\n",{"type":43,"tag":476,"props":5917,"children":5918},{"class":478,"line":558},[5919,5923,5928,5932,5936,5940,5944,5949,5953],{"type":43,"tag":476,"props":5920,"children":5921},{"style":896},[5922],{"type":53,"value":1053},{"type":43,"tag":476,"props":5924,"children":5925},{"style":509},[5926],{"type":53,"value":5927}," stream ",{"type":43,"tag":476,"props":5929,"children":5930},{"style":499},[5931],{"type":53,"value":1063},{"type":43,"tag":476,"props":5933,"children":5934},{"style":493},[5935],{"type":53,"value":1068},{"type":43,"tag":476,"props":5937,"children":5938},{"style":509},[5939],{"type":53,"value":4387},{"type":43,"tag":476,"props":5941,"children":5942},{"style":499},[5943],{"type":53,"value":332},{"type":43,"tag":476,"props":5945,"children":5946},{"style":1079},[5947],{"type":53,"value":5948},"readFile",{"type":43,"tag":476,"props":5950,"children":5951},{"style":509},[5952],{"type":53,"value":1087},{"type":43,"tag":476,"props":5954,"children":5955},{"style":499},[5956],{"type":53,"value":1092},{"type":43,"tag":476,"props":5958,"children":5959},{"class":478,"line":571},[5960,5964,5968,5972,5977,5981],{"type":43,"tag":476,"props":5961,"children":5962},{"style":1098},[5963],{"type":53,"value":5864},{"type":43,"tag":476,"props":5965,"children":5966},{"style":499},[5967],{"type":53,"value":1106},{"type":43,"tag":476,"props":5969,"children":5970},{"style":499},[5971],{"type":53,"value":587},{"type":43,"tag":476,"props":5973,"children":5974},{"style":590},[5975],{"type":53,"value":5976},"\u002Fvercel\u002Fsandbox\u002Flarge-file.bin",{"type":43,"tag":476,"props":5978,"children":5979},{"style":499},[5980],{"type":53,"value":597},{"type":43,"tag":476,"props":5982,"children":5983},{"style":499},[5984],{"type":53,"value":296},{"type":43,"tag":476,"props":5986,"children":5987},{"class":478,"line":605},[5988,5992,5996],{"type":43,"tag":476,"props":5989,"children":5990},{"style":499},[5991],{"type":53,"value":577},{"type":43,"tag":476,"props":5993,"children":5994},{"style":509},[5995],{"type":53,"value":1272},{"type":43,"tag":476,"props":5997,"children":5998},{"style":499},[5999],{"type":53,"value":602},{"type":43,"tag":80,"props":6001,"children":6003},{"id":6002},"download-files",[6004],{"type":53,"value":6005},"Download Files",{"type":43,"tag":465,"props":6007,"children":6009},{"className":467,"code":6008,"language":469,"meta":470,"style":470},"const localPath = await sandbox.downloadFile(\n  { path: \"\u002Fvercel\u002Fsandbox\u002Freport.pdf\" }, \u002F\u002F source path on the sandbox\n  { path: \".\u002Fdownloads\u002Freport.pdf\" }, \u002F\u002F destination path on the local machine\n  { mkdirRecursive: true },\n);\n",[6010],{"type":43,"tag":58,"props":6011,"children":6012},{"__ignoreMap":470},[6013,6051,6089,6126,6150],{"type":43,"tag":476,"props":6014,"children":6015},{"class":478,"line":479},[6016,6020,6025,6029,6033,6037,6041,6046],{"type":43,"tag":476,"props":6017,"children":6018},{"style":896},[6019],{"type":53,"value":1053},{"type":43,"tag":476,"props":6021,"children":6022},{"style":509},[6023],{"type":53,"value":6024}," localPath ",{"type":43,"tag":476,"props":6026,"children":6027},{"style":499},[6028],{"type":53,"value":1063},{"type":43,"tag":476,"props":6030,"children":6031},{"style":493},[6032],{"type":53,"value":1068},{"type":43,"tag":476,"props":6034,"children":6035},{"style":509},[6036],{"type":53,"value":4387},{"type":43,"tag":476,"props":6038,"children":6039},{"style":499},[6040],{"type":53,"value":332},{"type":43,"tag":476,"props":6042,"children":6043},{"style":1079},[6044],{"type":53,"value":6045},"downloadFile",{"type":43,"tag":476,"props":6047,"children":6048},{"style":509},[6049],{"type":53,"value":6050},"(\n",{"type":43,"tag":476,"props":6052,"children":6053},{"class":478,"line":489},[6054,6059,6063,6067,6071,6076,6080,6084],{"type":43,"tag":476,"props":6055,"children":6056},{"style":499},[6057],{"type":53,"value":6058},"  {",{"type":43,"tag":476,"props":6060,"children":6061},{"style":1098},[6062],{"type":53,"value":1840},{"type":43,"tag":476,"props":6064,"children":6065},{"style":499},[6066],{"type":53,"value":1106},{"type":43,"tag":476,"props":6068,"children":6069},{"style":499},[6070],{"type":53,"value":587},{"type":43,"tag":476,"props":6072,"children":6073},{"style":590},[6074],{"type":53,"value":6075},"\u002Fvercel\u002Fsandbox\u002Freport.pdf",{"type":43,"tag":476,"props":6077,"children":6078},{"style":499},[6079],{"type":53,"value":597},{"type":43,"tag":476,"props":6081,"children":6082},{"style":499},[6083],{"type":53,"value":1192},{"type":43,"tag":476,"props":6085,"children":6086},{"style":483},[6087],{"type":53,"value":6088}," \u002F\u002F source path on the sandbox\n",{"type":43,"tag":476,"props":6090,"children":6091},{"class":478,"line":505},[6092,6096,6100,6104,6108,6113,6117,6121],{"type":43,"tag":476,"props":6093,"children":6094},{"style":499},[6095],{"type":53,"value":6058},{"type":43,"tag":476,"props":6097,"children":6098},{"style":1098},[6099],{"type":53,"value":1840},{"type":43,"tag":476,"props":6101,"children":6102},{"style":499},[6103],{"type":53,"value":1106},{"type":43,"tag":476,"props":6105,"children":6106},{"style":499},[6107],{"type":53,"value":587},{"type":43,"tag":476,"props":6109,"children":6110},{"style":590},[6111],{"type":53,"value":6112},".\u002Fdownloads\u002Freport.pdf",{"type":43,"tag":476,"props":6114,"children":6115},{"style":499},[6116],{"type":53,"value":597},{"type":43,"tag":476,"props":6118,"children":6119},{"style":499},[6120],{"type":53,"value":1192},{"type":43,"tag":476,"props":6122,"children":6123},{"style":483},[6124],{"type":53,"value":6125}," \u002F\u002F destination path on the local machine\n",{"type":43,"tag":476,"props":6127,"children":6128},{"class":478,"line":519},[6129,6133,6138,6142,6146],{"type":43,"tag":476,"props":6130,"children":6131},{"style":499},[6132],{"type":53,"value":6058},{"type":43,"tag":476,"props":6134,"children":6135},{"style":1098},[6136],{"type":53,"value":6137}," mkdirRecursive",{"type":43,"tag":476,"props":6139,"children":6140},{"style":499},[6141],{"type":53,"value":1106},{"type":43,"tag":476,"props":6143,"children":6144},{"style":1416},[6145],{"type":53,"value":1419},{"type":43,"tag":476,"props":6147,"children":6148},{"style":499},[6149],{"type":53,"value":4253},{"type":43,"tag":476,"props":6151,"children":6152},{"class":478,"line":532},[6153,6157],{"type":43,"tag":476,"props":6154,"children":6155},{"style":509},[6156],{"type":53,"value":1272},{"type":43,"tag":476,"props":6158,"children":6159},{"style":499},[6160],{"type":53,"value":602},{"type":43,"tag":80,"props":6162,"children":6164},{"id":6163},"create-directories",[6165],{"type":53,"value":6166},"Create Directories",{"type":43,"tag":465,"props":6168,"children":6170},{"className":467,"code":6169,"language":469,"meta":470,"style":470},"await sandbox.mkDir(\"\u002Fvercel\u002Fsandbox\u002Fmy-app\u002Fsrc\");\n",[6171],{"type":43,"tag":58,"props":6172,"children":6173},{"__ignoreMap":470},[6174],{"type":43,"tag":476,"props":6175,"children":6176},{"class":478,"line":479},[6177,6181,6185,6189,6194,6198,6202,6207,6211,6215],{"type":43,"tag":476,"props":6178,"children":6179},{"style":493},[6180],{"type":53,"value":3642},{"type":43,"tag":476,"props":6182,"children":6183},{"style":509},[6184],{"type":53,"value":4387},{"type":43,"tag":476,"props":6186,"children":6187},{"style":499},[6188],{"type":53,"value":332},{"type":43,"tag":476,"props":6190,"children":6191},{"style":1079},[6192],{"type":53,"value":6193},"mkDir",{"type":43,"tag":476,"props":6195,"children":6196},{"style":509},[6197],{"type":53,"value":1087},{"type":43,"tag":476,"props":6199,"children":6200},{"style":499},[6201],{"type":53,"value":597},{"type":43,"tag":476,"props":6203,"children":6204},{"style":590},[6205],{"type":53,"value":6206},"\u002Fvercel\u002Fsandbox\u002Fmy-app\u002Fsrc",{"type":43,"tag":476,"props":6208,"children":6209},{"style":499},[6210],{"type":53,"value":597},{"type":43,"tag":476,"props":6212,"children":6213},{"style":509},[6214],{"type":53,"value":1272},{"type":43,"tag":476,"props":6216,"children":6217},{"style":499},[6218],{"type":53,"value":602},{"type":43,"tag":80,"props":6220,"children":6222},{"id":6221},"sandboxfs-nodefspromises-compatible-api",[6223,6229,6231,6237],{"type":43,"tag":58,"props":6224,"children":6226},{"className":6225},[],[6227],{"type":53,"value":6228},"sandbox.fs",{"type":53,"value":6230}," — ",{"type":43,"tag":58,"props":6232,"children":6234},{"className":6233},[],[6235],{"type":53,"value":6236},"node:fs\u002Fpromises",{"type":53,"value":6238},"-compatible API",{"type":43,"tag":465,"props":6240,"children":6242},{"className":467,"code":6241,"language":469,"meta":470,"style":470},"const content = await sandbox.fs.readFile(\"\u002Fetc\u002Fhostname\", \"utf8\");\nawait sandbox.fs.writeFile(\"\u002Ftmp\u002Fhello.txt\", \"Hello, world!\");\nconst files = await sandbox.fs.readdir(\"\u002Ftmp\");\nconst stats = await sandbox.fs.stat(\"\u002Ftmp\u002Fhello.txt\");\n",[6243],{"type":43,"tag":58,"props":6244,"children":6245},{"__ignoreMap":470},[6246,6329,6399,6465],{"type":43,"tag":476,"props":6247,"children":6248},{"class":478,"line":479},[6249,6253,6258,6262,6266,6270,6274,6279,6283,6287,6291,6295,6300,6304,6308,6312,6317,6321,6325],{"type":43,"tag":476,"props":6250,"children":6251},{"style":896},[6252],{"type":53,"value":1053},{"type":43,"tag":476,"props":6254,"children":6255},{"style":509},[6256],{"type":53,"value":6257}," content ",{"type":43,"tag":476,"props":6259,"children":6260},{"style":499},[6261],{"type":53,"value":1063},{"type":43,"tag":476,"props":6263,"children":6264},{"style":493},[6265],{"type":53,"value":1068},{"type":43,"tag":476,"props":6267,"children":6268},{"style":509},[6269],{"type":53,"value":4387},{"type":43,"tag":476,"props":6271,"children":6272},{"style":499},[6273],{"type":53,"value":332},{"type":43,"tag":476,"props":6275,"children":6276},{"style":509},[6277],{"type":53,"value":6278},"fs",{"type":43,"tag":476,"props":6280,"children":6281},{"style":499},[6282],{"type":53,"value":332},{"type":43,"tag":476,"props":6284,"children":6285},{"style":1079},[6286],{"type":53,"value":5948},{"type":43,"tag":476,"props":6288,"children":6289},{"style":509},[6290],{"type":53,"value":1087},{"type":43,"tag":476,"props":6292,"children":6293},{"style":499},[6294],{"type":53,"value":597},{"type":43,"tag":476,"props":6296,"children":6297},{"style":590},[6298],{"type":53,"value":6299},"\u002Fetc\u002Fhostname",{"type":43,"tag":476,"props":6301,"children":6302},{"style":499},[6303],{"type":53,"value":597},{"type":43,"tag":476,"props":6305,"children":6306},{"style":499},[6307],{"type":53,"value":625},{"type":43,"tag":476,"props":6309,"children":6310},{"style":499},[6311],{"type":53,"value":587},{"type":43,"tag":476,"props":6313,"children":6314},{"style":590},[6315],{"type":53,"value":6316},"utf8",{"type":43,"tag":476,"props":6318,"children":6319},{"style":499},[6320],{"type":53,"value":597},{"type":43,"tag":476,"props":6322,"children":6323},{"style":509},[6324],{"type":53,"value":1272},{"type":43,"tag":476,"props":6326,"children":6327},{"style":499},[6328],{"type":53,"value":602},{"type":43,"tag":476,"props":6330,"children":6331},{"class":478,"line":489},[6332,6336,6340,6344,6348,6352,6357,6361,6365,6370,6374,6378,6382,6387,6391,6395],{"type":43,"tag":476,"props":6333,"children":6334},{"style":493},[6335],{"type":53,"value":3642},{"type":43,"tag":476,"props":6337,"children":6338},{"style":509},[6339],{"type":53,"value":4387},{"type":43,"tag":476,"props":6341,"children":6342},{"style":499},[6343],{"type":53,"value":332},{"type":43,"tag":476,"props":6345,"children":6346},{"style":509},[6347],{"type":53,"value":6278},{"type":43,"tag":476,"props":6349,"children":6350},{"style":499},[6351],{"type":53,"value":332},{"type":43,"tag":476,"props":6353,"children":6354},{"style":1079},[6355],{"type":53,"value":6356},"writeFile",{"type":43,"tag":476,"props":6358,"children":6359},{"style":509},[6360],{"type":53,"value":1087},{"type":43,"tag":476,"props":6362,"children":6363},{"style":499},[6364],{"type":53,"value":597},{"type":43,"tag":476,"props":6366,"children":6367},{"style":590},[6368],{"type":53,"value":6369},"\u002Ftmp\u002Fhello.txt",{"type":43,"tag":476,"props":6371,"children":6372},{"style":499},[6373],{"type":53,"value":597},{"type":43,"tag":476,"props":6375,"children":6376},{"style":499},[6377],{"type":53,"value":625},{"type":43,"tag":476,"props":6379,"children":6380},{"style":499},[6381],{"type":53,"value":587},{"type":43,"tag":476,"props":6383,"children":6384},{"style":590},[6385],{"type":53,"value":6386},"Hello, world!",{"type":43,"tag":476,"props":6388,"children":6389},{"style":499},[6390],{"type":53,"value":597},{"type":43,"tag":476,"props":6392,"children":6393},{"style":509},[6394],{"type":53,"value":1272},{"type":43,"tag":476,"props":6396,"children":6397},{"style":499},[6398],{"type":53,"value":602},{"type":43,"tag":476,"props":6400,"children":6401},{"class":478,"line":505},[6402,6406,6411,6415,6419,6423,6427,6431,6435,6440,6444,6448,6453,6457,6461],{"type":43,"tag":476,"props":6403,"children":6404},{"style":896},[6405],{"type":53,"value":1053},{"type":43,"tag":476,"props":6407,"children":6408},{"style":509},[6409],{"type":53,"value":6410}," files ",{"type":43,"tag":476,"props":6412,"children":6413},{"style":499},[6414],{"type":53,"value":1063},{"type":43,"tag":476,"props":6416,"children":6417},{"style":493},[6418],{"type":53,"value":1068},{"type":43,"tag":476,"props":6420,"children":6421},{"style":509},[6422],{"type":53,"value":4387},{"type":43,"tag":476,"props":6424,"children":6425},{"style":499},[6426],{"type":53,"value":332},{"type":43,"tag":476,"props":6428,"children":6429},{"style":509},[6430],{"type":53,"value":6278},{"type":43,"tag":476,"props":6432,"children":6433},{"style":499},[6434],{"type":53,"value":332},{"type":43,"tag":476,"props":6436,"children":6437},{"style":1079},[6438],{"type":53,"value":6439},"readdir",{"type":43,"tag":476,"props":6441,"children":6442},{"style":509},[6443],{"type":53,"value":1087},{"type":43,"tag":476,"props":6445,"children":6446},{"style":499},[6447],{"type":53,"value":597},{"type":43,"tag":476,"props":6449,"children":6450},{"style":590},[6451],{"type":53,"value":6452},"\u002Ftmp",{"type":43,"tag":476,"props":6454,"children":6455},{"style":499},[6456],{"type":53,"value":597},{"type":43,"tag":476,"props":6458,"children":6459},{"style":509},[6460],{"type":53,"value":1272},{"type":43,"tag":476,"props":6462,"children":6463},{"style":499},[6464],{"type":53,"value":602},{"type":43,"tag":476,"props":6466,"children":6467},{"class":478,"line":519},[6468,6472,6477,6481,6485,6489,6493,6497,6501,6506,6510,6514,6518,6522,6526],{"type":43,"tag":476,"props":6469,"children":6470},{"style":896},[6471],{"type":53,"value":1053},{"type":43,"tag":476,"props":6473,"children":6474},{"style":509},[6475],{"type":53,"value":6476}," stats ",{"type":43,"tag":476,"props":6478,"children":6479},{"style":499},[6480],{"type":53,"value":1063},{"type":43,"tag":476,"props":6482,"children":6483},{"style":493},[6484],{"type":53,"value":1068},{"type":43,"tag":476,"props":6486,"children":6487},{"style":509},[6488],{"type":53,"value":4387},{"type":43,"tag":476,"props":6490,"children":6491},{"style":499},[6492],{"type":53,"value":332},{"type":43,"tag":476,"props":6494,"children":6495},{"style":509},[6496],{"type":53,"value":6278},{"type":43,"tag":476,"props":6498,"children":6499},{"style":499},[6500],{"type":53,"value":332},{"type":43,"tag":476,"props":6502,"children":6503},{"style":1079},[6504],{"type":53,"value":6505},"stat",{"type":43,"tag":476,"props":6507,"children":6508},{"style":509},[6509],{"type":53,"value":1087},{"type":43,"tag":476,"props":6511,"children":6512},{"style":499},[6513],{"type":53,"value":597},{"type":43,"tag":476,"props":6515,"children":6516},{"style":590},[6517],{"type":53,"value":6369},{"type":43,"tag":476,"props":6519,"children":6520},{"style":499},[6521],{"type":53,"value":597},{"type":43,"tag":476,"props":6523,"children":6524},{"style":509},[6525],{"type":53,"value":1272},{"type":43,"tag":476,"props":6527,"children":6528},{"style":499},[6529],{"type":53,"value":602},{"type":43,"tag":44,"props":6531,"children":6533},{"id":6532},"multi-user-and-groups",[6534],{"type":53,"value":6535},"Multi-User and Groups",{"type":43,"tag":67,"props":6537,"children":6538},{},[6539],{"type":53,"value":6540},"Create isolated Linux users and shared groups inside a sandbox. This is purely\nSDK-side and is useful for isolating multiple agents or workloads within a single\nsandbox. Usernames and group names are validated to prevent command injection.",{"type":43,"tag":80,"props":6542,"children":6544},{"id":6543},"creating-users",[6545],{"type":53,"value":6546},"Creating Users",{"type":43,"tag":67,"props":6548,"children":6549},{},[6550,6556,6558,6564,6566,6572],{"type":43,"tag":58,"props":6551,"children":6553},{"className":6552},[],[6554],{"type":53,"value":6555},"createUser",{"type":53,"value":6557}," provisions a Linux user with an isolated home directory at\n",{"type":43,"tag":58,"props":6559,"children":6561},{"className":6560},[],[6562],{"type":53,"value":6563},"\u002Fhome\u002F\u003Cusername>",{"type":53,"value":6565}," and returns a ",{"type":43,"tag":58,"props":6567,"children":6569},{"className":6568},[],[6570],{"type":53,"value":6571},"SandboxUser",{"type":53,"value":6573}," whose operations run in that\nuser's context.",{"type":43,"tag":465,"props":6575,"children":6577},{"className":467,"code":6576,"language":469,"meta":470,"style":470},"const alice = await sandbox.createUser(\"alice\");\nalice.username; \u002F\u002F \"alice\"\nalice.homeDir; \u002F\u002F \"\u002Fhome\u002Falice\"\n\n\u002F\u002F Commands run as alice; cwd defaults to \u002Fhome\u002Falice\nconst whoami = await alice.runCommand(\"whoami\");\nawait whoami.stdout(); \u002F\u002F \"alice\\n\"\n\n\u002F\u002F Env vars, custom cwd, sudo escalation, and detached mode all work\nawait alice.runCommand({\n  cmd: \"node\",\n  args: [\"-e\", \"console.log(process.env.SECRET)\"],\n  env: { SECRET: \"hunter2\" },\n});\nawait alice.runCommand({\n  cmd: \"dnf\",\n  args: [\"install\", \"-y\", \"git\"],\n  sudo: true,\n});\nconst server = await alice.runCommand({\n  cmd: \"node\",\n  args: [\"server.js\"],\n  detached: true,\n});\n",[6578],{"type":43,"tag":58,"props":6579,"children":6580},{"__ignoreMap":470},[6581,6638,6663,6688,6695,6703,6761,6794,6801,6809,6836,6864,6917,6958,6973,7000,7027,7094,7113,7128,7168,7195,7231,7251],{"type":43,"tag":476,"props":6582,"children":6583},{"class":478,"line":479},[6584,6588,6593,6597,6601,6605,6609,6613,6617,6621,6626,6630,6634],{"type":43,"tag":476,"props":6585,"children":6586},{"style":896},[6587],{"type":53,"value":1053},{"type":43,"tag":476,"props":6589,"children":6590},{"style":509},[6591],{"type":53,"value":6592}," alice ",{"type":43,"tag":476,"props":6594,"children":6595},{"style":499},[6596],{"type":53,"value":1063},{"type":43,"tag":476,"props":6598,"children":6599},{"style":493},[6600],{"type":53,"value":1068},{"type":43,"tag":476,"props":6602,"children":6603},{"style":509},[6604],{"type":53,"value":4387},{"type":43,"tag":476,"props":6606,"children":6607},{"style":499},[6608],{"type":53,"value":332},{"type":43,"tag":476,"props":6610,"children":6611},{"style":1079},[6612],{"type":53,"value":6555},{"type":43,"tag":476,"props":6614,"children":6615},{"style":509},[6616],{"type":53,"value":1087},{"type":43,"tag":476,"props":6618,"children":6619},{"style":499},[6620],{"type":53,"value":597},{"type":43,"tag":476,"props":6622,"children":6623},{"style":590},[6624],{"type":53,"value":6625},"alice",{"type":43,"tag":476,"props":6627,"children":6628},{"style":499},[6629],{"type":53,"value":597},{"type":43,"tag":476,"props":6631,"children":6632},{"style":509},[6633],{"type":53,"value":1272},{"type":43,"tag":476,"props":6635,"children":6636},{"style":499},[6637],{"type":53,"value":602},{"type":43,"tag":476,"props":6639,"children":6640},{"class":478,"line":489},[6641,6645,6649,6654,6658],{"type":43,"tag":476,"props":6642,"children":6643},{"style":509},[6644],{"type":53,"value":6625},{"type":43,"tag":476,"props":6646,"children":6647},{"style":499},[6648],{"type":53,"value":332},{"type":43,"tag":476,"props":6650,"children":6651},{"style":509},[6652],{"type":53,"value":6653},"username",{"type":43,"tag":476,"props":6655,"children":6656},{"style":499},[6657],{"type":53,"value":870},{"type":43,"tag":476,"props":6659,"children":6660},{"style":483},[6661],{"type":53,"value":6662}," \u002F\u002F \"alice\"\n",{"type":43,"tag":476,"props":6664,"children":6665},{"class":478,"line":505},[6666,6670,6674,6679,6683],{"type":43,"tag":476,"props":6667,"children":6668},{"style":509},[6669],{"type":53,"value":6625},{"type":43,"tag":476,"props":6671,"children":6672},{"style":499},[6673],{"type":53,"value":332},{"type":43,"tag":476,"props":6675,"children":6676},{"style":509},[6677],{"type":53,"value":6678},"homeDir",{"type":43,"tag":476,"props":6680,"children":6681},{"style":499},[6682],{"type":53,"value":870},{"type":43,"tag":476,"props":6684,"children":6685},{"style":483},[6686],{"type":53,"value":6687}," \u002F\u002F \"\u002Fhome\u002Falice\"\n",{"type":43,"tag":476,"props":6689,"children":6690},{"class":478,"line":519},[6691],{"type":43,"tag":476,"props":6692,"children":6693},{"emptyLinePlaceholder":662},[6694],{"type":53,"value":665},{"type":43,"tag":476,"props":6696,"children":6697},{"class":478,"line":532},[6698],{"type":43,"tag":476,"props":6699,"children":6700},{"style":483},[6701],{"type":53,"value":6702},"\u002F\u002F Commands run as alice; cwd defaults to \u002Fhome\u002Falice\n",{"type":43,"tag":476,"props":6704,"children":6705},{"class":478,"line":545},[6706,6710,6715,6719,6723,6728,6732,6736,6740,6744,6749,6753,6757],{"type":43,"tag":476,"props":6707,"children":6708},{"style":896},[6709],{"type":53,"value":1053},{"type":43,"tag":476,"props":6711,"children":6712},{"style":509},[6713],{"type":53,"value":6714}," whoami ",{"type":43,"tag":476,"props":6716,"children":6717},{"style":499},[6718],{"type":53,"value":1063},{"type":43,"tag":476,"props":6720,"children":6721},{"style":493},[6722],{"type":53,"value":1068},{"type":43,"tag":476,"props":6724,"children":6725},{"style":509},[6726],{"type":53,"value":6727}," alice",{"type":43,"tag":476,"props":6729,"children":6730},{"style":499},[6731],{"type":53,"value":332},{"type":43,"tag":476,"props":6733,"children":6734},{"style":1079},[6735],{"type":53,"value":259},{"type":43,"tag":476,"props":6737,"children":6738},{"style":509},[6739],{"type":53,"value":1087},{"type":43,"tag":476,"props":6741,"children":6742},{"style":499},[6743],{"type":53,"value":597},{"type":43,"tag":476,"props":6745,"children":6746},{"style":590},[6747],{"type":53,"value":6748},"whoami",{"type":43,"tag":476,"props":6750,"children":6751},{"style":499},[6752],{"type":53,"value":597},{"type":43,"tag":476,"props":6754,"children":6755},{"style":509},[6756],{"type":53,"value":1272},{"type":43,"tag":476,"props":6758,"children":6759},{"style":499},[6760],{"type":53,"value":602},{"type":43,"tag":476,"props":6762,"children":6763},{"class":478,"line":558},[6764,6768,6773,6777,6781,6785,6789],{"type":43,"tag":476,"props":6765,"children":6766},{"style":493},[6767],{"type":53,"value":3642},{"type":43,"tag":476,"props":6769,"children":6770},{"style":509},[6771],{"type":53,"value":6772}," whoami",{"type":43,"tag":476,"props":6774,"children":6775},{"style":499},[6776],{"type":53,"value":332},{"type":43,"tag":476,"props":6778,"children":6779},{"style":1079},[6780],{"type":53,"value":4951},{"type":43,"tag":476,"props":6782,"children":6783},{"style":509},[6784],{"type":53,"value":4370},{"type":43,"tag":476,"props":6786,"children":6787},{"style":499},[6788],{"type":53,"value":870},{"type":43,"tag":476,"props":6790,"children":6791},{"style":483},[6792],{"type":53,"value":6793}," \u002F\u002F \"alice\\n\"\n",{"type":43,"tag":476,"props":6795,"children":6796},{"class":478,"line":571},[6797],{"type":43,"tag":476,"props":6798,"children":6799},{"emptyLinePlaceholder":662},[6800],{"type":53,"value":665},{"type":43,"tag":476,"props":6802,"children":6803},{"class":478,"line":605},[6804],{"type":43,"tag":476,"props":6805,"children":6806},{"style":483},[6807],{"type":53,"value":6808},"\u002F\u002F Env vars, custom cwd, sudo escalation, and detached mode all work\n",{"type":43,"tag":476,"props":6810,"children":6811},{"class":478,"line":658},[6812,6816,6820,6824,6828,6832],{"type":43,"tag":476,"props":6813,"children":6814},{"style":493},[6815],{"type":53,"value":3642},{"type":43,"tag":476,"props":6817,"children":6818},{"style":509},[6819],{"type":53,"value":6727},{"type":43,"tag":476,"props":6821,"children":6822},{"style":499},[6823],{"type":53,"value":332},{"type":43,"tag":476,"props":6825,"children":6826},{"style":1079},[6827],{"type":53,"value":259},{"type":43,"tag":476,"props":6829,"children":6830},{"style":509},[6831],{"type":53,"value":1087},{"type":43,"tag":476,"props":6833,"children":6834},{"style":499},[6835],{"type":53,"value":1092},{"type":43,"tag":476,"props":6837,"children":6838},{"class":478,"line":668},[6839,6843,6847,6851,6856,6860],{"type":43,"tag":476,"props":6840,"children":6841},{"style":1098},[6842],{"type":53,"value":4764},{"type":43,"tag":476,"props":6844,"children":6845},{"style":499},[6846],{"type":53,"value":1106},{"type":43,"tag":476,"props":6848,"children":6849},{"style":499},[6850],{"type":53,"value":587},{"type":43,"tag":476,"props":6852,"children":6853},{"style":590},[6854],{"type":53,"value":6855},"node",{"type":43,"tag":476,"props":6857,"children":6858},{"style":499},[6859],{"type":53,"value":597},{"type":43,"tag":476,"props":6861,"children":6862},{"style":499},[6863],{"type":53,"value":296},{"type":43,"tag":476,"props":6865,"children":6866},{"class":478,"line":677},[6867,6871,6875,6879,6883,6888,6892,6896,6900,6905,6909,6913],{"type":43,"tag":476,"props":6868,"children":6869},{"style":1098},[6870],{"type":53,"value":4792},{"type":43,"tag":476,"props":6872,"children":6873},{"style":499},[6874],{"type":53,"value":1106},{"type":43,"tag":476,"props":6876,"children":6877},{"style":509},[6878],{"type":53,"value":1214},{"type":43,"tag":476,"props":6880,"children":6881},{"style":499},[6882],{"type":53,"value":597},{"type":43,"tag":476,"props":6884,"children":6885},{"style":590},[6886],{"type":53,"value":6887},"-e",{"type":43,"tag":476,"props":6889,"children":6890},{"style":499},[6891],{"type":53,"value":597},{"type":43,"tag":476,"props":6893,"children":6894},{"style":499},[6895],{"type":53,"value":625},{"type":43,"tag":476,"props":6897,"children":6898},{"style":499},[6899],{"type":53,"value":587},{"type":43,"tag":476,"props":6901,"children":6902},{"style":590},[6903],{"type":53,"value":6904},"console.log(process.env.SECRET)",{"type":43,"tag":476,"props":6906,"children":6907},{"style":499},[6908],{"type":53,"value":597},{"type":43,"tag":476,"props":6910,"children":6911},{"style":509},[6912],{"type":53,"value":1224},{"type":43,"tag":476,"props":6914,"children":6915},{"style":499},[6916],{"type":53,"value":296},{"type":43,"tag":476,"props":6918,"children":6919},{"class":478,"line":694},[6920,6924,6928,6932,6937,6941,6945,6950,6954],{"type":43,"tag":476,"props":6921,"children":6922},{"style":1098},[6923],{"type":53,"value":1289},{"type":43,"tag":476,"props":6925,"children":6926},{"style":499},[6927],{"type":53,"value":1106},{"type":43,"tag":476,"props":6929,"children":6930},{"style":499},[6931],{"type":53,"value":615},{"type":43,"tag":476,"props":6933,"children":6934},{"style":1098},[6935],{"type":53,"value":6936}," SECRET",{"type":43,"tag":476,"props":6938,"children":6939},{"style":499},[6940],{"type":53,"value":1106},{"type":43,"tag":476,"props":6942,"children":6943},{"style":499},[6944],{"type":53,"value":587},{"type":43,"tag":476,"props":6946,"children":6947},{"style":590},[6948],{"type":53,"value":6949},"hunter2",{"type":43,"tag":476,"props":6951,"children":6952},{"style":499},[6953],{"type":53,"value":597},{"type":43,"tag":476,"props":6955,"children":6956},{"style":499},[6957],{"type":53,"value":4253},{"type":43,"tag":476,"props":6959,"children":6960},{"class":478,"line":707},[6961,6965,6969],{"type":43,"tag":476,"props":6962,"children":6963},{"style":499},[6964],{"type":53,"value":577},{"type":43,"tag":476,"props":6966,"children":6967},{"style":509},[6968],{"type":53,"value":1272},{"type":43,"tag":476,"props":6970,"children":6971},{"style":499},[6972],{"type":53,"value":602},{"type":43,"tag":476,"props":6974,"children":6975},{"class":478,"line":720},[6976,6980,6984,6988,6992,6996],{"type":43,"tag":476,"props":6977,"children":6978},{"style":493},[6979],{"type":53,"value":3642},{"type":43,"tag":476,"props":6981,"children":6982},{"style":509},[6983],{"type":53,"value":6727},{"type":43,"tag":476,"props":6985,"children":6986},{"style":499},[6987],{"type":53,"value":332},{"type":43,"tag":476,"props":6989,"children":6990},{"style":1079},[6991],{"type":53,"value":259},{"type":43,"tag":476,"props":6993,"children":6994},{"style":509},[6995],{"type":53,"value":1087},{"type":43,"tag":476,"props":6997,"children":6998},{"style":499},[6999],{"type":53,"value":1092},{"type":43,"tag":476,"props":7001,"children":7002},{"class":478,"line":733},[7003,7007,7011,7015,7019,7023],{"type":43,"tag":476,"props":7004,"children":7005},{"style":1098},[7006],{"type":53,"value":4764},{"type":43,"tag":476,"props":7008,"children":7009},{"style":499},[7010],{"type":53,"value":1106},{"type":43,"tag":476,"props":7012,"children":7013},{"style":499},[7014],{"type":53,"value":587},{"type":43,"tag":476,"props":7016,"children":7017},{"style":590},[7018],{"type":53,"value":5379},{"type":43,"tag":476,"props":7020,"children":7021},{"style":499},[7022],{"type":53,"value":597},{"type":43,"tag":476,"props":7024,"children":7025},{"style":499},[7026],{"type":53,"value":296},{"type":43,"tag":476,"props":7028,"children":7029},{"class":478,"line":761},[7030,7034,7038,7042,7046,7050,7054,7058,7062,7066,7070,7074,7078,7082,7086,7090],{"type":43,"tag":476,"props":7031,"children":7032},{"style":1098},[7033],{"type":53,"value":4792},{"type":43,"tag":476,"props":7035,"children":7036},{"style":499},[7037],{"type":53,"value":1106},{"type":43,"tag":476,"props":7039,"children":7040},{"style":509},[7041],{"type":53,"value":1214},{"type":43,"tag":476,"props":7043,"children":7044},{"style":499},[7045],{"type":53,"value":597},{"type":43,"tag":476,"props":7047,"children":7048},{"style":590},[7049],{"type":53,"value":1975},{"type":43,"tag":476,"props":7051,"children":7052},{"style":499},[7053],{"type":53,"value":597},{"type":43,"tag":476,"props":7055,"children":7056},{"style":499},[7057],{"type":53,"value":625},{"type":43,"tag":476,"props":7059,"children":7060},{"style":499},[7061],{"type":53,"value":587},{"type":43,"tag":476,"props":7063,"children":7064},{"style":590},[7065],{"type":53,"value":5427},{"type":43,"tag":476,"props":7067,"children":7068},{"style":499},[7069],{"type":53,"value":597},{"type":43,"tag":476,"props":7071,"children":7072},{"style":499},[7073],{"type":53,"value":625},{"type":43,"tag":476,"props":7075,"children":7076},{"style":499},[7077],{"type":53,"value":587},{"type":43,"tag":476,"props":7079,"children":7080},{"style":590},[7081],{"type":53,"value":2622},{"type":43,"tag":476,"props":7083,"children":7084},{"style":499},[7085],{"type":53,"value":597},{"type":43,"tag":476,"props":7087,"children":7088},{"style":509},[7089],{"type":53,"value":1224},{"type":43,"tag":476,"props":7091,"children":7092},{"style":499},[7093],{"type":53,"value":296},{"type":43,"tag":476,"props":7095,"children":7096},{"class":478,"line":769},[7097,7101,7105,7109],{"type":43,"tag":476,"props":7098,"children":7099},{"style":1098},[7100],{"type":53,"value":4913},{"type":43,"tag":476,"props":7102,"children":7103},{"style":499},[7104],{"type":53,"value":1106},{"type":43,"tag":476,"props":7106,"children":7107},{"style":1416},[7108],{"type":53,"value":1419},{"type":43,"tag":476,"props":7110,"children":7111},{"style":499},[7112],{"type":53,"value":296},{"type":43,"tag":476,"props":7114,"children":7115},{"class":478,"line":778},[7116,7120,7124],{"type":43,"tag":476,"props":7117,"children":7118},{"style":499},[7119],{"type":53,"value":577},{"type":43,"tag":476,"props":7121,"children":7122},{"style":509},[7123],{"type":53,"value":1272},{"type":43,"tag":476,"props":7125,"children":7126},{"style":499},[7127],{"type":53,"value":602},{"type":43,"tag":476,"props":7129,"children":7130},{"class":478,"line":820},[7131,7135,7140,7144,7148,7152,7156,7160,7164],{"type":43,"tag":476,"props":7132,"children":7133},{"style":896},[7134],{"type":53,"value":1053},{"type":43,"tag":476,"props":7136,"children":7137},{"style":509},[7138],{"type":53,"value":7139}," server ",{"type":43,"tag":476,"props":7141,"children":7142},{"style":499},[7143],{"type":53,"value":1063},{"type":43,"tag":476,"props":7145,"children":7146},{"style":493},[7147],{"type":53,"value":1068},{"type":43,"tag":476,"props":7149,"children":7150},{"style":509},[7151],{"type":53,"value":6727},{"type":43,"tag":476,"props":7153,"children":7154},{"style":499},[7155],{"type":53,"value":332},{"type":43,"tag":476,"props":7157,"children":7158},{"style":1079},[7159],{"type":53,"value":259},{"type":43,"tag":476,"props":7161,"children":7162},{"style":509},[7163],{"type":53,"value":1087},{"type":43,"tag":476,"props":7165,"children":7166},{"style":499},[7167],{"type":53,"value":1092},{"type":43,"tag":476,"props":7169,"children":7170},{"class":478,"line":828},[7171,7175,7179,7183,7187,7191],{"type":43,"tag":476,"props":7172,"children":7173},{"style":1098},[7174],{"type":53,"value":4764},{"type":43,"tag":476,"props":7176,"children":7177},{"style":499},[7178],{"type":53,"value":1106},{"type":43,"tag":476,"props":7180,"children":7181},{"style":499},[7182],{"type":53,"value":587},{"type":43,"tag":476,"props":7184,"children":7185},{"style":590},[7186],{"type":53,"value":6855},{"type":43,"tag":476,"props":7188,"children":7189},{"style":499},[7190],{"type":53,"value":597},{"type":43,"tag":476,"props":7192,"children":7193},{"style":499},[7194],{"type":53,"value":296},{"type":43,"tag":476,"props":7196,"children":7197},{"class":478,"line":837},[7198,7202,7206,7210,7214,7219,7223,7227],{"type":43,"tag":476,"props":7199,"children":7200},{"style":1098},[7201],{"type":53,"value":4792},{"type":43,"tag":476,"props":7203,"children":7204},{"style":499},[7205],{"type":53,"value":1106},{"type":43,"tag":476,"props":7207,"children":7208},{"style":509},[7209],{"type":53,"value":1214},{"type":43,"tag":476,"props":7211,"children":7212},{"style":499},[7213],{"type":53,"value":597},{"type":43,"tag":476,"props":7215,"children":7216},{"style":590},[7217],{"type":53,"value":7218},"server.js",{"type":43,"tag":476,"props":7220,"children":7221},{"style":499},[7222],{"type":53,"value":597},{"type":43,"tag":476,"props":7224,"children":7225},{"style":509},[7226],{"type":53,"value":1224},{"type":43,"tag":476,"props":7228,"children":7229},{"style":499},[7230],{"type":53,"value":296},{"type":43,"tag":476,"props":7232,"children":7234},{"class":478,"line":7233},23,[7235,7239,7243,7247],{"type":43,"tag":476,"props":7236,"children":7237},{"style":1098},[7238],{"type":53,"value":5150},{"type":43,"tag":476,"props":7240,"children":7241},{"style":499},[7242],{"type":53,"value":1106},{"type":43,"tag":476,"props":7244,"children":7245},{"style":1416},[7246],{"type":53,"value":1419},{"type":43,"tag":476,"props":7248,"children":7249},{"style":499},[7250],{"type":53,"value":296},{"type":43,"tag":476,"props":7252,"children":7254},{"class":478,"line":7253},24,[7255,7259,7263],{"type":43,"tag":476,"props":7256,"children":7257},{"style":499},[7258],{"type":53,"value":577},{"type":43,"tag":476,"props":7260,"children":7261},{"style":509},[7262],{"type":53,"value":1272},{"type":43,"tag":476,"props":7264,"children":7265},{"style":499},[7266],{"type":53,"value":602},{"type":43,"tag":67,"props":7268,"children":7269},{},[7270,7272,7277],{"type":53,"value":7271},"Get a handle to a pre-existing user (e.g. ",{"type":43,"tag":58,"props":7273,"children":7275},{"className":7274},[],[7276],{"type":53,"value":40},{"type":53,"value":7278},") without creating it:",{"type":43,"tag":465,"props":7280,"children":7282},{"className":467,"code":7281,"language":469,"meta":470,"style":470},"const existing = sandbox.asUser(\"bob\");\nawait existing.runCommand(\"whoami\");\n",[7283],{"type":43,"tag":58,"props":7284,"children":7285},{"__ignoreMap":470},[7286,7340],{"type":43,"tag":476,"props":7287,"children":7288},{"class":478,"line":479},[7289,7293,7298,7302,7306,7310,7315,7319,7323,7328,7332,7336],{"type":43,"tag":476,"props":7290,"children":7291},{"style":896},[7292],{"type":53,"value":1053},{"type":43,"tag":476,"props":7294,"children":7295},{"style":509},[7296],{"type":53,"value":7297}," existing ",{"type":43,"tag":476,"props":7299,"children":7300},{"style":499},[7301],{"type":53,"value":1063},{"type":43,"tag":476,"props":7303,"children":7304},{"style":509},[7305],{"type":53,"value":4387},{"type":43,"tag":476,"props":7307,"children":7308},{"style":499},[7309],{"type":53,"value":332},{"type":43,"tag":476,"props":7311,"children":7312},{"style":1079},[7313],{"type":53,"value":7314},"asUser",{"type":43,"tag":476,"props":7316,"children":7317},{"style":509},[7318],{"type":53,"value":1087},{"type":43,"tag":476,"props":7320,"children":7321},{"style":499},[7322],{"type":53,"value":597},{"type":43,"tag":476,"props":7324,"children":7325},{"style":590},[7326],{"type":53,"value":7327},"bob",{"type":43,"tag":476,"props":7329,"children":7330},{"style":499},[7331],{"type":53,"value":597},{"type":43,"tag":476,"props":7333,"children":7334},{"style":509},[7335],{"type":53,"value":1272},{"type":43,"tag":476,"props":7337,"children":7338},{"style":499},[7339],{"type":53,"value":602},{"type":43,"tag":476,"props":7341,"children":7342},{"class":478,"line":489},[7343,7347,7352,7356,7360,7364,7368,7372,7376,7380],{"type":43,"tag":476,"props":7344,"children":7345},{"style":493},[7346],{"type":53,"value":3642},{"type":43,"tag":476,"props":7348,"children":7349},{"style":509},[7350],{"type":53,"value":7351}," existing",{"type":43,"tag":476,"props":7353,"children":7354},{"style":499},[7355],{"type":53,"value":332},{"type":43,"tag":476,"props":7357,"children":7358},{"style":1079},[7359],{"type":53,"value":259},{"type":43,"tag":476,"props":7361,"children":7362},{"style":509},[7363],{"type":53,"value":1087},{"type":43,"tag":476,"props":7365,"children":7366},{"style":499},[7367],{"type":53,"value":597},{"type":43,"tag":476,"props":7369,"children":7370},{"style":590},[7371],{"type":53,"value":6748},{"type":43,"tag":476,"props":7373,"children":7374},{"style":499},[7375],{"type":53,"value":597},{"type":43,"tag":476,"props":7377,"children":7378},{"style":509},[7379],{"type":53,"value":1272},{"type":43,"tag":476,"props":7381,"children":7382},{"style":499},[7383],{"type":53,"value":602},{"type":43,"tag":80,"props":7385,"children":7387},{"id":7386},"file-operations-scoped-to-a-user",[7388],{"type":53,"value":7389},"File Operations Scoped to a User",{"type":43,"tag":67,"props":7391,"children":7392},{},[7393],{"type":53,"value":7394},"Relative paths resolve against the user's home directory and files are owned by\nthat user. Absolute paths are also supported.",{"type":43,"tag":465,"props":7396,"children":7398},{"className":467,"code":7397,"language":469,"meta":470,"style":470},"\u002F\u002F Written to \u002Fhome\u002Falice, owned by alice:alice\nawait alice.writeFiles([\n  { path: \"app.js\", content: Buffer.from('console.log(\"hi\")') },\n  { path: \"data\u002Fconfig.json\", content: Buffer.from(\"{}\") },\n]);\n\nconst buf = await alice.readFileToBuffer({ path: \"app.js\" });\nconst stream = await alice.readFile({ path: \"app.js\" });\nawait alice.mkDir(\"projects\u002Fmy-app\");\n",[7399],{"type":43,"tag":58,"props":7400,"children":7401},{"__ignoreMap":470},[7402,7410,7433,7511,7588,7599,7606,7678,7749],{"type":43,"tag":476,"props":7403,"children":7404},{"class":478,"line":479},[7405],{"type":43,"tag":476,"props":7406,"children":7407},{"style":483},[7408],{"type":53,"value":7409},"\u002F\u002F Written to \u002Fhome\u002Falice, owned by alice:alice\n",{"type":43,"tag":476,"props":7411,"children":7412},{"class":478,"line":489},[7413,7417,7421,7425,7429],{"type":43,"tag":476,"props":7414,"children":7415},{"style":493},[7416],{"type":53,"value":3642},{"type":43,"tag":476,"props":7418,"children":7419},{"style":509},[7420],{"type":53,"value":6727},{"type":43,"tag":476,"props":7422,"children":7423},{"style":499},[7424],{"type":53,"value":332},{"type":43,"tag":476,"props":7426,"children":7427},{"style":1079},[7428],{"type":53,"value":267},{"type":43,"tag":476,"props":7430,"children":7431},{"style":509},[7432],{"type":53,"value":1827},{"type":43,"tag":476,"props":7434,"children":7435},{"class":478,"line":505},[7436,7440,7444,7448,7452,7457,7461,7465,7469,7473,7477,7481,7485,7489,7494,7499,7503,7507],{"type":43,"tag":476,"props":7437,"children":7438},{"style":499},[7439],{"type":53,"value":6058},{"type":43,"tag":476,"props":7441,"children":7442},{"style":1098},[7443],{"type":53,"value":1840},{"type":43,"tag":476,"props":7445,"children":7446},{"style":499},[7447],{"type":53,"value":1106},{"type":43,"tag":476,"props":7449,"children":7450},{"style":499},[7451],{"type":53,"value":587},{"type":43,"tag":476,"props":7453,"children":7454},{"style":590},[7455],{"type":53,"value":7456},"app.js",{"type":43,"tag":476,"props":7458,"children":7459},{"style":499},[7460],{"type":53,"value":597},{"type":43,"tag":476,"props":7462,"children":7463},{"style":499},[7464],{"type":53,"value":625},{"type":43,"tag":476,"props":7466,"children":7467},{"style":1098},[7468],{"type":53,"value":1866},{"type":43,"tag":476,"props":7470,"children":7471},{"style":499},[7472],{"type":53,"value":1106},{"type":43,"tag":476,"props":7474,"children":7475},{"style":509},[7476],{"type":53,"value":1875},{"type":43,"tag":476,"props":7478,"children":7479},{"style":499},[7480],{"type":53,"value":332},{"type":43,"tag":476,"props":7482,"children":7483},{"style":1079},[7484],{"type":53,"value":852},{"type":43,"tag":476,"props":7486,"children":7487},{"style":509},[7488],{"type":53,"value":1087},{"type":43,"tag":476,"props":7490,"children":7491},{"style":499},[7492],{"type":53,"value":7493},"'",{"type":43,"tag":476,"props":7495,"children":7496},{"style":590},[7497],{"type":53,"value":7498},"console.log(\"hi\")",{"type":43,"tag":476,"props":7500,"children":7501},{"style":499},[7502],{"type":53,"value":7493},{"type":43,"tag":476,"props":7504,"children":7505},{"style":509},[7506],{"type":53,"value":1905},{"type":43,"tag":476,"props":7508,"children":7509},{"style":499},[7510],{"type":53,"value":1910},{"type":43,"tag":476,"props":7512,"children":7513},{"class":478,"line":519},[7514,7518,7522,7526,7530,7535,7539,7543,7547,7551,7555,7559,7563,7567,7571,7576,7580,7584],{"type":43,"tag":476,"props":7515,"children":7516},{"style":499},[7517],{"type":53,"value":6058},{"type":43,"tag":476,"props":7519,"children":7520},{"style":1098},[7521],{"type":53,"value":1840},{"type":43,"tag":476,"props":7523,"children":7524},{"style":499},[7525],{"type":53,"value":1106},{"type":43,"tag":476,"props":7527,"children":7528},{"style":499},[7529],{"type":53,"value":587},{"type":43,"tag":476,"props":7531,"children":7532},{"style":590},[7533],{"type":53,"value":7534},"data\u002Fconfig.json",{"type":43,"tag":476,"props":7536,"children":7537},{"style":499},[7538],{"type":53,"value":597},{"type":43,"tag":476,"props":7540,"children":7541},{"style":499},[7542],{"type":53,"value":625},{"type":43,"tag":476,"props":7544,"children":7545},{"style":1098},[7546],{"type":53,"value":1866},{"type":43,"tag":476,"props":7548,"children":7549},{"style":499},[7550],{"type":53,"value":1106},{"type":43,"tag":476,"props":7552,"children":7553},{"style":509},[7554],{"type":53,"value":1875},{"type":43,"tag":476,"props":7556,"children":7557},{"style":499},[7558],{"type":53,"value":332},{"type":43,"tag":476,"props":7560,"children":7561},{"style":1079},[7562],{"type":53,"value":852},{"type":43,"tag":476,"props":7564,"children":7565},{"style":509},[7566],{"type":53,"value":1087},{"type":43,"tag":476,"props":7568,"children":7569},{"style":499},[7570],{"type":53,"value":597},{"type":43,"tag":476,"props":7572,"children":7573},{"style":590},[7574],{"type":53,"value":7575},"{}",{"type":43,"tag":476,"props":7577,"children":7578},{"style":499},[7579],{"type":53,"value":597},{"type":43,"tag":476,"props":7581,"children":7582},{"style":509},[7583],{"type":53,"value":1905},{"type":43,"tag":476,"props":7585,"children":7586},{"style":499},[7587],{"type":53,"value":1910},{"type":43,"tag":476,"props":7589,"children":7590},{"class":478,"line":532},[7591,7595],{"type":43,"tag":476,"props":7592,"children":7593},{"style":509},[7594],{"type":53,"value":1984},{"type":43,"tag":476,"props":7596,"children":7597},{"style":499},[7598],{"type":53,"value":602},{"type":43,"tag":476,"props":7600,"children":7601},{"class":478,"line":545},[7602],{"type":43,"tag":476,"props":7603,"children":7604},{"emptyLinePlaceholder":662},[7605],{"type":53,"value":665},{"type":43,"tag":476,"props":7607,"children":7608},{"class":478,"line":558},[7609,7613,7618,7622,7626,7630,7634,7638,7642,7646,7650,7654,7658,7662,7666,7670,7674],{"type":43,"tag":476,"props":7610,"children":7611},{"style":896},[7612],{"type":53,"value":1053},{"type":43,"tag":476,"props":7614,"children":7615},{"style":509},[7616],{"type":53,"value":7617}," buf ",{"type":43,"tag":476,"props":7619,"children":7620},{"style":499},[7621],{"type":53,"value":1063},{"type":43,"tag":476,"props":7623,"children":7624},{"style":493},[7625],{"type":53,"value":1068},{"type":43,"tag":476,"props":7627,"children":7628},{"style":509},[7629],{"type":53,"value":6727},{"type":43,"tag":476,"props":7631,"children":7632},{"style":499},[7633],{"type":53,"value":332},{"type":43,"tag":476,"props":7635,"children":7636},{"style":1079},[7637],{"type":53,"value":5848},{"type":43,"tag":476,"props":7639,"children":7640},{"style":509},[7641],{"type":53,"value":1087},{"type":43,"tag":476,"props":7643,"children":7644},{"style":499},[7645],{"type":53,"value":1601},{"type":43,"tag":476,"props":7647,"children":7648},{"style":1098},[7649],{"type":53,"value":1840},{"type":43,"tag":476,"props":7651,"children":7652},{"style":499},[7653],{"type":53,"value":1106},{"type":43,"tag":476,"props":7655,"children":7656},{"style":499},[7657],{"type":53,"value":587},{"type":43,"tag":476,"props":7659,"children":7660},{"style":590},[7661],{"type":53,"value":7456},{"type":43,"tag":476,"props":7663,"children":7664},{"style":499},[7665],{"type":53,"value":597},{"type":43,"tag":476,"props":7667,"children":7668},{"style":499},[7669],{"type":53,"value":635},{"type":43,"tag":476,"props":7671,"children":7672},{"style":509},[7673],{"type":53,"value":1272},{"type":43,"tag":476,"props":7675,"children":7676},{"style":499},[7677],{"type":53,"value":602},{"type":43,"tag":476,"props":7679,"children":7680},{"class":478,"line":571},[7681,7685,7689,7693,7697,7701,7705,7709,7713,7717,7721,7725,7729,7733,7737,7741,7745],{"type":43,"tag":476,"props":7682,"children":7683},{"style":896},[7684],{"type":53,"value":1053},{"type":43,"tag":476,"props":7686,"children":7687},{"style":509},[7688],{"type":53,"value":5927},{"type":43,"tag":476,"props":7690,"children":7691},{"style":499},[7692],{"type":53,"value":1063},{"type":43,"tag":476,"props":7694,"children":7695},{"style":493},[7696],{"type":53,"value":1068},{"type":43,"tag":476,"props":7698,"children":7699},{"style":509},[7700],{"type":53,"value":6727},{"type":43,"tag":476,"props":7702,"children":7703},{"style":499},[7704],{"type":53,"value":332},{"type":43,"tag":476,"props":7706,"children":7707},{"style":1079},[7708],{"type":53,"value":5948},{"type":43,"tag":476,"props":7710,"children":7711},{"style":509},[7712],{"type":53,"value":1087},{"type":43,"tag":476,"props":7714,"children":7715},{"style":499},[7716],{"type":53,"value":1601},{"type":43,"tag":476,"props":7718,"children":7719},{"style":1098},[7720],{"type":53,"value":1840},{"type":43,"tag":476,"props":7722,"children":7723},{"style":499},[7724],{"type":53,"value":1106},{"type":43,"tag":476,"props":7726,"children":7727},{"style":499},[7728],{"type":53,"value":587},{"type":43,"tag":476,"props":7730,"children":7731},{"style":590},[7732],{"type":53,"value":7456},{"type":43,"tag":476,"props":7734,"children":7735},{"style":499},[7736],{"type":53,"value":597},{"type":43,"tag":476,"props":7738,"children":7739},{"style":499},[7740],{"type":53,"value":635},{"type":43,"tag":476,"props":7742,"children":7743},{"style":509},[7744],{"type":53,"value":1272},{"type":43,"tag":476,"props":7746,"children":7747},{"style":499},[7748],{"type":53,"value":602},{"type":43,"tag":476,"props":7750,"children":7751},{"class":478,"line":605},[7752,7756,7760,7764,7768,7772,7776,7781,7785,7789],{"type":43,"tag":476,"props":7753,"children":7754},{"style":493},[7755],{"type":53,"value":3642},{"type":43,"tag":476,"props":7757,"children":7758},{"style":509},[7759],{"type":53,"value":6727},{"type":43,"tag":476,"props":7761,"children":7762},{"style":499},[7763],{"type":53,"value":332},{"type":43,"tag":476,"props":7765,"children":7766},{"style":1079},[7767],{"type":53,"value":6193},{"type":43,"tag":476,"props":7769,"children":7770},{"style":509},[7771],{"type":53,"value":1087},{"type":43,"tag":476,"props":7773,"children":7774},{"style":499},[7775],{"type":53,"value":597},{"type":43,"tag":476,"props":7777,"children":7778},{"style":590},[7779],{"type":53,"value":7780},"projects\u002Fmy-app",{"type":43,"tag":476,"props":7782,"children":7783},{"style":499},[7784],{"type":53,"value":597},{"type":43,"tag":476,"props":7786,"children":7787},{"style":509},[7788],{"type":53,"value":1272},{"type":43,"tag":476,"props":7790,"children":7791},{"style":499},[7792],{"type":53,"value":602},{"type":43,"tag":67,"props":7794,"children":7795},{},[7796],{"type":53,"value":7797},"Files are isolated between users — one user cannot read, list, or write another\nuser's home directory (commands return a non-zero exit code with \"Permission\ndenied\").",{"type":43,"tag":80,"props":7799,"children":7801},{"id":7800},"groups-and-shared-directories",[7802],{"type":53,"value":7803},"Groups and Shared Directories",{"type":43,"tag":67,"props":7805,"children":7806},{},[7807,7813,7815,7821,7823,7829],{"type":43,"tag":58,"props":7808,"children":7810},{"className":7809},[],[7811],{"type":53,"value":7812},"createGroup",{"type":53,"value":7814}," creates a Linux group with a shared directory at\n",{"type":43,"tag":58,"props":7816,"children":7818},{"className":7817},[],[7819],{"type":53,"value":7820},"\u002Fshared\u002F\u003Cgroupname>",{"type":53,"value":7822}," (setgid ",{"type":43,"tag":58,"props":7824,"children":7826},{"className":7825},[],[7827],{"type":53,"value":7828},"2770",{"type":53,"value":7830},"), so files created inside it automatically\ninherit group ownership. Group members can read and write there; non-members\nare blocked.",{"type":43,"tag":465,"props":7832,"children":7834},{"className":467,"code":7833,"language":469,"meta":470,"style":470},"const devs = await sandbox.createGroup(\"devs\");\ndevs.sharedDir; \u002F\u002F \"\u002Fshared\u002Fdevs\"\n\nawait sandbox.addUserToGroup(\"alice\", \"devs\");\nawait sandbox.addUserToGroup(\"bob\", \"devs\");\n\n\u002F\u002F Or via convenience methods on SandboxUser\nawait alice.addToGroup(\"devs\");\nawait alice.removeFromGroup(\"devs\");\n\nawait sandbox.removeUserFromGroup(\"alice\", \"devs\");\n",[7835],{"type":43,"tag":58,"props":7836,"children":7837},{"__ignoreMap":470},[7838,7895,7920,7927,7987,8046,8053,8061,8105,8149,8156],{"type":43,"tag":476,"props":7839,"children":7840},{"class":478,"line":479},[7841,7845,7850,7854,7858,7862,7866,7870,7874,7878,7883,7887,7891],{"type":43,"tag":476,"props":7842,"children":7843},{"style":896},[7844],{"type":53,"value":1053},{"type":43,"tag":476,"props":7846,"children":7847},{"style":509},[7848],{"type":53,"value":7849}," devs ",{"type":43,"tag":476,"props":7851,"children":7852},{"style":499},[7853],{"type":53,"value":1063},{"type":43,"tag":476,"props":7855,"children":7856},{"style":493},[7857],{"type":53,"value":1068},{"type":43,"tag":476,"props":7859,"children":7860},{"style":509},[7861],{"type":53,"value":4387},{"type":43,"tag":476,"props":7863,"children":7864},{"style":499},[7865],{"type":53,"value":332},{"type":43,"tag":476,"props":7867,"children":7868},{"style":1079},[7869],{"type":53,"value":7812},{"type":43,"tag":476,"props":7871,"children":7872},{"style":509},[7873],{"type":53,"value":1087},{"type":43,"tag":476,"props":7875,"children":7876},{"style":499},[7877],{"type":53,"value":597},{"type":43,"tag":476,"props":7879,"children":7880},{"style":590},[7881],{"type":53,"value":7882},"devs",{"type":43,"tag":476,"props":7884,"children":7885},{"style":499},[7886],{"type":53,"value":597},{"type":43,"tag":476,"props":7888,"children":7889},{"style":509},[7890],{"type":53,"value":1272},{"type":43,"tag":476,"props":7892,"children":7893},{"style":499},[7894],{"type":53,"value":602},{"type":43,"tag":476,"props":7896,"children":7897},{"class":478,"line":489},[7898,7902,7906,7911,7915],{"type":43,"tag":476,"props":7899,"children":7900},{"style":509},[7901],{"type":53,"value":7882},{"type":43,"tag":476,"props":7903,"children":7904},{"style":499},[7905],{"type":53,"value":332},{"type":43,"tag":476,"props":7907,"children":7908},{"style":509},[7909],{"type":53,"value":7910},"sharedDir",{"type":43,"tag":476,"props":7912,"children":7913},{"style":499},[7914],{"type":53,"value":870},{"type":43,"tag":476,"props":7916,"children":7917},{"style":483},[7918],{"type":53,"value":7919}," \u002F\u002F \"\u002Fshared\u002Fdevs\"\n",{"type":43,"tag":476,"props":7921,"children":7922},{"class":478,"line":505},[7923],{"type":43,"tag":476,"props":7924,"children":7925},{"emptyLinePlaceholder":662},[7926],{"type":53,"value":665},{"type":43,"tag":476,"props":7928,"children":7929},{"class":478,"line":519},[7930,7934,7938,7942,7947,7951,7955,7959,7963,7967,7971,7975,7979,7983],{"type":43,"tag":476,"props":7931,"children":7932},{"style":493},[7933],{"type":53,"value":3642},{"type":43,"tag":476,"props":7935,"children":7936},{"style":509},[7937],{"type":53,"value":4387},{"type":43,"tag":476,"props":7939,"children":7940},{"style":499},[7941],{"type":53,"value":332},{"type":43,"tag":476,"props":7943,"children":7944},{"style":1079},[7945],{"type":53,"value":7946},"addUserToGroup",{"type":43,"tag":476,"props":7948,"children":7949},{"style":509},[7950],{"type":53,"value":1087},{"type":43,"tag":476,"props":7952,"children":7953},{"style":499},[7954],{"type":53,"value":597},{"type":43,"tag":476,"props":7956,"children":7957},{"style":590},[7958],{"type":53,"value":6625},{"type":43,"tag":476,"props":7960,"children":7961},{"style":499},[7962],{"type":53,"value":597},{"type":43,"tag":476,"props":7964,"children":7965},{"style":499},[7966],{"type":53,"value":625},{"type":43,"tag":476,"props":7968,"children":7969},{"style":499},[7970],{"type":53,"value":587},{"type":43,"tag":476,"props":7972,"children":7973},{"style":590},[7974],{"type":53,"value":7882},{"type":43,"tag":476,"props":7976,"children":7977},{"style":499},[7978],{"type":53,"value":597},{"type":43,"tag":476,"props":7980,"children":7981},{"style":509},[7982],{"type":53,"value":1272},{"type":43,"tag":476,"props":7984,"children":7985},{"style":499},[7986],{"type":53,"value":602},{"type":43,"tag":476,"props":7988,"children":7989},{"class":478,"line":532},[7990,7994,7998,8002,8006,8010,8014,8018,8022,8026,8030,8034,8038,8042],{"type":43,"tag":476,"props":7991,"children":7992},{"style":493},[7993],{"type":53,"value":3642},{"type":43,"tag":476,"props":7995,"children":7996},{"style":509},[7997],{"type":53,"value":4387},{"type":43,"tag":476,"props":7999,"children":8000},{"style":499},[8001],{"type":53,"value":332},{"type":43,"tag":476,"props":8003,"children":8004},{"style":1079},[8005],{"type":53,"value":7946},{"type":43,"tag":476,"props":8007,"children":8008},{"style":509},[8009],{"type":53,"value":1087},{"type":43,"tag":476,"props":8011,"children":8012},{"style":499},[8013],{"type":53,"value":597},{"type":43,"tag":476,"props":8015,"children":8016},{"style":590},[8017],{"type":53,"value":7327},{"type":43,"tag":476,"props":8019,"children":8020},{"style":499},[8021],{"type":53,"value":597},{"type":43,"tag":476,"props":8023,"children":8024},{"style":499},[8025],{"type":53,"value":625},{"type":43,"tag":476,"props":8027,"children":8028},{"style":499},[8029],{"type":53,"value":587},{"type":43,"tag":476,"props":8031,"children":8032},{"style":590},[8033],{"type":53,"value":7882},{"type":43,"tag":476,"props":8035,"children":8036},{"style":499},[8037],{"type":53,"value":597},{"type":43,"tag":476,"props":8039,"children":8040},{"style":509},[8041],{"type":53,"value":1272},{"type":43,"tag":476,"props":8043,"children":8044},{"style":499},[8045],{"type":53,"value":602},{"type":43,"tag":476,"props":8047,"children":8048},{"class":478,"line":545},[8049],{"type":43,"tag":476,"props":8050,"children":8051},{"emptyLinePlaceholder":662},[8052],{"type":53,"value":665},{"type":43,"tag":476,"props":8054,"children":8055},{"class":478,"line":558},[8056],{"type":43,"tag":476,"props":8057,"children":8058},{"style":483},[8059],{"type":53,"value":8060},"\u002F\u002F Or via convenience methods on SandboxUser\n",{"type":43,"tag":476,"props":8062,"children":8063},{"class":478,"line":571},[8064,8068,8072,8076,8081,8085,8089,8093,8097,8101],{"type":43,"tag":476,"props":8065,"children":8066},{"style":493},[8067],{"type":53,"value":3642},{"type":43,"tag":476,"props":8069,"children":8070},{"style":509},[8071],{"type":53,"value":6727},{"type":43,"tag":476,"props":8073,"children":8074},{"style":499},[8075],{"type":53,"value":332},{"type":43,"tag":476,"props":8077,"children":8078},{"style":1079},[8079],{"type":53,"value":8080},"addToGroup",{"type":43,"tag":476,"props":8082,"children":8083},{"style":509},[8084],{"type":53,"value":1087},{"type":43,"tag":476,"props":8086,"children":8087},{"style":499},[8088],{"type":53,"value":597},{"type":43,"tag":476,"props":8090,"children":8091},{"style":590},[8092],{"type":53,"value":7882},{"type":43,"tag":476,"props":8094,"children":8095},{"style":499},[8096],{"type":53,"value":597},{"type":43,"tag":476,"props":8098,"children":8099},{"style":509},[8100],{"type":53,"value":1272},{"type":43,"tag":476,"props":8102,"children":8103},{"style":499},[8104],{"type":53,"value":602},{"type":43,"tag":476,"props":8106,"children":8107},{"class":478,"line":605},[8108,8112,8116,8120,8125,8129,8133,8137,8141,8145],{"type":43,"tag":476,"props":8109,"children":8110},{"style":493},[8111],{"type":53,"value":3642},{"type":43,"tag":476,"props":8113,"children":8114},{"style":509},[8115],{"type":53,"value":6727},{"type":43,"tag":476,"props":8117,"children":8118},{"style":499},[8119],{"type":53,"value":332},{"type":43,"tag":476,"props":8121,"children":8122},{"style":1079},[8123],{"type":53,"value":8124},"removeFromGroup",{"type":43,"tag":476,"props":8126,"children":8127},{"style":509},[8128],{"type":53,"value":1087},{"type":43,"tag":476,"props":8130,"children":8131},{"style":499},[8132],{"type":53,"value":597},{"type":43,"tag":476,"props":8134,"children":8135},{"style":590},[8136],{"type":53,"value":7882},{"type":43,"tag":476,"props":8138,"children":8139},{"style":499},[8140],{"type":53,"value":597},{"type":43,"tag":476,"props":8142,"children":8143},{"style":509},[8144],{"type":53,"value":1272},{"type":43,"tag":476,"props":8146,"children":8147},{"style":499},[8148],{"type":53,"value":602},{"type":43,"tag":476,"props":8150,"children":8151},{"class":478,"line":658},[8152],{"type":43,"tag":476,"props":8153,"children":8154},{"emptyLinePlaceholder":662},[8155],{"type":53,"value":665},{"type":43,"tag":476,"props":8157,"children":8158},{"class":478,"line":668},[8159,8163,8167,8171,8176,8180,8184,8188,8192,8196,8200,8204,8208,8212],{"type":43,"tag":476,"props":8160,"children":8161},{"style":493},[8162],{"type":53,"value":3642},{"type":43,"tag":476,"props":8164,"children":8165},{"style":509},[8166],{"type":53,"value":4387},{"type":43,"tag":476,"props":8168,"children":8169},{"style":499},[8170],{"type":53,"value":332},{"type":43,"tag":476,"props":8172,"children":8173},{"style":1079},[8174],{"type":53,"value":8175},"removeUserFromGroup",{"type":43,"tag":476,"props":8177,"children":8178},{"style":509},[8179],{"type":53,"value":1087},{"type":43,"tag":476,"props":8181,"children":8182},{"style":499},[8183],{"type":53,"value":597},{"type":43,"tag":476,"props":8185,"children":8186},{"style":590},[8187],{"type":53,"value":6625},{"type":43,"tag":476,"props":8189,"children":8190},{"style":499},[8191],{"type":53,"value":597},{"type":43,"tag":476,"props":8193,"children":8194},{"style":499},[8195],{"type":53,"value":625},{"type":43,"tag":476,"props":8197,"children":8198},{"style":499},[8199],{"type":53,"value":587},{"type":43,"tag":476,"props":8201,"children":8202},{"style":590},[8203],{"type":53,"value":7882},{"type":43,"tag":476,"props":8205,"children":8206},{"style":499},[8207],{"type":53,"value":597},{"type":43,"tag":476,"props":8209,"children":8210},{"style":509},[8211],{"type":53,"value":1272},{"type":43,"tag":476,"props":8213,"children":8214},{"style":499},[8215],{"type":53,"value":602},{"type":43,"tag":44,"props":8217,"children":8219},{"id":8218},"network-policy",[8220],{"type":53,"value":8221},"Network Policy",{"type":43,"tag":80,"props":8223,"children":8225},{"id":8224},"full-internet-access-default",[8226],{"type":53,"value":8227},"Full Internet Access (Default)",{"type":43,"tag":465,"props":8229,"children":8231},{"className":467,"code":8230,"language":469,"meta":470,"style":470},"const sandbox = await Sandbox.create({\n  networkPolicy: \"allow-all\",\n});\n",[8232],{"type":43,"tag":58,"props":8233,"children":8234},{"__ignoreMap":470},[8235,8274,8303],{"type":43,"tag":476,"props":8236,"children":8237},{"class":478,"line":479},[8238,8242,8246,8250,8254,8258,8262,8266,8270],{"type":43,"tag":476,"props":8239,"children":8240},{"style":896},[8241],{"type":53,"value":1053},{"type":43,"tag":476,"props":8243,"children":8244},{"style":509},[8245],{"type":53,"value":1058},{"type":43,"tag":476,"props":8247,"children":8248},{"style":499},[8249],{"type":53,"value":1063},{"type":43,"tag":476,"props":8251,"children":8252},{"style":493},[8253],{"type":53,"value":1068},{"type":43,"tag":476,"props":8255,"children":8256},{"style":509},[8257],{"type":53,"value":1014},{"type":43,"tag":476,"props":8259,"children":8260},{"style":499},[8261],{"type":53,"value":332},{"type":43,"tag":476,"props":8263,"children":8264},{"style":1079},[8265],{"type":53,"value":1082},{"type":43,"tag":476,"props":8267,"children":8268},{"style":509},[8269],{"type":53,"value":1087},{"type":43,"tag":476,"props":8271,"children":8272},{"style":499},[8273],{"type":53,"value":1092},{"type":43,"tag":476,"props":8275,"children":8276},{"class":478,"line":489},[8277,8282,8286,8290,8295,8299],{"type":43,"tag":476,"props":8278,"children":8279},{"style":1098},[8280],{"type":53,"value":8281},"  networkPolicy",{"type":43,"tag":476,"props":8283,"children":8284},{"style":499},[8285],{"type":53,"value":1106},{"type":43,"tag":476,"props":8287,"children":8288},{"style":499},[8289],{"type":53,"value":587},{"type":43,"tag":476,"props":8291,"children":8292},{"style":590},[8293],{"type":53,"value":8294},"allow-all",{"type":43,"tag":476,"props":8296,"children":8297},{"style":499},[8298],{"type":53,"value":597},{"type":43,"tag":476,"props":8300,"children":8301},{"style":499},[8302],{"type":53,"value":296},{"type":43,"tag":476,"props":8304,"children":8305},{"class":478,"line":505},[8306,8310,8314],{"type":43,"tag":476,"props":8307,"children":8308},{"style":499},[8309],{"type":53,"value":577},{"type":43,"tag":476,"props":8311,"children":8312},{"style":509},[8313],{"type":53,"value":1272},{"type":43,"tag":476,"props":8315,"children":8316},{"style":499},[8317],{"type":53,"value":602},{"type":43,"tag":80,"props":8319,"children":8321},{"id":8320},"no-network-access",[8322],{"type":53,"value":8323},"No Network Access",{"type":43,"tag":465,"props":8325,"children":8327},{"className":467,"code":8326,"language":469,"meta":470,"style":470},"const sandbox = await Sandbox.create({\n  networkPolicy: \"deny-all\",\n});\n",[8328],{"type":43,"tag":58,"props":8329,"children":8330},{"__ignoreMap":470},[8331,8370,8398],{"type":43,"tag":476,"props":8332,"children":8333},{"class":478,"line":479},[8334,8338,8342,8346,8350,8354,8358,8362,8366],{"type":43,"tag":476,"props":8335,"children":8336},{"style":896},[8337],{"type":53,"value":1053},{"type":43,"tag":476,"props":8339,"children":8340},{"style":509},[8341],{"type":53,"value":1058},{"type":43,"tag":476,"props":8343,"children":8344},{"style":499},[8345],{"type":53,"value":1063},{"type":43,"tag":476,"props":8347,"children":8348},{"style":493},[8349],{"type":53,"value":1068},{"type":43,"tag":476,"props":8351,"children":8352},{"style":509},[8353],{"type":53,"value":1014},{"type":43,"tag":476,"props":8355,"children":8356},{"style":499},[8357],{"type":53,"value":332},{"type":43,"tag":476,"props":8359,"children":8360},{"style":1079},[8361],{"type":53,"value":1082},{"type":43,"tag":476,"props":8363,"children":8364},{"style":509},[8365],{"type":53,"value":1087},{"type":43,"tag":476,"props":8367,"children":8368},{"style":499},[8369],{"type":53,"value":1092},{"type":43,"tag":476,"props":8371,"children":8372},{"class":478,"line":489},[8373,8377,8381,8385,8390,8394],{"type":43,"tag":476,"props":8374,"children":8375},{"style":1098},[8376],{"type":53,"value":8281},{"type":43,"tag":476,"props":8378,"children":8379},{"style":499},[8380],{"type":53,"value":1106},{"type":43,"tag":476,"props":8382,"children":8383},{"style":499},[8384],{"type":53,"value":587},{"type":43,"tag":476,"props":8386,"children":8387},{"style":590},[8388],{"type":53,"value":8389},"deny-all",{"type":43,"tag":476,"props":8391,"children":8392},{"style":499},[8393],{"type":53,"value":597},{"type":43,"tag":476,"props":8395,"children":8396},{"style":499},[8397],{"type":53,"value":296},{"type":43,"tag":476,"props":8399,"children":8400},{"class":478,"line":505},[8401,8405,8409],{"type":43,"tag":476,"props":8402,"children":8403},{"style":499},[8404],{"type":53,"value":577},{"type":43,"tag":476,"props":8406,"children":8407},{"style":509},[8408],{"type":53,"value":1272},{"type":43,"tag":476,"props":8410,"children":8411},{"style":499},[8412],{"type":53,"value":602},{"type":43,"tag":80,"props":8414,"children":8416},{"id":8415},"restricted-access-simple-domain-list",[8417],{"type":53,"value":8418},"Restricted Access (Simple Domain List)",{"type":43,"tag":465,"props":8420,"children":8422},{"className":467,"code":8421,"language":469,"meta":470,"style":470},"const sandbox = await Sandbox.create({\n  networkPolicy: {\n    allow: [\"*.npmjs.org\", \"github.com\", \"registry.yarnpkg.com\"],\n    subnets: {\n      allow: [\"10.0.0.0\u002F8\"],\n      deny: [\"10.1.0.0\u002F16\"], \u002F\u002F Takes precedence over allowed\n    },\n  },\n});\n",[8423],{"type":43,"tag":58,"props":8424,"children":8425},{"__ignoreMap":470},[8426,8465,8480,8551,8567,8604,8646,8654,8661],{"type":43,"tag":476,"props":8427,"children":8428},{"class":478,"line":479},[8429,8433,8437,8441,8445,8449,8453,8457,8461],{"type":43,"tag":476,"props":8430,"children":8431},{"style":896},[8432],{"type":53,"value":1053},{"type":43,"tag":476,"props":8434,"children":8435},{"style":509},[8436],{"type":53,"value":1058},{"type":43,"tag":476,"props":8438,"children":8439},{"style":499},[8440],{"type":53,"value":1063},{"type":43,"tag":476,"props":8442,"children":8443},{"style":493},[8444],{"type":53,"value":1068},{"type":43,"tag":476,"props":8446,"children":8447},{"style":509},[8448],{"type":53,"value":1014},{"type":43,"tag":476,"props":8450,"children":8451},{"style":499},[8452],{"type":53,"value":332},{"type":43,"tag":476,"props":8454,"children":8455},{"style":1079},[8456],{"type":53,"value":1082},{"type":43,"tag":476,"props":8458,"children":8459},{"style":509},[8460],{"type":53,"value":1087},{"type":43,"tag":476,"props":8462,"children":8463},{"style":499},[8464],{"type":53,"value":1092},{"type":43,"tag":476,"props":8466,"children":8467},{"class":478,"line":489},[8468,8472,8476],{"type":43,"tag":476,"props":8469,"children":8470},{"style":1098},[8471],{"type":53,"value":8281},{"type":43,"tag":476,"props":8473,"children":8474},{"style":499},[8475],{"type":53,"value":1106},{"type":43,"tag":476,"props":8477,"children":8478},{"style":499},[8479],{"type":53,"value":502},{"type":43,"tag":476,"props":8481,"children":8482},{"class":478,"line":505},[8483,8488,8492,8496,8500,8505,8509,8513,8517,8522,8526,8530,8534,8539,8543,8547],{"type":43,"tag":476,"props":8484,"children":8485},{"style":1098},[8486],{"type":53,"value":8487},"    allow",{"type":43,"tag":476,"props":8489,"children":8490},{"style":499},[8491],{"type":53,"value":1106},{"type":43,"tag":476,"props":8493,"children":8494},{"style":509},[8495],{"type":53,"value":1214},{"type":43,"tag":476,"props":8497,"children":8498},{"style":499},[8499],{"type":53,"value":597},{"type":43,"tag":476,"props":8501,"children":8502},{"style":590},[8503],{"type":53,"value":8504},"*.npmjs.org",{"type":43,"tag":476,"props":8506,"children":8507},{"style":499},[8508],{"type":53,"value":597},{"type":43,"tag":476,"props":8510,"children":8511},{"style":499},[8512],{"type":53,"value":625},{"type":43,"tag":476,"props":8514,"children":8515},{"style":499},[8516],{"type":53,"value":587},{"type":43,"tag":476,"props":8518,"children":8519},{"style":590},[8520],{"type":53,"value":8521},"github.com",{"type":43,"tag":476,"props":8523,"children":8524},{"style":499},[8525],{"type":53,"value":597},{"type":43,"tag":476,"props":8527,"children":8528},{"style":499},[8529],{"type":53,"value":625},{"type":43,"tag":476,"props":8531,"children":8532},{"style":499},[8533],{"type":53,"value":587},{"type":43,"tag":476,"props":8535,"children":8536},{"style":590},[8537],{"type":53,"value":8538},"registry.yarnpkg.com",{"type":43,"tag":476,"props":8540,"children":8541},{"style":499},[8542],{"type":53,"value":597},{"type":43,"tag":476,"props":8544,"children":8545},{"style":509},[8546],{"type":53,"value":1224},{"type":43,"tag":476,"props":8548,"children":8549},{"style":499},[8550],{"type":53,"value":296},{"type":43,"tag":476,"props":8552,"children":8553},{"class":478,"line":519},[8554,8559,8563],{"type":43,"tag":476,"props":8555,"children":8556},{"style":1098},[8557],{"type":53,"value":8558},"    subnets",{"type":43,"tag":476,"props":8560,"children":8561},{"style":499},[8562],{"type":53,"value":1106},{"type":43,"tag":476,"props":8564,"children":8565},{"style":499},[8566],{"type":53,"value":502},{"type":43,"tag":476,"props":8568,"children":8569},{"class":478,"line":532},[8570,8575,8579,8583,8587,8592,8596,8600],{"type":43,"tag":476,"props":8571,"children":8572},{"style":1098},[8573],{"type":53,"value":8574},"      allow",{"type":43,"tag":476,"props":8576,"children":8577},{"style":499},[8578],{"type":53,"value":1106},{"type":43,"tag":476,"props":8580,"children":8581},{"style":509},[8582],{"type":53,"value":1214},{"type":43,"tag":476,"props":8584,"children":8585},{"style":499},[8586],{"type":53,"value":597},{"type":43,"tag":476,"props":8588,"children":8589},{"style":590},[8590],{"type":53,"value":8591},"10.0.0.0\u002F8",{"type":43,"tag":476,"props":8593,"children":8594},{"style":499},[8595],{"type":53,"value":597},{"type":43,"tag":476,"props":8597,"children":8598},{"style":509},[8599],{"type":53,"value":1224},{"type":43,"tag":476,"props":8601,"children":8602},{"style":499},[8603],{"type":53,"value":296},{"type":43,"tag":476,"props":8605,"children":8606},{"class":478,"line":545},[8607,8612,8616,8620,8624,8629,8633,8637,8641],{"type":43,"tag":476,"props":8608,"children":8609},{"style":1098},[8610],{"type":53,"value":8611},"      deny",{"type":43,"tag":476,"props":8613,"children":8614},{"style":499},[8615],{"type":53,"value":1106},{"type":43,"tag":476,"props":8617,"children":8618},{"style":509},[8619],{"type":53,"value":1214},{"type":43,"tag":476,"props":8621,"children":8622},{"style":499},[8623],{"type":53,"value":597},{"type":43,"tag":476,"props":8625,"children":8626},{"style":590},[8627],{"type":53,"value":8628},"10.1.0.0\u002F16",{"type":43,"tag":476,"props":8630,"children":8631},{"style":499},[8632],{"type":53,"value":597},{"type":43,"tag":476,"props":8634,"children":8635},{"style":509},[8636],{"type":53,"value":1224},{"type":43,"tag":476,"props":8638,"children":8639},{"style":499},[8640],{"type":53,"value":625},{"type":43,"tag":476,"props":8642,"children":8643},{"style":483},[8644],{"type":53,"value":8645}," \u002F\u002F Takes precedence over allowed\n",{"type":43,"tag":476,"props":8647,"children":8648},{"class":478,"line":558},[8649],{"type":43,"tag":476,"props":8650,"children":8651},{"style":499},[8652],{"type":53,"value":8653},"    },\n",{"type":43,"tag":476,"props":8655,"children":8656},{"class":478,"line":571},[8657],{"type":43,"tag":476,"props":8658,"children":8659},{"style":499},[8660],{"type":53,"value":1996},{"type":43,"tag":476,"props":8662,"children":8663},{"class":478,"line":605},[8664,8668,8672],{"type":43,"tag":476,"props":8665,"children":8666},{"style":499},[8667],{"type":53,"value":577},{"type":43,"tag":476,"props":8669,"children":8670},{"style":509},[8671],{"type":53,"value":1272},{"type":43,"tag":476,"props":8673,"children":8674},{"style":499},[8675],{"type":53,"value":602},{"type":43,"tag":80,"props":8677,"children":8679},{"id":8678},"restricted-access-with-credential-brokering",[8680],{"type":53,"value":8681},"Restricted Access with Credential Brokering",{"type":43,"tag":465,"props":8683,"children":8685},{"className":467,"code":8684,"language":469,"meta":470,"style":470},"const sandbox = await Sandbox.create({\n  networkPolicy: {\n    allow: {\n      \"ai-gateway.vercel.sh\": [\n        {\n          transform: [\n            {\n              headers: { authorization: \"Bearer ...\" },\n            },\n          ],\n        },\n      ],\n      \"*\": [], \u002F\u002F Allow all other domains without transforms\n    },\n  },\n});\n",[8686],{"type":43,"tag":58,"props":8687,"children":8688},{"__ignoreMap":470},[8689,8728,8743,8758,8784,8792,8808,8816,8858,8866,8878,8886,8898,8932,8939,8946],{"type":43,"tag":476,"props":8690,"children":8691},{"class":478,"line":479},[8692,8696,8700,8704,8708,8712,8716,8720,8724],{"type":43,"tag":476,"props":8693,"children":8694},{"style":896},[8695],{"type":53,"value":1053},{"type":43,"tag":476,"props":8697,"children":8698},{"style":509},[8699],{"type":53,"value":1058},{"type":43,"tag":476,"props":8701,"children":8702},{"style":499},[8703],{"type":53,"value":1063},{"type":43,"tag":476,"props":8705,"children":8706},{"style":493},[8707],{"type":53,"value":1068},{"type":43,"tag":476,"props":8709,"children":8710},{"style":509},[8711],{"type":53,"value":1014},{"type":43,"tag":476,"props":8713,"children":8714},{"style":499},[8715],{"type":53,"value":332},{"type":43,"tag":476,"props":8717,"children":8718},{"style":1079},[8719],{"type":53,"value":1082},{"type":43,"tag":476,"props":8721,"children":8722},{"style":509},[8723],{"type":53,"value":1087},{"type":43,"tag":476,"props":8725,"children":8726},{"style":499},[8727],{"type":53,"value":1092},{"type":43,"tag":476,"props":8729,"children":8730},{"class":478,"line":489},[8731,8735,8739],{"type":43,"tag":476,"props":8732,"children":8733},{"style":1098},[8734],{"type":53,"value":8281},{"type":43,"tag":476,"props":8736,"children":8737},{"style":499},[8738],{"type":53,"value":1106},{"type":43,"tag":476,"props":8740,"children":8741},{"style":499},[8742],{"type":53,"value":502},{"type":43,"tag":476,"props":8744,"children":8745},{"class":478,"line":505},[8746,8750,8754],{"type":43,"tag":476,"props":8747,"children":8748},{"style":1098},[8749],{"type":53,"value":8487},{"type":43,"tag":476,"props":8751,"children":8752},{"style":499},[8753],{"type":53,"value":1106},{"type":43,"tag":476,"props":8755,"children":8756},{"style":499},[8757],{"type":53,"value":502},{"type":43,"tag":476,"props":8759,"children":8760},{"class":478,"line":519},[8761,8766,8771,8775,8779],{"type":43,"tag":476,"props":8762,"children":8763},{"style":499},[8764],{"type":53,"value":8765},"      \"",{"type":43,"tag":476,"props":8767,"children":8768},{"style":1098},[8769],{"type":53,"value":8770},"ai-gateway.vercel.sh",{"type":43,"tag":476,"props":8772,"children":8773},{"style":499},[8774],{"type":53,"value":597},{"type":43,"tag":476,"props":8776,"children":8777},{"style":499},[8778],{"type":53,"value":1106},{"type":43,"tag":476,"props":8780,"children":8781},{"style":509},[8782],{"type":53,"value":8783}," [\n",{"type":43,"tag":476,"props":8785,"children":8786},{"class":478,"line":532},[8787],{"type":43,"tag":476,"props":8788,"children":8789},{"style":499},[8790],{"type":53,"value":8791},"        {\n",{"type":43,"tag":476,"props":8793,"children":8794},{"class":478,"line":545},[8795,8800,8804],{"type":43,"tag":476,"props":8796,"children":8797},{"style":1098},[8798],{"type":53,"value":8799},"          transform",{"type":43,"tag":476,"props":8801,"children":8802},{"style":499},[8803],{"type":53,"value":1106},{"type":43,"tag":476,"props":8805,"children":8806},{"style":509},[8807],{"type":53,"value":8783},{"type":43,"tag":476,"props":8809,"children":8810},{"class":478,"line":558},[8811],{"type":43,"tag":476,"props":8812,"children":8813},{"style":499},[8814],{"type":53,"value":8815},"            {\n",{"type":43,"tag":476,"props":8817,"children":8818},{"class":478,"line":571},[8819,8824,8828,8832,8837,8841,8845,8850,8854],{"type":43,"tag":476,"props":8820,"children":8821},{"style":1098},[8822],{"type":53,"value":8823},"              headers",{"type":43,"tag":476,"props":8825,"children":8826},{"style":499},[8827],{"type":53,"value":1106},{"type":43,"tag":476,"props":8829,"children":8830},{"style":499},[8831],{"type":53,"value":615},{"type":43,"tag":476,"props":8833,"children":8834},{"style":1098},[8835],{"type":53,"value":8836}," authorization",{"type":43,"tag":476,"props":8838,"children":8839},{"style":499},[8840],{"type":53,"value":1106},{"type":43,"tag":476,"props":8842,"children":8843},{"style":499},[8844],{"type":53,"value":587},{"type":43,"tag":476,"props":8846,"children":8847},{"style":590},[8848],{"type":53,"value":8849},"Bearer ...",{"type":43,"tag":476,"props":8851,"children":8852},{"style":499},[8853],{"type":53,"value":597},{"type":43,"tag":476,"props":8855,"children":8856},{"style":499},[8857],{"type":53,"value":4253},{"type":43,"tag":476,"props":8859,"children":8860},{"class":478,"line":605},[8861],{"type":43,"tag":476,"props":8862,"children":8863},{"style":499},[8864],{"type":53,"value":8865},"            },\n",{"type":43,"tag":476,"props":8867,"children":8868},{"class":478,"line":658},[8869,8874],{"type":43,"tag":476,"props":8870,"children":8871},{"style":509},[8872],{"type":53,"value":8873},"          ]",{"type":43,"tag":476,"props":8875,"children":8876},{"style":499},[8877],{"type":53,"value":296},{"type":43,"tag":476,"props":8879,"children":8880},{"class":478,"line":668},[8881],{"type":43,"tag":476,"props":8882,"children":8883},{"style":499},[8884],{"type":53,"value":8885},"        },\n",{"type":43,"tag":476,"props":8887,"children":8888},{"class":478,"line":677},[8889,8894],{"type":43,"tag":476,"props":8890,"children":8891},{"style":509},[8892],{"type":53,"value":8893},"      ]",{"type":43,"tag":476,"props":8895,"children":8896},{"style":499},[8897],{"type":53,"value":296},{"type":43,"tag":476,"props":8899,"children":8900},{"class":478,"line":694},[8901,8905,8910,8914,8918,8923,8927],{"type":43,"tag":476,"props":8902,"children":8903},{"style":499},[8904],{"type":53,"value":8765},{"type":43,"tag":476,"props":8906,"children":8907},{"style":1098},[8908],{"type":53,"value":8909},"*",{"type":43,"tag":476,"props":8911,"children":8912},{"style":499},[8913],{"type":53,"value":597},{"type":43,"tag":476,"props":8915,"children":8916},{"style":499},[8917],{"type":53,"value":1106},{"type":43,"tag":476,"props":8919,"children":8920},{"style":509},[8921],{"type":53,"value":8922}," []",{"type":43,"tag":476,"props":8924,"children":8925},{"style":499},[8926],{"type":53,"value":625},{"type":43,"tag":476,"props":8928,"children":8929},{"style":483},[8930],{"type":53,"value":8931}," \u002F\u002F Allow all other domains without transforms\n",{"type":43,"tag":476,"props":8933,"children":8934},{"class":478,"line":707},[8935],{"type":43,"tag":476,"props":8936,"children":8937},{"style":499},[8938],{"type":53,"value":8653},{"type":43,"tag":476,"props":8940,"children":8941},{"class":478,"line":720},[8942],{"type":43,"tag":476,"props":8943,"children":8944},{"style":499},[8945],{"type":53,"value":1996},{"type":43,"tag":476,"props":8947,"children":8948},{"class":478,"line":733},[8949,8953,8957],{"type":43,"tag":476,"props":8950,"children":8951},{"style":499},[8952],{"type":53,"value":577},{"type":43,"tag":476,"props":8954,"children":8955},{"style":509},[8956],{"type":53,"value":1272},{"type":43,"tag":476,"props":8958,"children":8959},{"style":499},[8960],{"type":53,"value":602},{"type":43,"tag":80,"props":8962,"children":8964},{"id":8963},"l7-request-matchers",[8965],{"type":53,"value":8966},"L7 Request Matchers",{"type":43,"tag":67,"props":8968,"children":8969},{},[8970],{"type":53,"value":8971},"Rules can match on method, path, query string, and headers. All specified\ndimensions must match; multiple methods are ORed; multiple header and\nquery-string matchers are ANDed.",{"type":43,"tag":465,"props":8973,"children":8975},{"className":467,"code":8974,"language":469,"meta":470,"style":470},"const sandbox = await Sandbox.create({\n  networkPolicy: {\n    allow: {\n      \"ai-gateway.vercel.sh\": [\n        {\n          match: {\n            method: [\"POST\"],\n            path: { startsWith: \"\u002Fv1\u002F\" },\n            headers: [\n              { key: { exact: \"x-api-key\" }, value: { exact: \"placeholder\" } },\n            ],\n          },\n          transform: [{ headers: { authorization: \"Bearer ...\" } }],\n        },\n      ],\n    },\n  },\n});\n",[8976],{"type":43,"tag":58,"props":8977,"children":8978},{"__ignoreMap":470},[8979,9018,9033,9048,9071,9078,9094,9131,9173,9189,9277,9289,9297,9365,9372,9383,9390,9397],{"type":43,"tag":476,"props":8980,"children":8981},{"class":478,"line":479},[8982,8986,8990,8994,8998,9002,9006,9010,9014],{"type":43,"tag":476,"props":8983,"children":8984},{"style":896},[8985],{"type":53,"value":1053},{"type":43,"tag":476,"props":8987,"children":8988},{"style":509},[8989],{"type":53,"value":1058},{"type":43,"tag":476,"props":8991,"children":8992},{"style":499},[8993],{"type":53,"value":1063},{"type":43,"tag":476,"props":8995,"children":8996},{"style":493},[8997],{"type":53,"value":1068},{"type":43,"tag":476,"props":8999,"children":9000},{"style":509},[9001],{"type":53,"value":1014},{"type":43,"tag":476,"props":9003,"children":9004},{"style":499},[9005],{"type":53,"value":332},{"type":43,"tag":476,"props":9007,"children":9008},{"style":1079},[9009],{"type":53,"value":1082},{"type":43,"tag":476,"props":9011,"children":9012},{"style":509},[9013],{"type":53,"value":1087},{"type":43,"tag":476,"props":9015,"children":9016},{"style":499},[9017],{"type":53,"value":1092},{"type":43,"tag":476,"props":9019,"children":9020},{"class":478,"line":489},[9021,9025,9029],{"type":43,"tag":476,"props":9022,"children":9023},{"style":1098},[9024],{"type":53,"value":8281},{"type":43,"tag":476,"props":9026,"children":9027},{"style":499},[9028],{"type":53,"value":1106},{"type":43,"tag":476,"props":9030,"children":9031},{"style":499},[9032],{"type":53,"value":502},{"type":43,"tag":476,"props":9034,"children":9035},{"class":478,"line":505},[9036,9040,9044],{"type":43,"tag":476,"props":9037,"children":9038},{"style":1098},[9039],{"type":53,"value":8487},{"type":43,"tag":476,"props":9041,"children":9042},{"style":499},[9043],{"type":53,"value":1106},{"type":43,"tag":476,"props":9045,"children":9046},{"style":499},[9047],{"type":53,"value":502},{"type":43,"tag":476,"props":9049,"children":9050},{"class":478,"line":519},[9051,9055,9059,9063,9067],{"type":43,"tag":476,"props":9052,"children":9053},{"style":499},[9054],{"type":53,"value":8765},{"type":43,"tag":476,"props":9056,"children":9057},{"style":1098},[9058],{"type":53,"value":8770},{"type":43,"tag":476,"props":9060,"children":9061},{"style":499},[9062],{"type":53,"value":597},{"type":43,"tag":476,"props":9064,"children":9065},{"style":499},[9066],{"type":53,"value":1106},{"type":43,"tag":476,"props":9068,"children":9069},{"style":509},[9070],{"type":53,"value":8783},{"type":43,"tag":476,"props":9072,"children":9073},{"class":478,"line":532},[9074],{"type":43,"tag":476,"props":9075,"children":9076},{"style":499},[9077],{"type":53,"value":8791},{"type":43,"tag":476,"props":9079,"children":9080},{"class":478,"line":545},[9081,9086,9090],{"type":43,"tag":476,"props":9082,"children":9083},{"style":1098},[9084],{"type":53,"value":9085},"          match",{"type":43,"tag":476,"props":9087,"children":9088},{"style":499},[9089],{"type":53,"value":1106},{"type":43,"tag":476,"props":9091,"children":9092},{"style":499},[9093],{"type":53,"value":502},{"type":43,"tag":476,"props":9095,"children":9096},{"class":478,"line":558},[9097,9102,9106,9110,9114,9119,9123,9127],{"type":43,"tag":476,"props":9098,"children":9099},{"style":1098},[9100],{"type":53,"value":9101},"            method",{"type":43,"tag":476,"props":9103,"children":9104},{"style":499},[9105],{"type":53,"value":1106},{"type":43,"tag":476,"props":9107,"children":9108},{"style":509},[9109],{"type":53,"value":1214},{"type":43,"tag":476,"props":9111,"children":9112},{"style":499},[9113],{"type":53,"value":597},{"type":43,"tag":476,"props":9115,"children":9116},{"style":590},[9117],{"type":53,"value":9118},"POST",{"type":43,"tag":476,"props":9120,"children":9121},{"style":499},[9122],{"type":53,"value":597},{"type":43,"tag":476,"props":9124,"children":9125},{"style":509},[9126],{"type":53,"value":1224},{"type":43,"tag":476,"props":9128,"children":9129},{"style":499},[9130],{"type":53,"value":296},{"type":43,"tag":476,"props":9132,"children":9133},{"class":478,"line":571},[9134,9139,9143,9147,9152,9156,9160,9165,9169],{"type":43,"tag":476,"props":9135,"children":9136},{"style":1098},[9137],{"type":53,"value":9138},"            path",{"type":43,"tag":476,"props":9140,"children":9141},{"style":499},[9142],{"type":53,"value":1106},{"type":43,"tag":476,"props":9144,"children":9145},{"style":499},[9146],{"type":53,"value":615},{"type":43,"tag":476,"props":9148,"children":9149},{"style":1098},[9150],{"type":53,"value":9151}," startsWith",{"type":43,"tag":476,"props":9153,"children":9154},{"style":499},[9155],{"type":53,"value":1106},{"type":43,"tag":476,"props":9157,"children":9158},{"style":499},[9159],{"type":53,"value":587},{"type":43,"tag":476,"props":9161,"children":9162},{"style":590},[9163],{"type":53,"value":9164},"\u002Fv1\u002F",{"type":43,"tag":476,"props":9166,"children":9167},{"style":499},[9168],{"type":53,"value":597},{"type":43,"tag":476,"props":9170,"children":9171},{"style":499},[9172],{"type":53,"value":4253},{"type":43,"tag":476,"props":9174,"children":9175},{"class":478,"line":605},[9176,9181,9185],{"type":43,"tag":476,"props":9177,"children":9178},{"style":1098},[9179],{"type":53,"value":9180},"            headers",{"type":43,"tag":476,"props":9182,"children":9183},{"style":499},[9184],{"type":53,"value":1106},{"type":43,"tag":476,"props":9186,"children":9187},{"style":509},[9188],{"type":53,"value":8783},{"type":43,"tag":476,"props":9190,"children":9191},{"class":478,"line":658},[9192,9197,9201,9205,9209,9214,9218,9222,9227,9231,9235,9240,9244,9248,9252,9256,9260,9265,9269,9273],{"type":43,"tag":476,"props":9193,"children":9194},{"style":499},[9195],{"type":53,"value":9196},"              {",{"type":43,"tag":476,"props":9198,"children":9199},{"style":1098},[9200],{"type":53,"value":5625},{"type":43,"tag":476,"props":9202,"children":9203},{"style":499},[9204],{"type":53,"value":1106},{"type":43,"tag":476,"props":9206,"children":9207},{"style":499},[9208],{"type":53,"value":615},{"type":43,"tag":476,"props":9210,"children":9211},{"style":1098},[9212],{"type":53,"value":9213}," exact",{"type":43,"tag":476,"props":9215,"children":9216},{"style":499},[9217],{"type":53,"value":1106},{"type":43,"tag":476,"props":9219,"children":9220},{"style":499},[9221],{"type":53,"value":587},{"type":43,"tag":476,"props":9223,"children":9224},{"style":590},[9225],{"type":53,"value":9226},"x-api-key",{"type":43,"tag":476,"props":9228,"children":9229},{"style":499},[9230],{"type":53,"value":597},{"type":43,"tag":476,"props":9232,"children":9233},{"style":499},[9234],{"type":53,"value":1192},{"type":43,"tag":476,"props":9236,"children":9237},{"style":1098},[9238],{"type":53,"value":9239}," value",{"type":43,"tag":476,"props":9241,"children":9242},{"style":499},[9243],{"type":53,"value":1106},{"type":43,"tag":476,"props":9245,"children":9246},{"style":499},[9247],{"type":53,"value":615},{"type":43,"tag":476,"props":9249,"children":9250},{"style":1098},[9251],{"type":53,"value":9213},{"type":43,"tag":476,"props":9253,"children":9254},{"style":499},[9255],{"type":53,"value":1106},{"type":43,"tag":476,"props":9257,"children":9258},{"style":499},[9259],{"type":53,"value":587},{"type":43,"tag":476,"props":9261,"children":9262},{"style":590},[9263],{"type":53,"value":9264},"placeholder",{"type":43,"tag":476,"props":9266,"children":9267},{"style":499},[9268],{"type":53,"value":597},{"type":43,"tag":476,"props":9270,"children":9271},{"style":499},[9272],{"type":53,"value":635},{"type":43,"tag":476,"props":9274,"children":9275},{"style":499},[9276],{"type":53,"value":4253},{"type":43,"tag":476,"props":9278,"children":9279},{"class":478,"line":668},[9280,9285],{"type":43,"tag":476,"props":9281,"children":9282},{"style":509},[9283],{"type":53,"value":9284},"            ]",{"type":43,"tag":476,"props":9286,"children":9287},{"style":499},[9288],{"type":53,"value":296},{"type":43,"tag":476,"props":9290,"children":9291},{"class":478,"line":677},[9292],{"type":43,"tag":476,"props":9293,"children":9294},{"style":499},[9295],{"type":53,"value":9296},"          },\n",{"type":43,"tag":476,"props":9298,"children":9299},{"class":478,"line":694},[9300,9304,9308,9312,9316,9321,9325,9329,9333,9337,9341,9345,9349,9353,9357,9361],{"type":43,"tag":476,"props":9301,"children":9302},{"style":1098},[9303],{"type":53,"value":8799},{"type":43,"tag":476,"props":9305,"children":9306},{"style":499},[9307],{"type":53,"value":1106},{"type":43,"tag":476,"props":9309,"children":9310},{"style":509},[9311],{"type":53,"value":1214},{"type":43,"tag":476,"props":9313,"children":9314},{"style":499},[9315],{"type":53,"value":1601},{"type":43,"tag":476,"props":9317,"children":9318},{"style":1098},[9319],{"type":53,"value":9320}," headers",{"type":43,"tag":476,"props":9322,"children":9323},{"style":499},[9324],{"type":53,"value":1106},{"type":43,"tag":476,"props":9326,"children":9327},{"style":499},[9328],{"type":53,"value":615},{"type":43,"tag":476,"props":9330,"children":9331},{"style":1098},[9332],{"type":53,"value":8836},{"type":43,"tag":476,"props":9334,"children":9335},{"style":499},[9336],{"type":53,"value":1106},{"type":43,"tag":476,"props":9338,"children":9339},{"style":499},[9340],{"type":53,"value":587},{"type":43,"tag":476,"props":9342,"children":9343},{"style":590},[9344],{"type":53,"value":8849},{"type":43,"tag":476,"props":9346,"children":9347},{"style":499},[9348],{"type":53,"value":597},{"type":43,"tag":476,"props":9350,"children":9351},{"style":499},[9352],{"type":53,"value":635},{"type":43,"tag":476,"props":9354,"children":9355},{"style":499},[9356],{"type":53,"value":635},{"type":43,"tag":476,"props":9358,"children":9359},{"style":509},[9360],{"type":53,"value":1224},{"type":43,"tag":476,"props":9362,"children":9363},{"style":499},[9364],{"type":53,"value":296},{"type":43,"tag":476,"props":9366,"children":9367},{"class":478,"line":707},[9368],{"type":43,"tag":476,"props":9369,"children":9370},{"style":499},[9371],{"type":53,"value":8885},{"type":43,"tag":476,"props":9373,"children":9374},{"class":478,"line":720},[9375,9379],{"type":43,"tag":476,"props":9376,"children":9377},{"style":509},[9378],{"type":53,"value":8893},{"type":43,"tag":476,"props":9380,"children":9381},{"style":499},[9382],{"type":53,"value":296},{"type":43,"tag":476,"props":9384,"children":9385},{"class":478,"line":733},[9386],{"type":43,"tag":476,"props":9387,"children":9388},{"style":499},[9389],{"type":53,"value":8653},{"type":43,"tag":476,"props":9391,"children":9392},{"class":478,"line":761},[9393],{"type":43,"tag":476,"props":9394,"children":9395},{"style":499},[9396],{"type":53,"value":1996},{"type":43,"tag":476,"props":9398,"children":9399},{"class":478,"line":769},[9400,9404,9408],{"type":43,"tag":476,"props":9401,"children":9402},{"style":499},[9403],{"type":53,"value":577},{"type":43,"tag":476,"props":9405,"children":9406},{"style":509},[9407],{"type":53,"value":1272},{"type":43,"tag":476,"props":9409,"children":9410},{"style":499},[9411],{"type":53,"value":602},{"type":43,"tag":67,"props":9413,"children":9414},{},[9415,9417,9423,9424,9430,9432,9438],{"type":53,"value":9416},"Matchers support ",{"type":43,"tag":58,"props":9418,"children":9420},{"className":9419},[],[9421],{"type":53,"value":9422},"exact",{"type":53,"value":261},{"type":43,"tag":58,"props":9425,"children":9427},{"className":9426},[],[9428],{"type":53,"value":9429},"startsWith",{"type":53,"value":9431},", and ",{"type":43,"tag":58,"props":9433,"children":9435},{"className":9434},[],[9436],{"type":53,"value":9437},"regex",{"type":53,"value":9439}," (RE2).",{"type":43,"tag":80,"props":9441,"children":9443},{"id":9442},"forward-matching-requests-to-a-proxy",[9444],{"type":53,"value":9445},"Forward Matching Requests to a Proxy",{"type":43,"tag":67,"props":9447,"children":9448},{},[9449,9450,9455],{"type":53,"value":2250},{"type":43,"tag":58,"props":9451,"children":9453},{"className":9452},[],[9454],{"type":53,"value":385},{"type":53,"value":9456}," to redirect any matching request through an HTTPS proxy you\ncontrol. The proxy receives the original request along with sandbox metadata in\nforwarded headers.",{"type":43,"tag":465,"props":9458,"children":9460},{"className":467,"code":9459,"language":469,"meta":470,"style":470},"const sandbox = await Sandbox.create({\n  networkPolicy: {\n    allow: {\n      \"api.example.com\": [\n        {\n          match: { path: { startsWith: \"\u002Fsecure\u002F\" } },\n          forwardURL: \"https:\u002F\u002Fmy-proxy.example.com\",\n        },\n      ],\n    },\n  },\n});\n",[9461],{"type":43,"tag":58,"props":9462,"children":9463},{"__ignoreMap":470},[9464,9503,9518,9533,9557,9564,9620,9649,9656,9667,9674,9681],{"type":43,"tag":476,"props":9465,"children":9466},{"class":478,"line":479},[9467,9471,9475,9479,9483,9487,9491,9495,9499],{"type":43,"tag":476,"props":9468,"children":9469},{"style":896},[9470],{"type":53,"value":1053},{"type":43,"tag":476,"props":9472,"children":9473},{"style":509},[9474],{"type":53,"value":1058},{"type":43,"tag":476,"props":9476,"children":9477},{"style":499},[9478],{"type":53,"value":1063},{"type":43,"tag":476,"props":9480,"children":9481},{"style":493},[9482],{"type":53,"value":1068},{"type":43,"tag":476,"props":9484,"children":9485},{"style":509},[9486],{"type":53,"value":1014},{"type":43,"tag":476,"props":9488,"children":9489},{"style":499},[9490],{"type":53,"value":332},{"type":43,"tag":476,"props":9492,"children":9493},{"style":1079},[9494],{"type":53,"value":1082},{"type":43,"tag":476,"props":9496,"children":9497},{"style":509},[9498],{"type":53,"value":1087},{"type":43,"tag":476,"props":9500,"children":9501},{"style":499},[9502],{"type":53,"value":1092},{"type":43,"tag":476,"props":9504,"children":9505},{"class":478,"line":489},[9506,9510,9514],{"type":43,"tag":476,"props":9507,"children":9508},{"style":1098},[9509],{"type":53,"value":8281},{"type":43,"tag":476,"props":9511,"children":9512},{"style":499},[9513],{"type":53,"value":1106},{"type":43,"tag":476,"props":9515,"children":9516},{"style":499},[9517],{"type":53,"value":502},{"type":43,"tag":476,"props":9519,"children":9520},{"class":478,"line":505},[9521,9525,9529],{"type":43,"tag":476,"props":9522,"children":9523},{"style":1098},[9524],{"type":53,"value":8487},{"type":43,"tag":476,"props":9526,"children":9527},{"style":499},[9528],{"type":53,"value":1106},{"type":43,"tag":476,"props":9530,"children":9531},{"style":499},[9532],{"type":53,"value":502},{"type":43,"tag":476,"props":9534,"children":9535},{"class":478,"line":519},[9536,9540,9545,9549,9553],{"type":43,"tag":476,"props":9537,"children":9538},{"style":499},[9539],{"type":53,"value":8765},{"type":43,"tag":476,"props":9541,"children":9542},{"style":1098},[9543],{"type":53,"value":9544},"api.example.com",{"type":43,"tag":476,"props":9546,"children":9547},{"style":499},[9548],{"type":53,"value":597},{"type":43,"tag":476,"props":9550,"children":9551},{"style":499},[9552],{"type":53,"value":1106},{"type":43,"tag":476,"props":9554,"children":9555},{"style":509},[9556],{"type":53,"value":8783},{"type":43,"tag":476,"props":9558,"children":9559},{"class":478,"line":532},[9560],{"type":43,"tag":476,"props":9561,"children":9562},{"style":499},[9563],{"type":53,"value":8791},{"type":43,"tag":476,"props":9565,"children":9566},{"class":478,"line":545},[9567,9571,9575,9579,9583,9587,9591,9595,9599,9603,9608,9612,9616],{"type":43,"tag":476,"props":9568,"children":9569},{"style":1098},[9570],{"type":53,"value":9085},{"type":43,"tag":476,"props":9572,"children":9573},{"style":499},[9574],{"type":53,"value":1106},{"type":43,"tag":476,"props":9576,"children":9577},{"style":499},[9578],{"type":53,"value":615},{"type":43,"tag":476,"props":9580,"children":9581},{"style":1098},[9582],{"type":53,"value":1840},{"type":43,"tag":476,"props":9584,"children":9585},{"style":499},[9586],{"type":53,"value":1106},{"type":43,"tag":476,"props":9588,"children":9589},{"style":499},[9590],{"type":53,"value":615},{"type":43,"tag":476,"props":9592,"children":9593},{"style":1098},[9594],{"type":53,"value":9151},{"type":43,"tag":476,"props":9596,"children":9597},{"style":499},[9598],{"type":53,"value":1106},{"type":43,"tag":476,"props":9600,"children":9601},{"style":499},[9602],{"type":53,"value":587},{"type":43,"tag":476,"props":9604,"children":9605},{"style":590},[9606],{"type":53,"value":9607},"\u002Fsecure\u002F",{"type":43,"tag":476,"props":9609,"children":9610},{"style":499},[9611],{"type":53,"value":597},{"type":43,"tag":476,"props":9613,"children":9614},{"style":499},[9615],{"type":53,"value":635},{"type":43,"tag":476,"props":9617,"children":9618},{"style":499},[9619],{"type":53,"value":4253},{"type":43,"tag":476,"props":9621,"children":9622},{"class":478,"line":558},[9623,9628,9632,9636,9641,9645],{"type":43,"tag":476,"props":9624,"children":9625},{"style":1098},[9626],{"type":53,"value":9627},"          forwardURL",{"type":43,"tag":476,"props":9629,"children":9630},{"style":499},[9631],{"type":53,"value":1106},{"type":43,"tag":476,"props":9633,"children":9634},{"style":499},[9635],{"type":53,"value":587},{"type":43,"tag":476,"props":9637,"children":9638},{"style":590},[9639],{"type":53,"value":9640},"https:\u002F\u002Fmy-proxy.example.com",{"type":43,"tag":476,"props":9642,"children":9643},{"style":499},[9644],{"type":53,"value":597},{"type":43,"tag":476,"props":9646,"children":9647},{"style":499},[9648],{"type":53,"value":296},{"type":43,"tag":476,"props":9650,"children":9651},{"class":478,"line":571},[9652],{"type":43,"tag":476,"props":9653,"children":9654},{"style":499},[9655],{"type":53,"value":8885},{"type":43,"tag":476,"props":9657,"children":9658},{"class":478,"line":605},[9659,9663],{"type":43,"tag":476,"props":9660,"children":9661},{"style":509},[9662],{"type":53,"value":8893},{"type":43,"tag":476,"props":9664,"children":9665},{"style":499},[9666],{"type":53,"value":296},{"type":43,"tag":476,"props":9668,"children":9669},{"class":478,"line":658},[9670],{"type":43,"tag":476,"props":9671,"children":9672},{"style":499},[9673],{"type":53,"value":8653},{"type":43,"tag":476,"props":9675,"children":9676},{"class":478,"line":668},[9677],{"type":43,"tag":476,"props":9678,"children":9679},{"style":499},[9680],{"type":53,"value":1996},{"type":43,"tag":476,"props":9682,"children":9683},{"class":478,"line":677},[9684,9688,9692],{"type":43,"tag":476,"props":9685,"children":9686},{"style":499},[9687],{"type":53,"value":577},{"type":43,"tag":476,"props":9689,"children":9690},{"style":509},[9691],{"type":53,"value":1272},{"type":43,"tag":476,"props":9693,"children":9694},{"style":499},[9695],{"type":53,"value":602},{"type":43,"tag":67,"props":9697,"children":9698},{},[9699,9701,9706,9708,9714,9716,9722],{"type":53,"value":9700},"Implement the proxy handler with ",{"type":43,"tag":58,"props":9702,"children":9704},{"className":9703},[],[9705],{"type":53,"value":330},{"type":53,"value":9707},", using the Web ",{"type":43,"tag":58,"props":9709,"children":9711},{"className":9710},[],[9712],{"type":53,"value":9713},"Request",{"type":53,"value":9715}," & ",{"type":43,"tag":58,"props":9717,"children":9719},{"className":9718},[],[9720],{"type":53,"value":9721},"Response",{"type":53,"value":9723}," objects — it verifies the\nsandbox OIDC token and extracts metadata about the source sandbox:",{"type":43,"tag":465,"props":9725,"children":9727},{"className":467,"code":9726,"language":469,"meta":470,"style":470},"\u002F\u002F app\u002Fapi\u002Fsandbox-proxy\u002Froute.ts\nimport { defineSandboxProxy } from \"@vercel\u002Fsandbox\u002Fproxy\";\n\nconst handler = defineSandboxProxy(async (request, meta) => {\n  \u002F\u002F meta: { host, teamId, projectId, sandboxId, sandboxName }\n  console.log(\"Proxied from sandbox\", meta.sandboxName);\n  return fetch(request);\n});\n\n\u002F\u002F Sandboxes forward requests using their original method, so the handler\n\u002F\u002F must be exposed under every verb the network policy can route.\nexport {\n  handler as GET,\n  handler as POST,\n  handler as PUT,\n  handler as PATCH,\n  handler as DELETE,\n};\n",[9728],{"type":43,"tag":58,"props":9729,"children":9730},{"__ignoreMap":470},[9731,9739,9778,9785,9843,9851,9908,9937,9952,9959,9967,9975,9987,10009,10029,10049,10069,10089],{"type":43,"tag":476,"props":9732,"children":9733},{"class":478,"line":479},[9734],{"type":43,"tag":476,"props":9735,"children":9736},{"style":483},[9737],{"type":53,"value":9738},"\u002F\u002F app\u002Fapi\u002Fsandbox-proxy\u002Froute.ts\n",{"type":43,"tag":476,"props":9740,"children":9741},{"class":478,"line":489},[9742,9746,9750,9754,9758,9762,9766,9770,9774],{"type":43,"tag":476,"props":9743,"children":9744},{"style":493},[9745],{"type":53,"value":496},{"type":43,"tag":476,"props":9747,"children":9748},{"style":499},[9749],{"type":53,"value":615},{"type":43,"tag":476,"props":9751,"children":9752},{"style":509},[9753],{"type":53,"value":792},{"type":43,"tag":476,"props":9755,"children":9756},{"style":499},[9757],{"type":53,"value":635},{"type":43,"tag":476,"props":9759,"children":9760},{"style":493},[9761],{"type":53,"value":582},{"type":43,"tag":476,"props":9763,"children":9764},{"style":499},[9765],{"type":53,"value":587},{"type":43,"tag":476,"props":9767,"children":9768},{"style":590},[9769],{"type":53,"value":809},{"type":43,"tag":476,"props":9771,"children":9772},{"style":499},[9773],{"type":53,"value":597},{"type":43,"tag":476,"props":9775,"children":9776},{"style":499},[9777],{"type":53,"value":602},{"type":43,"tag":476,"props":9779,"children":9780},{"class":478,"line":505},[9781],{"type":43,"tag":476,"props":9782,"children":9783},{"emptyLinePlaceholder":662},[9784],{"type":53,"value":665},{"type":43,"tag":476,"props":9786,"children":9787},{"class":478,"line":519},[9788,9792,9797,9801,9805,9809,9813,9817,9822,9826,9831,9835,9839],{"type":43,"tag":476,"props":9789,"children":9790},{"style":896},[9791],{"type":53,"value":1053},{"type":43,"tag":476,"props":9793,"children":9794},{"style":509},[9795],{"type":53,"value":9796}," handler ",{"type":43,"tag":476,"props":9798,"children":9799},{"style":499},[9800],{"type":53,"value":1063},{"type":43,"tag":476,"props":9802,"children":9803},{"style":1079},[9804],{"type":53,"value":792},{"type":43,"tag":476,"props":9806,"children":9807},{"style":509},[9808],{"type":53,"value":1087},{"type":43,"tag":476,"props":9810,"children":9811},{"style":896},[9812],{"type":53,"value":4355},{"type":43,"tag":476,"props":9814,"children":9815},{"style":499},[9816],{"type":53,"value":1782},{"type":43,"tag":476,"props":9818,"children":9819},{"style":1785},[9820],{"type":53,"value":9821},"request",{"type":43,"tag":476,"props":9823,"children":9824},{"style":499},[9825],{"type":53,"value":625},{"type":43,"tag":476,"props":9827,"children":9828},{"style":1785},[9829],{"type":53,"value":9830}," meta",{"type":43,"tag":476,"props":9832,"children":9833},{"style":499},[9834],{"type":53,"value":1272},{"type":43,"tag":476,"props":9836,"children":9837},{"style":896},[9838],{"type":53,"value":1797},{"type":43,"tag":476,"props":9840,"children":9841},{"style":499},[9842],{"type":53,"value":502},{"type":43,"tag":476,"props":9844,"children":9845},{"class":478,"line":532},[9846],{"type":43,"tag":476,"props":9847,"children":9848},{"style":483},[9849],{"type":53,"value":9850},"  \u002F\u002F meta: { host, teamId, projectId, sandboxId, sandboxName }\n",{"type":43,"tag":476,"props":9852,"children":9853},{"class":478,"line":545},[9854,9858,9862,9866,9870,9874,9879,9883,9887,9891,9895,9900,9904],{"type":43,"tag":476,"props":9855,"children":9856},{"style":509},[9857],{"type":53,"value":4640},{"type":43,"tag":476,"props":9859,"children":9860},{"style":499},[9861],{"type":53,"value":332},{"type":43,"tag":476,"props":9863,"children":9864},{"style":1079},[9865],{"type":53,"value":1513},{"type":43,"tag":476,"props":9867,"children":9868},{"style":1098},[9869],{"type":53,"value":1087},{"type":43,"tag":476,"props":9871,"children":9872},{"style":499},[9873],{"type":53,"value":597},{"type":43,"tag":476,"props":9875,"children":9876},{"style":590},[9877],{"type":53,"value":9878},"Proxied from sandbox",{"type":43,"tag":476,"props":9880,"children":9881},{"style":499},[9882],{"type":53,"value":597},{"type":43,"tag":476,"props":9884,"children":9885},{"style":499},[9886],{"type":53,"value":625},{"type":43,"tag":476,"props":9888,"children":9889},{"style":509},[9890],{"type":53,"value":9830},{"type":43,"tag":476,"props":9892,"children":9893},{"style":499},[9894],{"type":53,"value":332},{"type":43,"tag":476,"props":9896,"children":9897},{"style":509},[9898],{"type":53,"value":9899},"sandboxName",{"type":43,"tag":476,"props":9901,"children":9902},{"style":1098},[9903],{"type":53,"value":1272},{"type":43,"tag":476,"props":9905,"children":9906},{"style":499},[9907],{"type":53,"value":602},{"type":43,"tag":476,"props":9909,"children":9910},{"class":478,"line":558},[9911,9916,9921,9925,9929,9933],{"type":43,"tag":476,"props":9912,"children":9913},{"style":493},[9914],{"type":53,"value":9915},"  return",{"type":43,"tag":476,"props":9917,"children":9918},{"style":1079},[9919],{"type":53,"value":9920}," fetch",{"type":43,"tag":476,"props":9922,"children":9923},{"style":1098},[9924],{"type":53,"value":1087},{"type":43,"tag":476,"props":9926,"children":9927},{"style":509},[9928],{"type":53,"value":9821},{"type":43,"tag":476,"props":9930,"children":9931},{"style":1098},[9932],{"type":53,"value":1272},{"type":43,"tag":476,"props":9934,"children":9935},{"style":499},[9936],{"type":53,"value":602},{"type":43,"tag":476,"props":9938,"children":9939},{"class":478,"line":571},[9940,9944,9948],{"type":43,"tag":476,"props":9941,"children":9942},{"style":499},[9943],{"type":53,"value":577},{"type":43,"tag":476,"props":9945,"children":9946},{"style":509},[9947],{"type":53,"value":1272},{"type":43,"tag":476,"props":9949,"children":9950},{"style":499},[9951],{"type":53,"value":602},{"type":43,"tag":476,"props":9953,"children":9954},{"class":478,"line":605},[9955],{"type":43,"tag":476,"props":9956,"children":9957},{"emptyLinePlaceholder":662},[9958],{"type":53,"value":665},{"type":43,"tag":476,"props":9960,"children":9961},{"class":478,"line":658},[9962],{"type":43,"tag":476,"props":9963,"children":9964},{"style":483},[9965],{"type":53,"value":9966},"\u002F\u002F Sandboxes forward requests using their original method, so the handler\n",{"type":43,"tag":476,"props":9968,"children":9969},{"class":478,"line":668},[9970],{"type":43,"tag":476,"props":9971,"children":9972},{"style":483},[9973],{"type":53,"value":9974},"\u002F\u002F must be exposed under every verb the network policy can route.\n",{"type":43,"tag":476,"props":9976,"children":9977},{"class":478,"line":677},[9978,9983],{"type":43,"tag":476,"props":9979,"children":9980},{"style":493},[9981],{"type":53,"value":9982},"export",{"type":43,"tag":476,"props":9984,"children":9985},{"style":499},[9986],{"type":53,"value":502},{"type":43,"tag":476,"props":9988,"children":9989},{"class":478,"line":694},[9990,9995,10000,10005],{"type":43,"tag":476,"props":9991,"children":9992},{"style":509},[9993],{"type":53,"value":9994},"  handler",{"type":43,"tag":476,"props":9996,"children":9997},{"style":493},[9998],{"type":53,"value":9999}," as",{"type":43,"tag":476,"props":10001,"children":10002},{"style":509},[10003],{"type":53,"value":10004}," GET",{"type":43,"tag":476,"props":10006,"children":10007},{"style":499},[10008],{"type":53,"value":296},{"type":43,"tag":476,"props":10010,"children":10011},{"class":478,"line":707},[10012,10016,10020,10025],{"type":43,"tag":476,"props":10013,"children":10014},{"style":509},[10015],{"type":53,"value":9994},{"type":43,"tag":476,"props":10017,"children":10018},{"style":493},[10019],{"type":53,"value":9999},{"type":43,"tag":476,"props":10021,"children":10022},{"style":509},[10023],{"type":53,"value":10024}," POST",{"type":43,"tag":476,"props":10026,"children":10027},{"style":499},[10028],{"type":53,"value":296},{"type":43,"tag":476,"props":10030,"children":10031},{"class":478,"line":720},[10032,10036,10040,10045],{"type":43,"tag":476,"props":10033,"children":10034},{"style":509},[10035],{"type":53,"value":9994},{"type":43,"tag":476,"props":10037,"children":10038},{"style":493},[10039],{"type":53,"value":9999},{"type":43,"tag":476,"props":10041,"children":10042},{"style":509},[10043],{"type":53,"value":10044}," PUT",{"type":43,"tag":476,"props":10046,"children":10047},{"style":499},[10048],{"type":53,"value":296},{"type":43,"tag":476,"props":10050,"children":10051},{"class":478,"line":733},[10052,10056,10060,10065],{"type":43,"tag":476,"props":10053,"children":10054},{"style":509},[10055],{"type":53,"value":9994},{"type":43,"tag":476,"props":10057,"children":10058},{"style":493},[10059],{"type":53,"value":9999},{"type":43,"tag":476,"props":10061,"children":10062},{"style":509},[10063],{"type":53,"value":10064}," PATCH",{"type":43,"tag":476,"props":10066,"children":10067},{"style":499},[10068],{"type":53,"value":296},{"type":43,"tag":476,"props":10070,"children":10071},{"class":478,"line":761},[10072,10076,10080,10085],{"type":43,"tag":476,"props":10073,"children":10074},{"style":509},[10075],{"type":53,"value":9994},{"type":43,"tag":476,"props":10077,"children":10078},{"style":493},[10079],{"type":53,"value":9999},{"type":43,"tag":476,"props":10081,"children":10082},{"style":509},[10083],{"type":53,"value":10084}," DELETE",{"type":43,"tag":476,"props":10086,"children":10087},{"style":499},[10088],{"type":53,"value":296},{"type":43,"tag":476,"props":10090,"children":10091},{"class":478,"line":769},[10092],{"type":43,"tag":476,"props":10093,"children":10094},{"style":499},[10095],{"type":53,"value":10096},"};\n",{"type":43,"tag":80,"props":10098,"children":10100},{"id":10099},"updating-network-policy-at-runtime",[10101],{"type":53,"value":10102},"Updating Network Policy at Runtime",{"type":43,"tag":67,"props":10104,"children":10105},{},[10106,10107,10112,10114,10120],{"type":53,"value":2250},{"type":43,"tag":58,"props":10108,"children":10110},{"className":10109},[],[10111],{"type":53,"value":294},{"type":53,"value":10113}," (preferred). ",{"type":43,"tag":58,"props":10115,"children":10117},{"className":10116},[],[10118],{"type":53,"value":10119},"updateNetworkPolicy",{"type":53,"value":10121}," is deprecated but still\nworks.",{"type":43,"tag":465,"props":10123,"children":10125},{"className":467,"code":10124,"language":469,"meta":470,"style":470},"await sandbox.update({ networkPolicy: { allow: [\"api.openai.com\"] } });\n",[10126],{"type":43,"tag":58,"props":10127,"children":10128},{"__ignoreMap":470},[10129],{"type":43,"tag":476,"props":10130,"children":10131},{"class":478,"line":479},[10132,10136,10140,10144,10149,10153,10157,10162,10166,10170,10175,10179,10183,10187,10192,10196,10201,10205,10209,10213],{"type":43,"tag":476,"props":10133,"children":10134},{"style":493},[10135],{"type":53,"value":3642},{"type":43,"tag":476,"props":10137,"children":10138},{"style":509},[10139],{"type":53,"value":4387},{"type":43,"tag":476,"props":10141,"children":10142},{"style":499},[10143],{"type":53,"value":332},{"type":43,"tag":476,"props":10145,"children":10146},{"style":1079},[10147],{"type":53,"value":10148},"update",{"type":43,"tag":476,"props":10150,"children":10151},{"style":509},[10152],{"type":53,"value":1087},{"type":43,"tag":476,"props":10154,"children":10155},{"style":499},[10156],{"type":53,"value":1601},{"type":43,"tag":476,"props":10158,"children":10159},{"style":1098},[10160],{"type":53,"value":10161}," networkPolicy",{"type":43,"tag":476,"props":10163,"children":10164},{"style":499},[10165],{"type":53,"value":1106},{"type":43,"tag":476,"props":10167,"children":10168},{"style":499},[10169],{"type":53,"value":615},{"type":43,"tag":476,"props":10171,"children":10172},{"style":1098},[10173],{"type":53,"value":10174}," allow",{"type":43,"tag":476,"props":10176,"children":10177},{"style":499},[10178],{"type":53,"value":1106},{"type":43,"tag":476,"props":10180,"children":10181},{"style":509},[10182],{"type":53,"value":1214},{"type":43,"tag":476,"props":10184,"children":10185},{"style":499},[10186],{"type":53,"value":597},{"type":43,"tag":476,"props":10188,"children":10189},{"style":590},[10190],{"type":53,"value":10191},"api.openai.com",{"type":43,"tag":476,"props":10193,"children":10194},{"style":499},[10195],{"type":53,"value":597},{"type":43,"tag":476,"props":10197,"children":10198},{"style":509},[10199],{"type":53,"value":10200},"] ",{"type":43,"tag":476,"props":10202,"children":10203},{"style":499},[10204],{"type":53,"value":577},{"type":43,"tag":476,"props":10206,"children":10207},{"style":499},[10208],{"type":53,"value":635},{"type":43,"tag":476,"props":10210,"children":10211},{"style":509},[10212],{"type":53,"value":1272},{"type":43,"tag":476,"props":10214,"children":10215},{"style":499},[10216],{"type":53,"value":602},{"type":43,"tag":44,"props":10218,"children":10220},{"id":10219},"updating-sandbox-configuration",[10221],{"type":53,"value":10222},"Updating Sandbox Configuration",{"type":43,"tag":67,"props":10224,"children":10225},{},[10226,10231,10233,10238,10240,10245],{"type":43,"tag":58,"props":10227,"children":10229},{"className":10228},[],[10230],{"type":53,"value":294},{"type":53,"value":10232}," replaces individual update helpers and accepts any of the\nmutable parameters. When ",{"type":43,"tag":58,"props":10234,"children":10236},{"className":10235},[],[10237],{"type":53,"value":3967},{"type":53,"value":10239}," is provided, it is treated as the ",{"type":43,"tag":95,"props":10241,"children":10242},{},[10243],{"type":53,"value":10244},"full",{"type":53,"value":10246},"\ndesired port list — any currently exposed port not present in the array is\nderegistered.",{"type":43,"tag":465,"props":10248,"children":10250},{"className":467,"code":10249,"language":469,"meta":470,"style":470},"await sandbox.update({\n  resources: { vcpus: 4 }, \u002F\u002F Memory auto-scales to 2048 MB per vCPU\n  timeout: ms(\"30m\"),\n  networkPolicy: \"deny-all\",\n  ports: [3000, 8000],\n  tags: { env: \"prod\" },\n  persistent: false,\n  snapshotExpiration: ms(\"14d\"),\n  keepLastSnapshots: { count: 1 },\n  currentSnapshotId: \"snap_xyz\", \u002F\u002F Rollback to a previous snapshot\n});\n",[10251],{"type":43,"tag":58,"props":10252,"children":10253},{"__ignoreMap":470},[10254,10281,10317,10357,10384,10420,10460,10479,10519,10552,10586],{"type":43,"tag":476,"props":10255,"children":10256},{"class":478,"line":479},[10257,10261,10265,10269,10273,10277],{"type":43,"tag":476,"props":10258,"children":10259},{"style":493},[10260],{"type":53,"value":3642},{"type":43,"tag":476,"props":10262,"children":10263},{"style":509},[10264],{"type":53,"value":4387},{"type":43,"tag":476,"props":10266,"children":10267},{"style":499},[10268],{"type":53,"value":332},{"type":43,"tag":476,"props":10270,"children":10271},{"style":1079},[10272],{"type":53,"value":10148},{"type":43,"tag":476,"props":10274,"children":10275},{"style":509},[10276],{"type":53,"value":1087},{"type":43,"tag":476,"props":10278,"children":10279},{"style":499},[10280],{"type":53,"value":1092},{"type":43,"tag":476,"props":10282,"children":10283},{"class":478,"line":489},[10284,10288,10292,10296,10300,10304,10308,10312],{"type":43,"tag":476,"props":10285,"children":10286},{"style":1098},[10287],{"type":53,"value":1164},{"type":43,"tag":476,"props":10289,"children":10290},{"style":499},[10291],{"type":53,"value":1106},{"type":43,"tag":476,"props":10293,"children":10294},{"style":499},[10295],{"type":53,"value":615},{"type":43,"tag":476,"props":10297,"children":10298},{"style":1098},[10299],{"type":53,"value":1177},{"type":43,"tag":476,"props":10301,"children":10302},{"style":499},[10303],{"type":53,"value":1106},{"type":43,"tag":476,"props":10305,"children":10306},{"style":1184},[10307],{"type":53,"value":1187},{"type":43,"tag":476,"props":10309,"children":10310},{"style":499},[10311],{"type":53,"value":1192},{"type":43,"tag":476,"props":10313,"children":10314},{"style":483},[10315],{"type":53,"value":10316}," \u002F\u002F Memory auto-scales to 2048 MB per vCPU\n",{"type":43,"tag":476,"props":10318,"children":10319},{"class":478,"line":505},[10320,10324,10328,10332,10336,10340,10345,10349,10353],{"type":43,"tag":476,"props":10321,"children":10322},{"style":1098},[10323],{"type":53,"value":1241},{"type":43,"tag":476,"props":10325,"children":10326},{"style":499},[10327],{"type":53,"value":1106},{"type":43,"tag":476,"props":10329,"children":10330},{"style":1079},[10331],{"type":53,"value":1250},{"type":43,"tag":476,"props":10333,"children":10334},{"style":509},[10335],{"type":53,"value":1087},{"type":43,"tag":476,"props":10337,"children":10338},{"style":499},[10339],{"type":53,"value":597},{"type":43,"tag":476,"props":10341,"children":10342},{"style":590},[10343],{"type":53,"value":10344},"30m",{"type":43,"tag":476,"props":10346,"children":10347},{"style":499},[10348],{"type":53,"value":597},{"type":43,"tag":476,"props":10350,"children":10351},{"style":509},[10352],{"type":53,"value":1272},{"type":43,"tag":476,"props":10354,"children":10355},{"style":499},[10356],{"type":53,"value":296},{"type":43,"tag":476,"props":10358,"children":10359},{"class":478,"line":519},[10360,10364,10368,10372,10376,10380],{"type":43,"tag":476,"props":10361,"children":10362},{"style":1098},[10363],{"type":53,"value":8281},{"type":43,"tag":476,"props":10365,"children":10366},{"style":499},[10367],{"type":53,"value":1106},{"type":43,"tag":476,"props":10369,"children":10370},{"style":499},[10371],{"type":53,"value":587},{"type":43,"tag":476,"props":10373,"children":10374},{"style":590},[10375],{"type":53,"value":8389},{"type":43,"tag":476,"props":10377,"children":10378},{"style":499},[10379],{"type":53,"value":597},{"type":43,"tag":476,"props":10381,"children":10382},{"style":499},[10383],{"type":53,"value":296},{"type":43,"tag":476,"props":10385,"children":10386},{"class":478,"line":532},[10387,10391,10395,10399,10403,10407,10412,10416],{"type":43,"tag":476,"props":10388,"children":10389},{"style":1098},[10390],{"type":53,"value":1205},{"type":43,"tag":476,"props":10392,"children":10393},{"style":499},[10394],{"type":53,"value":1106},{"type":43,"tag":476,"props":10396,"children":10397},{"style":509},[10398],{"type":53,"value":1214},{"type":43,"tag":476,"props":10400,"children":10401},{"style":1184},[10402],{"type":53,"value":1219},{"type":43,"tag":476,"props":10404,"children":10405},{"style":499},[10406],{"type":53,"value":625},{"type":43,"tag":476,"props":10408,"children":10409},{"style":1184},[10410],{"type":53,"value":10411}," 8000",{"type":43,"tag":476,"props":10413,"children":10414},{"style":509},[10415],{"type":53,"value":1224},{"type":43,"tag":476,"props":10417,"children":10418},{"style":499},[10419],{"type":53,"value":296},{"type":43,"tag":476,"props":10421,"children":10422},{"class":478,"line":545},[10423,10427,10431,10435,10439,10443,10447,10452,10456],{"type":43,"tag":476,"props":10424,"children":10425},{"style":1098},[10426],{"type":53,"value":1336},{"type":43,"tag":476,"props":10428,"children":10429},{"style":499},[10430],{"type":53,"value":1106},{"type":43,"tag":476,"props":10432,"children":10433},{"style":499},[10434],{"type":53,"value":615},{"type":43,"tag":476,"props":10436,"children":10437},{"style":1098},[10438],{"type":53,"value":1349},{"type":43,"tag":476,"props":10440,"children":10441},{"style":499},[10442],{"type":53,"value":1106},{"type":43,"tag":476,"props":10444,"children":10445},{"style":499},[10446],{"type":53,"value":587},{"type":43,"tag":476,"props":10448,"children":10449},{"style":590},[10450],{"type":53,"value":10451},"prod",{"type":43,"tag":476,"props":10453,"children":10454},{"style":499},[10455],{"type":53,"value":597},{"type":43,"tag":476,"props":10457,"children":10458},{"style":499},[10459],{"type":53,"value":4253},{"type":43,"tag":476,"props":10461,"children":10462},{"class":478,"line":558},[10463,10467,10471,10475],{"type":43,"tag":476,"props":10464,"children":10465},{"style":1098},[10466],{"type":53,"value":1409},{"type":43,"tag":476,"props":10468,"children":10469},{"style":499},[10470],{"type":53,"value":1106},{"type":43,"tag":476,"props":10472,"children":10473},{"style":1416},[10474],{"type":53,"value":4922},{"type":43,"tag":476,"props":10476,"children":10477},{"style":499},[10478],{"type":53,"value":296},{"type":43,"tag":476,"props":10480,"children":10481},{"class":478,"line":571},[10482,10486,10490,10494,10498,10502,10507,10511,10515],{"type":43,"tag":476,"props":10483,"children":10484},{"style":1098},[10485],{"type":53,"value":1436},{"type":43,"tag":476,"props":10487,"children":10488},{"style":499},[10489],{"type":53,"value":1106},{"type":43,"tag":476,"props":10491,"children":10492},{"style":1079},[10493],{"type":53,"value":1250},{"type":43,"tag":476,"props":10495,"children":10496},{"style":509},[10497],{"type":53,"value":1087},{"type":43,"tag":476,"props":10499,"children":10500},{"style":499},[10501],{"type":53,"value":597},{"type":43,"tag":476,"props":10503,"children":10504},{"style":590},[10505],{"type":53,"value":10506},"14d",{"type":43,"tag":476,"props":10508,"children":10509},{"style":499},[10510],{"type":53,"value":597},{"type":43,"tag":476,"props":10512,"children":10513},{"style":509},[10514],{"type":53,"value":1272},{"type":43,"tag":476,"props":10516,"children":10517},{"style":499},[10518],{"type":53,"value":296},{"type":43,"tag":476,"props":10520,"children":10521},{"class":478,"line":605},[10522,10527,10531,10535,10540,10544,10548],{"type":43,"tag":476,"props":10523,"children":10524},{"style":1098},[10525],{"type":53,"value":10526},"  keepLastSnapshots",{"type":43,"tag":476,"props":10528,"children":10529},{"style":499},[10530],{"type":53,"value":1106},{"type":43,"tag":476,"props":10532,"children":10533},{"style":499},[10534],{"type":53,"value":615},{"type":43,"tag":476,"props":10536,"children":10537},{"style":1098},[10538],{"type":53,"value":10539}," count",{"type":43,"tag":476,"props":10541,"children":10542},{"style":499},[10543],{"type":53,"value":1106},{"type":43,"tag":476,"props":10545,"children":10546},{"style":1184},[10547],{"type":53,"value":2676},{"type":43,"tag":476,"props":10549,"children":10550},{"style":499},[10551],{"type":53,"value":4253},{"type":43,"tag":476,"props":10553,"children":10554},{"class":478,"line":658},[10555,10560,10564,10568,10573,10577,10581],{"type":43,"tag":476,"props":10556,"children":10557},{"style":1098},[10558],{"type":53,"value":10559},"  currentSnapshotId",{"type":43,"tag":476,"props":10561,"children":10562},{"style":499},[10563],{"type":53,"value":1106},{"type":43,"tag":476,"props":10565,"children":10566},{"style":499},[10567],{"type":53,"value":587},{"type":43,"tag":476,"props":10569,"children":10570},{"style":590},[10571],{"type":53,"value":10572},"snap_xyz",{"type":43,"tag":476,"props":10574,"children":10575},{"style":499},[10576],{"type":53,"value":597},{"type":43,"tag":476,"props":10578,"children":10579},{"style":499},[10580],{"type":53,"value":625},{"type":43,"tag":476,"props":10582,"children":10583},{"style":483},[10584],{"type":53,"value":10585}," \u002F\u002F Rollback to a previous snapshot\n",{"type":43,"tag":476,"props":10587,"children":10588},{"class":478,"line":668},[10589,10593,10597],{"type":43,"tag":476,"props":10590,"children":10591},{"style":499},[10592],{"type":53,"value":577},{"type":43,"tag":476,"props":10594,"children":10595},{"style":509},[10596],{"type":53,"value":1272},{"type":43,"tag":476,"props":10598,"children":10599},{"style":499},[10600],{"type":53,"value":602},{"type":43,"tag":44,"props":10602,"children":10604},{"id":10603},"deleting-a-sandbox",[10605],{"type":53,"value":10606},"Deleting a Sandbox",{"type":43,"tag":465,"props":10608,"children":10610},{"className":467,"code":10609,"language":469,"meta":470,"style":470},"\u002F\u002F Permanently remove a sandbox and all its snapshots.\nawait sandbox.delete();\n",[10611],{"type":43,"tag":58,"props":10612,"children":10613},{"__ignoreMap":470},[10614,10622],{"type":43,"tag":476,"props":10615,"children":10616},{"class":478,"line":479},[10617],{"type":43,"tag":476,"props":10618,"children":10619},{"style":483},[10620],{"type":53,"value":10621},"\u002F\u002F Permanently remove a sandbox and all its snapshots.\n",{"type":43,"tag":476,"props":10623,"children":10624},{"class":478,"line":489},[10625,10629,10633,10637,10642,10646],{"type":43,"tag":476,"props":10626,"children":10627},{"style":493},[10628],{"type":53,"value":3642},{"type":43,"tag":476,"props":10630,"children":10631},{"style":509},[10632],{"type":53,"value":4387},{"type":43,"tag":476,"props":10634,"children":10635},{"style":499},[10636],{"type":53,"value":332},{"type":43,"tag":476,"props":10638,"children":10639},{"style":1079},[10640],{"type":53,"value":10641},"delete",{"type":43,"tag":476,"props":10643,"children":10644},{"style":509},[10645],{"type":53,"value":4370},{"type":43,"tag":476,"props":10647,"children":10648},{"style":499},[10649],{"type":53,"value":602},{"type":43,"tag":44,"props":10651,"children":10653},{"id":10652},"stopping-a-sandbox",[10654],{"type":53,"value":10655},"Stopping a Sandbox",{"type":43,"tag":67,"props":10657,"children":10658},{},[10659,10665,10667,10673],{"type":43,"tag":58,"props":10660,"children":10662},{"className":10661},[],[10663],{"type":53,"value":10664},"stop()",{"type":53,"value":10666}," is synchronous: it blocks until the VM is fully stopped and returns\nthe final session state, including the snapshot created during shutdown (when\n",{"type":43,"tag":58,"props":10668,"children":10670},{"className":10669},[],[10671],{"type":53,"value":10672},"persistent: true",{"type":53,"value":10674},").",{"type":43,"tag":465,"props":10676,"children":10678},{"className":467,"code":10677,"language":469,"meta":470,"style":470},"const result = await sandbox.stop();\nconsole.log(result.snapshot?.id);\nconsole.log(result.activeCpuUsageMs);\nconsole.log(result.networkTransfer); \u002F\u002F { ingress, egress }\n",[10679],{"type":43,"tag":58,"props":10680,"children":10681},{"__ignoreMap":470},[10682,10722,10764,10796],{"type":43,"tag":476,"props":10683,"children":10684},{"class":478,"line":479},[10685,10689,10693,10697,10701,10705,10709,10714,10718],{"type":43,"tag":476,"props":10686,"children":10687},{"style":896},[10688],{"type":53,"value":1053},{"type":43,"tag":476,"props":10690,"children":10691},{"style":509},[10692],{"type":53,"value":4528},{"type":43,"tag":476,"props":10694,"children":10695},{"style":499},[10696],{"type":53,"value":1063},{"type":43,"tag":476,"props":10698,"children":10699},{"style":493},[10700],{"type":53,"value":1068},{"type":43,"tag":476,"props":10702,"children":10703},{"style":509},[10704],{"type":53,"value":4387},{"type":43,"tag":476,"props":10706,"children":10707},{"style":499},[10708],{"type":53,"value":332},{"type":43,"tag":476,"props":10710,"children":10711},{"style":1079},[10712],{"type":53,"value":10713},"stop",{"type":43,"tag":476,"props":10715,"children":10716},{"style":509},[10717],{"type":53,"value":4370},{"type":43,"tag":476,"props":10719,"children":10720},{"style":499},[10721],{"type":53,"value":602},{"type":43,"tag":476,"props":10723,"children":10724},{"class":478,"line":489},[10725,10729,10733,10737,10742,10746,10750,10755,10760],{"type":43,"tag":476,"props":10726,"children":10727},{"style":509},[10728],{"type":53,"value":1504},{"type":43,"tag":476,"props":10730,"children":10731},{"style":499},[10732],{"type":53,"value":332},{"type":43,"tag":476,"props":10734,"children":10735},{"style":1079},[10736],{"type":53,"value":1513},{"type":43,"tag":476,"props":10738,"children":10739},{"style":509},[10740],{"type":53,"value":10741},"(result",{"type":43,"tag":476,"props":10743,"children":10744},{"style":499},[10745],{"type":53,"value":332},{"type":43,"tag":476,"props":10747,"children":10748},{"style":509},[10749],{"type":53,"value":3335},{"type":43,"tag":476,"props":10751,"children":10752},{"style":499},[10753],{"type":53,"value":10754},"?.",{"type":43,"tag":476,"props":10756,"children":10757},{"style":509},[10758],{"type":53,"value":10759},"id)",{"type":43,"tag":476,"props":10761,"children":10762},{"style":499},[10763],{"type":53,"value":602},{"type":43,"tag":476,"props":10765,"children":10766},{"class":478,"line":505},[10767,10771,10775,10779,10783,10787,10792],{"type":43,"tag":476,"props":10768,"children":10769},{"style":509},[10770],{"type":53,"value":1504},{"type":43,"tag":476,"props":10772,"children":10773},{"style":499},[10774],{"type":53,"value":332},{"type":43,"tag":476,"props":10776,"children":10777},{"style":1079},[10778],{"type":53,"value":1513},{"type":43,"tag":476,"props":10780,"children":10781},{"style":509},[10782],{"type":53,"value":10741},{"type":43,"tag":476,"props":10784,"children":10785},{"style":499},[10786],{"type":53,"value":332},{"type":43,"tag":476,"props":10788,"children":10789},{"style":509},[10790],{"type":53,"value":10791},"activeCpuUsageMs)",{"type":43,"tag":476,"props":10793,"children":10794},{"style":499},[10795],{"type":53,"value":602},{"type":43,"tag":476,"props":10797,"children":10798},{"class":478,"line":519},[10799,10803,10807,10811,10815,10819,10824,10828],{"type":43,"tag":476,"props":10800,"children":10801},{"style":509},[10802],{"type":53,"value":1504},{"type":43,"tag":476,"props":10804,"children":10805},{"style":499},[10806],{"type":53,"value":332},{"type":43,"tag":476,"props":10808,"children":10809},{"style":1079},[10810],{"type":53,"value":1513},{"type":43,"tag":476,"props":10812,"children":10813},{"style":509},[10814],{"type":53,"value":10741},{"type":43,"tag":476,"props":10816,"children":10817},{"style":499},[10818],{"type":53,"value":332},{"type":43,"tag":476,"props":10820,"children":10821},{"style":509},[10822],{"type":53,"value":10823},"networkTransfer)",{"type":43,"tag":476,"props":10825,"children":10826},{"style":499},[10827],{"type":53,"value":870},{"type":43,"tag":476,"props":10829,"children":10830},{"style":483},[10831],{"type":53,"value":10832}," \u002F\u002F { ingress, egress }\n",{"type":43,"tag":44,"props":10834,"children":10835},{"id":356},[10836],{"type":53,"value":10837},"Tags",{"type":43,"tag":67,"props":10839,"children":10840},{},[10841,10843,10849],{"type":53,"value":10842},"Sandboxes support up to 5 key-value tags. Tags can be set at creation, updated\nvia ",{"type":43,"tag":58,"props":10844,"children":10846},{"className":10845},[],[10847],{"type":53,"value":10848},"sandbox.update({ tags })",{"type":53,"value":10850},", and used as filters when listing.",{"type":43,"tag":465,"props":10852,"children":10854},{"className":467,"code":10853,"language":469,"meta":470,"style":470},"await Sandbox.create({ tags: { env: \"staging\", team: \"infra\" } });\n\nconst result = await Sandbox.list({ tags: { env: \"staging\" } });\n",[10855],{"type":43,"tag":58,"props":10856,"children":10857},{"__ignoreMap":470},[10858,10958,10965],{"type":43,"tag":476,"props":10859,"children":10860},{"class":478,"line":479},[10861,10865,10869,10873,10877,10881,10885,10890,10894,10898,10902,10906,10910,10914,10918,10922,10926,10930,10934,10938,10942,10946,10950,10954],{"type":43,"tag":476,"props":10862,"children":10863},{"style":493},[10864],{"type":53,"value":3642},{"type":43,"tag":476,"props":10866,"children":10867},{"style":509},[10868],{"type":53,"value":1014},{"type":43,"tag":476,"props":10870,"children":10871},{"style":499},[10872],{"type":53,"value":332},{"type":43,"tag":476,"props":10874,"children":10875},{"style":1079},[10876],{"type":53,"value":1082},{"type":43,"tag":476,"props":10878,"children":10879},{"style":509},[10880],{"type":53,"value":1087},{"type":43,"tag":476,"props":10882,"children":10883},{"style":499},[10884],{"type":53,"value":1601},{"type":43,"tag":476,"props":10886,"children":10887},{"style":1098},[10888],{"type":53,"value":10889}," tags",{"type":43,"tag":476,"props":10891,"children":10892},{"style":499},[10893],{"type":53,"value":1106},{"type":43,"tag":476,"props":10895,"children":10896},{"style":499},[10897],{"type":53,"value":615},{"type":43,"tag":476,"props":10899,"children":10900},{"style":1098},[10901],{"type":53,"value":1349},{"type":43,"tag":476,"props":10903,"children":10904},{"style":499},[10905],{"type":53,"value":1106},{"type":43,"tag":476,"props":10907,"children":10908},{"style":499},[10909],{"type":53,"value":587},{"type":43,"tag":476,"props":10911,"children":10912},{"style":590},[10913],{"type":53,"value":1362},{"type":43,"tag":476,"props":10915,"children":10916},{"style":499},[10917],{"type":53,"value":597},{"type":43,"tag":476,"props":10919,"children":10920},{"style":499},[10921],{"type":53,"value":625},{"type":43,"tag":476,"props":10923,"children":10924},{"style":1098},[10925],{"type":53,"value":1375},{"type":43,"tag":476,"props":10927,"children":10928},{"style":499},[10929],{"type":53,"value":1106},{"type":43,"tag":476,"props":10931,"children":10932},{"style":499},[10933],{"type":53,"value":587},{"type":43,"tag":476,"props":10935,"children":10936},{"style":590},[10937],{"type":53,"value":1388},{"type":43,"tag":476,"props":10939,"children":10940},{"style":499},[10941],{"type":53,"value":597},{"type":43,"tag":476,"props":10943,"children":10944},{"style":499},[10945],{"type":53,"value":635},{"type":43,"tag":476,"props":10947,"children":10948},{"style":499},[10949],{"type":53,"value":635},{"type":43,"tag":476,"props":10951,"children":10952},{"style":509},[10953],{"type":53,"value":1272},{"type":43,"tag":476,"props":10955,"children":10956},{"style":499},[10957],{"type":53,"value":602},{"type":43,"tag":476,"props":10959,"children":10960},{"class":478,"line":489},[10961],{"type":43,"tag":476,"props":10962,"children":10963},{"emptyLinePlaceholder":662},[10964],{"type":53,"value":665},{"type":43,"tag":476,"props":10966,"children":10967},{"class":478,"line":505},[10968,10972,10976,10980,10984,10988,10992,10997,11001,11005,11009,11013,11017,11021,11025,11029,11033,11037,11041,11045,11049],{"type":43,"tag":476,"props":10969,"children":10970},{"style":896},[10971],{"type":53,"value":1053},{"type":43,"tag":476,"props":10973,"children":10974},{"style":509},[10975],{"type":53,"value":4528},{"type":43,"tag":476,"props":10977,"children":10978},{"style":499},[10979],{"type":53,"value":1063},{"type":43,"tag":476,"props":10981,"children":10982},{"style":493},[10983],{"type":53,"value":1068},{"type":43,"tag":476,"props":10985,"children":10986},{"style":509},[10987],{"type":53,"value":1014},{"type":43,"tag":476,"props":10989,"children":10990},{"style":499},[10991],{"type":53,"value":332},{"type":43,"tag":476,"props":10993,"children":10994},{"style":1079},[10995],{"type":53,"value":10996},"list",{"type":43,"tag":476,"props":10998,"children":10999},{"style":509},[11000],{"type":53,"value":1087},{"type":43,"tag":476,"props":11002,"children":11003},{"style":499},[11004],{"type":53,"value":1601},{"type":43,"tag":476,"props":11006,"children":11007},{"style":1098},[11008],{"type":53,"value":10889},{"type":43,"tag":476,"props":11010,"children":11011},{"style":499},[11012],{"type":53,"value":1106},{"type":43,"tag":476,"props":11014,"children":11015},{"style":499},[11016],{"type":53,"value":615},{"type":43,"tag":476,"props":11018,"children":11019},{"style":1098},[11020],{"type":53,"value":1349},{"type":43,"tag":476,"props":11022,"children":11023},{"style":499},[11024],{"type":53,"value":1106},{"type":43,"tag":476,"props":11026,"children":11027},{"style":499},[11028],{"type":53,"value":587},{"type":43,"tag":476,"props":11030,"children":11031},{"style":590},[11032],{"type":53,"value":1362},{"type":43,"tag":476,"props":11034,"children":11035},{"style":499},[11036],{"type":53,"value":597},{"type":43,"tag":476,"props":11038,"children":11039},{"style":499},[11040],{"type":53,"value":635},{"type":43,"tag":476,"props":11042,"children":11043},{"style":499},[11044],{"type":53,"value":635},{"type":43,"tag":476,"props":11046,"children":11047},{"style":509},[11048],{"type":53,"value":1272},{"type":43,"tag":476,"props":11050,"children":11051},{"style":499},[11052],{"type":53,"value":602},{"type":43,"tag":44,"props":11054,"children":11056},{"id":11055},"listing-sandboxes-sessions-and-snapshots",[11057],{"type":53,"value":11058},"Listing Sandboxes, Sessions, and Snapshots",{"type":43,"tag":67,"props":11060,"children":11061},{},[11062,11064,11069],{"type":53,"value":11063},"All list APIs use ",{"type":43,"tag":95,"props":11065,"children":11066},{},[11067],{"type":53,"value":11068},"cursor-based pagination",{"type":53,"value":11070}," and return an async-iterable that\nauto-paginates through every page. You can also iterate page-by-page or\ncollect all items at once.",{"type":43,"tag":80,"props":11072,"children":11074},{"id":11073},"sandboxlist",[11075],{"type":43,"tag":58,"props":11076,"children":11078},{"className":11077},[],[11079],{"type":53,"value":11080},"Sandbox.list",{"type":43,"tag":465,"props":11082,"children":11084},{"className":467,"code":11083,"language":469,"meta":470,"style":470},"const result = await Sandbox.list({\n  namePrefix: \"ci-\", \u002F\u002F Filter by name prefix\n  tags: { env: \"staging\" }, \u002F\u002F Filter by tags\n  sortBy: \"createdAt\", \u002F\u002F \"createdAt\" (default), \"name\", or \"statusUpdatedAt\"\n  sortOrder: \"desc\", \u002F\u002F \"asc\" or \"desc\" (default)\n  limit: 50,\n});\n\n\u002F\u002F Per-item async iteration (auto-paginates)\nfor await (const sandbox of result) {\n  console.log(sandbox.name);\n}\n\n\u002F\u002F Per-page iteration\nfor await (const page of result.pages()) {\n  console.log(page.sandboxes.length);\n}\n\n\u002F\u002F Collect everything\nconst all = await result.toArray();\n\n\u002F\u002F Or use the cursor directly\nconst next = result.pagination.next;\n",[11085],{"type":43,"tag":58,"props":11086,"children":11087},{"__ignoreMap":470},[11088,11127,11161,11205,11239,11273,11294,11309,11316,11324,11362,11401,11408,11415,11423,11473,11523,11530,11537,11545,11586,11593,11601],{"type":43,"tag":476,"props":11089,"children":11090},{"class":478,"line":479},[11091,11095,11099,11103,11107,11111,11115,11119,11123],{"type":43,"tag":476,"props":11092,"children":11093},{"style":896},[11094],{"type":53,"value":1053},{"type":43,"tag":476,"props":11096,"children":11097},{"style":509},[11098],{"type":53,"value":4528},{"type":43,"tag":476,"props":11100,"children":11101},{"style":499},[11102],{"type":53,"value":1063},{"type":43,"tag":476,"props":11104,"children":11105},{"style":493},[11106],{"type":53,"value":1068},{"type":43,"tag":476,"props":11108,"children":11109},{"style":509},[11110],{"type":53,"value":1014},{"type":43,"tag":476,"props":11112,"children":11113},{"style":499},[11114],{"type":53,"value":332},{"type":43,"tag":476,"props":11116,"children":11117},{"style":1079},[11118],{"type":53,"value":10996},{"type":43,"tag":476,"props":11120,"children":11121},{"style":509},[11122],{"type":53,"value":1087},{"type":43,"tag":476,"props":11124,"children":11125},{"style":499},[11126],{"type":53,"value":1092},{"type":43,"tag":476,"props":11128,"children":11129},{"class":478,"line":489},[11130,11135,11139,11143,11148,11152,11156],{"type":43,"tag":476,"props":11131,"children":11132},{"style":1098},[11133],{"type":53,"value":11134},"  namePrefix",{"type":43,"tag":476,"props":11136,"children":11137},{"style":499},[11138],{"type":53,"value":1106},{"type":43,"tag":476,"props":11140,"children":11141},{"style":499},[11142],{"type":53,"value":587},{"type":43,"tag":476,"props":11144,"children":11145},{"style":590},[11146],{"type":53,"value":11147},"ci-",{"type":43,"tag":476,"props":11149,"children":11150},{"style":499},[11151],{"type":53,"value":597},{"type":43,"tag":476,"props":11153,"children":11154},{"style":499},[11155],{"type":53,"value":625},{"type":43,"tag":476,"props":11157,"children":11158},{"style":483},[11159],{"type":53,"value":11160}," \u002F\u002F Filter by name prefix\n",{"type":43,"tag":476,"props":11162,"children":11163},{"class":478,"line":505},[11164,11168,11172,11176,11180,11184,11188,11192,11196,11200],{"type":43,"tag":476,"props":11165,"children":11166},{"style":1098},[11167],{"type":53,"value":1336},{"type":43,"tag":476,"props":11169,"children":11170},{"style":499},[11171],{"type":53,"value":1106},{"type":43,"tag":476,"props":11173,"children":11174},{"style":499},[11175],{"type":53,"value":615},{"type":43,"tag":476,"props":11177,"children":11178},{"style":1098},[11179],{"type":53,"value":1349},{"type":43,"tag":476,"props":11181,"children":11182},{"style":499},[11183],{"type":53,"value":1106},{"type":43,"tag":476,"props":11185,"children":11186},{"style":499},[11187],{"type":53,"value":587},{"type":43,"tag":476,"props":11189,"children":11190},{"style":590},[11191],{"type":53,"value":1362},{"type":43,"tag":476,"props":11193,"children":11194},{"style":499},[11195],{"type":53,"value":597},{"type":43,"tag":476,"props":11197,"children":11198},{"style":499},[11199],{"type":53,"value":1192},{"type":43,"tag":476,"props":11201,"children":11202},{"style":483},[11203],{"type":53,"value":11204}," \u002F\u002F Filter by tags\n",{"type":43,"tag":476,"props":11206,"children":11207},{"class":478,"line":519},[11208,11213,11217,11221,11226,11230,11234],{"type":43,"tag":476,"props":11209,"children":11210},{"style":1098},[11211],{"type":53,"value":11212},"  sortBy",{"type":43,"tag":476,"props":11214,"children":11215},{"style":499},[11216],{"type":53,"value":1106},{"type":43,"tag":476,"props":11218,"children":11219},{"style":499},[11220],{"type":53,"value":587},{"type":43,"tag":476,"props":11222,"children":11223},{"style":590},[11224],{"type":53,"value":11225},"createdAt",{"type":43,"tag":476,"props":11227,"children":11228},{"style":499},[11229],{"type":53,"value":597},{"type":43,"tag":476,"props":11231,"children":11232},{"style":499},[11233],{"type":53,"value":625},{"type":43,"tag":476,"props":11235,"children":11236},{"style":483},[11237],{"type":53,"value":11238}," \u002F\u002F \"createdAt\" (default), \"name\", or \"statusUpdatedAt\"\n",{"type":43,"tag":476,"props":11240,"children":11241},{"class":478,"line":532},[11242,11247,11251,11255,11260,11264,11268],{"type":43,"tag":476,"props":11243,"children":11244},{"style":1098},[11245],{"type":53,"value":11246},"  sortOrder",{"type":43,"tag":476,"props":11248,"children":11249},{"style":499},[11250],{"type":53,"value":1106},{"type":43,"tag":476,"props":11252,"children":11253},{"style":499},[11254],{"type":53,"value":587},{"type":43,"tag":476,"props":11256,"children":11257},{"style":590},[11258],{"type":53,"value":11259},"desc",{"type":43,"tag":476,"props":11261,"children":11262},{"style":499},[11263],{"type":53,"value":597},{"type":43,"tag":476,"props":11265,"children":11266},{"style":499},[11267],{"type":53,"value":625},{"type":43,"tag":476,"props":11269,"children":11270},{"style":483},[11271],{"type":53,"value":11272}," \u002F\u002F \"asc\" or \"desc\" (default)\n",{"type":43,"tag":476,"props":11274,"children":11275},{"class":478,"line":545},[11276,11281,11285,11290],{"type":43,"tag":476,"props":11277,"children":11278},{"style":1098},[11279],{"type":53,"value":11280},"  limit",{"type":43,"tag":476,"props":11282,"children":11283},{"style":499},[11284],{"type":53,"value":1106},{"type":43,"tag":476,"props":11286,"children":11287},{"style":1184},[11288],{"type":53,"value":11289}," 50",{"type":43,"tag":476,"props":11291,"children":11292},{"style":499},[11293],{"type":53,"value":296},{"type":43,"tag":476,"props":11295,"children":11296},{"class":478,"line":558},[11297,11301,11305],{"type":43,"tag":476,"props":11298,"children":11299},{"style":499},[11300],{"type":53,"value":577},{"type":43,"tag":476,"props":11302,"children":11303},{"style":509},[11304],{"type":53,"value":1272},{"type":43,"tag":476,"props":11306,"children":11307},{"style":499},[11308],{"type":53,"value":602},{"type":43,"tag":476,"props":11310,"children":11311},{"class":478,"line":571},[11312],{"type":43,"tag":476,"props":11313,"children":11314},{"emptyLinePlaceholder":662},[11315],{"type":53,"value":665},{"type":43,"tag":476,"props":11317,"children":11318},{"class":478,"line":605},[11319],{"type":43,"tag":476,"props":11320,"children":11321},{"style":483},[11322],{"type":53,"value":11323},"\u002F\u002F Per-item async iteration (auto-paginates)\n",{"type":43,"tag":476,"props":11325,"children":11326},{"class":478,"line":658},[11327,11332,11336,11340,11344,11348,11353,11358],{"type":43,"tag":476,"props":11328,"children":11329},{"style":493},[11330],{"type":53,"value":11331},"for",{"type":43,"tag":476,"props":11333,"children":11334},{"style":493},[11335],{"type":53,"value":1068},{"type":43,"tag":476,"props":11337,"children":11338},{"style":509},[11339],{"type":53,"value":1782},{"type":43,"tag":476,"props":11341,"children":11342},{"style":896},[11343],{"type":53,"value":1053},{"type":43,"tag":476,"props":11345,"children":11346},{"style":509},[11347],{"type":53,"value":1058},{"type":43,"tag":476,"props":11349,"children":11350},{"style":499},[11351],{"type":53,"value":11352},"of",{"type":43,"tag":476,"props":11354,"children":11355},{"style":509},[11356],{"type":53,"value":11357}," result) ",{"type":43,"tag":476,"props":11359,"children":11360},{"style":499},[11361],{"type":53,"value":1092},{"type":43,"tag":476,"props":11363,"children":11364},{"class":478,"line":668},[11365,11369,11373,11377,11381,11385,11389,11393,11397],{"type":43,"tag":476,"props":11366,"children":11367},{"style":509},[11368],{"type":53,"value":4640},{"type":43,"tag":476,"props":11370,"children":11371},{"style":499},[11372],{"type":53,"value":332},{"type":43,"tag":476,"props":11374,"children":11375},{"style":1079},[11376],{"type":53,"value":1513},{"type":43,"tag":476,"props":11378,"children":11379},{"style":1098},[11380],{"type":53,"value":1087},{"type":43,"tag":476,"props":11382,"children":11383},{"style":509},[11384],{"type":53,"value":4},{"type":43,"tag":476,"props":11386,"children":11387},{"style":499},[11388],{"type":53,"value":332},{"type":43,"tag":476,"props":11390,"children":11391},{"style":509},[11392],{"type":53,"value":219},{"type":43,"tag":476,"props":11394,"children":11395},{"style":1098},[11396],{"type":53,"value":1272},{"type":43,"tag":476,"props":11398,"children":11399},{"style":499},[11400],{"type":53,"value":602},{"type":43,"tag":476,"props":11402,"children":11403},{"class":478,"line":677},[11404],{"type":43,"tag":476,"props":11405,"children":11406},{"style":499},[11407],{"type":53,"value":4497},{"type":43,"tag":476,"props":11409,"children":11410},{"class":478,"line":694},[11411],{"type":43,"tag":476,"props":11412,"children":11413},{"emptyLinePlaceholder":662},[11414],{"type":53,"value":665},{"type":43,"tag":476,"props":11416,"children":11417},{"class":478,"line":707},[11418],{"type":43,"tag":476,"props":11419,"children":11420},{"style":483},[11421],{"type":53,"value":11422},"\u002F\u002F Per-page iteration\n",{"type":43,"tag":476,"props":11424,"children":11425},{"class":478,"line":720},[11426,11430,11434,11438,11442,11447,11451,11455,11459,11464,11469],{"type":43,"tag":476,"props":11427,"children":11428},{"style":493},[11429],{"type":53,"value":11331},{"type":43,"tag":476,"props":11431,"children":11432},{"style":493},[11433],{"type":53,"value":1068},{"type":43,"tag":476,"props":11435,"children":11436},{"style":509},[11437],{"type":53,"value":1782},{"type":43,"tag":476,"props":11439,"children":11440},{"style":896},[11441],{"type":53,"value":1053},{"type":43,"tag":476,"props":11443,"children":11444},{"style":509},[11445],{"type":53,"value":11446}," page ",{"type":43,"tag":476,"props":11448,"children":11449},{"style":499},[11450],{"type":53,"value":11352},{"type":43,"tag":476,"props":11452,"children":11453},{"style":509},[11454],{"type":53,"value":4679},{"type":43,"tag":476,"props":11456,"children":11457},{"style":499},[11458],{"type":53,"value":332},{"type":43,"tag":476,"props":11460,"children":11461},{"style":1079},[11462],{"type":53,"value":11463},"pages",{"type":43,"tag":476,"props":11465,"children":11466},{"style":509},[11467],{"type":53,"value":11468},"()) ",{"type":43,"tag":476,"props":11470,"children":11471},{"style":499},[11472],{"type":53,"value":1092},{"type":43,"tag":476,"props":11474,"children":11475},{"class":478,"line":733},[11476,11480,11484,11488,11492,11497,11501,11506,11510,11515,11519],{"type":43,"tag":476,"props":11477,"children":11478},{"style":509},[11479],{"type":53,"value":4640},{"type":43,"tag":476,"props":11481,"children":11482},{"style":499},[11483],{"type":53,"value":332},{"type":43,"tag":476,"props":11485,"children":11486},{"style":1079},[11487],{"type":53,"value":1513},{"type":43,"tag":476,"props":11489,"children":11490},{"style":1098},[11491],{"type":53,"value":1087},{"type":43,"tag":476,"props":11493,"children":11494},{"style":509},[11495],{"type":53,"value":11496},"page",{"type":43,"tag":476,"props":11498,"children":11499},{"style":499},[11500],{"type":53,"value":332},{"type":43,"tag":476,"props":11502,"children":11503},{"style":509},[11504],{"type":53,"value":11505},"sandboxes",{"type":43,"tag":476,"props":11507,"children":11508},{"style":499},[11509],{"type":53,"value":332},{"type":43,"tag":476,"props":11511,"children":11512},{"style":509},[11513],{"type":53,"value":11514},"length",{"type":43,"tag":476,"props":11516,"children":11517},{"style":1098},[11518],{"type":53,"value":1272},{"type":43,"tag":476,"props":11520,"children":11521},{"style":499},[11522],{"type":53,"value":602},{"type":43,"tag":476,"props":11524,"children":11525},{"class":478,"line":761},[11526],{"type":43,"tag":476,"props":11527,"children":11528},{"style":499},[11529],{"type":53,"value":4497},{"type":43,"tag":476,"props":11531,"children":11532},{"class":478,"line":769},[11533],{"type":43,"tag":476,"props":11534,"children":11535},{"emptyLinePlaceholder":662},[11536],{"type":53,"value":665},{"type":43,"tag":476,"props":11538,"children":11539},{"class":478,"line":778},[11540],{"type":43,"tag":476,"props":11541,"children":11542},{"style":483},[11543],{"type":53,"value":11544},"\u002F\u002F Collect everything\n",{"type":43,"tag":476,"props":11546,"children":11547},{"class":478,"line":820},[11548,11552,11557,11561,11565,11569,11573,11578,11582],{"type":43,"tag":476,"props":11549,"children":11550},{"style":896},[11551],{"type":53,"value":1053},{"type":43,"tag":476,"props":11553,"children":11554},{"style":509},[11555],{"type":53,"value":11556}," all ",{"type":43,"tag":476,"props":11558,"children":11559},{"style":499},[11560],{"type":53,"value":1063},{"type":43,"tag":476,"props":11562,"children":11563},{"style":493},[11564],{"type":53,"value":1068},{"type":43,"tag":476,"props":11566,"children":11567},{"style":509},[11568],{"type":53,"value":4679},{"type":43,"tag":476,"props":11570,"children":11571},{"style":499},[11572],{"type":53,"value":332},{"type":43,"tag":476,"props":11574,"children":11575},{"style":1079},[11576],{"type":53,"value":11577},"toArray",{"type":43,"tag":476,"props":11579,"children":11580},{"style":509},[11581],{"type":53,"value":4370},{"type":43,"tag":476,"props":11583,"children":11584},{"style":499},[11585],{"type":53,"value":602},{"type":43,"tag":476,"props":11587,"children":11588},{"class":478,"line":828},[11589],{"type":43,"tag":476,"props":11590,"children":11591},{"emptyLinePlaceholder":662},[11592],{"type":53,"value":665},{"type":43,"tag":476,"props":11594,"children":11595},{"class":478,"line":837},[11596],{"type":43,"tag":476,"props":11597,"children":11598},{"style":483},[11599],{"type":53,"value":11600},"\u002F\u002F Or use the cursor directly\n",{"type":43,"tag":476,"props":11602,"children":11603},{"class":478,"line":7233},[11604,11608,11613,11617,11621,11625,11630,11634,11639],{"type":43,"tag":476,"props":11605,"children":11606},{"style":896},[11607],{"type":53,"value":1053},{"type":43,"tag":476,"props":11609,"children":11610},{"style":509},[11611],{"type":53,"value":11612}," next ",{"type":43,"tag":476,"props":11614,"children":11615},{"style":499},[11616],{"type":53,"value":1063},{"type":43,"tag":476,"props":11618,"children":11619},{"style":509},[11620],{"type":53,"value":4679},{"type":43,"tag":476,"props":11622,"children":11623},{"style":499},[11624],{"type":53,"value":332},{"type":43,"tag":476,"props":11626,"children":11627},{"style":509},[11628],{"type":53,"value":11629},"pagination",{"type":43,"tag":476,"props":11631,"children":11632},{"style":499},[11633],{"type":53,"value":332},{"type":43,"tag":476,"props":11635,"children":11636},{"style":509},[11637],{"type":53,"value":11638},"next",{"type":43,"tag":476,"props":11640,"children":11641},{"style":499},[11642],{"type":53,"value":602},{"type":43,"tag":80,"props":11644,"children":11646},{"id":11645},"sandboxlistsessions-and-sandboxlistsnapshots",[11647,11652,11653],{"type":43,"tag":58,"props":11648,"children":11650},{"className":11649},[],[11651],{"type":53,"value":309},{"type":53,"value":3457},{"type":43,"tag":58,"props":11654,"children":11656},{"className":11655},[],[11657],{"type":53,"value":316},{"type":43,"tag":465,"props":11659,"children":11661},{"className":467,"code":11660,"language":469,"meta":470,"style":470},"\u002F\u002F List all VM sessions for this sandbox\nconst sessions = await sandbox.listSessions();\nfor await (const session of sessions) {\n  console.log(session.sessionId, session.status);\n}\n\n\u002F\u002F List snapshots belonging to this sandbox\nconst snapshots = await sandbox.listSnapshots();\nfor await (const snapshot of snapshots) {\n  console.log(snapshot.snapshotId, snapshot.status);\n}\n",[11662],{"type":43,"tag":58,"props":11663,"children":11664},{"__ignoreMap":470},[11665,11673,11714,11751,11810,11817,11824,11832,11873,11910,11967],{"type":43,"tag":476,"props":11666,"children":11667},{"class":478,"line":479},[11668],{"type":43,"tag":476,"props":11669,"children":11670},{"style":483},[11671],{"type":53,"value":11672},"\u002F\u002F List all VM sessions for this sandbox\n",{"type":43,"tag":476,"props":11674,"children":11675},{"class":478,"line":489},[11676,11680,11685,11689,11693,11697,11701,11706,11710],{"type":43,"tag":476,"props":11677,"children":11678},{"style":896},[11679],{"type":53,"value":1053},{"type":43,"tag":476,"props":11681,"children":11682},{"style":509},[11683],{"type":53,"value":11684}," sessions ",{"type":43,"tag":476,"props":11686,"children":11687},{"style":499},[11688],{"type":53,"value":1063},{"type":43,"tag":476,"props":11690,"children":11691},{"style":493},[11692],{"type":53,"value":1068},{"type":43,"tag":476,"props":11694,"children":11695},{"style":509},[11696],{"type":53,"value":4387},{"type":43,"tag":476,"props":11698,"children":11699},{"style":499},[11700],{"type":53,"value":332},{"type":43,"tag":476,"props":11702,"children":11703},{"style":1079},[11704],{"type":53,"value":11705},"listSessions",{"type":43,"tag":476,"props":11707,"children":11708},{"style":509},[11709],{"type":53,"value":4370},{"type":43,"tag":476,"props":11711,"children":11712},{"style":499},[11713],{"type":53,"value":602},{"type":43,"tag":476,"props":11715,"children":11716},{"class":478,"line":505},[11717,11721,11725,11729,11733,11738,11742,11747],{"type":43,"tag":476,"props":11718,"children":11719},{"style":493},[11720],{"type":53,"value":11331},{"type":43,"tag":476,"props":11722,"children":11723},{"style":493},[11724],{"type":53,"value":1068},{"type":43,"tag":476,"props":11726,"children":11727},{"style":509},[11728],{"type":53,"value":1782},{"type":43,"tag":476,"props":11730,"children":11731},{"style":896},[11732],{"type":53,"value":1053},{"type":43,"tag":476,"props":11734,"children":11735},{"style":509},[11736],{"type":53,"value":11737}," session ",{"type":43,"tag":476,"props":11739,"children":11740},{"style":499},[11741],{"type":53,"value":11352},{"type":43,"tag":476,"props":11743,"children":11744},{"style":509},[11745],{"type":53,"value":11746}," sessions) ",{"type":43,"tag":476,"props":11748,"children":11749},{"style":499},[11750],{"type":53,"value":1092},{"type":43,"tag":476,"props":11752,"children":11753},{"class":478,"line":519},[11754,11758,11762,11766,11770,11775,11779,11784,11788,11793,11797,11802,11806],{"type":43,"tag":476,"props":11755,"children":11756},{"style":509},[11757],{"type":53,"value":4640},{"type":43,"tag":476,"props":11759,"children":11760},{"style":499},[11761],{"type":53,"value":332},{"type":43,"tag":476,"props":11763,"children":11764},{"style":1079},[11765],{"type":53,"value":1513},{"type":43,"tag":476,"props":11767,"children":11768},{"style":1098},[11769],{"type":53,"value":1087},{"type":43,"tag":476,"props":11771,"children":11772},{"style":509},[11773],{"type":53,"value":11774},"session",{"type":43,"tag":476,"props":11776,"children":11777},{"style":499},[11778],{"type":53,"value":332},{"type":43,"tag":476,"props":11780,"children":11781},{"style":509},[11782],{"type":53,"value":11783},"sessionId",{"type":43,"tag":476,"props":11785,"children":11786},{"style":499},[11787],{"type":53,"value":625},{"type":43,"tag":476,"props":11789,"children":11790},{"style":509},[11791],{"type":53,"value":11792}," session",{"type":43,"tag":476,"props":11794,"children":11795},{"style":499},[11796],{"type":53,"value":332},{"type":43,"tag":476,"props":11798,"children":11799},{"style":509},[11800],{"type":53,"value":11801},"status",{"type":43,"tag":476,"props":11803,"children":11804},{"style":1098},[11805],{"type":53,"value":1272},{"type":43,"tag":476,"props":11807,"children":11808},{"style":499},[11809],{"type":53,"value":602},{"type":43,"tag":476,"props":11811,"children":11812},{"class":478,"line":532},[11813],{"type":43,"tag":476,"props":11814,"children":11815},{"style":499},[11816],{"type":53,"value":4497},{"type":43,"tag":476,"props":11818,"children":11819},{"class":478,"line":545},[11820],{"type":43,"tag":476,"props":11821,"children":11822},{"emptyLinePlaceholder":662},[11823],{"type":53,"value":665},{"type":43,"tag":476,"props":11825,"children":11826},{"class":478,"line":558},[11827],{"type":43,"tag":476,"props":11828,"children":11829},{"style":483},[11830],{"type":53,"value":11831},"\u002F\u002F List snapshots belonging to this sandbox\n",{"type":43,"tag":476,"props":11833,"children":11834},{"class":478,"line":571},[11835,11839,11844,11848,11852,11856,11860,11865,11869],{"type":43,"tag":476,"props":11836,"children":11837},{"style":896},[11838],{"type":53,"value":1053},{"type":43,"tag":476,"props":11840,"children":11841},{"style":509},[11842],{"type":53,"value":11843}," snapshots ",{"type":43,"tag":476,"props":11845,"children":11846},{"style":499},[11847],{"type":53,"value":1063},{"type":43,"tag":476,"props":11849,"children":11850},{"style":493},[11851],{"type":53,"value":1068},{"type":43,"tag":476,"props":11853,"children":11854},{"style":509},[11855],{"type":53,"value":4387},{"type":43,"tag":476,"props":11857,"children":11858},{"style":499},[11859],{"type":53,"value":332},{"type":43,"tag":476,"props":11861,"children":11862},{"style":1079},[11863],{"type":53,"value":11864},"listSnapshots",{"type":43,"tag":476,"props":11866,"children":11867},{"style":509},[11868],{"type":53,"value":4370},{"type":43,"tag":476,"props":11870,"children":11871},{"style":499},[11872],{"type":53,"value":602},{"type":43,"tag":476,"props":11874,"children":11875},{"class":478,"line":605},[11876,11880,11884,11888,11892,11897,11901,11906],{"type":43,"tag":476,"props":11877,"children":11878},{"style":493},[11879],{"type":53,"value":11331},{"type":43,"tag":476,"props":11881,"children":11882},{"style":493},[11883],{"type":53,"value":1068},{"type":43,"tag":476,"props":11885,"children":11886},{"style":509},[11887],{"type":53,"value":1782},{"type":43,"tag":476,"props":11889,"children":11890},{"style":896},[11891],{"type":53,"value":1053},{"type":43,"tag":476,"props":11893,"children":11894},{"style":509},[11895],{"type":53,"value":11896}," snapshot ",{"type":43,"tag":476,"props":11898,"children":11899},{"style":499},[11900],{"type":53,"value":11352},{"type":43,"tag":476,"props":11902,"children":11903},{"style":509},[11904],{"type":53,"value":11905}," snapshots) ",{"type":43,"tag":476,"props":11907,"children":11908},{"style":499},[11909],{"type":53,"value":1092},{"type":43,"tag":476,"props":11911,"children":11912},{"class":478,"line":658},[11913,11917,11921,11925,11929,11933,11937,11942,11946,11951,11955,11959,11963],{"type":43,"tag":476,"props":11914,"children":11915},{"style":509},[11916],{"type":53,"value":4640},{"type":43,"tag":476,"props":11918,"children":11919},{"style":499},[11920],{"type":53,"value":332},{"type":43,"tag":476,"props":11922,"children":11923},{"style":1079},[11924],{"type":53,"value":1513},{"type":43,"tag":476,"props":11926,"children":11927},{"style":1098},[11928],{"type":53,"value":1087},{"type":43,"tag":476,"props":11930,"children":11931},{"style":509},[11932],{"type":53,"value":3335},{"type":43,"tag":476,"props":11934,"children":11935},{"style":499},[11936],{"type":53,"value":332},{"type":43,"tag":476,"props":11938,"children":11939},{"style":509},[11940],{"type":53,"value":11941},"snapshotId",{"type":43,"tag":476,"props":11943,"children":11944},{"style":499},[11945],{"type":53,"value":625},{"type":43,"tag":476,"props":11947,"children":11948},{"style":509},[11949],{"type":53,"value":11950}," snapshot",{"type":43,"tag":476,"props":11952,"children":11953},{"style":499},[11954],{"type":53,"value":332},{"type":43,"tag":476,"props":11956,"children":11957},{"style":509},[11958],{"type":53,"value":11801},{"type":43,"tag":476,"props":11960,"children":11961},{"style":1098},[11962],{"type":53,"value":1272},{"type":43,"tag":476,"props":11964,"children":11965},{"style":499},[11966],{"type":53,"value":602},{"type":43,"tag":476,"props":11968,"children":11969},{"class":478,"line":668},[11970],{"type":43,"tag":476,"props":11971,"children":11972},{"style":499},[11973],{"type":53,"value":4497},{"type":43,"tag":80,"props":11975,"children":11977},{"id":11976},"snapshotlist",[11978],{"type":43,"tag":58,"props":11979,"children":11981},{"className":11980},[],[11982],{"type":53,"value":11983},"Snapshot.list",{"type":43,"tag":465,"props":11985,"children":11987},{"className":467,"code":11986,"language":469,"meta":470,"style":470},"const snapshots = await Snapshot.list({\n  name: \"my-dev-env\", \u002F\u002F Filter by sandbox name\n  sortOrder: \"desc\",\n  limit: 50,\n});\nfor await (const snapshot of snapshots) {\n  console.log(snapshot.snapshotId, snapshot.status);\n}\n",[11988],{"type":43,"tag":58,"props":11989,"children":11990},{"__ignoreMap":470},[11991,12031,12063,12090,12109,12124,12159,12214],{"type":43,"tag":476,"props":11992,"children":11993},{"class":478,"line":479},[11994,11998,12002,12006,12010,12015,12019,12023,12027],{"type":43,"tag":476,"props":11995,"children":11996},{"style":896},[11997],{"type":53,"value":1053},{"type":43,"tag":476,"props":11999,"children":12000},{"style":509},[12001],{"type":53,"value":11843},{"type":43,"tag":476,"props":12003,"children":12004},{"style":499},[12005],{"type":53,"value":1063},{"type":43,"tag":476,"props":12007,"children":12008},{"style":493},[12009],{"type":53,"value":1068},{"type":43,"tag":476,"props":12011,"children":12012},{"style":509},[12013],{"type":53,"value":12014}," Snapshot",{"type":43,"tag":476,"props":12016,"children":12017},{"style":499},[12018],{"type":53,"value":332},{"type":43,"tag":476,"props":12020,"children":12021},{"style":1079},[12022],{"type":53,"value":10996},{"type":43,"tag":476,"props":12024,"children":12025},{"style":509},[12026],{"type":53,"value":1087},{"type":43,"tag":476,"props":12028,"children":12029},{"style":499},[12030],{"type":53,"value":1092},{"type":43,"tag":476,"props":12032,"children":12033},{"class":478,"line":489},[12034,12038,12042,12046,12050,12054,12058],{"type":43,"tag":476,"props":12035,"children":12036},{"style":1098},[12037],{"type":53,"value":1101},{"type":43,"tag":476,"props":12039,"children":12040},{"style":499},[12041],{"type":53,"value":1106},{"type":43,"tag":476,"props":12043,"children":12044},{"style":499},[12045],{"type":53,"value":587},{"type":43,"tag":476,"props":12047,"children":12048},{"style":590},[12049],{"type":53,"value":1115},{"type":43,"tag":476,"props":12051,"children":12052},{"style":499},[12053],{"type":53,"value":597},{"type":43,"tag":476,"props":12055,"children":12056},{"style":499},[12057],{"type":53,"value":625},{"type":43,"tag":476,"props":12059,"children":12060},{"style":483},[12061],{"type":53,"value":12062}," \u002F\u002F Filter by sandbox name\n",{"type":43,"tag":476,"props":12064,"children":12065},{"class":478,"line":505},[12066,12070,12074,12078,12082,12086],{"type":43,"tag":476,"props":12067,"children":12068},{"style":1098},[12069],{"type":53,"value":11246},{"type":43,"tag":476,"props":12071,"children":12072},{"style":499},[12073],{"type":53,"value":1106},{"type":43,"tag":476,"props":12075,"children":12076},{"style":499},[12077],{"type":53,"value":587},{"type":43,"tag":476,"props":12079,"children":12080},{"style":590},[12081],{"type":53,"value":11259},{"type":43,"tag":476,"props":12083,"children":12084},{"style":499},[12085],{"type":53,"value":597},{"type":43,"tag":476,"props":12087,"children":12088},{"style":499},[12089],{"type":53,"value":296},{"type":43,"tag":476,"props":12091,"children":12092},{"class":478,"line":519},[12093,12097,12101,12105],{"type":43,"tag":476,"props":12094,"children":12095},{"style":1098},[12096],{"type":53,"value":11280},{"type":43,"tag":476,"props":12098,"children":12099},{"style":499},[12100],{"type":53,"value":1106},{"type":43,"tag":476,"props":12102,"children":12103},{"style":1184},[12104],{"type":53,"value":11289},{"type":43,"tag":476,"props":12106,"children":12107},{"style":499},[12108],{"type":53,"value":296},{"type":43,"tag":476,"props":12110,"children":12111},{"class":478,"line":532},[12112,12116,12120],{"type":43,"tag":476,"props":12113,"children":12114},{"style":499},[12115],{"type":53,"value":577},{"type":43,"tag":476,"props":12117,"children":12118},{"style":509},[12119],{"type":53,"value":1272},{"type":43,"tag":476,"props":12121,"children":12122},{"style":499},[12123],{"type":53,"value":602},{"type":43,"tag":476,"props":12125,"children":12126},{"class":478,"line":545},[12127,12131,12135,12139,12143,12147,12151,12155],{"type":43,"tag":476,"props":12128,"children":12129},{"style":493},[12130],{"type":53,"value":11331},{"type":43,"tag":476,"props":12132,"children":12133},{"style":493},[12134],{"type":53,"value":1068},{"type":43,"tag":476,"props":12136,"children":12137},{"style":509},[12138],{"type":53,"value":1782},{"type":43,"tag":476,"props":12140,"children":12141},{"style":896},[12142],{"type":53,"value":1053},{"type":43,"tag":476,"props":12144,"children":12145},{"style":509},[12146],{"type":53,"value":11896},{"type":43,"tag":476,"props":12148,"children":12149},{"style":499},[12150],{"type":53,"value":11352},{"type":43,"tag":476,"props":12152,"children":12153},{"style":509},[12154],{"type":53,"value":11905},{"type":43,"tag":476,"props":12156,"children":12157},{"style":499},[12158],{"type":53,"value":1092},{"type":43,"tag":476,"props":12160,"children":12161},{"class":478,"line":558},[12162,12166,12170,12174,12178,12182,12186,12190,12194,12198,12202,12206,12210],{"type":43,"tag":476,"props":12163,"children":12164},{"style":509},[12165],{"type":53,"value":4640},{"type":43,"tag":476,"props":12167,"children":12168},{"style":499},[12169],{"type":53,"value":332},{"type":43,"tag":476,"props":12171,"children":12172},{"style":1079},[12173],{"type":53,"value":1513},{"type":43,"tag":476,"props":12175,"children":12176},{"style":1098},[12177],{"type":53,"value":1087},{"type":43,"tag":476,"props":12179,"children":12180},{"style":509},[12181],{"type":53,"value":3335},{"type":43,"tag":476,"props":12183,"children":12184},{"style":499},[12185],{"type":53,"value":332},{"type":43,"tag":476,"props":12187,"children":12188},{"style":509},[12189],{"type":53,"value":11941},{"type":43,"tag":476,"props":12191,"children":12192},{"style":499},[12193],{"type":53,"value":625},{"type":43,"tag":476,"props":12195,"children":12196},{"style":509},[12197],{"type":53,"value":11950},{"type":43,"tag":476,"props":12199,"children":12200},{"style":499},[12201],{"type":53,"value":332},{"type":43,"tag":476,"props":12203,"children":12204},{"style":509},[12205],{"type":53,"value":11801},{"type":43,"tag":476,"props":12207,"children":12208},{"style":1098},[12209],{"type":53,"value":1272},{"type":43,"tag":476,"props":12211,"children":12212},{"style":499},[12213],{"type":53,"value":602},{"type":43,"tag":476,"props":12215,"children":12216},{"class":478,"line":571},[12217],{"type":43,"tag":476,"props":12218,"children":12219},{"style":499},[12220],{"type":53,"value":4497},{"type":43,"tag":44,"props":12222,"children":12224},{"id":12223},"sessions",[12225],{"type":53,"value":12226},"Sessions",{"type":43,"tag":67,"props":12228,"children":12229},{},[12230,12231,12235],{"type":53,"value":246},{"type":43,"tag":95,"props":12232,"children":12233},{},[12234],{"type":53,"value":251},{"type":53,"value":12236}," is a single running VM instance inside a sandbox. You typically\ndo not interact with sessions directly — the SDK creates and resumes them for\nyou — but you can inspect the current one.",{"type":43,"tag":465,"props":12238,"children":12240},{"className":467,"code":12239,"language":469,"meta":470,"style":470},"const session = sandbox.currentSession();\nconsole.log(session.sessionId);\nconsole.log(session.status); \u002F\u002F \"pending\" | \"running\" | \"stopping\" | \"stopped\" | ...\n",[12241],{"type":43,"tag":58,"props":12242,"children":12243},{"__ignoreMap":470},[12244,12280,12313],{"type":43,"tag":476,"props":12245,"children":12246},{"class":478,"line":479},[12247,12251,12255,12259,12263,12267,12272,12276],{"type":43,"tag":476,"props":12248,"children":12249},{"style":896},[12250],{"type":53,"value":1053},{"type":43,"tag":476,"props":12252,"children":12253},{"style":509},[12254],{"type":53,"value":11737},{"type":43,"tag":476,"props":12256,"children":12257},{"style":499},[12258],{"type":53,"value":1063},{"type":43,"tag":476,"props":12260,"children":12261},{"style":509},[12262],{"type":53,"value":4387},{"type":43,"tag":476,"props":12264,"children":12265},{"style":499},[12266],{"type":53,"value":332},{"type":43,"tag":476,"props":12268,"children":12269},{"style":1079},[12270],{"type":53,"value":12271},"currentSession",{"type":43,"tag":476,"props":12273,"children":12274},{"style":509},[12275],{"type":53,"value":4370},{"type":43,"tag":476,"props":12277,"children":12278},{"style":499},[12279],{"type":53,"value":602},{"type":43,"tag":476,"props":12281,"children":12282},{"class":478,"line":489},[12283,12287,12291,12295,12300,12304,12309],{"type":43,"tag":476,"props":12284,"children":12285},{"style":509},[12286],{"type":53,"value":1504},{"type":43,"tag":476,"props":12288,"children":12289},{"style":499},[12290],{"type":53,"value":332},{"type":43,"tag":476,"props":12292,"children":12293},{"style":1079},[12294],{"type":53,"value":1513},{"type":43,"tag":476,"props":12296,"children":12297},{"style":509},[12298],{"type":53,"value":12299},"(session",{"type":43,"tag":476,"props":12301,"children":12302},{"style":499},[12303],{"type":53,"value":332},{"type":43,"tag":476,"props":12305,"children":12306},{"style":509},[12307],{"type":53,"value":12308},"sessionId)",{"type":43,"tag":476,"props":12310,"children":12311},{"style":499},[12312],{"type":53,"value":602},{"type":43,"tag":476,"props":12314,"children":12315},{"class":478,"line":505},[12316,12320,12324,12328,12332,12336,12341,12345],{"type":43,"tag":476,"props":12317,"children":12318},{"style":509},[12319],{"type":53,"value":1504},{"type":43,"tag":476,"props":12321,"children":12322},{"style":499},[12323],{"type":53,"value":332},{"type":43,"tag":476,"props":12325,"children":12326},{"style":1079},[12327],{"type":53,"value":1513},{"type":43,"tag":476,"props":12329,"children":12330},{"style":509},[12331],{"type":53,"value":12299},{"type":43,"tag":476,"props":12333,"children":12334},{"style":499},[12335],{"type":53,"value":332},{"type":43,"tag":476,"props":12337,"children":12338},{"style":509},[12339],{"type":53,"value":12340},"status)",{"type":43,"tag":476,"props":12342,"children":12343},{"style":499},[12344],{"type":53,"value":870},{"type":43,"tag":476,"props":12346,"children":12347},{"style":483},[12348],{"type":53,"value":12349}," \u002F\u002F \"pending\" | \"running\" | \"stopping\" | \"stopped\" | ...\n",{"type":43,"tag":44,"props":12351,"children":12353},{"id":12352},"snapshots",[12354],{"type":53,"value":12355},"Snapshots",{"type":43,"tag":67,"props":12357,"children":12358},{},[12359],{"type":53,"value":12360},"Snapshots save the entire sandbox filesystem to be reused later, for any\nnumber of sandboxes.",{"type":43,"tag":80,"props":12362,"children":12364},{"id":12363},"create-a-snapshot",[12365],{"type":53,"value":12366},"Create a Snapshot",{"type":43,"tag":465,"props":12368,"children":12370},{"className":467,"code":12369,"language":469,"meta":470,"style":470},"const sandbox = await Sandbox.create({ runtime: \"node24\" });\nawait sandbox.runCommand(\"npm\", [\"install\"]);\n\n\u002F\u002F Create snapshot (stops the sandbox)\nconst snapshot = await sandbox.snapshot({\n  expiration: ms(\"14d\"), \u002F\u002F Default: 30 days, use 0 for no expiration\n});\nconsole.log(\"Snapshot ID:\", snapshot.snapshotId);\n",[12371],{"type":43,"tag":58,"props":12372,"children":12373},{"__ignoreMap":470},[12374,12446,12509,12516,12524,12563,12608,12623],{"type":43,"tag":476,"props":12375,"children":12376},{"class":478,"line":479},[12377,12381,12385,12389,12393,12397,12401,12405,12409,12413,12418,12422,12426,12430,12434,12438,12442],{"type":43,"tag":476,"props":12378,"children":12379},{"style":896},[12380],{"type":53,"value":1053},{"type":43,"tag":476,"props":12382,"children":12383},{"style":509},[12384],{"type":53,"value":1058},{"type":43,"tag":476,"props":12386,"children":12387},{"style":499},[12388],{"type":53,"value":1063},{"type":43,"tag":476,"props":12390,"children":12391},{"style":493},[12392],{"type":53,"value":1068},{"type":43,"tag":476,"props":12394,"children":12395},{"style":509},[12396],{"type":53,"value":1014},{"type":43,"tag":476,"props":12398,"children":12399},{"style":499},[12400],{"type":53,"value":332},{"type":43,"tag":476,"props":12402,"children":12403},{"style":1079},[12404],{"type":53,"value":1082},{"type":43,"tag":476,"props":12406,"children":12407},{"style":509},[12408],{"type":53,"value":1087},{"type":43,"tag":476,"props":12410,"children":12411},{"style":499},[12412],{"type":53,"value":1601},{"type":43,"tag":476,"props":12414,"children":12415},{"style":1098},[12416],{"type":53,"value":12417}," runtime",{"type":43,"tag":476,"props":12419,"children":12420},{"style":499},[12421],{"type":53,"value":1106},{"type":43,"tag":476,"props":12423,"children":12424},{"style":499},[12425],{"type":53,"value":587},{"type":43,"tag":476,"props":12427,"children":12428},{"style":590},[12429],{"type":53,"value":937},{"type":43,"tag":476,"props":12431,"children":12432},{"style":499},[12433],{"type":53,"value":597},{"type":43,"tag":476,"props":12435,"children":12436},{"style":499},[12437],{"type":53,"value":635},{"type":43,"tag":476,"props":12439,"children":12440},{"style":509},[12441],{"type":53,"value":1272},{"type":43,"tag":476,"props":12443,"children":12444},{"style":499},[12445],{"type":53,"value":602},{"type":43,"tag":476,"props":12447,"children":12448},{"class":478,"line":489},[12449,12453,12457,12461,12465,12469,12473,12477,12481,12485,12489,12493,12497,12501,12505],{"type":43,"tag":476,"props":12450,"children":12451},{"style":493},[12452],{"type":53,"value":3642},{"type":43,"tag":476,"props":12454,"children":12455},{"style":509},[12456],{"type":53,"value":4387},{"type":43,"tag":476,"props":12458,"children":12459},{"style":499},[12460],{"type":53,"value":332},{"type":43,"tag":476,"props":12462,"children":12463},{"style":1079},[12464],{"type":53,"value":259},{"type":43,"tag":476,"props":12466,"children":12467},{"style":509},[12468],{"type":53,"value":1087},{"type":43,"tag":476,"props":12470,"children":12471},{"style":499},[12472],{"type":53,"value":597},{"type":43,"tag":476,"props":12474,"children":12475},{"style":590},[12476],{"type":53,"value":1954},{"type":43,"tag":476,"props":12478,"children":12479},{"style":499},[12480],{"type":53,"value":597},{"type":43,"tag":476,"props":12482,"children":12483},{"style":499},[12484],{"type":53,"value":625},{"type":43,"tag":476,"props":12486,"children":12487},{"style":509},[12488],{"type":53,"value":1214},{"type":43,"tag":476,"props":12490,"children":12491},{"style":499},[12492],{"type":53,"value":597},{"type":43,"tag":476,"props":12494,"children":12495},{"style":590},[12496],{"type":53,"value":1975},{"type":43,"tag":476,"props":12498,"children":12499},{"style":499},[12500],{"type":53,"value":597},{"type":43,"tag":476,"props":12502,"children":12503},{"style":509},[12504],{"type":53,"value":1984},{"type":43,"tag":476,"props":12506,"children":12507},{"style":499},[12508],{"type":53,"value":602},{"type":43,"tag":476,"props":12510,"children":12511},{"class":478,"line":505},[12512],{"type":43,"tag":476,"props":12513,"children":12514},{"emptyLinePlaceholder":662},[12515],{"type":53,"value":665},{"type":43,"tag":476,"props":12517,"children":12518},{"class":478,"line":519},[12519],{"type":43,"tag":476,"props":12520,"children":12521},{"style":483},[12522],{"type":53,"value":12523},"\u002F\u002F Create snapshot (stops the sandbox)\n",{"type":43,"tag":476,"props":12525,"children":12526},{"class":478,"line":532},[12527,12531,12535,12539,12543,12547,12551,12555,12559],{"type":43,"tag":476,"props":12528,"children":12529},{"style":896},[12530],{"type":53,"value":1053},{"type":43,"tag":476,"props":12532,"children":12533},{"style":509},[12534],{"type":53,"value":11896},{"type":43,"tag":476,"props":12536,"children":12537},{"style":499},[12538],{"type":53,"value":1063},{"type":43,"tag":476,"props":12540,"children":12541},{"style":493},[12542],{"type":53,"value":1068},{"type":43,"tag":476,"props":12544,"children":12545},{"style":509},[12546],{"type":53,"value":4387},{"type":43,"tag":476,"props":12548,"children":12549},{"style":499},[12550],{"type":53,"value":332},{"type":43,"tag":476,"props":12552,"children":12553},{"style":1079},[12554],{"type":53,"value":3335},{"type":43,"tag":476,"props":12556,"children":12557},{"style":509},[12558],{"type":53,"value":1087},{"type":43,"tag":476,"props":12560,"children":12561},{"style":499},[12562],{"type":53,"value":1092},{"type":43,"tag":476,"props":12564,"children":12565},{"class":478,"line":545},[12566,12571,12575,12579,12583,12587,12591,12595,12599,12603],{"type":43,"tag":476,"props":12567,"children":12568},{"style":1098},[12569],{"type":53,"value":12570},"  expiration",{"type":43,"tag":476,"props":12572,"children":12573},{"style":499},[12574],{"type":53,"value":1106},{"type":43,"tag":476,"props":12576,"children":12577},{"style":1079},[12578],{"type":53,"value":1250},{"type":43,"tag":476,"props":12580,"children":12581},{"style":509},[12582],{"type":53,"value":1087},{"type":43,"tag":476,"props":12584,"children":12585},{"style":499},[12586],{"type":53,"value":597},{"type":43,"tag":476,"props":12588,"children":12589},{"style":590},[12590],{"type":53,"value":10506},{"type":43,"tag":476,"props":12592,"children":12593},{"style":499},[12594],{"type":53,"value":597},{"type":43,"tag":476,"props":12596,"children":12597},{"style":509},[12598],{"type":53,"value":1272},{"type":43,"tag":476,"props":12600,"children":12601},{"style":499},[12602],{"type":53,"value":625},{"type":43,"tag":476,"props":12604,"children":12605},{"style":483},[12606],{"type":53,"value":12607}," \u002F\u002F Default: 30 days, use 0 for no expiration\n",{"type":43,"tag":476,"props":12609,"children":12610},{"class":478,"line":558},[12611,12615,12619],{"type":43,"tag":476,"props":12612,"children":12613},{"style":499},[12614],{"type":53,"value":577},{"type":43,"tag":476,"props":12616,"children":12617},{"style":509},[12618],{"type":53,"value":1272},{"type":43,"tag":476,"props":12620,"children":12621},{"style":499},[12622],{"type":53,"value":602},{"type":43,"tag":476,"props":12624,"children":12625},{"class":478,"line":571},[12626,12630,12634,12638,12642,12646,12651,12655,12659,12663,12667,12672],{"type":43,"tag":476,"props":12627,"children":12628},{"style":509},[12629],{"type":53,"value":1504},{"type":43,"tag":476,"props":12631,"children":12632},{"style":499},[12633],{"type":53,"value":332},{"type":43,"tag":476,"props":12635,"children":12636},{"style":1079},[12637],{"type":53,"value":1513},{"type":43,"tag":476,"props":12639,"children":12640},{"style":509},[12641],{"type":53,"value":1087},{"type":43,"tag":476,"props":12643,"children":12644},{"style":499},[12645],{"type":53,"value":597},{"type":43,"tag":476,"props":12647,"children":12648},{"style":590},[12649],{"type":53,"value":12650},"Snapshot ID:",{"type":43,"tag":476,"props":12652,"children":12653},{"style":499},[12654],{"type":53,"value":597},{"type":43,"tag":476,"props":12656,"children":12657},{"style":499},[12658],{"type":53,"value":625},{"type":43,"tag":476,"props":12660,"children":12661},{"style":509},[12662],{"type":53,"value":11950},{"type":43,"tag":476,"props":12664,"children":12665},{"style":499},[12666],{"type":53,"value":332},{"type":43,"tag":476,"props":12668,"children":12669},{"style":509},[12670],{"type":53,"value":12671},"snapshotId)",{"type":43,"tag":476,"props":12673,"children":12674},{"style":499},[12675],{"type":53,"value":602},{"type":43,"tag":80,"props":12677,"children":12679},{"id":12678},"default-snapshot-expiration-and-retention",[12680],{"type":53,"value":12681},"Default Snapshot Expiration and Retention",{"type":43,"tag":67,"props":12683,"children":12684},{},[12685],{"type":53,"value":12686},"Configure default expiration and retention policy per sandbox:",{"type":43,"tag":465,"props":12688,"children":12690},{"className":467,"code":12689,"language":469,"meta":470,"style":470},"await Sandbox.create({\n  name: \"my-app\",\n  snapshotExpiration: ms(\"7d\"), \u002F\u002F Default TTL for any snapshot of this sandbox\n  keepLastSnapshots: {\n    count: 1, \u002F\u002F Keep only the most recent snapshot (1-10)\n    expiration: ms(\"30d\"), \u002F\u002F Override expiration for kept snapshots\n    deleteEvicted: true, \u002F\u002F Delete evicted snapshots immediately (default)\n  },\n});\n",[12691],{"type":43,"tag":58,"props":12692,"children":12693},{"__ignoreMap":470},[12694,12721,12749,12793,12808,12833,12879,12904,12911],{"type":43,"tag":476,"props":12695,"children":12696},{"class":478,"line":479},[12697,12701,12705,12709,12713,12717],{"type":43,"tag":476,"props":12698,"children":12699},{"style":493},[12700],{"type":53,"value":3642},{"type":43,"tag":476,"props":12702,"children":12703},{"style":509},[12704],{"type":53,"value":1014},{"type":43,"tag":476,"props":12706,"children":12707},{"style":499},[12708],{"type":53,"value":332},{"type":43,"tag":476,"props":12710,"children":12711},{"style":1079},[12712],{"type":53,"value":1082},{"type":43,"tag":476,"props":12714,"children":12715},{"style":509},[12716],{"type":53,"value":1087},{"type":43,"tag":476,"props":12718,"children":12719},{"style":499},[12720],{"type":53,"value":1092},{"type":43,"tag":476,"props":12722,"children":12723},{"class":478,"line":489},[12724,12728,12732,12736,12741,12745],{"type":43,"tag":476,"props":12725,"children":12726},{"style":1098},[12727],{"type":53,"value":1101},{"type":43,"tag":476,"props":12729,"children":12730},{"style":499},[12731],{"type":53,"value":1106},{"type":43,"tag":476,"props":12733,"children":12734},{"style":499},[12735],{"type":53,"value":587},{"type":43,"tag":476,"props":12737,"children":12738},{"style":590},[12739],{"type":53,"value":12740},"my-app",{"type":43,"tag":476,"props":12742,"children":12743},{"style":499},[12744],{"type":53,"value":597},{"type":43,"tag":476,"props":12746,"children":12747},{"style":499},[12748],{"type":53,"value":296},{"type":43,"tag":476,"props":12750,"children":12751},{"class":478,"line":505},[12752,12756,12760,12764,12768,12772,12776,12780,12784,12788],{"type":43,"tag":476,"props":12753,"children":12754},{"style":1098},[12755],{"type":53,"value":1436},{"type":43,"tag":476,"props":12757,"children":12758},{"style":499},[12759],{"type":53,"value":1106},{"type":43,"tag":476,"props":12761,"children":12762},{"style":1079},[12763],{"type":53,"value":1250},{"type":43,"tag":476,"props":12765,"children":12766},{"style":509},[12767],{"type":53,"value":1087},{"type":43,"tag":476,"props":12769,"children":12770},{"style":499},[12771],{"type":53,"value":597},{"type":43,"tag":476,"props":12773,"children":12774},{"style":590},[12775],{"type":53,"value":1457},{"type":43,"tag":476,"props":12777,"children":12778},{"style":499},[12779],{"type":53,"value":597},{"type":43,"tag":476,"props":12781,"children":12782},{"style":509},[12783],{"type":53,"value":1272},{"type":43,"tag":476,"props":12785,"children":12786},{"style":499},[12787],{"type":53,"value":625},{"type":43,"tag":476,"props":12789,"children":12790},{"style":483},[12791],{"type":53,"value":12792}," \u002F\u002F Default TTL for any snapshot of this sandbox\n",{"type":43,"tag":476,"props":12794,"children":12795},{"class":478,"line":519},[12796,12800,12804],{"type":43,"tag":476,"props":12797,"children":12798},{"style":1098},[12799],{"type":53,"value":10526},{"type":43,"tag":476,"props":12801,"children":12802},{"style":499},[12803],{"type":53,"value":1106},{"type":43,"tag":476,"props":12805,"children":12806},{"style":499},[12807],{"type":53,"value":502},{"type":43,"tag":476,"props":12809,"children":12810},{"class":478,"line":532},[12811,12816,12820,12824,12828],{"type":43,"tag":476,"props":12812,"children":12813},{"style":1098},[12814],{"type":53,"value":12815},"    count",{"type":43,"tag":476,"props":12817,"children":12818},{"style":499},[12819],{"type":53,"value":1106},{"type":43,"tag":476,"props":12821,"children":12822},{"style":1184},[12823],{"type":53,"value":2676},{"type":43,"tag":476,"props":12825,"children":12826},{"style":499},[12827],{"type":53,"value":625},{"type":43,"tag":476,"props":12829,"children":12830},{"style":483},[12831],{"type":53,"value":12832}," \u002F\u002F Keep only the most recent snapshot (1-10)\n",{"type":43,"tag":476,"props":12834,"children":12835},{"class":478,"line":545},[12836,12841,12845,12849,12853,12857,12862,12866,12870,12874],{"type":43,"tag":476,"props":12837,"children":12838},{"style":1098},[12839],{"type":53,"value":12840},"    expiration",{"type":43,"tag":476,"props":12842,"children":12843},{"style":499},[12844],{"type":53,"value":1106},{"type":43,"tag":476,"props":12846,"children":12847},{"style":1079},[12848],{"type":53,"value":1250},{"type":43,"tag":476,"props":12850,"children":12851},{"style":509},[12852],{"type":53,"value":1087},{"type":43,"tag":476,"props":12854,"children":12855},{"style":499},[12856],{"type":53,"value":597},{"type":43,"tag":476,"props":12858,"children":12859},{"style":590},[12860],{"type":53,"value":12861},"30d",{"type":43,"tag":476,"props":12863,"children":12864},{"style":499},[12865],{"type":53,"value":597},{"type":43,"tag":476,"props":12867,"children":12868},{"style":509},[12869],{"type":53,"value":1272},{"type":43,"tag":476,"props":12871,"children":12872},{"style":499},[12873],{"type":53,"value":625},{"type":43,"tag":476,"props":12875,"children":12876},{"style":483},[12877],{"type":53,"value":12878}," \u002F\u002F Override expiration for kept snapshots\n",{"type":43,"tag":476,"props":12880,"children":12881},{"class":478,"line":558},[12882,12887,12891,12895,12899],{"type":43,"tag":476,"props":12883,"children":12884},{"style":1098},[12885],{"type":53,"value":12886},"    deleteEvicted",{"type":43,"tag":476,"props":12888,"children":12889},{"style":499},[12890],{"type":53,"value":1106},{"type":43,"tag":476,"props":12892,"children":12893},{"style":1416},[12894],{"type":53,"value":1419},{"type":43,"tag":476,"props":12896,"children":12897},{"style":499},[12898],{"type":53,"value":625},{"type":43,"tag":476,"props":12900,"children":12901},{"style":483},[12902],{"type":53,"value":12903}," \u002F\u002F Delete evicted snapshots immediately (default)\n",{"type":43,"tag":476,"props":12905,"children":12906},{"class":478,"line":571},[12907],{"type":43,"tag":476,"props":12908,"children":12909},{"style":499},[12910],{"type":53,"value":1996},{"type":43,"tag":476,"props":12912,"children":12913},{"class":478,"line":605},[12914,12918,12922],{"type":43,"tag":476,"props":12915,"children":12916},{"style":499},[12917],{"type":53,"value":577},{"type":43,"tag":476,"props":12919,"children":12920},{"style":509},[12921],{"type":53,"value":1272},{"type":43,"tag":476,"props":12923,"children":12924},{"style":499},[12925],{"type":53,"value":602},{"type":43,"tag":67,"props":12927,"children":12928},{},[12929,12935],{"type":43,"tag":58,"props":12930,"children":12932},{"className":12931},[],[12933],{"type":53,"value":12934},"keepLastSnapshots: { count: 1 }",{"type":53,"value":12936}," is the recommended setting when you only\ncare about the latest snapshot — it lets the SDK keep snapshot storage costs flat.",{"type":43,"tag":80,"props":12938,"children":12940},{"id":12939},"list-get-and-delete",[12941],{"type":53,"value":12942},"List, Get, and Delete",{"type":43,"tag":465,"props":12944,"children":12946},{"className":467,"code":12945,"language":469,"meta":470,"style":470},"\u002F\u002F List all snapshots in the project (auto-paginates)\nconst snapshots = await Snapshot.list();\nfor await (const snapshot of snapshots) {\n  console.log(snapshot.snapshotId, snapshot.status);\n}\n\n\u002F\u002F Get a specific snapshot\nconst snapshot = await Snapshot.get({ snapshotId: \"snap_abc123\" });\n\n\u002F\u002F Delete a snapshot\nawait snapshot.delete();\n",[12947],{"type":43,"tag":58,"props":12948,"children":12949},{"__ignoreMap":470},[12950,12958,12997,13032,13087,13094,13101,13109,13181,13188,13196],{"type":43,"tag":476,"props":12951,"children":12952},{"class":478,"line":479},[12953],{"type":43,"tag":476,"props":12954,"children":12955},{"style":483},[12956],{"type":53,"value":12957},"\u002F\u002F List all snapshots in the project (auto-paginates)\n",{"type":43,"tag":476,"props":12959,"children":12960},{"class":478,"line":489},[12961,12965,12969,12973,12977,12981,12985,12989,12993],{"type":43,"tag":476,"props":12962,"children":12963},{"style":896},[12964],{"type":53,"value":1053},{"type":43,"tag":476,"props":12966,"children":12967},{"style":509},[12968],{"type":53,"value":11843},{"type":43,"tag":476,"props":12970,"children":12971},{"style":499},[12972],{"type":53,"value":1063},{"type":43,"tag":476,"props":12974,"children":12975},{"style":493},[12976],{"type":53,"value":1068},{"type":43,"tag":476,"props":12978,"children":12979},{"style":509},[12980],{"type":53,"value":12014},{"type":43,"tag":476,"props":12982,"children":12983},{"style":499},[12984],{"type":53,"value":332},{"type":43,"tag":476,"props":12986,"children":12987},{"style":1079},[12988],{"type":53,"value":10996},{"type":43,"tag":476,"props":12990,"children":12991},{"style":509},[12992],{"type":53,"value":4370},{"type":43,"tag":476,"props":12994,"children":12995},{"style":499},[12996],{"type":53,"value":602},{"type":43,"tag":476,"props":12998,"children":12999},{"class":478,"line":505},[13000,13004,13008,13012,13016,13020,13024,13028],{"type":43,"tag":476,"props":13001,"children":13002},{"style":493},[13003],{"type":53,"value":11331},{"type":43,"tag":476,"props":13005,"children":13006},{"style":493},[13007],{"type":53,"value":1068},{"type":43,"tag":476,"props":13009,"children":13010},{"style":509},[13011],{"type":53,"value":1782},{"type":43,"tag":476,"props":13013,"children":13014},{"style":896},[13015],{"type":53,"value":1053},{"type":43,"tag":476,"props":13017,"children":13018},{"style":509},[13019],{"type":53,"value":11896},{"type":43,"tag":476,"props":13021,"children":13022},{"style":499},[13023],{"type":53,"value":11352},{"type":43,"tag":476,"props":13025,"children":13026},{"style":509},[13027],{"type":53,"value":11905},{"type":43,"tag":476,"props":13029,"children":13030},{"style":499},[13031],{"type":53,"value":1092},{"type":43,"tag":476,"props":13033,"children":13034},{"class":478,"line":519},[13035,13039,13043,13047,13051,13055,13059,13063,13067,13071,13075,13079,13083],{"type":43,"tag":476,"props":13036,"children":13037},{"style":509},[13038],{"type":53,"value":4640},{"type":43,"tag":476,"props":13040,"children":13041},{"style":499},[13042],{"type":53,"value":332},{"type":43,"tag":476,"props":13044,"children":13045},{"style":1079},[13046],{"type":53,"value":1513},{"type":43,"tag":476,"props":13048,"children":13049},{"style":1098},[13050],{"type":53,"value":1087},{"type":43,"tag":476,"props":13052,"children":13053},{"style":509},[13054],{"type":53,"value":3335},{"type":43,"tag":476,"props":13056,"children":13057},{"style":499},[13058],{"type":53,"value":332},{"type":43,"tag":476,"props":13060,"children":13061},{"style":509},[13062],{"type":53,"value":11941},{"type":43,"tag":476,"props":13064,"children":13065},{"style":499},[13066],{"type":53,"value":625},{"type":43,"tag":476,"props":13068,"children":13069},{"style":509},[13070],{"type":53,"value":11950},{"type":43,"tag":476,"props":13072,"children":13073},{"style":499},[13074],{"type":53,"value":332},{"type":43,"tag":476,"props":13076,"children":13077},{"style":509},[13078],{"type":53,"value":11801},{"type":43,"tag":476,"props":13080,"children":13081},{"style":1098},[13082],{"type":53,"value":1272},{"type":43,"tag":476,"props":13084,"children":13085},{"style":499},[13086],{"type":53,"value":602},{"type":43,"tag":476,"props":13088,"children":13089},{"class":478,"line":532},[13090],{"type":43,"tag":476,"props":13091,"children":13092},{"style":499},[13093],{"type":53,"value":4497},{"type":43,"tag":476,"props":13095,"children":13096},{"class":478,"line":545},[13097],{"type":43,"tag":476,"props":13098,"children":13099},{"emptyLinePlaceholder":662},[13100],{"type":53,"value":665},{"type":43,"tag":476,"props":13102,"children":13103},{"class":478,"line":558},[13104],{"type":43,"tag":476,"props":13105,"children":13106},{"style":483},[13107],{"type":53,"value":13108},"\u002F\u002F Get a specific snapshot\n",{"type":43,"tag":476,"props":13110,"children":13111},{"class":478,"line":571},[13112,13116,13120,13124,13128,13132,13136,13140,13144,13148,13153,13157,13161,13165,13169,13173,13177],{"type":43,"tag":476,"props":13113,"children":13114},{"style":896},[13115],{"type":53,"value":1053},{"type":43,"tag":476,"props":13117,"children":13118},{"style":509},[13119],{"type":53,"value":11896},{"type":43,"tag":476,"props":13121,"children":13122},{"style":499},[13123],{"type":53,"value":1063},{"type":43,"tag":476,"props":13125,"children":13126},{"style":493},[13127],{"type":53,"value":1068},{"type":43,"tag":476,"props":13129,"children":13130},{"style":509},[13131],{"type":53,"value":12014},{"type":43,"tag":476,"props":13133,"children":13134},{"style":499},[13135],{"type":53,"value":332},{"type":43,"tag":476,"props":13137,"children":13138},{"style":1079},[13139],{"type":53,"value":1592},{"type":43,"tag":476,"props":13141,"children":13142},{"style":509},[13143],{"type":53,"value":1087},{"type":43,"tag":476,"props":13145,"children":13146},{"style":499},[13147],{"type":53,"value":1601},{"type":43,"tag":476,"props":13149,"children":13150},{"style":1098},[13151],{"type":53,"value":13152}," snapshotId",{"type":43,"tag":476,"props":13154,"children":13155},{"style":499},[13156],{"type":53,"value":1106},{"type":43,"tag":476,"props":13158,"children":13159},{"style":499},[13160],{"type":53,"value":587},{"type":43,"tag":476,"props":13162,"children":13163},{"style":590},[13164],{"type":53,"value":3364},{"type":43,"tag":476,"props":13166,"children":13167},{"style":499},[13168],{"type":53,"value":597},{"type":43,"tag":476,"props":13170,"children":13171},{"style":499},[13172],{"type":53,"value":635},{"type":43,"tag":476,"props":13174,"children":13175},{"style":509},[13176],{"type":53,"value":1272},{"type":43,"tag":476,"props":13178,"children":13179},{"style":499},[13180],{"type":53,"value":602},{"type":43,"tag":476,"props":13182,"children":13183},{"class":478,"line":605},[13184],{"type":43,"tag":476,"props":13185,"children":13186},{"emptyLinePlaceholder":662},[13187],{"type":53,"value":665},{"type":43,"tag":476,"props":13189,"children":13190},{"class":478,"line":658},[13191],{"type":43,"tag":476,"props":13192,"children":13193},{"style":483},[13194],{"type":53,"value":13195},"\u002F\u002F Delete a snapshot\n",{"type":43,"tag":476,"props":13197,"children":13198},{"class":478,"line":668},[13199,13203,13207,13211,13215,13219],{"type":43,"tag":476,"props":13200,"children":13201},{"style":493},[13202],{"type":53,"value":3642},{"type":43,"tag":476,"props":13204,"children":13205},{"style":509},[13206],{"type":53,"value":11950},{"type":43,"tag":476,"props":13208,"children":13209},{"style":499},[13210],{"type":53,"value":332},{"type":43,"tag":476,"props":13212,"children":13213},{"style":1079},[13214],{"type":53,"value":10641},{"type":43,"tag":476,"props":13216,"children":13217},{"style":509},[13218],{"type":53,"value":4370},{"type":43,"tag":476,"props":13220,"children":13221},{"style":499},[13222],{"type":53,"value":602},{"type":43,"tag":80,"props":13224,"children":13226},{"id":13225},"snapshot-tree",[13227],{"type":53,"value":13228},"Snapshot Tree",{"type":43,"tag":67,"props":13230,"children":13231},{},[13232],{"type":53,"value":13233},"Snapshots form a tree: any sandbox created from another snapshot inherits a\nparent → child relationship. Walk that tree to see ancestors or descendants of\na given snapshot.",{"type":43,"tag":465,"props":13235,"children":13237},{"className":467,"code":13236,"language":469,"meta":470,"style":470},"\u002F\u002F Walk ancestors (default direction)\nconst ancestors = await Snapshot.tree({\n  snapshotId: \"snap_abc\",\n  sortOrder: \"desc\",\n});\nfor await (const node of ancestors) {\n  console.log(node.snapshotId, node.parentId);\n}\n\n\u002F\u002F Walk descendants\nconst descendants = await Snapshot.tree({\n  snapshotId: \"snap_abc\",\n  sortOrder: \"asc\",\n});\n",[13238],{"type":43,"tag":58,"props":13239,"children":13240},{"__ignoreMap":470},[13241,13249,13290,13319,13346,13361,13398,13455,13462,13469,13477,13517,13544,13572],{"type":43,"tag":476,"props":13242,"children":13243},{"class":478,"line":479},[13244],{"type":43,"tag":476,"props":13245,"children":13246},{"style":483},[13247],{"type":53,"value":13248},"\u002F\u002F Walk ancestors (default direction)\n",{"type":43,"tag":476,"props":13250,"children":13251},{"class":478,"line":489},[13252,13256,13261,13265,13269,13273,13277,13282,13286],{"type":43,"tag":476,"props":13253,"children":13254},{"style":896},[13255],{"type":53,"value":1053},{"type":43,"tag":476,"props":13257,"children":13258},{"style":509},[13259],{"type":53,"value":13260}," ancestors ",{"type":43,"tag":476,"props":13262,"children":13263},{"style":499},[13264],{"type":53,"value":1063},{"type":43,"tag":476,"props":13266,"children":13267},{"style":493},[13268],{"type":53,"value":1068},{"type":43,"tag":476,"props":13270,"children":13271},{"style":509},[13272],{"type":53,"value":12014},{"type":43,"tag":476,"props":13274,"children":13275},{"style":499},[13276],{"type":53,"value":332},{"type":43,"tag":476,"props":13278,"children":13279},{"style":1079},[13280],{"type":53,"value":13281},"tree",{"type":43,"tag":476,"props":13283,"children":13284},{"style":509},[13285],{"type":53,"value":1087},{"type":43,"tag":476,"props":13287,"children":13288},{"style":499},[13289],{"type":53,"value":1092},{"type":43,"tag":476,"props":13291,"children":13292},{"class":478,"line":505},[13293,13298,13302,13306,13311,13315],{"type":43,"tag":476,"props":13294,"children":13295},{"style":1098},[13296],{"type":53,"value":13297},"  snapshotId",{"type":43,"tag":476,"props":13299,"children":13300},{"style":499},[13301],{"type":53,"value":1106},{"type":43,"tag":476,"props":13303,"children":13304},{"style":499},[13305],{"type":53,"value":587},{"type":43,"tag":476,"props":13307,"children":13308},{"style":590},[13309],{"type":53,"value":13310},"snap_abc",{"type":43,"tag":476,"props":13312,"children":13313},{"style":499},[13314],{"type":53,"value":597},{"type":43,"tag":476,"props":13316,"children":13317},{"style":499},[13318],{"type":53,"value":296},{"type":43,"tag":476,"props":13320,"children":13321},{"class":478,"line":519},[13322,13326,13330,13334,13338,13342],{"type":43,"tag":476,"props":13323,"children":13324},{"style":1098},[13325],{"type":53,"value":11246},{"type":43,"tag":476,"props":13327,"children":13328},{"style":499},[13329],{"type":53,"value":1106},{"type":43,"tag":476,"props":13331,"children":13332},{"style":499},[13333],{"type":53,"value":587},{"type":43,"tag":476,"props":13335,"children":13336},{"style":590},[13337],{"type":53,"value":11259},{"type":43,"tag":476,"props":13339,"children":13340},{"style":499},[13341],{"type":53,"value":597},{"type":43,"tag":476,"props":13343,"children":13344},{"style":499},[13345],{"type":53,"value":296},{"type":43,"tag":476,"props":13347,"children":13348},{"class":478,"line":532},[13349,13353,13357],{"type":43,"tag":476,"props":13350,"children":13351},{"style":499},[13352],{"type":53,"value":577},{"type":43,"tag":476,"props":13354,"children":13355},{"style":509},[13356],{"type":53,"value":1272},{"type":43,"tag":476,"props":13358,"children":13359},{"style":499},[13360],{"type":53,"value":602},{"type":43,"tag":476,"props":13362,"children":13363},{"class":478,"line":545},[13364,13368,13372,13376,13380,13385,13389,13394],{"type":43,"tag":476,"props":13365,"children":13366},{"style":493},[13367],{"type":53,"value":11331},{"type":43,"tag":476,"props":13369,"children":13370},{"style":493},[13371],{"type":53,"value":1068},{"type":43,"tag":476,"props":13373,"children":13374},{"style":509},[13375],{"type":53,"value":1782},{"type":43,"tag":476,"props":13377,"children":13378},{"style":896},[13379],{"type":53,"value":1053},{"type":43,"tag":476,"props":13381,"children":13382},{"style":509},[13383],{"type":53,"value":13384}," node ",{"type":43,"tag":476,"props":13386,"children":13387},{"style":499},[13388],{"type":53,"value":11352},{"type":43,"tag":476,"props":13390,"children":13391},{"style":509},[13392],{"type":53,"value":13393}," ancestors) ",{"type":43,"tag":476,"props":13395,"children":13396},{"style":499},[13397],{"type":53,"value":1092},{"type":43,"tag":476,"props":13399,"children":13400},{"class":478,"line":558},[13401,13405,13409,13413,13417,13421,13425,13429,13433,13438,13442,13447,13451],{"type":43,"tag":476,"props":13402,"children":13403},{"style":509},[13404],{"type":53,"value":4640},{"type":43,"tag":476,"props":13406,"children":13407},{"style":499},[13408],{"type":53,"value":332},{"type":43,"tag":476,"props":13410,"children":13411},{"style":1079},[13412],{"type":53,"value":1513},{"type":43,"tag":476,"props":13414,"children":13415},{"style":1098},[13416],{"type":53,"value":1087},{"type":43,"tag":476,"props":13418,"children":13419},{"style":509},[13420],{"type":53,"value":6855},{"type":43,"tag":476,"props":13422,"children":13423},{"style":499},[13424],{"type":53,"value":332},{"type":43,"tag":476,"props":13426,"children":13427},{"style":509},[13428],{"type":53,"value":11941},{"type":43,"tag":476,"props":13430,"children":13431},{"style":499},[13432],{"type":53,"value":625},{"type":43,"tag":476,"props":13434,"children":13435},{"style":509},[13436],{"type":53,"value":13437}," node",{"type":43,"tag":476,"props":13439,"children":13440},{"style":499},[13441],{"type":53,"value":332},{"type":43,"tag":476,"props":13443,"children":13444},{"style":509},[13445],{"type":53,"value":13446},"parentId",{"type":43,"tag":476,"props":13448,"children":13449},{"style":1098},[13450],{"type":53,"value":1272},{"type":43,"tag":476,"props":13452,"children":13453},{"style":499},[13454],{"type":53,"value":602},{"type":43,"tag":476,"props":13456,"children":13457},{"class":478,"line":571},[13458],{"type":43,"tag":476,"props":13459,"children":13460},{"style":499},[13461],{"type":53,"value":4497},{"type":43,"tag":476,"props":13463,"children":13464},{"class":478,"line":605},[13465],{"type":43,"tag":476,"props":13466,"children":13467},{"emptyLinePlaceholder":662},[13468],{"type":53,"value":665},{"type":43,"tag":476,"props":13470,"children":13471},{"class":478,"line":658},[13472],{"type":43,"tag":476,"props":13473,"children":13474},{"style":483},[13475],{"type":53,"value":13476},"\u002F\u002F Walk descendants\n",{"type":43,"tag":476,"props":13478,"children":13479},{"class":478,"line":668},[13480,13484,13489,13493,13497,13501,13505,13509,13513],{"type":43,"tag":476,"props":13481,"children":13482},{"style":896},[13483],{"type":53,"value":1053},{"type":43,"tag":476,"props":13485,"children":13486},{"style":509},[13487],{"type":53,"value":13488}," descendants ",{"type":43,"tag":476,"props":13490,"children":13491},{"style":499},[13492],{"type":53,"value":1063},{"type":43,"tag":476,"props":13494,"children":13495},{"style":493},[13496],{"type":53,"value":1068},{"type":43,"tag":476,"props":13498,"children":13499},{"style":509},[13500],{"type":53,"value":12014},{"type":43,"tag":476,"props":13502,"children":13503},{"style":499},[13504],{"type":53,"value":332},{"type":43,"tag":476,"props":13506,"children":13507},{"style":1079},[13508],{"type":53,"value":13281},{"type":43,"tag":476,"props":13510,"children":13511},{"style":509},[13512],{"type":53,"value":1087},{"type":43,"tag":476,"props":13514,"children":13515},{"style":499},[13516],{"type":53,"value":1092},{"type":43,"tag":476,"props":13518,"children":13519},{"class":478,"line":677},[13520,13524,13528,13532,13536,13540],{"type":43,"tag":476,"props":13521,"children":13522},{"style":1098},[13523],{"type":53,"value":13297},{"type":43,"tag":476,"props":13525,"children":13526},{"style":499},[13527],{"type":53,"value":1106},{"type":43,"tag":476,"props":13529,"children":13530},{"style":499},[13531],{"type":53,"value":587},{"type":43,"tag":476,"props":13533,"children":13534},{"style":590},[13535],{"type":53,"value":13310},{"type":43,"tag":476,"props":13537,"children":13538},{"style":499},[13539],{"type":53,"value":597},{"type":43,"tag":476,"props":13541,"children":13542},{"style":499},[13543],{"type":53,"value":296},{"type":43,"tag":476,"props":13545,"children":13546},{"class":478,"line":694},[13547,13551,13555,13559,13564,13568],{"type":43,"tag":476,"props":13548,"children":13549},{"style":1098},[13550],{"type":53,"value":11246},{"type":43,"tag":476,"props":13552,"children":13553},{"style":499},[13554],{"type":53,"value":1106},{"type":43,"tag":476,"props":13556,"children":13557},{"style":499},[13558],{"type":53,"value":587},{"type":43,"tag":476,"props":13560,"children":13561},{"style":590},[13562],{"type":53,"value":13563},"asc",{"type":43,"tag":476,"props":13565,"children":13566},{"style":499},[13567],{"type":53,"value":597},{"type":43,"tag":476,"props":13569,"children":13570},{"style":499},[13571],{"type":53,"value":296},{"type":43,"tag":476,"props":13573,"children":13574},{"class":478,"line":707},[13575,13579,13583],{"type":43,"tag":476,"props":13576,"children":13577},{"style":499},[13578],{"type":53,"value":577},{"type":43,"tag":476,"props":13580,"children":13581},{"style":509},[13582],{"type":53,"value":1272},{"type":43,"tag":476,"props":13584,"children":13585},{"style":499},[13586],{"type":53,"value":602},{"type":43,"tag":80,"props":13588,"children":13590},{"id":13589},"snapshot-rollback",[13591],{"type":53,"value":13592},"Snapshot Rollback",{"type":43,"tag":67,"props":13594,"children":13595},{},[13596,13598,13604],{"type":53,"value":13597},"Point an existing sandbox at a previous snapshot by updating\n",{"type":43,"tag":58,"props":13599,"children":13601},{"className":13600},[],[13602],{"type":53,"value":13603},"currentSnapshotId",{"type":53,"value":13605},". New sessions will resume from that snapshot.",{"type":43,"tag":465,"props":13607,"children":13609},{"className":467,"code":13608,"language":469,"meta":470,"style":470},"await sandbox.update({ currentSnapshotId: \"snap_previous\" });\n",[13610],{"type":43,"tag":58,"props":13611,"children":13612},{"__ignoreMap":470},[13613],{"type":43,"tag":476,"props":13614,"children":13615},{"class":478,"line":479},[13616,13620,13624,13628,13632,13636,13640,13645,13649,13653,13658,13662,13666,13670],{"type":43,"tag":476,"props":13617,"children":13618},{"style":493},[13619],{"type":53,"value":3642},{"type":43,"tag":476,"props":13621,"children":13622},{"style":509},[13623],{"type":53,"value":4387},{"type":43,"tag":476,"props":13625,"children":13626},{"style":499},[13627],{"type":53,"value":332},{"type":43,"tag":476,"props":13629,"children":13630},{"style":1079},[13631],{"type":53,"value":10148},{"type":43,"tag":476,"props":13633,"children":13634},{"style":509},[13635],{"type":53,"value":1087},{"type":43,"tag":476,"props":13637,"children":13638},{"style":499},[13639],{"type":53,"value":1601},{"type":43,"tag":476,"props":13641,"children":13642},{"style":1098},[13643],{"type":53,"value":13644}," currentSnapshotId",{"type":43,"tag":476,"props":13646,"children":13647},{"style":499},[13648],{"type":53,"value":1106},{"type":43,"tag":476,"props":13650,"children":13651},{"style":499},[13652],{"type":53,"value":587},{"type":43,"tag":476,"props":13654,"children":13655},{"style":590},[13656],{"type":53,"value":13657},"snap_previous",{"type":43,"tag":476,"props":13659,"children":13660},{"style":499},[13661],{"type":53,"value":597},{"type":43,"tag":476,"props":13663,"children":13664},{"style":499},[13665],{"type":53,"value":635},{"type":43,"tag":476,"props":13667,"children":13668},{"style":509},[13669],{"type":53,"value":1272},{"type":43,"tag":476,"props":13671,"children":13672},{"style":499},[13673],{"type":53,"value":602},{"type":43,"tag":44,"props":13675,"children":13677},{"id":13676},"exposed-ports",[13678],{"type":53,"value":13679},"Exposed Ports",{"type":43,"tag":465,"props":13681,"children":13683},{"className":467,"code":13682,"language":469,"meta":470,"style":470},"const sandbox = await Sandbox.create({ ports: [3000, 8000] });\n\n\u002F\u002F Get public URL for a port\nconst url = sandbox.domain(3000);\n\u002F\u002F Returns: https:\u002F\u002Fsubdomain.vercel.run\n",[13684],{"type":43,"tag":58,"props":13685,"children":13686},{"__ignoreMap":470},[13687,13767,13774,13782,13827],{"type":43,"tag":476,"props":13688,"children":13689},{"class":478,"line":479},[13690,13694,13698,13702,13706,13710,13714,13718,13722,13726,13731,13735,13739,13743,13747,13751,13755,13759,13763],{"type":43,"tag":476,"props":13691,"children":13692},{"style":896},[13693],{"type":53,"value":1053},{"type":43,"tag":476,"props":13695,"children":13696},{"style":509},[13697],{"type":53,"value":1058},{"type":43,"tag":476,"props":13699,"children":13700},{"style":499},[13701],{"type":53,"value":1063},{"type":43,"tag":476,"props":13703,"children":13704},{"style":493},[13705],{"type":53,"value":1068},{"type":43,"tag":476,"props":13707,"children":13708},{"style":509},[13709],{"type":53,"value":1014},{"type":43,"tag":476,"props":13711,"children":13712},{"style":499},[13713],{"type":53,"value":332},{"type":43,"tag":476,"props":13715,"children":13716},{"style":1079},[13717],{"type":53,"value":1082},{"type":43,"tag":476,"props":13719,"children":13720},{"style":509},[13721],{"type":53,"value":1087},{"type":43,"tag":476,"props":13723,"children":13724},{"style":499},[13725],{"type":53,"value":1601},{"type":43,"tag":476,"props":13727,"children":13728},{"style":1098},[13729],{"type":53,"value":13730}," ports",{"type":43,"tag":476,"props":13732,"children":13733},{"style":499},[13734],{"type":53,"value":1106},{"type":43,"tag":476,"props":13736,"children":13737},{"style":509},[13738],{"type":53,"value":1214},{"type":43,"tag":476,"props":13740,"children":13741},{"style":1184},[13742],{"type":53,"value":1219},{"type":43,"tag":476,"props":13744,"children":13745},{"style":499},[13746],{"type":53,"value":625},{"type":43,"tag":476,"props":13748,"children":13749},{"style":1184},[13750],{"type":53,"value":10411},{"type":43,"tag":476,"props":13752,"children":13753},{"style":509},[13754],{"type":53,"value":10200},{"type":43,"tag":476,"props":13756,"children":13757},{"style":499},[13758],{"type":53,"value":577},{"type":43,"tag":476,"props":13760,"children":13761},{"style":509},[13762],{"type":53,"value":1272},{"type":43,"tag":476,"props":13764,"children":13765},{"style":499},[13766],{"type":53,"value":602},{"type":43,"tag":476,"props":13768,"children":13769},{"class":478,"line":489},[13770],{"type":43,"tag":476,"props":13771,"children":13772},{"emptyLinePlaceholder":662},[13773],{"type":53,"value":665},{"type":43,"tag":476,"props":13775,"children":13776},{"class":478,"line":505},[13777],{"type":43,"tag":476,"props":13778,"children":13779},{"style":483},[13780],{"type":53,"value":13781},"\u002F\u002F Get public URL for a port\n",{"type":43,"tag":476,"props":13783,"children":13784},{"class":478,"line":519},[13785,13789,13794,13798,13802,13806,13811,13815,13819,13823],{"type":43,"tag":476,"props":13786,"children":13787},{"style":896},[13788],{"type":53,"value":1053},{"type":43,"tag":476,"props":13790,"children":13791},{"style":509},[13792],{"type":53,"value":13793}," url ",{"type":43,"tag":476,"props":13795,"children":13796},{"style":499},[13797],{"type":53,"value":1063},{"type":43,"tag":476,"props":13799,"children":13800},{"style":509},[13801],{"type":53,"value":4387},{"type":43,"tag":476,"props":13803,"children":13804},{"style":499},[13805],{"type":53,"value":332},{"type":43,"tag":476,"props":13807,"children":13808},{"style":1079},[13809],{"type":53,"value":13810},"domain",{"type":43,"tag":476,"props":13812,"children":13813},{"style":509},[13814],{"type":53,"value":1087},{"type":43,"tag":476,"props":13816,"children":13817},{"style":1184},[13818],{"type":53,"value":1219},{"type":43,"tag":476,"props":13820,"children":13821},{"style":509},[13822],{"type":53,"value":1272},{"type":43,"tag":476,"props":13824,"children":13825},{"style":499},[13826],{"type":53,"value":602},{"type":43,"tag":476,"props":13828,"children":13829},{"class":478,"line":532},[13830],{"type":43,"tag":476,"props":13831,"children":13832},{"style":483},[13833],{"type":53,"value":13834},"\u002F\u002F Returns: https:\u002F\u002Fsubdomain.vercel.run\n",{"type":43,"tag":67,"props":13836,"children":13837},{},[13838,13840,13846],{"type":53,"value":13839},"Replace the exposed port list at runtime with ",{"type":43,"tag":58,"props":13841,"children":13843},{"className":13842},[],[13844],{"type":53,"value":13845},"sandbox.update({ ports })",{"type":53,"value":13847},". Any\ncurrently exposed port not present in the new array is deregistered.",{"type":43,"tag":465,"props":13849,"children":13851},{"className":467,"code":13850,"language":469,"meta":470,"style":470},"await sandbox.update({ ports: [3000, 8443] });\n",[13852],{"type":43,"tag":58,"props":13853,"children":13854},{"__ignoreMap":470},[13855],{"type":43,"tag":476,"props":13856,"children":13857},{"class":478,"line":479},[13858,13862,13866,13870,13874,13878,13882,13886,13890,13894,13898,13902,13907,13911,13915,13919],{"type":43,"tag":476,"props":13859,"children":13860},{"style":493},[13861],{"type":53,"value":3642},{"type":43,"tag":476,"props":13863,"children":13864},{"style":509},[13865],{"type":53,"value":4387},{"type":43,"tag":476,"props":13867,"children":13868},{"style":499},[13869],{"type":53,"value":332},{"type":43,"tag":476,"props":13871,"children":13872},{"style":1079},[13873],{"type":53,"value":10148},{"type":43,"tag":476,"props":13875,"children":13876},{"style":509},[13877],{"type":53,"value":1087},{"type":43,"tag":476,"props":13879,"children":13880},{"style":499},[13881],{"type":53,"value":1601},{"type":43,"tag":476,"props":13883,"children":13884},{"style":1098},[13885],{"type":53,"value":13730},{"type":43,"tag":476,"props":13887,"children":13888},{"style":499},[13889],{"type":53,"value":1106},{"type":43,"tag":476,"props":13891,"children":13892},{"style":509},[13893],{"type":53,"value":1214},{"type":43,"tag":476,"props":13895,"children":13896},{"style":1184},[13897],{"type":53,"value":1219},{"type":43,"tag":476,"props":13899,"children":13900},{"style":499},[13901],{"type":53,"value":625},{"type":43,"tag":476,"props":13903,"children":13904},{"style":1184},[13905],{"type":53,"value":13906}," 8443",{"type":43,"tag":476,"props":13908,"children":13909},{"style":509},[13910],{"type":53,"value":10200},{"type":43,"tag":476,"props":13912,"children":13913},{"style":499},[13914],{"type":53,"value":577},{"type":43,"tag":476,"props":13916,"children":13917},{"style":509},[13918],{"type":53,"value":1272},{"type":43,"tag":476,"props":13920,"children":13921},{"style":499},[13922],{"type":53,"value":602},{"type":43,"tag":44,"props":13924,"children":13926},{"id":13925},"timeout-management",[13927],{"type":53,"value":13928},"Timeout Management",{"type":43,"tag":465,"props":13930,"children":13932},{"className":467,"code":13931,"language":469,"meta":470,"style":470},"const sandbox = await Sandbox.create({\n  timeout: ms(\"10m\"), \u002F\u002F Initial timeout, default of 5 minutes\n});\n\n\u002F\u002F Extend timeout by 5 more minutes\nawait sandbox.extendTimeout(ms(\"5m\"));\n\u002F\u002F New total: 15 minutes\n",[13933],{"type":43,"tag":58,"props":13934,"children":13935},{"__ignoreMap":470},[13936,13975,14019,14034,14041,14049,14102],{"type":43,"tag":476,"props":13937,"children":13938},{"class":478,"line":479},[13939,13943,13947,13951,13955,13959,13963,13967,13971],{"type":43,"tag":476,"props":13940,"children":13941},{"style":896},[13942],{"type":53,"value":1053},{"type":43,"tag":476,"props":13944,"children":13945},{"style":509},[13946],{"type":53,"value":1058},{"type":43,"tag":476,"props":13948,"children":13949},{"style":499},[13950],{"type":53,"value":1063},{"type":43,"tag":476,"props":13952,"children":13953},{"style":493},[13954],{"type":53,"value":1068},{"type":43,"tag":476,"props":13956,"children":13957},{"style":509},[13958],{"type":53,"value":1014},{"type":43,"tag":476,"props":13960,"children":13961},{"style":499},[13962],{"type":53,"value":332},{"type":43,"tag":476,"props":13964,"children":13965},{"style":1079},[13966],{"type":53,"value":1082},{"type":43,"tag":476,"props":13968,"children":13969},{"style":509},[13970],{"type":53,"value":1087},{"type":43,"tag":476,"props":13972,"children":13973},{"style":499},[13974],{"type":53,"value":1092},{"type":43,"tag":476,"props":13976,"children":13977},{"class":478,"line":489},[13978,13982,13986,13990,13994,13998,14002,14006,14010,14014],{"type":43,"tag":476,"props":13979,"children":13980},{"style":1098},[13981],{"type":53,"value":1241},{"type":43,"tag":476,"props":13983,"children":13984},{"style":499},[13985],{"type":53,"value":1106},{"type":43,"tag":476,"props":13987,"children":13988},{"style":1079},[13989],{"type":53,"value":1250},{"type":43,"tag":476,"props":13991,"children":13992},{"style":509},[13993],{"type":53,"value":1087},{"type":43,"tag":476,"props":13995,"children":13996},{"style":499},[13997],{"type":53,"value":597},{"type":43,"tag":476,"props":13999,"children":14000},{"style":590},[14001],{"type":53,"value":1263},{"type":43,"tag":476,"props":14003,"children":14004},{"style":499},[14005],{"type":53,"value":597},{"type":43,"tag":476,"props":14007,"children":14008},{"style":509},[14009],{"type":53,"value":1272},{"type":43,"tag":476,"props":14011,"children":14012},{"style":499},[14013],{"type":53,"value":625},{"type":43,"tag":476,"props":14015,"children":14016},{"style":483},[14017],{"type":53,"value":14018}," \u002F\u002F Initial timeout, default of 5 minutes\n",{"type":43,"tag":476,"props":14020,"children":14021},{"class":478,"line":505},[14022,14026,14030],{"type":43,"tag":476,"props":14023,"children":14024},{"style":499},[14025],{"type":53,"value":577},{"type":43,"tag":476,"props":14027,"children":14028},{"style":509},[14029],{"type":53,"value":1272},{"type":43,"tag":476,"props":14031,"children":14032},{"style":499},[14033],{"type":53,"value":602},{"type":43,"tag":476,"props":14035,"children":14036},{"class":478,"line":519},[14037],{"type":43,"tag":476,"props":14038,"children":14039},{"emptyLinePlaceholder":662},[14040],{"type":53,"value":665},{"type":43,"tag":476,"props":14042,"children":14043},{"class":478,"line":532},[14044],{"type":43,"tag":476,"props":14045,"children":14046},{"style":483},[14047],{"type":53,"value":14048},"\u002F\u002F Extend timeout by 5 more minutes\n",{"type":43,"tag":476,"props":14050,"children":14051},{"class":478,"line":545},[14052,14056,14060,14064,14069,14073,14077,14081,14085,14090,14094,14098],{"type":43,"tag":476,"props":14053,"children":14054},{"style":493},[14055],{"type":53,"value":3642},{"type":43,"tag":476,"props":14057,"children":14058},{"style":509},[14059],{"type":53,"value":4387},{"type":43,"tag":476,"props":14061,"children":14062},{"style":499},[14063],{"type":53,"value":332},{"type":43,"tag":476,"props":14065,"children":14066},{"style":1079},[14067],{"type":53,"value":14068},"extendTimeout",{"type":43,"tag":476,"props":14070,"children":14071},{"style":509},[14072],{"type":53,"value":1087},{"type":43,"tag":476,"props":14074,"children":14075},{"style":1079},[14076],{"type":53,"value":861},{"type":43,"tag":476,"props":14078,"children":14079},{"style":509},[14080],{"type":53,"value":1087},{"type":43,"tag":476,"props":14082,"children":14083},{"style":499},[14084],{"type":53,"value":597},{"type":43,"tag":476,"props":14086,"children":14087},{"style":590},[14088],{"type":53,"value":14089},"5m",{"type":43,"tag":476,"props":14091,"children":14092},{"style":499},[14093],{"type":53,"value":597},{"type":43,"tag":476,"props":14095,"children":14096},{"style":509},[14097],{"type":53,"value":5651},{"type":43,"tag":476,"props":14099,"children":14100},{"style":499},[14101],{"type":53,"value":602},{"type":43,"tag":476,"props":14103,"children":14104},{"class":478,"line":558},[14105],{"type":43,"tag":476,"props":14106,"children":14107},{"style":483},[14108],{"type":53,"value":14109},"\u002F\u002F New total: 15 minutes\n",{"type":43,"tag":44,"props":14111,"children":14113},{"id":14112},"authentication",[14114],{"type":53,"value":14115},"Authentication",{"type":43,"tag":80,"props":14117,"children":14119},{"id":14118},"vercel-oidc-token-recommended",[14120],{"type":53,"value":14121},"Vercel OIDC Token (Recommended)",{"type":43,"tag":465,"props":14123,"children":14127},{"className":14124,"code":14125,"language":14126,"meta":470,"style":470},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","# Pull development credentials\nvercel link\nvercel env pull\n","bash",[14128],{"type":43,"tag":58,"props":14129,"children":14130},{"__ignoreMap":470},[14131,14139,14151],{"type":43,"tag":476,"props":14132,"children":14133},{"class":478,"line":479},[14134],{"type":43,"tag":476,"props":14135,"children":14136},{"style":483},[14137],{"type":53,"value":14138},"# Pull development credentials\n",{"type":43,"tag":476,"props":14140,"children":14141},{"class":478,"line":489},[14142,14146],{"type":43,"tag":476,"props":14143,"children":14144},{"style":902},[14145],{"type":53,"value":8},{"type":43,"tag":476,"props":14147,"children":14148},{"style":590},[14149],{"type":53,"value":14150}," link\n",{"type":43,"tag":476,"props":14152,"children":14153},{"class":478,"line":505},[14154,14158,14162],{"type":43,"tag":476,"props":14155,"children":14156},{"style":902},[14157],{"type":53,"value":8},{"type":43,"tag":476,"props":14159,"children":14160},{"style":590},[14161],{"type":53,"value":1349},{"type":43,"tag":476,"props":14163,"children":14164},{"style":590},[14165],{"type":53,"value":14166}," pull\n",{"type":43,"tag":67,"props":14168,"children":14169},{},[14170,14172,14178],{"type":53,"value":14171},"The SDK automatically uses ",{"type":43,"tag":58,"props":14173,"children":14175},{"className":14174},[],[14176],{"type":53,"value":14177},"VERCEL_OIDC_TOKEN",{"type":53,"value":14179}," from environment.",{"type":43,"tag":80,"props":14181,"children":14183},{"id":14182},"access-token-alternative",[14184],{"type":53,"value":14185},"Access Token (Alternative)",{"type":43,"tag":465,"props":14187,"children":14189},{"className":467,"code":14188,"language":469,"meta":470,"style":470},"const sandbox = await Sandbox.create({\n  teamId: process.env.VERCEL_TEAM_ID!,\n  projectId: process.env.VERCEL_PROJECT_ID!,\n  token: process.env.VERCEL_TOKEN!,\n  \u002F\u002F ... other options\n});\n",[14190],{"type":43,"tag":58,"props":14191,"children":14192},{"__ignoreMap":470},[14193,14232,14269,14306,14343,14351],{"type":43,"tag":476,"props":14194,"children":14195},{"class":478,"line":479},[14196,14200,14204,14208,14212,14216,14220,14224,14228],{"type":43,"tag":476,"props":14197,"children":14198},{"style":896},[14199],{"type":53,"value":1053},{"type":43,"tag":476,"props":14201,"children":14202},{"style":509},[14203],{"type":53,"value":1058},{"type":43,"tag":476,"props":14205,"children":14206},{"style":499},[14207],{"type":53,"value":1063},{"type":43,"tag":476,"props":14209,"children":14210},{"style":493},[14211],{"type":53,"value":1068},{"type":43,"tag":476,"props":14213,"children":14214},{"style":509},[14215],{"type":53,"value":1014},{"type":43,"tag":476,"props":14217,"children":14218},{"style":499},[14219],{"type":53,"value":332},{"type":43,"tag":476,"props":14221,"children":14222},{"style":1079},[14223],{"type":53,"value":1082},{"type":43,"tag":476,"props":14225,"children":14226},{"style":509},[14227],{"type":53,"value":1087},{"type":43,"tag":476,"props":14229,"children":14230},{"style":499},[14231],{"type":53,"value":1092},{"type":43,"tag":476,"props":14233,"children":14234},{"class":478,"line":489},[14235,14240,14244,14248,14252,14256,14260,14265],{"type":43,"tag":476,"props":14236,"children":14237},{"style":1098},[14238],{"type":53,"value":14239},"  teamId",{"type":43,"tag":476,"props":14241,"children":14242},{"style":499},[14243],{"type":53,"value":1106},{"type":43,"tag":476,"props":14245,"children":14246},{"style":509},[14247],{"type":53,"value":2934},{"type":43,"tag":476,"props":14249,"children":14250},{"style":499},[14251],{"type":53,"value":332},{"type":43,"tag":476,"props":14253,"children":14254},{"style":509},[14255],{"type":53,"value":2943},{"type":43,"tag":476,"props":14257,"children":14258},{"style":499},[14259],{"type":53,"value":332},{"type":43,"tag":476,"props":14261,"children":14262},{"style":509},[14263],{"type":53,"value":14264},"VERCEL_TEAM_ID",{"type":43,"tag":476,"props":14266,"children":14267},{"style":499},[14268],{"type":53,"value":2957},{"type":43,"tag":476,"props":14270,"children":14271},{"class":478,"line":505},[14272,14277,14281,14285,14289,14293,14297,14302],{"type":43,"tag":476,"props":14273,"children":14274},{"style":1098},[14275],{"type":53,"value":14276},"  projectId",{"type":43,"tag":476,"props":14278,"children":14279},{"style":499},[14280],{"type":53,"value":1106},{"type":43,"tag":476,"props":14282,"children":14283},{"style":509},[14284],{"type":53,"value":2934},{"type":43,"tag":476,"props":14286,"children":14287},{"style":499},[14288],{"type":53,"value":332},{"type":43,"tag":476,"props":14290,"children":14291},{"style":509},[14292],{"type":53,"value":2943},{"type":43,"tag":476,"props":14294,"children":14295},{"style":499},[14296],{"type":53,"value":332},{"type":43,"tag":476,"props":14298,"children":14299},{"style":509},[14300],{"type":53,"value":14301},"VERCEL_PROJECT_ID",{"type":43,"tag":476,"props":14303,"children":14304},{"style":499},[14305],{"type":53,"value":2957},{"type":43,"tag":476,"props":14307,"children":14308},{"class":478,"line":519},[14309,14314,14318,14322,14326,14330,14334,14339],{"type":43,"tag":476,"props":14310,"children":14311},{"style":1098},[14312],{"type":53,"value":14313},"  token",{"type":43,"tag":476,"props":14315,"children":14316},{"style":499},[14317],{"type":53,"value":1106},{"type":43,"tag":476,"props":14319,"children":14320},{"style":509},[14321],{"type":53,"value":2934},{"type":43,"tag":476,"props":14323,"children":14324},{"style":499},[14325],{"type":53,"value":332},{"type":43,"tag":476,"props":14327,"children":14328},{"style":509},[14329],{"type":53,"value":2943},{"type":43,"tag":476,"props":14331,"children":14332},{"style":499},[14333],{"type":53,"value":332},{"type":43,"tag":476,"props":14335,"children":14336},{"style":509},[14337],{"type":53,"value":14338},"VERCEL_TOKEN",{"type":43,"tag":476,"props":14340,"children":14341},{"style":499},[14342],{"type":53,"value":2957},{"type":43,"tag":476,"props":14344,"children":14345},{"class":478,"line":532},[14346],{"type":43,"tag":476,"props":14347,"children":14348},{"style":483},[14349],{"type":53,"value":14350},"  \u002F\u002F ... other options\n",{"type":43,"tag":476,"props":14352,"children":14353},{"class":478,"line":545},[14354,14358,14362],{"type":43,"tag":476,"props":14355,"children":14356},{"style":499},[14357],{"type":53,"value":577},{"type":43,"tag":476,"props":14359,"children":14360},{"style":509},[14361],{"type":53,"value":1272},{"type":43,"tag":476,"props":14363,"children":14364},{"style":499},[14365],{"type":53,"value":602},{"type":43,"tag":44,"props":14367,"children":14369},{"id":14368},"error-handling",[14370],{"type":53,"value":14371},"Error Handling",{"type":43,"tag":465,"props":14373,"children":14375},{"className":467,"code":14374,"language":469,"meta":470,"style":470},"import { APIError, StreamError } from \"@vercel\u002Fsandbox\";\n\ntry {\n  const sandbox = await Sandbox.create();\n} catch (error) {\n  if (error instanceof APIError) {\n    console.error(\"API Error:\", error.message, error.response.status);\n  } else if (error instanceof StreamError) {\n    console.error(\"Stream Error:\", error.message);\n  }\n  throw error;\n}\n",[14376],{"type":43,"tag":58,"props":14377,"children":14378},{"__ignoreMap":470},[14379,14426,14433,14445,14485,14506,14539,14623,14665,14721,14729,14745],{"type":43,"tag":476,"props":14380,"children":14381},{"class":478,"line":479},[14382,14386,14390,14394,14398,14402,14406,14410,14414,14418,14422],{"type":43,"tag":476,"props":14383,"children":14384},{"style":493},[14385],{"type":53,"value":496},{"type":43,"tag":476,"props":14387,"children":14388},{"style":499},[14389],{"type":53,"value":615},{"type":43,"tag":476,"props":14391,"children":14392},{"style":509},[14393],{"type":53,"value":620},{"type":43,"tag":476,"props":14395,"children":14396},{"style":499},[14397],{"type":53,"value":625},{"type":43,"tag":476,"props":14399,"children":14400},{"style":509},[14401],{"type":53,"value":630},{"type":43,"tag":476,"props":14403,"children":14404},{"style":499},[14405],{"type":53,"value":635},{"type":43,"tag":476,"props":14407,"children":14408},{"style":493},[14409],{"type":53,"value":582},{"type":43,"tag":476,"props":14411,"children":14412},{"style":499},[14413],{"type":53,"value":587},{"type":43,"tag":476,"props":14415,"children":14416},{"style":590},[14417],{"type":53,"value":63},{"type":43,"tag":476,"props":14419,"children":14420},{"style":499},[14421],{"type":53,"value":597},{"type":43,"tag":476,"props":14423,"children":14424},{"style":499},[14425],{"type":53,"value":602},{"type":43,"tag":476,"props":14427,"children":14428},{"class":478,"line":489},[14429],{"type":43,"tag":476,"props":14430,"children":14431},{"emptyLinePlaceholder":662},[14432],{"type":53,"value":665},{"type":43,"tag":476,"props":14434,"children":14435},{"class":478,"line":505},[14436,14441],{"type":43,"tag":476,"props":14437,"children":14438},{"style":493},[14439],{"type":53,"value":14440},"try",{"type":43,"tag":476,"props":14442,"children":14443},{"style":499},[14444],{"type":53,"value":502},{"type":43,"tag":476,"props":14446,"children":14447},{"class":478,"line":519},[14448,14453,14457,14461,14465,14469,14473,14477,14481],{"type":43,"tag":476,"props":14449,"children":14450},{"style":896},[14451],{"type":53,"value":14452},"  const",{"type":43,"tag":476,"props":14454,"children":14455},{"style":509},[14456],{"type":53,"value":4387},{"type":43,"tag":476,"props":14458,"children":14459},{"style":499},[14460],{"type":53,"value":910},{"type":43,"tag":476,"props":14462,"children":14463},{"style":493},[14464],{"type":53,"value":1068},{"type":43,"tag":476,"props":14466,"children":14467},{"style":509},[14468],{"type":53,"value":1014},{"type":43,"tag":476,"props":14470,"children":14471},{"style":499},[14472],{"type":53,"value":332},{"type":43,"tag":476,"props":14474,"children":14475},{"style":1079},[14476],{"type":53,"value":1082},{"type":43,"tag":476,"props":14478,"children":14479},{"style":1098},[14480],{"type":53,"value":4370},{"type":43,"tag":476,"props":14482,"children":14483},{"style":499},[14484],{"type":53,"value":602},{"type":43,"tag":476,"props":14486,"children":14487},{"class":478,"line":532},[14488,14492,14497,14502],{"type":43,"tag":476,"props":14489,"children":14490},{"style":499},[14491],{"type":53,"value":577},{"type":43,"tag":476,"props":14493,"children":14494},{"style":493},[14495],{"type":53,"value":14496}," catch",{"type":43,"tag":476,"props":14498,"children":14499},{"style":509},[14500],{"type":53,"value":14501}," (error) ",{"type":43,"tag":476,"props":14503,"children":14504},{"style":499},[14505],{"type":53,"value":1092},{"type":43,"tag":476,"props":14507,"children":14508},{"class":478,"line":545},[14509,14514,14518,14522,14527,14531,14535],{"type":43,"tag":476,"props":14510,"children":14511},{"style":493},[14512],{"type":53,"value":14513},"  if",{"type":43,"tag":476,"props":14515,"children":14516},{"style":1098},[14517],{"type":53,"value":1782},{"type":43,"tag":476,"props":14519,"children":14520},{"style":509},[14521],{"type":53,"value":4649},{"type":43,"tag":476,"props":14523,"children":14524},{"style":499},[14525],{"type":53,"value":14526}," instanceof",{"type":43,"tag":476,"props":14528,"children":14529},{"style":902},[14530],{"type":53,"value":620},{"type":43,"tag":476,"props":14532,"children":14533},{"style":1098},[14534],{"type":53,"value":1905},{"type":43,"tag":476,"props":14536,"children":14537},{"style":499},[14538],{"type":53,"value":1092},{"type":43,"tag":476,"props":14540,"children":14541},{"class":478,"line":558},[14542,14547,14551,14555,14559,14563,14568,14572,14576,14581,14585,14590,14594,14598,14602,14607,14611,14615,14619],{"type":43,"tag":476,"props":14543,"children":14544},{"style":509},[14545],{"type":53,"value":14546},"    console",{"type":43,"tag":476,"props":14548,"children":14549},{"style":499},[14550],{"type":53,"value":332},{"type":43,"tag":476,"props":14552,"children":14553},{"style":1079},[14554],{"type":53,"value":4649},{"type":43,"tag":476,"props":14556,"children":14557},{"style":1098},[14558],{"type":53,"value":1087},{"type":43,"tag":476,"props":14560,"children":14561},{"style":499},[14562],{"type":53,"value":597},{"type":43,"tag":476,"props":14564,"children":14565},{"style":590},[14566],{"type":53,"value":14567},"API Error:",{"type":43,"tag":476,"props":14569,"children":14570},{"style":499},[14571],{"type":53,"value":597},{"type":43,"tag":476,"props":14573,"children":14574},{"style":499},[14575],{"type":53,"value":625},{"type":43,"tag":476,"props":14577,"children":14578},{"style":509},[14579],{"type":53,"value":14580}," error",{"type":43,"tag":476,"props":14582,"children":14583},{"style":499},[14584],{"type":53,"value":332},{"type":43,"tag":476,"props":14586,"children":14587},{"style":509},[14588],{"type":53,"value":14589},"message",{"type":43,"tag":476,"props":14591,"children":14592},{"style":499},[14593],{"type":53,"value":625},{"type":43,"tag":476,"props":14595,"children":14596},{"style":509},[14597],{"type":53,"value":14580},{"type":43,"tag":476,"props":14599,"children":14600},{"style":499},[14601],{"type":53,"value":332},{"type":43,"tag":476,"props":14603,"children":14604},{"style":509},[14605],{"type":53,"value":14606},"response",{"type":43,"tag":476,"props":14608,"children":14609},{"style":499},[14610],{"type":53,"value":332},{"type":43,"tag":476,"props":14612,"children":14613},{"style":509},[14614],{"type":53,"value":11801},{"type":43,"tag":476,"props":14616,"children":14617},{"style":1098},[14618],{"type":53,"value":1272},{"type":43,"tag":476,"props":14620,"children":14621},{"style":499},[14622],{"type":53,"value":602},{"type":43,"tag":476,"props":14624,"children":14625},{"class":478,"line":571},[14626,14631,14636,14641,14645,14649,14653,14657,14661],{"type":43,"tag":476,"props":14627,"children":14628},{"style":499},[14629],{"type":53,"value":14630},"  }",{"type":43,"tag":476,"props":14632,"children":14633},{"style":493},[14634],{"type":53,"value":14635}," else",{"type":43,"tag":476,"props":14637,"children":14638},{"style":493},[14639],{"type":53,"value":14640}," if",{"type":43,"tag":476,"props":14642,"children":14643},{"style":1098},[14644],{"type":53,"value":1782},{"type":43,"tag":476,"props":14646,"children":14647},{"style":509},[14648],{"type":53,"value":4649},{"type":43,"tag":476,"props":14650,"children":14651},{"style":499},[14652],{"type":53,"value":14526},{"type":43,"tag":476,"props":14654,"children":14655},{"style":902},[14656],{"type":53,"value":630},{"type":43,"tag":476,"props":14658,"children":14659},{"style":1098},[14660],{"type":53,"value":1905},{"type":43,"tag":476,"props":14662,"children":14663},{"style":499},[14664],{"type":53,"value":1092},{"type":43,"tag":476,"props":14666,"children":14667},{"class":478,"line":605},[14668,14672,14676,14680,14684,14688,14693,14697,14701,14705,14709,14713,14717],{"type":43,"tag":476,"props":14669,"children":14670},{"style":509},[14671],{"type":53,"value":14546},{"type":43,"tag":476,"props":14673,"children":14674},{"style":499},[14675],{"type":53,"value":332},{"type":43,"tag":476,"props":14677,"children":14678},{"style":1079},[14679],{"type":53,"value":4649},{"type":43,"tag":476,"props":14681,"children":14682},{"style":1098},[14683],{"type":53,"value":1087},{"type":43,"tag":476,"props":14685,"children":14686},{"style":499},[14687],{"type":53,"value":597},{"type":43,"tag":476,"props":14689,"children":14690},{"style":590},[14691],{"type":53,"value":14692},"Stream Error:",{"type":43,"tag":476,"props":14694,"children":14695},{"style":499},[14696],{"type":53,"value":597},{"type":43,"tag":476,"props":14698,"children":14699},{"style":499},[14700],{"type":53,"value":625},{"type":43,"tag":476,"props":14702,"children":14703},{"style":509},[14704],{"type":53,"value":14580},{"type":43,"tag":476,"props":14706,"children":14707},{"style":499},[14708],{"type":53,"value":332},{"type":43,"tag":476,"props":14710,"children":14711},{"style":509},[14712],{"type":53,"value":14589},{"type":43,"tag":476,"props":14714,"children":14715},{"style":1098},[14716],{"type":53,"value":1272},{"type":43,"tag":476,"props":14718,"children":14719},{"style":499},[14720],{"type":53,"value":602},{"type":43,"tag":476,"props":14722,"children":14723},{"class":478,"line":658},[14724],{"type":43,"tag":476,"props":14725,"children":14726},{"style":499},[14727],{"type":53,"value":14728},"  }\n",{"type":43,"tag":476,"props":14730,"children":14731},{"class":478,"line":668},[14732,14737,14741],{"type":43,"tag":476,"props":14733,"children":14734},{"style":493},[14735],{"type":53,"value":14736},"  throw",{"type":43,"tag":476,"props":14738,"children":14739},{"style":509},[14740],{"type":53,"value":14580},{"type":43,"tag":476,"props":14742,"children":14743},{"style":499},[14744],{"type":53,"value":602},{"type":43,"tag":476,"props":14746,"children":14747},{"class":478,"line":677},[14748],{"type":43,"tag":476,"props":14749,"children":14750},{"style":499},[14751],{"type":53,"value":4497},{"type":43,"tag":44,"props":14753,"children":14755},{"id":14754},"cancellation-with-abortsignal",[14756],{"type":53,"value":14757},"Cancellation with AbortSignal",{"type":43,"tag":465,"props":14759,"children":14761},{"className":467,"code":14760,"language":469,"meta":470,"style":470},"const controller = new AbortController();\n\n\u002F\u002F Cancel after 30 seconds\nsetTimeout(() => controller.abort(), 30000);\n\nconst sandbox = await Sandbox.create({\n  signal: controller.signal,\n});\n\nconst result = await sandbox.runCommand({\n  cmd: \"npm\",\n  args: [\"test\"],\n  signal: controller.signal,\n});\n",[14762],{"type":43,"tag":58,"props":14763,"children":14764},{"__ignoreMap":470},[14765,14799,14806,14814,14869,14876,14915,14944,14959,14966,15005,15032,15068,15095],{"type":43,"tag":476,"props":14766,"children":14767},{"class":478,"line":479},[14768,14772,14777,14781,14786,14791,14795],{"type":43,"tag":476,"props":14769,"children":14770},{"style":896},[14771],{"type":53,"value":1053},{"type":43,"tag":476,"props":14773,"children":14774},{"style":509},[14775],{"type":53,"value":14776}," controller ",{"type":43,"tag":476,"props":14778,"children":14779},{"style":499},[14780],{"type":53,"value":1063},{"type":43,"tag":476,"props":14782,"children":14783},{"style":499},[14784],{"type":53,"value":14785}," new",{"type":43,"tag":476,"props":14787,"children":14788},{"style":1079},[14789],{"type":53,"value":14790}," AbortController",{"type":43,"tag":476,"props":14792,"children":14793},{"style":509},[14794],{"type":53,"value":4370},{"type":43,"tag":476,"props":14796,"children":14797},{"style":499},[14798],{"type":53,"value":602},{"type":43,"tag":476,"props":14800,"children":14801},{"class":478,"line":489},[14802],{"type":43,"tag":476,"props":14803,"children":14804},{"emptyLinePlaceholder":662},[14805],{"type":53,"value":665},{"type":43,"tag":476,"props":14807,"children":14808},{"class":478,"line":505},[14809],{"type":43,"tag":476,"props":14810,"children":14811},{"style":483},[14812],{"type":53,"value":14813},"\u002F\u002F Cancel after 30 seconds\n",{"type":43,"tag":476,"props":14815,"children":14816},{"class":478,"line":519},[14817,14822,14826,14830,14834,14839,14843,14848,14852,14856,14861,14865],{"type":43,"tag":476,"props":14818,"children":14819},{"style":1079},[14820],{"type":53,"value":14821},"setTimeout",{"type":43,"tag":476,"props":14823,"children":14824},{"style":509},[14825],{"type":53,"value":1087},{"type":43,"tag":476,"props":14827,"children":14828},{"style":499},[14829],{"type":53,"value":4370},{"type":43,"tag":476,"props":14831,"children":14832},{"style":896},[14833],{"type":53,"value":1797},{"type":43,"tag":476,"props":14835,"children":14836},{"style":509},[14837],{"type":53,"value":14838}," controller",{"type":43,"tag":476,"props":14840,"children":14841},{"style":499},[14842],{"type":53,"value":332},{"type":43,"tag":476,"props":14844,"children":14845},{"style":1079},[14846],{"type":53,"value":14847},"abort",{"type":43,"tag":476,"props":14849,"children":14850},{"style":509},[14851],{"type":53,"value":4370},{"type":43,"tag":476,"props":14853,"children":14854},{"style":499},[14855],{"type":53,"value":625},{"type":43,"tag":476,"props":14857,"children":14858},{"style":1184},[14859],{"type":53,"value":14860}," 30000",{"type":43,"tag":476,"props":14862,"children":14863},{"style":509},[14864],{"type":53,"value":1272},{"type":43,"tag":476,"props":14866,"children":14867},{"style":499},[14868],{"type":53,"value":602},{"type":43,"tag":476,"props":14870,"children":14871},{"class":478,"line":532},[14872],{"type":43,"tag":476,"props":14873,"children":14874},{"emptyLinePlaceholder":662},[14875],{"type":53,"value":665},{"type":43,"tag":476,"props":14877,"children":14878},{"class":478,"line":545},[14879,14883,14887,14891,14895,14899,14903,14907,14911],{"type":43,"tag":476,"props":14880,"children":14881},{"style":896},[14882],{"type":53,"value":1053},{"type":43,"tag":476,"props":14884,"children":14885},{"style":509},[14886],{"type":53,"value":1058},{"type":43,"tag":476,"props":14888,"children":14889},{"style":499},[14890],{"type":53,"value":1063},{"type":43,"tag":476,"props":14892,"children":14893},{"style":493},[14894],{"type":53,"value":1068},{"type":43,"tag":476,"props":14896,"children":14897},{"style":509},[14898],{"type":53,"value":1014},{"type":43,"tag":476,"props":14900,"children":14901},{"style":499},[14902],{"type":53,"value":332},{"type":43,"tag":476,"props":14904,"children":14905},{"style":1079},[14906],{"type":53,"value":1082},{"type":43,"tag":476,"props":14908,"children":14909},{"style":509},[14910],{"type":53,"value":1087},{"type":43,"tag":476,"props":14912,"children":14913},{"style":499},[14914],{"type":53,"value":1092},{"type":43,"tag":476,"props":14916,"children":14917},{"class":478,"line":558},[14918,14923,14927,14931,14935,14940],{"type":43,"tag":476,"props":14919,"children":14920},{"style":1098},[14921],{"type":53,"value":14922},"  signal",{"type":43,"tag":476,"props":14924,"children":14925},{"style":499},[14926],{"type":53,"value":1106},{"type":43,"tag":476,"props":14928,"children":14929},{"style":509},[14930],{"type":53,"value":14838},{"type":43,"tag":476,"props":14932,"children":14933},{"style":499},[14934],{"type":53,"value":332},{"type":43,"tag":476,"props":14936,"children":14937},{"style":509},[14938],{"type":53,"value":14939},"signal",{"type":43,"tag":476,"props":14941,"children":14942},{"style":499},[14943],{"type":53,"value":296},{"type":43,"tag":476,"props":14945,"children":14946},{"class":478,"line":571},[14947,14951,14955],{"type":43,"tag":476,"props":14948,"children":14949},{"style":499},[14950],{"type":53,"value":577},{"type":43,"tag":476,"props":14952,"children":14953},{"style":509},[14954],{"type":53,"value":1272},{"type":43,"tag":476,"props":14956,"children":14957},{"style":499},[14958],{"type":53,"value":602},{"type":43,"tag":476,"props":14960,"children":14961},{"class":478,"line":605},[14962],{"type":43,"tag":476,"props":14963,"children":14964},{"emptyLinePlaceholder":662},[14965],{"type":53,"value":665},{"type":43,"tag":476,"props":14967,"children":14968},{"class":478,"line":658},[14969,14973,14977,14981,14985,14989,14993,14997,15001],{"type":43,"tag":476,"props":14970,"children":14971},{"style":896},[14972],{"type":53,"value":1053},{"type":43,"tag":476,"props":14974,"children":14975},{"style":509},[14976],{"type":53,"value":4528},{"type":43,"tag":476,"props":14978,"children":14979},{"style":499},[14980],{"type":53,"value":1063},{"type":43,"tag":476,"props":14982,"children":14983},{"style":493},[14984],{"type":53,"value":1068},{"type":43,"tag":476,"props":14986,"children":14987},{"style":509},[14988],{"type":53,"value":4387},{"type":43,"tag":476,"props":14990,"children":14991},{"style":499},[14992],{"type":53,"value":332},{"type":43,"tag":476,"props":14994,"children":14995},{"style":1079},[14996],{"type":53,"value":259},{"type":43,"tag":476,"props":14998,"children":14999},{"style":509},[15000],{"type":53,"value":1087},{"type":43,"tag":476,"props":15002,"children":15003},{"style":499},[15004],{"type":53,"value":1092},{"type":43,"tag":476,"props":15006,"children":15007},{"class":478,"line":668},[15008,15012,15016,15020,15024,15028],{"type":43,"tag":476,"props":15009,"children":15010},{"style":1098},[15011],{"type":53,"value":4764},{"type":43,"tag":476,"props":15013,"children":15014},{"style":499},[15015],{"type":53,"value":1106},{"type":43,"tag":476,"props":15017,"children":15018},{"style":499},[15019],{"type":53,"value":587},{"type":43,"tag":476,"props":15021,"children":15022},{"style":590},[15023],{"type":53,"value":1954},{"type":43,"tag":476,"props":15025,"children":15026},{"style":499},[15027],{"type":53,"value":597},{"type":43,"tag":476,"props":15029,"children":15030},{"style":499},[15031],{"type":53,"value":296},{"type":43,"tag":476,"props":15033,"children":15034},{"class":478,"line":677},[15035,15039,15043,15047,15051,15056,15060,15064],{"type":43,"tag":476,"props":15036,"children":15037},{"style":1098},[15038],{"type":53,"value":4792},{"type":43,"tag":476,"props":15040,"children":15041},{"style":499},[15042],{"type":53,"value":1106},{"type":43,"tag":476,"props":15044,"children":15045},{"style":509},[15046],{"type":53,"value":1214},{"type":43,"tag":476,"props":15048,"children":15049},{"style":499},[15050],{"type":53,"value":597},{"type":43,"tag":476,"props":15052,"children":15053},{"style":590},[15054],{"type":53,"value":15055},"test",{"type":43,"tag":476,"props":15057,"children":15058},{"style":499},[15059],{"type":53,"value":597},{"type":43,"tag":476,"props":15061,"children":15062},{"style":509},[15063],{"type":53,"value":1224},{"type":43,"tag":476,"props":15065,"children":15066},{"style":499},[15067],{"type":53,"value":296},{"type":43,"tag":476,"props":15069,"children":15070},{"class":478,"line":694},[15071,15075,15079,15083,15087,15091],{"type":43,"tag":476,"props":15072,"children":15073},{"style":1098},[15074],{"type":53,"value":14922},{"type":43,"tag":476,"props":15076,"children":15077},{"style":499},[15078],{"type":53,"value":1106},{"type":43,"tag":476,"props":15080,"children":15081},{"style":509},[15082],{"type":53,"value":14838},{"type":43,"tag":476,"props":15084,"children":15085},{"style":499},[15086],{"type":53,"value":332},{"type":43,"tag":476,"props":15088,"children":15089},{"style":509},[15090],{"type":53,"value":14939},{"type":43,"tag":476,"props":15092,"children":15093},{"style":499},[15094],{"type":53,"value":296},{"type":43,"tag":476,"props":15096,"children":15097},{"class":478,"line":707},[15098,15102,15106],{"type":43,"tag":476,"props":15099,"children":15100},{"style":499},[15101],{"type":53,"value":577},{"type":43,"tag":476,"props":15103,"children":15104},{"style":509},[15105],{"type":53,"value":1272},{"type":43,"tag":476,"props":15107,"children":15108},{"style":499},[15109],{"type":53,"value":602},{"type":43,"tag":44,"props":15111,"children":15113},{"id":15112},"limitations",[15114],{"type":53,"value":15115},"Limitations",{"type":43,"tag":15117,"props":15118,"children":15119},"table",{},[15120,15139],{"type":43,"tag":15121,"props":15122,"children":15123},"thead",{},[15124],{"type":43,"tag":15125,"props":15126,"children":15127},"tr",{},[15128,15134],{"type":43,"tag":15129,"props":15130,"children":15131},"th",{},[15132],{"type":53,"value":15133},"Limitation",{"type":43,"tag":15129,"props":15135,"children":15136},{},[15137],{"type":53,"value":15138},"Details",{"type":43,"tag":15140,"props":15141,"children":15142},"tbody",{},[15143,15157,15170,15183,15196,15209,15222,15241],{"type":43,"tag":15125,"props":15144,"children":15145},{},[15146,15152],{"type":43,"tag":15147,"props":15148,"children":15149},"td",{},[15150],{"type":53,"value":15151},"Max vCPUs",{"type":43,"tag":15147,"props":15153,"children":15154},{},[15155],{"type":53,"value":15156},"4 vCPUs on Hobby, 8 vCPUs on Pro, 32 vCPUs on Enterprise (2048 MB RAM per vCPU)",{"type":43,"tag":15125,"props":15158,"children":15159},{},[15160,15165],{"type":43,"tag":15147,"props":15161,"children":15162},{},[15163],{"type":53,"value":15164},"Max ports",{"type":43,"tag":15147,"props":15166,"children":15167},{},[15168],{"type":53,"value":15169},"15 exposed ports",{"type":43,"tag":15125,"props":15171,"children":15172},{},[15173,15178],{"type":43,"tag":15147,"props":15174,"children":15175},{},[15176],{"type":53,"value":15177},"Max tags",{"type":43,"tag":15147,"props":15179,"children":15180},{},[15181],{"type":53,"value":15182},"5 key-value tags per sandbox",{"type":43,"tag":15125,"props":15184,"children":15185},{},[15186,15191],{"type":43,"tag":15147,"props":15187,"children":15188},{},[15189],{"type":53,"value":15190},"Max timeout",{"type":43,"tag":15147,"props":15192,"children":15193},{},[15194],{"type":53,"value":15195},"24 hours (Pro\u002FEnterprise), 45 minutes (Hobby)",{"type":43,"tag":15125,"props":15197,"children":15198},{},[15199,15204],{"type":43,"tag":15147,"props":15200,"children":15201},{},[15202],{"type":53,"value":15203},"Default timeout",{"type":43,"tag":15147,"props":15205,"children":15206},{},[15207],{"type":53,"value":15208},"5 minutes",{"type":43,"tag":15125,"props":15210,"children":15211},{},[15212,15217],{"type":43,"tag":15147,"props":15213,"children":15214},{},[15215],{"type":53,"value":15216},"Base system",{"type":43,"tag":15147,"props":15218,"children":15219},{},[15220],{"type":53,"value":15221},"Amazon Linux 2023",{"type":43,"tag":15125,"props":15223,"children":15224},{},[15225,15230],{"type":43,"tag":15147,"props":15226,"children":15227},{},[15228],{"type":53,"value":15229},"User context",{"type":43,"tag":15147,"props":15231,"children":15232},{},[15233,15239],{"type":43,"tag":58,"props":15234,"children":15236},{"className":15235},[],[15237],{"type":53,"value":15238},"vercel-sandbox",{"type":53,"value":15240}," user",{"type":43,"tag":15125,"props":15242,"children":15243},{},[15244,15249],{"type":43,"tag":15147,"props":15245,"children":15246},{},[15247],{"type":53,"value":15248},"Writable path",{"type":43,"tag":15147,"props":15250,"children":15251},{},[15252],{"type":43,"tag":58,"props":15253,"children":15255},{"className":15254},[],[15256],{"type":53,"value":15257},"\u002Fvercel\u002Fsandbox",{"type":43,"tag":44,"props":15259,"children":15261},{"id":15260},"system-packages",[15262],{"type":53,"value":15263},"System Packages",{"type":43,"tag":67,"props":15265,"children":15266},{},[15267,15269,15274,15275,15281,15282,15288,15289,15295,15296,15302,15303,15309,15310,15316,15317,15323,15324,15330],{"type":53,"value":15268},"Pre-installed: ",{"type":43,"tag":58,"props":15270,"children":15272},{"className":15271},[],[15273],{"type":53,"value":2622},{"type":53,"value":261},{"type":43,"tag":58,"props":15276,"children":15278},{"className":15277},[],[15279],{"type":53,"value":15280},"tar",{"type":53,"value":261},{"type":43,"tag":58,"props":15283,"children":15285},{"className":15284},[],[15286],{"type":53,"value":15287},"gzip",{"type":53,"value":261},{"type":43,"tag":58,"props":15290,"children":15292},{"className":15291},[],[15293],{"type":53,"value":15294},"unzip",{"type":53,"value":261},{"type":43,"tag":58,"props":15297,"children":15299},{"className":15298},[],[15300],{"type":53,"value":15301},"curl",{"type":53,"value":261},{"type":43,"tag":58,"props":15304,"children":15306},{"className":15305},[],[15307],{"type":53,"value":15308},"openssl",{"type":53,"value":261},{"type":43,"tag":58,"props":15311,"children":15313},{"className":15312},[],[15314],{"type":53,"value":15315},"procps",{"type":53,"value":261},{"type":43,"tag":58,"props":15318,"children":15320},{"className":15319},[],[15321],{"type":53,"value":15322},"findutils",{"type":53,"value":261},{"type":43,"tag":58,"props":15325,"children":15327},{"className":15326},[],[15328],{"type":53,"value":15329},"which",{"type":53,"value":332},{"type":43,"tag":67,"props":15332,"children":15333},{},[15334],{"type":53,"value":15335},"Install additional packages with sudo:",{"type":43,"tag":465,"props":15337,"children":15339},{"className":467,"code":15338,"language":469,"meta":470,"style":470},"await sandbox.runCommand({\n  cmd: \"dnf\",\n  args: [\"install\", \"-y\", \"package-name\"],\n  sudo: true,\n});\n",[15340],{"type":43,"tag":58,"props":15341,"children":15342},{"__ignoreMap":470},[15343,15370,15397,15465,15484],{"type":43,"tag":476,"props":15344,"children":15345},{"class":478,"line":479},[15346,15350,15354,15358,15362,15366],{"type":43,"tag":476,"props":15347,"children":15348},{"style":493},[15349],{"type":53,"value":3642},{"type":43,"tag":476,"props":15351,"children":15352},{"style":509},[15353],{"type":53,"value":4387},{"type":43,"tag":476,"props":15355,"children":15356},{"style":499},[15357],{"type":53,"value":332},{"type":43,"tag":476,"props":15359,"children":15360},{"style":1079},[15361],{"type":53,"value":259},{"type":43,"tag":476,"props":15363,"children":15364},{"style":509},[15365],{"type":53,"value":1087},{"type":43,"tag":476,"props":15367,"children":15368},{"style":499},[15369],{"type":53,"value":1092},{"type":43,"tag":476,"props":15371,"children":15372},{"class":478,"line":489},[15373,15377,15381,15385,15389,15393],{"type":43,"tag":476,"props":15374,"children":15375},{"style":1098},[15376],{"type":53,"value":4764},{"type":43,"tag":476,"props":15378,"children":15379},{"style":499},[15380],{"type":53,"value":1106},{"type":43,"tag":476,"props":15382,"children":15383},{"style":499},[15384],{"type":53,"value":587},{"type":43,"tag":476,"props":15386,"children":15387},{"style":590},[15388],{"type":53,"value":5379},{"type":43,"tag":476,"props":15390,"children":15391},{"style":499},[15392],{"type":53,"value":597},{"type":43,"tag":476,"props":15394,"children":15395},{"style":499},[15396],{"type":53,"value":296},{"type":43,"tag":476,"props":15398,"children":15399},{"class":478,"line":505},[15400,15404,15408,15412,15416,15420,15424,15428,15432,15436,15440,15444,15448,15453,15457,15461],{"type":43,"tag":476,"props":15401,"children":15402},{"style":1098},[15403],{"type":53,"value":4792},{"type":43,"tag":476,"props":15405,"children":15406},{"style":499},[15407],{"type":53,"value":1106},{"type":43,"tag":476,"props":15409,"children":15410},{"style":509},[15411],{"type":53,"value":1214},{"type":43,"tag":476,"props":15413,"children":15414},{"style":499},[15415],{"type":53,"value":597},{"type":43,"tag":476,"props":15417,"children":15418},{"style":590},[15419],{"type":53,"value":1975},{"type":43,"tag":476,"props":15421,"children":15422},{"style":499},[15423],{"type":53,"value":597},{"type":43,"tag":476,"props":15425,"children":15426},{"style":499},[15427],{"type":53,"value":625},{"type":43,"tag":476,"props":15429,"children":15430},{"style":499},[15431],{"type":53,"value":587},{"type":43,"tag":476,"props":15433,"children":15434},{"style":590},[15435],{"type":53,"value":5427},{"type":43,"tag":476,"props":15437,"children":15438},{"style":499},[15439],{"type":53,"value":597},{"type":43,"tag":476,"props":15441,"children":15442},{"style":499},[15443],{"type":53,"value":625},{"type":43,"tag":476,"props":15445,"children":15446},{"style":499},[15447],{"type":53,"value":587},{"type":43,"tag":476,"props":15449,"children":15450},{"style":590},[15451],{"type":53,"value":15452},"package-name",{"type":43,"tag":476,"props":15454,"children":15455},{"style":499},[15456],{"type":53,"value":597},{"type":43,"tag":476,"props":15458,"children":15459},{"style":509},[15460],{"type":53,"value":1224},{"type":43,"tag":476,"props":15462,"children":15463},{"style":499},[15464],{"type":53,"value":296},{"type":43,"tag":476,"props":15466,"children":15467},{"class":478,"line":519},[15468,15472,15476,15480],{"type":43,"tag":476,"props":15469,"children":15470},{"style":1098},[15471],{"type":53,"value":4913},{"type":43,"tag":476,"props":15473,"children":15474},{"style":499},[15475],{"type":53,"value":1106},{"type":43,"tag":476,"props":15477,"children":15478},{"style":1416},[15479],{"type":53,"value":1419},{"type":43,"tag":476,"props":15481,"children":15482},{"style":499},[15483],{"type":53,"value":296},{"type":43,"tag":476,"props":15485,"children":15486},{"class":478,"line":532},[15487,15491,15495],{"type":43,"tag":476,"props":15488,"children":15489},{"style":499},[15490],{"type":53,"value":577},{"type":43,"tag":476,"props":15492,"children":15493},{"style":509},[15494],{"type":53,"value":1272},{"type":43,"tag":476,"props":15496,"children":15497},{"style":499},[15498],{"type":53,"value":602},{"type":43,"tag":67,"props":15500,"children":15501},{},[15502,15504,15509,15511,15517],{"type":53,"value":15503},"This is fine for one-offs, but ",{"type":43,"tag":58,"props":15505,"children":15507},{"className":15506},[],[15508],{"type":53,"value":5379},{"type":53,"value":15510}," limits you to what is packaged for the\nAmazon Linux 2023 base system. If you need a different distro or base\nenvironment, use a ",{"type":43,"tag":103,"props":15512,"children":15514},{"href":15513},"#from-a-custom-image-vcr",[15515],{"type":53,"value":15516},"custom image",{"type":53,"value":15518}," instead.",{"type":43,"tag":44,"props":15520,"children":15522},{"id":15521},"cli-quick-reference",[15523],{"type":53,"value":15524},"CLI Quick Reference",{"type":43,"tag":465,"props":15526,"children":15528},{"className":14124,"code":15527,"language":14126,"meta":470,"style":470},"# Install CLI\npnpm i -g sandbox\n\n# Login \u002F Logout\nsandbox login\nsandbox logout\n\n# Create and connect\nsandbox create --connect\nsandbox create --name my-app\nsandbox create --image my-repo:v1            # Boot from a VCR image (not with --runtime)\nsandbox create --non-persistent              # Disable filesystem persistence\nsandbox create --snapshot-expiration 7d      # Default snapshot TTL\nsandbox create --keep-last-snapshots 1       # Retention policy\nsandbox create --tag env=staging             # Repeatable\n\n# Fork an existing sandbox (inherits config, incl. env; --env replaces it)\nsandbox fork \u003Csource>\nsandbox fork \u003Csource> --name my-fork --vcpus 4 --env FOO=1\n\n# List sandboxes (paginated, filterable)\nsandbox ls\nsandbox ls --name-prefix ci- --sort-by name\nsandbox ls --tag env=staging --limit 100 --cursor \u003Ctoken>\n\n# Run a command in a new sandbox (create + exec in one step)\nsandbox run -- node -e \"console.log('hello')\"\nsandbox run --name my-app -- npm test        # Resumes existing sandbox if present\nsandbox run --stop -- npm build              # Stop the session when the command exits\nsandbox run --rm -- npm build                # DELETES the sandbox after running\n\n# Execute command in an existing sandbox\nsandbox exec \u003Cname> -- npm install\nsandbox exec \u003Cname> --stop -- npm build\n\n# Start an interactive shell\nsandbox connect \u003Cname>\n\n# Copy files\nsandbox cp local-file.txt \u003Cname>:\u002Fvercel\u002Fsandbox\u002F\n\n# Stop sandbox (synchronous; reports snapshot + usage)\nsandbox stop \u003Cname>\n\n# Permanently delete sandbox and all its snapshots\nsandbox remove \u003Cname>\n\n# Sessions\nsandbox sessions list \u003Cname>\n\n# Snapshots\nsandbox snapshot \u003Cname>\nsandbox snapshots list --name \u003Cname>\nsandbox snapshots get \u003Csnapshot-id>\nsandbox snapshots remove \u003Csnapshot-id>\nsandbox snapshots tree \u003Cname>                # Walk the tree from the sandbox's current snapshot\nsandbox snapshots tree \u003Cname> --cursor \u003Csnapshot-id> --sort-order asc\n\n# Config (view + update any sandbox parameter)\nsandbox config list \u003Cname>\nsandbox config vcpus \u003Cname> \u003Ccount>\nsandbox config timeout \u003Cname> \u003Cduration>\nsandbox config persistent \u003Cname> \u003Ctrue|false>\nsandbox config snapshot-expiration \u003Cname> \u003Cduration|none>\nsandbox config keep-last-snapshots \u003Cname> \u003Ccount>\nsandbox config keep-last-snapshots-for \u003Cname> \u003Cduration|none>\nsandbox config delete-evicted-snapshots \u003Cname> \u003Ctrue|false>\nsandbox config current-snapshot \u003Cname> \u003Csnapshot-id>\nsandbox config network-policy \u003Cname> --network-policy deny-all\nsandbox config tags \u003Cname> --tag env=prod\n",[15529],{"type":43,"tag":58,"props":15530,"children":15531},{"__ignoreMap":470},[15532,15540,15563,15570,15578,15590,15602,15609,15617,15634,15655,15681,15702,15728,15753,15779,15786,15794,15826,15887,15894,15902,15914,15946,15998,16006,16015,16056,16096,16131,16165,16173,16182,16225,16270,16277,16286,16315,16323,16332,16371,16379,16388,16417,16425,16434,16463,16471,16480,16514,16522,16531,16559,16596,16631,16663,16701,16763,16771,16780,16813,16863,16913,16969,17024,17073,17126,17179,17228,17271],{"type":43,"tag":476,"props":15533,"children":15534},{"class":478,"line":479},[15535],{"type":43,"tag":476,"props":15536,"children":15537},{"style":483},[15538],{"type":53,"value":15539},"# Install CLI\n",{"type":43,"tag":476,"props":15541,"children":15542},{"class":478,"line":489},[15543,15548,15553,15558],{"type":43,"tag":476,"props":15544,"children":15545},{"style":902},[15546],{"type":53,"value":15547},"pnpm",{"type":43,"tag":476,"props":15549,"children":15550},{"style":590},[15551],{"type":53,"value":15552}," i",{"type":43,"tag":476,"props":15554,"children":15555},{"style":590},[15556],{"type":53,"value":15557}," -g",{"type":43,"tag":476,"props":15559,"children":15560},{"style":590},[15561],{"type":53,"value":15562}," sandbox\n",{"type":43,"tag":476,"props":15564,"children":15565},{"class":478,"line":505},[15566],{"type":43,"tag":476,"props":15567,"children":15568},{"emptyLinePlaceholder":662},[15569],{"type":53,"value":665},{"type":43,"tag":476,"props":15571,"children":15572},{"class":478,"line":519},[15573],{"type":43,"tag":476,"props":15574,"children":15575},{"style":483},[15576],{"type":53,"value":15577},"# Login \u002F Logout\n",{"type":43,"tag":476,"props":15579,"children":15580},{"class":478,"line":532},[15581,15585],{"type":43,"tag":476,"props":15582,"children":15583},{"style":902},[15584],{"type":53,"value":4},{"type":43,"tag":476,"props":15586,"children":15587},{"style":590},[15588],{"type":53,"value":15589}," login\n",{"type":43,"tag":476,"props":15591,"children":15592},{"class":478,"line":545},[15593,15597],{"type":43,"tag":476,"props":15594,"children":15595},{"style":902},[15596],{"type":53,"value":4},{"type":43,"tag":476,"props":15598,"children":15599},{"style":590},[15600],{"type":53,"value":15601}," logout\n",{"type":43,"tag":476,"props":15603,"children":15604},{"class":478,"line":558},[15605],{"type":43,"tag":476,"props":15606,"children":15607},{"emptyLinePlaceholder":662},[15608],{"type":53,"value":665},{"type":43,"tag":476,"props":15610,"children":15611},{"class":478,"line":571},[15612],{"type":43,"tag":476,"props":15613,"children":15614},{"style":483},[15615],{"type":53,"value":15616},"# Create and connect\n",{"type":43,"tag":476,"props":15618,"children":15619},{"class":478,"line":605},[15620,15624,15629],{"type":43,"tag":476,"props":15621,"children":15622},{"style":902},[15623],{"type":53,"value":4},{"type":43,"tag":476,"props":15625,"children":15626},{"style":590},[15627],{"type":53,"value":15628}," create",{"type":43,"tag":476,"props":15630,"children":15631},{"style":590},[15632],{"type":53,"value":15633}," --connect\n",{"type":43,"tag":476,"props":15635,"children":15636},{"class":478,"line":658},[15637,15641,15645,15650],{"type":43,"tag":476,"props":15638,"children":15639},{"style":902},[15640],{"type":53,"value":4},{"type":43,"tag":476,"props":15642,"children":15643},{"style":590},[15644],{"type":53,"value":15628},{"type":43,"tag":476,"props":15646,"children":15647},{"style":590},[15648],{"type":53,"value":15649}," --name",{"type":43,"tag":476,"props":15651,"children":15652},{"style":590},[15653],{"type":53,"value":15654}," my-app\n",{"type":43,"tag":476,"props":15656,"children":15657},{"class":478,"line":668},[15658,15662,15666,15671,15676],{"type":43,"tag":476,"props":15659,"children":15660},{"style":902},[15661],{"type":53,"value":4},{"type":43,"tag":476,"props":15663,"children":15664},{"style":590},[15665],{"type":53,"value":15628},{"type":43,"tag":476,"props":15667,"children":15668},{"style":590},[15669],{"type":53,"value":15670}," --image",{"type":43,"tag":476,"props":15672,"children":15673},{"style":590},[15674],{"type":53,"value":15675}," my-repo:v1",{"type":43,"tag":476,"props":15677,"children":15678},{"style":483},[15679],{"type":53,"value":15680},"            # Boot from a VCR image (not with --runtime)\n",{"type":43,"tag":476,"props":15682,"children":15683},{"class":478,"line":677},[15684,15688,15692,15697],{"type":43,"tag":476,"props":15685,"children":15686},{"style":902},[15687],{"type":53,"value":4},{"type":43,"tag":476,"props":15689,"children":15690},{"style":590},[15691],{"type":53,"value":15628},{"type":43,"tag":476,"props":15693,"children":15694},{"style":590},[15695],{"type":53,"value":15696}," --non-persistent",{"type":43,"tag":476,"props":15698,"children":15699},{"style":483},[15700],{"type":53,"value":15701},"              # Disable filesystem persistence\n",{"type":43,"tag":476,"props":15703,"children":15704},{"class":478,"line":694},[15705,15709,15713,15718,15723],{"type":43,"tag":476,"props":15706,"children":15707},{"style":902},[15708],{"type":53,"value":4},{"type":43,"tag":476,"props":15710,"children":15711},{"style":590},[15712],{"type":53,"value":15628},{"type":43,"tag":476,"props":15714,"children":15715},{"style":590},[15716],{"type":53,"value":15717}," --snapshot-expiration",{"type":43,"tag":476,"props":15719,"children":15720},{"style":590},[15721],{"type":53,"value":15722}," 7d",{"type":43,"tag":476,"props":15724,"children":15725},{"style":483},[15726],{"type":53,"value":15727},"      # Default snapshot TTL\n",{"type":43,"tag":476,"props":15729,"children":15730},{"class":478,"line":707},[15731,15735,15739,15744,15748],{"type":43,"tag":476,"props":15732,"children":15733},{"style":902},[15734],{"type":53,"value":4},{"type":43,"tag":476,"props":15736,"children":15737},{"style":590},[15738],{"type":53,"value":15628},{"type":43,"tag":476,"props":15740,"children":15741},{"style":590},[15742],{"type":53,"value":15743}," --keep-last-snapshots",{"type":43,"tag":476,"props":15745,"children":15746},{"style":1184},[15747],{"type":53,"value":2676},{"type":43,"tag":476,"props":15749,"children":15750},{"style":483},[15751],{"type":53,"value":15752},"       # Retention policy\n",{"type":43,"tag":476,"props":15754,"children":15755},{"class":478,"line":720},[15756,15760,15764,15769,15774],{"type":43,"tag":476,"props":15757,"children":15758},{"style":902},[15759],{"type":53,"value":4},{"type":43,"tag":476,"props":15761,"children":15762},{"style":590},[15763],{"type":53,"value":15628},{"type":43,"tag":476,"props":15765,"children":15766},{"style":590},[15767],{"type":53,"value":15768}," --tag",{"type":43,"tag":476,"props":15770,"children":15771},{"style":590},[15772],{"type":53,"value":15773}," env=staging",{"type":43,"tag":476,"props":15775,"children":15776},{"style":483},[15777],{"type":53,"value":15778},"             # Repeatable\n",{"type":43,"tag":476,"props":15780,"children":15781},{"class":478,"line":733},[15782],{"type":43,"tag":476,"props":15783,"children":15784},{"emptyLinePlaceholder":662},[15785],{"type":53,"value":665},{"type":43,"tag":476,"props":15787,"children":15788},{"class":478,"line":761},[15789],{"type":43,"tag":476,"props":15790,"children":15791},{"style":483},[15792],{"type":53,"value":15793},"# Fork an existing sandbox (inherits config, incl. env; --env replaces it)\n",{"type":43,"tag":476,"props":15795,"children":15796},{"class":478,"line":769},[15797,15801,15806,15811,15816,15821],{"type":43,"tag":476,"props":15798,"children":15799},{"style":902},[15800],{"type":53,"value":4},{"type":43,"tag":476,"props":15802,"children":15803},{"style":590},[15804],{"type":53,"value":15805}," fork",{"type":43,"tag":476,"props":15807,"children":15808},{"style":499},[15809],{"type":53,"value":15810}," \u003C",{"type":43,"tag":476,"props":15812,"children":15813},{"style":590},[15814],{"type":53,"value":15815},"sourc",{"type":43,"tag":476,"props":15817,"children":15818},{"style":509},[15819],{"type":53,"value":15820},"e",{"type":43,"tag":476,"props":15822,"children":15823},{"style":499},[15824],{"type":53,"value":15825},">\n",{"type":43,"tag":476,"props":15827,"children":15828},{"class":478,"line":778},[15829,15833,15837,15841,15845,15849,15854,15858,15863,15868,15872,15877,15882],{"type":43,"tag":476,"props":15830,"children":15831},{"style":902},[15832],{"type":53,"value":4},{"type":43,"tag":476,"props":15834,"children":15835},{"style":590},[15836],{"type":53,"value":15805},{"type":43,"tag":476,"props":15838,"children":15839},{"style":499},[15840],{"type":53,"value":15810},{"type":43,"tag":476,"props":15842,"children":15843},{"style":590},[15844],{"type":53,"value":15815},{"type":43,"tag":476,"props":15846,"children":15847},{"style":509},[15848],{"type":53,"value":15820},{"type":43,"tag":476,"props":15850,"children":15851},{"style":499},[15852],{"type":53,"value":15853},">",{"type":43,"tag":476,"props":15855,"children":15856},{"style":590},[15857],{"type":53,"value":15649},{"type":43,"tag":476,"props":15859,"children":15860},{"style":590},[15861],{"type":53,"value":15862}," my-fork",{"type":43,"tag":476,"props":15864,"children":15865},{"style":590},[15866],{"type":53,"value":15867}," --vcpus",{"type":43,"tag":476,"props":15869,"children":15870},{"style":1184},[15871],{"type":53,"value":1187},{"type":43,"tag":476,"props":15873,"children":15874},{"style":590},[15875],{"type":53,"value":15876}," --env",{"type":43,"tag":476,"props":15878,"children":15879},{"style":590},[15880],{"type":53,"value":15881}," FOO=",{"type":43,"tag":476,"props":15883,"children":15884},{"style":1184},[15885],{"type":53,"value":15886},"1\n",{"type":43,"tag":476,"props":15888,"children":15889},{"class":478,"line":820},[15890],{"type":43,"tag":476,"props":15891,"children":15892},{"emptyLinePlaceholder":662},[15893],{"type":53,"value":665},{"type":43,"tag":476,"props":15895,"children":15896},{"class":478,"line":828},[15897],{"type":43,"tag":476,"props":15898,"children":15899},{"style":483},[15900],{"type":53,"value":15901},"# List sandboxes (paginated, filterable)\n",{"type":43,"tag":476,"props":15903,"children":15904},{"class":478,"line":837},[15905,15909],{"type":43,"tag":476,"props":15906,"children":15907},{"style":902},[15908],{"type":53,"value":4},{"type":43,"tag":476,"props":15910,"children":15911},{"style":590},[15912],{"type":53,"value":15913}," ls\n",{"type":43,"tag":476,"props":15915,"children":15916},{"class":478,"line":7233},[15917,15921,15926,15931,15936,15941],{"type":43,"tag":476,"props":15918,"children":15919},{"style":902},[15920],{"type":53,"value":4},{"type":43,"tag":476,"props":15922,"children":15923},{"style":590},[15924],{"type":53,"value":15925}," ls",{"type":43,"tag":476,"props":15927,"children":15928},{"style":590},[15929],{"type":53,"value":15930}," --name-prefix",{"type":43,"tag":476,"props":15932,"children":15933},{"style":590},[15934],{"type":53,"value":15935}," ci-",{"type":43,"tag":476,"props":15937,"children":15938},{"style":590},[15939],{"type":53,"value":15940}," --sort-by",{"type":43,"tag":476,"props":15942,"children":15943},{"style":590},[15944],{"type":53,"value":15945}," name\n",{"type":43,"tag":476,"props":15947,"children":15948},{"class":478,"line":7253},[15949,15953,15957,15961,15965,15970,15975,15980,15984,15989,15994],{"type":43,"tag":476,"props":15950,"children":15951},{"style":902},[15952],{"type":53,"value":4},{"type":43,"tag":476,"props":15954,"children":15955},{"style":590},[15956],{"type":53,"value":15925},{"type":43,"tag":476,"props":15958,"children":15959},{"style":590},[15960],{"type":53,"value":15768},{"type":43,"tag":476,"props":15962,"children":15963},{"style":590},[15964],{"type":53,"value":15773},{"type":43,"tag":476,"props":15966,"children":15967},{"style":590},[15968],{"type":53,"value":15969}," --limit",{"type":43,"tag":476,"props":15971,"children":15972},{"style":1184},[15973],{"type":53,"value":15974}," 100",{"type":43,"tag":476,"props":15976,"children":15977},{"style":590},[15978],{"type":53,"value":15979}," --cursor",{"type":43,"tag":476,"props":15981,"children":15982},{"style":499},[15983],{"type":53,"value":15810},{"type":43,"tag":476,"props":15985,"children":15986},{"style":590},[15987],{"type":53,"value":15988},"toke",{"type":43,"tag":476,"props":15990,"children":15991},{"style":509},[15992],{"type":53,"value":15993},"n",{"type":43,"tag":476,"props":15995,"children":15996},{"style":499},[15997],{"type":53,"value":15825},{"type":43,"tag":476,"props":15999,"children":16001},{"class":478,"line":16000},25,[16002],{"type":43,"tag":476,"props":16003,"children":16004},{"emptyLinePlaceholder":662},[16005],{"type":53,"value":665},{"type":43,"tag":476,"props":16007,"children":16009},{"class":478,"line":16008},26,[16010],{"type":43,"tag":476,"props":16011,"children":16012},{"style":483},[16013],{"type":53,"value":16014},"# Run a command in a new sandbox (create + exec in one step)\n",{"type":43,"tag":476,"props":16016,"children":16018},{"class":478,"line":16017},27,[16019,16023,16028,16033,16037,16042,16046,16051],{"type":43,"tag":476,"props":16020,"children":16021},{"style":902},[16022],{"type":53,"value":4},{"type":43,"tag":476,"props":16024,"children":16025},{"style":590},[16026],{"type":53,"value":16027}," run",{"type":43,"tag":476,"props":16029,"children":16030},{"style":590},[16031],{"type":53,"value":16032}," --",{"type":43,"tag":476,"props":16034,"children":16035},{"style":590},[16036],{"type":53,"value":13437},{"type":43,"tag":476,"props":16038,"children":16039},{"style":590},[16040],{"type":53,"value":16041}," -e",{"type":43,"tag":476,"props":16043,"children":16044},{"style":499},[16045],{"type":53,"value":587},{"type":43,"tag":476,"props":16047,"children":16048},{"style":590},[16049],{"type":53,"value":16050},"console.log('hello')",{"type":43,"tag":476,"props":16052,"children":16053},{"style":499},[16054],{"type":53,"value":16055},"\"\n",{"type":43,"tag":476,"props":16057,"children":16059},{"class":478,"line":16058},28,[16060,16064,16068,16072,16077,16081,16086,16091],{"type":43,"tag":476,"props":16061,"children":16062},{"style":902},[16063],{"type":53,"value":4},{"type":43,"tag":476,"props":16065,"children":16066},{"style":590},[16067],{"type":53,"value":16027},{"type":43,"tag":476,"props":16069,"children":16070},{"style":590},[16071],{"type":53,"value":15649},{"type":43,"tag":476,"props":16073,"children":16074},{"style":590},[16075],{"type":53,"value":16076}," my-app",{"type":43,"tag":476,"props":16078,"children":16079},{"style":590},[16080],{"type":53,"value":16032},{"type":43,"tag":476,"props":16082,"children":16083},{"style":590},[16084],{"type":53,"value":16085}," npm",{"type":43,"tag":476,"props":16087,"children":16088},{"style":590},[16089],{"type":53,"value":16090}," test",{"type":43,"tag":476,"props":16092,"children":16093},{"style":483},[16094],{"type":53,"value":16095},"        # Resumes existing sandbox if present\n",{"type":43,"tag":476,"props":16097,"children":16099},{"class":478,"line":16098},29,[16100,16104,16108,16113,16117,16121,16126],{"type":43,"tag":476,"props":16101,"children":16102},{"style":902},[16103],{"type":53,"value":4},{"type":43,"tag":476,"props":16105,"children":16106},{"style":590},[16107],{"type":53,"value":16027},{"type":43,"tag":476,"props":16109,"children":16110},{"style":590},[16111],{"type":53,"value":16112}," --stop",{"type":43,"tag":476,"props":16114,"children":16115},{"style":590},[16116],{"type":53,"value":16032},{"type":43,"tag":476,"props":16118,"children":16119},{"style":590},[16120],{"type":53,"value":16085},{"type":43,"tag":476,"props":16122,"children":16123},{"style":590},[16124],{"type":53,"value":16125}," build",{"type":43,"tag":476,"props":16127,"children":16128},{"style":483},[16129],{"type":53,"value":16130},"              # Stop the session when the command exits\n",{"type":43,"tag":476,"props":16132,"children":16134},{"class":478,"line":16133},30,[16135,16139,16143,16148,16152,16156,16160],{"type":43,"tag":476,"props":16136,"children":16137},{"style":902},[16138],{"type":53,"value":4},{"type":43,"tag":476,"props":16140,"children":16141},{"style":590},[16142],{"type":53,"value":16027},{"type":43,"tag":476,"props":16144,"children":16145},{"style":590},[16146],{"type":53,"value":16147}," --rm",{"type":43,"tag":476,"props":16149,"children":16150},{"style":590},[16151],{"type":53,"value":16032},{"type":43,"tag":476,"props":16153,"children":16154},{"style":590},[16155],{"type":53,"value":16085},{"type":43,"tag":476,"props":16157,"children":16158},{"style":590},[16159],{"type":53,"value":16125},{"type":43,"tag":476,"props":16161,"children":16162},{"style":483},[16163],{"type":53,"value":16164},"                # DELETES the sandbox after running\n",{"type":43,"tag":476,"props":16166,"children":16168},{"class":478,"line":16167},31,[16169],{"type":43,"tag":476,"props":16170,"children":16171},{"emptyLinePlaceholder":662},[16172],{"type":53,"value":665},{"type":43,"tag":476,"props":16174,"children":16176},{"class":478,"line":16175},32,[16177],{"type":43,"tag":476,"props":16178,"children":16179},{"style":483},[16180],{"type":53,"value":16181},"# Execute command in an existing sandbox\n",{"type":43,"tag":476,"props":16183,"children":16185},{"class":478,"line":16184},33,[16186,16190,16195,16199,16204,16208,16212,16216,16220],{"type":43,"tag":476,"props":16187,"children":16188},{"style":902},[16189],{"type":53,"value":4},{"type":43,"tag":476,"props":16191,"children":16192},{"style":590},[16193],{"type":53,"value":16194}," exec",{"type":43,"tag":476,"props":16196,"children":16197},{"style":499},[16198],{"type":53,"value":15810},{"type":43,"tag":476,"props":16200,"children":16201},{"style":590},[16202],{"type":53,"value":16203},"nam",{"type":43,"tag":476,"props":16205,"children":16206},{"style":509},[16207],{"type":53,"value":15820},{"type":43,"tag":476,"props":16209,"children":16210},{"style":499},[16211],{"type":53,"value":15853},{"type":43,"tag":476,"props":16213,"children":16214},{"style":590},[16215],{"type":53,"value":16032},{"type":43,"tag":476,"props":16217,"children":16218},{"style":590},[16219],{"type":53,"value":16085},{"type":43,"tag":476,"props":16221,"children":16222},{"style":590},[16223],{"type":53,"value":16224}," install\n",{"type":43,"tag":476,"props":16226,"children":16228},{"class":478,"line":16227},34,[16229,16233,16237,16241,16245,16249,16253,16257,16261,16265],{"type":43,"tag":476,"props":16230,"children":16231},{"style":902},[16232],{"type":53,"value":4},{"type":43,"tag":476,"props":16234,"children":16235},{"style":590},[16236],{"type":53,"value":16194},{"type":43,"tag":476,"props":16238,"children":16239},{"style":499},[16240],{"type":53,"value":15810},{"type":43,"tag":476,"props":16242,"children":16243},{"style":590},[16244],{"type":53,"value":16203},{"type":43,"tag":476,"props":16246,"children":16247},{"style":509},[16248],{"type":53,"value":15820},{"type":43,"tag":476,"props":16250,"children":16251},{"style":499},[16252],{"type":53,"value":15853},{"type":43,"tag":476,"props":16254,"children":16255},{"style":590},[16256],{"type":53,"value":16112},{"type":43,"tag":476,"props":16258,"children":16259},{"style":590},[16260],{"type":53,"value":16032},{"type":43,"tag":476,"props":16262,"children":16263},{"style":590},[16264],{"type":53,"value":16085},{"type":43,"tag":476,"props":16266,"children":16267},{"style":590},[16268],{"type":53,"value":16269}," build\n",{"type":43,"tag":476,"props":16271,"children":16272},{"class":478,"line":27},[16273],{"type":43,"tag":476,"props":16274,"children":16275},{"emptyLinePlaceholder":662},[16276],{"type":53,"value":665},{"type":43,"tag":476,"props":16278,"children":16280},{"class":478,"line":16279},36,[16281],{"type":43,"tag":476,"props":16282,"children":16283},{"style":483},[16284],{"type":53,"value":16285},"# Start an interactive shell\n",{"type":43,"tag":476,"props":16287,"children":16289},{"class":478,"line":16288},37,[16290,16294,16299,16303,16307,16311],{"type":43,"tag":476,"props":16291,"children":16292},{"style":902},[16293],{"type":53,"value":4},{"type":43,"tag":476,"props":16295,"children":16296},{"style":590},[16297],{"type":53,"value":16298}," connect",{"type":43,"tag":476,"props":16300,"children":16301},{"style":499},[16302],{"type":53,"value":15810},{"type":43,"tag":476,"props":16304,"children":16305},{"style":590},[16306],{"type":53,"value":16203},{"type":43,"tag":476,"props":16308,"children":16309},{"style":509},[16310],{"type":53,"value":15820},{"type":43,"tag":476,"props":16312,"children":16313},{"style":499},[16314],{"type":53,"value":15825},{"type":43,"tag":476,"props":16316,"children":16318},{"class":478,"line":16317},38,[16319],{"type":43,"tag":476,"props":16320,"children":16321},{"emptyLinePlaceholder":662},[16322],{"type":53,"value":665},{"type":43,"tag":476,"props":16324,"children":16326},{"class":478,"line":16325},39,[16327],{"type":43,"tag":476,"props":16328,"children":16329},{"style":483},[16330],{"type":53,"value":16331},"# Copy files\n",{"type":43,"tag":476,"props":16333,"children":16335},{"class":478,"line":16334},40,[16336,16340,16345,16350,16354,16358,16362,16366],{"type":43,"tag":476,"props":16337,"children":16338},{"style":902},[16339],{"type":53,"value":4},{"type":43,"tag":476,"props":16341,"children":16342},{"style":590},[16343],{"type":53,"value":16344}," cp",{"type":43,"tag":476,"props":16346,"children":16347},{"style":590},[16348],{"type":53,"value":16349}," local-file.txt",{"type":43,"tag":476,"props":16351,"children":16352},{"style":499},[16353],{"type":53,"value":15810},{"type":43,"tag":476,"props":16355,"children":16356},{"style":590},[16357],{"type":53,"value":16203},{"type":43,"tag":476,"props":16359,"children":16360},{"style":509},[16361],{"type":53,"value":15820},{"type":43,"tag":476,"props":16363,"children":16364},{"style":499},[16365],{"type":53,"value":15853},{"type":43,"tag":476,"props":16367,"children":16368},{"style":590},[16369],{"type":53,"value":16370},":\u002Fvercel\u002Fsandbox\u002F\n",{"type":43,"tag":476,"props":16372,"children":16374},{"class":478,"line":16373},41,[16375],{"type":43,"tag":476,"props":16376,"children":16377},{"emptyLinePlaceholder":662},[16378],{"type":53,"value":665},{"type":43,"tag":476,"props":16380,"children":16382},{"class":478,"line":16381},42,[16383],{"type":43,"tag":476,"props":16384,"children":16385},{"style":483},[16386],{"type":53,"value":16387},"# Stop sandbox (synchronous; reports snapshot + usage)\n",{"type":43,"tag":476,"props":16389,"children":16391},{"class":478,"line":16390},43,[16392,16396,16401,16405,16409,16413],{"type":43,"tag":476,"props":16393,"children":16394},{"style":902},[16395],{"type":53,"value":4},{"type":43,"tag":476,"props":16397,"children":16398},{"style":590},[16399],{"type":53,"value":16400}," stop",{"type":43,"tag":476,"props":16402,"children":16403},{"style":499},[16404],{"type":53,"value":15810},{"type":43,"tag":476,"props":16406,"children":16407},{"style":590},[16408],{"type":53,"value":16203},{"type":43,"tag":476,"props":16410,"children":16411},{"style":509},[16412],{"type":53,"value":15820},{"type":43,"tag":476,"props":16414,"children":16415},{"style":499},[16416],{"type":53,"value":15825},{"type":43,"tag":476,"props":16418,"children":16420},{"class":478,"line":16419},44,[16421],{"type":43,"tag":476,"props":16422,"children":16423},{"emptyLinePlaceholder":662},[16424],{"type":53,"value":665},{"type":43,"tag":476,"props":16426,"children":16428},{"class":478,"line":16427},45,[16429],{"type":43,"tag":476,"props":16430,"children":16431},{"style":483},[16432],{"type":53,"value":16433},"# Permanently delete sandbox and all its snapshots\n",{"type":43,"tag":476,"props":16435,"children":16437},{"class":478,"line":16436},46,[16438,16442,16447,16451,16455,16459],{"type":43,"tag":476,"props":16439,"children":16440},{"style":902},[16441],{"type":53,"value":4},{"type":43,"tag":476,"props":16443,"children":16444},{"style":590},[16445],{"type":53,"value":16446}," remove",{"type":43,"tag":476,"props":16448,"children":16449},{"style":499},[16450],{"type":53,"value":15810},{"type":43,"tag":476,"props":16452,"children":16453},{"style":590},[16454],{"type":53,"value":16203},{"type":43,"tag":476,"props":16456,"children":16457},{"style":509},[16458],{"type":53,"value":15820},{"type":43,"tag":476,"props":16460,"children":16461},{"style":499},[16462],{"type":53,"value":15825},{"type":43,"tag":476,"props":16464,"children":16466},{"class":478,"line":16465},47,[16467],{"type":43,"tag":476,"props":16468,"children":16469},{"emptyLinePlaceholder":662},[16470],{"type":53,"value":665},{"type":43,"tag":476,"props":16472,"children":16474},{"class":478,"line":16473},48,[16475],{"type":43,"tag":476,"props":16476,"children":16477},{"style":483},[16478],{"type":53,"value":16479},"# Sessions\n",{"type":43,"tag":476,"props":16481,"children":16483},{"class":478,"line":16482},49,[16484,16488,16493,16498,16502,16506,16510],{"type":43,"tag":476,"props":16485,"children":16486},{"style":902},[16487],{"type":53,"value":4},{"type":43,"tag":476,"props":16489,"children":16490},{"style":590},[16491],{"type":53,"value":16492}," sessions",{"type":43,"tag":476,"props":16494,"children":16495},{"style":590},[16496],{"type":53,"value":16497}," list",{"type":43,"tag":476,"props":16499,"children":16500},{"style":499},[16501],{"type":53,"value":15810},{"type":43,"tag":476,"props":16503,"children":16504},{"style":590},[16505],{"type":53,"value":16203},{"type":43,"tag":476,"props":16507,"children":16508},{"style":509},[16509],{"type":53,"value":15820},{"type":43,"tag":476,"props":16511,"children":16512},{"style":499},[16513],{"type":53,"value":15825},{"type":43,"tag":476,"props":16515,"children":16517},{"class":478,"line":16516},50,[16518],{"type":43,"tag":476,"props":16519,"children":16520},{"emptyLinePlaceholder":662},[16521],{"type":53,"value":665},{"type":43,"tag":476,"props":16523,"children":16525},{"class":478,"line":16524},51,[16526],{"type":43,"tag":476,"props":16527,"children":16528},{"style":483},[16529],{"type":53,"value":16530},"# Snapshots\n",{"type":43,"tag":476,"props":16532,"children":16534},{"class":478,"line":16533},52,[16535,16539,16543,16547,16551,16555],{"type":43,"tag":476,"props":16536,"children":16537},{"style":902},[16538],{"type":53,"value":4},{"type":43,"tag":476,"props":16540,"children":16541},{"style":590},[16542],{"type":53,"value":11950},{"type":43,"tag":476,"props":16544,"children":16545},{"style":499},[16546],{"type":53,"value":15810},{"type":43,"tag":476,"props":16548,"children":16549},{"style":590},[16550],{"type":53,"value":16203},{"type":43,"tag":476,"props":16552,"children":16553},{"style":509},[16554],{"type":53,"value":15820},{"type":43,"tag":476,"props":16556,"children":16557},{"style":499},[16558],{"type":53,"value":15825},{"type":43,"tag":476,"props":16560,"children":16562},{"class":478,"line":16561},53,[16563,16567,16572,16576,16580,16584,16588,16592],{"type":43,"tag":476,"props":16564,"children":16565},{"style":902},[16566],{"type":53,"value":4},{"type":43,"tag":476,"props":16568,"children":16569},{"style":590},[16570],{"type":53,"value":16571}," snapshots",{"type":43,"tag":476,"props":16573,"children":16574},{"style":590},[16575],{"type":53,"value":16497},{"type":43,"tag":476,"props":16577,"children":16578},{"style":590},[16579],{"type":53,"value":15649},{"type":43,"tag":476,"props":16581,"children":16582},{"style":499},[16583],{"type":53,"value":15810},{"type":43,"tag":476,"props":16585,"children":16586},{"style":590},[16587],{"type":53,"value":16203},{"type":43,"tag":476,"props":16589,"children":16590},{"style":509},[16591],{"type":53,"value":15820},{"type":43,"tag":476,"props":16593,"children":16594},{"style":499},[16595],{"type":53,"value":15825},{"type":43,"tag":476,"props":16597,"children":16599},{"class":478,"line":16598},54,[16600,16604,16608,16613,16617,16622,16627],{"type":43,"tag":476,"props":16601,"children":16602},{"style":902},[16603],{"type":53,"value":4},{"type":43,"tag":476,"props":16605,"children":16606},{"style":590},[16607],{"type":53,"value":16571},{"type":43,"tag":476,"props":16609,"children":16610},{"style":590},[16611],{"type":53,"value":16612}," get",{"type":43,"tag":476,"props":16614,"children":16615},{"style":499},[16616],{"type":53,"value":15810},{"type":43,"tag":476,"props":16618,"children":16619},{"style":590},[16620],{"type":53,"value":16621},"snapshot-i",{"type":43,"tag":476,"props":16623,"children":16624},{"style":509},[16625],{"type":53,"value":16626},"d",{"type":43,"tag":476,"props":16628,"children":16629},{"style":499},[16630],{"type":53,"value":15825},{"type":43,"tag":476,"props":16632,"children":16634},{"class":478,"line":16633},55,[16635,16639,16643,16647,16651,16655,16659],{"type":43,"tag":476,"props":16636,"children":16637},{"style":902},[16638],{"type":53,"value":4},{"type":43,"tag":476,"props":16640,"children":16641},{"style":590},[16642],{"type":53,"value":16571},{"type":43,"tag":476,"props":16644,"children":16645},{"style":590},[16646],{"type":53,"value":16446},{"type":43,"tag":476,"props":16648,"children":16649},{"style":499},[16650],{"type":53,"value":15810},{"type":43,"tag":476,"props":16652,"children":16653},{"style":590},[16654],{"type":53,"value":16621},{"type":43,"tag":476,"props":16656,"children":16657},{"style":509},[16658],{"type":53,"value":16626},{"type":43,"tag":476,"props":16660,"children":16661},{"style":499},[16662],{"type":53,"value":15825},{"type":43,"tag":476,"props":16664,"children":16666},{"class":478,"line":16665},56,[16667,16671,16675,16680,16684,16688,16692,16696],{"type":43,"tag":476,"props":16668,"children":16669},{"style":902},[16670],{"type":53,"value":4},{"type":43,"tag":476,"props":16672,"children":16673},{"style":590},[16674],{"type":53,"value":16571},{"type":43,"tag":476,"props":16676,"children":16677},{"style":590},[16678],{"type":53,"value":16679}," tree",{"type":43,"tag":476,"props":16681,"children":16682},{"style":499},[16683],{"type":53,"value":15810},{"type":43,"tag":476,"props":16685,"children":16686},{"style":590},[16687],{"type":53,"value":16203},{"type":43,"tag":476,"props":16689,"children":16690},{"style":509},[16691],{"type":53,"value":15820},{"type":43,"tag":476,"props":16693,"children":16694},{"style":499},[16695],{"type":53,"value":15853},{"type":43,"tag":476,"props":16697,"children":16698},{"style":483},[16699],{"type":53,"value":16700},"                # Walk the tree from the sandbox's current snapshot\n",{"type":43,"tag":476,"props":16702,"children":16704},{"class":478,"line":16703},57,[16705,16709,16713,16717,16721,16725,16729,16733,16737,16741,16745,16749,16753,16758],{"type":43,"tag":476,"props":16706,"children":16707},{"style":902},[16708],{"type":53,"value":4},{"type":43,"tag":476,"props":16710,"children":16711},{"style":590},[16712],{"type":53,"value":16571},{"type":43,"tag":476,"props":16714,"children":16715},{"style":590},[16716],{"type":53,"value":16679},{"type":43,"tag":476,"props":16718,"children":16719},{"style":499},[16720],{"type":53,"value":15810},{"type":43,"tag":476,"props":16722,"children":16723},{"style":590},[16724],{"type":53,"value":16203},{"type":43,"tag":476,"props":16726,"children":16727},{"style":509},[16728],{"type":53,"value":15820},{"type":43,"tag":476,"props":16730,"children":16731},{"style":499},[16732],{"type":53,"value":15853},{"type":43,"tag":476,"props":16734,"children":16735},{"style":590},[16736],{"type":53,"value":15979},{"type":43,"tag":476,"props":16738,"children":16739},{"style":499},[16740],{"type":53,"value":15810},{"type":43,"tag":476,"props":16742,"children":16743},{"style":590},[16744],{"type":53,"value":16621},{"type":43,"tag":476,"props":16746,"children":16747},{"style":509},[16748],{"type":53,"value":16626},{"type":43,"tag":476,"props":16750,"children":16751},{"style":499},[16752],{"type":53,"value":15853},{"type":43,"tag":476,"props":16754,"children":16755},{"style":590},[16756],{"type":53,"value":16757}," --sort-order",{"type":43,"tag":476,"props":16759,"children":16760},{"style":590},[16761],{"type":53,"value":16762}," asc\n",{"type":43,"tag":476,"props":16764,"children":16766},{"class":478,"line":16765},58,[16767],{"type":43,"tag":476,"props":16768,"children":16769},{"emptyLinePlaceholder":662},[16770],{"type":53,"value":665},{"type":43,"tag":476,"props":16772,"children":16774},{"class":478,"line":16773},59,[16775],{"type":43,"tag":476,"props":16776,"children":16777},{"style":483},[16778],{"type":53,"value":16779},"# Config (view + update any sandbox parameter)\n",{"type":43,"tag":476,"props":16781,"children":16783},{"class":478,"line":16782},60,[16784,16788,16793,16797,16801,16805,16809],{"type":43,"tag":476,"props":16785,"children":16786},{"style":902},[16787],{"type":53,"value":4},{"type":43,"tag":476,"props":16789,"children":16790},{"style":590},[16791],{"type":53,"value":16792}," config",{"type":43,"tag":476,"props":16794,"children":16795},{"style":590},[16796],{"type":53,"value":16497},{"type":43,"tag":476,"props":16798,"children":16799},{"style":499},[16800],{"type":53,"value":15810},{"type":43,"tag":476,"props":16802,"children":16803},{"style":590},[16804],{"type":53,"value":16203},{"type":43,"tag":476,"props":16806,"children":16807},{"style":509},[16808],{"type":53,"value":15820},{"type":43,"tag":476,"props":16810,"children":16811},{"style":499},[16812],{"type":53,"value":15825},{"type":43,"tag":476,"props":16814,"children":16816},{"class":478,"line":16815},61,[16817,16821,16825,16829,16833,16837,16841,16845,16849,16854,16859],{"type":43,"tag":476,"props":16818,"children":16819},{"style":902},[16820],{"type":53,"value":4},{"type":43,"tag":476,"props":16822,"children":16823},{"style":590},[16824],{"type":53,"value":16792},{"type":43,"tag":476,"props":16826,"children":16827},{"style":590},[16828],{"type":53,"value":1177},{"type":43,"tag":476,"props":16830,"children":16831},{"style":499},[16832],{"type":53,"value":15810},{"type":43,"tag":476,"props":16834,"children":16835},{"style":590},[16836],{"type":53,"value":16203},{"type":43,"tag":476,"props":16838,"children":16839},{"style":509},[16840],{"type":53,"value":15820},{"type":43,"tag":476,"props":16842,"children":16843},{"style":499},[16844],{"type":53,"value":15853},{"type":43,"tag":476,"props":16846,"children":16847},{"style":499},[16848],{"type":53,"value":15810},{"type":43,"tag":476,"props":16850,"children":16851},{"style":590},[16852],{"type":53,"value":16853},"coun",{"type":43,"tag":476,"props":16855,"children":16856},{"style":509},[16857],{"type":53,"value":16858},"t",{"type":43,"tag":476,"props":16860,"children":16861},{"style":499},[16862],{"type":53,"value":15825},{"type":43,"tag":476,"props":16864,"children":16866},{"class":478,"line":16865},62,[16867,16871,16875,16880,16884,16888,16892,16896,16900,16905,16909],{"type":43,"tag":476,"props":16868,"children":16869},{"style":902},[16870],{"type":53,"value":4},{"type":43,"tag":476,"props":16872,"children":16873},{"style":590},[16874],{"type":53,"value":16792},{"type":43,"tag":476,"props":16876,"children":16877},{"style":590},[16878],{"type":53,"value":16879}," timeout",{"type":43,"tag":476,"props":16881,"children":16882},{"style":499},[16883],{"type":53,"value":15810},{"type":43,"tag":476,"props":16885,"children":16886},{"style":590},[16887],{"type":53,"value":16203},{"type":43,"tag":476,"props":16889,"children":16890},{"style":509},[16891],{"type":53,"value":15820},{"type":43,"tag":476,"props":16893,"children":16894},{"style":499},[16895],{"type":53,"value":15853},{"type":43,"tag":476,"props":16897,"children":16898},{"style":499},[16899],{"type":53,"value":15810},{"type":43,"tag":476,"props":16901,"children":16902},{"style":590},[16903],{"type":53,"value":16904},"duratio",{"type":43,"tag":476,"props":16906,"children":16907},{"style":509},[16908],{"type":53,"value":15993},{"type":43,"tag":476,"props":16910,"children":16911},{"style":499},[16912],{"type":53,"value":15825},{"type":43,"tag":476,"props":16914,"children":16916},{"class":478,"line":16915},63,[16917,16921,16925,16930,16934,16938,16942,16946,16950,16955,16960,16965],{"type":43,"tag":476,"props":16918,"children":16919},{"style":902},[16920],{"type":53,"value":4},{"type":43,"tag":476,"props":16922,"children":16923},{"style":590},[16924],{"type":53,"value":16792},{"type":43,"tag":476,"props":16926,"children":16927},{"style":590},[16928],{"type":53,"value":16929}," persistent",{"type":43,"tag":476,"props":16931,"children":16932},{"style":499},[16933],{"type":53,"value":15810},{"type":43,"tag":476,"props":16935,"children":16936},{"style":590},[16937],{"type":53,"value":16203},{"type":43,"tag":476,"props":16939,"children":16940},{"style":509},[16941],{"type":53,"value":15820},{"type":43,"tag":476,"props":16943,"children":16944},{"style":499},[16945],{"type":53,"value":15853},{"type":43,"tag":476,"props":16947,"children":16948},{"style":499},[16949],{"type":53,"value":15810},{"type":43,"tag":476,"props":16951,"children":16952},{"style":499},[16953],{"type":53,"value":16954},"true",{"type":43,"tag":476,"props":16956,"children":16957},{"style":499},[16958],{"type":53,"value":16959},"|",{"type":43,"tag":476,"props":16961,"children":16962},{"style":1079},[16963],{"type":53,"value":16964},"false",{"type":43,"tag":476,"props":16966,"children":16967},{"style":509},[16968],{"type":53,"value":15825},{"type":43,"tag":476,"props":16970,"children":16972},{"class":478,"line":16971},64,[16973,16977,16981,16986,16990,16994,16998,17002,17006,17011,17015,17020],{"type":43,"tag":476,"props":16974,"children":16975},{"style":902},[16976],{"type":53,"value":4},{"type":43,"tag":476,"props":16978,"children":16979},{"style":590},[16980],{"type":53,"value":16792},{"type":43,"tag":476,"props":16982,"children":16983},{"style":590},[16984],{"type":53,"value":16985}," snapshot-expiration",{"type":43,"tag":476,"props":16987,"children":16988},{"style":499},[16989],{"type":53,"value":15810},{"type":43,"tag":476,"props":16991,"children":16992},{"style":590},[16993],{"type":53,"value":16203},{"type":43,"tag":476,"props":16995,"children":16996},{"style":509},[16997],{"type":53,"value":15820},{"type":43,"tag":476,"props":16999,"children":17000},{"style":499},[17001],{"type":53,"value":15853},{"type":43,"tag":476,"props":17003,"children":17004},{"style":499},[17005],{"type":53,"value":15810},{"type":43,"tag":476,"props":17007,"children":17008},{"style":590},[17009],{"type":53,"value":17010},"duration",{"type":43,"tag":476,"props":17012,"children":17013},{"style":499},[17014],{"type":53,"value":16959},{"type":43,"tag":476,"props":17016,"children":17017},{"style":902},[17018],{"type":53,"value":17019},"none",{"type":43,"tag":476,"props":17021,"children":17022},{"style":509},[17023],{"type":53,"value":15825},{"type":43,"tag":476,"props":17025,"children":17027},{"class":478,"line":17026},65,[17028,17032,17036,17041,17045,17049,17053,17057,17061,17065,17069],{"type":43,"tag":476,"props":17029,"children":17030},{"style":902},[17031],{"type":53,"value":4},{"type":43,"tag":476,"props":17033,"children":17034},{"style":590},[17035],{"type":53,"value":16792},{"type":43,"tag":476,"props":17037,"children":17038},{"style":590},[17039],{"type":53,"value":17040}," keep-last-snapshots",{"type":43,"tag":476,"props":17042,"children":17043},{"style":499},[17044],{"type":53,"value":15810},{"type":43,"tag":476,"props":17046,"children":17047},{"style":590},[17048],{"type":53,"value":16203},{"type":43,"tag":476,"props":17050,"children":17051},{"style":509},[17052],{"type":53,"value":15820},{"type":43,"tag":476,"props":17054,"children":17055},{"style":499},[17056],{"type":53,"value":15853},{"type":43,"tag":476,"props":17058,"children":17059},{"style":499},[17060],{"type":53,"value":15810},{"type":43,"tag":476,"props":17062,"children":17063},{"style":590},[17064],{"type":53,"value":16853},{"type":43,"tag":476,"props":17066,"children":17067},{"style":509},[17068],{"type":53,"value":16858},{"type":43,"tag":476,"props":17070,"children":17071},{"style":499},[17072],{"type":53,"value":15825},{"type":43,"tag":476,"props":17074,"children":17076},{"class":478,"line":17075},66,[17077,17081,17085,17090,17094,17098,17102,17106,17110,17114,17118,17122],{"type":43,"tag":476,"props":17078,"children":17079},{"style":902},[17080],{"type":53,"value":4},{"type":43,"tag":476,"props":17082,"children":17083},{"style":590},[17084],{"type":53,"value":16792},{"type":43,"tag":476,"props":17086,"children":17087},{"style":590},[17088],{"type":53,"value":17089}," keep-last-snapshots-for",{"type":43,"tag":476,"props":17091,"children":17092},{"style":499},[17093],{"type":53,"value":15810},{"type":43,"tag":476,"props":17095,"children":17096},{"style":590},[17097],{"type":53,"value":16203},{"type":43,"tag":476,"props":17099,"children":17100},{"style":509},[17101],{"type":53,"value":15820},{"type":43,"tag":476,"props":17103,"children":17104},{"style":499},[17105],{"type":53,"value":15853},{"type":43,"tag":476,"props":17107,"children":17108},{"style":499},[17109],{"type":53,"value":15810},{"type":43,"tag":476,"props":17111,"children":17112},{"style":590},[17113],{"type":53,"value":17010},{"type":43,"tag":476,"props":17115,"children":17116},{"style":499},[17117],{"type":53,"value":16959},{"type":43,"tag":476,"props":17119,"children":17120},{"style":902},[17121],{"type":53,"value":17019},{"type":43,"tag":476,"props":17123,"children":17124},{"style":509},[17125],{"type":53,"value":15825},{"type":43,"tag":476,"props":17127,"children":17129},{"class":478,"line":17128},67,[17130,17134,17138,17143,17147,17151,17155,17159,17163,17167,17171,17175],{"type":43,"tag":476,"props":17131,"children":17132},{"style":902},[17133],{"type":53,"value":4},{"type":43,"tag":476,"props":17135,"children":17136},{"style":590},[17137],{"type":53,"value":16792},{"type":43,"tag":476,"props":17139,"children":17140},{"style":590},[17141],{"type":53,"value":17142}," delete-evicted-snapshots",{"type":43,"tag":476,"props":17144,"children":17145},{"style":499},[17146],{"type":53,"value":15810},{"type":43,"tag":476,"props":17148,"children":17149},{"style":590},[17150],{"type":53,"value":16203},{"type":43,"tag":476,"props":17152,"children":17153},{"style":509},[17154],{"type":53,"value":15820},{"type":43,"tag":476,"props":17156,"children":17157},{"style":499},[17158],{"type":53,"value":15853},{"type":43,"tag":476,"props":17160,"children":17161},{"style":499},[17162],{"type":53,"value":15810},{"type":43,"tag":476,"props":17164,"children":17165},{"style":499},[17166],{"type":53,"value":16954},{"type":43,"tag":476,"props":17168,"children":17169},{"style":499},[17170],{"type":53,"value":16959},{"type":43,"tag":476,"props":17172,"children":17173},{"style":1079},[17174],{"type":53,"value":16964},{"type":43,"tag":476,"props":17176,"children":17177},{"style":509},[17178],{"type":53,"value":15825},{"type":43,"tag":476,"props":17180,"children":17182},{"class":478,"line":17181},68,[17183,17187,17191,17196,17200,17204,17208,17212,17216,17220,17224],{"type":43,"tag":476,"props":17184,"children":17185},{"style":902},[17186],{"type":53,"value":4},{"type":43,"tag":476,"props":17188,"children":17189},{"style":590},[17190],{"type":53,"value":16792},{"type":43,"tag":476,"props":17192,"children":17193},{"style":590},[17194],{"type":53,"value":17195}," current-snapshot",{"type":43,"tag":476,"props":17197,"children":17198},{"style":499},[17199],{"type":53,"value":15810},{"type":43,"tag":476,"props":17201,"children":17202},{"style":590},[17203],{"type":53,"value":16203},{"type":43,"tag":476,"props":17205,"children":17206},{"style":509},[17207],{"type":53,"value":15820},{"type":43,"tag":476,"props":17209,"children":17210},{"style":499},[17211],{"type":53,"value":15853},{"type":43,"tag":476,"props":17213,"children":17214},{"style":499},[17215],{"type":53,"value":15810},{"type":43,"tag":476,"props":17217,"children":17218},{"style":590},[17219],{"type":53,"value":16621},{"type":43,"tag":476,"props":17221,"children":17222},{"style":509},[17223],{"type":53,"value":16626},{"type":43,"tag":476,"props":17225,"children":17226},{"style":499},[17227],{"type":53,"value":15825},{"type":43,"tag":476,"props":17229,"children":17231},{"class":478,"line":17230},69,[17232,17236,17240,17245,17249,17253,17257,17261,17266],{"type":43,"tag":476,"props":17233,"children":17234},{"style":902},[17235],{"type":53,"value":4},{"type":43,"tag":476,"props":17237,"children":17238},{"style":590},[17239],{"type":53,"value":16792},{"type":43,"tag":476,"props":17241,"children":17242},{"style":590},[17243],{"type":53,"value":17244}," network-policy",{"type":43,"tag":476,"props":17246,"children":17247},{"style":499},[17248],{"type":53,"value":15810},{"type":43,"tag":476,"props":17250,"children":17251},{"style":590},[17252],{"type":53,"value":16203},{"type":43,"tag":476,"props":17254,"children":17255},{"style":509},[17256],{"type":53,"value":15820},{"type":43,"tag":476,"props":17258,"children":17259},{"style":499},[17260],{"type":53,"value":15853},{"type":43,"tag":476,"props":17262,"children":17263},{"style":590},[17264],{"type":53,"value":17265}," --network-policy",{"type":43,"tag":476,"props":17267,"children":17268},{"style":590},[17269],{"type":53,"value":17270}," deny-all\n",{"type":43,"tag":476,"props":17272,"children":17274},{"class":478,"line":17273},70,[17275,17279,17283,17287,17291,17295,17299,17303,17307],{"type":43,"tag":476,"props":17276,"children":17277},{"style":902},[17278],{"type":53,"value":4},{"type":43,"tag":476,"props":17280,"children":17281},{"style":590},[17282],{"type":53,"value":16792},{"type":43,"tag":476,"props":17284,"children":17285},{"style":590},[17286],{"type":53,"value":10889},{"type":43,"tag":476,"props":17288,"children":17289},{"style":499},[17290],{"type":53,"value":15810},{"type":43,"tag":476,"props":17292,"children":17293},{"style":590},[17294],{"type":53,"value":16203},{"type":43,"tag":476,"props":17296,"children":17297},{"style":509},[17298],{"type":53,"value":15820},{"type":43,"tag":476,"props":17300,"children":17301},{"style":499},[17302],{"type":53,"value":15853},{"type":43,"tag":476,"props":17304,"children":17305},{"style":590},[17306],{"type":53,"value":15768},{"type":43,"tag":476,"props":17308,"children":17309},{"style":590},[17310],{"type":53,"value":17311}," env=prod\n",{"type":43,"tag":44,"props":17313,"children":17315},{"id":17314},"common-patterns",[17316],{"type":53,"value":17317},"Common Patterns",{"type":43,"tag":80,"props":17319,"children":17321},{"id":17320},"dev-server-pattern-persistent",[17322],{"type":53,"value":17323},"Dev Server Pattern (Persistent)",{"type":43,"tag":465,"props":17325,"children":17327},{"className":467,"code":17326,"language":469,"meta":470,"style":470},"const sandbox = await Sandbox.getOrCreate({\n  name: \"my-dev-env\",\n  source: { type: \"git\", url: \"https:\u002F\u002Fgithub.com\u002Forg\u002Frepo.git\" },\n  ports: [3000],\n  timeout: ms(\"30m\"),\n  onCreate: async (sbx) => {\n    await sbx.runCommand(\"npm\", [\"install\"]);\n  },\n  onResume: async (sbx) => {\n    await sbx.runCommand({ cmd: \"npm\", args: [\"run\", \"dev\"], detached: true });\n  },\n});\n\nconsole.log(\"App running at:\", sandbox.domain(3000));\n",[17328],{"type":43,"tag":58,"props":17329,"children":17330},{"__ignoreMap":470},[17331,17370,17397,17462,17489,17528,17563,17626,17633,17668,17791,17798,17813,17820],{"type":43,"tag":476,"props":17332,"children":17333},{"class":478,"line":479},[17334,17338,17342,17346,17350,17354,17358,17362,17366],{"type":43,"tag":476,"props":17335,"children":17336},{"style":896},[17337],{"type":53,"value":1053},{"type":43,"tag":476,"props":17339,"children":17340},{"style":509},[17341],{"type":53,"value":1058},{"type":43,"tag":476,"props":17343,"children":17344},{"style":499},[17345],{"type":53,"value":1063},{"type":43,"tag":476,"props":17347,"children":17348},{"style":493},[17349],{"type":53,"value":1068},{"type":43,"tag":476,"props":17351,"children":17352},{"style":509},[17353],{"type":53,"value":1014},{"type":43,"tag":476,"props":17355,"children":17356},{"style":499},[17357],{"type":53,"value":332},{"type":43,"tag":476,"props":17359,"children":17360},{"style":1079},[17361],{"type":53,"value":1689},{"type":43,"tag":476,"props":17363,"children":17364},{"style":509},[17365],{"type":53,"value":1087},{"type":43,"tag":476,"props":17367,"children":17368},{"style":499},[17369],{"type":53,"value":1092},{"type":43,"tag":476,"props":17371,"children":17372},{"class":478,"line":489},[17373,17377,17381,17385,17389,17393],{"type":43,"tag":476,"props":17374,"children":17375},{"style":1098},[17376],{"type":53,"value":1101},{"type":43,"tag":476,"props":17378,"children":17379},{"style":499},[17380],{"type":53,"value":1106},{"type":43,"tag":476,"props":17382,"children":17383},{"style":499},[17384],{"type":53,"value":587},{"type":43,"tag":476,"props":17386,"children":17387},{"style":590},[17388],{"type":53,"value":1115},{"type":43,"tag":476,"props":17390,"children":17391},{"style":499},[17392],{"type":53,"value":597},{"type":43,"tag":476,"props":17394,"children":17395},{"style":499},[17396],{"type":53,"value":296},{"type":43,"tag":476,"props":17398,"children":17399},{"class":478,"line":505},[17400,17404,17408,17412,17416,17420,17424,17428,17432,17436,17441,17445,17449,17454,17458],{"type":43,"tag":476,"props":17401,"children":17402},{"style":1098},[17403],{"type":53,"value":2593},{"type":43,"tag":476,"props":17405,"children":17406},{"style":499},[17407],{"type":53,"value":1106},{"type":43,"tag":476,"props":17409,"children":17410},{"style":499},[17411],{"type":53,"value":615},{"type":43,"tag":476,"props":17413,"children":17414},{"style":1098},[17415],{"type":53,"value":687},{"type":43,"tag":476,"props":17417,"children":17418},{"style":499},[17419],{"type":53,"value":1106},{"type":43,"tag":476,"props":17421,"children":17422},{"style":499},[17423],{"type":53,"value":587},{"type":43,"tag":476,"props":17425,"children":17426},{"style":590},[17427],{"type":53,"value":2622},{"type":43,"tag":476,"props":17429,"children":17430},{"style":499},[17431],{"type":53,"value":597},{"type":43,"tag":476,"props":17433,"children":17434},{"style":499},[17435],{"type":53,"value":625},{"type":43,"tag":476,"props":17437,"children":17438},{"style":1098},[17439],{"type":53,"value":17440}," url",{"type":43,"tag":476,"props":17442,"children":17443},{"style":499},[17444],{"type":53,"value":1106},{"type":43,"tag":476,"props":17446,"children":17447},{"style":499},[17448],{"type":53,"value":587},{"type":43,"tag":476,"props":17450,"children":17451},{"style":590},[17452],{"type":53,"value":17453},"https:\u002F\u002Fgithub.com\u002Forg\u002Frepo.git",{"type":43,"tag":476,"props":17455,"children":17456},{"style":499},[17457],{"type":53,"value":597},{"type":43,"tag":476,"props":17459,"children":17460},{"style":499},[17461],{"type":53,"value":4253},{"type":43,"tag":476,"props":17463,"children":17464},{"class":478,"line":519},[17465,17469,17473,17477,17481,17485],{"type":43,"tag":476,"props":17466,"children":17467},{"style":1098},[17468],{"type":53,"value":1205},{"type":43,"tag":476,"props":17470,"children":17471},{"style":499},[17472],{"type":53,"value":1106},{"type":43,"tag":476,"props":17474,"children":17475},{"style":509},[17476],{"type":53,"value":1214},{"type":43,"tag":476,"props":17478,"children":17479},{"style":1184},[17480],{"type":53,"value":1219},{"type":43,"tag":476,"props":17482,"children":17483},{"style":509},[17484],{"type":53,"value":1224},{"type":43,"tag":476,"props":17486,"children":17487},{"style":499},[17488],{"type":53,"value":296},{"type":43,"tag":476,"props":17490,"children":17491},{"class":478,"line":532},[17492,17496,17500,17504,17508,17512,17516,17520,17524],{"type":43,"tag":476,"props":17493,"children":17494},{"style":1098},[17495],{"type":53,"value":1241},{"type":43,"tag":476,"props":17497,"children":17498},{"style":499},[17499],{"type":53,"value":1106},{"type":43,"tag":476,"props":17501,"children":17502},{"style":1079},[17503],{"type":53,"value":1250},{"type":43,"tag":476,"props":17505,"children":17506},{"style":509},[17507],{"type":53,"value":1087},{"type":43,"tag":476,"props":17509,"children":17510},{"style":499},[17511],{"type":53,"value":597},{"type":43,"tag":476,"props":17513,"children":17514},{"style":590},[17515],{"type":53,"value":10344},{"type":43,"tag":476,"props":17517,"children":17518},{"style":499},[17519],{"type":53,"value":597},{"type":43,"tag":476,"props":17521,"children":17522},{"style":509},[17523],{"type":53,"value":1272},{"type":43,"tag":476,"props":17525,"children":17526},{"style":499},[17527],{"type":53,"value":296},{"type":43,"tag":476,"props":17529,"children":17530},{"class":478,"line":545},[17531,17535,17539,17543,17547,17551,17555,17559],{"type":43,"tag":476,"props":17532,"children":17533},{"style":1079},[17534],{"type":53,"value":1768},{"type":43,"tag":476,"props":17536,"children":17537},{"style":499},[17538],{"type":53,"value":1106},{"type":43,"tag":476,"props":17540,"children":17541},{"style":896},[17542],{"type":53,"value":1777},{"type":43,"tag":476,"props":17544,"children":17545},{"style":499},[17546],{"type":53,"value":1782},{"type":43,"tag":476,"props":17548,"children":17549},{"style":1785},[17550],{"type":53,"value":1788},{"type":43,"tag":476,"props":17552,"children":17553},{"style":499},[17554],{"type":53,"value":1272},{"type":43,"tag":476,"props":17556,"children":17557},{"style":896},[17558],{"type":53,"value":1797},{"type":43,"tag":476,"props":17560,"children":17561},{"style":499},[17562],{"type":53,"value":502},{"type":43,"tag":476,"props":17564,"children":17565},{"class":478,"line":558},[17566,17570,17574,17578,17582,17586,17590,17594,17598,17602,17606,17610,17614,17618,17622],{"type":43,"tag":476,"props":17567,"children":17568},{"style":493},[17569],{"type":53,"value":1809},{"type":43,"tag":476,"props":17571,"children":17572},{"style":509},[17573],{"type":53,"value":1814},{"type":43,"tag":476,"props":17575,"children":17576},{"style":499},[17577],{"type":53,"value":332},{"type":43,"tag":476,"props":17579,"children":17580},{"style":1079},[17581],{"type":53,"value":259},{"type":43,"tag":476,"props":17583,"children":17584},{"style":1098},[17585],{"type":53,"value":1087},{"type":43,"tag":476,"props":17587,"children":17588},{"style":499},[17589],{"type":53,"value":597},{"type":43,"tag":476,"props":17591,"children":17592},{"style":590},[17593],{"type":53,"value":1954},{"type":43,"tag":476,"props":17595,"children":17596},{"style":499},[17597],{"type":53,"value":597},{"type":43,"tag":476,"props":17599,"children":17600},{"style":499},[17601],{"type":53,"value":625},{"type":43,"tag":476,"props":17603,"children":17604},{"style":1098},[17605],{"type":53,"value":1214},{"type":43,"tag":476,"props":17607,"children":17608},{"style":499},[17609],{"type":53,"value":597},{"type":43,"tag":476,"props":17611,"children":17612},{"style":590},[17613],{"type":53,"value":1975},{"type":43,"tag":476,"props":17615,"children":17616},{"style":499},[17617],{"type":53,"value":597},{"type":43,"tag":476,"props":17619,"children":17620},{"style":1098},[17621],{"type":53,"value":1984},{"type":43,"tag":476,"props":17623,"children":17624},{"style":499},[17625],{"type":53,"value":602},{"type":43,"tag":476,"props":17627,"children":17628},{"class":478,"line":571},[17629],{"type":43,"tag":476,"props":17630,"children":17631},{"style":499},[17632],{"type":53,"value":1996},{"type":43,"tag":476,"props":17634,"children":17635},{"class":478,"line":605},[17636,17640,17644,17648,17652,17656,17660,17664],{"type":43,"tag":476,"props":17637,"children":17638},{"style":1079},[17639],{"type":53,"value":2012},{"type":43,"tag":476,"props":17641,"children":17642},{"style":499},[17643],{"type":53,"value":1106},{"type":43,"tag":476,"props":17645,"children":17646},{"style":896},[17647],{"type":53,"value":1777},{"type":43,"tag":476,"props":17649,"children":17650},{"style":499},[17651],{"type":53,"value":1782},{"type":43,"tag":476,"props":17653,"children":17654},{"style":1785},[17655],{"type":53,"value":1788},{"type":43,"tag":476,"props":17657,"children":17658},{"style":499},[17659],{"type":53,"value":1272},{"type":43,"tag":476,"props":17661,"children":17662},{"style":896},[17663],{"type":53,"value":1797},{"type":43,"tag":476,"props":17665,"children":17666},{"style":499},[17667],{"type":53,"value":502},{"type":43,"tag":476,"props":17669,"children":17670},{"class":478,"line":658},[17671,17675,17679,17683,17687,17691,17695,17699,17703,17707,17711,17715,17719,17723,17727,17731,17735,17739,17743,17747,17751,17755,17759,17763,17767,17771,17775,17779,17783,17787],{"type":43,"tag":476,"props":17672,"children":17673},{"style":493},[17674],{"type":53,"value":1809},{"type":43,"tag":476,"props":17676,"children":17677},{"style":509},[17678],{"type":53,"value":1814},{"type":43,"tag":476,"props":17680,"children":17681},{"style":499},[17682],{"type":53,"value":332},{"type":43,"tag":476,"props":17684,"children":17685},{"style":1079},[17686],{"type":53,"value":259},{"type":43,"tag":476,"props":17688,"children":17689},{"style":1098},[17690],{"type":53,"value":1087},{"type":43,"tag":476,"props":17692,"children":17693},{"style":499},[17694],{"type":53,"value":1601},{"type":43,"tag":476,"props":17696,"children":17697},{"style":1098},[17698],{"type":53,"value":2072},{"type":43,"tag":476,"props":17700,"children":17701},{"style":499},[17702],{"type":53,"value":1106},{"type":43,"tag":476,"props":17704,"children":17705},{"style":499},[17706],{"type":53,"value":587},{"type":43,"tag":476,"props":17708,"children":17709},{"style":590},[17710],{"type":53,"value":1954},{"type":43,"tag":476,"props":17712,"children":17713},{"style":499},[17714],{"type":53,"value":597},{"type":43,"tag":476,"props":17716,"children":17717},{"style":499},[17718],{"type":53,"value":625},{"type":43,"tag":476,"props":17720,"children":17721},{"style":1098},[17722],{"type":53,"value":2097},{"type":43,"tag":476,"props":17724,"children":17725},{"style":499},[17726],{"type":53,"value":1106},{"type":43,"tag":476,"props":17728,"children":17729},{"style":1098},[17730],{"type":53,"value":1214},{"type":43,"tag":476,"props":17732,"children":17733},{"style":499},[17734],{"type":53,"value":597},{"type":43,"tag":476,"props":17736,"children":17737},{"style":590},[17738],{"type":53,"value":2114},{"type":43,"tag":476,"props":17740,"children":17741},{"style":499},[17742],{"type":53,"value":597},{"type":43,"tag":476,"props":17744,"children":17745},{"style":499},[17746],{"type":53,"value":625},{"type":43,"tag":476,"props":17748,"children":17749},{"style":499},[17750],{"type":53,"value":587},{"type":43,"tag":476,"props":17752,"children":17753},{"style":590},[17754],{"type":53,"value":2131},{"type":43,"tag":476,"props":17756,"children":17757},{"style":499},[17758],{"type":53,"value":597},{"type":43,"tag":476,"props":17760,"children":17761},{"style":1098},[17762],{"type":53,"value":1224},{"type":43,"tag":476,"props":17764,"children":17765},{"style":499},[17766],{"type":53,"value":625},{"type":43,"tag":476,"props":17768,"children":17769},{"style":1098},[17770],{"type":53,"value":2148},{"type":43,"tag":476,"props":17772,"children":17773},{"style":499},[17774],{"type":53,"value":1106},{"type":43,"tag":476,"props":17776,"children":17777},{"style":1416},[17778],{"type":53,"value":1419},{"type":43,"tag":476,"props":17780,"children":17781},{"style":499},[17782],{"type":53,"value":635},{"type":43,"tag":476,"props":17784,"children":17785},{"style":1098},[17786],{"type":53,"value":1272},{"type":43,"tag":476,"props":17788,"children":17789},{"style":499},[17790],{"type":53,"value":602},{"type":43,"tag":476,"props":17792,"children":17793},{"class":478,"line":668},[17794],{"type":43,"tag":476,"props":17795,"children":17796},{"style":499},[17797],{"type":53,"value":1996},{"type":43,"tag":476,"props":17799,"children":17800},{"class":478,"line":677},[17801,17805,17809],{"type":43,"tag":476,"props":17802,"children":17803},{"style":499},[17804],{"type":53,"value":577},{"type":43,"tag":476,"props":17806,"children":17807},{"style":509},[17808],{"type":53,"value":1272},{"type":43,"tag":476,"props":17810,"children":17811},{"style":499},[17812],{"type":53,"value":602},{"type":43,"tag":476,"props":17814,"children":17815},{"class":478,"line":694},[17816],{"type":43,"tag":476,"props":17817,"children":17818},{"emptyLinePlaceholder":662},[17819],{"type":53,"value":665},{"type":43,"tag":476,"props":17821,"children":17822},{"class":478,"line":707},[17823,17827,17831,17835,17839,17843,17848,17852,17856,17860,17864,17868,17872,17876,17880],{"type":43,"tag":476,"props":17824,"children":17825},{"style":509},[17826],{"type":53,"value":1504},{"type":43,"tag":476,"props":17828,"children":17829},{"style":499},[17830],{"type":53,"value":332},{"type":43,"tag":476,"props":17832,"children":17833},{"style":1079},[17834],{"type":53,"value":1513},{"type":43,"tag":476,"props":17836,"children":17837},{"style":509},[17838],{"type":53,"value":1087},{"type":43,"tag":476,"props":17840,"children":17841},{"style":499},[17842],{"type":53,"value":597},{"type":43,"tag":476,"props":17844,"children":17845},{"style":590},[17846],{"type":53,"value":17847},"App running at:",{"type":43,"tag":476,"props":17849,"children":17850},{"style":499},[17851],{"type":53,"value":597},{"type":43,"tag":476,"props":17853,"children":17854},{"style":499},[17855],{"type":53,"value":625},{"type":43,"tag":476,"props":17857,"children":17858},{"style":509},[17859],{"type":53,"value":4387},{"type":43,"tag":476,"props":17861,"children":17862},{"style":499},[17863],{"type":53,"value":332},{"type":43,"tag":476,"props":17865,"children":17866},{"style":1079},[17867],{"type":53,"value":13810},{"type":43,"tag":476,"props":17869,"children":17870},{"style":509},[17871],{"type":53,"value":1087},{"type":43,"tag":476,"props":17873,"children":17874},{"style":1184},[17875],{"type":53,"value":1219},{"type":43,"tag":476,"props":17877,"children":17878},{"style":509},[17879],{"type":53,"value":5651},{"type":43,"tag":476,"props":17881,"children":17882},{"style":499},[17883],{"type":53,"value":602},{"type":43,"tag":80,"props":17885,"children":17887},{"id":17886},"build-and-test-pattern-ephemeral",[17888],{"type":53,"value":17889},"Build and Test Pattern (Ephemeral)",{"type":43,"tag":465,"props":17891,"children":17893},{"className":467,"code":17892,"language":469,"meta":470,"style":470},"await using sandbox = await Sandbox.create({\n  source: { type: \"git\", url: repoUrl },\n  persistent: false, \u002F\u002F Skip snapshotting on shutdown\n  snapshotExpiration: ms(\"1d\"), \u002F\u002F Short TTL for any incidental snapshot\n});\n\nconst install = await sandbox.runCommand(\"npm\", [\"ci\"]);\nif (install.exitCode !== 0) throw new Error(\"Install failed\");\n\nconst build = await sandbox.runCommand(\"npm\", [\"run\", \"build\"]);\nif (build.exitCode !== 0) throw new Error(\"Build failed\");\n\nconst test = await sandbox.runCommand(\"npm\", [\"test\"]);\nprocess.exit(test.exitCode);\n",[17894],{"type":43,"tag":58,"props":17895,"children":17896},{"__ignoreMap":470},[17897,17936,17992,18016,18061,18076,18083,18160,18231,18238,18330,18399,18406,18482],{"type":43,"tag":476,"props":17898,"children":17899},{"class":478,"line":479},[17900,17904,17908,17912,17916,17920,17924,17928,17932],{"type":43,"tag":476,"props":17901,"children":17902},{"style":896},[17903],{"type":53,"value":4338},{"type":43,"tag":476,"props":17905,"children":17906},{"style":509},[17907],{"type":53,"value":1058},{"type":43,"tag":476,"props":17909,"children":17910},{"style":499},[17911],{"type":53,"value":1063},{"type":43,"tag":476,"props":17913,"children":17914},{"style":493},[17915],{"type":53,"value":1068},{"type":43,"tag":476,"props":17917,"children":17918},{"style":509},[17919],{"type":53,"value":1014},{"type":43,"tag":476,"props":17921,"children":17922},{"style":499},[17923],{"type":53,"value":332},{"type":43,"tag":476,"props":17925,"children":17926},{"style":1079},[17927],{"type":53,"value":1082},{"type":43,"tag":476,"props":17929,"children":17930},{"style":509},[17931],{"type":53,"value":1087},{"type":43,"tag":476,"props":17933,"children":17934},{"style":499},[17935],{"type":53,"value":1092},{"type":43,"tag":476,"props":17937,"children":17938},{"class":478,"line":489},[17939,17943,17947,17951,17955,17959,17963,17967,17971,17975,17979,17983,17988],{"type":43,"tag":476,"props":17940,"children":17941},{"style":1098},[17942],{"type":53,"value":2593},{"type":43,"tag":476,"props":17944,"children":17945},{"style":499},[17946],{"type":53,"value":1106},{"type":43,"tag":476,"props":17948,"children":17949},{"style":499},[17950],{"type":53,"value":615},{"type":43,"tag":476,"props":17952,"children":17953},{"style":1098},[17954],{"type":53,"value":687},{"type":43,"tag":476,"props":17956,"children":17957},{"style":499},[17958],{"type":53,"value":1106},{"type":43,"tag":476,"props":17960,"children":17961},{"style":499},[17962],{"type":53,"value":587},{"type":43,"tag":476,"props":17964,"children":17965},{"style":590},[17966],{"type":53,"value":2622},{"type":43,"tag":476,"props":17968,"children":17969},{"style":499},[17970],{"type":53,"value":597},{"type":43,"tag":476,"props":17972,"children":17973},{"style":499},[17974],{"type":53,"value":625},{"type":43,"tag":476,"props":17976,"children":17977},{"style":1098},[17978],{"type":53,"value":17440},{"type":43,"tag":476,"props":17980,"children":17981},{"style":499},[17982],{"type":53,"value":1106},{"type":43,"tag":476,"props":17984,"children":17985},{"style":509},[17986],{"type":53,"value":17987}," repoUrl ",{"type":43,"tag":476,"props":17989,"children":17990},{"style":499},[17991],{"type":53,"value":1910},{"type":43,"tag":476,"props":17993,"children":17994},{"class":478,"line":505},[17995,17999,18003,18007,18011],{"type":43,"tag":476,"props":17996,"children":17997},{"style":1098},[17998],{"type":53,"value":1409},{"type":43,"tag":476,"props":18000,"children":18001},{"style":499},[18002],{"type":53,"value":1106},{"type":43,"tag":476,"props":18004,"children":18005},{"style":1416},[18006],{"type":53,"value":4922},{"type":43,"tag":476,"props":18008,"children":18009},{"style":499},[18010],{"type":53,"value":625},{"type":43,"tag":476,"props":18012,"children":18013},{"style":483},[18014],{"type":53,"value":18015}," \u002F\u002F Skip snapshotting on shutdown\n",{"type":43,"tag":476,"props":18017,"children":18018},{"class":478,"line":519},[18019,18023,18027,18031,18035,18039,18044,18048,18052,18056],{"type":43,"tag":476,"props":18020,"children":18021},{"style":1098},[18022],{"type":53,"value":1436},{"type":43,"tag":476,"props":18024,"children":18025},{"style":499},[18026],{"type":53,"value":1106},{"type":43,"tag":476,"props":18028,"children":18029},{"style":1079},[18030],{"type":53,"value":1250},{"type":43,"tag":476,"props":18032,"children":18033},{"style":509},[18034],{"type":53,"value":1087},{"type":43,"tag":476,"props":18036,"children":18037},{"style":499},[18038],{"type":53,"value":597},{"type":43,"tag":476,"props":18040,"children":18041},{"style":590},[18042],{"type":53,"value":18043},"1d",{"type":43,"tag":476,"props":18045,"children":18046},{"style":499},[18047],{"type":53,"value":597},{"type":43,"tag":476,"props":18049,"children":18050},{"style":509},[18051],{"type":53,"value":1272},{"type":43,"tag":476,"props":18053,"children":18054},{"style":499},[18055],{"type":53,"value":625},{"type":43,"tag":476,"props":18057,"children":18058},{"style":483},[18059],{"type":53,"value":18060}," \u002F\u002F Short TTL for any incidental snapshot\n",{"type":43,"tag":476,"props":18062,"children":18063},{"class":478,"line":532},[18064,18068,18072],{"type":43,"tag":476,"props":18065,"children":18066},{"style":499},[18067],{"type":53,"value":577},{"type":43,"tag":476,"props":18069,"children":18070},{"style":509},[18071],{"type":53,"value":1272},{"type":43,"tag":476,"props":18073,"children":18074},{"style":499},[18075],{"type":53,"value":602},{"type":43,"tag":476,"props":18077,"children":18078},{"class":478,"line":545},[18079],{"type":43,"tag":476,"props":18080,"children":18081},{"emptyLinePlaceholder":662},[18082],{"type":53,"value":665},{"type":43,"tag":476,"props":18084,"children":18085},{"class":478,"line":558},[18086,18090,18095,18099,18103,18107,18111,18115,18119,18123,18127,18131,18135,18139,18143,18148,18152,18156],{"type":43,"tag":476,"props":18087,"children":18088},{"style":896},[18089],{"type":53,"value":1053},{"type":43,"tag":476,"props":18091,"children":18092},{"style":509},[18093],{"type":53,"value":18094}," install ",{"type":43,"tag":476,"props":18096,"children":18097},{"style":499},[18098],{"type":53,"value":1063},{"type":43,"tag":476,"props":18100,"children":18101},{"style":493},[18102],{"type":53,"value":1068},{"type":43,"tag":476,"props":18104,"children":18105},{"style":509},[18106],{"type":53,"value":4387},{"type":43,"tag":476,"props":18108,"children":18109},{"style":499},[18110],{"type":53,"value":332},{"type":43,"tag":476,"props":18112,"children":18113},{"style":1079},[18114],{"type":53,"value":259},{"type":43,"tag":476,"props":18116,"children":18117},{"style":509},[18118],{"type":53,"value":1087},{"type":43,"tag":476,"props":18120,"children":18121},{"style":499},[18122],{"type":53,"value":597},{"type":43,"tag":476,"props":18124,"children":18125},{"style":590},[18126],{"type":53,"value":1954},{"type":43,"tag":476,"props":18128,"children":18129},{"style":499},[18130],{"type":53,"value":597},{"type":43,"tag":476,"props":18132,"children":18133},{"style":499},[18134],{"type":53,"value":625},{"type":43,"tag":476,"props":18136,"children":18137},{"style":509},[18138],{"type":53,"value":1214},{"type":43,"tag":476,"props":18140,"children":18141},{"style":499},[18142],{"type":53,"value":597},{"type":43,"tag":476,"props":18144,"children":18145},{"style":590},[18146],{"type":53,"value":18147},"ci",{"type":43,"tag":476,"props":18149,"children":18150},{"style":499},[18151],{"type":53,"value":597},{"type":43,"tag":476,"props":18153,"children":18154},{"style":509},[18155],{"type":53,"value":1984},{"type":43,"tag":476,"props":18157,"children":18158},{"style":499},[18159],{"type":53,"value":602},{"type":43,"tag":476,"props":18161,"children":18162},{"class":478,"line":571},[18163,18167,18172,18176,18180,18184,18188,18192,18197,18201,18206,18210,18214,18219,18223,18227],{"type":43,"tag":476,"props":18164,"children":18165},{"style":493},[18166],{"type":53,"value":4600},{"type":43,"tag":476,"props":18168,"children":18169},{"style":509},[18170],{"type":53,"value":18171}," (install",{"type":43,"tag":476,"props":18173,"children":18174},{"style":499},[18175],{"type":53,"value":332},{"type":43,"tag":476,"props":18177,"children":18178},{"style":509},[18179],{"type":53,"value":4614},{"type":43,"tag":476,"props":18181,"children":18182},{"style":499},[18183],{"type":53,"value":4619},{"type":43,"tag":476,"props":18185,"children":18186},{"style":1184},[18187],{"type":53,"value":4624},{"type":43,"tag":476,"props":18189,"children":18190},{"style":509},[18191],{"type":53,"value":1905},{"type":43,"tag":476,"props":18193,"children":18194},{"style":493},[18195],{"type":53,"value":18196},"throw",{"type":43,"tag":476,"props":18198,"children":18199},{"style":499},[18200],{"type":53,"value":14785},{"type":43,"tag":476,"props":18202,"children":18203},{"style":1079},[18204],{"type":53,"value":18205}," Error",{"type":43,"tag":476,"props":18207,"children":18208},{"style":509},[18209],{"type":53,"value":1087},{"type":43,"tag":476,"props":18211,"children":18212},{"style":499},[18213],{"type":53,"value":597},{"type":43,"tag":476,"props":18215,"children":18216},{"style":590},[18217],{"type":53,"value":18218},"Install failed",{"type":43,"tag":476,"props":18220,"children":18221},{"style":499},[18222],{"type":53,"value":597},{"type":43,"tag":476,"props":18224,"children":18225},{"style":509},[18226],{"type":53,"value":1272},{"type":43,"tag":476,"props":18228,"children":18229},{"style":499},[18230],{"type":53,"value":602},{"type":43,"tag":476,"props":18232,"children":18233},{"class":478,"line":605},[18234],{"type":43,"tag":476,"props":18235,"children":18236},{"emptyLinePlaceholder":662},[18237],{"type":53,"value":665},{"type":43,"tag":476,"props":18239,"children":18240},{"class":478,"line":658},[18241,18245,18250,18254,18258,18262,18266,18270,18274,18278,18282,18286,18290,18294,18298,18302,18306,18310,18314,18318,18322,18326],{"type":43,"tag":476,"props":18242,"children":18243},{"style":896},[18244],{"type":53,"value":1053},{"type":43,"tag":476,"props":18246,"children":18247},{"style":509},[18248],{"type":53,"value":18249}," build ",{"type":43,"tag":476,"props":18251,"children":18252},{"style":499},[18253],{"type":53,"value":1063},{"type":43,"tag":476,"props":18255,"children":18256},{"style":493},[18257],{"type":53,"value":1068},{"type":43,"tag":476,"props":18259,"children":18260},{"style":509},[18261],{"type":53,"value":4387},{"type":43,"tag":476,"props":18263,"children":18264},{"style":499},[18265],{"type":53,"value":332},{"type":43,"tag":476,"props":18267,"children":18268},{"style":1079},[18269],{"type":53,"value":259},{"type":43,"tag":476,"props":18271,"children":18272},{"style":509},[18273],{"type":53,"value":1087},{"type":43,"tag":476,"props":18275,"children":18276},{"style":499},[18277],{"type":53,"value":597},{"type":43,"tag":476,"props":18279,"children":18280},{"style":590},[18281],{"type":53,"value":1954},{"type":43,"tag":476,"props":18283,"children":18284},{"style":499},[18285],{"type":53,"value":597},{"type":43,"tag":476,"props":18287,"children":18288},{"style":499},[18289],{"type":53,"value":625},{"type":43,"tag":476,"props":18291,"children":18292},{"style":509},[18293],{"type":53,"value":1214},{"type":43,"tag":476,"props":18295,"children":18296},{"style":499},[18297],{"type":53,"value":597},{"type":43,"tag":476,"props":18299,"children":18300},{"style":590},[18301],{"type":53,"value":2114},{"type":43,"tag":476,"props":18303,"children":18304},{"style":499},[18305],{"type":53,"value":597},{"type":43,"tag":476,"props":18307,"children":18308},{"style":499},[18309],{"type":53,"value":625},{"type":43,"tag":476,"props":18311,"children":18312},{"style":499},[18313],{"type":53,"value":587},{"type":43,"tag":476,"props":18315,"children":18316},{"style":590},[18317],{"type":53,"value":4825},{"type":43,"tag":476,"props":18319,"children":18320},{"style":499},[18321],{"type":53,"value":597},{"type":43,"tag":476,"props":18323,"children":18324},{"style":509},[18325],{"type":53,"value":1984},{"type":43,"tag":476,"props":18327,"children":18328},{"style":499},[18329],{"type":53,"value":602},{"type":43,"tag":476,"props":18331,"children":18332},{"class":478,"line":668},[18333,18337,18342,18346,18350,18354,18358,18362,18366,18370,18374,18378,18382,18387,18391,18395],{"type":43,"tag":476,"props":18334,"children":18335},{"style":493},[18336],{"type":53,"value":4600},{"type":43,"tag":476,"props":18338,"children":18339},{"style":509},[18340],{"type":53,"value":18341}," (build",{"type":43,"tag":476,"props":18343,"children":18344},{"style":499},[18345],{"type":53,"value":332},{"type":43,"tag":476,"props":18347,"children":18348},{"style":509},[18349],{"type":53,"value":4614},{"type":43,"tag":476,"props":18351,"children":18352},{"style":499},[18353],{"type":53,"value":4619},{"type":43,"tag":476,"props":18355,"children":18356},{"style":1184},[18357],{"type":53,"value":4624},{"type":43,"tag":476,"props":18359,"children":18360},{"style":509},[18361],{"type":53,"value":1905},{"type":43,"tag":476,"props":18363,"children":18364},{"style":493},[18365],{"type":53,"value":18196},{"type":43,"tag":476,"props":18367,"children":18368},{"style":499},[18369],{"type":53,"value":14785},{"type":43,"tag":476,"props":18371,"children":18372},{"style":1079},[18373],{"type":53,"value":18205},{"type":43,"tag":476,"props":18375,"children":18376},{"style":509},[18377],{"type":53,"value":1087},{"type":43,"tag":476,"props":18379,"children":18380},{"style":499},[18381],{"type":53,"value":597},{"type":43,"tag":476,"props":18383,"children":18384},{"style":590},[18385],{"type":53,"value":18386},"Build failed",{"type":43,"tag":476,"props":18388,"children":18389},{"style":499},[18390],{"type":53,"value":597},{"type":43,"tag":476,"props":18392,"children":18393},{"style":509},[18394],{"type":53,"value":1272},{"type":43,"tag":476,"props":18396,"children":18397},{"style":499},[18398],{"type":53,"value":602},{"type":43,"tag":476,"props":18400,"children":18401},{"class":478,"line":677},[18402],{"type":43,"tag":476,"props":18403,"children":18404},{"emptyLinePlaceholder":662},[18405],{"type":53,"value":665},{"type":43,"tag":476,"props":18407,"children":18408},{"class":478,"line":694},[18409,18413,18418,18422,18426,18430,18434,18438,18442,18446,18450,18454,18458,18462,18466,18470,18474,18478],{"type":43,"tag":476,"props":18410,"children":18411},{"style":896},[18412],{"type":53,"value":1053},{"type":43,"tag":476,"props":18414,"children":18415},{"style":509},[18416],{"type":53,"value":18417}," test ",{"type":43,"tag":476,"props":18419,"children":18420},{"style":499},[18421],{"type":53,"value":1063},{"type":43,"tag":476,"props":18423,"children":18424},{"style":493},[18425],{"type":53,"value":1068},{"type":43,"tag":476,"props":18427,"children":18428},{"style":509},[18429],{"type":53,"value":4387},{"type":43,"tag":476,"props":18431,"children":18432},{"style":499},[18433],{"type":53,"value":332},{"type":43,"tag":476,"props":18435,"children":18436},{"style":1079},[18437],{"type":53,"value":259},{"type":43,"tag":476,"props":18439,"children":18440},{"style":509},[18441],{"type":53,"value":1087},{"type":43,"tag":476,"props":18443,"children":18444},{"style":499},[18445],{"type":53,"value":597},{"type":43,"tag":476,"props":18447,"children":18448},{"style":590},[18449],{"type":53,"value":1954},{"type":43,"tag":476,"props":18451,"children":18452},{"style":499},[18453],{"type":53,"value":597},{"type":43,"tag":476,"props":18455,"children":18456},{"style":499},[18457],{"type":53,"value":625},{"type":43,"tag":476,"props":18459,"children":18460},{"style":509},[18461],{"type":53,"value":1214},{"type":43,"tag":476,"props":18463,"children":18464},{"style":499},[18465],{"type":53,"value":597},{"type":43,"tag":476,"props":18467,"children":18468},{"style":590},[18469],{"type":53,"value":15055},{"type":43,"tag":476,"props":18471,"children":18472},{"style":499},[18473],{"type":53,"value":597},{"type":43,"tag":476,"props":18475,"children":18476},{"style":509},[18477],{"type":53,"value":1984},{"type":43,"tag":476,"props":18479,"children":18480},{"style":499},[18481],{"type":53,"value":602},{"type":43,"tag":476,"props":18483,"children":18484},{"class":478,"line":707},[18485,18490,18494,18499,18504,18508,18513],{"type":43,"tag":476,"props":18486,"children":18487},{"style":509},[18488],{"type":53,"value":18489},"process",{"type":43,"tag":476,"props":18491,"children":18492},{"style":499},[18493],{"type":53,"value":332},{"type":43,"tag":476,"props":18495,"children":18496},{"style":1079},[18497],{"type":53,"value":18498},"exit",{"type":43,"tag":476,"props":18500,"children":18501},{"style":509},[18502],{"type":53,"value":18503},"(test",{"type":43,"tag":476,"props":18505,"children":18506},{"style":499},[18507],{"type":53,"value":332},{"type":43,"tag":476,"props":18509,"children":18510},{"style":509},[18511],{"type":53,"value":18512},"exitCode)",{"type":43,"tag":476,"props":18514,"children":18515},{"style":499},[18516],{"type":53,"value":602},{"type":43,"tag":80,"props":18518,"children":18520},{"id":18519},"base-sandbox-forks-pattern",[18521],{"type":53,"value":18522},"Base Sandbox + Forks Pattern",{"type":43,"tag":67,"props":18524,"children":18525},{},[18526,18528,18533],{"type":53,"value":18527},"Maintain a single \"base\" sandbox with dependencies installed, and spawn fresh\nchildren from it with ",{"type":43,"tag":58,"props":18529,"children":18531},{"className":18530},[],[18532],{"type":53,"value":287},{"type":53,"value":18534},". Each fork inherits the base's config\nand is seeded from its current snapshot — no need to store snapshot IDs in\nyour code. New base snapshots are picked up automatically on the next fork.",{"type":43,"tag":465,"props":18536,"children":18538},{"className":467,"code":18537,"language":469,"meta":470,"style":470},"\u002F\u002F Once: bootstrap the base sandbox\nawait Sandbox.getOrCreate({\n  name: \"my-base\",\n  runtime: \"node24\",\n  keepLastSnapshots: { count: 5 }, \u002F\u002F Keep storage flat\n  onCreate: async (sbx) => {\n    await sbx.runCommand(\"npm\", [\"install\", \"-g\", \"typescript\", \"tsx\"]);\n  },\n});\n\n\u002F\u002F On every run: fork the base sandbox\nasync function runFromBase(code: string) {\n  await using sandbox = await Sandbox.fork({\n    sourceSandbox: \"my-base\",\n    persistent: false,\n  });\n  await sandbox.writeFiles([\n    { path: \"\u002Fvercel\u002Fsandbox\u002Findex.ts\", content: Buffer.from(code) },\n  ]);\n  return sandbox.runCommand(\"tsx\", [\"index.ts\"]);\n}\n",[18539],{"type":43,"tag":58,"props":18540,"children":18541},{"__ignoreMap":470},[18542,18550,18577,18605,18632,18669,18704,18817,18824,18839,18846,18854,18895,18934,18962,18982,18997,19020,19089,19101,19165],{"type":43,"tag":476,"props":18543,"children":18544},{"class":478,"line":479},[18545],{"type":43,"tag":476,"props":18546,"children":18547},{"style":483},[18548],{"type":53,"value":18549},"\u002F\u002F Once: bootstrap the base sandbox\n",{"type":43,"tag":476,"props":18551,"children":18552},{"class":478,"line":489},[18553,18557,18561,18565,18569,18573],{"type":43,"tag":476,"props":18554,"children":18555},{"style":493},[18556],{"type":53,"value":3642},{"type":43,"tag":476,"props":18558,"children":18559},{"style":509},[18560],{"type":53,"value":1014},{"type":43,"tag":476,"props":18562,"children":18563},{"style":499},[18564],{"type":53,"value":332},{"type":43,"tag":476,"props":18566,"children":18567},{"style":1079},[18568],{"type":53,"value":1689},{"type":43,"tag":476,"props":18570,"children":18571},{"style":509},[18572],{"type":53,"value":1087},{"type":43,"tag":476,"props":18574,"children":18575},{"style":499},[18576],{"type":53,"value":1092},{"type":43,"tag":476,"props":18578,"children":18579},{"class":478,"line":505},[18580,18584,18588,18592,18597,18601],{"type":43,"tag":476,"props":18581,"children":18582},{"style":1098},[18583],{"type":53,"value":1101},{"type":43,"tag":476,"props":18585,"children":18586},{"style":499},[18587],{"type":53,"value":1106},{"type":43,"tag":476,"props":18589,"children":18590},{"style":499},[18591],{"type":53,"value":587},{"type":43,"tag":476,"props":18593,"children":18594},{"style":590},[18595],{"type":53,"value":18596},"my-base",{"type":43,"tag":476,"props":18598,"children":18599},{"style":499},[18600],{"type":53,"value":597},{"type":43,"tag":476,"props":18602,"children":18603},{"style":499},[18604],{"type":53,"value":296},{"type":43,"tag":476,"props":18606,"children":18607},{"class":478,"line":519},[18608,18612,18616,18620,18624,18628],{"type":43,"tag":476,"props":18609,"children":18610},{"style":1098},[18611],{"type":53,"value":1136},{"type":43,"tag":476,"props":18613,"children":18614},{"style":499},[18615],{"type":53,"value":1106},{"type":43,"tag":476,"props":18617,"children":18618},{"style":499},[18619],{"type":53,"value":587},{"type":43,"tag":476,"props":18621,"children":18622},{"style":590},[18623],{"type":53,"value":937},{"type":43,"tag":476,"props":18625,"children":18626},{"style":499},[18627],{"type":53,"value":597},{"type":43,"tag":476,"props":18629,"children":18630},{"style":499},[18631],{"type":53,"value":296},{"type":43,"tag":476,"props":18633,"children":18634},{"class":478,"line":532},[18635,18639,18643,18647,18651,18655,18660,18664],{"type":43,"tag":476,"props":18636,"children":18637},{"style":1098},[18638],{"type":53,"value":10526},{"type":43,"tag":476,"props":18640,"children":18641},{"style":499},[18642],{"type":53,"value":1106},{"type":43,"tag":476,"props":18644,"children":18645},{"style":499},[18646],{"type":53,"value":615},{"type":43,"tag":476,"props":18648,"children":18649},{"style":1098},[18650],{"type":53,"value":10539},{"type":43,"tag":476,"props":18652,"children":18653},{"style":499},[18654],{"type":53,"value":1106},{"type":43,"tag":476,"props":18656,"children":18657},{"style":1184},[18658],{"type":53,"value":18659}," 5",{"type":43,"tag":476,"props":18661,"children":18662},{"style":499},[18663],{"type":53,"value":1192},{"type":43,"tag":476,"props":18665,"children":18666},{"style":483},[18667],{"type":53,"value":18668}," \u002F\u002F Keep storage flat\n",{"type":43,"tag":476,"props":18670,"children":18671},{"class":478,"line":545},[18672,18676,18680,18684,18688,18692,18696,18700],{"type":43,"tag":476,"props":18673,"children":18674},{"style":1079},[18675],{"type":53,"value":1768},{"type":43,"tag":476,"props":18677,"children":18678},{"style":499},[18679],{"type":53,"value":1106},{"type":43,"tag":476,"props":18681,"children":18682},{"style":896},[18683],{"type":53,"value":1777},{"type":43,"tag":476,"props":18685,"children":18686},{"style":499},[18687],{"type":53,"value":1782},{"type":43,"tag":476,"props":18689,"children":18690},{"style":1785},[18691],{"type":53,"value":1788},{"type":43,"tag":476,"props":18693,"children":18694},{"style":499},[18695],{"type":53,"value":1272},{"type":43,"tag":476,"props":18697,"children":18698},{"style":896},[18699],{"type":53,"value":1797},{"type":43,"tag":476,"props":18701,"children":18702},{"style":499},[18703],{"type":53,"value":502},{"type":43,"tag":476,"props":18705,"children":18706},{"class":478,"line":558},[18707,18711,18715,18719,18723,18727,18731,18735,18739,18743,18747,18751,18755,18759,18763,18767,18772,18776,18780,18784,18788,18792,18796,18800,18805,18809,18813],{"type":43,"tag":476,"props":18708,"children":18709},{"style":493},[18710],{"type":53,"value":1809},{"type":43,"tag":476,"props":18712,"children":18713},{"style":509},[18714],{"type":53,"value":1814},{"type":43,"tag":476,"props":18716,"children":18717},{"style":499},[18718],{"type":53,"value":332},{"type":43,"tag":476,"props":18720,"children":18721},{"style":1079},[18722],{"type":53,"value":259},{"type":43,"tag":476,"props":18724,"children":18725},{"style":1098},[18726],{"type":53,"value":1087},{"type":43,"tag":476,"props":18728,"children":18729},{"style":499},[18730],{"type":53,"value":597},{"type":43,"tag":476,"props":18732,"children":18733},{"style":590},[18734],{"type":53,"value":1954},{"type":43,"tag":476,"props":18736,"children":18737},{"style":499},[18738],{"type":53,"value":597},{"type":43,"tag":476,"props":18740,"children":18741},{"style":499},[18742],{"type":53,"value":625},{"type":43,"tag":476,"props":18744,"children":18745},{"style":1098},[18746],{"type":53,"value":1214},{"type":43,"tag":476,"props":18748,"children":18749},{"style":499},[18750],{"type":53,"value":597},{"type":43,"tag":476,"props":18752,"children":18753},{"style":590},[18754],{"type":53,"value":1975},{"type":43,"tag":476,"props":18756,"children":18757},{"style":499},[18758],{"type":53,"value":597},{"type":43,"tag":476,"props":18760,"children":18761},{"style":499},[18762],{"type":53,"value":625},{"type":43,"tag":476,"props":18764,"children":18765},{"style":499},[18766],{"type":53,"value":587},{"type":43,"tag":476,"props":18768,"children":18769},{"style":590},[18770],{"type":53,"value":18771},"-g",{"type":43,"tag":476,"props":18773,"children":18774},{"style":499},[18775],{"type":53,"value":597},{"type":43,"tag":476,"props":18777,"children":18778},{"style":499},[18779],{"type":53,"value":625},{"type":43,"tag":476,"props":18781,"children":18782},{"style":499},[18783],{"type":53,"value":587},{"type":43,"tag":476,"props":18785,"children":18786},{"style":590},[18787],{"type":53,"value":469},{"type":43,"tag":476,"props":18789,"children":18790},{"style":499},[18791],{"type":53,"value":597},{"type":43,"tag":476,"props":18793,"children":18794},{"style":499},[18795],{"type":53,"value":625},{"type":43,"tag":476,"props":18797,"children":18798},{"style":499},[18799],{"type":53,"value":587},{"type":43,"tag":476,"props":18801,"children":18802},{"style":590},[18803],{"type":53,"value":18804},"tsx",{"type":43,"tag":476,"props":18806,"children":18807},{"style":499},[18808],{"type":53,"value":597},{"type":43,"tag":476,"props":18810,"children":18811},{"style":1098},[18812],{"type":53,"value":1984},{"type":43,"tag":476,"props":18814,"children":18815},{"style":499},[18816],{"type":53,"value":602},{"type":43,"tag":476,"props":18818,"children":18819},{"class":478,"line":571},[18820],{"type":43,"tag":476,"props":18821,"children":18822},{"style":499},[18823],{"type":53,"value":1996},{"type":43,"tag":476,"props":18825,"children":18826},{"class":478,"line":605},[18827,18831,18835],{"type":43,"tag":476,"props":18828,"children":18829},{"style":499},[18830],{"type":53,"value":577},{"type":43,"tag":476,"props":18832,"children":18833},{"style":509},[18834],{"type":53,"value":1272},{"type":43,"tag":476,"props":18836,"children":18837},{"style":499},[18838],{"type":53,"value":602},{"type":43,"tag":476,"props":18840,"children":18841},{"class":478,"line":658},[18842],{"type":43,"tag":476,"props":18843,"children":18844},{"emptyLinePlaceholder":662},[18845],{"type":53,"value":665},{"type":43,"tag":476,"props":18847,"children":18848},{"class":478,"line":668},[18849],{"type":43,"tag":476,"props":18850,"children":18851},{"style":483},[18852],{"type":53,"value":18853},"\u002F\u002F On every run: fork the base sandbox\n",{"type":43,"tag":476,"props":18855,"children":18856},{"class":478,"line":677},[18857,18861,18865,18870,18874,18878,18882,18887,18891],{"type":43,"tag":476,"props":18858,"children":18859},{"style":896},[18860],{"type":53,"value":4355},{"type":43,"tag":476,"props":18862,"children":18863},{"style":896},[18864],{"type":53,"value":4360},{"type":43,"tag":476,"props":18866,"children":18867},{"style":1079},[18868],{"type":53,"value":18869}," runFromBase",{"type":43,"tag":476,"props":18871,"children":18872},{"style":499},[18873],{"type":53,"value":1087},{"type":43,"tag":476,"props":18875,"children":18876},{"style":1785},[18877],{"type":53,"value":58},{"type":43,"tag":476,"props":18879,"children":18880},{"style":499},[18881],{"type":53,"value":1106},{"type":43,"tag":476,"props":18883,"children":18884},{"style":902},[18885],{"type":53,"value":18886}," string",{"type":43,"tag":476,"props":18888,"children":18889},{"style":499},[18890],{"type":53,"value":1272},{"type":43,"tag":476,"props":18892,"children":18893},{"style":499},[18894],{"type":53,"value":502},{"type":43,"tag":476,"props":18896,"children":18897},{"class":478,"line":694},[18898,18902,18906,18910,18914,18918,18922,18926,18930],{"type":43,"tag":476,"props":18899,"children":18900},{"style":896},[18901],{"type":53,"value":4382},{"type":43,"tag":476,"props":18903,"children":18904},{"style":509},[18905],{"type":53,"value":4387},{"type":43,"tag":476,"props":18907,"children":18908},{"style":499},[18909],{"type":53,"value":910},{"type":43,"tag":476,"props":18911,"children":18912},{"style":493},[18913],{"type":53,"value":1068},{"type":43,"tag":476,"props":18915,"children":18916},{"style":509},[18917],{"type":53,"value":1014},{"type":43,"tag":476,"props":18919,"children":18920},{"style":499},[18921],{"type":53,"value":332},{"type":43,"tag":476,"props":18923,"children":18924},{"style":1079},[18925],{"type":53,"value":4061},{"type":43,"tag":476,"props":18927,"children":18928},{"style":1098},[18929],{"type":53,"value":1087},{"type":43,"tag":476,"props":18931,"children":18932},{"style":499},[18933],{"type":53,"value":1092},{"type":43,"tag":476,"props":18935,"children":18936},{"class":478,"line":707},[18937,18942,18946,18950,18954,18958],{"type":43,"tag":476,"props":18938,"children":18939},{"style":1098},[18940],{"type":53,"value":18941},"    sourceSandbox",{"type":43,"tag":476,"props":18943,"children":18944},{"style":499},[18945],{"type":53,"value":1106},{"type":43,"tag":476,"props":18947,"children":18948},{"style":499},[18949],{"type":53,"value":587},{"type":43,"tag":476,"props":18951,"children":18952},{"style":590},[18953],{"type":53,"value":18596},{"type":43,"tag":476,"props":18955,"children":18956},{"style":499},[18957],{"type":53,"value":597},{"type":43,"tag":476,"props":18959,"children":18960},{"style":499},[18961],{"type":53,"value":296},{"type":43,"tag":476,"props":18963,"children":18964},{"class":478,"line":720},[18965,18970,18974,18978],{"type":43,"tag":476,"props":18966,"children":18967},{"style":1098},[18968],{"type":53,"value":18969},"    persistent",{"type":43,"tag":476,"props":18971,"children":18972},{"style":499},[18973],{"type":53,"value":1106},{"type":43,"tag":476,"props":18975,"children":18976},{"style":1416},[18977],{"type":53,"value":4922},{"type":43,"tag":476,"props":18979,"children":18980},{"style":499},[18981],{"type":53,"value":296},{"type":43,"tag":476,"props":18983,"children":18984},{"class":478,"line":733},[18985,18989,18993],{"type":43,"tag":476,"props":18986,"children":18987},{"style":499},[18988],{"type":53,"value":14630},{"type":43,"tag":476,"props":18990,"children":18991},{"style":1098},[18992],{"type":53,"value":1272},{"type":43,"tag":476,"props":18994,"children":18995},{"style":499},[18996],{"type":53,"value":602},{"type":43,"tag":476,"props":18998,"children":18999},{"class":478,"line":761},[19000,19004,19008,19012,19016],{"type":43,"tag":476,"props":19001,"children":19002},{"style":493},[19003],{"type":53,"value":4431},{"type":43,"tag":476,"props":19005,"children":19006},{"style":509},[19007],{"type":53,"value":4387},{"type":43,"tag":476,"props":19009,"children":19010},{"style":499},[19011],{"type":53,"value":332},{"type":43,"tag":476,"props":19013,"children":19014},{"style":1079},[19015],{"type":53,"value":267},{"type":43,"tag":476,"props":19017,"children":19018},{"style":1098},[19019],{"type":53,"value":1827},{"type":43,"tag":476,"props":19021,"children":19022},{"class":478,"line":769},[19023,19028,19032,19036,19040,19045,19049,19053,19057,19061,19065,19069,19073,19077,19081,19085],{"type":43,"tag":476,"props":19024,"children":19025},{"style":499},[19026],{"type":53,"value":19027},"    {",{"type":43,"tag":476,"props":19029,"children":19030},{"style":1098},[19031],{"type":53,"value":1840},{"type":43,"tag":476,"props":19033,"children":19034},{"style":499},[19035],{"type":53,"value":1106},{"type":43,"tag":476,"props":19037,"children":19038},{"style":499},[19039],{"type":53,"value":587},{"type":43,"tag":476,"props":19041,"children":19042},{"style":590},[19043],{"type":53,"value":19044},"\u002Fvercel\u002Fsandbox\u002Findex.ts",{"type":43,"tag":476,"props":19046,"children":19047},{"style":499},[19048],{"type":53,"value":597},{"type":43,"tag":476,"props":19050,"children":19051},{"style":499},[19052],{"type":53,"value":625},{"type":43,"tag":476,"props":19054,"children":19055},{"style":1098},[19056],{"type":53,"value":1866},{"type":43,"tag":476,"props":19058,"children":19059},{"style":499},[19060],{"type":53,"value":1106},{"type":43,"tag":476,"props":19062,"children":19063},{"style":509},[19064],{"type":53,"value":1875},{"type":43,"tag":476,"props":19066,"children":19067},{"style":499},[19068],{"type":53,"value":332},{"type":43,"tag":476,"props":19070,"children":19071},{"style":1079},[19072],{"type":53,"value":852},{"type":43,"tag":476,"props":19074,"children":19075},{"style":1098},[19076],{"type":53,"value":1087},{"type":43,"tag":476,"props":19078,"children":19079},{"style":509},[19080],{"type":53,"value":58},{"type":43,"tag":476,"props":19082,"children":19083},{"style":1098},[19084],{"type":53,"value":1905},{"type":43,"tag":476,"props":19086,"children":19087},{"style":499},[19088],{"type":53,"value":1910},{"type":43,"tag":476,"props":19090,"children":19091},{"class":478,"line":778},[19092,19097],{"type":43,"tag":476,"props":19093,"children":19094},{"style":1098},[19095],{"type":53,"value":19096},"  ])",{"type":43,"tag":476,"props":19098,"children":19099},{"style":499},[19100],{"type":53,"value":602},{"type":43,"tag":476,"props":19102,"children":19103},{"class":478,"line":820},[19104,19108,19112,19116,19120,19124,19128,19132,19136,19140,19144,19148,19153,19157,19161],{"type":43,"tag":476,"props":19105,"children":19106},{"style":493},[19107],{"type":53,"value":9915},{"type":43,"tag":476,"props":19109,"children":19110},{"style":509},[19111],{"type":53,"value":4387},{"type":43,"tag":476,"props":19113,"children":19114},{"style":499},[19115],{"type":53,"value":332},{"type":43,"tag":476,"props":19117,"children":19118},{"style":1079},[19119],{"type":53,"value":259},{"type":43,"tag":476,"props":19121,"children":19122},{"style":1098},[19123],{"type":53,"value":1087},{"type":43,"tag":476,"props":19125,"children":19126},{"style":499},[19127],{"type":53,"value":597},{"type":43,"tag":476,"props":19129,"children":19130},{"style":590},[19131],{"type":53,"value":18804},{"type":43,"tag":476,"props":19133,"children":19134},{"style":499},[19135],{"type":53,"value":597},{"type":43,"tag":476,"props":19137,"children":19138},{"style":499},[19139],{"type":53,"value":625},{"type":43,"tag":476,"props":19141,"children":19142},{"style":1098},[19143],{"type":53,"value":1214},{"type":43,"tag":476,"props":19145,"children":19146},{"style":499},[19147],{"type":53,"value":597},{"type":43,"tag":476,"props":19149,"children":19150},{"style":590},[19151],{"type":53,"value":19152},"index.ts",{"type":43,"tag":476,"props":19154,"children":19155},{"style":499},[19156],{"type":53,"value":597},{"type":43,"tag":476,"props":19158,"children":19159},{"style":1098},[19160],{"type":53,"value":1984},{"type":43,"tag":476,"props":19162,"children":19163},{"style":499},[19164],{"type":53,"value":602},{"type":43,"tag":476,"props":19166,"children":19167},{"class":478,"line":828},[19168],{"type":43,"tag":476,"props":19169,"children":19170},{"style":499},[19171],{"type":53,"value":4497},{"type":43,"tag":80,"props":19173,"children":19175},{"id":19174},"long-lived-workspace-pattern",[19176],{"type":53,"value":19177},"Long-Lived Workspace Pattern",{"type":43,"tag":465,"props":19179,"children":19181},{"className":467,"code":19180,"language":469,"meta":470,"style":470},"\u002F\u002F Idempotent: first call creates, subsequent calls resume\nconst sandbox = await Sandbox.getOrCreate({\n  name: `workspace-${userId}`,\n  runtime: \"node24\",\n  keepLastSnapshots: { count: 1, expiration: ms(\"5d\") },\n  onCreate: async (sbx) => {\n    await sbx.runCommand(\"git\", [\"clone\", repoUrl, \".\"]);\n    await sbx.runCommand(\"npm\", [\"install\"]);\n  },\n});\n\n\u002F\u002F Use the sandbox — auto-resumes if it was stopped\nawait sandbox.runCommand(\"git\", [\"pull\"]);\n",[19182],{"type":43,"tag":58,"props":19183,"children":19184},{"__ignoreMap":470},[19185,19193,19232,19272,19299,19368,19403,19492,19555,19562,19577,19584,19592],{"type":43,"tag":476,"props":19186,"children":19187},{"class":478,"line":479},[19188],{"type":43,"tag":476,"props":19189,"children":19190},{"style":483},[19191],{"type":53,"value":19192},"\u002F\u002F Idempotent: first call creates, subsequent calls resume\n",{"type":43,"tag":476,"props":19194,"children":19195},{"class":478,"line":489},[19196,19200,19204,19208,19212,19216,19220,19224,19228],{"type":43,"tag":476,"props":19197,"children":19198},{"style":896},[19199],{"type":53,"value":1053},{"type":43,"tag":476,"props":19201,"children":19202},{"style":509},[19203],{"type":53,"value":1058},{"type":43,"tag":476,"props":19205,"children":19206},{"style":499},[19207],{"type":53,"value":1063},{"type":43,"tag":476,"props":19209,"children":19210},{"style":493},[19211],{"type":53,"value":1068},{"type":43,"tag":476,"props":19213,"children":19214},{"style":509},[19215],{"type":53,"value":1014},{"type":43,"tag":476,"props":19217,"children":19218},{"style":499},[19219],{"type":53,"value":332},{"type":43,"tag":476,"props":19221,"children":19222},{"style":1079},[19223],{"type":53,"value":1689},{"type":43,"tag":476,"props":19225,"children":19226},{"style":509},[19227],{"type":53,"value":1087},{"type":43,"tag":476,"props":19229,"children":19230},{"style":499},[19231],{"type":53,"value":1092},{"type":43,"tag":476,"props":19233,"children":19234},{"class":478,"line":505},[19235,19239,19243,19248,19253,19258,19263,19268],{"type":43,"tag":476,"props":19236,"children":19237},{"style":1098},[19238],{"type":53,"value":1101},{"type":43,"tag":476,"props":19240,"children":19241},{"style":499},[19242],{"type":53,"value":1106},{"type":43,"tag":476,"props":19244,"children":19245},{"style":499},[19246],{"type":53,"value":19247}," `",{"type":43,"tag":476,"props":19249,"children":19250},{"style":590},[19251],{"type":53,"value":19252},"workspace-",{"type":43,"tag":476,"props":19254,"children":19255},{"style":499},[19256],{"type":53,"value":19257},"${",{"type":43,"tag":476,"props":19259,"children":19260},{"style":509},[19261],{"type":53,"value":19262},"userId",{"type":43,"tag":476,"props":19264,"children":19265},{"style":499},[19266],{"type":53,"value":19267},"}`",{"type":43,"tag":476,"props":19269,"children":19270},{"style":499},[19271],{"type":53,"value":296},{"type":43,"tag":476,"props":19273,"children":19274},{"class":478,"line":519},[19275,19279,19283,19287,19291,19295],{"type":43,"tag":476,"props":19276,"children":19277},{"style":1098},[19278],{"type":53,"value":1136},{"type":43,"tag":476,"props":19280,"children":19281},{"style":499},[19282],{"type":53,"value":1106},{"type":43,"tag":476,"props":19284,"children":19285},{"style":499},[19286],{"type":53,"value":587},{"type":43,"tag":476,"props":19288,"children":19289},{"style":590},[19290],{"type":53,"value":937},{"type":43,"tag":476,"props":19292,"children":19293},{"style":499},[19294],{"type":53,"value":597},{"type":43,"tag":476,"props":19296,"children":19297},{"style":499},[19298],{"type":53,"value":296},{"type":43,"tag":476,"props":19300,"children":19301},{"class":478,"line":532},[19302,19306,19310,19314,19318,19322,19326,19330,19335,19339,19343,19347,19351,19356,19360,19364],{"type":43,"tag":476,"props":19303,"children":19304},{"style":1098},[19305],{"type":53,"value":10526},{"type":43,"tag":476,"props":19307,"children":19308},{"style":499},[19309],{"type":53,"value":1106},{"type":43,"tag":476,"props":19311,"children":19312},{"style":499},[19313],{"type":53,"value":615},{"type":43,"tag":476,"props":19315,"children":19316},{"style":1098},[19317],{"type":53,"value":10539},{"type":43,"tag":476,"props":19319,"children":19320},{"style":499},[19321],{"type":53,"value":1106},{"type":43,"tag":476,"props":19323,"children":19324},{"style":1184},[19325],{"type":53,"value":2676},{"type":43,"tag":476,"props":19327,"children":19328},{"style":499},[19329],{"type":53,"value":625},{"type":43,"tag":476,"props":19331,"children":19332},{"style":1098},[19333],{"type":53,"value":19334}," expiration",{"type":43,"tag":476,"props":19336,"children":19337},{"style":499},[19338],{"type":53,"value":1106},{"type":43,"tag":476,"props":19340,"children":19341},{"style":1079},[19342],{"type":53,"value":1250},{"type":43,"tag":476,"props":19344,"children":19345},{"style":509},[19346],{"type":53,"value":1087},{"type":43,"tag":476,"props":19348,"children":19349},{"style":499},[19350],{"type":53,"value":597},{"type":43,"tag":476,"props":19352,"children":19353},{"style":590},[19354],{"type":53,"value":19355},"5d",{"type":43,"tag":476,"props":19357,"children":19358},{"style":499},[19359],{"type":53,"value":597},{"type":43,"tag":476,"props":19361,"children":19362},{"style":509},[19363],{"type":53,"value":1905},{"type":43,"tag":476,"props":19365,"children":19366},{"style":499},[19367],{"type":53,"value":1910},{"type":43,"tag":476,"props":19369,"children":19370},{"class":478,"line":545},[19371,19375,19379,19383,19387,19391,19395,19399],{"type":43,"tag":476,"props":19372,"children":19373},{"style":1079},[19374],{"type":53,"value":1768},{"type":43,"tag":476,"props":19376,"children":19377},{"style":499},[19378],{"type":53,"value":1106},{"type":43,"tag":476,"props":19380,"children":19381},{"style":896},[19382],{"type":53,"value":1777},{"type":43,"tag":476,"props":19384,"children":19385},{"style":499},[19386],{"type":53,"value":1782},{"type":43,"tag":476,"props":19388,"children":19389},{"style":1785},[19390],{"type":53,"value":1788},{"type":43,"tag":476,"props":19392,"children":19393},{"style":499},[19394],{"type":53,"value":1272},{"type":43,"tag":476,"props":19396,"children":19397},{"style":896},[19398],{"type":53,"value":1797},{"type":43,"tag":476,"props":19400,"children":19401},{"style":499},[19402],{"type":53,"value":502},{"type":43,"tag":476,"props":19404,"children":19405},{"class":478,"line":558},[19406,19410,19414,19418,19422,19426,19430,19434,19438,19442,19446,19450,19455,19459,19463,19468,19472,19476,19480,19484,19488],{"type":43,"tag":476,"props":19407,"children":19408},{"style":493},[19409],{"type":53,"value":1809},{"type":43,"tag":476,"props":19411,"children":19412},{"style":509},[19413],{"type":53,"value":1814},{"type":43,"tag":476,"props":19415,"children":19416},{"style":499},[19417],{"type":53,"value":332},{"type":43,"tag":476,"props":19419,"children":19420},{"style":1079},[19421],{"type":53,"value":259},{"type":43,"tag":476,"props":19423,"children":19424},{"style":1098},[19425],{"type":53,"value":1087},{"type":43,"tag":476,"props":19427,"children":19428},{"style":499},[19429],{"type":53,"value":597},{"type":43,"tag":476,"props":19431,"children":19432},{"style":590},[19433],{"type":53,"value":2622},{"type":43,"tag":476,"props":19435,"children":19436},{"style":499},[19437],{"type":53,"value":597},{"type":43,"tag":476,"props":19439,"children":19440},{"style":499},[19441],{"type":53,"value":625},{"type":43,"tag":476,"props":19443,"children":19444},{"style":1098},[19445],{"type":53,"value":1214},{"type":43,"tag":476,"props":19447,"children":19448},{"style":499},[19449],{"type":53,"value":597},{"type":43,"tag":476,"props":19451,"children":19452},{"style":590},[19453],{"type":53,"value":19454},"clone",{"type":43,"tag":476,"props":19456,"children":19457},{"style":499},[19458],{"type":53,"value":597},{"type":43,"tag":476,"props":19460,"children":19461},{"style":499},[19462],{"type":53,"value":625},{"type":43,"tag":476,"props":19464,"children":19465},{"style":509},[19466],{"type":53,"value":19467}," repoUrl",{"type":43,"tag":476,"props":19469,"children":19470},{"style":499},[19471],{"type":53,"value":625},{"type":43,"tag":476,"props":19473,"children":19474},{"style":499},[19475],{"type":53,"value":587},{"type":43,"tag":476,"props":19477,"children":19478},{"style":590},[19479],{"type":53,"value":332},{"type":43,"tag":476,"props":19481,"children":19482},{"style":499},[19483],{"type":53,"value":597},{"type":43,"tag":476,"props":19485,"children":19486},{"style":1098},[19487],{"type":53,"value":1984},{"type":43,"tag":476,"props":19489,"children":19490},{"style":499},[19491],{"type":53,"value":602},{"type":43,"tag":476,"props":19493,"children":19494},{"class":478,"line":571},[19495,19499,19503,19507,19511,19515,19519,19523,19527,19531,19535,19539,19543,19547,19551],{"type":43,"tag":476,"props":19496,"children":19497},{"style":493},[19498],{"type":53,"value":1809},{"type":43,"tag":476,"props":19500,"children":19501},{"style":509},[19502],{"type":53,"value":1814},{"type":43,"tag":476,"props":19504,"children":19505},{"style":499},[19506],{"type":53,"value":332},{"type":43,"tag":476,"props":19508,"children":19509},{"style":1079},[19510],{"type":53,"value":259},{"type":43,"tag":476,"props":19512,"children":19513},{"style":1098},[19514],{"type":53,"value":1087},{"type":43,"tag":476,"props":19516,"children":19517},{"style":499},[19518],{"type":53,"value":597},{"type":43,"tag":476,"props":19520,"children":19521},{"style":590},[19522],{"type":53,"value":1954},{"type":43,"tag":476,"props":19524,"children":19525},{"style":499},[19526],{"type":53,"value":597},{"type":43,"tag":476,"props":19528,"children":19529},{"style":499},[19530],{"type":53,"value":625},{"type":43,"tag":476,"props":19532,"children":19533},{"style":1098},[19534],{"type":53,"value":1214},{"type":43,"tag":476,"props":19536,"children":19537},{"style":499},[19538],{"type":53,"value":597},{"type":43,"tag":476,"props":19540,"children":19541},{"style":590},[19542],{"type":53,"value":1975},{"type":43,"tag":476,"props":19544,"children":19545},{"style":499},[19546],{"type":53,"value":597},{"type":43,"tag":476,"props":19548,"children":19549},{"style":1098},[19550],{"type":53,"value":1984},{"type":43,"tag":476,"props":19552,"children":19553},{"style":499},[19554],{"type":53,"value":602},{"type":43,"tag":476,"props":19556,"children":19557},{"class":478,"line":605},[19558],{"type":43,"tag":476,"props":19559,"children":19560},{"style":499},[19561],{"type":53,"value":1996},{"type":43,"tag":476,"props":19563,"children":19564},{"class":478,"line":658},[19565,19569,19573],{"type":43,"tag":476,"props":19566,"children":19567},{"style":499},[19568],{"type":53,"value":577},{"type":43,"tag":476,"props":19570,"children":19571},{"style":509},[19572],{"type":53,"value":1272},{"type":43,"tag":476,"props":19574,"children":19575},{"style":499},[19576],{"type":53,"value":602},{"type":43,"tag":476,"props":19578,"children":19579},{"class":478,"line":668},[19580],{"type":43,"tag":476,"props":19581,"children":19582},{"emptyLinePlaceholder":662},[19583],{"type":53,"value":665},{"type":43,"tag":476,"props":19585,"children":19586},{"class":478,"line":677},[19587],{"type":43,"tag":476,"props":19588,"children":19589},{"style":483},[19590],{"type":53,"value":19591},"\u002F\u002F Use the sandbox — auto-resumes if it was stopped\n",{"type":43,"tag":476,"props":19593,"children":19594},{"class":478,"line":694},[19595,19599,19603,19607,19611,19615,19619,19623,19627,19631,19635,19639,19644,19648,19652],{"type":43,"tag":476,"props":19596,"children":19597},{"style":493},[19598],{"type":53,"value":3642},{"type":43,"tag":476,"props":19600,"children":19601},{"style":509},[19602],{"type":53,"value":4387},{"type":43,"tag":476,"props":19604,"children":19605},{"style":499},[19606],{"type":53,"value":332},{"type":43,"tag":476,"props":19608,"children":19609},{"style":1079},[19610],{"type":53,"value":259},{"type":43,"tag":476,"props":19612,"children":19613},{"style":509},[19614],{"type":53,"value":1087},{"type":43,"tag":476,"props":19616,"children":19617},{"style":499},[19618],{"type":53,"value":597},{"type":43,"tag":476,"props":19620,"children":19621},{"style":590},[19622],{"type":53,"value":2622},{"type":43,"tag":476,"props":19624,"children":19625},{"style":499},[19626],{"type":53,"value":597},{"type":43,"tag":476,"props":19628,"children":19629},{"style":499},[19630],{"type":53,"value":625},{"type":43,"tag":476,"props":19632,"children":19633},{"style":509},[19634],{"type":53,"value":1214},{"type":43,"tag":476,"props":19636,"children":19637},{"style":499},[19638],{"type":53,"value":597},{"type":43,"tag":476,"props":19640,"children":19641},{"style":590},[19642],{"type":53,"value":19643},"pull",{"type":43,"tag":476,"props":19645,"children":19646},{"style":499},[19647],{"type":53,"value":597},{"type":43,"tag":476,"props":19649,"children":19650},{"style":509},[19651],{"type":53,"value":1984},{"type":43,"tag":476,"props":19653,"children":19654},{"style":499},[19655],{"type":53,"value":602},{"type":43,"tag":19657,"props":19658,"children":19659},"style",{},[19660],{"type":53,"value":19661},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"items":19663,"total":17181},[19664,19686,19700,19719,19730,19745,19761,19779,19791,19809,19821,19831],{"slug":19665,"name":19665,"fn":19666,"description":19667,"org":19668,"tags":19669,"stars":19683,"repoUrl":19684,"updatedAt":19685},"next-cache-components-adoption","enable and migrate to Next.js Cache Components","Turn on Cache Components in a Next.js app and resolve the blocking routes it surfaces. Use when the user wants to enable, adopt, or migrate to Cache Components, flip the `cacheComponents` flag, work through a flood of blocking-prerender \u002F instant validation errors, run the `cache-components-instant-false` codemod, or decide between opting routes out with `export const instant = false` and fixing them in place.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[19670,19673,19676,19679,19682],{"name":19671,"slug":19672,"type":15},"Caching","caching",{"name":19674,"slug":19675,"type":15},"Frontend","frontend",{"name":19677,"slug":19678,"type":15},"Migration","migration",{"name":19680,"slug":19681,"type":15},"Next.js","next-js",{"name":9,"slug":8,"type":15},141208,"https:\u002F\u002Fgithub.com\u002Fvercel\u002Fnext.js","2026-07-24T05:38:30.118542",{"slug":19687,"name":19687,"fn":19688,"description":19689,"org":19690,"tags":19691,"stars":19683,"repoUrl":19684,"updatedAt":19699},"next-cache-components-optimizer","optimize Next.js cache components","Drive a Next.js route to instant navigation by setting up an agentic loop, under Cache Components \u002F PPR, on initial load (hard navigation) and client-side navigation (soft navigation). Encode the goal as a failing @next\u002Fplaywright instant() e2e and work it to green, one verified route at a time; the shipped test then guards against regression. Use when asked to make a route's navigation instant (its static shell commits immediately), fix a route whose static shell isn't prerendered\u002Fserved\u002Fprefetched, grow a route's static shell or fix its slow first paint, diagnose which Suspense boundary keeps a route out of its static shell, or write the instant() e2e guard for one. Requires Next.js 16.3+ with cacheComponents; directs an upgrade if older.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[19692,19693,19694,19695,19698],{"name":19671,"slug":19672,"type":15},{"name":19674,"slug":19675,"type":15},{"name":19680,"slug":19681,"type":15},{"name":19696,"slug":19697,"type":15},"Performance","performance",{"name":9,"slug":8,"type":15},"2026-07-30T05:31:10.674078",{"slug":19701,"name":19701,"fn":19702,"description":19703,"org":19704,"tags":19705,"stars":19683,"repoUrl":19684,"updatedAt":19718},"next-dev-loop","verify Next.js runtime behavior","Verify Next.js runtime behavior after editing app code. Use this skill to confirm a change actually works in a running app — not just that it compiles or type-checks. Combines \u002F_next\u002Fmcp (Next.js's view) with agent-browser (the browser's view). Requires a running `next dev`.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[19706,19709,19710,19713,19714,19715],{"name":19707,"slug":19708,"type":15},"Debugging","debugging",{"name":19674,"slug":19675,"type":15},{"name":19711,"slug":19712,"type":15},"Local Development","local-development",{"name":19680,"slug":19681,"type":15},{"name":9,"slug":8,"type":15},{"name":19716,"slug":19717,"type":15},"Web Development","web-development","2026-05-22T06:45:28.627735",{"slug":19720,"name":19720,"fn":19721,"description":19722,"org":19723,"tags":19724,"stars":19683,"repoUrl":19684,"updatedAt":19729},"next-partial-prefetching-adoption","adopt Partial Prefetching in Next.js apps","Turn on Partial Prefetching in a Next.js app and work through the insights it surfaces. Use when the user wants to enable or adopt Partial Prefetching, flip the `partialPrefetching` flag, opt routes in with `export const prefetch = 'partial'`, audit `\u003CLink prefetch={true}>` calls, or resolve the link-prefetch-partial and instant-shell-url-data insights.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[19725,19726,19727,19728],{"name":19674,"slug":19675,"type":15},{"name":19680,"slug":19681,"type":15},{"name":19696,"slug":19697,"type":15},{"name":9,"slug":8,"type":15},"2026-07-30T05:31:11.591864",{"slug":19731,"name":19731,"fn":19732,"description":19733,"org":19734,"tags":19735,"stars":19742,"repoUrl":19743,"updatedAt":19744},"turborepo","manage monorepos with Turborepo","Turborepo monorepo build system guidance. Triggers on: turbo.json, task pipelines,\ndependsOn, caching, remote cache, the \"turbo\" CLI, --filter, --affected, CI optimization, environment\nvariables, internal packages, monorepo structure\u002Fbest practices, and boundaries.\n\nUse when user: configures tasks\u002Fworkflows\u002Fpipelines, creates packages, sets up\nmonorepo, shares code between apps, runs changed\u002Faffected packages, debugs cache,\nor has apps\u002Fpackages directories.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[19736,19739,19740],{"name":19737,"slug":19738,"type":15},"CI\u002FCD","ci-cd",{"name":19696,"slug":19697,"type":15},{"name":19741,"slug":19731,"type":15},"Turborepo",30809,"https:\u002F\u002Fgithub.com\u002Fvercel\u002Fturborepo","2026-07-30T05:32:14.920116",{"slug":19746,"name":19746,"fn":19747,"description":19748,"org":19749,"tags":19750,"stars":19758,"repoUrl":19759,"updatedAt":19760},"add-function-examples","add AI function examples for testing","Guide for adding new AI function examples, for testing specific features against the actual provider APIs.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[19751,19754,19757],{"name":19752,"slug":19753,"type":15},"AI SDK","ai-sdk",{"name":19755,"slug":19756,"type":15},"Testing","testing",{"name":9,"slug":8,"type":15},25670,"https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai","2026-04-06T18:55:51.318866",{"slug":19762,"name":19762,"fn":19763,"description":19764,"org":19765,"tags":19766,"stars":19758,"repoUrl":19759,"updatedAt":19778},"add-harness-package","add AI SDK harness packages","Guide for adding new AI SDK harness packages. Use when creating a new @ai-sdk\u002Fharness-\u003Cname> package that adapts a coding-agent runtime to HarnessV1.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[19767,19770,19771,19774,19777],{"name":19768,"slug":19769,"type":15},"Agents","agents",{"name":19752,"slug":19753,"type":15},{"name":19772,"slug":19773,"type":15},"Harness","harness",{"name":19775,"slug":19776,"type":15},"SDK","sdk",{"name":9,"slug":8,"type":15},"2026-06-18T08:29:19.858737",{"slug":19780,"name":19780,"fn":19781,"description":19782,"org":19783,"tags":19784,"stars":19758,"repoUrl":19759,"updatedAt":19790},"add-provider-package","add new provider packages to AI SDK","Guide for adding new AI provider packages to the AI SDK. Use when creating a new @ai-sdk\u002F\u003Cprovider> package to integrate an AI service into the SDK.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[19785,19786,19789],{"name":19752,"slug":19753,"type":15},{"name":19787,"slug":19788,"type":15},"API Development","api-development",{"name":9,"slug":8,"type":15},"2026-04-06T18:55:47.45549",{"slug":19792,"name":19792,"fn":19793,"description":19794,"org":19795,"tags":19796,"stars":19758,"repoUrl":19759,"updatedAt":19808},"adr-skill","create and maintain architecture decision records","Create and maintain Architecture Decision Records (ADRs) optimized for agentic coding workflows. Use when you need to propose, write, update, accept\u002Freject, deprecate, or supersede an ADR; bootstrap an adr folder and index; consult existing ADRs before implementing changes; or enforce ADR conventions. This skill uses Socratic questioning to capture intent before drafting, and validates output against an agent-readiness checklist.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[19797,19800,19803,19805],{"name":19798,"slug":19799,"type":15},"ADR","adr",{"name":19801,"slug":19802,"type":15},"Architecture","architecture",{"name":99,"slug":19804,"type":15},"documentation",{"name":19806,"slug":19807,"type":15},"Engineering","engineering","2026-04-06T18:55:50.043694",{"slug":19753,"name":19753,"fn":19810,"description":19811,"org":19812,"tags":19813,"stars":19758,"repoUrl":19759,"updatedAt":19820},"build AI features with Vercel AI SDK","Answer questions about the AI SDK and help build AI-powered features. Use when developers: (1) Ask about AI SDK functions like generateText, streamText, ToolLoopAgent, embed, or tools, (2) Want to build AI agents, chatbots, RAG systems, or text generation features, (3) Have questions about AI providers (OpenAI, Anthropic, Google, etc.), streaming, tool calling, structured output, or embeddings, (4) Use React hooks like useChat or useCompletion. Triggers on: \"AI SDK\", \"Vercel AI SDK\", \"generateText\", \"streamText\", \"add AI to my app\", \"build an agent\", \"tool calling\", \"structured output\", \"useChat\".",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[19814,19815,19816,19819],{"name":19768,"slug":19769,"type":15},{"name":19752,"slug":19753,"type":15},{"name":19817,"slug":19818,"type":15},"LLM","llm",{"name":9,"slug":8,"type":15},"2026-04-06T18:55:48.739463",{"slug":19822,"name":19822,"fn":19823,"description":19824,"org":19825,"tags":19826,"stars":19758,"repoUrl":19759,"updatedAt":19830},"capture-api-response-test-fixture","capture API response test fixtures","Capture API response test fixture.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[19827,19828,19829],{"name":19787,"slug":19788,"type":15},{"name":19755,"slug":19756,"type":15},{"name":9,"slug":8,"type":15},"2026-04-06T18:55:56.374433",{"slug":19832,"name":19832,"fn":19833,"description":19834,"org":19835,"tags":19836,"stars":19758,"repoUrl":19759,"updatedAt":19840},"develop-ai-functions-example","develop AI SDK function examples","Develop examples for AI SDK functions. Use when creating, running, or modifying examples under examples\u002Fai-functions\u002Fsrc to validate provider support, demonstrate features, or create test fixtures.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[19837,19838,19839],{"name":19752,"slug":19753,"type":15},{"name":19755,"slug":19756,"type":15},{"name":9,"slug":8,"type":15},"2026-04-06T18:55:55.088956",{"items":19842,"total":479},[19843],{"slug":4,"name":4,"fn":5,"description":6,"org":19844,"tags":19845,"stars":23,"repoUrl":24,"updatedAt":25},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[19846,19847,19848,19849],{"name":21,"slug":22,"type":15},{"name":18,"slug":19,"type":15},{"name":13,"slug":14,"type":15},{"name":9,"slug":8,"type":15}]