Overview
Once an environment exists, most day-to-day RMUX usage comes down to a small set of commands:The current directory is the selector. Re-enter the same local directory
before using
workspace or env commands so RMUX can load the binding from
.rmux/state.json.Common Workflows
Provision now and attach later
Run a long-lived server in its own workspace
main shell stays clean.Create isolated parallel workspaces
main uses /workspace. For git repos, non-main workspaces use dedicated remote worktrees. For non-git directories, RMUX creates copied folders instead.Reconnect from another terminal or later in the day
tmux keeps the remote workspace alive between terminal disconnects.Inspect The Environment
| Command | Use it when |
|---|---|
rmux env status | You want provider, runtime, transport, sync time, and workspace details. |
rmux workspace ls | You want the current workspace table, workspace path, log path, and last command. |
rmux env list | You want the environment table for the current backend, including environment IDs. |
rmux usage | You want backend-wide visibility into environments visible to the current identity. |
rmux env list and rmux usage both print environment IDs in the first column. Use those IDs when you want to target a specific environment from another directory or when multiple environments share the same project name.
Logs, Secrets, And Ports
Logs
Secrets
Ports
rmux env expose returns the generated URL immediately. rmux env ports lists all current exposed ports and URLs.
Lifecycle Reference
Create an environment for the current directory:env status shows the current environment record plus runtime details such as provider, region or zone, transport, deployment state, last sync time, exposed public IP details, and the workspace table for that environment.
Sync the local directory into the bound environment:
rmux env down <name-or-id>, rmux env down --all, rmux env destroy <name-or-id>, and rmux env destroy --all are also available when you want to manage other visible environments.
If a destroy hits partial cleanup failures, rmux env status shows the cleanup state and rmux env destroy can be retried.
Workspace Behavior
Each environment starts with a default workspace namedmain.
rmux workspace rm may ask for confirmation. Use --force to skip that prompt.
Editor Access
Open a named workspace in VS Code or Cursor:rmux workspace editor <workspace> --cursor|--vscode ensures the target workspace exists, resolves its workspace path, prepares an RMUX-managed SSH host entry under ~/.ssh/rmux/config, and launches the editor against that host alias.
rmux workspace cursor <workspace> and rmux workspace code <workspace> are shorthand aliases for Cursor and VS Code.
It opens the resolved workspace path for that workspace. It does not attach to the workspace’s tmux terminal. Use rmux workspace attach <workspace> when you want the terminal session itself.
This editor SSH flow currently supports backend=gcp and backend=aws.
For backend=gcp, RMUX derives the SSH host details from gcloud compute config-ssh and stores an RMUX-managed alias in ~/.ssh/rmux/config.
For backend=aws, RMUX installs or reuses an RMUX-managed SSH key under ~/.ssh/rmux/, enables SSH access on the devbox through SSM, and tunnels the actual SSH connection through AWS Session Manager with AWS-StartSSHSession. The environment does not need an inbound port 22 rule for this flow.
For backend=aws, authentication behavior depends on the configured auth mode:
aws-cliworks for bothrmux workspace editorand standalonessh rmux-...through the configured AWS profileenvandaccess-keywork withrmux workspace editor, because RMUX injects the resolved AWS credentials into the launched editor processenvandaccess-keystandalonessh rmux-...still depend on ambient AWS credentials in your current shell environment
backend=managed environments still use SSM-only attach and do not support rmux workspace editor yet.
Backend Differences
| Backend | Attach transport | Sync behavior | Notes |
|---|---|---|---|
aws | AWS SSM Session Manager | env sync pushes a staged snapshot with rsync over a Session Manager SSH tunnel. | BYOC AWS can auto-discover or create shared defaults such as the workspace bucket and security group during preflight and create. |
gcp | gcloud compute ssh | env sync pushes a staged snapshot with rsync over gcloud compute ssh. | The current GCP path does not use a workspace bucket, and the preflight check is read-only. |
managed | AWS SSM Session Manager through the control plane | env sync stages an archive through deployment-managed S3. | If managed.attachRoleArn is configured, attach can use short-lived AWS credentials instead of permanent user AWS credentials. |
/workspace, each workspace has a primary host tmux session, and named workspaces use git worktrees for git repos and copied directories for non-git projects.