Skip to main content
Folders are an alpha feature. The folders commands are hidden by default — set USE_EXPERIMENTAL_FEATURES=true in your environment to enable them. See Folders for concepts, consistency semantics, and the quickstart.

folders new

Create a folder. Provisioning takes a few seconds.
machine0 folders new <name>
$ machine0 folders new code
 Folder "code" is ready (25 GiB)
Folder names use lowercase letters, numbers, and hyphens (max 31 characters). Each account can have up to 5 folders; every folder has a 25 GiB quota during the alpha.

folders ls

List your folders.
machine0 folders ls
FlagDescriptionDefault
--jsonOutput JSONoff
$ machine0 folders ls
┌──────┬────────┬────────┬────────┬────────────┐
 Name Status Size Mounts Created
├──────┼────────┼────────┼────────┼────────────┤
 code READY 25 GiB 1 2026-07-08
└──────┴────────┴────────┴────────┴────────────┘
A folder in ERRORED state failed to provision or to fully tear down — run folders rm <name> to clean it up (it can be retried safely).

folders get

Show a folder’s details — status, size, space used, and which VMs mount it — and list the files inside it, without mounting it on a VM.
machine0 folders get <name> [path]
FlagDescriptionDefault
--after <token>Continuation token printed by a previous truncated listing
--jsonOutput JSONoff
$ machine0 folders get code
FOLDERS > code

  Status   READY
  Size     25 GiB
  Used     1.2 GiB
  Mounts   webserver:/data
  Created  2026-07-08

┌────────────┬──────┬─────────┐
 Name Type Size
├────────────┼──────┼─────────┤
 dataset dir --
 notes.md file 4.1 KiB
└────────────┴──────┴─────────┘
Pass a path (relative to the folder root — . and .. are not allowed) to list a subdirectory:
machine0 folders get code dataset/images
Listings show one directory level at a time, sorted by name, up to 1,000 entries per page — a truncated listing prints the continuation token to pass via --after. Contents are read from the folder’s metadata directly, so a file written on a VM moments ago may take a short while to appear (see consistency).

folders rm

Remove a folder and all of its data, permanently. Refused while any VM still mounts the folder.
machine0 folders rm <name>
FlagDescriptionDefault
-y, --yesSkip the confirmation promptoff
$ machine0 folders rm code -y
 Folder "code" destroyed
Removing a folder also revokes its access credentials, including on any VM, image, or snapshot that still carries them.

Mounting folders: new --mount

Mount folders when creating a VM with the repeatable --mount flag on machine0 new. Each use takes two values: the folder and the absolute path to mount it at.
machine0 new <vm> --mount folder:<name> path:</abs/path>
# one folder
machine0 new dev1 --mount folder:code path:/data

# multiple folders
machine0 new dev1 \
  --mount folder:code path:/data \
  --mount folder:models path:/mnt/models
Mount paths must be absolute (letters, numbers, /, _, -) and cannot be inside system directories (/etc, /usr, /var, …). Mounts survive reboots and suspend/resume, and are set only at VM creation in the alpha.