bowline
Getting started

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.

Terminal
bowline setup --root ~/Code

Setup 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:

Terminal
bowline status --root ~/Code

Bowline 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.

Terminal
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.

Terminal
bowline status --root ~/Code
cd ~/Code/acme/web
pnpm dev

Dependencies 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.

Terminal
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

On this page