Your first machine
Everything on this page happens on your deployment. Replace <your-domain> with Marshall's public host name and <gateway> with your Porsche host name.
- Sign in
https://<your-domain>/sign-in, by magic link; passkeys are also supported- Machines
https://<your-domain>/machines- SSH keys
https://<your-domain>/settings/ssh-keys
1. Sign in
Enter your email address at /sign-in and follow the link you're sent. Registration is open, and an account is created the first time someone signs in.
2. Create a machine in the browser
On /machines, choose an image and a profile, then create. When the machine is running, its page opens a terminal straight away. Add as many terminals as you need; they stay open when you close the tab.
3. Register an SSH key
Paste one OpenSSH public key (Ed25519, ECDSA, or RSA with at least 2048 bits) on the SSH keys page. To approve a key from the terminal instead, keep an interactive ssh <gateway> session open and follow the short-lived approval link it prints.
4. Manage machines over SSH
ssh <gateway> whoami ssh <gateway> images ssh <gateway> new --name example-machine ssh <gateway> ls ssh <gateway> stop example-machine ssh <gateway> start example-machine
Every command accepts --json. Commands that change something accept --request-id ID, so retrying after a dropped connection can't do the same thing twice. Stopping keeps the disk; rm deletes it.
5. Install the CLI
Each machine's page has a Connect from your computer section with a one-line installer for Linux and macOS (and a PowerShell one for Windows). It sets up wildcard SSH to every machine you can reach. After that:
overalls open https://github.com/OWNER/REPO overalls agent --machine <machine-uuid>
open creates a machine, waits for the clone into /workspace/REPO, then opens a shell. agent sends one prompt to the machine's agent threads, after you approve the CLI in the browser.
6. Launch from a repository page
Any supported repository URL, appended to your deployment's address after a #, starts a machine with that repository checked out:
https://<your-domain>/#https://github.com/OWNER/REPO
The toolbar extension does the same with one click on GitHub, GitLab, Codeberg and Bitbucket Cloud. It sends only the repository's origin and path, and never page contents. Your deployment serves the unsigned developer packages at /bin/chrome.zip and /bin/firefox.xpi.
Full reference: Getting started
Full reference: Command reference
Full reference: Automation