Add a machine
Put the same ~/Code workspace on a second laptop or desktop with one approval step.
Adding a second machine is the moment Bowline earns its keep. You install, log
in, and approve once. Then the same ~/Code tree is there, with the same
projects, env, and in-progress work. This page walks through it.
This guide assumes you already have one trusted device running Bowline.
1. Install and set up the new machine
On the new machine, install Bowline and set up the same workspace root.
bowline setup --root ~/CodeSetup authenticates your account and asks for workspace trust when needed. The new machine is signed in, but it can't decrypt your workspace until a trusted device approves it. That's by design: account login and workspace decryption access are separate steps.
2. Request workspace access
The new machine raises a Device Approval Request to ask for decryption access. Check it on the new machine:
bowline status --root ~/CodeBowline shows a short matching code on the new machine. You'll confirm that same code on a device you already trust, so you know exactly which machine you're letting in.
3. Approve from a trusted device
On a machine that's already trusted, list pending requests and approve the new one. Confirm the code shown on the new machine matches the one here.
bowline device list --root ~/Code
bowline device approve --root ~/Code --code <matching-code>Use --request <id> instead of --code <matching-code> when you want to target
a specific pending request. You can preview the change first with --dry-run.
An approved device receives workspace-wide trust for the accepted ~/Code
root. Bowline doesn't make you manage per-project or per-path device
permissions. Work views, not device trust, hold agent work for review.
4. Start working
Back on the new machine, Bowline materializes the selected project as ordinary files, then continues the rest of the workspace in the background. When status reports the project ready, open it and run it.
bowline status --root ~/Code
cd ~/Code/acme/web
pnpm devDependencies restore and env files materialize automatically, so your usual run command works without any per-machine setup.
If no trusted device is available
If you've lost access to every trusted device, you can still get in with a Recovery Key. Follow recover access to your workspace.
Removing a machine
When you retire a machine, revoke its trust from another device so it can no longer decrypt the workspace.
bowline device list --root ~/Code
bowline device revoke --root ~/Code --device <id>Revoking trust stops future decryption on that device. It does not delete the project files already on machines that still have them.
Next steps
- Connect remote hosts: bring up a remote host or agent box over SSH.
- Device trust: the full trust model.
- Env sync: how
.envfiles follow your projects.