Skip to main content
Shux can use Coder Workspaces as SSH hosts. When enabled, Shux talks to the Coder CLI on your local machine to list templates/presets/workspaces and connects over SSH. Connecting to an existing Coder workspace lets multiple Shux workspaces share the same Coder host, which avoids per-workspace provisioning overhead.

Requirements

  • Coder CLI v2.25.0+ installed on the machine running Shux and logged in to your deployment
  • Access to a Coder template (for new workspaces) or an existing workspace
  • A workspace image with git and your toolchain

Create a new Coder workspace

  1. Choose SSH as the runtime and enable Use Coder Workspace.
  2. Select New.
  3. Pick a template and (if available) a preset.
  4. Shux creates a Coder workspace named mux-<workspace-name> (derived from your Shux workspace name), waits for startup scripts, then connects over SSH.
If multiple organizations have templates with the same name, Shux shows the organization name so you can pick the right one.

Use an existing Coder workspace

  1. Choose Existing.
  2. Select a workspace from the list (status is shown).
  3. Shux will start the workspace if it is stopped, then connect to <workspace-name>.mux--coder.

SSH setup

Shux writes and maintains a Shux-owned SSH config block before connecting, creating aliases like <workspace-name>.mux--coder in ~/.ssh/config.

Notes

  • If the Use Coder Workspace checkbox is missing, verify that the Coder CLI is found on the PATH.
  • Each Shux workspace still lives in its own directory on the remote machine, even when sharing a single Coder workspace.
  • By default, archiving a New (Shux-created) Coder-backed workspace will also stop the underlying Coder workspace, and unarchiving will attempt to start it again. This does not apply when using an Existing Coder workspace. To disable this behavior, set stopCoderWorkspaceOnArchive to false in ~/.shux/config.json.