Skip to main content
Runtimes determine where and how Xum executes agent workspaces. A runtime is two independent choices that compose:
  • Project isolation — where the project lives and commands run.
  • Workspace isolation — how each workspace is separated from the other workspaces of the project.

Supported combinations

Combinations marked ”—” are listed in the picker but disabled until a backend supports them. SSH + None runs every workspace directly in an existing directory on the host (for example ~/src/my-app). Xum does not sync, check out, move, or delete anything in that directory, and it does not need a local git repository.

Choosing a Runtime

Pick both when creating a workspace: the environment chip under the workspace name opens a panel where Run on selects the project isolation and Isolation selects the workspace isolation. Set the defaults, and turn options on or off, in Settings → Runtimes, globally or per project. Configs written by older versions (a single default runtime) are migrated automatically, and the old field is still written so you can downgrade.

Init Hooks

Init hooks and agent bash tool executions can detect the runtime type via the XUM_RUNTIME environment variable:
  • local — Local project, no workspace isolation
  • worktree — Local project, worktree isolation
  • ssh — SSH project (worktree or no workspace isolation)
  • docker — Docker runtime
  • devcontainer — Dev Container runtime
This lets your init hook adapt behavior, e.g., skip worktree-specific setup when running in local mode.