Run from the cloud — baro connect
Pair a machine as a remote runner. Fire goals from a dashboard, a teammate, or a GitHub issue — they run on your machine over your own subscription, code never leaving it.
baro can run as a remote runner for baro-cloud. You fire a goal from a web dashboard, a teammate, or a GitHub issue labeled baro, and it executes on the machine you paired — over your own Claude or Codex subscription. Your code never leaves that machine: baro-cloud orchestrates (Architect / Planner / Critic / Surgeon) and only ever sees metadata and diffs, never your source.
This is the bring-your-own path: your machine, your subscription, baro-cloud does the orchestration, monitoring, and the pull request.
Sign in from the terminal
The fastest way — no dashboard, no token to paste:
npm install -g baro-ai
baro login
baro connectbaro login opens the browser once — confirm the code and you're signed in. baro connect then self-registers this machine (no token needed) and stores a credential under ~/.baro/credentials.json, so future baro connect calls pair automatically. First sign-in also grants your starter cloud credits.
Pair a machine with a token
Prefer not to sign in interactively (CI, a server, a shared box)? Pair with a token instead.
One line installs baro and registers a background service that survives terminal close, logout, and reboot — launchd (macOS), systemd (Linux), or a logon task (Windows):
curl -fsSL https://api.baro.jigjoy.ai/install.sh | sh -s -- --token rt_…Get a pairing token (rt_…) from baro-cloud → Runners at app.baro.jigjoy.ai.
Or connect by hand
Pick the one that fits — these are alternatives, not a sequence:
| Command | What it does |
|---|---|
baro connect | Signed in via baro login — no token needed |
baro connect --install-service --token rt_… | Persistent background service (survives reboot/logout) |
baro connect --token rt_… | Foreground, this terminal only |
baro connect --uninstall-service | Remove the background service |
baro connect --once --token rt_… | Run exactly one goal, then exit |
| Flag | What it does |
|---|---|
--token rt_… | Pairing token from baro-cloud → Runners (optional once you've run baro login) |
--workspace <git repo> | The repo runs execute in (or set WORKSPACE_DIR) |
--install-service | Install a background service (launchd / systemd / Task Scheduler) |
--uninstall-service | Remove that service |
--once | Run exactly one dispatched goal, then exit — for ephemeral / CI workers |
--name <label> | Display name for this runner in the dashboard |
Prerequisites
- baro installed and current:
npm install -g baro-ai(>= 0.57 forbaro login) - The
claudeCLI logged into your subscription — runclaudeonce; it should work without an API key.
Reliability — reconnect & resume
A mid-run network blip won't kill a run: the runner reconnects and resumes streaming where it left off. The background service keeps the runner online across reboots and logouts, so a goal fired while you're away from the keyboard still lands.
How runs get triggered
Once a machine is paired, a run can start from:
- The dashboard — type a goal at app.baro.jigjoy.ai and pick the runner.
- A teammate — anyone in your org can dispatch to a shared runner.
- A GitHub issue — see below.
GitHub auto-run
Connect GitHub in the dashboard, turn on auto-run for a repo, and then:
- Label an issue
baro→ baro reads the issue as the goal, plans it, runs it on your runner (or on baro's cloud if no runner is online), and opens a pull request. - Comment
/baroon an issue → same thing.
baro works on a fresh baro/… branch and opens the PR back to the repo. If you have no runner online, the run falls back to baro's cloud.