Get bridge
One file. Copy the block for your computer into a terminal and run it, then check the last line printed a version.
Set ARCH to match the machine. An Apple Silicon Mac is arm64; an Intel Mac, most PCs and most servers are amd64; a Raspberry Pi or an ARM server is arm64. On macOS the xattr line clears the flag macOS puts on anything downloaded through a browser, which would otherwise refuse to run. A curl download does not get that flag, so the line usually finds nothing to clear and is written to carry on rather than stop.
macOS
VER=1.1.1-devARCH=arm64PKG=bridge-${VER}-darwin-${ARCH} curl -fsSLO https://api.clrtstudio.com/bridge/${VER}/${PKG}.tar.gztar -xzf ${PKG}.tar.gzxattr -d com.apple.quarantine ${PKG}/bridge 2>/dev/null || truesudo mv ${PKG}/bridge /usr/local/bin/bridgebridge versionWindows
$VER = "1.1.1-dev"$ARCH = "amd64"$PKG = "bridge-$VER-windows-$ARCH" curl.exe -fsSLO https://api.clrtstudio.com/bridge/$VER/$PKG.zipUnblock-File "$PKG.zip"Expand-Archive "$PKG.zip" -DestinationPath "$env:LOCALAPPDATA\bridge" [Environment]::SetEnvironmentVariable( "Path", $env:Path + ";$env:LOCALAPPDATA\bridge\$PKG", "User") bridge.exe versionLinux
VER=1.1.1-devARCH=amd64PKG=bridge-${VER}-linux-${ARCH} curl -fsSLO https://api.clrtstudio.com/bridge/${VER}/${PKG}.tar.gztar -xzf ${PKG}.tar.gzsudo install -m 755 ${PKG}/bridge /usr/local/bin/bridgebridge versionIf the last line printed a version, you have it. If it said command not found, the file is not where your terminal looks for programs; the full guide has the fix.
Do I need Go?
No. bridge is already compiled, which is what you just downloaded. You only need Go if you want to build it yourself from the source, which also needs access to a private repository. If that is you, the building from source part of the docs covers installing Go and the one setting a private module needs.
Get an API key
bridge does not include a model. It talks to one on your behalf, so it needs a key for whichever provider you want to use. Pick one; you can add the others later.
Anthropic, for Claude
Sign in at platform.claude.com, find API keys in the settings, and create one. It begins with sk-ant-. Copy it now: most consoles show a key once and never again.
OpenAI, for GPT
Sign in at platform.openai.com/api-keys and create a key. It begins with sk-. Same rule: copy it while it is on screen.
Neither, if you would rather not pay
Install Ollama and run a model on your own machine. It costs nothing, needs no key, and nothing you type leaves your computer. It is slower than a hosted model and needs disk space, so start with a small one.
ollama pull llama3.2Someone else
bridge talks to fourteen providers, including Google Gemini, xAI, Groq, DeepSeek, Mistral and OpenRouter. They all work the same way: get a key from that vendor, paste it into the matching row on the Config page. The provider list names each one and where its key goes.
These keys cost money
A hosted provider bills you per request. Before you do anything else, set a ceiling in step three: bridge checks the estimated cost of every call against it and refuses the call rather than billing you past it.
A Claude or ChatGPT subscription is not a key
A Pro or Plus plan buys access to that vendor's own app, not to their API, and no third-party tool can spend it for you. bridge will not pretend otherwise. Where a vendor does sanction signing in, which today means Google, and Anthropic developer profiles, there is bridge login. Otherwise it is a key, or a local model, which costs nothing.
Run it
# Creates your settings file.bridge init # Starts bridge and opens it in your browser.bridge serve --openYour browser opens on the Config page, because nothing is switched on yet. Do these four things:
- 1Paste your key into the provider you got it from, and turn that provider on.
- 2Set a daily ceiling in dollars under Budget. Start low. Five is plenty to try it.
- 3Press Save. bridge rebuilds itself in place, so there is nothing to restart.
- 4Open the Chat tab and ask it something.
That is the whole thing. It runs only on your own machine, at 127.0.0.1:7844, and it refuses to listen anywhere else unless you give it a password, because the file you just pasted a key into is sitting next to it.
Where next
- Save a prompt, a model and a set of tools as an agentAgents
- Chain those agents into one repeatable jobWorkflows
- Teach it a procedure it can load when it needs itSkills
- Send cheap questions to a cheap modelRouting policy
- Let it remember across conversationsMemory
- Give it tools, from an MCP serverMCP
- Use it from your own Go codeGo library
- Everything elseFull documentation