Bowline for coding agents
Bowline for aider
aider auto-loads .env; Bowline carries that .env and your repo to every machine and remote host. No re-clone, no re-auth; aider's commits sync back to you.
Running aider across machines
aider is git-aware and reads .env for keys, but on a new machine or remote host you still need the repo cloned, the .env present, and your uncommitted work. aider only commits the files it changes; your .env and other work-in-progress never travel with Git.
- Vendor
- Open source
- Type
- CLI
- Runs on
- macOS, Linux, and Windows. Python (pipx or pip). It is git-aware and auto-commits its edits.
- Headless
- Yes. It runs non-interactively in CI or over SSH.
- Auth
- Bring your own model keys (OPENAI_API_KEY, ANTHROPIC_API_KEY, or any LiteLLM-supported provider), set via the environment, .env, or .aider.conf.yml. There is no account to log into.
- Env
- aider auto-loads .env files from your home directory, the git repo root, and the current directory, so model keys and settings live in .env. That makes the .env itself the thing that has to be on every machine.
What bowline does for aider
Because aider auto-loads .env and bowline carries that .env (encrypted) with the project, aider on a new trusted host reads the same model keys and config with nothing to copy or re-auth. The repo, its opaque Git state, and your uncommitted work are already present, so aider's auto-commits and any WIP sync back to every machine. This is the cleanest case: for aider, bowline removes the whole setup layer, keys included.
How aider is configured
The files aider reads. Every one of these that lives in the project travels with ~/Code, so aider sees the same configuration on every machine.
.aider.conf.ymlconfig, searched in home, git root, and cwd.envaider auto-loads .env (home, git root, cwd) for keys and settings.aiderignorefiles to exclude from the repo map.aider.model.settings.ymlper-model settings.aider.chat.history.mdchat history written into the repo
Set it up
Install bowline, trust the machine or host, then run aider against ~/Code with source, config, and .env already present.
curl -fsSL https://install.bowline.sh | sh # on your laptop, once bowline login bowline connect remote-box # bootstrap the host over SSH; ~/Code + .env land there ssh remote-box 'cd ~/Code/your-project && aider'
Questions
- aider already reads .env, so what does Bowline add?
- aider auto-loads .env from the repo, but that .env still has to exist on each machine. bowline carries it (encrypted) with the project, so aider on a new trusted host reads the same keys and config with nothing to copy or re-auth.
- aider auto-commits, so do I still need Bowline?
- aider commits the files it changes, but your .env, untracked files, and other uncommitted work do not travel with Git. bowline syncs the whole working state, so a second machine or remote host has everything, not just the last commit.
- Can I run aider unattended on a remote server?
- Yes. aider --message '...' --yes-always runs one-shot. With bowline the server already has the repo and .env, so it runs against your real tree and its commits sync back to every machine.
Your ~/Code, on every machine and every agent.
Install bowline and your projects follow you. It just works.
curl -fsSL https://install.bowline.sh | shmacOS app · Linux CLI. Then run bowline login.