Commands for persistent storage and filesystem state. For the concepts, see Data volumes and Snapshots and bases.

data

Manage persistent data volumes, snapshots, and backups
zomg data <command>
SubcommandDescription
listList data volumes
createCreate a new data volume
deleteDelete a data volume
attachAttach a data volume to a box at a mount path
detachDetach a data volume from a box
snapshotManage data volume snapshots
backupManage remote backups for a data volume
restoreRestore a data volume from a backup or query restore status
# Create a data volume and attach to a box
zomg data create my-data
zomg data attach my-data my-box --path /data

# Clone from an existing data volume snapshot
zomg data create copy --from my-data --from-snapshot backup1

# Detach (data is preserved)
zomg data detach my-data my-box

# Snapshot a data volume
zomg data snapshot create my-data backup1 -m "Before migration"
zomg data snapshot restore my-data backup1

# Remote backups
zomg data backup create my-data -m "nightly"
zomg data backup wait my-data bkp-20260101010101-ab12cd
zomg data restore my-data bkp-20260101010101-ab12cd
zomg data restore status my-data restore-20260101010101-ab12cd

list

List data volumes
zomg data list [options]
Argument / optionDescription
-a, --allInclude all projects.
-q, --quietPrint names only.
-p, --project <PROJECT>Target project.
-j, --jsonPrint the JSON response.

create

Create a new data volume
zomg data create <NAME> [options]
Argument / optionDescription
<NAME>Name for the new data volume
--from <FROM_DATA>Source data volume to clone from (requires —from-snapshot)
--from-snapshot <FROM_SNAPSHOT>Source snapshot name (requires —from)
-p, --project <PROJECT>Target project.
-j, --jsonPrint the JSON response.

delete

Delete a data volume
zomg data delete <NAME> [options]
Argument / optionDescription
<NAME>Name.
-p, --project <PROJECT>Target project.

attach

Attach a data volume to a box at a mount path
zomg data attach <DATA> <BOX_NAME> [options]
Argument / optionDescription
<DATA>Data volume name
<BOX_NAME>Box to attach to
--path <PATH>Mount path inside the box (must be absolute and outside reserved roots)
--read-onlyMount as read-only
-p, --project <PROJECT>Target project.
-j, --jsonPrint the JSON response.

detach

Detach a data volume from a box
zomg data detach <DATA> <BOX_NAME> [options]
Argument / optionDescription
<DATA>Data volume name
<BOX_NAME>Box to detach from
-p, --project <PROJECT>Target project.
-j, --jsonPrint the JSON response.

snapshot

Manage data volume snapshots
zomg data snapshot <command>
SubcommandDescription
listList snapshots of a data volume
createCreate a snapshot of a data volume
restoreRestore a data volume to a snapshot

list

List snapshots of a data volume
zomg data snapshot list <DATA> [options]
Argument / optionDescription
<DATA>Data volume name.
-p, --project <PROJECT>Target project.
-j, --jsonPrint the JSON response.

create

Create a snapshot of a data volume
zomg data snapshot create <DATA> [<NAME>] [options]
Argument / optionDescription
<DATA>Data volume to snapshot
<NAME>Snapshot name (auto-generated if omitted)
--name <NAME_FLAG>Snapshot name (flag form, overrides positional)
-m, --message <MESSAGE>Description for this snapshot
-p, --project <PROJECT>Target project.
-j, --jsonPrint the JSON response.

restore

Restore a data volume to a snapshot
zomg data snapshot restore <DATA> <SNAPSHOT> [options]
Argument / optionDescription
<DATA>Data volume name.
<SNAPSHOT>Snapshot name.
-p, --project <PROJECT>Target project.

backup

Manage remote backups for a data volume
zomg data backup <command>
SubcommandDescription
createCreate a backup and upload it to configured remote storage
listList backups for a data volume
showShow one backup
waitWait for a backup to reach a terminal state

create

Create a backup and upload it to configured remote storage
zomg data backup create <DATA> [<NAME>] [options]
Argument / optionDescription
<DATA>Data volume to back up
<NAME>Backup name (auto-generated if omitted)
--name <NAME_FLAG>Backup name (flag form, overrides positional)
-m, --message <MESSAGE>Description for this backup
--no-waitReturn without waiting for completion
-p, --project <PROJECT>Target project.
-j, --jsonPrint the JSON response.

list

List backups for a data volume
zomg data backup list <DATA> [options]
Argument / optionDescription
<DATA>Data volume name.
-p, --project <PROJECT>Target project.
-j, --jsonPrint the JSON response.

show

Show one backup
zomg data backup show <DATA> <BACKUP> [options]
Argument / optionDescription
<DATA>Data volume name.
<BACKUP>Backup name.
-p, --project <PROJECT>Target project.
-j, --jsonPrint the JSON response.

wait

Wait for a backup to reach a terminal state
zomg data backup wait <DATA> <BACKUP> [options]
Argument / optionDescription
<DATA>Data volume name.
<BACKUP>Backup name.
--timeout <TIMEOUT>Defaults to 900.
-p, --project <PROJECT>Target project.
-j, --jsonPrint the JSON response.

restore

Restore a data volume from a backup or query restore status
zomg data restore <FIRST> <SECOND> [<THIRD>] [options]
Argument / optionDescription
<FIRST>Use one of: restore <data> <backup> restore status <data> <operation-id> (requires 3 positional args)
<SECOND>Backup name, or operation id when the first argument is status.
<THIRD>Operation id, when checking restore status.
--no-waitReturn without waiting for completion (only for restore start)
--timeout <TIMEOUT>Defaults to 900.
-p, --project <PROJECT>Target project.
-j, --jsonPrint the JSON response.

snapshot

Capture and restore box root-filesystem checkpoints
zomg snapshot <command>
SubcommandDescription
listList snapshots for a box
createCreate a snapshot of box’s root filesystem
restoreRestore box to a previous snapshot (destructive)
# Create a named snapshot
zomg snapshot create my-box v1 -m "Before upgrade"

# List snapshots
zomg snapshot list my-box

# Restore to a previous snapshot (destructive)
zomg snapshot restore my-box v1

list

List snapshots for a box
zomg snapshot list <BOX_NAME> [options]
Argument / optionDescription
<BOX_NAME>Box ref.
-p, --project <PROJECT>Target project.
-j, --jsonPrint the JSON response.

create

Create a snapshot of box’s root filesystem
zomg snapshot create <BOX_NAME> [<NAME>] [options]
Argument / optionDescription
<BOX_NAME>Box ref.
<NAME>Snapshot name (auto-generated if omitted)
--name <NAME_FLAG>Snapshot name (flag form, overrides positional)
-m, --message <MESSAGE>Description for this snapshot
-p, --project <PROJECT>Target project.
-j, --jsonPrint the JSON response.

restore

Restore box to a previous snapshot (destructive)
zomg snapshot restore <BOX_NAME> <SNAPSHOT> [options]
Argument / optionDescription
<BOX_NAME>Box ref.
<SNAPSHOT>Snapshot name.
-p, --project <PROJECT>Target project.

base

Manage base image templates
zomg base <command>
SubcommandDescription
listList available base images
showShow base versions and provenance
buildBuild a base from Dockerfile in current directory
installInstall a base into the selected environment on demand
updateRebuild and install a base into the selected environment
saveSave a box’s filesystem as a new base
importImport a tar.gz file as a base
deleteDelete a base alias or exact version
# List available bases
zomg base list

# Show base versions and scripts
zomg base show box-base

# Build base from Dockerfile in current directory
zomg base build my-base

# Save a box filesystem as a new base
zomg base save my-base my-box

# Import a tarball as a base
zomg base import my-base --file rootfs.tar.gz --parent box-base

# Delete a base alias and all versions it owns
zomg base delete alias my-base

# Delete one old immutable base version
zomg base delete version my-base-v20260101120000

list

List available base images
zomg base list [options]
Argument / optionDescription
-j, --jsonPrint the JSON response.

show

Show base versions and provenance
zomg base show <NAME> [options]
Argument / optionDescription
<NAME>Name.
--tag <TAG>Base version tag.
-j, --jsonPrint the JSON response.

build

Build a base from Dockerfile in current directory
zomg base build <NAME> [options]
Argument / optionDescription
<NAME>Name.
--script-sha256 <SCRIPT_SHA256>Provenance hash recorded on the built base version
--builder <BUILDER>Provenance builder recorded on the built base version
-j, --jsonPrint the JSON response.

install

Install a base into the selected environment on demand
zomg base install <NAME>
Argument / optionDescription
<NAME>Name.

update

Rebuild and install a base into the selected environment
zomg base update <NAME>
Argument / optionDescription
<NAME>Name.

save

Save a box’s filesystem as a new base
zomg base save <BASE> <BOX_NAME> [options]
Argument / optionDescription
<BASE>Base name.
<BOX_NAME>Box ref.
-p, --project <PROJECT>Target project.
--script <SCRIPT>Provenance script recorded on the saved base version
--script-sha256 <SCRIPT_SHA256>Provenance hash recorded on the saved base version
--parent-alias <PARENT_ALIAS>Provenance parent alias recorded on the saved base version
--parent-version <PARENT_VERSION>Provenance parent version recorded on the saved base version
--builder <BUILDER>Provenance builder recorded on the saved base version
-j, --jsonPrint the JSON response.

import

Import a tar.gz file as a base
zomg base import <NAME> [options]
Argument / optionDescription
<NAME>Name for the new base
--file <FILE>Path to tar.gz file containing root filesystem
-p, --parent <PARENT>Parent base to layer on top of
--script-sha256 <SCRIPT_SHA256>Provenance hash recorded on the imported base version
--parent-alias <PARENT_ALIAS>Provenance parent alias recorded on the imported base version
--parent-version <PARENT_VERSION>Provenance parent version recorded on the imported base version
--builder <BUILDER>Provenance builder recorded on the imported base version
-j, --jsonPrint the JSON response.

delete

Delete a base alias or exact version
zomg base delete <command>
SubcommandDescription
aliasDelete a base alias and all versions it owns
versionDelete one immutable base version

alias

Delete a base alias and all versions it owns
zomg base delete alias <ALIAS>
Argument / optionDescription
<ALIAS>Base alias to delete with all versions it owns

version

Delete one immutable base version
zomg base delete version <VERSION>
Argument / optionDescription
<VERSION>Exact immutable base version to delete

diff

Show filesystem changes in a box since a snapshot
zomg diff <command>
SubcommandDescription
statusShow summary of changed files
fileShow diff for a specific file
# Show changed files since last snapshot
zomg diff status my-box

# Compare against specific snapshot
zomg diff status my-box --against v1

# Show diff for a specific file
zomg diff file my-box /etc/config.json --against v1

status

Show summary of changed files
zomg diff status <BOX_NAME> [options]
Argument / optionDescription
<BOX_NAME>Box ref.
--against <AGAINST>Snapshot to compare against (default: most recent)
-p, --project <PROJECT>Target project.
-j, --jsonPrint the JSON response.

file

Show diff for a specific file
zomg diff file <BOX_NAME> <PATH> [options]
Argument / optionDescription
<BOX_NAME>Box ref.
<PATH>Root filesystem path; /home, /box/bin, /box/all, and /box/proj are rejected
--against <AGAINST>Snapshot to compare against (default: most recent)
-p, --project <PROJECT>Target project.
-j, --jsonPrint the JSON response.