lazycloud deploy
name=. --source-root <dir>
uploads a different directory. A failure stops the command and leaves what
already deployed. Deploying one pod or devbox prints its role and the
idle time and capacity it resolved to; an app deploy lists its devboxes.
--diff, or -d, lists each workload as add, redeploy, retain, or,
with --prune, remove, and changes nothing. It imports your modules but
compares no source or configuration. --prune, or -p,
removes workloads the code no longer
declares. Several references deploy separate apps together.
lazycloud run
--json needs a
JSON-compatible result, and --output result.pkl saves any result to a file.
lazycloud serve
--timeout
seconds. Each edit syncs only changed files. --sync-dir syncs a directory
other than the current one. The Python form:
.serve().
lazycloud shell
lazycloud ssh
ssh opens a session on a devbox or a pod with
ssh=True. Anything after -- goes to ssh, such as
-L 8080:localhost:8080 or a command. ssh-config writes host entries named
lazycloud-<workspace>-<app>-<name> for VS Code, Cursor, and plain ssh, one
per name, or one for every devbox and SSH pod in the workspace when none is
named. --prune, or -p, also removes entries for ones that stopped serving
SSH or were deleted. --app picks the app when several deploy the same name.
The generated config calls two hidden commands that carry the connection and
renew the login certificate.
lazycloud devbox
list returns a page of deployed devboxes and status shows one box’s live
state and resources; both support --json and leave sleeping boxes asleep.
start waits until the box runs. stop stops it in any state, even mid-start
or while a failing start retries, and saves its disk. Ctrl-C while start or
ssh waits on a box it woke stops the box again. Every command accepts
--workspace <workspace>. See
devboxes for listing and
selection.
login runs the installed agent’s own browser login inside the devbox;
HARNESS is codex, claude, opencode, or pi. The local CLI opens your
browser and forwards the callback over SSH. It needs an interactive terminal
and rejects --json. See
coding agents for installation,
provider selection, and credential persistence.
lazycloud dev
--sync defaults to ./. Without a handler, dev uses the managed Python
image with default resources; a GPU or custom image comes from a workload
passed as the handler.
To change your default workspace, run
uv run lazycloud workspace use <name>.
Commands with a --workspace option can override it for one call.