Skip to content

Getting Started (CLI)

Terminal window
# Homebrew (macOS)
brew tap swm-gpu/swm && brew install swm
# or Python (3.11+)
pipx install swm-gpu

Add at least one GPU cloud API key:

Terminal window
swm config set runpod.api_key YOUR_RUNPOD_KEY

Other providers: vastai.api_key, lambda.api_key, aws.access_key + aws.secret_key, etc.

For workspace sync, configure an S3-compatible storage backend:

Terminal window
swm config set b2.key_id YOUR_KEY_ID
swm config set b2.app_key YOUR_APP_KEY
swm config set b2.bucket my-swm-bucket

swm has built-in tab completion for commands, options, and pod IDs. Add one line to your shell profile:

Terminal window
# bash (~/.bashrc)
eval "$(_SWM_COMPLETE=bash_source swm)"
# zsh (~/.zshrc)
eval "$(_SWM_COMPLETE=zsh_source swm)"
# fish (~/.config/fish/config.fish)
eval (env _SWM_COMPLETE=fish_source swm)

After reloading your shell, swm <TAB> completes commands and swm pod stop <TAB> completes pod IDs.

Terminal window
swm gpus -g h100 --max-price 3.00 --sort price
Terminal window
swm pod create -p runpod -g "H100 SXM" -n my-first-pod \
--lifecycle auto-down --idle-timeout 30 -y
Terminal window
swm setup install vllm runpod:YOUR_POD_ID
swm setup start vllm runpod:YOUR_POD_ID
Terminal window
swm pod down my-first-pod

Resume later on any cloud:

Terminal window
swm pod create -p lambda -g a100 -n my-first-pod -w my-first-pod -y