~/Code,
everywhere.
One real ~/Code on every machine and every agent host. You edit on your laptop, an agent edits on a Linux box, and the same project state shows up everywhere. No commits, no copied keys, no setup.
brew install bowlinemacOS · Homebrew. Then run bowline login.
From install to synced in three commands
No manifests, no hydrate command, no keys to copy between machines.
Install
Point bowline at the ~/Code you already have. It reads your folder and writes nothing into your projects.
brew install bowlineThen run bowline login.
Add a machine
Approve the device once. Your whole ~/Code namespace appears on the new machine before every byte has landed.
bowline connect linux-01Work
Source, config, and .env are already there. Run the project, or hand it to an agent. It just works.
cd ~/Code/acme/web && pnpm devWhat bowline does for your code
Real files, real tools, no ceremony. Here is what changes after one install.
Real directories, not a mount
~/Code is an ordinary folder on local disk. Your editor, shell, Git, and package managers treat it like any other directory, because it is one. No FUSE mount, no symlink tricks, no remote filesystem to babysit.
acme/ web/ next.js · synced api/ fastapi · synced experiments/ bowline/ rust · synced
Your env follows the project
.env, .env.local, and .env.* travel with the project, encrypted. Open it on a second machine or hand it to an agent, and pnpm dev just runs. No bowline shell, no re-pasting API keys.
OPENAI_API_KEY=sk-live-… STRIPE_SECRET=sk-live-… DATABASE_URL=postgres://…
Agents edit your live project
An agent edits ~/Code directly, by default. Every change lands in your real folder and syncs to all your machines instantly, while the agent moves on to the next file. Want a gate for risky work? Run the agent in an isolated overlay and review before it applies.
Knows what's stale before work starts
bowline status flags stale bases, missing env, and degraded sync before an agent spends an hour working on the wrong tree.
Stop syncing your code by hand.
brew install bowlineWhat bowline is not
bowline has a narrow job and stays out of the rest of your workflow. That is the point.
Git stays your tool for commits, branches, and remotes. bowline syncs the working state around it, including uncommitted edits, untracked files, and local-only notes.
bowline understands code. node_modules doesn't cross machines, dependencies regenerate locally, generated folders follow policy. A photo-sync app doesn't know what a lockfile is.
Your laptop is first-class. bowline syncs real local directories instead of moving you into a remote VM you have to live inside.
Built so you can hand an agent the keys
bowline carries source, env, and secrets between your machines and agents. Here is what keeps that safe.
Nothing an agent does is silent or lost.
Agents edit your live ~/Code by default, so you don't have to babysit them. Every change is snapshotted and synced to your machines, and offline divergence becomes a conflict record instead of an overwrite. See it, resume it, or roll it back, and gate the risky runs behind review when you want to.
Encrypted in transit and at rest
Workspace files, env, and secrets are stored as encrypted state and rematerialize as normal files only on devices you trust.
Device trust, not blanket access
Each machine and agent host is approved explicitly, from a session you already trust, and can be revoked at any time.
Recovery keys you hold
Generate and verify a recovery key so you never lose access to your own workspace, even if you lose a machine.
Pricing
mock pricingPlaceholder tiers while we finalize pricing. Solo stays free for one developer across all their machines.
For one developer across all their machines.
- Unlimited projects in ~/Code
- Up to 3 trusted devices
- Env and secrets sync
- Community support
For developers running agents across machines.
- Everything in Solo
- Unlimited devices and agent hosts
- Agent leases and review
- Priority sync
- Email support
For teams sharing a workspace namespace.
- Everything in Pro
- Shared workspace policy
- Audit logs
- SSO and device governance
- Dedicated support
Common questions
Short answers to the things developers ask first.
Is my code encrypted?
Yes. Workspace files, env, and secrets are encrypted in transit and at rest, and only rematerialize as normal files on devices you have approved.
What actually syncs?
Source, config, opaque Git state, .env files, and selected non-Git working files. node_modules, caches, and generated folders do not cross machines; they regenerate locally.
Does bowline change my Git workflow?
No. Git stays your tool for commits, branches, and remotes. bowline syncs the working state around it, including uncommitted and untracked work.
What if two machines edit the same file offline?
bowline records an explicit conflict and keeps both versions. There is no silent last-writer-wins. You resolve it with a clear review step.
Do agents run against my live folder?
By default, yes, and that is the point. An agent edits your live ~/Code directly and the changes sync to every machine, so you don't have to review and apply every run. When you want a gate for risky work, run the agent in an isolated overlay and use bowline review and bowline accept before changes land.
Which platforms are supported?
macOS today, with a native menu bar app for ambient status, plus Linux hosts for agents and build machines.
Your ~/Code, on every machine and every agent.
Install bowline and your projects follow you. It just works.
brew install bowlinemacOS · Homebrew. Then run bowline login.