data) is the file_system_id everywhere in the sandbox API.
Mount at Creation
Pass one or more mounts when creating the sandbox. The mounts are ready before the sandbox is reported as running.- CLI
- Python
- TypeScript
- HTTP
-f/--filesystem takes <name>:<mount-path>[:<opts>] and can be repeated. <opts> is a comma-separated list of ro (read-only) and/or prefetch:Create the filesystem first (
tl fs create <name>). Mounting a name that does not exist fails the sandbox — see Errors.Mount rules
Mount Options
Both options are per mount and default to off.Read-only
read_only mounts the filesystem read-only. Writes inside the guest fail with EROFS. Enforcement is defense-in-depth: the storage credential minted for the mount carries no write scope, the host proxy filters writes, and the guest mount itself is read-only.
Read-only is fail-closed: the sandbox is only placed on executor fleets that can enforce it, so a read_only mount can never silently degrade to read-write. On fleets that have not yet been updated, a sandbox requesting a read-only mount will not be placed.
Prefetch
prefetch downloads the filesystem’s full tree in the background after the mount is ready. The mount is usable immediately — reads stream in lazily in the meantime — and once the prefetch completes, reads no longer touch the network. Prefetch is best-effort: it never blocks mount readiness and never fails the sandbox. On older fleets it is skipped silently.
- CLI
- Python
- TypeScript
- HTTP
Mount on a Warm-Pool Claim
Pools keep containers pre-booted without filesystems; mounts belong to the claim, not the pool. Pass the samefile_systems when claiming, and the mounts are ready before the claimed sandbox is reported as running.
- Python
- TypeScript
- HTTP
Attach and Detach at Runtime
A running sandbox can attach and detach filesystems without restarting.- CLI
- Python
- TypeScript
- HTTP
400— the sandbox runs on an executor fleet without filesystem support. Recreate the sandbox to mount filesystems.409— the mount path is already in use, the sandbox is not running, or the sandbox’s executor is momentarily unresolvable (for example during a reconnect window). The last case is transient: retry shortly.
Errors
Mounting a filesystem that does not exist fails sandbox creation with HTTP422:
Sharing Across Sandboxes
The same filesystem can be mounted by multiple sandboxes in one project concurrently. Writes from one sandbox become visible to the others as autosave checkpoints replicate — see Concurrent Writes for the merge semantics and Distribute Files for rolling out shared assets to a fleet of sandboxes with read-only mounts.Related Guides
Filesystems
Durable, versioned filesystems: create, push, snapshot, and time-travel.
Read-only Mounts
Pinned and following mounts for fixed inputs and shared assets.
Sandbox Pools
Pre-warm sandboxes and mount filesystems at claim time.
File Operations
Copy, read, and write files on the sandbox’s ephemeral root disk.