Sailwright
Set up, test, and repair developer machines on macOS, Windows, and Linux — with one command.
Setting up a developer machine is still one of the most manual things in software: wiki checklists, one-off scripts, and asking whoever did it last. Sailwright replaces that with automation you can version, test, and re-run.
It's a single command-line tool that sets up, tests, and maintains developer environments on macOS, Linux, and Windows. Under the hood it combines Ansible with the right VM and system tooling for each platform, so teams can manage local machines, remote hosts, and disposable test systems from one repository.
Sailwright is not a replacement for the MDM/UEM tooling your IT department runs — it complements those tools by covering the developer-tooling layer they don't reach: the part that usually stays manual, team-specific, and hard to reproduce.
The result: machines that look the same however they got there — a new laptop, a rebuilt CI runner, or a workstation that has drifted and needs to be brought back in line.
Why It Helps
Without a shared automation baseline, cross-platform teams usually run into the same problems.
- Onboard new developers in minutes instead of days
- Keep machine setup consistent across macOS, Windows, and Linux
- Test setup changes safely in disposable VMs before rolling them out
- Reduce one-off scripts, tribal knowledge, and repeated support work
- Recover drifted machines by re-running the same automation
Made for More Than One Job Title
Developers keeping their own workstation honest. Platform teams onboarding new hires. CI engineers reusing build images. Windows and Mac admins who don't want standing remote access. IT leads weighing open source against support contracts.
Sailwright serves each of them a little differently — see who it's for and find your scenario.
One Toolkit, Every Host
Sailwright keeps setup logic in versioned Ansible roles and playbooks, then uses host-appropriate tooling to apply and test them.
| Host OS | What you can automate today |
|---|---|
| macOS | Managed workflows for macOS (Tart), Ubuntu (UTM), and Windows 11 (UTM) |
| Windows | Managed workflows for Ubuntu (Hyper-V) and Windows 11 (Hyper-V, plus VirtualBox as unstable) |
| Linux | Managed workflows for Ubuntu and Windows 11 with native QEMU/KVM via libvirt/virt-manager, plus direct Ansible runs and Docker-based Linux testing |
Built on Simple Ideas
- Ansible roles and playbooks are the single source of truth for machine setup
- Roles stay cross-platform where possible, with OS-specific handling where needed
- Runs are idempotent: applying the same setup twice is safe and changes nothing the second time
- Machines pull and run their own automation locally — no central server required
- Every change can be previewed with --check mode before it touches the machine
See It in Action
Find yourself on Who It's For, browse the Features, or see real workflows in Use Cases.
Ready to try it? Grab a release from GitHub and follow the documentation — or get in touch with questions.