Installation
Install Bowline on macOS or Linux with one command, then verify the CLI, daemon, and macOS app.
Bowline installs as a small command-line tool (bowline), a local background
daemon (bowline-daemon), and, on Apple Silicon macOS, the Bowline Menu Bar
app. The installer picks the right artifact for your machine, verifies the
download, installs the daemon, and leaves you at bowline login --root ~/Code.
Requirements
Before you install, confirm your machine meets these basics.
- Apple Silicon macOS, or a recent x86_64 Linux distribution.
- A Bowline account. WorkOS handles account identity; your first
bowline login --root ~/Codewalks you through it. - For remote hosts, working SSH access. See connect remote hosts.
Install Bowline
Run the installer from a terminal.
curl -fsSL https://install.bowline.sh | shOn Apple Silicon macOS, this installs Bowline.app into ~/Applications, links
the bundled CLI and daemon into ~/.local/bin, starts the daemon, and opens the
Menu Bar app. On Linux x86_64, it installs bowline and bowline-daemon into
~/.local/bin and starts the user systemd service.
If ~/.local/bin is not on your PATH, the installer prints the path warning
before it exits. Add it to your shell profile, restart the shell, then continue
with login.
Install only the CLI and daemon
Use CLI-only mode when you are installing on a headless Mac or you don't want the Menu Bar app.
curl -fsSL https://install.bowline.sh | sh -s -- --cli-onlyCLI-only mode installs bowline and bowline-daemon into ~/.local/bin and
runs bowline daemon install.
Manual downloads
Release artifacts live under https://install.bowline.sh/releases/latest and
versioned paths such as https://install.bowline.sh/releases/v0.1.0. Use the
installer unless you need to inspect or pin a specific artifact.
The supported release assets are:
install.shchecksums.txtbowline-aarch64-apple-darwin.tar.xzbowline-x86_64-unknown-linux-gnu.tar.xzBowline-aarch64-apple-darwin.app.zipappcast.xmlrelease-manifest.json
Releases may also include BowlineMenuBar.pkg for admin-managed macOS installs.
Verify manual downloads against checksums.txt before installing them.
Verify the install
Confirm the CLI is on your PATH and the daemon is reachable.
bowline --version
bowline-daemon --version
bowline daemon statusbowline daemon status reports whether the daemon process and OS service are
running. Add --json for scriptable output.
Name collision
bowline --version must report the Bowline workspace tool. If you get an
unrelated tool, check your PATH and where the binary resolves with which bowline.
Supported platforms
Bowline supports these install targets today.
| Platform | Status | Install path |
|---|---|---|
| Apple Silicon macOS | Supported | Installer with Bowline.app, CLI, and daemon |
| Linux x86_64 | Supported | Installer with CLI and daemon |
| Intel macOS | Unsupported | Build from source or wait for a release artifact |
| Linux ARM | Unsupported | Build from source or wait for a release artifact |
| Windows | Unsupported | No release artifact |
Build from source
If you'd rather build from source, you need a recent stable Rust toolchain. Clone the repository and build the release binaries.
git clone https://github.com/bowline-sh/bowline.git
cd bowline
cargo build --release --bin bowline --bin bowline-daemonThe build produces target/release/bowline and target/release/bowline-daemon.
Put them on your PATH, then run bowline daemon install to register the
background service.
Uninstall
Uninstall the daemon first, then remove the binaries or app.
bowline daemon uninstall
rm -f ~/.local/bin/bowline ~/.local/bin/bowline-daemon
rm -rf ~/Applications/Bowline.appThis removes generated Bowline binaries and service files. It does not remove
projects under ~/Code.
Next steps
- Quickstart: log in and bring your
~/Codetree to life. - Add a machine: put the same workspace on a second device.
- macOS: understand the Menu Bar app and LaunchAgent.
- Linux: understand the user systemd service.