Skip to content
C3Control / Continuity
Mobile documentation

C3 Mobile / Getting started

Updated 2026-07-24

Set up a bridge

C3 Bridge (c3bridge) is the daemon that represents one machine to your hub. It sits next to Herdr, translates client commands into Herdr operations, and streams events and terminal output back — encrypted end to end, so the hub relays only ciphertext.

TIP — > C3 Desktop can perform this enrollment for the current machine, run the doctor checks, and install the bridge service. See machines, phones & services.

Repeat this page once per machine you want to control.

1. Install prerequisites

  • Herdr 0.7.5 or later, running your agents. If herdr works in your terminal, you're set.

  • The bridge itself, from the C3 backend package:

    sh
    npm install -g @naarang/ccc

    This puts the c3bridge binary on your PATH.

2. Enroll the bridge with your hub

On the hub machine, mint an enrollment bundle for this host. Give each machine a stable, recognizable identity — it's how the host appears in the app:

sh
c3sync hub control enroll-bridge --name "Workstation" --host-id workstation --out bridge.json

Copy bridge.json to the machine being enrolled (over scp or any private channel), then import it:

sh
c3bridge init --bundle bridge.json

init stores the bridge's NATS credentials and identity in your OS credential store, installs the hub CA certificate, and writes its config under ~/.c3bridge. Delete bridge.json afterwards — it's a secret, and it's single-use.

NOTE — > On headless machines without an OS keyring, select the encrypted-file backend explicitly with C3BRIDGE_SECRET_BACKEND=file before running init. See the c3bridge reference.

3. Check the wiring

sh
c3bridge doctor

doctor prints a redacted view of the config and verifies it can reach both the hub and your Herdr sessions. Fix anything it flags before continuing — the two usual suspects are the hub's port 4222 being unreachable and Herdr not running.

4. Install it as a service

sh
c3bridge service install
c3bridge service status

This registers the bridge to start at boot and restart on failure: a systemd user service on Linux, a LaunchAgent on macOS, or a scheduled task on Windows. (For a one-off foreground run, use c3bridge run.)

5. Done — pair it with your phone

The bridge is now connected to the hub and waiting. The final step happens from the phone: enroll your phone and pair it with this bridge using a one-time QR code.