For agents: an index of these docs is at /docs/llms.txt, and this page as markdown is at /docs/install-linux.md.
Install on Linux or WSL2
Prepare a Linux machine, a headless server or Windows with WSL2 for Dobby: systemd, the sandbox, sign-ins over SSH and jobs that survive logout.
Do these steps first, then follow Install.
On Windows, turn on systemd in WSL2
-
Add this to
/etc/wsl.confinside WSL2./etc/wsl.conf [boot]systemd=true -
Restart WSL from Windows.
Terminal wsl --shutdown
Keep your repos in the Linux home folder. Under /mnt/c, installs and tests are too slow.
Install the sandbox
-
Install bubblewrap and socat.
Terminal sudo apt install bubblewrap socat -
On Ubuntu 24.04 and later, let bubblewrap past AppArmor.
Terminal sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0
Add that setting to a file in /etc/sysctl.d/ to keep it after a reboot. On Fedora, use dnf in step 1.
Install Node and Claude Code
curl -fsSL https://fnm.vercel.app/install | bashfnm install 24curl -fsSL https://claude.ai/install.sh | bashInstall the GitHub CLI with the steps at cli.github.com.
Alpine and other musl systems
The database driver compiles during install. Install python3 and a C++ toolchain first.
Sign in without a browser
-
Sign in to GitHub. Open the URL it prints on any device.
Terminal gh auth login --web -
Sign in to Claude Code. Type
/loginand open the link on another device.Terminal claude
Keep jobs running after you log out
Run this if dobby jobs install says it could not turn lingering on.
sudo loginctl enable-linger $USEROpen the dashboard from your laptop
-
Forward the port from your laptop.
Laptop ssh -L 4710:127.0.0.1:4710 you@server -
Print a sign-in link on the server and open it on your laptop.
Server dobby dashboard link
If there is no user systemd
Containers and plain su shells cannot install the jobs. Run Dobby inside tmux instead.
dobby start